User Tag List

Results 1 to 6 of 6

Thread: Mastering Mini Map Madness

  1. #1
    Clicker Fusion 2.5 (Steam)Fusion 2.5+ DLC (Steam)

    Join Date
    Nov 2017
    Posts
    90
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    Mastering Mini Map Madness

    Hi all. Yes, I am aware as I advance my project that I am leaning more and more on these very forums - despite using Clickteam products since 1997.

    Not to worry! My question is around mini-maps in a sidescroller.

    Ideally, I'd love to implement a map that will reveal itself as the player progresses through an area. The method I would need to use would be to have every tile make a white box copy in another layer and have those copies scale down to create a map of my level. Unfortunately, I can forsee two headaches:

    - How to save the revealed map and load it later.

    - My game is split into frames, so I can't have a map representing the entire game world. Can I?

    - The extra load on the cpu of displaying potentially hundreds or thousands of objects scaled down.

    I suppose not all of these issues have a solution - so part of my question is: how important is a game map? Yes, I am looking for an excuse to avoid the issue altogether!

  2. #2
    Clicker Fusion 2.5 Mac
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)

    Join Date
    Jan 2015
    Location
    Australia
    Posts
    167
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)
    It really depends on the type of game you're making and whether you think the player would find a minimap useful info to have.

    If there's value in the player being able to see 'beyond' what they can normally see on the screen then a minimap might be useful, but if the game is a series of small, disconnected, self-contained rooms and the player never backtracks then a minimap is going to be less useful.

    There's plenty of clever ways for the player to orient themselves too without a mini-map - games like Thief gave the player a paper map with landmarks on it they could use to figure out where in the world they were

  3. #3
    Clicker Fusion 2.5 (Steam)Fusion 2.5+ DLC (Steam)

    Join Date
    Nov 2017
    Posts
    90
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    My game will create the "illusion" of an open world by offering a sort of fast-travel from one area to another. These areas will be of varying sizes, possibly quite large each and also may be clusters of different frames. So there will be an element of back-tracking and there will definitely be value in revisiting earlier areas with new abilities etc.

    I am currently playing Bloodstained: Ritual of the Night and am reminded how much I look at the map constantly in Castlevania games, however, in those games, it truly is one sprawling huge area. I've also played the game "Salt and Sanctuary" where the creator decided not to have any sort of map and this game does involve backtracking all over the place. Only occasionally did I wish it had one.

  4. #4
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCiOS Export ModuleInstall Creator Pro
    Julian82's Avatar
    Join Date
    May 2012
    Location
    outbuddies.com
    Posts
    937
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)
    - How to save the revealed map and load it later.
    --> Use an array where x/y are the current room's coordinates. The Z-axis can be used to store things like puzzle solved or powerup found. You can store more than one information in one cell if you use the mod function to dissect a large number into smaller parts. This may be relevant if the game gets really huge and we don't want to create a 500mb array to store all information It has been a while since I worked with the mod function, tbh I cannot explain it atm, but it can be found here in the forums.

    - My game is split into frames, so I can't have a map representing the entire game world. Can I?
    --> Yes, but every frame needs to hold an object that tells your array where in the actual world map it is located. For example, if your map consists of an array with 100x100 rooms to explore (which would be damn huge, my game has 50x50 and is already 10-15hrs playtime), you need to tell the array that the boss you just killed is in cell 30/50 (which would mean Z1 = room visited Z2= boss killed, for example)

    - The extra load on the cpu of displaying potentially hundreds or thousands of objects scaled down.

    From my experience with mini-map madness it is better to have a nicely done pre-baked image of your world and cover it with tile-based backdrops to hide areas you've not explored yet. Creating the map of actives gave me huge performance drops once the player had explored the game, my object count for the map and its items was over 2000 then and I had to abandon this setup.
    --> I have a pre-baked image that is covered with tiles when created, then the map creator routine loops through the array and if a room has been visited, it destroys the tile covering that room. Some rooms are larger than one cell, so in my setup I also need to save the room scaling to the array. For example if the player visited a room with coordinates 20/10 and the room is 5x3 cells in size, it will destroy all covering tiles from 20-24 and 10-12 to reveal the whole room.

    For the corner map I stuck with my first routine, that creates the rooms out of actives, as only a little chunk is displayed. You can also use the Sub-App object to load the whole map and show just a chunk in the corner, but I think this is not ideal performance wise either.

    Creating a good mapping system for a metroidvania can be a pain to deal with, tbh. But as you need to save and load room specs anyway, this approach can be used to create any sort of map with the data you collected.
    I found the pre-baked solution for the main map working pretty well, there's still a little drop when calling the map, but it can be handeled.

  5. #5
    Clicker Fusion 2.5 (Steam)Fusion 2.5+ DLC (Steam)

    Join Date
    Nov 2017
    Posts
    90
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    Thanks for the thoughts, Julian82!

    My game isn't a "true" Metroidvania. Metroidvanias are like roguelikes - the fan-base can get weird as heck over what fits into the genre anyway... essentially my game will be comprised of individual levels that you can "fast-travel" to and from (hence the "illusion" of an open-world) and explore as many times as you need.

    I may carry on and not bother with a map - the only "map" you will get is when you are fast travelling and you are presented with an overall game-map to choose which location to travel to next.

    I'm hoping my level design is sufficient that there are enough markers in the environment to help you navigate - and I'm planning on having a button you can press which will present a line pointing vaguely to your nearest discovered fast-travel point.

    I guess I'll carry on with the main content and if various people play-testing the game feel it needs a map per level, I'll have to do something about it.

  6. #6
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCiOS Export ModuleInstall Creator Pro
    Julian82's Avatar
    Join Date
    May 2012
    Location
    outbuddies.com
    Posts
    937
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)
    Sounds like a good plan, I added a lot of QoL fixes cuz players demanded it, in the end it’s a good approach to make sure the environment markers are memorable enough, and a fast travel map does not sound too complicated anyway

Similar Threads

  1. Foxworth's ring madness
    By Klownzilla in forum Android Released Games & Apps
    Replies: 0
    Last Post: 7th April 2014, 11:25 PM
  2. Sound/Sample Mastering
    By stephFrank in forum Multimedia Fusion 2 - Technical Support
    Replies: 1
    Last Post: 17th March 2009, 05:22 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •