As my first venture into solo-dev, Windward will be a cozy sailing game about navigation and seafaring developed in UE5. Check the weather, set sail and explore a magical archipelago as you discover the world and find where you fit in the vastness of the sea.
Beyond the genre
Most cozy games rely on two design patterns:
- Content-based progression (like the seemingly endless decorations you can buy in Animal Crossing).
- Labor intensive yet often shallow and repetitive gameplay (farming, cleaning, etc).
One of the main goals with Windward is attempting achieve the Cozy-Genre experience and gameplay aesthetics, but with a Clockwork Game Design at the core of its underlying mechanics and systems, hopefully achieving a deeper gameplay experience with a more elegant design.
This should result in:
- Progression comes from mastering the clockwork instead of unlocking all the content.
- Labor remains interesting as it is built as a decision-making contest instead of repetitive gameplay.
Current Status
A 3C's prototype has already been built as a proof of concept for the major risks and technical challenges, while providing a set of core mechanics that allow stablishing Rational Game Design metrics for scoping, level design and tuning.
The prototype currently supports:
- Custom Endless Gerstner Ocean
- Capability of handing Wind directions that change wave and swell directions over time.
- Shader and gameplay logic stay in sync while simulating the waves independently thanks to the deterministic characteristic of Gerstner Waves.
- Dynamic Weather
- A modular system sets global weather targets and then each subsystem, like the Wind Subsystem, internally handles transitions and any relevant gameplay context.
- Day/Night Cycle.
- Simplified Sailing
- Core sailing mechanics that interact with the custom water and weather solutions.
- Simple controls for challenging the player's understanding of sailing without a high physical skill bar to keep the cozy aesthetic.
- Curved World
- To reduce world size and travel times without losing the vastness aesthetic of the sea and the need to interact with the navigation mechanisms, a curved world shader has been developed.
- Keeps the horizon near the player.
- Allows precise control over viewing distance, with the extra gameplay layer of making taller things visible for measurable, farther distances.
- [WIP] Celestial Navigation
- Currently in development, celestial navigation will be at the core of the macro gameplay of the Clockwork.
From there I am iterating on the supporting systems/mechanisms for the Clockwork core, and in so, polishing a Core Loop with enough depth to support the game while keeping the scope within target.
About
As I read Brandon Sanderson's Mistborn Trilogy (Era 1, no spoilers please) I kept thinking that the combat and magic parkour scenes using its magic system, Allomancy, sounded like an amazing concept for a 2D Action Side-scroller. So I decided to prototype it.
My goal was to translate the magic system's powers in a faithful enough way that understanding it could serve as progression in the game, mimicking the way it serves to understand the actual events of the novels as you're reading them. All this, without sacrificing the fast-paced action presented in the books.
So far the prototype only includes the more platforming-specific powers, but designed with consideration for the inputs needed to eventually add the other elements and their respective powers.
Features
- Montage-driven action system for quick iteration.
- Coin throwing, pick-up and inventory.
- Fully comprehensive iron/steel push/pull mechanics.
- Blue lines highlight nearby metals.
- Player can push or pull any metal object in the level, the weight relationship and ability to move of the targeted metal defines the result of the push.
- Affordances built into each mechanic for ease-of-use while keeping the gameplay dynamic (this took the most iteration). For example:
- Aiming and throwing a coin temporarily disables gravity to keep dash path predictable uppon initiating the throw mechanic, allowing time to push the coin.
- Pushing a coin checks if there's a nearby surface it can stick to, allowing the player to still dash away if the coin wasn't already all the way stuck at a surface.
- Coins freeze for a moment after hitting a wall, giving players time to push off of them.
- etc.
- Basic Locomotion
- Ledge Hop
- If the player barely misses a ledge, the character detects it and leaps over it, reducing the need for precision and allowing more dynamic platforming.
- Pole Stand
- If the player lands near/on a thin pole or level element, it is detected and the player sticks on top of it, facilitating landing on precise targets.
- Basic Camera
- Inspired by Metroid Dread's camera, it follows the player ahead of where they are running, further the faster they are moving, allowing more space and therefor time to react to the new environment as they quickly progress through the space.
This post is WIP, come back in a byte.