5,955 Commits over 1,584 Days - 0.16cph!
merge from fix_browser_invalid_operation -> main
Remove start of cached query storing all addresses in a hashset and comparing them to the list of banned servers
- the code became redundant at some point
Fix InvalidOperationException() when multiple browser refreshes happen at the same time and the list is cleared while another query is filling it
Expand the `spawnvendor` command to cover every single vendor in the game
- can spawn vending machines and vendors from all monuments
- can choose the respective stock from each type of vendor
Fix IO entities not being reassigned after the convar for "should IO entities be occluded" is changed
- fixes the failing test properly
- not planning on supporting IO entities for a while as it's complex to handle the occlusion of wires, but keeping the convar to make testing easier
merge from main -> base_occlusion
Disable room occlusion test that is failing (toggling IO entity convar and server updating automatically)
merge from biofuel_generator_calorie_override -> main
Lower raw fish from 40 -> 10 biofuel calories
Lower cooked fish from 60 -> 20 biofuel calories
Override potatoes from 125 -> 40 calories for biofuel generator
Only round up foods using their default calorie value and give out <1 LGF each (raw beef, grubs, etc)
- don't round up foods that we explicitly override
Allow items that give out <1 LGF each to accumulate leftover LGF too
Allow consumables to override the calories provided to the biofuel generator
merge from analytics_signs -> main
Add "frame number" so we know which frame of a neon sign is being modified
Add analytics for signs being painted
merge from sentry_background_thread_errors -> main
Tag background thread errors as "background thread" so we can filter them in sentry
merge from sentry_background_thread_errors -> main
Client timeout 20m, server timeout 5m
Give background thread errors a larger time window so we can guard more against spam
Add ability to turn off background errors by setting -1 in the manifest (incase it completely breaks)
Add additional rate limiting to background errors
- I expect these can be spammy, so limit to 2 errors per minute
- controlled by manifest so it can be increased if we want
Ensure background thread errors get sent to sentry
- we fixed them being silently dropped last month, this month we collect them
Prevent teammates from using the break-in option to break into their teammate's room
Fix teammates not being able to let themselves out of doors when inside them
- caused by apartment rooms losing their reference to the front door after the restart
- while the owner could still go in and out, the "anyone can let themselves out" wouldn't work
- would only happen if the server restarted after you purchased a room
merge from fix_elevator_snapshot_nre -> main
Fix destroyed elevator floor causing NRE in ElevatorStatic.Save()
merge from fix_crash_uploader_release -> main
Fix crashes from previous updates being uploaded despite not having the sentry tags written
- don't upload old crashes (if we made it past bootstrap but didn't write a crash marker)
- still upload crashes that never made it to bootstrap (since this is before crash marker could be written)
- tag crashes that didn't make it to bootstrap as "bootstrap crashes" so we can see what crashes happened really early
- if we find a bunch of crashes happening before bootstrap we will find a way to include the actual changeset (since we don't read changeset until we get to bootstrap)
Fix attempting to transfer water sources between rooms (sinks)
merge from optimize_blueprint_button -> main
Cherrypick CS
160658
- tick blueprint buttons only when crafting menu is open instead of all the time (even when closed)
merge from base_occlusion -> main
merge from fix_sentry_branch_upload -> main
▍ ▊█▆ ▌█▄▍▆▊▅ ▊▊▋▇▆ ▋█▋▍▊▅ ▆█ ▆▌▍▆▅█ ██▅▅▅▋▉ ▍▊ ▆█▍▊▋▋▄▌▅▋ ▋▋▋▇ ▆▇▋█▄ ▍▄ ▉▌▌▋ ▆▊ ▉█▉ ▉▋▋▋ ▉▉▋ █ ▉▋▆▄▌ █▇▋▊▅ ▍▌▇▇▉ ▄▊ ▋▉▅ ▍█▄▉▇▉ ▅▄ ▍▍▋▊▊▇ ▌▆▊▄ ▊▇ █▍▊█▊▉▆▆▅ ▋▅▌▍
- increase the tail log upload from 100KB -> 250KB
- when uploading crashes without a user ID (super early crashes OR old crashes) then use the current steam id (it's almost certainly going to be the same as when the crash happened)
Fix incorrectly tagging release crashes as staging
- will now upload crashes as "unknown" branch if they are untagged (aka old crashes) instead of tagging everything as staging
- remove "release" tag that was passed through code, instead put the release / staging tag directly into the crash marker
- fix failing to parse for the crash marker if timestamps are enabled in the logs
- output crash marker earlier so early crashes can still be tagged correctly
- fix userid / steamid not being set early enough either
merge from main -> base_occlusion
Fix items sometimes not being transferred to new room when upgrading room
- was skipping over an item once it didn't fit in a container instead of trying to fit the item into every container before skipping over it
- fixed mail not being transferred to new room
- added failsafe so if the item really couldn't be fit into the new room (shouldn't be possible since every room has more space but to be safe) it will transfer to the player standing in lobby
merge from fix_steam_init_error -> main
Fix steam not logging the reason steam failed to start in the editor
- sometimes steam is closed, other times it's outdated and needs to be restarted
merge from optimize_json_garbage -> main
Use AddRange() to add converters instead of foreach and Add() per converter