Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

I probably won't get too much into detail as I'm thinking about writing a post-mortem on my entry now that I have a couple followers (the follows are greatly appreciated) and I actually feel it's worth the time. So here it goes:

  • Plan it out - I know I've given myself some slack since I joined roughly halfway through, but if I had put more time into planning my room/map layout, I think I could have really stepped things up a notch. Instead, my plan was get the simplest things working that are mandatory. If there was something I wanted to add that wasn't quite simple, I'd give myself a time limit. If I was spinning gears by the end and didn't feel like I was headed in the right direction, I scrapped the whole thing.
  • Saving and Loading - This was the first time I've had a save/load system in the game. It's pretty much straight from the Godot documentation. While it did work for me, saving to a text file and loading those saved values into the resource that stores my player's data required a couple steps that felt "wrong" to me. It also created a bug in the web version that nobody caught. Next time I work with saving/loading, I will have a separate resources dedicated for saving persistent data. My assumption is that it might handle it a bit better and I can create multiple save files for the player.
  • Godot's TileMap Node - I knew how to use the basics, but digging through the documentation on some of the functions I haven't used really was crucial for building the classic "metroidvania" map where rooms are reveal as you explore them and the room that you're in is highlighted. If you're a Godot user, I created a scene as a tool where I stitched all the individual rooms in a separate scene, created a new tilemap to trace over the rooms, and by getting the used tiles data, created a simple outline of the entire map by iterating over the array and creating a circle with a radius of 2 for each tile data. Then I used Godot's screenshot functionality to get save that into my images folder. I created a new scene with that screenshot as my root node (TextureRect) and used custom polygons to add my "construction paper" look to them. Having them reveal themselves was just a matter of emitting signals that the map is listening for to set whether a room is current, unexplored, or explored. This may have been my proudest acheivement because it was the solution came to me randomly as a question, and i implemented it successfully.
  • Assumptions about the Player - I continue to make assumptions about how the player would approach them and I haven't quite figured out a way to do that without being wrong. In my profession, I just make the assumption that everyone using the product is "dumb" and make things as simple as possible which, for the most part, works. Doesn't really translate well to game dev and that's one of the reason's I like game jams. You get feedback and find your assumptions to either half right or completely wrong.
  • Polish - Another thing I continue to do is not put enough polish into the game. There was feedback about specific things that, if I had spent maybe an hour on, wouldn't have been pointed out as much.
  • Always leave them wanting more - This may be jam specfic, but there's a game in this jam, that is extremely short, but awesome in its theme and mechanics. By the time you're finished, you just want more of that. It was like being teased.

Honestly, I could go further in length about this stuff, but personally, I will say this has been my most successful project that I've worked on. And the follows from the devs that made really awesome entries gives some additional validation that I'm making progress and may have some potential. Which is really nice because the people that I talk to (friends and family) about my projects have no idea what I'm talking about and I can see their eyes just gloss over out of boredom.

Metroidvania's are pretty ambitious and I didn't think I was capable of making most of the parts, let alone finishing it, but I did it (woo!) This has been a great jam and everyone should be proud of what they managed to accomplish.

I don't know much about Gotot, but it's good that you are making progress in learning the engine of your choice.

Saving and loading especially for web games can be difficult.... For security reasons, certain things can't be done in HTML 5 games, which is a bit frustrating for us as developers, but obviously necessary.

From the software industry I always hear the "Aim for 80%" and that's perfect.

I think the problem with software, games and game design is that there is no 100%. There's always something... there's always a tiny bug.... there's always this behaviour that doesn't work 100% the way it was intended, there's always this animation that's not 100% perfect and so on. There's always a workaround for some problem....

So once you polish to 80%, you're basically done, because everything beyond that is always and a never ending process of improvement :p

Leave them Wanting more is important for the Jam you are right, but also applies to published games, especially if you plan to expand the game after release. So you can bring a second game, an update, an expansion or something along those lines.

I think you did a good Job with your Game

Thanks a lot! Yeah, I agree on there's no 100%. For my day job, there's almost always an edge-case that exists that wasn't anticipated. These are generally found by the users because it's impossible to anticipate for every scenario. So yeah, 80% is a good rule of thumb. The benefit is that you know you'll learn something new from it. So that leaves room for improvement.

I really liked your game as well. Like I said before, the UI blew me away. I was not anticipating the complexity of it and it looked really polished. There were the couple items I mentioned before regarding the UI that could be improved, but overall, I enjoyed it!