Skip to content

Releases: STJr/SRB2

SRB2 v 2.1.19 Patch Update

28 May 18:07
Compare
Choose a tag to compare

Hi again. Yes, we know - the previous release did not fix the netgame exploit properly. We've been working hard, though, and that (along with a few other potential exploits waiting to happen) is now fixed. We'll be bringing the Master Server back up to allow people to advertise servers online again. As always though, if there are further netplay issues, please report them to us on the Message Board here. We can't fix what we don't know about!

  • Netgame fixes:

    • Patched a few more crash-causing exploits enabled by malformed packets, as discussed above.
    • Fixed cooperative intermission bonuses such as extra lives not being awarded server-side on dedicated servers, leading to desynchronisation.
    • Fixed an issue where you could join a netgame despite having too many files loaded to be able to match the server's file list, leading to desynchronisation.
    • Fixed an issue where you stayed connected to a netgame when you have too many files loaded to apply one the host added, leading to desynchronisation.
    • Inform the adminplayer when they send an addfile request that can't be completed because the host has too many files added.
    • Fixed a bizzare issue where, if you quit a server the moment you create it, you will be instantly kicked if you make a new one.
  • Minor, unrelated fixes:

    • Fixed an issue where missiles were able to effortlessly glide up slopes without exploding.
    • Corrected a log message informing the player that they had extra colormaps on game startup when none were actually available.
    • Removed a typo resulting in the NiGHTS capsule having the red ring's skincolor applied on spawn.

SRB2 v 2.1.18 Patch Update

13 May 00:17
Compare
Choose a tag to compare

Hey all

We weren’t really planning on doing this, but an exploit has been discovered and, unfortunately, been used to crash peoples’ servers and we need to plug the hole.* So we’re releasing version 2.1.18.* Currently it is just* a patch download on the downloads page. * We’re still hard at work on 2.2, and we’re hoping to have stuff for you soon on that front.

Patch notes:

  • Netgame fixes:

  • Fixed an exploit where malformed
    packets with invalid node identifiers caused the server to crash.

  • Made the server recognise verified admin players’ bans, as opposed to only treating them as unenforced kicks.

  • Fixed the fact that the allowteamchange console variable was [I]completely broken[/I], having previously caused both desynchronisations and crashes when switched off.

  • Console fixes:

  • Fixed an issue where the addfile command was incapable of locating files in subdirectories whilst in netgames.

  • Fixed character selection from the command line (and therefore via launchers and level editors) being disabled.

  • Fixed the dedicated server console window not handling key combinations involving the Ctrl, Alt or Shift modifier keys.

  • Software rendering fixes:

  • The game no longer crashes whlst attempting to render certain types of FOF off the top or bottom of the screen.

  • Precipitation being off the top or bottom of the screen no longer causes visual artifacting (or, in rare cases, crashes).

  • Fixed various issues with the v.DrawFill function. This includes its shoddy handling of V_SNAPTO flags, amongst other quality of life improvements.

  • Minor, unrelated fixes:

  • Fixed an issue where falling rock hazards could linger in perpetuity after colliding with slopes.

  • Fixed a crash caused by Jet Jaw badniks attempting to attack players who had had the “MF_SHOOTABLE” object flag removed through add-ons.

  • Fixed a crash caused by attempting to execute the “Call Lua Function” linedef executor with blank fields.

  • Fixed an issue where attempting to have more than 10,000 screenshots in your screenshots directory was erroneously allowed.

SRB2 Release 2.1.17

17 Jan 01:49
Compare
Choose a tag to compare

We have a very important announcement for you all:

Netgames are stable once again. (Thanks to Mr. Mystery for taking these screenshots of a nearly 32 player netgame.)

Now now, before you go too crazy, keep in mind that things still aren’t perfect. There may be unexpected issues stemming solely from the fact that some parts of our game hasn’t had proper testing in years, due to the instability of netgames. But it’s safe to say that things are back to a level of stability around that of version 2.0, if not a little better than that. Special shoutouts go to LJSonik, who was the one to discover and fix the majority of these problems that had been difficult to find.

