Ocean of Damnation
A downloadable game for Windows and Linux
About
This is my entry for the Dungeon Crawling Game Jam 2024. It was made mostly alone by me (see Credits for more). Almost none pre-work was done. I just prototyped grid-movement within Godot to get a hang of it. Everything else was made in this one week.
Short Description
Free Lost Souls
from the clutches of the Eternal Jailer
and his henchmen and save them from their eternal damnation.
Save them, save yourself!
Long Description
The game is played from the perspective of an unnamed or unspecified man who finds himself at the helm of an old ship at the beginning of the game. He doesn't know why or where he is.
One thing is clear, what he sees is nightmarish. The noises, the strange colors and the chained shadowy figures everywhere create a feeling of horror in him. He realizes that he must leave this place, whatever the cost. So he steers the ship through this nightmarish waterscape in search of a safe place.
On the way there, he encounters chained lost souls who rise out of the water around him but are held back by their chains. He can help them and break the chains, allowing them to escape. They will thank him for it!
The water is full of dangerous creatures that want to prevent the lost souls from escaping. He may have to defend himself against them, otherwise he will end up like the lost souls.
Will you help him find a way out of this nightmarish place?
How to play
You play as this man and have the opportunity to take the helm of the ship and navigate it. The following navigation options are available to you when navigating the Ship:
Action | Key | Alternative 1 | Alternative 2 |
---|---|---|---|
Move forwards |
W |
Arrow Up |
Numpad 8 |
Move backwards |
S |
Arrow Down |
Numpad 8 |
Turn left |
A |
Arrow Left |
Numpad 4 |
Turn right |
D |
Arrow Right |
Numpad 6 |
The following navigation options are available to you when freely walking the Ship:
Action | Key | Alternative 1 | Alternative 2 |
---|---|---|---|
Move forwards |
W |
Arrow Up |
Numpad 8 |
Move backwards |
S |
Arrow Down |
Numpad 8 |
Strafe left |
A |
Arrow Left |
Numpad 4 |
Strafe right |
D |
Arrow Right |
Numpad 6 |
If you are at the steering wheel or one of the ship's permanently installed 50 cal MGs, you can enter or exit it with the following control option:
Action | Key | Alternative 1 | Alternative 2 |
---|---|---|---|
Enter / Exit mount point |
E |
Numpad 9 |
Page Down |
If you are at one of the ship's fixed 50 cal MG's, you can fire it with the following control options:
Action | Key | Alternative 1 | Alternative 2 |
---|---|---|---|
Shoot the 50 cal MG |
Left Mouse |
Space |
Themes
The following themes were specified for the DCJam2024:
Infinity
/The Endless
Ancient Ruins
Solitude
Cosmic Horror
which can be found in the game as follows:
- The
Lost Souls
are bound to this nightmarish place forInfinity
and can only be freed from it by the player's intervention. - There are
Infinity
Lost Souls
in this nightmarish place. - To die means to be chained for
Infinity
by theEternal Jailer
. Only the appearance of another nameless stranger on a ship, who frees you from the chains, can break thisInfinity
! - The ship on which the player finds himself is ancient and a kind of an
Ancient Ruin
from another time and/or space in which the game takes place. - The game character is in
Solitude
on the ship and has to spend the search for a safe place inSolitude
without any help. - The location of the game is pure 'cosmic horror' from which there seems to be no escape.
- The aesthetics and gameplay are designed to create the feeling of 'cosmic horror'. For some, the amateurish visuals will also create
Cosmic Horor
😉
What went good
- I really like the Godot scene / nodes workflow. It's very much intuitive and easy to use.
- Godots
getting almost instant
Feedback loop is really awesome. You just change a thing and press play und boom, in an instant you can play. That is a really nice developer experience! - I really had concerns about the visuals and how I would be able to make them in the
grand vision
I had. I decided to give Blockbench a try, and boy it was a blast to model with, even for a total amateur like me. And even more, it was fun to use, so I learned something new there! - I liked the challange even tho I did not finish the game. It was a blast to work on it under the time constraints. It showed me what I can to and gave me a much better inside of what works and what does not. So it was very much a reality check for me!
What went not so good
- I wanted to make a Web build with Godot but somehow that does not work very good if you use fog and mouse capture, so I had bite the bullet and make a Windows / Linux downloadable executable.
- As I developped fully under Linux I stoped counting how often Godot and Blockbench had crashed on me. It was a really dishearting experience but I pushed through it.
- My personal
cosmic horror
is GDScript even tho I didn't know it beforehand. I learned to really dislike Godot's GDScript. It's a pain in the a** to work with. Scripting sounds nice, you are free to do whatever... yay, until you dont and you want to refactor something... you are at a loss. All the effort bulding an internal Script Editor feels like a waste of developer time to me. Why not just use a battle proven one, like VSCode? Next time I'll be using c# it's a much better language.. sorry GDScript, but you're out. - Building complex systems with GDScript is also a pain and dependency Injection is nowhere to be found, so you have to hook up everything and end up with a spiderweb of dependencies. Not fun and hard to refactor. So it's getting very error prone after a while.
- I struggled with creating complex and animated models in Blockbench. Thus I stopped trying it as the time was not on my side. I really was missing an IK tool while modelling the meshes. That would be really helpeful. Maybe Blender next time 😉
Notes on the non-existent game
This version is more of a rough prototype than a playable "game". Despite everything, I wanted to submit it to DCJam2024, even though I am painfully aware that most of the necessary criteria are not met.
The Prototype lacks the following things to be considered playable in the sense that there is a beginning and an end with game passages in between:
- There is no way to successfully finish (win) the game. The idea for this is a lighthouse that you have to find on the map. This is hidden in the fog and the map has to be uncovered bit by bit by traveling with the ship in order to finally reach the safe place (the goal).
- What is missing is a memorable and action-packed battle. Both the
Eternal Jailer
and theSoul Eater
were intended for this purpose. TheEternal Jailer
is more of a passive figure that appears at random and drags 'Lost Souls' into the deep abyss of the ocean. It was planned that this would be the final boss, but the way of fighting was not yet clear. The 'Soul Eaters' are shadowy creatures that randomly emerge from the ocean and attack and 'eat' the rising 'Lost Souls' if the player does not prevent them from doing so by cutting the chains to which the 'Lost Souls' are chained or by fighting theSoul Eaters
themselves. - By freeing
Lost Souls
from their chains and allowing them to ascend, they give some of their energy to you or the ship, which can then maintain its all-round lighting. The light decreases steadily and provides protection against theEternal Jailer
and theSoul Eaters
. If the ship's light goes out, you are vulnerable and have to defend yourself against the shadow creatures. - There is a lack of contextual UI elements that give the player hints on what to do in a certain situation.
- In addition, an in-game rendered 2D map in the cabin of the ship is missing, which shows the player the current position and orientation on the map, so that he can see where he has already been on the map.
- Good graphics - My amateur (Programmer) art is horrific, one could say it's
cosmic horror
😉
In my opinion, all of these points are essential for you to feel like you're playing a game at all. However, I was not able to implement all these points in the very short time available. Nevertheless, I am proud of what I have achieved, especially because I did almost everything on my own. 🙏
Bugs & Issues
- You bet 😉
Credits
- My girlfriend Rieke for brainstorming and supporting me along the way. Love you very much! ❤️
- My good friend Lutz Großhennig for helping me out big time and telling me about the DCJam2024 in the first place! 🙏
Tools used
Tutorials & Assets
Assets
Sounds
- Iwan 'qubodup' Gabovitch - 50 Cal MG (modified by me)
- Leandros.Ntounis - Wind, strong. through power cables.wav
- InChristAlone - Storm on Sea of Galilee
- AudioPapkin - Riser Hit sfx 055
Fonts
Copyright
(c) 2024+ Jan (impmja) Schulte
Install instructions
For Windows unzip the "Ocean-of-Damnation_windows.zip" and execute "Ocean-of-Damnation.exe"
For Linux unzip the "Ocean-of-Damnation_linux.zip" and execute "Ocean-of-Damnation.x86_64"
Have fun!
Comments
Log in with itch.io to leave a comment.
Pretty cool and I genuinely didn't think it was DC at the start.
Though, no objective so :P
Thank you for trying it! :)
Ya I was trying to bring something new to the DC genre. Not sure if it works very well tho. But I liked the Idea of haven grid movement in combination with free-roaming (As I wanted to make a DC but with free-moving First-Person Shooting combat). Maybe I expand on it even further.
Yes no Objectives so far, as I underestemated how much work it takes to get interesting / meaningful gameplay. But I will continue working on it to get it where I had imagined it!
Nice this was very great game and there no issue anyway well made game well done keep it up!
That’s very kind. Thank you for trying it out! :)