Build 236 is now live on Steam!
Build 236 is out in the wild! Over the next few hours, official and community servers will roll over to the new, shinier version of the game. It is a bit of a monstor, with very significant changes. Most notably, you will experience better hit detection against skulks on walls. In previous builds, Skulk hit-box rotation while on non-horizontal surfaces has been somewhat erroneous. Here is a short video showing you some Build 236 stuff (please excuse Hugh's borked microphone):
Since their introduction, the intensity of atmospheric effects on marine flashlights has been a point of strong debate. We understand they were too bright, and they have been significantly toned down in 236, making it easier to see through your teammates beams in dark areas.
The amount of effort put into Docking for 236 is truly outstanding. Oli and Olmy worked in tandem on the reconstruction, which is most striking in departures. You might need to take some time to re-learn your routes about the map!
Steve has continued work on (among other things) the Spark Editor. Spark now supports smooth-lit edges for level geometry, and you can make edges smooth in the editor via the Edit menu when edges are selected and the Select Tool is active.
Without further ado, here is the full changelog. We had some fun with generating the changelog for this build, and somehow checkins from previous builds found there way in there. Most of it is, however, new in 236!
Balance
- Cysts now start with 50 health (down from 100)
- Increased minimum distance that Cysts can be placed near other Cysts (now 6 meters up from 2 meters)
Change
- Increased alert priority for structures to be higher than Marine requests.
- Reduced atmospheric light density of flashlights.
- Voting a Commander out of the chair now requires 50% of the team instead of 30%
- Server admin commands (sv_status, etc) will now print to the server console and log file.
- Defaulted the map cycle to include all the official NS2 maps.
- Removed "Beta" from the build number text that displays at the top left of the screen.
Editor
- Undo delete edge now restores smoothness attribute.
- Fixed crash/bug when deleting degenerate edges.
- Selecting many faces while using the Paint Tool should be faster now. Refactored code to lazily-cache texture sizes.
- Snap menu now contains two snap commands. No longer need to select vertices to snap, you can just select a face or an edge and snap its vertices automatically.
- Edit|Snap To Grid. Will snap selected vertices (nothing else) to the current grid spacing.
- Changed objects in the skybox to always be drawn with an infinite far plane (fixes issue where the sky box was not visible in the Editor)
- Increasing far plane limit to 1000.
- Fixed issue where the sound browser dialog didn't unmute the sound system when previewing a sound.
- Smooth edges draw as green (color customizable in settings)
- Smoothed edges now working in game! Level version number bumped up again to 9 to contain smoothed normals info.
- Added Edit -> Make Edges (Not) Smooth to control smoothed normals over edges (make sure Select Tool is active); Increased Level Version # to 8 to save smooth edges; NOTE: The game does NOT have smoothed edges yet, but the editor does.
- Tech Points now have an "Arm extension" parameter to control how long the Hive arms extend.
- Added viewport -> selection numbers to toggle the upper-right selection numbers in viewports.
- Transformations now undo by restoring old vertex positions rather than by applying the inverse transform. Much more numerically robust (thus reducing numerical drift over time).
- Disabling cinematic playback now actually hides cinematics (particles can cause performance slowdown)
- Added Viewport|Play Cinematics menu item to toggle cinematic playback.
- Only last gizmo mode for move/rotate tool gizmo snaps to grid; Rotate tool gizmo cycling works again; Pressing 'c' in output window clears it.
- If grid snap is on, the move tool gizmo will always snap to grid for grid-snapped movement. No more extra move cycle mode.
- Props with model paths that are invalid (e.g. missing files) show up as red boxes too.
- Added prop_dynamic_animator entity used to affect animation state on dynamic props based off messages received from other entities.
- Increased the size of the handles on the resize gizmo to make it more clear they are handles.
- Added the ability to select between global space and local space for the move and rotate tools.
- Vertex Welding should be much faster now. Only triangulating affected faces.
- Added Button Emitter entity to the Editor. This can be setup to emit messages into the world to start a sound effect for example.
- Huge re-factoring of mesh datastructures - should eliminate a lot of bugs related to crashes/freezes with deleting, welding, etc.
- Props with no model will now show up as red boxes.
- Fixed undo bug with extrusion. Added selection stats on top right of viewport. Added preliminary "check mesh" tool to help trouble shoot levels.
- Fixed low speed when camera accel is on.
- Added shift/alt modifiers for camera speed (works both in accel/normal modes); Fixed subtle undo-bug with weld/merge-face.
- Removing the shift-hover-select thing that just spams undo items. Some other polish/fixes.
- Fixed crash/bugs with copy/paste then undo.
- Hardcoded hotkeys 0-9 for viewport settings (perspective, lit/unlit, etc.)
- Made Tool Settings dialog taller to not hide stuff..heh.
- Added an origin cycle mode to put the gizmo at the first selected object, so you can move a group of props without bad grid-snap.
- Fixed editor bug where you could create empty props.
- Fixed bug when undo-ing face merges.
- Welding vertices will now auto-cleanup things like degenerate edges, duplicate edges (that were formerly different), etc.
- Made camera acceleration an option (tools|settings|general|display settings). off by default now.
- Fixing some issues with deleting faces, undoing, etc. Details: FaceIds are NOT reliable when faces are deleted, so each vertex now stores Face pointers rather than IDs.
- Work in progress checkin for fixes to welding. Just adding some un-used stuff for now.
- Fixed some bugs introduced by adjacent faces optimization.
- Move operations, with/out texture lock, should now be a lot faster and smoother. Using a adjacent-faces-set per vertex instead of doing global face search.
- On second thought, completely removing scale tool restrictions. Mappers use negative values.
- Changed some scale tool parameters so it's less restrictive when sizing small-ish objects.
- Added weld-selected-vertices command. Activate Select Tool, select a group of vertices, then Edit|Weld Selected Vertices (at the bottom of the menu)
- New "knobs" for texture mapping (and other) spinners. purely mouse-movement-based. Up/down arrow keys still work if cursor is in text box. CTRL and ALT modifiers work on both.
- Fixed lost-focus for hotkeys.
- Feedback about how many faces were affected by texture replace.
- Added ALT shortcut for texture replace; added F, C keys to move up/down when in first person camera.
- Fixed annoying scrollbar reset with prop/texture browser windows.
- Added Texture Replace tool (red paint bucket, all the way to the right of the toolbar)
- Removed (-1000,1000) range limit on texture shift spinners. This fixes some of the texture lock-move blank-field issues..
- Grid snapping for texture gizmo. There is some weirdness with snapping, but it works.
- Ctrl + doubleclick on face now adds a whole body to selection.
- Paint(Texture) Tool now has moving handles, in addition to rotate and scale.
- Switching to hash_set instead for faster "used asset" lookups.
- Texture browser now has "show used only" filter as well.
- Props browser now has "show used props only" checkbox. Same thing for textures browser coming soon.
- Custom colors now saved to *.level files.
- Custom colors now saved between selections. Next todo: save per-level custom colors to disk.
- Autobackup filenames now include level name, e.g. ns2_refinery.autobackup2.level.
- Tooltips for tool bar buttons now display bound hot key. Bug: If you change them, the tooltips won't update until restart. Ah well.
Feature
- Enhanced decals to have normal and specular components.
- Added a button to request menu to give up a round (becomes visible after 5 minutes)
- Improved Favorites functionality in the server browser. Favorites are now displayed at the top of the list by default and will refresh much faster.
- Added server browser filter option for passworded servers.
- Added -insecure command line option for dedicated servers to disable VAC.
Fix
- Fixed bug where tech would sometimes become unavailable after failing to research.
- The server browser will no longer allow you to attempt to connect to a favorited server that requires a password without the option of entering a password in some cases.
- Invalid servers are now removed from the favorites list.
- Fixed hit registration issues with the Skulk due to discrepancies in the body yaw value on the server and client.
- Fixed Alien spectator UI showing the wave spawn time incorrectly for players which are not allowed to spawn (too less eggs or minimum spawn time)
- MAC jet effect will only be shown when the MAC is visible.
- Fixed issue where damage over time or AI units cause combat state for their owner (attacking Hydras no longer uncloak the Gorge)
- Fixed bug where the "Start Server" displayed 32 as the maximum number of players for a listen server.
- Fixed "Couldn't load ''" error messages in the log (replaced with a more detailed error message)
- Fixed issue where models in a skybox cinematic would be affected by the location of the skybox entity.
- Fixed bug where the mouse cursor would not be properly set to the default cursor if a mod didn't assign a cursor.
- Fixed crash when loading a script file that was completely empty.
- Added CRC information to cached shaders to prevent issues where an outdated, cached version of a shader was used due to incorrect timestamps.
- Alien structures will no longer glow orange when a Skulk uses Parasite on them.
- Fixed bug where the rate-of-fire of the Rifle would be reduced with low frame rate.
- Fixed composite alpha-blending for LOW particles (ie. Lerk spore cloud is no longer too transparent)
- <server> Fixed exploit allowing a player to execute a server admin command through chat.
- Fixed unit status display not getting cleaned up properly.
- Fixed shadowing artifacts when atmospherics were disabled.
- Infinite loop in infestation blob placement.
- Fixed bug where L key couldn't be bound in the key bindings options.
- The "Use" icon will now display for Alien players for neutral use entities (map buttons for example)
- Fixed Commander ping being visible on minimap when inactive (grey dot at world origin)
- Fixed spit projectile visuals and damage application being out of sync for the shooting Gorge.
- Fixed bug causing the follow camera to not follow players anymore if an Infantry Portal or Egg was destroyed right before the spectating player was going to spawn.
- Added Recycle icon for recycle kill messages.
- Fixed bug where mods would sometimes appear with no name in the mod list.
- Fixed "PhysX: Particle data read not allowed while simulation is running" bug when multi-core rendering was disabled.
- Fixed bug preventing some structures from displaying the hurt effects (smoke, fire, etc)
- Fixed bug where armor / weapon upgrade in Marine HUD is displayed red at the beginning of a round.
- <gameplay> units behind closed doors wont get revealed on the minimap anymore.
- Fixed cysts not getting uncloaked by observatories.
- <gameplay> fixed umbra ability not affected by silence upgrade.
- <gameplay> shifts show now the correct echo radius for Alien Commander.
- <gameplay> fixed bone wall being visible to Marine Commander without LOS.
- <gameplay> fixed UI blood effect covering health / energy display at Alien HUD.
- <gameplay> fixed bug where Alien Commander did not properly unlock abilities for himself.
- <gameplay> fixed bug where clogs would not fall down anymore when they previously detached from another clog.
- <gameplay> Whip Bombard will no longer damage their owner (Alien Commander)
- Fixed bug where blink continued and was showing the trail effect when the Fade was already dead.
- <gameplay> fixed recycling ARC Robotics Factory giving back 0 res (uses now the amount of robotic factory + upgrade cost)
- Fixed bug where structures were allowed to perform actions which would be allowed only under specific circumstances (like building ARCs at unupgraded robotics factories)
- Fixed Client error caused by the Flamethrower shoot sound effect.
- Fixed bug causing loss of resources while spamming build MAC commands at the Robotics Factory.
- Fixed exploit allowing a cloaked Alien to run at full speed if they were holding down the jump button.
- Special characters such as new line no longer allowed in player names.
- Fixed Builder always starting up in verbose mode.
- Crash when playing an invalid sound effect.
- Changed fog to default to off.
- Fixed bug where mods could not be installed if the operating system's temporary directory contained UNICODE characters.
- Fixed bug causing text in a message box on the main menu to overflow outside the box.
- Fixed bug in the sv_ban command when banning a player not currently on the server.
- Fixed bug causing the Fade to "teleport" to the ground while Blinking into walls and the ceiling.
- Leading and trailing whitespace characters are ignored in the server list filters.
- Filtered out duplicates when mounting mods.
- Eliminated duplicate log messages when mounting mods for consistency checking.
- Fixed bug where returning nil from GetAttachPointCoords would result in uninitialized data being used.
- Fixed issue where having non-ASCII characters in the Windows user name would cause the game to not save mods, settings or cache files properly.
- The Command Structure health will no longer be displayed for enemy structures when they spawn in a nearby room.
- Fixed crash after alt-tabbing.
- Removed the "Attack" button from the ARC as it is not needed and was causing some problems.
- Fixed crash during precaching when a cinematic couldn't be loaded.
- Signaled Steam to stop refreshing the server pings when connecting to a server to avoid cases where the routers NAT table overflowed.
- Fixed issue where LaunchPad didn't properly specify the -game command line parameter when running NS2.
- Crash when acquiring physics models from different threads.
- Fixed bug where collision detection would fail on bodies which had extreme off-axis scaling applied to them (affected Harvester flinch animation)
- Fixed bug allowing the Alien Commander to cancel research on a lifeform egg at the end of research, gaining back the resource cost but not canceling the research.
- Fixed bug where ARCs didn't fire at targets when they had an attack order. They still need some work for actually listening to attack orders though. #3921.
- Fixed error when starting Explore mode.
- Fixed bug where Crags were getting too much health.
- Fixed crash when a render_setup file could not be parsed due to improper formatting.
- Fixed bug where text with multiple lines was not properly printed to the console.
- Fixed bug where the spinner on the loading screen did not display if texture quality was set to medium.
- Fixed bug where the server would leak memory under some circumstances.
- The ghost Power Node no longer takes damage, fixes a problem where the Power Node could not be rebuilt after being destroyed in some cases.
- Fixed rare bug where a Hive could become invulnerable if it was killed in the same frame as it finishes building.
- Fixed sound bug causing ambient sounds in the world to not play correctly.
- Fixed unbuilt shifts being able to generate eggs.
- Fixed Exo and Mine tooltips.
- Fixed regeneration effect showing up in combat.
- Fixed the "filter modded servers" option not always working correctly in the server browser.
- Fixed ARC targeting issues.
- Fixed already recycled units still taking damage.
- Added protection against speed hacking.
- Fixed issues when downloading a mod on the server that didn't contain a valid title.
- Fixed Flamethrower damaging the owner.
- Fixed bug causing the pistol to sometimes lockup, preventing the player from shooting.
- Fixed various crashes when a system runs out of video memory.
- Fixed issue where pre-evolving eggs were not valid for respawning.
- Fixed bug where resource would be lost if the Commander clicks on pre-evolve on an egg which had already a player assigned.
- Fixed bug causing Mines to give Marines weld orders after they had taken damage.
- Fixed hallucinated structures appear unbuilt.
- Fixed bug where Commander Alerts were not 100% responsive to player input.
- Fixed issue where the main menu would be displayed for a single frame when launching the game directly into a map or a server.
- Fixed bug causing weapons to "teleport" back to where they were last equipped when a Marine dies.
- Fixed error in the dedicated server documentation specifying how to create .htpasswd files.
- Added detailed error messages when a .htpasswd file is not properly constructed.
- The game will no longer allow switching to a map that doesn't exist (causing all Clients to be disconnected)
- Fixed bug causing the Command Station to display the "Start commanding" help text while unbuilt or while the team already has a Commander.
- Fixed bug causing the Hive to display the "Start commanding" help text while unbuilt.
- Changed the default Taunt key to T instead of Q to prevent a conflict with Request Health.
- Fixed Server script error caused by a game ending while the teams were unbalanced.
- Fixed issue where a mod could crash the game by specifying an invalid index when querying the list of servers.
- Fixed issue where requesting the server list could overflow or crash some modems.
- Load-time optimization: Caching some pathing data, so loads should be faster after loading a map for the first time.
- Added a hint for the NVIDIA Optimus driver to use the high performance GPU.
- Fixed rare problem in the Main Menu caused by the options file becoming corrupted.
- Fixed bug where mod names would sometimes be displayed as ???
- Fixed bug in the "Quick Join" feature.
- Fixed bug where mods could not be installed through the web administration interface.
- Fixed bug where regeneration effect was visible while cloaked.
- Server Browser: "Filter Modded" checkbox now saved.
- Fixed Hydras not interacting with nutrient mist.
- Fixed Couldn't open "" error message.
- Deleting Unicode characters in TextInput now works.
- The server browser scroll bar now resets when the menu is displayed and when the "Refresh" button is pressed.
- Fixed rare script error caused by getting a new ability in the same frame an Alien was destroyed.
- Reduced bloom flicker, courtesy of 'slime' from the forums. Thanks!
- Fixed "select all Marines" icon in Marine Commander HUD.
- Fixed popping of Infestation when it becomes relevant to a client.
- Fixed hitching when moving fast near Infestation.
- Fixed multi-threading crash when starting a listen server.
- Removed badges from main menu until we can hook them up properly. This fix is Brian-approved.
- Don't interpolate vectors that are too far apart (for cleaner camera cuts / teleportation)
- Fixed problem with MACs and Drifters being able to leave the world.
- Update view angles before firing weapon (fixes some hitreg issues)
- Music volumes properly set now to respect the options slider.
- Fixed bug causing the Command Station to be closed without a Commander inside in some cases.
- Fixed bug where the cloaking effect was not smoothly animated on the client.
- Fixed taking damage sound not playing for a Marine in a Lerk Spore Cloud.
- Fixed install script.
- Unwhitelisted all mods.
- Unwhitelisted NS2Stats. We felt we needed to do this because script errors were preventing people from playing NS2. Hopefully we'll have a better fix for this post 1.0.
- Fixed position of message box in the "Play Now" menu.
- Fixed bug in "Play Now" menu if there were no servers available.
- Fixed shifts not dissolving after death.
- Got rid of some lag.
- Fixed problem where the Commander buttons menu would sometimes get out of sync with the server, preventing placement of structures until the tab is changed.
- Fixed hatch ability costing no resources.
- Fixed celerity working when sneaking / being cloaked.
- Fixed Alien buy menu not unselecting upgrades when the upgrade structure gets destroyed.
- Fixed missing prop in Tram causing holes in the Tram doors.
- Fixed wrong icons in hallucination / echo menu.
- Added missing Hydra icon.
- Fixed nutrient mist effect showing up for enemies on cloaked structures.
- Fixed nutrient mist showing up on unbuilt structures.
Improvement
- The Gorge and Welder now award points for healing.
- Added "reconnect" command which is the same as "retry" (reconnects to the last server you were on)
- <server> Added sv_cheats admin command to turn cheats on and off.
- 'Sound volume' now only controls the volume of sound effects allowing music and voice volume to be set independently.
- Added time out to Stomp per Marine, to prevent animations going crazy and Onos being able to disable a Marine permanently when next to a shift.
- Easier application of Fade vortex.
- The "Update" button in the server browser now changes text when finished updating servers.
- Steam overlay based web views moved over to in-game web view.
- Added more loading screen tooltips.
- Added a display to the server browser to show the number of servers in the list.
- Fixed Flamethrowers not creating flame residues.
- The "connection problems" icon is displayed in yellow or red depending on the "severity" of the problem.
- Replaced script error with a warning message when a server config file is ill-formed.
- Added server list filter option to display favorites only.
- Added option to disable camera animations.
- The key bindings menu now displays key conflicts in red.
- The key bindings menu saves key changes as you make them.
- Added main menu option to select armor type.
- Replaced outdated Skulk tutorial videos (Thanks Skie!)
- Improved health/armor prediction.
- Custom color for evolved upgrade icons in Alien buy menu.
Optimization
- <mainmenu> improved refreshing of the server list (about 10 times faster)
- Optimized batching of decals with the same material.
- Fixed bug where all models in a level were loaded twice during the loading process.
- Sped up Infestation rendering.
Sdk
- Added a version of Server.SendNetworkMessage() which takes a ServerClient object instead of a Player entity.
- Fixed hot-loading of material files in the Viewer.
- Added support for floating point parameters in material files.
- Added a menu option for showing/hiding the Properties window in the Cinematic Editor.
- Added additional Fade and Gorge animation MAX files for reference.
- Added "copy" generator to the render pipeline configuration file, which copies one texture into another.
- Fixed potential crash when the render pipeline requested a parameter which wasn't defined in the shader template (now reports an error)
- Added Server.GetNumPlayers() and Server.GetMaxPlayers() functions.
- Removed SoundEventInstance:SetPropertyInt and SoundEventInstance:SetPropertyFloat functions (have more specific replacements and are emulated in the compatibility layer)
- Changed ambient sounds in the game to sound the same as ambient sounds in the Editor.
- Fixed compatibility with models exported from OpenCOLLADA.
- Removed the Script documentation link from the Launch Pad because it doesn't exist.
- Added a link to open the example assets directory in the Launch Pad.
- Added the ability to specify which object "zones" are rendered in a particular stage of the pipeline with the zones_mask parameter.
- Added Shared.ReportStatistics function.
- Added compatibility mechanism for handling changes to the SDK.
- Added the ability to specify default values for settings in a render_setup file.
- Added Clear Level menu option in the Cinematic Editor to clear out the currently set level file.
- Fixed issues with COLLADA files that contained instance_material nodes.
- Fixed issue where COLLADA files that referenced textures with spaces in the file name would not be properly loaded if the file name used a relative path.
- Fixed loading of COLLADA models in the Viewer.
- Enhanced the sound picker with a hierarchical folder display.
- Added support for hearing sounds effects placed in the level in the Editor.
- Added support for displaying cinematics in the Editor.
- Added support for displaying web pages in game.
- Added a second parameter to the callback called from Shared.SendHTTPRequest in the case of an error, which specifies the error message.
- Changed models to use a default material if one wasn't specified in the imported file.
- Added the ability to specify "passes" for build rules in the Builder to setup simple dependency relationships.
- Added SoundEffectInstance:SetCoords() function.
- Fixed crash and added an error message when the bones for a model don't match the model that is being referenced for animations.
- Fixed crash when loading a COLLADA file exported by OpenCollada.
- Added Client.GetServerIsSecure function to determine if a server has VAC enabled.
- Added an optional callback function to Client.RefreshServer.
- Fixed issue where passing invalid value to some script functions would report a script error, but continue execution.
- Added Client.GetServerIsModded and Client.GetServerTickRate functions.
- Added Client.RequestServerDetails function which must be called before a server's key/values can be queries.
- Added Client.GetIsDlcAuthorized function.
Server
- Added auto-kick AFK players feature. Add auto_kick_afk_time (seconds until an AFK player is kicked) and auto_kick_afk_capacity (from 0 to 1, how full the server is to enabled auto-kicking) to your ServerConfig.json file to use.
- Added admin command: "sv_auto_kick_afk 120 0.6". This will enable auto-kicking AFK players after 2 minutes when the server is at least 60% full. Use "sv_auto_kick_afk 0 0" to disable auto-kicking.
ns2_docking
- Added vent from Lockers to Maintenance
- Redesigned East Wing
- Tweaked commanders view around Terminal and Landing Pad
- Adjusted the lower windows in Terminal
- Changed the lighting in the lower half of Maintenance
- Removed the broken railing in Courtyard to Lockers
- Fixed occlusion gap in Stability
- Fixed Drifter spawn issue in Generator
- Added in moving train to Departures
- Moved Departures Power Node
- Added some extra cover in Maintenance
- Moved Terminals tech point and starting ip slightly to help with pathing
- Deleted Courtyard Resource Point
- Moved Cafeteria Techpoint closer to the window
- Fixed cyst placement issue in Courtyard
- Deleted one of the lockers in Locker Rooms to fix a pathing bug
- Changed how Courtyard vent leads to Departures
- Fixed cyst placement issue in Generator
ns2_tram
- Floating faces in Shipping removed from commander view.
- Fixed greybox textures visible through Shipping windows.
- Removed door prop at Shipping's west entrance from commander view.
- Pipes in Warehouse and Elevator Transfer with no collisions fixed.
- Added collision smoothing to pipe in Mezzanine.
- Cleaned up Commander View in Observation->Elevator Transfer area.
ns2_summit
- Fixed invisible hitbox between the pipes in front of the Sub Access vent
- Fixed stuck point in the chairs in Computer Lab
- Rotated crate in Sub Access corridor towards Computer Lab to provide some cover
- Cleaned up Commander View