Unearther by udo


Unearther is a weird little puzzle game similar to Boulder Dash and Digger. It features primitive but pretty graphics, eerie minimalistic music that still somehow took me an hour to make, and only the best mouth-based sound effects!
Control the Unearther with W, A, S, D. Undo moves with Z, restart the level with R, enter level select screen with Escape. Open custom level editor by pressing [shift-L].
Tools I used to make this: - Engine: web browser - Graphics library: Three.js - Music: Logic Pro X - Sound: Audacity - IDE: Geany
If this runs slow: try out the low graphics option and let me know if that helped. The game does require 3D acceleration and a recent web browser. I'll make a downloadable package eventually, but for now please use your browser.
Regrets: not enough levels, time ran out, you know how it is :)
Post-LD Changes / Bugfixes - fixed a bug that caused goblin walking direction to reset after undo - impassable tiles are now easier to see in the dark - fixed weird behavior when you reach the exit and die at the same time - included custom "level editor", invoke by pressing [shift-L] - fixed a bug that caused the player state to freeze after dying
PLEASE leave a comment if you rate, feedback is more important to me than anything else, whether positive or negative!
| Link | https://github.com/Udo/ld48 |
| Link | https://openfu.com/ld/ld48/game/ |
| (graphics to low) | https://openfu.com/ld/ld48/game/#nopost |
| Music download | https://openfu.com/ld/ld48/game/audio/LD48-song01-v1.ogg |
| Timelapse | https://www.youtube.com/watch?v=1ISfC3yNReY |
| Original URL | https://ldjam.com/events/ludum-dare/48/unearther |
Ratings
| Overall | 412th | 3.5⭐ | 22🧑⚖️ |
| Fun | 331th | 3.5⭐ | 22🧑⚖️ |
| Innovation | 241th | 3.6⭐ | 22🧑⚖️ |
| Theme | 593th | 3.35⭐ | 22🧑⚖️ |
| Graphics | 432th | 3.475⭐ | 22🧑⚖️ |
| Audio | 178th | 3.65⭐ | 22🧑⚖️ |
| Mood | 292th | 3.5⭐ | 22🧑⚖️ |
| Given | 22🗳️ | 16🗨️ |
But it's lag on my browser
Idk if it's a bug
I added an option with (graphics to low) does that help? It disables post processing but makes the game way less pretty.
There seems to be a glitch with goblins' model, after many restarts/undos, they start getting very jumpy.
@vexorian thank you! You can't attack goblins. When you end your move in the same field as the goblin, you die. I'll have to test the goblin jumpyness problem...
Took me a while to figure out the rules: when I can move up, what the laser does (I assumed it made the object it hit passable, at first). Interesting puzzle design and some nice music!
I ran into a few problems in the later levels, though:
- In "Floor is lava", I died on my first try and then the player model did not respawn, so I could not move or do anything. This did not change when I restarted the level or selected the same level in the level select screen. After reloading the web page, it worked again.
- In "Death ray" I also died on my first try and then always respawned already in the death ray, so as soon as I restarted the level, I was dead.
- In "The gob-line" there was only one goblin on the right side of the level, and when I moved, I instantly died. This time the player model was respwaned, but I could not move. Also there were now four goblins in the level, which seems to be the expected behaviour. When retrying after reloading the page, it worked as expected, until I died again and could not move again. Third reload, a fifth goblin came from the right side into the level like the first time, but the four goblins were also there. When I died, I respawned into the left stone and could not move (edit: tried again and it seems like the player position is not reset after death in that level).
All in all, I enjoyed your game and am quite impressed with the amount of mechanics you were able to implement in the short amount of time, even though some in the later levels seem to be a bit buggy. I tried to explain the glitchy behaviour in detail, maybe that can help you with finding the fixes. :slight_smile:
I am so sorry about these bugs, I think I fixed it now. The worst part is that I think I introduced these when patching the previous bugs on Monday. :frowning2: I should have taken more time to make sure I didn't break anything.
The gameplay clearly wins here from graphics.
I managed to complete all puzzles and this game clearly haves potential to be a full (mobile/web)game.
It took me sometimes a few tries to understand the level hazards and such,but once i did it became
really a lot of fun.
Great job!
By the way: Thanks for making a version that i could play with the arrow keys instead of WASD. :)
https://www.twitch.tv/videos/1011787711
Also: I really like the end-of-level high scores! That's a very nice touch. I'll have to have a look in the source code as to how you've done those.
Difficulty curves in puzzle games are complicated. Having made several puzzle games for LD, it's always the case that some people find the ramp to steep and others find it too shallow. I do stand by my decision not to post instructions on the game page though, because this exploration that the player is doing (is forced to do?) should be part of the content.
@ptsnoop I have used similar highscore things in past games. At the end of the level, the game makes a POST request to a very simple PHP script, with the level name and the number of steps. In return, the script tells the game about all the other attempts it received so far.
PS: just saw that the PHP server script wasn't part of the source on Github, so here it is:
```
header('content-type: application/json');
header('Access-Control-Allow-Origin: *');
$steps = 1*$_REQUEST['steps'];
if($steps >= 3 && $_REQUEST['action'] == 'finish_level')
{
$bucket = $_REQUEST['level'];
$hist = @read_data('hist', $bucket, 'stat');
if(!$hist) $hist = array();
$hist[$steps] += 1;
ksort($hist, SORT_NUMERIC);
@write_data('hist', $bucket, 'stat', $hist);
}
print(json_encode(array('result' => 'OK', 'h' => $hist)));
```
* Why move counter? It heavily disincentivizes players to experiment, and generally it is not a good idea to add it to a puzzle game. This is especially acting bad in your game, because it seems to have complex rules and experimenting is essential for understanding them. (If you see someone having 100+ steps on the scoreboard, that's me :stuck_out_tongue_winking_eye:)
* I feel like this game has good potential to be intricate in an interesting way, especially with the white laser. I'd love to see what you can do further with it.
* The flashing undo effect is too bright.
* I love the mysterious music very much.
> *(If you see someone having 100+ steps on the scoreboard, that’s me)*
I feel that's fine though. My intent was not to pressure anybody. If it was, I would have put in a requirement to solve the level in X steps or in X time.
I have to admit this feedback got me thinking a lot, because I often put these counters into my LD games. Over the years, they have been received very well so I never gave them another thought. This is the first time I'm considering an "opt out" button for my next game.
> *I feel like this game has good potential to be intricate in an interesting way, especially with the white laser. I’d love to see what you can do further with it.*
None of my LDs have been developed into actual games, few have even seen post-LD versions. I am tempted sometimes, but I usually chicken out when it comes to making them into real projects. The nice thing about LD is you try your absolute best for like 48 hours, and then you're done. Either the game is brilliant, or it's so-so (like this one), or it's a failure. Any of those outcomes are totally fine. That's what I like about it.
@notan-lemon I just stumbled across your puzzle game by accident, and I just want to say: it's an amazing concept, very well done!
Overall really nice job.
That being said, holy moly the Death Ray sound effect is so loud that it jumpscared the the first time I got shot.
... _aaaand_ the third time.
... _aaaaand_ the forth.
The second time I was ready though. That one was on purpose.
So many mechanics, and a good amount of levels, its really nice. Also having a leaderboard helps engage in exploration of mechanics to find most efficient paths.
Would have liked an indicator in level select which levels were not perfectly solved, but maybe that was my bad for rushing through levels on first playthrough.
Overall was a really interesting and enjoyable experience.