Paintown manual
SVN Version 201

The paintown editor allows you to create new levels but does not allow creation of new animations for characters. There is a separate program for that - the 'test' executable.

Check out the source to paintown and the data
$ svn checkout
$ cd trunk
$ svn checkout

Build the editor
$ cd editor
$ ant
You should have built editor.jar. You should run the jar from a directory where the data/ directory lives. If you are on unix you can make a symlink
$ ln -s ../data .
Or you can just run the editor.jar from the trunk directory
$ cd ..
$ java -jar editor/editor.jar

When you load up the editor this is the first screen you will see

A: This menu item just has an exit button inside it
B: This menu item has 3 sub-items. New Level, Open Level, and Save Level. Alt-L is a hot key for this menu item and then N selects New Level, O selects Open Level, and S selects Save Level. Its pretty obvious what these buttons do but there are no warnings about saving old work or overwriting files so be careful.
C: This scroll bar adjusts the scaling mode of the level view, area H. A scale of 2.0 is what you would see in the regular game, you can scale the view downto 1.0 which lets you see a large amount of area but things get pretty small at that point.
D: This button adds a new block object to the level. An entire level consists of blocks and inside blocks are objects; an object cannot exist outside of a block.
E: Pressing this button makes the list of objects that this block contains appear in the 'Objects' area underneath the add block button.
F: This button lets you edit some properties of the block object. Currently those fields are the length of the block and whether or not this block is an ending block, or finish. If 'finish' is not -1 then after the player has walked the number of pixels specified in finish the level will end. That is if finish was 50 then once the user enters this block after they walk 50 more pixels the level ends. Generally the last block in the level should have some positive value for finish.
G: Delete this block and all the objects it contains.
H: The scrolling area that the level elements will appear in. You can scroll this view horizontally and vertically.
I: The minimum Z value objects can have. This can be adjusted in the 'level' tab that will be explained later on.
J: The maximum Z value objects can have. This can also be adjusted in the 'level' tab.

If you click on the 'objects' tab you will see this

This panel lists the characters/items you can add to the level when you right click on the scrollable area.
A: This button brings up a dialog box that lets you select a file to add to the list.
B: If you select an item on the list and press this button the selected item will be removed.

If you click on the 'level' tab you will see this screen

A: Move the min z plane( A1 ) up and down
B: Move the max z plane( B1 ) up and down
C: Add a picture that is displayed in the foreground of the level. These pictures are repeated in the order listed for the length of the level.
D: Remove a selected picture from the front panel list.
E: Add a picture to the list of back panels. The back panels listed are not immediately displayed, they have to be added to the back panel order list first via widgets G and H. This is because back panels aren't implicitly repeated, you have to specify which panels occur where.
F: Delete a picture from the back panel list.
G: Select a panel from the list of back panels.
H: Add the selected panel from G to the list of displayed back panels.
I: Remove the last displayed back panel from the list.

For a good example of how the editor works try loading some pre-existing levels like data/levels/easy/1.txt or data/levels/easy/2.txt. To play your level in the real game be sure to list it in data/levels/w1.txt. The levels will be played in the order of files listed.