Jazz Jackrabbit 2, the PC Gamer 1998 Game of the Year… Plus.
Single Player
The main game has gained some new features around the edges, plus plenty of fixes! If you're playing the GOG distribution of JJ2+, be sure to check out your starter kit included in Home-Cooked Levels.
Enemies and Bosses
Bats
Go back to sleep upon returning to their place of origin.
New (previously unused) idle animation.
Now better at choosing a target when there are multiple players.
Normal Turtles
Now better at hiding from bullets.
Various glitches in servers have been fixed.
Fixed glitch of turtle shells occasionally partially transforming into bones or copters when destroying skeletons or float lizards.
Lizards
Fixed glitch of Float Lizards only ever attacking player 1.
Tuf Boss
Restored unused death animation.
Now better at choosing a target when there are multiple players.
Robot
Doesn't stop moving after getting frozen.
The health bar now rises to the top of the screen upon defeat, like every other boss.
Fixed fallback code for levels with a "Devan (robot boss)" event but no "Robot (robot boss)" event.
Portly Women
Now more likely to send players flying with their punches, including players who have shields.
Fencers
Improved wall & ceiling collision detection.
Caterpillars
Better handing of smoke rings in servers.
Switching from 8-bit to 16-bit during smoke ring hue cycling no longer gets the game stuck in the hue cycled palette.
Uterus
Health doesn't reset upon being shot or touched while frozen.
Doesn't skip its spike ball phase if you move away from it.
Fixed glitchy handling of Uterus falling past the bottom of the level when defeated when there are no solid tiles to land on.
Uterus spike balls (event 27) now persist instead of disappearing immediately when spawned by Generator objects or crates—unless the event to their left is Pulse Light—and explode into pixels when destroyed instead of vanishing.
Bees
New (previously unused) turning animation.
Butterflies
Witches
Fixed glitch of Witches (or other enemies with 5+ health) disappearing in servers if buttstomped while frozen.
Rocket Turtle
Brand new behavior that follows a complex looping path.
Demons
No longer always come to a halt facing the same direction.
Helmuts
Fixed glitch of Helmuts being drawn with a Lab Rat frame (or invisible) for one gametick after standing in place.
Rapiers
Restored one unused animation and two unused samples.
Bolly
Fixed glitches from having multiple Bolly bosses in a level.
Restored broken animation code for Bolly's eye.
Bolly bosses move a little faster and have an extra spike ball on Hard and Turbo.
Added alternate behavior for Bolly that doesn't stick to an invisible ceiling.
Dogs & Cats
Restored some unused/broken code to make them run slightly faster while facing a player (only in local games).
Ravens
New (previously unused) turning animation.
Fixed glitch where ravens would sometimes stop moving forever after attacking you.
Bubba
Restored unused death animation.
Devan
Devan now warps in already carrying a gun instead of having it appear when he starts to move, and drops it when he starts to transform.
Better collision detection.
New (previously unused) turning animation while flying.
Now better at choosing a target when there are multiple players.
Gives points when defeated by a bullet.
Fixed glitch of Devil Devan's health messing up when he was hurt by special attacks or buttstomps.
No longer briefly displays an incorrect sprite (often "Chris is a Redneq") after landing from a jump.
Fixed glitch of the stars spinning around Devan's head after he's defeated moving faster when you shoot.
Bilsy
Easier on Easy and Medium difficulties: the timing for dodging behind him so he doesn't throw a fireball has been made more generous, and you don't get instantly hurt if he teleports directly into you. The unpatched behavior is maintained on Hard and Turbo.
Added alternate behavior for Bilsy that better handles arenas with uneven floor.
X-Mas enemies, Cat, and Pacman Ghost
If you don't have the The Secret Files expansion, all these enemies will be displayed as their regular counterparts: XMas Lizard to Lizard, Cat to Doggy Dogg, and so on. (In unpatched JJ2 they would not load objects at all.)
Generic
- Fixed glitch where Spaz could consecutively use sidekick against several bosses to kill them almost instantly.
- Fixed certain bosses that could be buttstomped forever even after being defeated.
- Enemies don’t work in servers (except for SP/Coop servers) by default, but level makers may now get around this by setting them as "multiplayer only."
- Killing a frozen enemy—either by shooting it or by running into it really fast—no longer hurts you.
- Touching frozen enemies at all no longer hurts server hosts.
- Destroying an enemy with a buttstomp or special attack in servers no longer hurts you.
- All enemies now bounce the player back when destroyed by freezing and running; previously only some of them did.
- Several enemies and bosses now flicker and shake slightly while unfreezing, behaviors that were often present but nonfunctional in the original code.
- Fixed glitch where certain enemies would never drop random pickups if killed by a bullet while frozen.
- Dying to an enemy object in an online server no longer shows a "You got roasted by" message.
Home-Cooked Levels
This episode, used for playing fanmade levels (including ones you make yourself), has been significantly expanded:
- The 256-level cap has been removed.
- Added support for (nested) subfolders. If you have any levels in subfolders inside your JJ2+ folder, such as
cache, you'll be able to find and play them too. (Saving is currently not supported in subfolder levels.) - Added a side menu (press → or Tab) that lets you search for levels by name or filename, change the sorting method, add to a favorites list, and permanently hide or delete levels from the list.
- All alphanumeric character keys (A–Z and 0–9) can be used to jump to the first level with a file name starting with that character (or chain of characters if typed in quick consequence).
- Decreased font size to show more levels onscreen at once.
Turbo
Besides the original three difficulties—Easy, Medium, Hard—a fourth "Turbo" is added, inspired by Jazz Jackrabbit 1. It applies the following gameplay changes:
- Max health is three hearts instead of five.
- Buttstomping does not give you invincibility in the leadup.
- Pressing fire repeatedly doesn't let you shoot more frequently than holding it down. (To compensate, your initial fire rate is faster.)
- All enemies take one extra hit of damage.
- Enemies whose movement speed, fire rate, etc. is based on difficulty move even faster on Turbo than they already do on Hard, especially Fish and Dragonfly.
- Queen hurts to touch while screaming.
- Tuf Boss can't be shot from behind.
- Bubba takes 127 damage. (60 on Easy, 92 on Medium, 124 on Hard.)
Cheat Codes
Whenever you use a cheat code, it displays briefly in the center of the screen and in the chatlog. Some codes have been added or changed:
- JJBIRD If you have a red bird, the code gives you a blue bird instead. Fixed bug that would sometimes give you multiple birds at once.
- JJCOINS Tells you how many coins you have now.
- JJCOLOR New in JJ2+! Gives you your default multiplayer fur colors.
- JJGEMS Doesn't give you coins, doesn't decrease your gems, tells you how many gems you have now.
- JJGRAV New in JJ2+! Reverses your gravity.
- JJMORPH A new bird is added to the rotation.
- JJNXT/JJNEXT Not allowed for clients.
- JJNOWALL Gives you a fly carrot automatically, and takes away that fly carrot when you disable the cheat. The code also works while swimming, not just flying, and gives you a fly carrot when you emerge from the water. The code resets when the level or gamemode changes.
- JJPOWER New in JJ2+! Powers up all your current weapons (but doesn't give you any new ammo).
- JJQ Shows the Order Info screens from the shareware version before quitting.
- JJT New in JJ2+! Changes the game speed. Only available in local games.
Partially entered cheat codes no longer subsist between levels. All cheat codes have been recoded to work with multiple local players. (Possible using the command line, e.g. jazz2 castle1 -player 2)
Debug Mode
All-new debug mode when you press F10. Use player 1's directional controls and the mouse to move the player to another part of the level without interacting with objects, then left-click or press fire to place the player somewhere new and resume normal gameplay. Press F10 again (or Esc) to exit debug mode without moving the player. Other controls (listed on-screen) can be used to place and delete objects too.
Debug mode is available online but isn't synced, other players don't see any objects you place or delete.
Miscellaneous
Fixed the animated spikes in the "Psych" levels, Purple Haze Maze and Funky Grooveathon. (This fix is only in the GOG release for now. A better approach to fixing level-specific bugs is in the pipeline.)
Saving in a level that uses the "Bees" event for horizontal or vertical spikes doesn't corrupt your save file.
Regenerating objects only give you points (and potentially drop pickups) the first time you collect/destroy them.
The HUD elements at the center top of the screen (player list, boss health bar, sugar rush time, shield time, and help string) no longer overlap each other when two or more are present. A help string will not be offset by this unless the offset from those other HUD elements is greater than that from any @ characters at the start of the string.
The episode list shows an unlimited number of different episodes without crashing, and will look for episodes with either .j2e or .j2pe file extensions. Fanmade episodes are listed alphabetically by filename and placed below official episodes.
Character-specific start position events are now chosen based on your real character, not whichever you most recently morphed into, so e.g. if you're playing as Jazz and type JJMORPH and JJNXT, you'll start in the next level at a Jazz start position, not at a Spaz start position.
Fixed death code to treat music consistently across all species (rabbits/birds/frogs): music will now be reset upon death only in local single player games.
Dying from delivering a red flag to a blue base (used as a makeshift death pit in many older levels) now shows the text "you killed yourself" instead of "loser."
Fixed glitches with cycling and clients getting hurt in online Single Player games. (Only possible outside of JJ2+ through memory manipulation.)
Most of JJ2+'s anti-hacking server protections are disabled when the server switches to the Single Player gamemode, because of cheat codes.
Fixed glitches that would make objects sometimes get incorrectly deactivated in local SP/Coop games in levels more than about 1000 tiles wide or high.
Details for Running a Server
- Single Player is chosen using the
/spor/gamemode spcommands. - The
/difficultycommand changes the game’s current difficulty, though objects/enemies that only appear in Easy/Hard will not suddenly appear until the next level. (more) - The
[SinglePlayer]Level List is used.
Details for Scriptwriters
- The onCheat hook can be used to modify or remove cheat codes, including debug mode, or even add new ones.
- jjDebugF10 tells you whether debug mode is active.
- jjDeactivatingBecauseOfDeath may be useful when writing single player object behaviors.
- The jjDifficulty, jjDifficultyNext, and jjDifficultyOrig properties control the difficulty.
