Pogostick Mapping Tutorial                                                                                  by Tormentor667
So you want to create your very own "Pogostick" map? Great, then here you will get a little instruction on how to set up your map to run fine with the special Pogostick script!
Step 1 - The Script
First at all you will have to add the main script to your map. Simply open the MAIN.WAD file with a wad editor (e.g. XWE) and copy the whole content from the ACS_POGO into your map.

Launch your favorite map editor now (e.g. Doom Builder), create a new ZDoom/GZDoom/Skulltag map, open the map scripts and paste the whole script into the empty script lump. After compiling, we are almost ready to start mapping.

Step 2 - Map Information
Now we have to prepare the MAPINFO for your map. To make sure that jumping works the way it was intended, make sure that your lump looks like this, especially the stuff marked with green

The "aircontrol" part gives the player more power over the moving direction if you are jumping, the "gravity" simply sets the jumping height and prevents the player from falling too fast. The "secretnext" line makes sure that you enter the BONUS map as soon as you have collected 100 Blood Diamonds (bonus items in Pogostick).

Step 3 - Camera Introduction
First at all: Everytime you start a new map, the camera is automatically facing north (90°, 64 byte angle) so consider this while you are designing the first rooms of your map as the "open part" (later more on that) must face south.


(camera direction)

Later I will also explain a way to walk around corners and make the camera automatically change it's direction but now let's talk about the easy stuff.

Step 4 - First Room
Now we will create a simple room in the map editor, a simple shape and a standard height of 128. At the beginning, make sure that your maps aren't too "deep". The "depth" or the y-dimension of your room should be larger than about 160 map units, do not forget: This is a side scroller, not a isometric hack and slay game ala Diablo so we do not want to move inward and outward alot.


 

Step 5 - Black Void
The next thing we must do now is add the "black void" in front of the sector, to the place where the camera later will be able to look into the sector. Make also sure that this sector's ceiling is much higher and the floor much lower than the actual room's heights to make sure that there is enough space for the camera. I always set the floor to -5120 and the ceiling to 5120, so I can use this void for the whole map, should be enough I think.

And this is how our two rooms look ingame now

But that's not exactly how we want it to look, isn't it? The areas that are marked "red" should actually be black. Reducing the sector's light level to 0 might be a solution but on some monitors and GL settings you can still see the textures, although they are almost pitch black. For pogostick, I simplay added a new texture called "BLACK" that is simply a black block, 64x64 pixels. Use this to make the front sector totally disappear.

The black void is there, the camera can move properly and the illusion is done. Last but not least, make sure that all the lines between the black void and the actual room are impassible and sound blocking so you cannot fall of the ledge and that other monsters can't hear you. Let's proceed, detail the room and continue with the next step.

Step 5 - Player Starts
As soon as you have finished your room, add your player starts (pogostick is fully multiplayer compatible up to 8 players, this makes up for some nice dm & ctf action in Skulltag)

Save the map and launch it with the pogostick resource included. If you have set up everything correctly, your display should look something like this

The camera moves automatically with the player's movement? You can see the hud and the crosshair? You can move with the corresponding keys? (keypad) Then everything is set up and you can continue with mapping, well done and good luck with your own Pogostick map :)

Teleporters
If you want to add teleporters to your platform map, do not (!) use the internal Teleport actions. Instead, use the pogostick script action.

Add ACS_Execute (action special 80) to your teleport lines, activating the special 255. To define the destination, simply add the TID of the mapspot or teleport destination into the first argument of the action special.

Map Exit
Same story for the map exit. Do not use the internal End action specials, use the ACS_Execute special as well, in this case activating script 252, no argument needed.


 

Automatic Turning
The next thing you might need to know is very important if you want to give your map more depth: Corners! Let's take a look at the next screenshot

What we have here is a hallway that has a 90 degree corner. The only thing we need to do now is to tell the script when the player's movement must switch from west/east to north/south and the camera's angle must be changed by 90 degrees anticlockwise. Difficult for the coder, easy implemention for the mapper.

Place "Actor enters Sector" things (doomednum 9998) to the blue sector/s and to the purple sector/s and make them activate script 253.

Now you only need to add the new angle to the first argument of ACS_Execute and you're done (angles for the camera facing north = 0, facing west = 64, facing south = 128, facing east = 192), time to try if it is working.

By the way, you are not limited to these 4 angles, every other number is also possible, be creative.

Action Pointers / Jump Pointers

Also, to make things easier and more obvious for the player, please take the advantage of sector based jump pointers and thing based action pointers.

The first one - the action pointers - are there to make sure that the player actually knows when to use the "use" button and which key he needs to use an object (there are 8 pointers, 2 directions for each color including green) as ingame messages won't appear because of the 3rd person camera. The second one - the jump pointers - are there to show the player in which direction he has actually to jump. This makes sense for large scale jumps or places where it is hard to get the right direction for a larger jump. For both things, take the ingame maps as reference.

The End
This tutorial should actually answer all your questions but if there are still a lack of clarity, feel free to ask me on my personal homepage (http://www.realm667.com). Thx for reading and have fun with mapping! -Cheers, Torm