-
SRB2Kart Saturn - v9.2 Stable
released this
2025-12-06 17:37:49 +01:00 | 640 commits to Saturn since this releaseImprovements/Features
- Emotes: Change autocompletion behavior to work like console (if there are multiple suggestions, you can now instantly cycle between them when pressing TAB)
- Emotes: Allow suggesting emotes if currently typed part matches inside emote, not only at beginning
- Emotes: If there is only 1 emote suggestion and user presses enter, autocomplete emote
- Emotes: Added support for console chat
- Emotes: Don't suggest autocompletion with only one character after the ":"
- Emotes: Add "listemotes" command, to list the currently loaded emotes in console
- Added "locatelump" command, to search for if a lump exists by name
- Lua Votescreens: Add 'time per frame' argument for hud.setVoteBackground (If time_per_frame is set, each frame will last this amount of tics, default value is 2)
- Added an option to show the current song credits in the pause menu, toggable with "pausesongcredits" or in the Saturn HUD options
- Controller: Make Controller Rumble strength user changeable, ranges from 0.25 - 4 (changeable with "rumblestrength" or in the controller config)
- The server info screen now shows the servers game speed/difficulty instead of "Cheats"
- The server info screen will display player names with the players skin colour, on supported Servers (v9.2+)
- Cameras are now completely exposed to lua not just hud hooks
- Freecam now is allowed during "awayview" (Check Plinko or Train Rush maps)
- Player Afterimage "Ghosts" will now have additive blending applied during sneaker boosts, similar to speed lines, when "playerblendeffects" is enabled
- Added a toggle to let the console print on the title screen "consoleprintinmenu"
- Menu: The Time Attack menu will now display the currently selected Skin´s stats
For more information about the Lua changes, be sure to check the LUASTUFF documentation!
Optimizations
- Opengl: Add a fast early return check for lines with same front and backsector but without a middle texture
- Opengl: Fix up spherefrustum culling and use it to cull sprites that are out of our view (improves performance especially on maps with precip)
- Opengl: Avoid adding sprites again to sectors that already had sprites added in some cases
- OpenGL: Optimized some "float" maths in a lot of places
- OpenGL: Batching: use polygon hash signbit to detect skywalls/horizonlines (improves performance on some maps)
- Software: Clip sprites that are out of our view (improves performance especially on maps with precip)
- R_ProjectSprite: make fake floor sprite clipping work with sloped fake floors/ceilings
- Check for Kart specific/commonly used mobjs first in a lot of places in mobj handling
- Simplified and fixed up some usage of std vectors (should reduce memory usage in some cases)
- Slightly optimized a distance calculation that is used within rendering in some cases
- Save some maths in R_Prep3DFloors
- Removed some interpolation related fields from mobjs that were effectively uneeded
- Many smaller optimizations
Fixes
- LoadMobjThinker: Revert faulty local player check (fixes a nasty crash that in some configurations lead to a crash when trying to join a server with more than 4 players racing)
- Check if mobj was actually spawned before setting "islocal" (fixes some random crashes from any lua spawned mobjs that got instantly removed again)
- Fixed a rare crash that could happen when you get stuck on server join until you timeout, due to title screen patches being freed while they were still in use
- Reverted SDL2 libraries on windows, again.... as it still caused random audio issues. This will break the right "Alt Gr" key for non US keyboard layouts when using the "Native keyboard layout" option again. (If you don't care about audio issues and need the ALT GR key to function, feel free to keep the old SDL2.dll file) - We´re currently looking for and trying alternative options for the Sound System
- OpenGL/Software: Fix portals (and its contents) being culled in some cases they shouldn't be
- HWR_BlendMidtextureSurface: Fixed a major performance regression due to incorrect flag handling (most noticeable on "Sunset Beach" map, from BigOMaps)
- Blua: attempt emergency garbage collection on file IO operations if they fail (ex if a faulty script keeps opening files constantly but never closes them, this will make sure they will be closed if too many are open)
- Fixed a rare race condition with server list search that may lead to crashes
- Emotes: Only print 'too many frames' warning if we actually get non-empty frame
- Emotes: Fix autocomplete messing up emote in few cases
- Emotes: Fix emotes being slightly offset in chat log
- Fixed an issue that lead to old server browser entries to still appear when refreshing the server browser (or re-opening it)
- Fixed an issue that caused the server browser refresh button to list less and less servers when hitting it multiple times
- Fixed replays not properly checking if a map was loaded in non 1.0 replays, leading to a game quit with error
- Fixed an issue that caused the game to get stuck in a weird limbo state when a replay fails to load
- Fixed an issue that let you open non existent replays in the replay hut
- Fixed Time Attack ghosts sometimes crashing the game when resetting a Time Attack attempt
- Fixed an issue that caused freecam to be reset if your "displayplayer" went to spectate in replays
- Fixed a rare crash when closing the replayhut
- Fixed the encore toggle in the level select appearing when not having encore unlocked
- (Hopefully) fixed issues with the addon menu sometimes not refreshing or getting stuck on a warning screen
- Fixed an issue that broke menus when calling the "map" command from within menus
- Fixed an issue that caused the game credits to free the Hud item patches for the Roulettebox
- Fixed an issue that prevented splitscreen players from entering their name, and changing player 1s name instead on the player setup screen
- Fixed Localskin menus not instantly disappearing from the options when you toggle the "Show Localskin Menus" option
- Fixed an issue that caused the console to sometimes flicker during gif recording
- Fixed some instances of faulty strings being passed to W_GetXForName functions
- Fixed some Grammar
- Some fixes for mobj interpolation
- Fixed a memory leak when searching for iwads on startup
- K_GetScreenCoords: Fixed a signed integer overflow
- HWR_ProcessSeg: Fix cliphigh signed integer overflow
- hw_batching: Fix signed integer overflow in polygon hash calculation
- G_DoPlayDemo: Fixed an unitialized value warning
- r_draw_span: Removed "threads.h" include, use c++11 "thread_local" keyword for thread local storage (hopefully fixes compile on some platforms)
Special thanks to Mompi for bug hunting and providing feedback for this release!
Note: be sure to update all DLLs again, this is important!
Full Changelog: https://github.com/Indev450/SRB2Kart-Saturn/compare/v9.1...v9.2
Downloads