How do polish my Super Metroid-style mini map (example capx)

Get help using Construct 2

Post » Mon Aug 08, 2016 7:56 am

edit: changed my topic name since I've created a mini map system I'm probably sticking with. I need some help polishing it and making it work more professional. it's not a traditionally array based mini map like Super Metroid or examples found on this forum.

Hey all. I posted something about mini maps in the game design sub forum but maybe that's not best place to ask for help like this. I know this is a pretty in-depth topic and it has been discussed previously but I need some help on this subject. I'd appreciate any and all help. Basically, I'm creating my own Metroidvania and I'm trying to wrap my head around how to create a functional, moving mini map.

So I've actually already created a mini map :D I was too scared to create a proper array-based mini-map and I created a picture-in-picture system. I think it's pretty decent. I'd like some help with how to polish this current mini map or advice on how to create another system. If I were to stick with this probably inferior mini map system, how can I make it look and work more polished and professional? Any art/code/ game design advice appreciated.

Image

After some research, I think an array based map system similar to Super Metroid (one that slowly ticks visibility as explored) might be tedious to deal with. I like my current mini map system because well...it's easy and simple for an artist like me. Obviously this system has drawbacks. The player indicator jumping looks weird. It looks a little sloppy currently. The entire map will always be displayed on the mini map (no blacked out rooms being discovered). Unless there's a workaround for this? I think there should be, I have each room locked to a metroid-style scrolling camera zone and I could probably use those camera zones for something. That why I ask for tips on possibly polishing this current mini map system. I'd be perfectly happy with a map and mini map system that just highlights the room the player is in like this.

http://images.pocketgamer.co.uk/images/ ... er-01a.jpg

I'm not married to creating something exactly like Super Metroid (but I'd still love one). In the end though, I really just want a functional, updating/moving mini map that looks professional. If there are other ways to create a mini map, please point me in the right direction.

I'm still trying to create a Super Metroid style map if I can. I found a Super Metroid style mini map tutorial online but I can't get it to work. Can someone take a look at my events please?

http://madameberry.com/post/14486564952 ... rt-1-setup

In the tutorial, Madame Berry says you can skip the array step if you want to an "found/unfound" map system. I want to try that for now but it looks like in her final code, she uses an array to get the map to work. I'm not sure if I missed a step or if I was just suppose to intuit the what to do in place of an array but I don't know how to get the map to work. Can anyone help me get this Metroid style mini map working? And/or can anyone give me some helpful suggestions for my current map or advice on how to go about creating another moving mini map system? Thanks so much for reading my long post!

Image
Last edited by heyguy on Wed Aug 10, 2016 10:34 am, edited 4 times in total.
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Mon Aug 08, 2016 12:18 pm

Dang! Holy smokes guys! I've got visibility working in my mini map guys :D I just covered the mini map up with small black sprites. When the playerIndicator (which is set to invisible) on the mini map overlaps with a black tile, the black tile is destroyed and you're able to see more of the map. Right, I have the tiles destroying only when the playerIndicator overlaps with black tile AND the player collision box is on the ground. That way, the playerIndicator can't jump into a black tile and expose visibility somewhere else the player hasn't actually accessed yet. You can pretty much see how the mini map system works at the end of my gif.

Image

Yeah I'm pretty sure I might not even bother with an array based mini map now that I have my mini map system working with this added functionality. I can really start to imagine different possibilities for this system now. Still, I'm only a newbie at Construct 2. I'd really appreciate some guidance. Any ideas you guys can come up with to make this mini map system a little better, nicer and more professional? I guess now that I have visibility working, I want the tile that you're on to be flashing, like Super Metroid. What else would add to this mini map system? And does anyone think this deserves some sort of tutorial or example capx? I'd love to share and give other people ideas on how to create!

Anyway, I'd still appreciate some help on what I'm doing wrong trying to replicate Madame Berry's work. How do I get that system to work without the array like she mentioned in her tutorial?

Another thing, now that my mini map system works a little more professionally, I need to polish actual map image so it looks pretty and aligns better with the black tiles. So since I'm not using that array based map, my black visibility tiles are not perfectly square. My window size is 320*224. I copied and pasted my layout from C2 into photoshop and painted a blue map on top of that. Then I had to rescale it in C2 to a tinier size and repaint on it. Sloppy workflow. Any tips? This could be tedious too (in a much simpler way, less math intensive way :mrgreen: )

Image
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Tue Aug 09, 2016 5:45 am

Hey ya'll, I'm adding a capx of the mini map system I've got working. Don't think I've seen a mini map created exactly like this one on the forums so I thought I'd share.

https://www.dropbox.com/s/t7b4l7g1e49h6 ... .capx?dl=0

