REFLECTION OF ATHERIA
About the Game
In Reflection of Atheria, players are immersed in a world turned upside down—literally. The once vibrant land has been drained of its colors, leaving behind a somber and lifeless realm. But hope isn't lost. This innovative two-player adventure demands collaboration as players take on unique roles: one navigating the upright world, the other journeying through the inverted perspective.
Together, they face challenges, defeat lurking monsters, and solve intricate puzzles. By pooling their skills and distinct viewpoints, they work towards a shared goal—restoring the world’s lost colors and bringing back its former beauty. It's a story of teamwork, perspective, and the determination to overcome adversity, wrapped in a rich and imaginative setting. Sounds like the ultimate test of partnership, doesn’t it?
Tools Used
-
Game Engine: Godot 4.3
-
Art: Procreate, Photoshop
-
Audio: Audacity
-
UI/UX: Figma
-
Platforms: PC,MAC and Linux
Meet the Characters

Aria
A whimsical, soul-like being who dwells in the vibrant, upwards world. Aria thrives on adventure, exploring unknown places and collecting precious gems along the way. Her curious nature and love for discovery make her a beacon of light in the inverted realm.
A fearless explorer with a passion for diving into caves and uncovering hidden secrets. Drogan moves swiftly, using his agility to outrun danger and navigate treacherous terrain. His adventurous spirit fuels his quest to uncover the mysteries of the upside-down world.
Drogan

Pre-production Artbook of concept
Developer Notes
Project Overview
-
Game Title: Reflection of Atheria
-
Game Type: Two distinct games within one package
-
Multiplayer: Local multiplayer
-
Controller Support: Fully integrated
-
Engine: Godot 4.3
-
Scripting Language: GD Script
Game Architecture
Core Components
-
Scene Management: Implements Godot’s scene system to handle transitions between different game states.
-
Input Handling: Supports both keyboard and controller input with remappable settings.
Multiplayer Implementation
-
Networking Model: Local multiplayer relies on Godot's built-in multiplayer API.
-
Synchronization: Uses Multiplayer Synchronizer for maintaining game state across players.
-
Latency Handling: Optimized for local play with minimal input lag.
Controller Integration
-
Mapping: Custom input maps defined in project.godot using InputMap.add_action().
-
Detection: Uses Input.is_action_pressed() for real-time responsiveness.
-
Vibration Support: Can be integrated using Godot’s OS.set_vibration_state().
Game Mechanics
Physics & Movement
-
Physics Engine: Godot’s built-in physics engine with collision layers for precise interactions.
-
Player Movement: Scripted using CharacterBody2D for smooth navigation.
Rendering & Assets
-
Graphics Pipeline: Uses Godot’s Vulkan-based renderer for optimized performance.
-
Shaders: Custom shaders for dynamic reflections and lighting effects.
Challenges & Solutions
Local Multiplayer Syncing
-
Challenge: Maintaining state consistency across players without network dependency.
-
Solution: Used peer-to-peer input forwarding with frame interpolation for seamless experience.
Controller Compatibility
-
Challenge: Ensuring cross-platform controller support.
-
Solution: Implemented dynamic device detection and remapping via Godot’s input system.
-
Future Enhancements
-
Potential online multiplayer support using WebRTC integration.
-
Expanded AI-driven gameplay mechanics for richer single-player experience.
-
Performance optimizations through multithreading for large-scale levels.

