3,309 Commits over 945 Days - 0.15cph!
Fix RPC that were passing null in the function name
Move the prediction check from all RPCs into `SignalBroadcast`
Regex + manual tweaks to remove sourceConnection from all RPC methods as it's only used in a single RPC but takes 8 bytes each packet
Enqueue packets for demo from network threads instead of main thread
Change header class from fields -> properties (for System.Text.Json)
Merge upload -> full_server_demos
Add convar to zip demos as we save them to disk (default true)
Set Content-Type & Content-Encoding for demo & header as well as if the content is zipped or not
Delete demo chunks after they are uploaded to Azure
Implement code to upload demo to azure
Recompiled Facepunch.Nexus to target System.Runtime.CompilerServices.Unsafe 6.0.0 (was 4.0.4.0)
Add azure blob storage SDK manually from nuget
Expose variables for server demos as convar
`full_server_demo` convar will only be applied on startup but can be changed at runtime to apply next restart
Moving from stash to branch*
When `ServerDemo` convar is enabled on startup, the server will recordall network traffic on the server as one big demo file
Packets sent to multiple players are only recorded once (store list of players sent to)
Inbound & outbound data is stored in the order it was processed on the server
The demo is written to disk on a separate thread to make performance impact minimal
Demo is split into 1 minute chunks for testing (will be 5 minutes later)
Each demo chunk is given a unique filename with the .sdem extension (represents .serverdemo)
A json "header file" is written with each demo chunk wiht information on how the demo should be loaded (list of players, number of packets, time span, etc)
Changed pooling of NetRead & NetWrite to use reference counting to account for another thread needing to finish processing before they are pooled
Heat spreads through walls to other rooms (slowly) from hot rooms
Change vitals to always show "too hot" or "too cold" so I can see what temperature the player is at
Assign temperature value to each room, active heat sources slowly increase the heat of the room
Try to do the shoelace formula manually
Using incorrect version of shoelace algorithm to correct volume of each room: it at least gives higher volume for larger rooms which will be good enough to show bigger rooms taking longer to heat up
Copy faces from normal walls & floors to low wall, half wall, wall + floor frames & doorsways
Assign deployables to room(s) based on the floors they are on
Command to hide everything inside walls so esp cheats don't work
Fixed triangle center position being incorrect
Fix -180 degrees not being handled when discarding invalid faces
Triangles & squares both work when splitting into rooms
Remove foundation faces that are on top of eachother (think of two foundations beside eachother, you don't see inner sides)
Fix triangle foundation wall facing inwards instead of outwards
More debug visualization commands
Rooms now correctly connect
Add bunch of debug commands
Rooms connect but closest face isn't working correctly
Add faces to square foundation and triangle floor
Ok seems to finally connect faces of walls & floors correctly
Trying to identify what faces can connect before sockets are connected doesn't quite work
Although it's incorrect, it's connecting the segments of the base & debug drawing information to show where it is going wrong
Also renamed some "Shape" classes to "Face"
Split up classes & organize code
Messy mock up of how I want the system to split building blocks into faces & connect them
Fix NRE in SendUpdatedInventory
▄█▆ █▆▍▆▅▄▊▉▅ ▍█▊ ▇▌█▇▍▊▅▆ ▆▊▍▋▆▆▆▍▋ ▋▇▆▋▄▋ ▍▇▄▄ ▌█▌▅ █▅ ▉▋▍▌▆▉█▌ ▆▄▌▆▆▍ ▍▌▊ ▋▇▊▅▌▆▄█
Fix compile error of editor holster tool
▆▍▍ ▉▋▆▆█▅▅ ▊▍ ▆▍▅▌ ▍▉█▋█▉▋▉ █▊▄█▅█ █▉█▋ ▊▉▍▍ ▅▄▋▋▍▄█ █▅▌▇▉ ▅▉▌▍█▋▆▇ ▄▄▅▌ ▆▊ ▋▅█▉
Prevent right clicking character model to rotate it while backpack is open
Add editor tool to save the current rotation of the holstered weapon to it's backpack offset (to the entity, you still have to coipy paste it to the prefab)
Rotate bows to face backwards when holstered on backpack
Rotate jackhammer holster to make air canister face backwards instead of sideways
Rotate HMLMG holster so ammo container faces backwards instead of sideways
Fix salvaged melee tools not having backpack holster position set
Fix diving AK not assigned to left side of backpack
Tweak offset of smallbackpack (-0.01 Z) , bolt & hmlmg to reduce floating holstered weapons
Merge from main -> backpacks
Fix hover looting items into a full inventory with partial slots not putting the remainder into the open backpack
AKA: 500 stone in main inventory (full), right click 1k stone, 500 -> main inventory, 500 -> open backpack
Merge from main -> backpacks
Prioritize the main inventory when hover looting items out of a container with a backpack open
Once your inventory is full, then overflow to the backpack
Fix picking up an empty backpack swapping backpacks instead of going into your main inventory
Change pickup delay of backpacks from 1.5s -> 3.5s