This is basically a combination of this splitscreen capx, this mini map capx and "reavealing map" capx.

solved-split-screen_p829081?#p829081
https://www.scirra.com/tutorials/950/dynamic-mini-map
https://www.scirra.com/tutorials/564/revealing-map

I hope I can start some sort of discussion on mini maps in general. I'd really like to add some more functionality to this mini map. Stuff to make it look and act a little more polished (like no jumping map). Currently, I'm trying to get the specific "tile" you're standing in to flash (like Super Metroid) without the other tiles acting out.

Here's what I thought I could do but I'm tripping over myself. I added two instance booleans to the blackTile, explored and active and both are false. On the start of the game, the player enters a "tile" and both explored and active=true. When the playerIndicator moves to another tile, previous tile is explored=true, active=false and the new tile is explored and active=true. Hope this makes sense.

The sprite would change from being unexplored(black sprite), active(flashing animation) and explored (black sprite set invisible or opacity 0 or whatever). Switching between the states is sorta confusing me... again. Guess I'll have to check out the state variable tutorial I have bookmarked!

edit: hey, updated the capx. Previous one was impossible to traverse without extra abilities. Also, please please please, does anyone notice the weird graphical artifacts in my capx? It looks like straight up NES sprite glitching! What's going on? That's not good I think.
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Tue Aug 09, 2016 8:27 am

This looks pretty neat... I'll have to check this out later. Thanks for sharing!

~Sol
Tired of crappy file hosts that are crappy? Get DROPBOX - https://db.tt/uwjysXJF
Moderator
B
83
S
34
G
40
Posts: 3,032
Reputation: 30,474

Post » Tue Aug 09, 2016 2:09 pm

Np! I was pretty intimidated by an array based mini map so I desperately researched/brainstormed a solution to avoid doing math. This tutorial/capx was also invaluable.

https://www.scirra.com/tutorials/747/zo ... a-movement

Anyway, two questions to anyone out there.

Question 1. Is there anyway to disable or prevent the mini map player indicator from jumping along with the player? I tried to destroy the indicator while the player Is jumping and spawning it again On Land but that breaks the mini map camera.

Question 2. This is possible, right? I want the blacktile on the mini map to flash, indicating your position on the mini map image. I need to find a way for each blacktile to switch between 3 different states I think. Explored, unexplored, playerOccupied. Right now, I'm only able to do one thing at a time. Clear the map black tiles to see the map underneath, turn the entire map yellow and flashing or have the entire map stay black and unexplored. Here's a pic of my capx. I hope I explained this thoroughly.

Image
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Wed Aug 10, 2016 10:14 am

Made some updates to my mini map. It's one step closer to basically working like a Metroid-style map. Now the current overlapped tile (and only the current overlapped tile) highlights. The code was simple enough...but it took me two days. :ugeek: Here's a capx and gif. I think I'd like to write a tutorial on this system if/when I get it working in a more polished state.

https://www.dropbox.com/s/81tgl80ukskhk ... .capx?dl=0

Image

As you can see towards the end of the gif, it's not perfect. You can overlap two tiles during camera transitions. I don't think I can do anything about that. I'll get around that though by taking control of the player and moving them manually during transitions.

Can anybody help me come up with ideas on how to get this mini map system to look/act like this? Or help me find a way so that map doesn't jump when my player jumps.

Image

I have one idea but I don't see how it will work. It goes something like this

Every tick |playerIndicator on overlapping with blackMapTile = set playerIndicator to center of the blackMapTile

I'd try to get something like that working. But if playerIndicator is centered to one blackMapTile, how will it move, collide and overlap with another tile and recenter again? Thoughts?
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Wed Aug 10, 2016 7:59 pm

New updated capx and gif folks. I've finally implemented a Metroid-style scrolling update for the mini map. Now I need to fix the issue that happens when you're overlapping and highlighting two tiles at once. I need to somehow make the game check what tile the player is overlapping with "more" and highlight just that tile.

I've created a small bug that's not noticeable in the gif. I created it when I added this Metroid-style scrolling effect. When the player moves to a new tile, that new tile quickly flashes on and off before turning. And that just repeats.

https://www.dropbox.com/s/fa1bsrv7ns2ey ... .capx?dl=0

Image

Am I allowed to write a tutorial for this? I don't have access to the write a tutorial page.
B
28
S
14
G
21
Posts: 179
Reputation: 13,548

Post » Thu Aug 03, 2017 11:58 pm

That looks really cool! I might use this in my game and update it if possible and if it's ok with you
B
17
S
4
Posts: 86
Reputation: 1,211


Return to How do I....?

Who is online

Users browsing this forum: darkrealos, DharmaOne and 15 guests