Though the stability of netgames is a huge part of this update, it’s not the only thing featured in it. See below for the full patch notes…

  • Netgame stability:
    • Fixed an issue where the server wouldn’t resend packets properly. (This is a gross simplification of the issue, but it gets the general point across.)
    • It is now possible to ‘kick’ a player in mid-join, while they are downloading the game state.
    • Downloading files is now much faster.
  • The console has been heavily revamped.
    • It’s now possible to move the input cursor left and right, as well as selecting multiple characters at the same time using the shift keys.
    • Clipboard support has been added. CTRL+C copies selected text, and CTRL+V pastes any text that’s in your clipboard, similar to most other programs.
    • Fixed pressing multiple modifier keys down at the same time.
  • Collision fixes:
    • Fixed Knuckles being able to climb on air.
    • Fixed upside-down springs launching themselves off of ceilings again.
    • Fixed springs (and any other non-moving objects with gravity) falling through one-way platform blocks.
    • Jumping into a solid object now properly stops your momentum.
    • Collision boxes for solid objects now extend downwards properly.
  • Software renderer fixes:
    • Players don’t disappear into FOFs anymore if they have a shield (or another overlay) attached to them and spindash on top of it.
    • Translucent polyobjects with planes now work properly instead of causing crashes.
    • The game no longer crashes if you view a wall with an invalid, but well-defined “texture” name (e.g.: a sound effect name, for the Play Sound linedef).
    • Repeating Midtextures no longer have messed up lighting under certain circumstances.
    • Fixed animated textures with holes displaying garbage for the first frame they’re visible.
  • OpenGL renderer fixes:
    • Fixed MD2 models with too many vertices causing memory corruption; these MD2s are ignored instead.
    • Precipitation (rain, snow, etc.) actually shows up now.
  • More minor unrelated changes and/or fixes:
    • Fixed problems with Egg Guards’ shields exploding a physically impossible number of times.
    • Fixed issue with switching skins incorrectly being allowed during credits and custom cutscenes in single-player.
    • Fixed the FixedFloor, FixedTrunc, FixedCeil and FixedRound Lua functions returning garbage.
    • Rope hangs and zoom tubes have smoother behavior near their waypoints.
    • Pusher specials applied to FOFs now properly account for slopes applied to the bottom plane.
    • The ” character is now treated as whitespace in TEXTURES and ANIMDEF lumps, allowing for better compatibility with SLADE’s relevant lump-editing tools.
    • Providing negative scales to v.drawScaled in Lua doesn’t crash anymore.
    • Changing sector flats in netgames using Lua scripting no longer causes the game to crash for new joiners.

SRB2 Release 2.1.16

06 Sep 16:50
Compare
Choose a tag to compare

2.1.16 is here! There is one very important thing we need to state up front – in order to make the online SRB2 experience more stable and reduce the number of desynchronisations that may occur, we have decided to make the difficult decision of disabling netgame capabilities in Direct Draw (srb2dd.exe) builds. It will be a long road, but this first consolidating step will help us understand and potentially solve the problems with the netcode.

General

  • We, uh, accidentally compiled 2.1.15 without any optimizations turned on. Sorry about that – the framerate in this version should be way better…
  • Knuckles can now climb on one-sided linedefs that don’t have the No Climb flag. This means thok barriers are no longer needed outside of decorative uses.
  • Fixed an issue where colliding with the edges of Mario blocks, bustable FOFs, and bouncy FOFs was extremely unreliable.
  • Fixed falling through a reverse platform FOF clipping you downwards (and vice versa with reverse gravity and normal platforms).
  • Fixed FF_SHATTERBOTTOM FOFs acting like THZ goop when stood on.
  • Thrown match emeralds now disappear in death pits instead of uselessly bouncing off.
  • Fixed an issue where the NiGHTS drone was visible at the end of a special stage for a single tic.
  • P_GetMobjGravity(mobj) is a new function available to Lua.
  • You can now disable the weapon rings and power stones displays from ringslinger gametypes using Lua.
  • Single-sided linedef skewing now behaves like midtexture skewing; the No Midtexture Skew linedef flag disables, instead of it being on by default.
  • Fixed several issues with the Solid Midtexture linedef flag not playing nicely with the Peg Midtexture and Repeat Midtexture flags.
  • Cleaned up the error message when failing to load a sprite that doesn’t have enough rotations.
  • The game will no longer crash whenever it gets lost trying to find a special linedef from a tag number.
  • Fixed an issue with one custom cutscene immediately following another causing the game to softlock.
  • If the game becomes modified during a record attack run, the run will now immediately end.
  • Using the -warp game startup parameter will now let you know if you are attempting to access an invalid map lump.
  • Fixed zero-length REJECT lumps reading from arbitrary memory.

