branchrust_reboot/main/netmsg_loadmapcancel
25 Commits over 30 Days - 0.03cph!
▌▅▍▋▋▍▅█ ▊▉▌▍▊█▊ ▊▊▌▋██ ▉▆▆▇▉▅▉▆▅▌ ▉▆▅▋ ▍▄▇▍▍▍ ▄▄█▇█▊█▋▇▌▇▍▄▉▆▌▋▇▅▌▊ ▆█▋▆▋▉ ▊▋▉▆▌▌▉▇▉▋▌▍▍ ▋▋▌ ▇▉▊▆▊█ ▄▇▄ ▌▅▇▌▊▋▅ ▋▄▌ ▄▋▉█ ▅█▅▋▅▌█ ▅▄ ▍▇▄ ▆▊▉▍▅▋▆▆▄▋▆▉▍▄ ▋▅▌▌
▊▅▍▊▅▆▊█ ▇▌█ ▅▌▆ ▊▇█▊█▊ ▅▅ ▉▋█▅▉ ▇█▅▅ ▍▆▌▇█▋▉▆▆ ▆▆▇ ▇▅▊▆▇▌▄▊▌▊▍ ▉▉ ▊▆▆▄▊▇ ▍▆▋▉▍ ▍▌▅▊▌ ▇▆▇▌▋▅▊▋▍▆▉██▇▆ ▆▇▋▌▉▇▆▉ ▍▇▄▊▊▋▇█▊█ ▋█ █▊▊▋█▉
Buildfix: move client-var into CLIENT scope
Tests: compiler simulator
Update: replace bespoke network message with a player client RPC
Tests: reloaded playground in C+S editor
Clean: remove unnecessary changes, todos
- codegen
Tests: none, trivial changes
Clean: remove reauth debug convar
- go back to allowing repeated auth messages, but log a deprecation warning
Tests: compiler sim passes
▇▄▇▄▇▍▍▅ ▆▆█▊▋▊▄ ▅▋▉▉▋▍ ▅▅▆▄▍▄▇▇▉▄▋▍▇ ▄▆▋▇▉▍ █▍█ ▋▇▄█▌▄▊▇██▄▆▆▌▅▍ ▇▌ ▉▋▊▆▊▊▇ ▉▋██▄ ▊▆▄▊█ ▌▄▉▆▇ ▊▆▉▇▍▅▌█▉▇▅ ▅▍▅▋▉▊ █▄▇▆▆▍█ ▌▌▆▉ ▇▇▍▌ ▊▅▄█▊▇▊▆▋▇▌▄▌█▇▌▌▍▅ ▉█▌▅█▇▅▉▅▍▆▄▆▇▇ ▉▋▅ ▇▌▇▋ ▌▉ ▍█▌▉ ▇█ █▊█▆▇▇▋ ▄▊▄ ▉▌▉▇ █▆ ▉▊▉▍▉▊ ▉▅▋▌▊▇▅▄ ▉▉▅▊▉ ▉▊ ▄ ▍▍▋
Bugfix: skip deinitialization when unloading scenes before loading next one
Previously it was only skipping when returning to main menu
Tests: loaded from craggy to procgen a couple times, no more asserts
Bugfix: fix late-arriving snapshots crashing client
- also reset active scene name so we can identify LevelManager loading and skipping prefab pooling
Tests: was able to reload into procgen then back to staging, but tripped some asserts
Bugfix: also include level size in reload req, otherwise client gets confused about world loading
Tests: client was able to load from Craggy into procgen map while server is still on craggy
Update: more progress on loading to a different level
- refactored some of testing code
- client doesn't send tick while loading
- server delays client entering game till they're marked as connected
Tests: tried to load from craggy to procgen, but got stuck on recieving data. also triggerd a bunch of asserts in the process
Clean: remove stale todo
Don't think I need to fiddle with asset scenes in this case
Tests: none, trivial change
Update: ignore auth messages if already authed
Tests: using a temp servervar triggered reauth while on Craggy - got rejected
▇▍▌▉▋▌▌ █▌█▇ ▅▄▋▉▋▅▊▆▍▅▅▍▅▇▅▌▆▍██▊▍▌▇▅▄▌▍▍▊█ ▆▆▆▆▋▆▌▅▅ ▇ ▆▍▋▅▄ ▊▆ ▊▄▊▉█▄ ▋▅▅▇█ ▊▆▊▇▆▊ ▍▊▍▄█▊▇▋▆▄▇ ▍▄▆ ▄█▊▇▍▄ ▍▌▆▉▄▉▌█▉▌▋▍▋▄▅█▊▅▆█▇ ▋▅▍▇▅▅▅▇ ▆▊▆▇▆▋ ▅▇█ ▄▌▌▌▅▇ ▇█▆▍▄▊▋ ▉▅▉▋▆▊▆▅▌ █▊ ▄▇▆█▉█▇ ▄▄▆ ▄▇▉█▉▋▊▌ ▍▅▄▋█▄▅▌███▅▆▅█▅ ▋▌▅▌▌▋▉ ▍▊▉█▋▍▇ ▊▍▊▆▍
Update: clear more of the world state
- don't change nexus state
- abort if player isn't fully connected
Abandoned trying to support reload in C+S editor, it's a gian can of worms
Tests: reloaded on playground
Bugfix: recreate missing important managers on client after reloadmap
Tests: reloadmap - saw 10 managers present (previously only net_env was)
Update: allos changing scenes via reloadmap
- remove old hacky reapproveplayer, no longer need for testing
Tests: was able to reload from Playground to CraggyIsland in C+S editor and interact with the world
Bugfix(editor): fix net id desync after reloadmap
Tests: threw a rock after reloadmap - no desync errors
Bugfix: don't preserve RustNavigation across reload as it'll be created by GameSetup
Tests: reloadmap didn't generate errors
Bugfix: avoid local client player being destroyed during scene switch
also trying scene loading to happen if already in the same scene, but breaks a bunch of stuff
Tests: reloadmap, no longer seeing one of breadcrumb errors, can see legs and move
Bugfix: fix invalid isLoading state when reloading map
Copy paste mistake
Tests: able to control camera after reloadmap
Bugfix: avoid RustNavigation NRE spam on reload
- move RustNAvigation to Server scene
- LoadLevelAsync can preserve server scene in C+S setup
- add missing player states on the server to facilitate connect-lite flow
Tests: ran reloadlevel - no NRE spam, but camera is detached
Update: initial prototype alongside Approved hack
Tests: tried both, it's megaborked in C+S