BATTLEZONE
Version 1.5.2.20
Released 2014-04-07
I took a break to work on some new projects over Christmas and New Years vacation, and one of them turned into a months-long obsession to the exclusion of all else. The end result was a console-based virtual analog synthesizer.
Downloads
Unpack these into the root directory of your Battlezone 1.5 install.
Testing Executable and Symbols
All-In-One 1.5.2 Asset Pack (updated 2014-04-20)
Check the main 1.5.2 page for other downloads.
What's New
Stability
- Fixed a crash in the debug message that reported faces missing textures
- Prevent HoverCraft physics from probing off-map positions
- This occasionally caused crashes in the terrain system
- Fixed a potential divide-by-zero in Targeting
Multiplayer
- FlagDisplay only draws flags for player-controlled teams
- It no longer draws colored squares for AI-controlled teams
- NetPlayer can recover from (temporary) team number collisions
- Disabled "drawcoll" and "drawguns" cheats in non-Debug multiplayer
- Revised how kill messages look up player names
- Should fix kill messages showing "Team " instead of player name
- Non-player teams will still appear as "Team ", of course
- Host sends an "assign team" packet to joining players
- Host has more complete information about player teams
- Should help prevent players ending up on the same team
- Allow much longer chat messages
- Shell chat edit boxes allow up to 241 characters
- In-game chat edit allows up to 240 characters
- Fixed a (rare) crash when the firer died before the sniper shell hit
Rendering
- Apply brightness gamma to 16-bit and 32-bit textures
- Makes them consistent with 8-bit textures (finally!)
- Upconvert 16-bit to 32-bit if Texture32=1 in render.cfg
- Fixed crash when using 32-bit textures
- Increased vertex limit per face to 32
- Allows some of the more complex custom models to work
Gameplay
- RemoteDetonator doesn't need permission to detonate :)
- SeismicWave uses sequence numbers to vary up shake
- Prevents units from all moving the same way
- Updated AdjustedScrapCost and AdjustedPilotCost
- Affect only the player's team in single-player
- AdjustedScrapCost reduces scrap cost by 2 for Very Easy (versus 1 for Easy)
- Updated AI utility functions finding enemies/threats
- Exclude "not enemy" instead of "friend"
- Restores pre-1.5 behavior of ignoring neutrals
- Also exclude indestructible objects
- FlareMine emits projectiles in a radially symmetric pattern
- The original emitted projectiles in a distinct "fan" pattern
- This is more noticeable with high shotVariance
- Can reproduce the BZ2 "Death Fountain" (flare mine shooting poppers shooting blast)
Editor
- Fixed editor data from going off screen [Dx]
- Edit Task data is easier to read
- Added UnitTask Follow Distance [Dx]
- Added engage range for the Gun Towers [Dx]
- Edit Task shows white circle around Gun Tower when selected
- Only Gun Towers show the engage range
File System
- Fixed file system sometimes returning the wrong version of an asset
- It made LargeAssets=2 use the version of check.odf from bzone.zfs
- How did this ever work?
- Main loop saves and restores the current working directory
- This is a bit of extra protection
- LoadSaveGame functions handles file paths with '.' in them
- Filename would be truncated at the first '.' after the first save
Shell
- Mission Archives screen shows planet description
Modding
- Path spawn checks that the requested ODF is a GameObject
- Filters out non-GameObject ODFs (e.g. build.odf)
- Eliminates some assertions in debug builds
- Added [BounceBombClass] bounceRatio property
- Defaults to 0.5 (like stock)
- Added angular velocity accessors
- SetOmega sets angular velocity in radians per second
- GetOmega gets angular velocity in radians per second
- These are the same units as turn rate values in ODFs
- Fixed Lua GetPosition for path/point arguments
- It was trying to read from the wrong argument "slots"
- Added [AnimatedScrounge] Type4, Type5, Type6, and Type7
- There's 8 slots so there might as well be a way to set them all
Single-Player
- Fixed some issues with "The Race Is On" (misn10) [Dx]
- SetObjectiveName on SAV at mission start (overrides "Data Disk")
- Forced ccaturret2 to deploy before defending
Sound
- Integrated AudioSys changes from BZ2
- Shut down all sound channels before cleaning up OggManager
- Integrated OggManager changes from BZ2
- Each Ogg stream thread gets its own critical section
- ...not that this makes any difference for BZ1