Slopes

  • Teetering on the edge of platforms and ledges now takes slopes into account.
  • Slopes can have their physics disabled by applying the No Sonic linedef flag to their master linedef. (Zone Builder will probably rename that linedef flag for the slope types soon enough, but until then…)
  • Slope physics now take sector gravity into account.
  • Non-player objects are now able to move up and down slopes much smoother.
  • Vertex slopes now crash with a descriptive error message if they’re set up incorrectly.
  • Fixed a crash caused by hitting a bouncy wall whilst on a slope.
  • Fixed an issue where Knuckles attempted to climb on thin air above a slope in 2D mode.
  • Bustable FOFs with sloped planes now have accurate collision bounds.
  • Running into a spring or gas jet on a slope will now always send you on the correct path instead of at an awkward angle.
  • Fixed gas jets having dance parties on slopes.

Software

  • Fixed most, if not all, crashes caused by drawing parts of textures offscreen. These crashes alone caused many of the annoying crashes people have recently been reporting, so software mode should now be a lot more stable to play with.
  • Fixed sloped FOF planes with translucent pixels losing their translucency when enveloped in a colormap.
  • Fixed a crash caused by wedge-shaped FOFs mistakenly attempting to draw the top of its side textures below its bottom.
  • Fixed skybox positioning being visually inconsistent between chasecam and first person mode.
  • Fixed sprites in skyboxes being drawn with weird artifacting.
  • Fixed the linedef backside textures of polyobjects floating above the polyobject’s position.

OpenGL

  • Lower unpegged is now consistent with the new software mode behavior introduced in 2.1.15.
  • Fixed specific arrangments of floor and ceiling slopes causing HOMs and other visual glitches.

SRB2 Release 2.1.16

22 Jul 21:25
Compare
Choose a tag to compare

2.1.16 is here! Fairly self explanatory, right? But before the patch notes, let's talk media coverage. We don't usually get attention from the wider world, but within the space of three weeks we've gotten three seperate sites reporting on us!

We did give them a few more images than they had space for, so here's the other two - featuring the new versions of Tails, GFZ1 and CEZ1! It also features our new Sonic, although he's now available on the message board with some custom abilities for fun [url=]here[/url].

http://i.imgur.com/m3nW8O3.png

http://i.imgur.com/djQFKwj.png

Now that's out of the way, patch notes are after the cut.

--- read more ---

  • A ton of slope changes! Some say they weren't ready for .15, so we put some effort into fixing them up for primetime.
    • Teetering on the edge of platforms and ledges now takes slopes into account.
    • Slopes can have their physics disabled by applying the No Sonic linedef flag to their master linedef. (Zone Builder will probably rename that linedef flag for the slope types soon enough, but until then...)
    • Slope physics now take sector gravity into account.
    • Vertex slopes now crash with a descriptive error message if they're set up wrong (instead of uselessly declaring a state of PANIC without any diagnostic information).
  • Software renderer fixes! Because it really needed the love.
    • Fixed the most common way the software renderer could crash in 2.1.15.
    • Fixed sloped FOFs with translucent pixels in Software losing their translucency when enveloped in a colormap.
    • Fixed skybox positioning being visually inconsistent between chasecam and first person mode.
    • Fixed sprites in skyboxes being drawn with weird artifacting.
    • Fixed the linedef backside textures of Polyobjects floating above the polyobject's position.
    • Single-sided linedef skewing now behaves like midtexture skewing - the No Midtexture Skew linedef flag disables, instead of it being on by default.

*OpenGL renderer fixes! #notallimplementations
* Lower unpegged in OpenGL is now consistent with its new behaviour introduced in Software mode from 2.1.15 onwards.
* Fixed an issue with OpenGL where a specific arrangement of floor and ceiling slopes caused HOMs.

  • P_GetMobjGravity(mobj) is a new function available to Lua. Death to the terrible hacks you may or may not have been using previously!
  • Knuckles can now climb on one-sided linedefs that don't have the No Climb flag.
  • Fixed an issue where colliding with the edges of Mario blocks, bustable FOFs, and bouncy FOFs was extremely unreliable. (Man, how old is this bug? And it was a one letter typo, too. I am a goddess.)
  • Fixed falling through a reverse platform FOF clipping you downwards (and vice versa with reverse gravity and normal platforms).
  • Running into a spring that's on a slope will now always send you on the path of the spring instead of sending you off at an awkward angle. This also goes for gas jets.
  • Fixed gas jets jumping around on slopes. You don't want to know how we found this bug.
  • Flung Match Emeralds now disappear in death pits instead of uselessly bouncing until the cows come home.
  • Fixed zero-length REJECT lumps reading arbitrary memory. Now you can use ZDBSP to nodesbuild your SRB2 maps if you really want to!
  • We, uh, accidentially compiled 2.1.15 without any optimisations turned on. Enjoy the game having playable performance again!

~toaster

Version 2.1.15 Release

19 May 22:44
Compare
Choose a tag to compare

Hey guys! We’ve been thinking about how wonderful boys and girls you all are, so we’re deciding to give you a wonderful present well earlier than we originally intended! I hope you all enjoy playing with slopes as much as we do jumping off them and flying into space.

… I apologize for the sickening saccharine tint to that last paragraph, but hey, I want to have a little fun. It’s my birthday, so cut me some slack.

