Jazz Jackrabbit 2: The Secret Files / Jazz Jackrabbit 2 with JJ2+ v5.10 continued...
• Updated the AngelScript library to a WIP build of version 2.36.0, including all the changes since 2.31.2, our previous update. Among other things, this introduces array::sort and fixes array::removeRange.
• All argument names in AngelScript functions and methods are now applied internally. This means that you will be given more informative error messages if you pass a series of arguments inconsistent with any overloads of a function/method name, and also that you may reorder arguments freely. For example, jjMaskedHLine(xPixel:10, yPixel:20, lineLength:4) and jjMaskedHLine(xPixel:10, lineLength:4, yPixel:20) are both valid. You may also skip over any number of arguments with default values, e.g. jjDrawSpriteFromCurFrame(obj.xPos, obj.yPos, obj.curFrame, layerZ: 1). As the AngelScript documentation notes, "No positional arguments may follow any named arguments," so jjDrawSpriteFromCurFrame(obj.xPos, obj.yPos, obj.curFrame, layerZ: 1, 4) does not compile: you would need to write layerXY: 4 instead.
• Updated the exception messages (e.g. "Index out of bounds") to include line numbers and otherwise be more consistent with other AngelScript messages.
• Added new /spectatingcamerashift command (and corresponding plus.ini "[General]SpectatingCameraShift" configuration setting, and "Spectating Camera Shift" item in the Plus dropdown menu) for configuring whether spectating another player should shift the camera based on the spectated player's current speed (true, default, as has been the case since 5.7) or center the player exactly (false, as in 5.6 and before).
• Removed the /maxspectators setting due to people not intentionally using it.
• Remote admins may now use /spectate, !k, or !swap even when /spectating, /allowsuicide, or /selfswap are disabled, if their admin groups allow the /forcespectate, /k, or /swap commands respectively. (Hosts too for /spectate.)
• Fixed glitch from 5.7 of getting stuck inside walls in the usermade Battle levels "Apocalyptic End" and "Pleased with Presents."
• Fixed glitch from 5.7 of crashes or other errors in response to certain kicks in online servers, particularly remote admins kicking themselves.
• Fixed glitch from 5.0 of the particle explosions from destroying objects incorrectly drawing transparent pixels as opaque black.
• Fixed glitch from 5.0 of incessant noises in stopped servers from shields with six seconds or less remaining.
• Fixed command line argument -nochatlogger, which broke at some point. Added to new command line arguments section.
• Right-clicking a url in chat now copies it to clipboard.
• 5.10 clients in servers running 5.1 or below (including vanilla) use the original chat character limit instead of 5.2's expanded one.
• Restored unused progress bar graphics for downloading files.
• 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.
• Reduced HUD text overlapping from pressing F9 twice in Race.
• Removed some HUD elements for spectators because they weren't showing accurate numbers: shield duration, sugar rush duration, coin warp tally, SP/Coop score.
• Score particles no longer appear in SP/Coop servers for points gained by non-local players.
• Signpost objects ("End of Level signpost" and "Bonus Level signpost" in JCS) now work in servers too, not just local games.
• Fixed glitch of signpost objects restarting the current level instead of cycling to the next/secret level, when shot by players with only one remaining life.
• Restored broken code to make bonus signposts animate after being shot.
• Big Box and Big Rock objects are now solid in SP/Coop servers, to facilitate levels that require standing on them to reach high areas.
• 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 Single Player 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.
• 5.10 clients in older Cooperative servers are unable to kill bosses locally, which should mean more bullets overall will hit bosses, making it more likely that the server will think the boss has died.
• Several enemies and bosses now flicker and shake slightly while unfreezing, behaviors that were often present but nonfunctional in the original code.
• Various enemies and bosses (Bat, Tuf Boss, Devil Devan) are now better at choosing targets in contexts with multiple players.
• Restored unused death animations for Bubba and Tuf Boss.
• Made 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 vanilla behavior is maintained on Hard and Turbo.
• Added alternate behavior for the Bilsy and Xmas Bilsy events that better handles arenas with uneven floors. See JCS.ini section for details.
• Fixed glitch of Uterus sometimes skipping the spike ball phase, without even waiting for Activate Boss events to be touched.
• Fixed glitch from 5.6 of Uterus taking damage when shot while frozen even before all the spike balls had been destroyed.
• 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, and explode into pixels when destroyed instead of vanishing.
• Uterus spike balls in Cooperative servers can only be damaged by bullets and do not fall down, as measures to improve syncing.
• 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. See JCS.ini section for details.
• Fixed fallback code for levels with a "Devan (robot boss)" event but no "Robot (robot boss)" event.
• 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.
• Fixed glitch of the stars spinning around Devan's head after he's defeated moving faster when you shoot.
• Devan and Fencer enemies now have better collision detection.
• Devil Devan and Bee enemies now use their previously unused turning animations.
• Bee and Rapier enemies use simplified attack patterns in Cooperative servers for syncing reasons.
• Restored one unused animation and two unused samples for Rapier enemies.
• Fish and Dragonfly enemies charge at you faster on Turbo.
• Restored some unused/broken code for Dog and Cat enemies, making them run slightly faster while facing a player (only in local games).
• Fat Chick enemies are now more likely to send players flying with their punches, including players who have shields.
• Fixed glitch of Demon enemies always coming to a halt facing the same direction.
• Fixed glitch from 4.2 of copters dropped by Xmas Float Lizards using the wrong animation.
• Bat enemies now go back to sleep upon returning to their place of origin, and use their previously unused idle animation while asleep.
• Fixed glitch of Witch enemies (or other enemies with 5+ health) disappearing in servers if buttstomped while frozen. (Older clients or hosts will still trigger this glitch.)
• Normal Turtle enemies are now better at hiding from bullets.
• Fixed various glitches surrounding killing Normal Turtle enemies in servers.
• Fixed the Pause key and Pause dropdown menu option to work properly in multiplayer and to work the same way as one another.
• The pause screen now shows some reminder text for how to unpause the game.
• While the game is paused, pressing Esc or entering local menus such as the F1 help page now unpauses the game instead of drawing the menus at half brightness.
• The special key changes from 5.7, such as being able to press Ctrl+F7 for 800×600, now apply even when the game is paused.
• Revised tunnel textured background math to reduce 8-bit moiré effects, make the tunnel more circular, avoid slowdowns when F3/F4 are used, and prevent vertical camera position from gradually increasing spiral intensity.
• Fixed player getting stuck when warping while morphing into a bird.
• Fixed glitch of players' glowing trails getting stuck in a loop while the players were frozen.
• Rabbits with shields/flags and airboards now see the shield/flag following them as they bounce up and down.
• Flags are now drawn upside-down when carried by players who are drawn upside-down because of reverse gravity.
• Fixed glitch of frogs with airboards bouncing up and down.
• Fixed glitch of rabbits with airboards and reverse gravity seeing their puffs of smoke in the wrong position.
• Fixed graphics issues from changing jjTexturedBGStyle from TEXTURE::MENU to either TEXTURE::WARPHORIZON or TEXTURE::TUNNEL without refreshing the palette afterwards.
• Fixed memory corruption from AngelScript method jjPIXELMAP::save(jjANIMFRAME@) when used on sprites from the BIRD3D, CONTINUE, FACES, JAZZ3D, MENU, and SPAZ3D animation sets.
• Reinforced already-existing PLUS_REPLACEMENT animations to not occasionally go missing.
• The game will now accurately report the number of active players during idlemode, even if the local player is using splitscreen.
Post edited December 23, 2022 by (ø,ø)