Bass Abyss Level Editor
Note: Support for the Adobe Flash Player ended in December 2020. Bass Abyss now runs using Ruffle. The ability to paste text into a text area as described in this document is not available at the time of this writing.
The level editor is distributed as a zipped FLA file.
Macromedia Flash 8 Professional or better.
The screen captures in this tutorial are based on Macromedia Flash 8 Professional.
This documentation is based on the 1.x editor. The 2.x editor is a work in progress, but this documentation still applies.
This is the actual level editor I use to develop most of the Bass Abyss levels. Let's get started and publish our first map.
Publishing a Map
Unzip the contents of the zip file. Double click on the extracted FLA 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.
Now choose Control -> Test Movie, or Ctrl+Enter for short. The movie will be published. Close the test window.
The code of your new map is in the Output Window. Press F2 to show it. The text in that window 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.
Select the Paste Code tab at the menu bar. Paste the map data in the text area provided: right-click inside the text box and select Paste from the context menu.
Note: Sometimes you won't see any pasted text. Pressing Play will process it anyway.
Note: Ruffle does not support pasting text.
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, creating a new map will be just a matter of making it longer and more challenging. Now that you're familiar with how to generate and test a very simple map, let's learn more about the available options.
Editing a map
From this point I'm going to assume that you're at least somewhat familiar with the very basic concepts of the Flash editor. Please refer to Flash's Help if you have any question about how to use the program.
Let's start. What is a Bass Abyss map made of? Tiles! I use movie clip symbols to position the tiles in the map. The set of symbols available to do this is limited. This is because in order to generate the map data, every movie clip has some special identifier that is picked up by the map generator script every time you hit Ctrl-Enter.
You don't need to worry about these technical details. All these special movie clips and their code are nicely packaged in the Library. Let's examine them.
If not visible, hit Ctrl-L to show the Library widget. I've organized the tiles in a folder structure that seemed logical to me. Feel free to change this layout in any 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 item named 29. You should see a preview of this tile at the top of the Library widget.
Drag this symbol to the stage to create a copy of it. Publish and test the map. You should encounter this 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. Those folders contain support assets for the actual tiles. If placed on the stage, they won't be picked up by the map script and thus they won't be shown while playing. A good rule of thumb is: if the item's name is not a number, it is 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 transferred to the map data. Only change their location in the stage. If you need a rotated tile, there's probably such a version of the 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 be facing at the start: left or right. To set this just select the tile and then Modify -> Transform -> Flip Horizontal.
Special Tiles / Objects
The tiles at the "Tile Sets" folder are mostly static files that will do nothing other than act as floor, ceiling or walls. There are interactive items though. Let's review them.
The main goal of the game is to collect the required disks to unlock the exit. They are located at the "items" folder, symbol 26.
The hearts that give an extra life to the player are located at 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 marked by invisible movie clips. 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 to fill large exit gaps.
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 scene markers. They're not visible during game time. They are responsible for the generation of the platforms. They are located in the Common Elements -> Platform folder.
Platforms will be generated at the point you place a generator. Experiment with them to see which type of platforms are generated.
They push the flying platforms horizontally. Common Elements -> Viento.
Those are the most important Tiles and Objects I can think of at the moment. If some tile has not been documented here, just place it in the map and see what happens.
It is located in the Common Elements -> Checkpoint folder. The purpose of this tile is to let the player resume a level from this point after losing a life. You can place as many as you want.
A good place to put them is before any tricky section, specially on long levels. After a lot of progress, a cheap death and starting over from the beginning of the map would be too punishing.
They are located at the folder "02StageEnemies". As usual, just drag them to the stage at the position you want them to show up.
Other map attributes
Having learned how to place stage items like tiles, objects, and enemies in the map, it is time to discuss some special map attributes such as the background image or the music.
All this information is conveyed by that big box that says Level Information.
First you must select it, then hit Alt+F7 to open the Component Inspector.
Ignoring that fancy name, and the other scary tabs, everything you need to change is in the Parameters tab.
Click on the Value next to the setting name you want to change to set it.
Background Image: You can select any of the images I've used for the existing Bass Abyss levels. The editor is unable to preview any changes you make here. This is because the background images are not stored in the editor, but in the server where Bass Abyss is hosted.
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 situation as with the Background Image. The editor will just add some music code to the map output You won't hear anything unless you publish and test the map. The music files only exist in the server. Only tunes from existing 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. By default only one disk is required.
I'm sorry for how troublesome the interface is for this last part, but I could not find a better solution.
Can I use my own tiles, artwork, enemies or music?
Not at the moment, sorry. My knowledge just goes so far.
Distributing your maps
Once you're finished building your map, everything you have to do is save the map data as a text file and publish it anywhere you want.
It is up to you if you also want to distribute the FLA file. Others will be able to edit your map that way.
Sample maps in FLA format
Here are some of the previous Bass Abyss maps in the FLA editor format for you to examine. These files are old and the folder structure doesn't match the one described here, but you'll get the idea. Feel free to modify them.
- 2021-08-08: Notes on Ruffle.
- Added plenty of Mega Man X3 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