Introduction to Movie Battles 2/Siege Mapping


Ok then , let us proceed to making a very simple map to build your siege coding skills. By the end of this lesson you should have all the needed spawns and entitys in the editor for the map to be playable.
tutorialpic1

Step 1.

Fire up GTK Radiant and start a new map. Make six brushes to make a cube, can be any size but it should be large enough to fit in several spawn points and various other bits. In mine I made it 1024 units wide, length and height. The purple cube in the picture is a regular info_player_deathmatch spawn.
tutorialpic2

Step 2.

Texture the insides of the box with whatever textures you want, add a light to the map by right clicking and scrolling down to the light option. Once your light is in the box, press your N keyboard ket to get into the entity window and change the value of the light from 300 to something like 10000.
tutorialpic3

Step 3.

Ok now right click again on the white grid and scroll down to info on the list and from the sub menu that appears, pick info_player_siegeteam1 or 2. team1 versions are red colored and are for rebels, team2 are blue and for imperials. Put about ten of each one on each side of the box for the heck of it.
tutorialpic4

Step 4.

Now for the siege entity stuff. Make another cube inside the map, say 128 by 128 units. Texture the cube in the system/trigger texture, which is light green with trigger written on it, you can't miss it. After you've done that, right click on the 2D grid and navigate down the list to trigger and from the submenu that appears, trigger_once. Basicly, the player will stand in this invisible trigger in the game and hold their use key for a number of seconds.
tutorialpic5

Step 5.

Press your N keyboard key while the trigger brush is highlighted to enter the entity window for the trigger_once. The important stuff you want to enter here is:
  • teamuser|1 (or 2 if you want the imps to hack it instead of rebels)
  • usetime|5000 (requires the player hold the use key for 5 seconds, 1000 equals 1 sec and so forth)
  • target|objective (objective is the name that the siege objective and trigger_once will use to link to each other, the power cord connection if you will)
  • checkmark the use_button box (this tells the trigger to only work if the player is in it and holding the use key)

Step 6.

Now then, right click on the 2D grid again and from the menu, select info and from there, info_siege_objective. Much like the trigger_once just set up, we are going to press N to go into the objectives entity window. Enter the following values:
  • side|1 (this number is for the team that is to complete the objective, 1 for rebels, 2 for imperials)
  • objective|1 (this setting will become important later when we make the .siege for the level)
  • targetname|objective (this is the receiving end of the target we set in the trigger_once, this will link the two entities together)
After you have finished this, the map should be ready to compile. I just compiled the map with GTK's compiler switch. To do this, click on the BSP menu and select one of the (test) compile switches.

Conclusion.

That takes care of the map editor side of things for siege levels. In the next tutorial I'll go over the .siege and other required files to make your siege map work. If you wish to look at the sample level for yourself, you can download it here: Sample Map
Free Web Hosting