feat: expand progression and multiplayer systems

Add named save slots, progression import/export, and a unified play flow. Add live friend requests, presence, invitations, and relationship controls without durable discovery-server social storage. Advance the network protocol with isolated channels, movement reconciliation, late-join recovery, fishing replication, and animation synchronization. Preserve per-species catch totals, refine generated-world startup and water recovery, and complete the related input and interface improvements.
This commit is contained in:
Alexander Sellite 2026-08-23 20:48:38 -04:00
parent 1db1a5b754
commit 3b84bfe3a0
97 changed files with 7869 additions and 982 deletions

View file

@ -28,6 +28,16 @@ func _run() -> void:
defaults.size()
== KeyboardMouseMappingManagerType.ROLE_ORDER.size()
)
assert(
not manager.get_binding(
KeyboardMouseMappingManagerType.ROLE_INTERACT
).is_empty()
)
assert(
manager.get_binding_label(
KeyboardMouseMappingManagerType.ROLE_INTERACT
) == "e"
)
assert(
str(defaults[
str(KeyboardMouseMappingManagerType.ROLE_PRIMARY_ACTION)
@ -120,6 +130,11 @@ func _run() -> void:
interact_key.pressed = true
panel._input(interact_key)
assert(_has_physical_key(&"interact", KEY_F))
assert(
manager.get_binding_label(
KeyboardMouseMappingManagerType.ROLE_INTERACT
) == "f"
)
assert(not panel.is_capturing())
var settings_panel := SettingsPanelScene.instantiate() as SettingsPanel