This release is being provided both in the form of an installer for those new to the game, and a patch for those who have already installed the game. The patch works only with version 2.1.14. That shouldn’t be a problem for anyone at this point, considering how long version 2.1.14 has been out now. New features and fixes are as follows:

  • Slopes! Forever is a long time coming. Note that none of the existing levels are modified; you’ll have to wait until 2.2 for that. The primary reason for this release is so that modders can finally use slopes without having to resort to alternate EXEs, as they’ve been doing for months now. Just be warned that while OpenGL has support for slopes, it is only partially complete in that renderer and not fully tested.
  • To go along with slopes, physics have been slightly changed for moving platforms and polyobjects. Jumping off of a platform moving upwards now gives your jump a height boost, for instance.
  • Added FF_ANIMATE, a flag for creating simple, single state animations. Instead of creating 30 states for your 30 frame ring animation, you can now just create one to achieve the same effect.
  • Music slots are removed. No longer do you have to call your music lumps O_MAP##M; you can now call them anything you want. Anything. As long as it’s six or less characters, I guess.
  • Lots of changes and fixes to Lua and SOC. We’ll go over some of the important ones briefly:
    ** A PlayerSpawn hook was added to Lua, allowing a lot easier and better control over what happens when players spawn or join the game.
    • The lines comprising a sector may now be gotten in Lua with (sector).lines.
    • HUD scripts in Lua can now access the game’s current resolution (width and height), along with dupx and dupy (the sizes for automatic patch scaling).
    • “Lua.” custom level header options in SOC won’t eat parts of future level header definitions by mistake. We made sure to feed the parsers properly this time, with high quality kibbles and bits.
    • “MUSIC = (name)” was added to level headers and cutscenes in SOC to accommodate the above removal of music slots.
    • A lot of error messages were changed to make what’s going wrong easier to understand, especially variable out of range errors.
    • SOC scripts can now be named SOC_, to go along with Lua scripts being named LUA_. This means you can actually organize multiple SOC scripts into WAD files, instead of having to stick everything in MAINCFG.
  • Fixed issues with polyobject spawning and other assorted weird things they would do.
  • Fixed pro-strat launching-yourself-off-CEZ-chains-within-1-tic abuse. Sorry, speedrunners.
  • Fixed a lot of bugs in the menu relating to pressing combinations of enter and escape rapidly. Sorry, keyboard mashers.
  • Fixed a very, very long-standing bug where garbage would be drawn to screen in certain situations if you ran under or flew over an FOF.
  • Minor map adjustments and fixes, scattered throughout the single player maps and multiplayer maps.
  • Lastly, in this little space at the end of the ‘important’ patch notes, I would like to give a sad goodbye to our old friend, That One Snailer. You all know him very well, but now he is no longer with us. He will be missed. (not)
    That’s all of the important stuff out of the way, but there’s lots more technical changes we haven’t mentioned so far. You can find that information after the break.
  • The game’s internal PRNG was changed to an xorshift* PRNG, which is hopefully faster and more random than the PRNG previously used. Some functions have also been updated to take advantage of this, as the new PRNG now returns fixed point numbers from [0, 1) instead of single bytes.
    • P_Random() is deprecated, function renamed to P_RandomByte()
    • P_RandomFixed() was added (fetches a fixed point number from [0, 1) straight from the PRNG)
    • P_RandomChance(p) was added (returns true p% of the time, where p is a fixed point number from 0 to 1; for example, P_RandomChance(FRACUNIT/2) returns true 50% of the time)
  • Lua and SOC fixes and changes not listed above:
    • Garbage cleanup now per step instead of every code execution (speed up)
    • Fixed inconsistent DrawFill behavior between renderers, for Lua scripts using it.
    • Super colors were added to colors list.
    • VERSION, SUBVERSION, and VERSIONSTRING are accessible as constants.
    • EvalMath in Lua is now deprecated and not to be used. Use _G[] instead.
    • Fixed A_ChangeAngleAbsolute in Lua.
    • Fixed FixedDiv(n, 0) and FixedSqrt(-1) crashes (now properly gives an error message)
    • Fixed map header info in Lua being fetched wrong (strings held garbage data, which messed up comparisons)
    • tan() fixed — requires using tan(angle, true) for backwards compatibility purposes
    • NetArchiveHook fixes. Still don’t know if it works, but there’s a better chance it does now.
    • P_ClosestPointOnLine supports defining an arbitrary line
    • Player times hit added (was previously missing)
    • “TITLE”, “EVALUATION”, “CREDITS” are now accepted alternates for level header nextmap = 1100, 1101, 1102
  • Fixed fades. For Software, they work a bit faster. For OpenGL, they actually work all the time now.
  • Fixed FLIPCAM2 not actually being initialized, and thus not usable.
  • Fixed ‘allocating’ out of range map headers when going to the credits. This caused very, very rare crashes if the stars * aligned just perfectly.
  • Fixed springs launching unrelated things into the air in weird cases.
  • Fixed the lack of respawn invulnerability in Race.
  • Fixed F12ing a player in analog mode causing the player’s camera to be rotated when returning to their view.
  • Fixed F-keys that go to menu options going to the wrong menus if you backed out.
  • Fixed the Recycler partying like it was 2010 again and shuffling Super status away from Super players.
  • Fixed the edges of the BLOCKMAP not working properly sometimes (running past one-sided linedefs, etc).
  • Fixed the old special stage timer disappearing.
  • Fixed lighting parity between resolutions.
  • Fixed lighting oddities when changing FOF flags through the linedef executor.
  • Fixed backwards Tag/Hide and Seek suicide conditions.
    *Fixed bad skin names locally causing problems such as being completely unable to move.
  • Fixed the OpenGL ghosting effect mentioned in the previous release.
  • Temporarily removed the ability to change MIDI volume, due to the headaches caused by it (Spontaneous muting of the EXE, the volume getting adjusted in Windows Mixer for no good reason, etc)
  • Portals now properly draw the sky from the viewpoint the player would have if they were actually at that position, and they don’t screw up the sky for the regular view anymore either.
  • Spectators being crushed no longer prints a death message.
  • Improvements to splitscreen:
    • In co-op, both players can trigger the game over music.
    • In co-op, the music will return to normal after a game over after enough time, like it does online.
    • In CTF, improved sound cues.
  • The palette cycling for Super players was slowed down significantly.
  • Custom characters can now freely set the flag to turn Super, and Super Sonic’s float is no longer automatically given to them whether they want it or not
  • If you can turn super after getting all the emeralds, the Special Stage score tally screen now tells you this.
    Special stages now fade to white with a sound effect when you enter them.

