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.