BATTLEZONE
Version 1.5.2.21
Released 2014-07-10
So much for the monthly release cadence I was going for...
Update: General BlackDragon provided a solution for the broken models that got released in the 1.5.2.20 asset pack and carried forward into the 1.5.2.20b and 1.5.2.21 asset packs. The new 1.5.2.21b asset pack linked below incorporates the fix so be sure to get it.
Downloads
Testing Executable and Symbols
All-In-One 1.5.2 Asset Pack (updated 2014-07-12)
Check the main 1.5.2 page for other downloads.
What's New
Rendering
Fixed psychedelic colors at lowest monitor brightness
The lowest setting was reading values outside the gamma table
Brightness levels will now be one step higher than before
Stability
Fixed a crash when aborting a mission and jumping to another mission
Post-load used positional audio while waiting for load VO to finish
The camera owner wasn't set up properly yet so the listener crashed
Avoided potential divide-by-zero in Reticle::FindReticleObject
UnitTask AbleToHit no longer crashes if it has no active weapon
AbleToHit uses the unit's eyepoint in that case
This may just be masking some underlying problem...
Cheats
Mission initialization clears "drawguns" and "drawcoll" cheats
Prevents them from carrying over into multiplayer
They allowed players to spot units through terrain
Added cheat codes to toggle play options in-game [Dx]
Hold Ctrl+Shift (as usual)
Type "level" to toggle automatic leveling
Type "aim" to toggle target lead position
Type "flip" to toggle reverse mouse (up/down)
Single-Player
Fixed "Target Drone" moving too early in training mission 2
Code that built an AI command but never sent it got turned into a Goto call
Multiplayer
Removed the artificial 100 FPS cap in net play
It was added to work around problems at high frame rates
Those problems have been fixed so the cap isn't needed any more
TO DO: make the cap an option in render.cfg?
Automatic leveling works correctly for remote players
Fixes remote Flash cannon not aiming properly
Fixed a random crash between mission load and entering simulation
Network code could create ordnance before simulation was set up
Deferred the "waiting for network" phase until after post-load
Reset the camera stack when the local player respawns
This may fix view selection controls sometimes not working
Shell
Lobby and pre-game chat can show message timestamps
Disabled by default to avoid clutter
Enable with /times or /times on
Disable with /notimes or /times off
Timestamps are not retroactive; they apply only to new messages
Fixed incorrect references to Wil Stahl and Willie Rosas' dedications
This has been broken since at least version 1.3 (!)
FEARTHEMANOX
IAMWILLIEROSAS
Fixed pre-game lobby issues for non-host players
Map list showing "Unknown" after leaving and rejoining
Excessive mission CRC checks on entering
Pre-game lobby shows Version and Mission CRC up top
Pathing/AI
Fixed building area coverage in BlockCells
Building terrain cells should fit a lot better now
Should improve reliability of units arriving at the building
Updated the Go Near distance of several AI tasks
Scavenger GotoDrop and GotoRepair
Construction Rig UnBuild
Further reduces chances of those units getting stuck
Use aiName for team 0 instead of aiName2
Prevents neutral producers from seeking geysers automatically
Should fix neutral producers CCA mission 7
Gameplay
SupplyDepot and RepairDepot can play a deploy animation
It works just like PowerPlant :)
Generally improved point/box collisions
Should fix the cases where bullets pass through collision geometry
Particularly improves compound shapes like buildings and producers
Don't perform automatic team slot reassignment for producers
Should improve compatibility with 1.4 Instant Action maps
This will need testing...
Restored some 1.4 behaviors
Poppers only attack enemies, not neutrals
Craft GetCommand no longer excludes neutral objects
Added [SprayBombClass] bounceRatio property
Defaults to 0.5 (like stock)
Editing
GoNear task (and its derivatives) shows its radius in shift-F9 view
Fixed an error dialog popping up while starting an empty/default mission
The strategic AI scheduler was getting initialized twice
Cases where this came up: loaded .TRN, missing .BZN, /nobodyhome option
Scripting
Scripts can now import modules from files in addon or pack files
Added a Lua package loader that uses the Battlezone asset system
Standard Lua package loaders should still work
See the lua-users Modules tutorial for examples of creating and using modules
Added GetAIControl
Returns true if the team is AI-controlled
GiveWeapon can remove a weapon from a slot
Must provide a valid slot index
C++: pass NULL or "" as the weapon name
Lua: pass blank, nil, or "" as the weapon name
Added new objective-related script utility functions
UpdateObjective: change the color of an existing objective
RemoveObjective: remove an existing objective
Terrain
Support maps larger than 80 zones
Absolute upper limit is 80x80 zones (102400x102400)
Practical upper limit is 32x32 zones (40960x40960)
Especially large maps can take a very long time to initialize
Debugging/Logging
Asset indexing system logs to zixindex.log
Shows the active ZIX file (e.g. bzone16q.zix)
Lists all asset files and their locations
. Active asset shows " @ "
. Overridden asset shows "! "
Helps diagnose asset conflicts
Shell logs asset CRC checks
Check CRC logs to crc32game.log
Mission CRC logs to crc32mission.log
Helps diagnose Check CRC and Mission Version Mismatches
Tip: look for entries with unusual locations
. Example: abhqcp.odf b3a1697f (addon\testluadev)
Added debug output console
Enable with the /console command line option
Grey for debug trace message
White for Lua print statement
Yellow for Lua error message (+ warning dialog)
Red for Lua panic message (+ error dialog)
Click on the upper left corner to show the console menu
Can select, mark, and copy text using the Edit sub-menu