Build 193 is now available on Steam. This patch is a small hot fix for a crashing bug and a performance issue that were originally introduced in Build 190. Thanks to the crash reports you submitted, we were able to track this down even though we were unable to reproduce it ourselves. If you do experience a crash in NS2 and are presented with the dialog box for submitting a report, please do, they are very helpful!
Fixes
- Various crashes related to collision objects being destroyed
Optimization
- Disabled PhysX visualization unless debug draw enabled
Here's one more maintenance/fix patch before we get back to work on the bigger "Gorilla". This fixes some new crashes and improves balance over 191.
Features
- Added map cycling on the server (now you can run ns2_tram!). Use mapcycle.txt file to set up.
- Added Left 4 Dead style animated screen hints to make it more clear when marines should build structures, build power nodes, or guard power nodes.
- Hitting marines with Gorge spit will obscure their view.
Balance
- Removed change in alien armor effectiveness with # of hives. This was supposed to work like NS1, but a recent meant that aliens got _weaker_ with more hives! Now it's gone completely.
- Added 2 points of "hide" armor to Lerks (every attack does 2 less damage, good vs. groups).
- Added a very small delay between a mine being armed and exploding (*BEEP* ... BOOM!!!).
- Increased Fade carapace armor from 30 to 50.
- Increased Gorge bile bomb damage from 200 to 300 and splash radius from 5 meters to 8 meters.
- Increased Mature Whip health/armor from 900/150 to 1,050/175.
- Increased Skulk carapace armor from 15 to 20.
- Increased mine purchase cost from 10 to 15.
- Increased minimum spawn time for eggs from 6 to 8, to try to allow marines to counter-rush after a failed attack (also to compensate for recent egg bug fix).
- Lowered Gorge carapace armor from 60 to 50.
- Lowered Robotics Factory build time from 30 to 25 to be less annoying and closer to other structures.
- When players and structures are on fire, they recover energy at 25% normal rate (was 10% rate, which was very rough for Fade).
- Personal resources have now a limit of 100 per player. Any overflow will be split amongst the other players on the team.
- Whip bombs will not bounce off world geometry anymore.
- Changed corrode damage to deal only a small amount to players armor instead of full damage.
Fixes
- A player will no longer be distress beaconed if they are close enough to the command station being beaconed to already.
- Death messages for Players or Structures killed by Mines that were destroyed by other Mines will now display correctly.
- Don't invoke collision callback if one of the objects has been destroyed.
- Fixed bug where a client would not properly go back to the main menu when there was an error during connection (e.g. the client doesn't have the map).
- Fixed bug where aliens used hive1 armor for 3+ hives and hive3 armor for 1 hive...(egads - thanks Jaweese!).
- Fixed bug where clients would not be returned to the main menu if they failed to authenticate.
- Fixed bug where grenades would explode too early depending on your ping time (OnCreate is now called in the world time stream instead of the lag compensated time stream).
- Fixed bug where the game would not display the reason for being disconnect from a server when it returned to the main menu.
- Fixed crash in PhysX on level change (caused by creating too many materials).
- Fixed crash when too many reliable commands were sent at the same time.
- Fixed packet format errors when too many mines explode simultaneously.
- Fixed players not showing up in a server when viewed on Steam Friends.
- Fixed prediction errors when using the speed command.
- Fixed script error caused by giving a rally order to an unbuilt Hive.
- Game freeze when placing cysts.
- Mines detonate each other with some randomness now, for aesthetic effect(thanks Mats!).
- Multiple Whips or ARCs can now be given a root/unroot or deploy/undeploy command.
- No longer ignore damage types when calculating # of health points per point of alien armor.
- Physics transform changes are detected even if they happen in a sub-step.
- The Marine will only be slowed on landing if they jumped first (going down stairs will not artificially slow a player).
- The sound effect that plays when distress beacon is finished will only trigger if at least 1 player was successfully beaconed.
- Updated Lerk weapon spike and spore tooltips.
- Viewer sometimes starts with black screen.
- Whip bombs will now correctly deal damage to players (small amount and armor only).
- Whips will properly attack grenades again.
- Reduced network usage for updating infestation (thanks matso!).
- reserve Fade velocity when coming out of blink.
- Improved spit effect to look less 'spritey'.
- Don't create new material instance when the default material matches the friction/restitution settings (physics).
Sound
- Added private 2D sound effect for when a player is distress beaconed to ensure they always hear this effect.
- Better alien vision sounds.
- Better commander scan sound.
- Better powernode destroyed sound.
- Fixed ARC fire sound.
- Hooked up Mine sounds: Drop, Warmup, Explode.
- Hooked up new Alien tooltip sound effect.
- Hooked up private 2D sound for when a player teleports through the Phase Gate (so they hear this effect better).
SDK
- Added support for the Lua IO library (file names use special prefixes "game://", "user://", "temp://", and "cache://" to determine where they are located in the file system).
- Changed console command for collision rep visualization to 'collision'.
- Cull physics/collision debug drawing to view frustum.
- PhysX scene visualization (using the 'physics' console command).
- Table.contains will now return the key of the element when found.
OK, NOW it's Gorilla time...
We released a quick follow-up patch to yesterday's mega-build. This should tide you guys over for a bit while we focus on "Gorilla"...
Balance
- Buying mines now gives you 2 mines instead of 3.
- Increased mine arm time from 3 seconds to 4 (to reduce them in-combat).
- Mine health, armor, and point value lowered.
- Mines now set off other nearby mines when they explode.
Fixes
- Alien commanders are no longer able to see flamethrower effects when they don't have LOS to the Marine firing it.
- Dropped weapons no longer collide with the player controller.
- Fixed bug where console commands on the server were not properly verified to be coming from a local client.
- Fixed bug where players were not always frozen during the round start countdown period.
- Fixed bug where sometimes ready room players could become frozen during the round start countdown period.
- Fixed bug where the game did not use the Lua entry points specified in the game_setup.xml file.
- Fixed rally points.
- Fixed various script errors (thanks dePara!).
- Prevent slowing down of leap when leaping off a wall.
- Removed additional resource display for alien buy menu.
- Restored docking props to the build.
- Changed nano-shield "create" and "take damage" sounds from 2D to 3D (so you don't hear them everywhere).
- Skulks will not land on their back anymore when jumping from the ceiling in tight corridors.
- Less dubstepy nano shield damage sound.
We have just released NS2 Build 190. There are some good optimizations and fixes in here, as well as some improvements to mouse lag, making the game noticeably more responsive. Our testers have been reporting improved feel with this build, we hope you do too.
Features
- New alien upgrade system: now the alien Commander must choose one of three "paths": Crag, Shade or Shift (Shift not in yet). Crags, Shades and (later) Shifts can be built normally, except those structures are no longer affiliated with upgrades. Instead, Shells, Veils and (later) Spurs control the level of upgrades for those structures. So three Shells will give aliens defensive upgrades level 3 (1 structure will give level 1, etc.).
- Aliens can now evolve a maximum of three evolutions at a time.
- New Lerk flight model and very slight view tilting (thanks twilightblue!)
- Added Whip "bombard" ability. Mature Whips can throw ball projectiles to destroy metal structures and corrode marine armor.
- Added skill-based movement to Skulk: try jumping off walls and props for a small speed boost.
- Added support for ladders
- Added/improved Carapace and Regeneration evolutions
- Added loading screens (surprising how awesome this feels).
- Added multiple collision representations for objects to make some targets easier to shoot, movement collision smoother, etc.
- Added the ability to connect to a server while it is still loading
- Added changemap console command to the server to change the map while keeping the clients connected
- Pressing tab when running the dedicated server opens the console window
- Added average packet choke percentage to the net_stats display
- Added net_snapshot command on the server to log information about the state snapshots being sent to clients
- Changed the net_classes console command to output information about the size of the individual fields in the class
- Changed the net_log console command to accept a number specifying how verbose it is
- Added net_log, net_loss and net_lag console commands to the server
- Added retry console command to reconnect to the server last connected to (Thanks acid_rain!)
- Added an option in options.xml to disable multi-threaded rendering
- Added an option in options.xml to restrict the number of frames the CPU can get ahead of the GPU (defaults to 1)
- Marine turning animations
Balance
- Flamethrower and shotguns don't slow you down quite as much now
- Hydras have more forgiving collision shapes
Fixes
- Reduced input latency
- Pistol fast-firing exploit fixed
- Parasite is no longer removed when a Marine enters the command station (Thanks Motig!)
- Fixed teamNumber out of range error message for doors
- Removed duplicate error messages when a file could not be precached
- Leaping while Parasite is the active ability will now play the leap sound effect
- Fixed bug where ARC cannot deploy during attack mode
- ARCs will stop their charge up effects when undeploying
- Fixed issue where the server would choke client snapshot packets incorrectly
- Models no longer float.
- Alerts that trigger when a Hive or Command Station are taking damage will now always be heard by players no matter how far away from the structure they are
- Fixed the mouse cursor not being properly displayed
- Voice over will no longer announce "Command Station is under attack" when the Infantry Portal is being attacked
- The backpedal step sound will no longer play while side stepping, the normal step sound plays in this case now
- Changed how potential Egg spawn points are calculated to ensure enough exist around each Hive (Thanks Matso!)
- Fixed bug in Egg spawn time calculation code when a player spawns from an Egg (Thanks Matso!)
- Whips will now trigger mines when walking over them
- Fixed bug where mines would play the spawn item effect each time they get revealed for a player
- Player names won't get truncated anymore at the first space in the spectator message
- Mini-cysts may no longer be connected through walls and ceilings (Thanks Matso!)
- Flamethrower will no longer do more damage the faster the trigger is pressed
- Resource points will show the steam effect when the attached resource tower is visible
- Smashed tech points will now only adjust their animation state once they have been scouted (prevents early scouting of alien start point by marine commander)
- Egg mist effect will now be triggered client side only if that egg is visible (prevents early game hive scouting through the egg mist being visible)
- Med/ammo packs cannot be used anymore to scout alien start locations
- Gorge will no longer be spammed with messages if they hold down the build Hydra button in an area it cannot be built
- Marines that are Parasited or on standing on Infestation will now be sighted and show on up the minimap (Thanks Matso!)
- Fade may no longer stab while blinking
- Fixed calculation of ping times
- Fixed a networking bug with acknowledging reliable packets
- Marine rifle bash will no longer hit the wall behind the Marine
- Fixed bug making it appear that Parasite can be used more often than it actually can be used
- Structures/units will not update their energy anymore until the round has started
- Fixed a bug where marines blood effect plays at world origin when hit by spikes or heal spray
- Health circles will properly display for each individual entity selected as commander now instead of sharing one health circle
- Fixed bug where players were not always frozen during the round start countdown period
- Fixed bug where sometimes ready room players could become frozen during the round start countdown period
- Fixed unclean shutdown of the dedicated server
- Fixed shutdown process when exiting from a script error or an assert so that it doesn't crash or generate additional errors
Sound
- Hooked up special hit sound effect for the Lerk spike played on the Marine
- Hooked up special hit sound effect for the Gorge spit projectile played on the Marine
Optimizations
- Path is no longer constantly generated for AI units (Thanks Matso!)
- Improved performance of code that searches for nearby usable entities for a Marine on the Client
- Inventory weight is only calculated when the inventory changes instead of every frame
- Some of the sentry effects are now handled client side only (reduces network traffic)
- Optimized Lua memory allocator
- Changed physics objects to use instancing and aggregates
- Server no longer simulates rag dolls unnecessarily
SDK
- New CSS-based UI layout system (not in use yet)
- Changed child entities to only be relevant if their parent is relevant (used to force the parent to be relevant if a child was relevant)
- Removed redundant Client.SetMouseCaptured function
- Added collision representation parameter to sweep API functions
ns2_tram
- Added new reworked route from Server to Control.
- Some visual changes to Operations and Marine Start.
- Added ladder in Warehouse near south exit, and ladder in Alien Tram vent leading to Server Room.
- A few fixes for visual glitches in alien tram tunnel vents.
Now we're back to work on "Gorilla", which will include the Onos, Jetpack and some other juicy features...
Here's a new video talking about optimization of NS2. Max, Brian and Dushan talk about scripting, profiling and the overall process behind optimizing the game:





