Couch split-screen
A full-screen view for one player, a top/bottom split for two, and quadrants for three or four. Keyboard/mouse and per-device controller input are supported.
One couch. Four classes. Every run a rivalry.
A Windows-first, 1–4 player couch split-screen action RPG battle royale, built in Godot. Explore a procedural arena, fight monsters for equipment and XP, then face the other players as an optional storm closes in.



PROJECT BRIEF
The current focus is local couch play. Online multiplayer is a later direction; it is not a current public feature. The Windows build also uses WebView2 for its in-game web menus.
WHAT IT DOES
A full-screen view for one player, a top/bottom split for two, and quadrants for three or four. Keyboard/mouse and per-device controller input are supported.
Fight melee and caster monsters, gain XP, and collect equipment with rarity tiers and stat rolls. Compare gear, swap items, and open chests.
Four distinct classes, five equipped skill slots, melee and ranged weapons, mana, sprinting, and potions.
Explore a seeded procedural world with per-player maps and waypoints. The optional storm shrinks the playable space toward a final confrontation.
THE FLOW
Choose a class and ready up in the local lobby.
Explore, fight monsters, equip loot, and learn skills.
Survive encounters with other players and the optional closing storm.
INSIDE THE CODE / GDSCRIPT
The player simulation resolves attack timing, updates resources and skills, then moves the player and consumes authority intents. Hardware input is gathered separately, so game simulation reads intent rather than polling devices directly.
Read the engineering note ↗func _simulate(delta: float) -> void:
# Release-point countdown (fixed tick, rule #6): the attack clip is already playing;
# the strike/launch resolves the tick it crosses the clip's release frame, sampling
# the muzzle from the NOW-raised weapon pose (cf. the monster casters' windup).
if _release_t > 0.0:
_release_t -= delta
if _release_t <= 0.0:
_resolve_release()
if _active_skill_sid != "" and _release_skill == "" and _swing_cd <= 0.0:
_advance_skill_sequence()
_simulate_resources(delta)
_simulate_skill_queue(delta)
_maybe_cast_skill()
_simulate_movement(delta)
_consume_authority_intents()GOOD QUESTIONS
The current game is built around local split-screen play. Its architecture keeps online networking possible, but online play is not presented as an available feature.
Yes. The host’s match rules can disable the storm while retaining phase-based monster escalation.
Forged is in development. Contact the studio for current build availability; this site does not list a public release date.
KEEP IN TOUCH
For project questions, build availability, or a conversation about software and games.
admin@updawg.studio ↗