Skip to content

Fix two faults that stop a saved world from ever loading - #23

Merged
Makkkkus merged 3 commits into
OpenHellion:mainfrom
beleata:fix/loading-a-saved-world
Aug 23, 2026
Merged

Fix two faults that stop a saved world from ever loading#23
Makkkkus merged 3 commits into
OpenHellion:mainfrom
beleata:fix/loading-a-saved-world

Conversation

@beleata

@beleata beleata commented Aug 19, 2026

Copy link
Copy Markdown

Two faults that stop a world loaded from a save from ever finishing loading.
Neither could be hit while world saving was broken, which it has been since 2023.

  • Ship.FixedUpdate is async and awaits a network send. The continuation can
    resume off the main thread, and reading Time.fixedDeltaTime after it throws.
    Nothing observes the exception and loading stops where it stands. The value is
    now read before the await.
  • QuestIndicators.IndicatorPrefab is not assigned in the scene. A restored
    character has quest progress, so World.OnLogin places quest markers,
    Instantiate throws out of the login handler, and the client sits on
    "Loading World" for ever with nothing in any log to say why. A missing prefab
    now skips the marker — though the reference itself is still worth assigning.

Found while testing OpenHellion/Server#5, which has the full write-up: fourteen
fixes across the three repositories, what we tried and abandoned, and an honest
account of the one thing we could not finish.

o885407257-png and others added 3 commits August 19, 2026 22:39
Both only show up when joining a server whose world came from a save, so
neither could be hit while world saving was broken.

- Ship.FixedUpdate is async and awaits a network send, and the
  continuation can resume off the main thread. Reading
  Time.fixedDeltaTime after it throws, the exception is never observed,
  and loading stops where it stands. The value is now taken before the
  await.
- A restored character carries quest progress, so World.OnLogin puts quest
  markers on the map, and QuestIndicators.IndicatorPrefab is not assigned
  in the scene. Instantiating it throws out of the login handler, which
  never finishes, and the client sits on the loading screen for ever with
  nothing in the log to say why. A missing marker prefab now skips the
  marker instead. The reference itself is still worth assigning.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Makkkkus
Makkkkus merged commit 2ac1846 into OpenHellion:main Aug 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants