Commit graph

19767 commits

Author SHA1 Message Date
James R
7e9dcffdf7 Do not play invalid sfx 2022-06-07 20:54:10 -07:00
James R
3f05f9ee13 Fix OpenGL skybox centerpoint translation
Blame eda9b36455
2022-06-07 20:04:06 -07:00
James R
d25af26eda Tricks: use constant minimum speed 2022-06-07 19:09:33 -07:00
Sally Coolatta
55cbc41017 Attempt fix for players being able to get admin
Tyron said there is an "outstanding base game bug where an authenticated player can ghost and a new player will log in on their node, inheriting admin" ... wow that's terrifying! Let's reset admin for every  instance of CL_ClearPlayer instead of only in CL_RemovePlayer.
2022-06-07 19:22:44 -04:00
Sally Coolatta
04ec0b1ffd Implement shout commands
- shout command to create a server message, with its own special sound cue & color
- shoutname to control the nametag, by default this is "SERVER"
- shoutcolor controls the color of the message. By default it's red, but there's also a option for player colored.
- autoshout makes any message sent by a admin/server automatically turn into a shout
- Unlike HOSTMOD shout, integrated it with the dedicated server say behavior -- using say on dedicated server is always a shout.
2022-06-07 19:09:02 -04:00
Sal
5f86c93021 Merge branch 'snap-spectator-hud' into 'master'
Snap spectator hud to bottom left

Closes #244

See merge request KartKrew/Kart!619
2022-06-07 20:37:45 +00:00
Sal
d70a1d6c49 Merge branch 'spectate-reset-items' into 'master'
Remove items from player when spectating

Closes #230

