Overworld Editor Guide

Overworld Editor Guide

Introduction

Map stuff is really buggy right now. Paths show up as garbage tiles in the editor with unpredictable colors, but they always show up fine in-game. The selector is invisible half the time, but it (usually) shows up fine in-game, too. Levels will obscure their icon when cleared with all the default palettes I've checked, but the color picker doesn't work right now, so... ¯\_(ツ)_/¯

But it works! It automatically tracks levels cleared, supports locked paths that cost dandelion puffs or lotus flowers, and even lets you nest submaps infinitely.

See Axonium's guide to learn how to access the beta editor and make regular puzzle levels. This guide assumes you are familiar with the contents of Axonium's guide, and will focus purely on constructing overworld maps.

Getting Started

The most important thing to understand is that overworld maps are just more levels in the game's files. So to create a map screen, simply create a new level. You'll probably want to exit the game and modify your world_data.txt so that start=your_map_screen, as detailed in Axonium's guide.

You should also go into map-related settings and change the level type from "Level" to "Map." This will make the transitions a little smoother once you start adding submaps and stuff. However, there's a quirk to this property: it generates something called a leveltree for your world, which can mess with you if you want to change the starting level. More on those later.

Level Tiles

Level tiles are the numbered (or lettered (or dotted)) tiles that take you to the actual puzzles. They can be configured to be unlockable and invisible.

Level

Which level to go to. You can only select from the levels in the specific custom world you're editing.

Symbol

The symbol used on the world map. Can be 0-99, A-Z, 1-9 dots, or a custom icon. Levels are named automatically based on your chosen symbol, e.g. 3 dots will show up as "Extra Level 3 - Your Name."

The custom icons are selected from a palette of 20, which can be configured in

"Map-Related Settings" -> "Map Icon Setup." You can pick from any sprite in your Sprites folder + a few defaults; I recommend you copy over the Sprites folder from Data\Worlds\baba so you can access every sprite in the game.

Initial State

Opened: Accessible from the start. At least one level in your map should be opened!

Normal: Visible, but inaccessible until an adjacent level is cleared.

Hidden: Same as Normal, but invisible until unlocked. Useful for those secret extra levels.

To modify an existing level tile, simply click "Add Level" and click on the tile you wish to modify. Make sure you're on the right layer!

Paths


Overworld Editor Guide image 21

Paths are the nifty dotted lines used for travelling between levels. This may seem self-evident, but they sure don't look like dotted lines in the editor!

Click "set paths" to configure them, and "add paths" to place them in the level with a left click.

These are the features you can control in the "set paths" menu:

Visible/Hidden:

Visible paths are always visible. Hidden paths only appear when an adjacent level is cleared.

Is this path locked?:

Nope: Nope, it's not locked. If you can reach it, you can go down it.

Level clears: Set a toll of dandelion puffs (individual levels cleared).

Map clears: Set a toll of lotus flowers (entire submaps cleared).

The Selector

The selector is the simplest part of the world map making process. There are no settings, no icons, no palettes--just place it where you want the player to start. Most of the time it'll show up wrong or not at all in the editor, but don't worry, it's there.

It must be placed on a level tile. If you place it on a path, it will snap to an arbitrarily chosen level tile when the game starts. If you put in on anything other than a path or a level tile, it won't be able to move at all.

Submaps

Overworld maps are just more levels in the game, right? So to create a submap, all you have to do is create a submap level, and have a level tile in your main map point to it. Easy! Be sure to set the submap's level type to Map as well.

"Return to Map" just works when you set it up like this. Players also get lotus flowers for clearing your submaps. It's very elegant! And if you want to, you can make yourself a subsubmap, or even a subsubsubsubsubmap. There's no limit!

To give the player a lotus flower, you can alter the "levels needed for clear" value under "Map-related settings."

If you want a secret parent map, like in the main game, I believe you can set customparent=whatever in your .ld file. I haven't experimented with this at all.

Saving Progress & Renaming Files


Overworld Editor Guide image 40

Progress is saved for your custom maps in the ba.ba file in %appdata%\Baba_Is_You. If your world folder is named "Test World", it would look something like this:

[Test World] 1level_intro=1 leveltree_id=0 leveltree=1level ... [Test World_prize] total=2 1level=2 ... [Test World_clears] 1level=1 total=1 ... [Test World_complete] 1level=1 ...

These four sections may be near each other or far apart, but they will usually all be there. If you want to delete your progress for testing purposes, simply delete all the Test World (or whatever you called your world) sections.

Don't mess with the [baba] stuff; that's data for the main game. I believe 0ba.ba, 1ba.ba, and 2ba.ba are the three save files on the main menu.

If you want to, you can rename all your levels. I highly recommend you do so, because 1level, 2level, 3level... starts to get confusing real fast. Be sure to rename the .l, .ld, and .png files. If you do rename a level, make sure to:

Update start in world_data.txt

Delete your leveltree

Update any level tiles in any maps

Leveltrees

leveltrees live in your ba.ba file as part of your world save data. They help the game know where you are and what should happen when you press "Return to Map." The start field from world_data.txt is ignored when a leveltree exists, which frustrated me to no end before I figured out what was going on! In fact, I ended up loading a nonexistent level and getting some WD Gaster creepypasta ♥♥♥♥:

Your world's leveltree is stored under the plain tag (not _prize or _clears) as a comma-separated list of level names.

[Test World] leveltree=1level,2level

You will need to delete it if you want to modify the starting level. Or you can mess around and create your own level tree!

Aesthetics


Overworld Editor Guide image 55

If you want to create your own lush and beautiful island like the main game, you're out of luck. The island is a pre-created PNG drawn as the background layer. It's in Data\Worlds\baba\Images.

But wait! This behavior is not hard-coded! In 106level.ld (level 106 is the main game's overworld), the following can be found:

[images] total=2 0=island 1=island_decor

By copying these lines into your .ld file, you too can have a lush and beautiful island as your background. Or anything, really! Each PNG is drawn on top of the last one, so you can layer stuff, too.

So sadly, you can't construct a custom island out of tiles. But I'd say using literally any image as a background more than makes up for it!

You can always stick to making cute little forests and stuff out of standard level elements, like the main game's submaps.

The Future Of This Guide

I'm sure this guide will become outdated within a week as Hempuli pushes out updates hot and heavy. Hopefully some of this will still apply by the time you read this; I'll do my best to keep things up to date.

Have fun making overworlds! Give your puzzles a nice home.

Source: https://steamcommunity.com/sharedfiles/filedetails/?id=1695132274					

More Baba Is You guilds