Version 2.1.14 Release

01 Jan 20:32
Compare
Choose a tag to compare

Oh, you were expecting version 2.1.13? Sorry, we decided to skip that number because of how unlucky it is. Totally. Trust us.

Anyway, folks… it’s been a wild ride, but we’ve finally reached the end of “The Year of 2.1″. We hope all of the included modding features that have been introduced with 2.1 and all of its patches will help tide you over until our next major release comes out to give you new content to play with.

This is the last planned 2.1 release. Unless a major bug is found that requires an immediate patch, the next release of the game will be version 2.2.0. Due to the number of changed files in this release, there is no patch download; the only download available is the full installer. To upgrade from a previous version, just install the new version into the same directory; your game data, save files, and the like should all remain intact.

Note: We are aware of an issue with OpenGL exhibiting odd effects in some resolutions, such as overlaying the screen on top of itself, or “ghosting”-like effects. If you encounter these issues, use the DirectDraw executable (srb2dd.exe) for playing in OpenGL mode.

  • Vertical and horizontal mouse sensitivity can now be changed separately.
  • Walls and sprites should now stay the same brightness in Software mode regardless of resolution.
  • Fixed major rendering issues in Aerial Garden Zone and possibly other excessively large maps.
  • Fixed some issues where the player could become partially embedded in walls and/or continue running against the wall as if it didn’t exist.
  • Fixed crashes related to polyobject floors.
  • Fixed crashes related to joining a netgame in maps containing a laser. (e.g.: Noxious Factory Zone)
  • Fixed CTF flags doing stupid things for what is hopefully the last time.
  • Various minor level design fixes.
  • Many fixes and improvements were made to the SDL2 version of the game, as reported on the forums.

Version 2.1.12 Patch

12 Nov 01:00
Compare
Choose a tag to compare

It’s been a while since our last patch, but that doesn’t mean we haven’t been busy. The primary change in this patch is that the game is now running under the SDL2 audio and video libraries. This means that people on modern operating systems, especially Windows 8 and 8.1, should get far better framerate.

The changes in the patch are as follows:

  • srb2win.exe is now running under SDL2. Should you have problems with the new version, srb2dd.exe uses the old behavior, but please report any issues you may have so we can fix them for later versions.
  • Improved polyobject rendering and physics. Polyobjects can now render flats, and players will experience proper preservation of momentum when jumping onto or off of one.
  • Because of the above fix, conveyor belts no longer make players rocket forward when spinning. RIP best bug ever. You will be missed. ;_;
  • NiGHTS Attack now has support for replays and ghosts like Record Attack.
    Several rings embedded in the ceiling have been fixed.
  • FOFs, polyobjects and the replay in ERZ3 properly synchronize in netgames.
  • Analog mode works in netgames.
  • Sky walls no longer draw objects located behind them in OpenGL mode.
  • Portals are now properly functional, but only in software mode.
  • Added a couple new linedef types.
  • Fixed crash involving Lua scripts performing modulo by 0.
  • FOF side textures with holes no longer bug out in the software renderer.
  • Lua’s HUD library supports patch colormapping.
  • Tons of little bugfixes we’ve since forgotten.

SRB2_release_2.1.11

27 Aug 04:00
Compare
Choose a tag to compare
SRB2 2.1.11 release

SRB2_release_2.1.10

06 Aug 00:07
Compare
Choose a tag to compare
SRB2 release 2.1.10