134,217 Commits over 4,262 Days - 1.31cph!
* Renamed TransformMemory to MotionList (as it should be)
* Use managed HashSet instead of NativeHashSet because there seems to be no performance benefit to using native at the moment.
* Fixed exception caused by removing elements from the set while iterating
Use negative handles for fallback memory
wood box - added greybox model, prefab initialization, item created, temp icon created, manifest updated, icon manifest updated, localization updated.
Remove InstanceHandle and use a simple integer instead
* Added generic NativeMultiList to replace InstanceHandleList (WIP)
* Store Transform.InstanceIDs (and actual nullable Transform references) in PerInstanceMemory, indexed by seq_num
* Simplified MotionList add/removal procedures to HashSet operations
* Cleared up function naming in BaseEntity.Client.Motion.cs
* Consider all entities as a potential motion parent and utilise existing parent/child relations to call MotionStart / MotionStop
* Removed IMotionParent interface because it caused more confusion than anything else
* Correctly dispose of the hash set storing child instances when an entity is destroyed
Gun trap building privilege tests
Fix instance offsets, and LOD border calculations when using some LOD distance values
Add debug validation toggle to system
Handle terrain detail when using narrow FOVs by moving the centre point along the forward direction but clamped to the first LOD boundry
Added AssertTrueForDuration custom yield instruction
Added some shotgun trap tests
syncvar_autosave_trimming -> main
Don't generate autosave/autoload boilerplate code if an entity has no autosave syncvars
Wasn't an issue before but we are getting more and more syncvars so its worth it now
auto_populate_entitylist -> main
auto_populate_entitylist -> main
Fixed a tarp on the elevator shaft that had LOD1 at a different position
Disable all unused FreeImage plugins
Block fs_ convars from Lua
Minor cleanups (whitespace)
TTT: Remove usages of PANEL:SetDisabled
* Also made "Confirm Death" button get disabled if pressed, like "Call Detective" does.
Remove usages of Panel:GetDisabled for base game
Disabled DMenuOption adjustments
* Clicking disabled options no longer closes all menus
* Disabled options no longer react to hover events (visually)
Delete unused `showhitlocation` convar
Micro optimizations for Matrix() & Entity:GetBoneMatrix
Micro optimizations for some Vector stuff
* Vector global, __div, __mul, Mul
* Mostly caching GetType result
Added Entity:CopyBoneMatrix
Same as GetBoneMatrix, but instead or returning a new matrix, it copies the data to the matrix given in 3rd argument, which should be faster.
Add convar for painting autosave timer duration
Can now specify a label at the top of an EntityListScriptableObject - this will look up and auto add all BaseEntities with the specified label.
For example: an AllDoors EntityList with 'Doors' label will be full auto populated with all doors in the project when the manifest is updated or 'Tools/Update/Entity Lists' is ran
Just keeping this to doors just now for testing
▊▊▋▌▋ ▍▇▅█ ▋▇▌▄▌▊▄█▌▉▆_▄▇█▄█▉
Restored the CanFire check
Code cleanup while im here
▉█▍▍▍ █▉▅ ▍▆█▋ ▆▋▌▉▋██▊▉▇▋▊ ▄▍██ ▆▅ ▄▅▇▄▆ ▅▌▌▊▌▍ ▍▍ ▊▋▆▍▋█ ▉▇ ▋▌▉▄▅▋▇ ▌▍▄▄▍
merge from commandblock_tests
Swap some expected's and actual's in TestHBHFSensor
Apply fixes from Flaviens shelf, regenerate testlist
added new sounds for knife admire acrtion
Merge: from triggerparentdelayedexit_optim
- Optim: improve performance of GamePhysics.TraceRays family of queries
- Optim: TickMode 1 - add UsePlayerUpdateJobs2 related shortcuts to TriggerParent
Tests: built a boat with tickmode 1, spawned npc player on it, jumped on and off, flew in it's vicinity - no issues.
added new sounds for salvaged axe admire action
new sounds added and implemented for the salvaged icepick
merge from standardized_health_display_conditions -> main
merge from shield_stats_display_workbench -> main
merge from flameturret_optims
merge from flameturret_optims/tests
quick_craft_improvements -> main
- Made both convars 'Saved'
- Enusre memu points to the right one
- Codegen
Minor change to the new RemovePlayer method in BuildingPrivlidge
merge from flameturret_optims/tests
main -> quick_craft_improvements
Pass over all the boat blocks themselves
Reset scaled colliders, resolve duplicate bone names, add model components as needed, ran manifest
Fixes more offset / scaled / missing impact effects and stringpool warnings
First pass textures and LOD0 of scrap component box (still WIP)
Prop Spawn effect works better with depth pass
Remove forced RENDERMODE_TRANSCOLOR from Balloon entity
* The entity can still be colored just fine
Fixed Sandbox tools showing alpha selectors when unwanted
* Most default tools showed the alpha bar while it did nothing. It is no longer shown for tools that do not make use of it.
"Fixed" certain weapons rendering effects in opaque pass
* Since view models cannot be TWOPASS (or TRANSPARENT), we fake the flag by always applying it for ViewModelDrawn, except for depth pass
* Adds new argument to SWEP:ViewModelDrawn - STUDIO_ flags. Transparent effects should only be rendered here if STUDIO_TRANSPARENCY is set
Use Vector:GetNormalized instead of GetNormal
Fix wood_wire_angle* props spawning glass debris
Fix PHX glass props spawning gibs in 1 spot
Fix dissolve effect on entities without hitboxes
Fix 357 reload shell eject, again
Make Nova Prospect soldier player model use custom materials
* Allows people to modify the material without affecting the NPC, just like other combine player models.
* Made the eyes colorable on the first skin like other combine player models
* More consistent appearance compared to other combine player models (rimlight)
RichText:SetText now discards \r and \0
* This is consistent behavior with RichText:AppendText and fixes RichText:GetText not working correctly after SetText and AppendText calls in that order.
Fixed entities with material overrides being in the wrong render group
* Another one of those "depth pass" rendering issues with large dupes. If 2 entities have the same material as material override and one of them is transparent (via the color tool for example), this would affect a lot of unrelated entities. I think this only happened if the material was last rendered with transparency in the previous frame.
Fixed freezes when removing large amount of entities in Sandbox (dupes)
* Same for creation, but probably to a lesser degree
Clear out NULL entities from g_SBoxObjects on removal
* When player props are removed post disconnection, previous solution was either untested or simply inadequate?
Clear cleanup.GetList of NULL entities every so often
Clear invalid undos every so often
* This is mostly for disconnected players
Fire a problem when WorkshopDL download fails
For highest severity problems, fire a notification
* This should mostly be failed addons downloads, most importantly - during server loading screen
Merged Pull Requests
* Fixed potential Lua errors with Dynamite sandbox entity
* Fixed errors in Entity:CallOnRemove callbacks preventing other callbacks from running
* Optimize Player:GetEyeTrace*
* Menu: Only override <a> in Awesomium
* Menu: Disable some AngularJS features
* Adding a cooldown to the Camera weapon effects
nil check undo Entities table when cleaning them up
Remove unused pooled string
Fix hook.Add name in main menu
Added flags arg to PostDrawViewModel/PreDrawViewModel
Fixed VOX map id replacing not working at all
Fixes certain sentences.txt stuff not working properly
Player.Spawn will also force exit the player from their vehicle
Apply NOTEAMCOLLIDE in serverside ShouldCollide as well
* This will run BEFORE Lua ShouldCollide
* Fixes severe performance loss when many no collided players stand in the same spot
Fixes for some potential crashes
Allow Pre/PostPlayerDraw recursion up to 10 deep
Merged Pull Requests
* Do not draw effect rings in Depth Pass
* Fixed regressive Lua error in g_SBoxObjects cleaning code
Change damage indicator materials
* For full screen damage effects, use a "vignette" type texture
* For other effects, use $linearwrite material to reduce banding
Disable "player is dead" red screen effect
* It was not applied consistently to all deaths, and it is kinda unwanted for Sandbox type game
Move drown damage effects from UTIL_ScreenFade to damage indicator
Adjust burn/drown damage indicator effects
More oranger burn effect, longer drown effect (same length as it was before any changes)
Move crush damage effect to HudAnimations too
Make DMG_ACID screen effect separate and different
* No longer duplicate of radiation effect, green-ish tint
Rework DMG_PLASMA effects/sound
* DMG_PLASMA no longer makes the screen just half black (now has cyan effect), and changed the associated sound from infinite loud thing to the burn damage effect
STUDIO_ flags for Pre/PostDrawPlayerHands
Try deleting "scripts/game.txt"
* it only contains `"$game" "GARRYSMOD"` and doesn't seem to be used by the game
Changed gun firing sounds from 140dB to 105dB
* This is consistent with Crowbar and some other weapon sounds, and is less loud at large distances.
* This affects NPC firing sounds as well
* Changed toolgun to use its own soundscript - `Toolgun.Single`. No sound change, only volume change.
Make Annabelle in player's hands produce correct shooting sound