Releases: P-AS/srb2-legacy
SRB2 Legacy 2.1.29
Major new additions
- Renderer Switching has (finally) been added, you can now swap between renderers ingame #124
- To go along with that, setting the renderer via
renderer.txthas been removed due to it being redundant with renderer switching fab29e1
- To go along with that, setting the renderer via
- Palette Rendering #126
- A new information screen has been added before joining a server #97
- Custom skincolor support #114, Try the Kart skincolors lua here!
netcompathas been removed to issues with custom skincolors and general instability- All custom skincolor related Lua functions are exposed
perfstatsfrom 2.2 has been backported #91- Improved color settings #94
- Notably, this removes OpenGL gamma correction
- Changing the FOV is now supported in Software e7d3754
fovchangeis supported too
- Orbital camera has been backported, can be enabled with
cam_orbit on - Downhill slope adjustment has been backported, enabled by default and can be toggled with
cam_adjust - Connect IP Menu has been replaced with a textbox db1f37e
- Wireframe mode in OpenGL 592067a
- Model blend textures have been updated to support translation colormaps 82aa4f3
- New Lua string alignment options: 5b75724
"fixed-center", "fixed-right", "small-fixed", "small-fixed-center", "small-fixed-right", "small-center", "small-thin", "small-thin-center", "small-thin-right", "small-thin-fixed", "small-thin-fixed-center", "small-thin-fixed-right", "thin-fixed", "thin-fixed-center", "thin-fixed-right", "thin-center" - Papersprites have been added, and so have
FF_PAPERSPRITEandMF_PAPERCOLLISION#123
- New drawer library functions
v.getSpritePatch(string/int skin, string/int sprite, [int frame, [int rotation]]) v.drawStretched(fixed_t x, fixed_t y, fixed_t hscale, fixed_t vscale, [patch_t]patch, [int flags, [colormap c]]) v.fadeScreen(int color, int strength) - Lua I/O support 9224e8f
- Including the I/O library from 2.2, backwards compatible with 2.1 mods, like SUBARASHII #134
- Paired down OS Lua library #108
- Text colormaps from SRB2Kart 53fde36
- Newer sprite rotation system which allows sprites to be displayed for the entirety of the left side or the right side #123
- New Lua command registration flags
COM_ADMIN, COM_SPLITSCREEN, COM_LOCAL IntermissionThinker,MobjLineCollide,PlayerThink,GameQuit PreThinkFrameandPostThinkFramehooks- All Lua music functions now work in HUD hooks
CV_Set,CV_StealthSet,CV_AddValue,CV_FindVarexposed to Lua- New music related functions exposed to Lua,
S_GetMusicLength,S_GetMusicPositionandS_SetMusicPosition isserver,isdedicatedserver,consoleplayer,displayplayerandsecondarydisplayplayerexposed to LuaV_DrawFillnow supports translucency flags 5e36e90- Lua HUD Drawlists d10d32d
- Resend gamestate #109
- The size of the FPS and TPS counter can be changed #111
- Software Skydome a07be02
- Add a "-noaudio" parm to cover "-nomusic" and "-nosound" 4e4aea6
- Menu tooltips eeded20
- The pause screen has been updated to the one in 2.2 bb559c3
- The original pause screen can be reenabled 33c5ebf
- Different resolutions can be set for full screen and windowed mode 00e8681
- Models now support interpolation flags, which fixes interpolation if using the softpoly model pack or models from 2.2 785c384
ffloorcliphas been added to Software, improving performance in maps with a large amount of FOFs- Various netcode improvements #117
- Fixed issues with joining netgames during intermission
ALAM_LIGHTINGhas been totally obliterated 9d96c7c- Horizon lines have been added and they work in both renderers 0dcb55e 027e8a7 3abf235
- Added a menu option to join last server 51cb6e2
- Statistics Menu has been overhauled to be a single page 7204769
Improvements
P_DivlineSidehas been optimized, allowing for faster line of sight checks #90- OpenGL transparency sorting has been significantly optimized #92
- OpenGL sprite sorting has also been optimized 9e2994b
- View rolling #98
- Software now supports ripples on sloped planes e017baf
- PK3 loading fixed backported from Kart #99
- You can now load non game modifying add-ons, like music files or shaders from PK3's without marking the game as modified, and create PK3's loadable by the game using an external tool, rather than having to use SLADE
- Port Kart's dedicated server idle #102
- Make the server information screen gamepad friendly 4b26215
- SDL2: Set application name hint if SDL >= 2.0.22 49c266f
- Allow FPS Cap Values 68a1b4a
- Removed a lot of useless files and code from the repo #121 #129
- Make execinfo.h optional (fixes musl libc build) a12b500
- On Linux systems with musl libc, use the
NOEXECINFO=1Makefile option or-DSRB2_CONFIG_EXECINFO=OFFCMake option when compiling.
- On Linux systems with musl libc, use the
- OpenBSD support, for both Makefile and CMake 000c13c 16ea10d
- NiGHTs render distance now only applies to hoops and not all objects 0610afc
- When loading a mod that changes the title screen in any way, the title screen will no longer be a mishmashed amalgamation ae8bafd
- Fixed OpenGL debug logging,
ogllog.txtworks now cb144b0 - Objectplace now uses Weapon Next/Prev to cycle between objects 9ea0060
- Added
DEVMODEonly 2d mode toggle,toggletwod9f6019a - Added the
addcommand (lol) to increment a variables value 5d17473
Bug/Regression fixes
- Important: "Fix loss of momentum when travelling up multiple steps in a tic" (#5) has been reverted as it negativley affected gameplay and made SRB2 Legacy no longer have true vanilla 2.1 gameplay.
- Regrettably, this means demos recorded in 2.1.27 and 2.1.28 may no longer sync correctly in 2.1.29 and later.
Note for any contributors or future contributors, changes that affect gameplay or physics will not be accepted!!!
- Regrettably, this means demos recorded in 2.1.27 and 2.1.28 may no longer sync correctly in 2.1.29 and later.
- Shadows in OpenGL combined with shaders have been fixed 3cd73a5
- Multithreading on macOS has been properly enabled 46b5689
- Multithreading on Haiku has been fixed da06c00
- The character select menu scrolling too fast with uncapped has been fixed #95
- Fix issues with uninitialized variables on polyobject thinkers #100
- In OpenGL mode, the default size of the depth buffer has been increased to (hopefully) fix Z-fighting on some GPUs #101
- Various fixes for CMake, especially benefiting macOS users
...
SRB2 Legacy 2.1.28
Major highlights include:
- Uncapped
- OpenGL Shaders
- Input display
- Switch to use new 2.1 master server
- OpenGL revamp
- Joystick Hotplugging
- Backport the 2.2 signal handler and backtraces for Unix systems
- Better directory structure
- Remove NextTexAvail
- Fix HUD padding in most cases, also splitscreen (hell)
- add local ping display
- Port all major 2.2 optimizations
- Fix Haiku build
- Fix FreeBSD build
- Fix FreeMipMapColormap crash
- Flatpak
For full changelog, see here
Arch Linux users: install srb2-legacy-git and srb2-legacy-data from the AUR.
3/21/25 Note: The flatpak builds have been updated to use the flatpak specific directory (~/.var/app/io.github.PAS.srb2-legacy/.srb2_21) instead of the host directory (~/.srb2_21). This behavior is similar to other SRB2 flatpaks. Run flatpak override --user --filesystem=~/.srb2_21:create io.github.PAS.srb2-legacy to get the original behavior back.
SRB2 Legacy 2.1.27
Major highlights include:
- Update to 2021 Makefile
- Add compact fps counter
- Sleep while waiting for next tic (drastically reduces CPU usage)
- Fix loss of momentum when travelling up multiple steps in a tic
- Fix numerous compilation warnings
- Use SDL version of executable icon at runtime on macOS
- M_DrawSlider: Draw default cursor and current value for sliders
- Player Controls Menu from Kart
- Remove ASM
- Replace glBuild2DMipmaps with GL_GENERATE_MIPMAPS (backport of MR !2287)
- Logs now use a seperate directory
- Fix GL Sprite shadows on slopes
- Introduce netcompat, for backwards compatibility with 2.1.25 servers.
- Fix custom HUDs
- Add musicpref console variable (backport of MR !939)
For the full changelog, see SRB2_release_2.1.26...SRB2_release_2.1.27.
Packages for srb2-legacy are now also available on the Arch User Repository (AUR):
SRB2 Legacy 2.1.26 10th Anniversary Special Release
This special release of Sonic Robo Blast 2 Legacy was made to commemorate the 10th Anniversary of the original public release of SRB2 2.1.0. After the final official release of SRB2 2.1.25 in August 2019, many new bugfixes and QOL features from SRB2 2.2 have been backported to 2.1 since the creation of this fork in July 2021.
Major highlights include:
- Compilation fixes for GCC10+
- Demo replays now follow camera (port of MR #1243)
- HUD: Add Mania Score/Time/Rings setting from 2.2
- Setting for Score Display (Original vs. 2.2 styled)
- Fix SPC looping on libgme versions >= 0.6.3 (port of MR 1302)
- Console in menus (port of MR 797)
- Let the mouse move freely when a menu is open or game is paused (port of MR 617)
- Console + menu variables to toggle music/sound playing when the window
- Fix libgme crashing when loading a VGZ file (Backport of MR 1001)
- Add the proxy Makefile from upstream
- Update comptime.sh (from MR 1776)
- OpenGL GIF movie recording (backport of MR 549)
- Change super transformation to use spin button instead of jump (matches 2.2)
- Fix I_GetFreeMem for 64-bit platforms (backport of MR 1982)
- Fix glibc 2.38 compile (backport of MR 2092)/Rename HAVE_STRLCPY to SRB2_HAVE_STRLCPY, fix non-glibc compile
- Fix FreeBSD build errors (backport of 2071)/Fix FreeBSD build errors (again)
- Use SSE3 in 32-bit x86 binaries
- #2 libopenmpt backport
- Add PKGBUILD
- Update version to 2.1.26 -- SRB2 2.1 10th anniversary celebration
Special Thanks to:
- Sonic Team Jr
- Every SRB2 source code contributor - for both 2.1 and afterwards
- Monster Iestyn
- Ors
- SteelT
- Golen
- James R.
- LJ Sonic
- Lactorzilla
- Hanicef
- Hannu Hanhi
- SSNTails
- Marco Z
- grindersky (for using this fork in a TAS)
- nzar (For their guide)
- Bijman (For using it in srb2bld)
- Anyone who's ever given this a try or posted about it in the SRB2 OS
Note: Using the drop-in replacement exes to upgrade an existing SRB2 2.1 installation will require adding libopenmpt.dll (x86/x86_64) to your installation folder.
Windows Build
This is a drop in replacement for srb2win.exe inside an existing 32-bit Sonic Robo Blast 2 2.1.25 install. If you do not already have one, download the installer SRB2-v2125-Installer.exe.