quick start

Get your first map generated in 3 minutes! This guide will have you up and running with RogueMap Maker ASAP.


Prerequisites

Before you begin, ensure you have Unity Open and these 2 dependencies installed:

Please click here to watch a video where I import RogueMap Maker from start to finish in under 2 minutes. Clicking that link will take you to the 'installation guide' page where you will click on videos to watch them. You'll also learn more details about behind-the-scenes installation.


  • [Recommended FTUE] After importing, for a video follow-along of creating a new map, click here.arrow-up-right You can watch me as I work through making a new map from start to finish (remember you can pause the video to go step-by-step).

  • After you've completed the FTUE, I'd recommend coming back here to continue learning.


Duplicating Example Scenes

To begin, duplicate the example scene you want so you can have the original example as a reference.

1

Open an Example Scene

Navigate to Assets/RogueMap Maker/Scenes/ and choose one of the example scenes:

Canvas Mode:

  • Canvas - Simple Mode.unity - Map on a static Image

  • Canvas - Sliced Mode.unity - Map on a dynamic Image in a ScrollRect

SpriteRenderer Mode:

  • SpriteRenderer - Simple Mode.unity - Map on a static Sprite

  • SpriteRenderer - Sliced Mode.unity - Map on a dynamic Sprite

2

Press Play

  • Click the Play button in Unity

3

Generate Maps

  • Click the "Generate" button

  • Watch as a new procedural map is created

4

Interact with the Map

  • Click nodes to select them and move through the map

  • Try each option in the on-screen UI to start exploring basic features

Congrats! You've successfully generated your first map!


Understanding What You See

When you run an example scene, you'll see 3 key GameObjects in the Hierarchy. You can find these in each rendering mode by typing in their name in the Hierarchy search bar. You should look at each one to see what options it has exposed in the Inspector.

Map Container

This is the container game object for your map

  • Nodes: This is where all your nodes will be spawned under

  • Links: This is where all your links will be spawned under

  • Map Background: This is your map sprite

  • CharacterController: This is an optional animated character that runs along your map

RogueMap Maker

This has core system script components attached to it

  • MapSession: This tracks map progression

  • MapSaveLoadManager: This handles saving and loading maps

  • SceneManager: This handles loading the demo scenes

  • MapRenderer: This handles visually rendering the map

  • DemoSceneInitializer: This handles setting up the demo scenes

  • MapBenchmarkTool: This handles running overlapping node tests

ReferenceHolder

This is your hub for core system component references. If you're further along your programming journey, you'll know this as a 'service locator pattern'.

  • ReferenceHolder: A scene-scoped singleton for easy access to core references


Quick Common First Actions

Learn how to change the core parts of your map:

Map Settings, Node & Links, Map Image, Background Image.

Change the Map Appearance

1

Find ReferenceHolder

In the Hierarchy, find the ReferenceHolder GameObject.

2

Open Map Settings

In the Inspector, locate the Map Settings field and click on the assigned MapSettings asset.

3

Adjust Values

In the Inspector window, adjust values to see their effect.

  • Make adjustments to MapSettings while Unity is playing

  • After you make a change, click the Generate button to see the changes

When you make changes to your map settings scriptable object instance in the Inspector, the changes are persisted when you stop playing unity - just remember to do a file > save project to force the .asset save to get it showing up in your version control of choice.


Change Node Appearances

1

Find ReferenceHolder

In the Hierarchy, find the ReferenceHolder GameObject.

2

Open Map Settings

In the Inspector, locate the Map Settings field and click on the assigned MapSettings asset.

3

Find Node Types section

In the Inspector window, click on Start Type, End Type, Middle Type(s) to go to a NodeTypeDefinition

  • Try changing out the Icon to your own visual.

Generate a new map and observe how your visuals have changed. You may need to find the NodeScale option and adjust it!

4

Find the Node prefab

In the Hierarchy, find the RogueMap Maker GameObject.

  • Click on the Node Prefab reference to go to the prefab in the Project window.

  • You'll see that the Icon reference you changed in the scriptable object will Apply() to this prefab.

  • You'll see you have pulse, hover, and color options you can try changing too

  • Add your own custom behaviors by opening the script


Change Click VFX Appearance

1

Find the Node prefab

In the Hierarchy, find the RogueMap Maker GameObject.

  • Click on the Node Prefab reference to go to the prefab in the Project window.

2

Find the Clicked Behavior VFX prefab

In the Inspector, click on the Click Vfx Prefab reference

3

Customize

In the inspector, find options to customize

  • Try swapping out the Sprite

  • Try adjusting the FX Duration

  • Try swapping out the SFX

  • Try adjusting the Rotation Duration

  • Add your own custom behaviors by opening the script.


Change Map Sprite

1

Create your 9-sliced sprite

Before you assign your (much better looking) map background sprite for sliced modes, you'll need to prepare it.

  • Import it to Unity following the example sliced image I've included (digitalFrame).

  • It's important your sprite is 9-sliced appropriately with the Sprite Editor and that its Pivot is set to Bottom

2

Find Background Sprite - Sliced Mode

In the Hierarchy, find the Background Sprite - Sliced Mode GameObject for Sprite mode or Map Background Image - Sliced for Canvas mode.

  • This GO has the SpriteRenderer/Image where you can change out your frame or map sprite.

  • After you change you sprite, you'll probably need to take a look at the Scene view to change your padding values so the map fits nicely within the red box.


Change Background Sprite

1

Find Full Screen Background Image

In the Hierarchy, find the Full Screen Background Sprite GameObject for Sprite mode or Full Screen Background Image for Canvas mode.

  • This GO has the SpriteRenderer/Image where you can change out your background image.

2

Assign your new image

No big preparation here

  • Adjust size as you need.


Summary

By duplicating the example scene to make a new scene of your own, you can swap assets and tweak behaviors

Quick Answers

  • RogueMap Maker uses a ScriptableObject-based configuration system that separates most settings from code. The main configuration object is MapSettings, which contains most parameters for map generation and rendering.

Location: Assets > Create > RogueMapMaker > Map Settings

  • RogueMap Maker uses UnityEngine.Random instead of System.Random to preserve randomness across different devices. It also initializes "it's own Random state" to ensure it doesn't affect any other systems' use of UnityEngine.Random.

  • RogueMap Maker uses a grid-based approach for map rendering to deliver visuals most similar to Slay The Spire.

  • RogueMap Maker uses the built-in JsonUtility to save and load data.

  • All the art in this package is created with AI, so it's copyright free. Use it however you want. "You're absolutely right!"


Next Steps

What's Next?

Now that you have a working map, here are your next steps:

Customize Your Map


Last updated