249,482 Commits over 3,959 Days - 2.63cph!
Added `give_coins` and `give_keys` commands
Added Chest, requires Key to open. Has small chance of dropping an item
Json warmup can be a background task. (-500ms) Make logging initialization more predictable to avoid double configuration waste
Menu doesn't need access control (-100ms)
Only initialize ILHotload in editor as that's the only context it's useful in (-100ms)
We can await on account information until after menu is loaded, otherwise we're usually hanging here for a second or more doing fuck all
ResourceLoader.LoadAllGameResource: FindFile `*` more optimized than `*.*` (150ms -> 75ms)
Update Superluminal PerformanceAPI (Stop nagging)
Update AMSI patch for .net9 so we're not wasting 100ms+ every full hotload / package load
Let's do viewer tag this way instead
Update: Don't allocate storage for alloc marks on worker threads
Tests: exported a couple snapshots in the editor
Cleanup unused usings
Use Parallel.For( for particles
Lets try setting the min/max threads
Can't re-equip same weapon
Don't apply viewer tag to players that aren't me
Don't render crosshair if HUD is disabled
Update: truncate snapshot names to 32 chars
Tests: none, trivial change
Okay maybe don't do that bc it breaks fucking everything
Minimap TAB view is zoomed out further
Minimap based on Camera instead of Player
not trying to simplify the mesh to 10% anymore
Setup both client and server send methods
Make old CreateLobby method obsolete. Add LobbyConfig.MaxPlayers (defaults to package config.) Add LobbyConfig.Name (defaults to hostname for Dedicated Servers, or the owner's Steam Name for P2P)
Update: export worker threads in the json snapshot
- Also fixed a bug I introduced in previous submit that led to sporadic exceptions
Tests: exported 5 profiles in a row from Craggy in Editor, exported 2 in standalone, checked in perfetto
deferred mesh simplification
- sculpture waits for a period of inactivity to schedule mesh simplification
- mesh simplification is run in a background thread, while the unoptimised mesh is displayed immediately
- handles multiple enqueued simplification requests with job dependencies, preferring wasted background computation over main thread blocking
Run GenerateMap parallel so the loading UI doesn't freeze up during generation
Use ReplaceWith in WalkJsonTree instead of doing it manually
Split up scene more
Update SpriteTool
Update SpriteTools (should fix any shadow issues)
Camerbounds can controll ortho height
Room switch gizmo and icon
additional room
Refinery: Add ambient light, place a few characters around in editor only mode
Don't need flags on these
Reduce memory allocations in PhysicsShape::GetTriangulation
Runs around 35% faster with the changes in my use case (1100μs avg -> 700μs avg)
Merge pull request #1693 from Facepunch/optimize-physshape-triangulation-allocations
Reduce memory allocations in PhysicsShape::GetTriangulation
Support for @ key razor attribute, Facepunch/sbox-issues#4103
InteropGen: Add IsError to resources
Model.IsError propertly detects when we're error.vmdl
Applying clothing correctly detects invalid models
Fix jeans using the wrong model location
Fix settings apply button not working
Fix storage page
Fix menu missing material
Humans: re-enabled automatic citizen-to-human animation hack for now while proper animations are being worked on
Fix Popup Panels not closing when in game (but worked in menu)
Sausage toggle
Left the wrong model enabled
Body Group Fix
Human Bodygroup adjustments - Clothing fixes
Service update
Save/load avatar to/from the cloud
.Clothing fixes
Some changes to time sync. Seems to fix Facepunch/sbox-issues#6865 locally. Needs re-test.
Fix popup being orphaned when clicked on
Set in_editor ub richpresence when in editor
Popup supports AboveCenter
Stop making the popups red!
Friends in footer, delete friends list
Change notifications to a real popup
Start putting the party system back together
Some additional troublesome Vulkan layer disables
Update documentation for methods in INetworkListener to indicate that they're only called for the host.
Add net_fakelag ConVar. It's working for both Steam Networking Sockets and TCP / local instance. Can also be changed in the editor like this https://files.facepunch.com/conna/1b1211b1/sbox-dev_jpOfxVrwEr.mp4
Also commit this important file
Rework triggers to check contact points instead of ref counted touches. Add ITriggerListener.OnTriggerEnter/Exit for game objects that contain multiple colliders
Hide "available parties"
Update clothing
Add NETSDK1138 no nowarn
Make writing clothing more deterministic
When dressing, if we have a citizen model - but not a human model, make clothing invalid
Switch from net7 to net9
* Update your Visual Studio to 17.12.0!
Make EnableFootstepSounds on PlayerController work
Add Distance/Falloff to music player
Resolve Fixed Update Issues
Resolves issue where Fixed Update would be called more times than it should be. Fixes issues such as in Marble Racer where if you had 500fps you'd move much faster than other players.
Merge branch 'master' into navmesh-tiled
Properly resolve merge conflict
Fix Sprite Flash Tint not being applied if set when disabled
Fix gameobject and component control widgets not respecting readonly attribute
Horse gaits (walk, trot, canter, gallop)
Tweaked speeds
Separate overload as not to mess with any existing game packages
Can optionally pass LobbyConfig to CreateLobby. Right now only contains LobbyPrivacy. Add LobbyPrivacy.FriendsOnly.
Greatly simplify how we render stuff based on being firstperson/thirdperson, should be very solid now
Use JsonObject.DeepClone() instead of Deserialize<DeepClone>
Fixed up weapon visibility in thirdperson
Update: record marks from worker threads
- Had to leave allocation tracking enabled for main thread only - there's a comment explaining why
Need to implement export for worker threads - that's next
Tests: exported snapshot from Craggy in editor and opened in Perfetto
Prefix debug methods and props with debug
Resolve Fixed Update Issues
Resolves issue where Fixed Update would be called more times than it should be. Fixes issues such as in Marble Racer where if you had 500fps you'd move much faster than other players.
Add Distance/Falloff to music player
NavMeshAgent improve ground detection trace
In case our ground trace has multiple results pick the hit closest to the original navmesh position
Update backgrounds for map scenes
Linux: Add precompiled binaries libsteam_api.so, libGameNetworkingSockets.so, libpng.a and libdxcompiler.so because we don't compile them ourselves.
Linux: Various little #ifdef fixes regarding Linux specifics, C++20 and a strange macro definition of "None"
Linux: Use GNU++20 instead of C++20 because the code is making use of some GNU extensions in macros
Server sends world parameters