Bass Abyss Level Editor
Macromedia Flash 8 Professional or better. Download trial version here
The screens in this tutorial are based on Macromedia Flash 8 Professional's interface. If you're using a newer version, please refer to that product's help file for information about the required tools and commands.
This documentation is based in the 1.x editor. As the 2.x series is a work in progress, this documentation still applies but will be extended later on.
This is the actual level editor I've used to develop most of the levels on Bass Abyss. So let's get started and publish our first map.
Publishing a Map
Unzip the contents of the zip file. Double click on the extracted file. Flash 8 will open it.
Save the opened file with a new name. To do this choose File->Save as.. and save it as, say, my_map.fla. By doing this you keep the original editor safe. Do this every time you start to work in a new map.
Now choose Control->Test Movie, or Ctrl+Enter for short. The movie will be published. Close the test window as you don’t need it.
The code of your new map is in the Output Window. If you don’t see it make sure Window->Output is checked, or press F2. In that window there should be a lot of text. This is the map data that you just generated. Right click inside it and select Copy. This will copy all the data to the clipboard.
That’s it. Now let’s play it!
Playing a Map
Start Bass Abyss. At the main menu, select the Custom Level option.
If a text area is not seen, click Paste Code at the top of the window. Paste the map data you have copied inside the text area provided. I use to right-click and select Paste from the context menu. Press play. If you don't see any text pasted, press Play anyway. Sometimes Flash doesn't show the text pasted, but if it's there, pressing Play will process it anyway.
If you did it right, you’ll be presented the character selection screen otherwise you’ll get an error message. If you get such an error, make sure you copied all the text of the previous step and try again.
Once you select a character, the level will start immediately.
As you can see, the sample map I provide in the default level editor is extremely simple. Yet, it’s got all the required components to create a functional level. You can die, you can find all the disks, and eventually you can exit it. So, create a new map will be just a matter of make it longer and more challenging. Now that you’re familiar with how to publish and test a level, let’s check how to actually create and edit a new one.
Editing a map
From this point I’m going to assume that you’re familiar at least with the very basics of Flash terminology and tools, so please refer to Flash’s help if you have any question about how to use the program.
Let’s start. What is a map made of? A Bass Abyss map is made of tiles. I use Movie Clips to layout the location of the tiles in the map. The set of Movie Clips available to do this is limited, though. This is because in order to generate the map data, every Movie Clip has some special code that allows the main script to write its location every time you hit Ctrl-Enter. You don’t need to worry about any of this, because all these special Movie Clips and their code are already stored in the Library. Let’s check that.
If not visible, hit Ctrl-L to show the Library. I’ve organized all the tiles in an arbitrary folder structure that just seemed logical to me. Feel free to re-arrange them the way you want.
Before I give you more details let’s make a quick example. At the library open the “Tile Sets” folder, then open the “MarioWorld” folder. Select the symbol called 29, you should see a preview of this tile in the superior part of the Library window.
Drag this symbol to the stage to create a copy of it. Publish and test the map. As you play it, you should find the tile in the same location you placed it in the editor.
Now some details about the symbols in the library. Not everything is usable there. Don’t use anything inside the top-level folder called “01_No_Borrar” or anything in any folder called _bmp, _core or _src. They contain support assets for the actual tiles. They won’t be detected by the map when you publish it, neither drawn in game time. A good rule of thumb is: if its name is not an integer, it’s not usable by the editor.
The actions you can perform with the tiles in the stage are limited as well. Don’t rotate, resize or flip any of them. This information will not be passed to the map data. Only change their location in the stage. If you need a tile rotated, probably there’s a version of this tile in the library with another name, you just need to look for it.
You can make the map as big as you want, but where does the character start? This is indicated by a special symbol: The cyan rectangle with a white arrow inside. If you delete it by accident, you can find it in the library in the folder “01_No_Borrar” as “Character registration Point”.
This is the only tile you can flip horizontally, because this information tells the engine at which direction the character should start facing, left or right. To set this just select the tile and then Modify->Transform->Flip Horizontal.
The tiles at the “Tile Sets” folder are mostly static files that will do nothing other than act as floor, ceiling or walls for the map. But we know there are more interactive items in the map. Let’s take a look at them.
The main goal of the game is collect the required disks to unlock the exits. They are located at the “items” folder, symbol 26.
The hearths that give an extra life to the player are in the “items” folder, symbol 79.
The ammo items are self explanatory. You can find them in the same “items” folder.
This is my favorite one. It’s located in the folder Common Elements, symbol 56.
They are red when you don’t have the required disks and turn green when you have them. They are located at the Common Elements-> Exit Alerts folder.
The exit is actually indicated by an invisible Movie Clip. In the editor you’ll see them as green transparent squares. When the player touches them, and if the disk quota is met, the level finishes. You can find it at the Common Elements-> Exit HotArea folder. I use to place several ones when the exit is tall or wide.
The tiles that automatically kill the player are at the Common Elements->Hazards folder. There are other hazards in some of the “Tile Sets” folders as well. They’ll be self explanatory when you find one.
You may use the symbols 9, 20 and 43 at the Common Elements->Platforms folder, but if you are looking for the column of tiles that are generated indefinitely, that will be explained later. 151 and 153 are safe to use, they are the tiles that stay idle until the player steps on them, and then transport the player downwards the map.
These are special markers. They’re not visible in game time, but they are the responsible to generate the infinite columns of platforms in different places of the map. They are located in the Common Elements->Platform folder. At the point you place them in the stage, platforms will be generated if the player is close enough. Experiment with them so see which types of platform you can generate.
They push the flying platforms horizontally. Common Elements->Viento.
Those are the most important Tiles and Objects I can think at the moment. If you find anything else, just post them in the map, test it and see what happens.
Checkpoint (since 1.0.1)
Locate it in the Common Elements->Checkpoint folder. The purpose of this tile is to allow the player to start from this point if he dies. You can place as many as you want, the player will be respawend at the location of the last checkpoint found. A good place to put them is before any dangerous jump, specially in long levels where after a lot of progress, a cheap dead would discourage the player to start from the beginning.
What about some enemies? They are located in the folder “02StageEnemies”. As usual, you just drag them to the stage at the point you want them to show up. Test to see them in action.
Other map attributes
Okay, we know how to place art like tiles, items, and enemies in the map. But how do we tell the map how many disks are required, how do we set the background image, or the background music?
All this information is set in that big white box that says Level Information. How does it work? First you must select it, then hit Alt+F7 as it says to open the Component Inspector.
Ignoring that fancy name, and the other scary tabs, everything you need to set is in the Parameters tab.
Background Image: You can select any of the images I’ve used for the previous levels in Bass Abyss. Unfortunately any selection you make, you won’t see any change in the editor. This is because the background images are not stored in the editor, but in the server where Bass Abyss is stored. I suggest you to experiment with different values, publish the map and test it to see what background belongs to what name.
Background Music: This is the same as with the Background Image. The editor will just set some music code, but you won’t hear the tune unless you publish and test the map in the remote server, where the actual music is downloaded. Only the music of the previous Bass Abyss levels are available at the moment.
Required disks: Here you decide how many disks the player must find before the exits are activated. Yes you could go nuts and decide 100 disks are required in a map with only 10 disks, but that’s up to you. By default only one disk is required.
As you can see, I’ve placed this big white box in a layer called Properties, so you can hide it in order that it won’t disturb you when you work with your main map. I’m sorry for how horrible is the interface in this last part, but I didn’t had time for a better solution. I’ll try to check at least the Background Image interface in the future.
Can I use my own tiles, artwork, enemies or music?
Not at the moment, sorry. My knowledge goes just so far.
Distributing your maps
Well, once you’re finished building your map, everything you have to do to let others play it is save the map data as a text file and publish it anywhere you want.
Sample maps in editor format
Here are some of the previous Bass Abyss maps in editor format for you to study how they were built. These files are old and the folder structure doesn’t match to the one in the new level editor, but you’ll get the idea. Feel free to modify them if you wish.
- Added plenty of MMX3 enemies.
- 1.0.2 New songs: MM8_vsBass. MM8_WilyStage2. MM8_WilyStage3. Winston_TechedUpTreat.
- 1.0.1 Added Checkpoint tile and X1Launcher enemy
- 1.0 Initial release