Crushing Depths by Ben ONeal
See how far into the depths you can sink!
Press Left and Right to navigate the winding abyss. Press Space to push back the darkness that forever closes in around you. But if you push it back too far, you'll stop earning points. Refresh the page to restart.
Your score multiplier is determined by how far down you have sunk, and how much of the darkness overlaps your light radius. See if you can beat 100,000 points!
The highest confirmed score so far was 177k. My personal best is 94k.
The entire game is written in vanilla JS without any libraries, rendering direct to canvas. It weighs in at 4.5kb total unminified.
Future enhancements (which I couldn't implement before the deadline):
- Gameplay
- Press 'Enter' to start/restart (so it doesn't immediately play on load, and reload isn't required to try again)
- Display the current score multiplier so strategies become more discoverable
- Persist scores to an online leaderboard
- Display current leaderboard rank next to current score
- Display score needed to reach next leaderboard rank below current score
Pickups: hidden in the edges of the encroaching darkness (only revealed and absorbed by your light) which do things like temporarily pause the growth of the darkness or boost the range of your light
Graphics
- Particle effects flowing from the overlap between light/dark into the player to visualise point gain
- Subtle background cues to convey descent
- "Pulse"-like effect when pressing Space, to show the pushing back against the darkness
Make the darkness appear more "blobby", organic, and nebulous (like metaballs or smoke), so it feels more coherent and sinister (my initial implementation thrashed the frame rate so had to be scrapped, though its still in the source code)
Audio
- Add audio feedback
- Eery muted ambience when avoiding the darkness
- Agitated dark ambience when in contact with the darkness
Modulate intensity of music inline with visual tension and progression
Accessibility
- Make it responsive to fit any screen
- Handle touch input
| HTML5 (web) | https://crushing-depths.now.sh/ |
| Source code | https://crushing-depths.now.sh/src.zip |
| Original URL | https://ldjam.com/events/ludum-dare/42/crushing-depths |
Ratings
| Overall | 534th | 3.095⭐ | 23🧑⚖️ |
| Fun | 589th | 2.762⭐ | 23🧑⚖️ |
| Innovation | 361th | 3.19⭐ | 23🧑⚖️ |
| Theme | 207th | 3.857⭐ | 23🧑⚖️ |
| Graphics | 492th | 2.929⭐ | 23🧑⚖️ |
| Mood | 423th | 2.816⭐ | 21🧑⚖️ |
| Given | 28🗳️ | 2🗨️ |
Didn't get the mechanics without reading the info text.
GG!
On my macbook, the performance is around 2.5ms per frame, which is about 400 fps, but it's "capped" at 60fps. I doubt your computer could ever be slow enough to drop under that, unless you're also mining bitcoin. It's likely what you're experiencing is the exponential increase in wall growth as they get bigger.
Maybe the walls growing faster is what's throwing me. I don't know, I can't put my finger on it, something just doesn't feel quite right to me.
Other than the technical issues (that I may be the only one experiencing), the game is simple, but fun :smile:
The highest scores were achieved by skilfully keeping the walls tightly packed around the light on two/three sides the entire time. It's hard but you can certainly notice a massive difference in point gain from even a few seconds of being tightly surrounded.
If you aren't touching the darkness, you won't accumulate any score at all. If you hold space constantly and try to stay near the darkness, your score gain will be incredibly low. Over time, the rate of wall growth increases, as does the speed of descent, while your ability to push the darkness back and your rate of movement do not. Within a minute or so, the rate of darkness growth will exceed your ability to push it back at all, and staying near the edges becomes incredibly difficult as they fluctuate faster than you can move. Soon enough, you'll be overwhelmed, having earned almost no points for your troubles.
Strictly speaking, the scoring is implemented as such: `count * difficulty * deltaTime * (level + 1)` Count is the number of darkness circles you're touching. Difficulty is the cumulative radius of each circle minus your radius (which deceases over time, thus increasing score gain). Level starts at 0 and increases by 1 every 5 seconds.
Essentially this means that it's essentially impossible to get a respectable score without making it difficult for yourself, and the highest scores can only be gained by a combination of luck and skilful aggressive play. I'd be surprised if anyone even made it into the tens of thousands by playing it super safe before the game crushed them.