See merge request KartKrew/Kart!617
2022-06-07 20:36:07 +00:00
Sal
0905f55cf9 Merge branch 'sprint-finish' into 'master'
Disable bot controls after sprint map finish (resolves #260)

Closes #260

See merge request KartKrew/Kart!613
2022-06-07 20:35:22 +00:00
Sal
b3cddc1d1c Merge branch 'spb-hitlag' into 'master'
Make SPB match its target's hitlag

See merge request KartKrew/Kart!614
2022-06-07 20:34:55 +00:00
Sal
e75cb04a44 Merge branch 'bounce-followers' into 'master'
Add bouncing followers

See merge request KartKrew/Kart!611
2022-06-07 20:34:05 +00:00
Sally Coolatta
cc44588c9c Kicks are now temp bans
Length is determined by the "kicktime" cvar, in minutes. By default, this is set to 10, but I'm willing to adjust this. Only applies to manual kicks (in the future, maybe also name filter kicks).

The timestamp for the unban time is even saved in ban.txt, so long-term temporary bans are completely possible. (I checked, you can attempt to ban someone for up to 1902 years if you really want to.)
2022-06-07 14:08:02 -04:00
Sally Coolatta
de718568ef - Attach ban reasons to banned_t
- Properly call D_SaveBan after remote bans. Bans are no longer saved in the ban command and instead wait for the actual kick to process, since before they were split between the two, which is what caused the discrepancy.
2022-06-07 11:44:03 -04:00
James R
d299afbb2a Use follower name in cv_follower 2022-06-07 01:48:26 -07:00
James R
401a10ee04 Snap spectator hud to bottom left
Fixes non-green resolutions.
2022-06-07 01:26:12 -07:00
James R
9270e53975 Force replays to auto save ifdef TESTERS 2022-06-07 01:22:18 -07:00
James R
e2c64699d0 Strip items when spectating 2022-06-07 01:15:22 -07:00
James R
70e55a0911 Run line 80 (raise things to FOF) after things spawn
Blame 3cad7398f0
2022-06-07 00:56:56 -07:00
Sally Coolatta
14508d42b7 Combine banned & bannedmask into banned_t
Better code cleanliness, also makes it easier to add more data to bans later (such as a timestamp for temporary bans)
2022-06-06 17:54:27 -04:00
Sally Coolatta
f2244e8046 Start banned_size much smaller 2022-06-06 17:14:07 -04:00
Sally Coolatta
6391afd148 Random choice commands 2022-06-06 17:05:44 -04:00
Sally Coolatta
e7f159113a Remove MAXBANS
Needs proper stress testing but seems to work.
2022-06-06 16:28:50 -04:00
Sally Coolatta
f609043b2e Fix copy-paste error in P_CalculatePrecipFloor 2022-06-05 12:59:24 -04:00
Sally Coolatta
82a1dd5243 Playsound command
For scripted global sound cues for the entire server.
2022-06-05 10:25:41 -04:00
Sally Coolatta
66c42cc31e Ping measured in frame delay instead of milliseconds
The part of HOSTMOD ministats that I wanted. Can go back to ms using the pingmeasurement cvar.

If Tyron wants to bring ministats fully in I think it'd be better to bring its ideas to replace the current HUD instead, ideally using the existing ping gfx, so they should bring it up with Oni
2022-06-05 09:35:31 -04:00
Sally Coolatta
6252bb113d Map helper commands from HOSTMOD 2022-06-05 07:50:36 -04:00
Sally Coolatta
353ac60407 Proper sector condition for water particles 2022-06-05 07:00:34 -04:00
Sally Coolatta
0e96aeec84 Add water particles 2022-06-05 06:24:55 -04:00
Sally Coolatta
6106ce1624 Add reversed weather
- Negative speed weather will spawn from a floor in a sector with a sky ceiling, and go up into the ceiling.
- (Not really the same as reverse gravity weather in that aspect, because that would be for sky floors.)
- Fixed invert precipitation flag for linedef type 8 being completely unimplemented. (How long has it been like this...?)
- Fix swapping weather on the fly having reversed momz
2022-06-05 05:39:35 -04:00
Sally Coolatta
35cc746adf Blendmode support for weather 2022-06-03 14:53:56 -04:00
Sally Coolatta
f84baf47d5 Fix missing else 2022-06-01 00:40:08 -04:00
Sally Coolatta
5c35602d7f Fix different types from mobj_t 2022-06-01 00:36:53 -04:00
AJ Martinez
79cf985380 Allow bot control if knocked backwards after sprint finish 2022-05-31 21:00:59 -05:00
Sally Coolatta
3164199512 Reset state when bouncing 2022-05-31 21:53:19 -04:00
Sally Coolatta
a33c2743a1 Clear precipprops in Lua more automatically 2022-05-31 19:33:18 -04:00
AJ Martinez
bf976a7bca Make SPB match its target's hitlag 2022-05-31 17:04:41 -05:00
AJ Martinez
12563d254a Disable bot controls after sprint map finish (resolves !260) 2022-05-31 16:40:00 -05:00
Sally Coolatta
965558c52f Fix precip interpolation
(If Ediolon reads this, I'm pretty sure this one is Ring Racers only)
2022-05-31 10:05:41 -04:00
Sally Coolatta
27c9d698be Reverse weather speed
Makes more logical sense on the user end for negative to go up, since most weather should be going down.

They need to SPAWN with reversed momz too :V
2022-05-31 09:57:53 -04:00
Sally Coolatta
087c15c1ef Add PRECIP_ to enum lib 2022-05-31 09:08:01 -04:00
Sally Coolatta
4c3f89cdf7 Allow freesloting & editing precipprops
Allows for custom weather types.

In SOC:
```Freeslot
PRECIP_GROOVY

Weather PRECIP_GROOVY
Type = MT_PARTICLE
Effects = PRECIPFX_THUNDER|PRECIPFX_LIGHTNING```

In Lua:
```freeslot("PRECIP_GROOVY")

precipprops[PRECIP_GROOVY] = {
    type = MT_PARTICLE,
    effects = PRECIPFX_THUNDER|PRECIPFX_LIGHTNING
}```

Then in level header, simply set `Weather = PRECIP_GROOVY`.

Other properties are part of the object itself:
- Falling speed is set as the object's speed
- Sound ID is set via the object's SeeSound
- Sound frequency is set by the object's Mass.
2022-05-31 09:03:06 -04:00
Sally Coolatta
c3bb2c8539 Add bouncing followers
Set `BobAmp` on a ground follower to set its bouncing velocity.
2022-05-31 07:28:30 -04:00
Sally Coolatta
bfa3c40033 Improve bot traversal for the prediction
HatesSector was returning false positive for intangible FOFs, making them play really poorly in Desert Palace
2022-05-31 03:51:35 -04:00
Sally Coolatta
ee5e96b65e Simplify angle/speed radius logic 2022-05-30 19:30:17 -04:00
Sally Coolatta
fae9939a25 Make slope speed scale more significant
Pull that prediction BACK when you're going up slopes!
2022-05-30 19:29:58 -04:00
Sally Coolatta
0e95110136 Bot prediction uses pathfinding
A subtle change, but means the bots are thinking ahead more about the track's design, rather than just what's in front of them. Instead of just "convenient" paths, they'll actively think about which path is the shortest.

The most significant thing this effects is making them use shortcuts more often.
2022-05-30 19:28:40 -04:00
Sal
30f60585be Merge branch 'colour-persistence' into 'master'
Player colour persistence (resolves #255).

Closes #255

See merge request KartKrew/Kart!610
2022-05-30 21:58:07 +00:00
toaster
80f2111f00 Correct player colour persistence, *actually* resolving #255.
An explanation for the approach: I started writing a whole system where an extra pflag would be defined for "colour is not currently the player's ACTUAL colour". Then I looked at the actual code flow that would be affected by it - the single line guarded by `if (forcereset)` - and decided it was simpler to just do an extra write in this once-per-player-per-frame function instead of increasing across-the-board complexity.
2022-05-30 16:37:01 +01:00
Sally Coolatta
3e4a1feb84 Better bot controller direction enforce 2022-05-30 08:26:38 -04:00
Sally Coolatta
52f82b4c64 Better bot spindash behaviors
For Chrome Gadget
2022-05-30 08:26:13 -04:00
Sally Coolatta
286f1c34a5 Prevent bots crash when there's no waypoints 2022-05-28 03:58:49 -04:00