Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Thanks for the feedback!

I'm glad you noticed the doors lol, I struggled with them for a couple days and STILL didn't get the transition to match, but I'm glad it gave you some ideas!

The map system doesn't use any viewports, I was trying to simulate a super/fusion/zero style map where everything was perfectly gridlocked, and information was stored that displayed where you've been and what's in the room and so on and I couldn't think of a way to do that easily with a traditional minimap method with zoomed out viewporting buuut it may be possible.

I used a tileset that had every possible type of room square (each variation of wall and door position). At the start of a loaded area, there is a massive tilemap that's sized so that one room = one tile. Each room square has an Area2D, and has areas around it that check what the adjacent rooms are and whether there are doors present, allowing them to work out what kind of room tile they are. Then I check the room's position on the tilemap with world_to_map() and set the corresponding tile. Then I shrink that map down and use it for the UI and pause menu.
It's kinda janky and not the most optimal, but it does work pretty well and I can move rooms around at will without thinking too much about it.
I definitely am considering about adjusting the intro difficulty, maybe with more starting health or a bit less resistance to make it to the starting weapon. I really like the idea of starting with nothing and feeling the danger as a result, but it looks like I pushed it to the point where some people don't even have it in them to make it to the first powerup so I think it needs to be addressed for sure.

I'm not sure what you mean by combat spacing. The hitbox of the staff maybe?

I absolutely want to have gamepad support, but alas I don't have a reliable gamepad where I'm staying and this is my first time finishing a game in Godot! I'm sure if I work out how to do it it'll be very simple to implement, I just didn't consider it to be a high enough priority. Definitely something I'd like to be able to just throw in standard. I think it is just occurring to me now that probably all that was needed was to add it in the inputs next to the keys, though I guess I would need to look into how to grab the keys dynamically when displaying what the controls are.

(+1)

No problem! And yeah, I could tell that it was a little tricky with the doors. Just by playing, it seemed like you had a problem very similar to what I had with the transition from tutorial to house party. I'm assuming you were using an AnimationPlayer to fade in/fade out to accomplish the metroid door effect and to also hide the camera's movement because you? I noticed early on there was a point when leaving one room, the next room is slightly higher and the fade in/out didn't completely hide the camera's movement to the player.

From my very limited knowledge of them, I do know they can be used to accomplish that. I just haven't explored multiple viewports enough to explain how it would work. But your solution sounds much less janky than mine. Except for this time, after I make all the rooms, I use another tilemap to trace over the rooms, use get_used_cells() and create the skeleton of the map that I screenshot in-game. The actual map scene takes that screenshot and I use polygon2ds to manually add details to map. Of course it listens for room transitions sent by Area2Ds and updates the active room, reveals new rooms, etc. But the scene tree basic looks like:

  • TextureRect
    • Room00
      • Polygon2D (the room boundaries)
      • Polygon2D ( for the room interior texture)
      • Polygon2D (for however many doors I have in that room.

And it continues likes that. So very time consuming and janky. So one of my goals for next year is to make the classic minimap likes yours. Just need to figure it out. As for the combat spacing, yeah I meant the hitboxes. Also, adding gamepad support is the same process of assigning keys in the input map, if you didn't know already. And for a first finished game in Godot, huge congrats.