Releases: STJr/SRB2
2.2.14 patch release
New features
- Dedicated Shield / Super Transformation Button (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2096), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2257), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2258), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2299), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2387)
- On a fresh configuration file, this is set to Left Alt (on keyboard) and the B button (on gamepad).
- When starting up 2.2.14 with an older configuration file present, the game will notify the player of this change and give a few options for setting it.
- OpenGL palette rendering (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1516)
- Enabled by default, this brings OpenGL's look much closer to Software.
Object/sprite features
- ZDoom color translations (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2190)
- Long sprite names (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2394)
- Add
sprite2
field to states and increase sprite2 limit (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2211) - Add
alpha
field to objects (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2382)
Map features
- Texture scaling (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2031), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2221)
- Sector portals (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2139)
- Per-wall lighting (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2484)
- Floor/ceiling lighting on FOF planes (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2490)
- Sector flags to disable equation slope physics (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2028)
- Implemented
writethings
for UDMF (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2339) - Blue Spring Ball (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1282)
- Raise sidedef and linedef limits (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2163), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2473), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2474)
- Added Linedef type 430: Bounce Player, based off a popular old Lua (thanks Zipper)
- arg0 controls how powerful the launch is
Improvements
Gameplay & addons
- Raise the skin limit, from 32 to 255 (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1466), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2256), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2365)
- Make save files with missing skins tell you who the skin is (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2411)
- Display power-up icon for Fire Flower (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2097)
- A_GuardChase now ignores shield-related code when var1 is 1
Netplay
- HTTP file downloading (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2290)
- Respawn shield & timed powerup monitors in Co-op (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2152)
- Make chat spam protection more configurable (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2127)
- Auto-kick/spectate for inactive players (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2148), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2375)
- Per-player mute (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2259)
- Support for multiple admin passwords (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2201)
- Allow ban masks to be specified for banip (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2272)
- Allow passing player names to moderation commands (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2486)
- Improve addon download refusal messages (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2153)
- Enable UPnP port mapping by default (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2251)
- Add dedicated server build (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2246)
- Lift ban limits (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2502)
- Lift savebuffer limits (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2497)
- Add CVar for changing room ID (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2487)
Optimizations
- Avoid branch prediction slowdowns in
R_PointOnSide
(https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2168) - Cache and reuse removed mobjs when spawning mobjs (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2200)
- Optimize Z position functions on sloped sectors (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2214)
- Optimize polygon sorting on batch renderer (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2253)
- Improve file search performance on Linux and FreeBSD (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2198)
NiGHTS & special stages
- Allow per-mare time limits in NiGHTS (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2137)
- Always show grade in non-special stage NiGHTS maps, show time taken to clear a mare (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2165)
- Draw character in NiGHTS Mode menu (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2175)
- Group NiGHTS stars/chips with rings when rendering hitboxes (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2162)
- Support
LF_MIXNIGHTSCOUNTDOWN
for old-style special stages (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2291) - Make Extra Time powerup work in old-style special stages (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2292)
Other
- Solid midtexture collision improvements, especially around slopes (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2454), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2455), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2447)
- Wireframe mode for the OpenGL renderer (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1644)
- Implement epicenter and radius support for earthquakes (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1797)
- Allow input view outside of record attack using
showinput
(https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2020) - Add
find
command to search for console commands/variables (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2217) - Make objects able to collide with others if they occupy multiple blockmap cells (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2267)
- Implement support for native keyboard layout (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1952), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2443)
- Use nanosleep for I_SleepDuration on *nix (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2184), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2242)
- Handle player state in P_SetMobjState (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2239)
- Update player->quittime while a Server is Idling, Attempt 2 (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2209), (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2254)
- Allow
bind
to accept more arguments for a command. (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1596) - Rewrite
M_DrawStaticBox
(https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1990) - Support overlays properly in splitscreen (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1992)
- Enable Pandora's Box and Level Select with devmode / Always allow Level Select if unlocked (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2066)
- Allow input during title animation after the first time (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2122)
- Streamline start-up & STJr intro (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2132)
- Add
can_change
for console variables (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2196) - Made
gr_fovchange
work in the software renderer (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2268) - Match mobj freeslot count with SRB2Kart (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2298)
- Add common
I_GetSysName
function (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2308) - Cut the amplitude on OpenGL water wave effect (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2381)
- Add a console variable that will allow individual demos to desync (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2361)
- Pass
-fwrapv
to GCC compilation flags (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2195) - Make followitems visible in the player setup screen (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2227)
- Rename
gr_fovchange
tofovchange
and implement software renderer support (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2268) - Show extra Force Shield hits with text instead of icons (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2378)
- Use
FF_SEMIBRIGHT
for some more common objects (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2541) - Disable UDMF console notice (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2542)
- Convert waddir to an absolute path (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2538)
- Add a few more resolutions (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1795)
- Replace gluBuild2DMipmaps with GL_GENERATE_MIPMAPS (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2287)
- Model animation duration fixes (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2498)
- Further improve sleep accuracy on UNIX systems (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2583)
Bugfixes
Netplay
- Fix improper handling of duplicate packets (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2238)
- Fix memory leak when other players are riding a minecart (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2146)
- Only award bonuses or Record Attack emblems from finishing a level (https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2161)
- Fix LAN discovery (https://git.do.srb2.or...
SRB2 v2.2.13 Released
Our double whammy is now a triple whammy. Guess we needed one more release candidate, but we were just so excited to launch that we forgot. Here’s an update that makes netgames work correctly again, plus some bonus bug fixes and optimizations.
- Fixed renderhitbox causing netgame instability
- Fixed floorsprite rendering causing a possible crash if the sprite had a size of 1×1
- Fixed hitbox interpolation when scaling mobjs
- Optimized sprite rendering in the software renderer
- Exposed skin.supername to Lua
More details about this changelog are on our GitLab.
SRB2 v2.2.12 Patch Released
Changes:
- Fixed inconsistent crash caused by music volume fading while changing to different music
- 44 new player colors (press enter on the selector to see ’em all in a nice grid)
- Toggle fullscreen on/off with F11, toggle renderers with F10
- More accurate FPS counter
- Cutscenes now play at correct speed for netgame clients
- Fixed joining netgames during intermission causing strange behavior
- Fixed IPv6 support
- New UDMF, SOC, and Lua features
Full newspost can be read here.
SRB2 v2.2.11 Patch Release
Hello everybody! We’re happy to inform you that another fantastic SRB2 update has landed on your doorstep. Here are the key changes in SRB2 v2.2.11:
- Removed the framerate limit: Using interpolation, SRB2 can now run at far more than 35fps, allowing for smoother looking 60fps gameplay (or much higher on supported monitors). You can set a custom limit at the bottom of Video Options.
- Fixed error 503: This prevented some players from accessing the ingame Master Server browser. If you’ve been having trouble using the Master Server, give it another try.
- Support larger characters in ERZ: Addon characters with large collision boxes, such as Ryder the Falcon, can now complete ERZ. We introduced some new gravity-related elements you can add to your maps as a part of this fix. Read about them here.
- Added support for the Universal Doom Map Format (UDMF): UDMF is a more flexible and powerful map format that allows for easier editing and more complex level designs. This long-awaited feature is a game-changer for mappers, opening up new possibilities for custom levels.
- The implementation isn’t set in stone. We intend to make changes to it based on mappers’ feedback if necessary.
- The UDMF map editor is not complete. Until it is complete, you can find the latest build pinned in #udmf on our Discord server.
- You can convert your existing map to the new format, but older levels should continue to work as normal (let us know if they don’t!)
- UDMF maps are allowed to be submitted to the OLDC!
- Better rendering in large levels: Levels that used to break the renderer by the sheer size of their rooms should be far more visually stable now.
- Improved Lua command/cvar safety and added basic rate limitation for Lua file access: Helps prevent addons from writing too much data to hard disk, among other things.
There are plenty of other bug fixes and other improvements. Check out the changelog for a complete list.
We appreciate your continued support and feedback as we work on our favorite project. You would probably appreciate getting the new patch and start playing. Enjoy!
SRB2 v2.2.10 Patch Release
Hello everybody! It took longer than we’d like, but SRB2 v2.2.10 is finally here! Here are the highlights of this patch:
- The file limit has been massively increased. (The skin limit is still 32, though!)
- The tutorial has been redone for the new default controls.
- Many new additions to Lua, including bot features, an improved input library, easing functions and more.
- Blending modes for midtextures and FOFs.
- Multi-tagging and more convenient slope copying for non-UDMF maps.
- Generalized slopes for UDMF maps.
- The ability to load folders for easier addon development. No need to compile your resources into a PK3 until you’re ready to release your work!
- A couple of updated graphics, textures & sprites.
- Way too many bug fixes to list here.
You can read the full changelog here.
Please note there is only a full install available for this release since every single one of the game’s files have been modified. You should be able to install it to your existing SRB2 v2.2 folder just fine, but feel free to back up your addons and saved games first.
Android players should be aware that the Android port of SRB2 is no longer officially supported. We know that’s disappointing, but we’ll keep the v2.2.9 APK up on the Downloads page for your convenience. The source code is publicly available on Lactozilla’s GitHub, so anyone with the necessary skills should feel free to update it themselves.
Our goal going forward is to get smaller updates out more often. We’d like the next patch to be made up of little more than a few quality of life features and more bug fixes. A lot of upcoming features and fixes (and many from this very patch) were generously contributed by the community. We’re grateful for your hard work.
That’s everything! Go grab the update down below and get going! Enjoy.
SRB2 v2.2.9 Patch Release
SeventhSentinel - May 6, 2021
Hey. 2.2.9’s out. Grab it at the usual place. It’s late, so I’ll just paraphrase some of the more interesting lines from the changelog:
- Fixed animated skin colors in OpenGL.
- Fixed an error when loading addons with custom savedata via the command line (notably, when testing from Zone Builder).
- Optimized Lua, plane rendering, and drawing of FOFs.
- Added polyobject support for Lua.
- Added multitag library for Lua, which allows reading and manipulation of tags on mapthings, lines and sectors; also added tag iterator functions.
- Attraction Shield’s homing attack may now be chained.
- The addfile command now supports adding multiple files.
- The player will now smoothly slide across a sloped ceiling.
- Let more graphics lumps be replaced clientside.
- Various bits of progress on UDMF.
- Special text is printed when the player begins the final lap in Circuit mode.
- Ring drain sectors play the ring depletion sound.
- Pausing the game is no longer possible during the score tally screen in Marathon Mode.
- Tons of map fixes from sphere.
- Added acronym keywords to Co-op levels. For use with the map command, so e.g. you can warp to Green Flower 1 with map GFZ1.
- The game now resends the whole gamestate when resyncing a player.
- Fixed an issue with the installer executables where you wouldn’t always be asked where you want to install the game.
There are lots of bug fixes and other quality-of-life things in this patch. We hope you enjoy it.
SRB2 v2.2.8 Patch Release
Hello everybody! Another update is here.
When we released v2.2.7, we accidentally broke the -file command line parameter — loading Lua scripts that added netvars via the -file parameter would lead to desyncs. This mostly impacted players on dedicated servers. The issue has been rectified.
We also broke PNG graphics in the OpenGL renderer, causing some mods to instantly crash in OpenGL. This has also been fixed.
Android users will be happy to hear we fixed the issue with the server browser. You should be able to join netgames as normal again.
This patch also has some other minor fixes, which you can read about on the full changelog
Windows users: since v2.2.7 was so short-lived, we have made sure the new patch will work with both v2.2.6 and v2.2.7, just in case you missed our last patch. Remember, you can use the links to the zip files containing the game files if you don’t want to use the installers or if you experience problems with them. They’re in the fine print right under the links to the installers.
We appreciate your continued support as we strive to improve our favorite game.
SRB2 Version 2.2.7 Patch Release
Hello everybody! We’ve got another new update for you!
Since we had so much help from public testing, we were able to fix a lot of bugs. Thank you so much! We’ve also added some cool new features, such as:
- Built-in skincolors may now be changed.
- Added the netticbuffer cvar. This stores some inputs in a buffer in case the network is slow, exchanging netcode induced lag for input delay.
- (OpenGL) Model Lighting now works when shaders are enabled.
- Added a menu option to show joiner’s IP addresses.
- New Master Server technology, bringing more uptime and smoother menus.
- Optimized loading of PNG graphics, greatly reducing the load time of levels that happen to use PNGs.
- Players can no longer change their name more than five times per minute.
- Added a new Black Eggman sprite render by SuperPhanto.
- 3D models made by Jeck Jims are now included with the game.
- You can read the full changelog here
Windows users: we have also changed from the stinky old 7-zip self extracting archive to a shiny new professional installer that supports four languages. Patching the game from here on out should be faster and easier. We are also including full installers for every single update moving forward. (We will still provide zip archives for those that need/prefer them.) We hope these changes benefit new players and our non-English communities. We would like to extend our thanks for ACStriker and yfyfyfyfyfy for the Spanish and Russian translations of the installers, respectively.
SRB2 Version 2.2.6 Patch Release
Things don’t always go as planned. Therefore, we’ve brought you another new patch, available on our Downloads page as usual. You will now be able to finish Black Core zone in unmodified single player! (Sorry we missed that.) We’ve also fixed some other small bugs and made some minor adjustments to Marathon Run.
You can read the full changelog here. Enjoy!
SRB2 2.2.5 Patch Release
- Shadows now render on the ceiling in reverse gravity.
- The game now saves as the level ends. If you exit a special stage and re-enter the game, you will be in the next level.
- You can now play as any character in NiGHTS mode.
- You can now use SOC and Lua to make custom skincolors.
- OpenGL has received an overhaul, resulting in performance improvements and shader support. The game ships with some shaders, but if your machine can’t handle them, you can turn them off.
- Updated music for the tracks originally sourced from Mystic Realm.
- We added Marathon Mode. It’s for full game speedruns. Find it under the 1 Player menu. We also included options for Ultimate Mode and for creating a backup to come back to if the game crashes during a live event.
- Knuckles no longer crouches for as long after landing from a glide, making him lose less momentum and feel a little less chunky. He can swim underwater, too, which controls differently from gliding. We gave him a little something extra, too…
Full changelog available at https://git.magicalgirl.moe/STJr/SRB2/wikis/2.2.5-changelog
Patch notes video available at https://www.youtube.com/watch?v=sHxUbX269IE