The game was created using my self-made game engine that uses only standard web APIs (WebGL, WebAudio, whatever that gamepad API is called etc.), so in practice, I didn't really use a single "library".
Jani Nykänen
Creator of
Recent community posts
That's a good suggestion, I try to remember that if I ever have time to make another metroidvania. Adding new features to the map in this game, however, is a bit hard, because I implemented the map a bit too late (I kind of forgot, I think) during the development, so the way the map is created is a bit complicated.
Sorry for a bit late reply:
If you open the web console on Chrome (according to google it should be "Cmd Option J" on Mac, I don't have a Mac so I cannot check). What kind of errors you see? In theory the errors should be printed on the game screen if something goes wrong during the initialization, so it's hard to say why it won't load.
Hmm, that's weird, it should work. If you open the files in, say, image editor, do you get corrupted images or see the pictures properly? Because if you see the pictures properly, then git lfs is not the issue, but something else.
If you have all the required tools installed, the list of command should be the following:
git clone https://github.com/jani-nykanen/one-last-adventure.git cd one-last-adventure make make server
You can check that git-lfs is installed properly by typing " git-lfs " to the terminal. If it says the command is not recognized, then git-lfs is not installed properly.
Then you should just open the browser and type localhost:8000. It might be needed to open the web console and disable cache in "Network" tab.
Speaking of the web console, if you open the web console (Ctr Alt I), do you get some errors? If you only see the white bar, it should mean that some files failed to load. Other option is that you have incorrect version of node-js installed and TypeScript compiler produces faulty js code (very unlikely, though).
Oh, right, I forgot to include one thing: you need to install Git LFS (https://git-lfs.com/) to get access to the asset files. If you install it and then re-clone the repo, it should work.
EDIT: If git lfs does not work, I added a release (https://github.com/jani-nykanen/one-last-adventure/releases/tag/v1.0.0), where you can download the source code as a zip folder, and it should include all the asset files "normally". Then you can just copy the asset folder from there.
If you need further help, here's a map of the "outside part", where I have circled the places where you should go and in which order.
(in hindsight I should have made the game's internal map more useful, but I started implementing it a bit too late and it was hard to put any meaningful info there in that point)
There is a locked door on the top-right corner of the map. There is a huge tree leading there. This door will lead you to the sword eventually. And to find the key that unlocks the door, you need to find running shoes and then go to the caves near the place where you found the magic book.
(Now that I write these things down, I sure realize how confusing this game can be. Sorry about that, I try to remember this next time I make a game!)
If you have fans and portals enabled, you should be able to find a stronger sword and then, with that, double jump boots, and then you should be able to find the four magic gems that will unlock the door to the final level.
Yes, I agree that this game can be very confusing. It's surprisingly hard to make a metroidvania that feels intuitive in the sense that the player always has an idea where to go next (I think this is also true for many commercial metroidvanias, I have stopped playing so many of them because I have got completely stuck!)
You are right, the map is a bit too hard to navigate and there is too much backtracking. This is something I noticed when doing the final playtesting, but then it was already too late to make any major changes (as I am afraid to make big changes since they sometimes break the whole game!). But thank you for the feedback, it is important to know what I did wrong so I can learn from my mistakes in my next metroidvania project.
Thank you for the feedback.
Yes, I agree that the map could definitely be more useful. I implemented it in a pretty late stage of the development, so it was a bit too late to make any major changes. That is definitely something I remember in my next metroidvania: more hints where to go next, and less backtracking!
The saving issue only occurs on Firefox if you have certain security setting (local storage blocked on iframe). It is something I cannot fix, although you can try to run the game directly, without iframe, by following this link: http://v6p9d9t4.ssl.hwcdn.net/html/4722800/index.html
Then the saving should work, as far as I know.
This happens if your browser's security settings do not allow accessing local storage when the application is embedded in an iframe. I cannot fix this in my code, so you can either
1) Try another browser (are you using Firefox, perhaps, because in my earlier projects people have had similar issues on Firefox, although on default settings it should work fine on Firefox)
2) Change your security settings (not sure which ones, though)
3) Try this direct link: https://v6p9d9t4.ssl.hwcdn.net/html/3116072/index.html It's a link to the web page itch.io embeds inside the iframe, so saving should possibly work there
What gamepad were you using, and what browser (and OS)? The gamepad support isn't very great right now since there are too many different gamepads (and even different Xbox-like gamepads - that in theory should work in an identical way - act differently on the same browser) and every browser has a little different gamepad API implementation (for example, Firefox thinks dpad has two axes, Opera consideres dpad normal buttons)
I played the game through with my gamepads on two different browsers, and it worked fine, so in theory it should work with Xbox-like gamepads...