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:
[Recommended] DOTween (Get it free here)
[Required] TMP - Text Mesh Pro is included free with Unity, you just need to click import
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. 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.
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 ImageCanvas - Sliced Mode.unity- Map on a dynamic Image in a ScrollRect
SpriteRenderer Mode:
SpriteRenderer - Simple Mode.unity- Map on a static SpriteSpriteRenderer - Sliced Mode.unity- Map on a dynamic Sprite
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
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
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
Change Map Sprite
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
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
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
Systems Overview - Learn about the systems available to you
Debugging Tools - Learn about the debugging tools available in this asset
Last updated