Last updated: 6/23/01
Home
Scripts

  • Capture and Hold (6/23/01)
  • Overrun (6/17/01)
  • Find and Retrieve (6/17/01)
  • Mercenaries, Inc. (6/10/01)
  • Elimination (5/24/00)
  • Starsiege Hockey (2/15/00)
  • Orogogan Deathmatch (12/28/99)
  • Starsiege Assault (12/19/99)
  • Team Arena (8/22/99)
  • Starsiege Arena (8/15/99)
  • Jailbreak (8/14/99)
  • Whack-A-Goad (8/2/99)
  • HercRace (7/25/99)

  • Short instructions



    Capture and Hold

    Description
    Map designs by Buckaroo Banzai and Killin Is Fun. To capture a base for your team and gain control of its turrets, shut down on the base's pad and wait. Points are awarded to the player capturing the base, and the team scores points at set intervals for holding the base.

    New features:

    6/23/01
    - Added Ditto's Stonehenge map, and Testbed, a sample map showing off a teleporter script: each team's base and each capture pad has a teleporter arch that can be scanned to set the destination, as long as your team owns both bases, step through the arch to teleport


    6/17/01
    - Added Killin Is Fun's Capture and Hold maps, after the demise of his web page

    6/3/00

    - Allowed games to be won by reaching a team point limit (500 by default), see the Server_CH.cs file
    - Commented out individual player scores

    5/28/00

    - Updated the pack with two new maps by Killin Is Fun
    - Made a tiny fix in the library to prevent activation of one pad's turrets to flow over to all the other ones. The same bug would keep turrets from ever activating if they weren't in //MissionGroups//Bases.

    5/27/00

    - Updated the script to allow different pads to have different points values
    - Added the zen globals to make sure the pads work as zen pads
    - Added a %padTrigger.zen variable so that trigger pads don't have to act as zen pads
    - Added default values for $killPoints, $deathPoints and $basePoints (points players get for base seizures)
    - Updated all the currently existing Capture and Hold maps (Battlefield Earth, City on the Edge, Point of Contention, Fog and Fighting, and Mercury) to the new script

    5/24/00

    - Rewrote the entire stdlib basically from scratch, so that much less of the script is dependent on multiple functions for pad captures. The new script is much shorter and cleaner, and also throws out the capture logic from the first version, which was a colossal mess. Unfortunately, I haven't been able to test the script, since you need at least two people to really test it out. I haven't gotten around to making a map with the new standard library, either.

    12/27/99

    - Fixed an error that prevented the purple team from getting points for holding a base after the first 90 seconds.

    Download:
    - CnHstdlib.cs, 10 maps (Battlefield Earth, Circular Logic, City on the Edge, Fog and Fighting, Grassy Canyon, Icy Front, Mercury, Point of Contention, Stonehenge, Testbed), and a dedicated server file:
    CnHPack.zip

    Last modified: 6/23/01



    Overrun

    Description
    Sort of like
    Starsiege Assault for cooperative play. AIs spawn periodically to attack the players' base.

    New features:

    6/17/01

    - Posted Killin Is Fun's Overrun map pack, after the demise of his web page

    Download:
    - Main download -- removed. Pincushion, who takes better care of Overrun than I do, is the de facto maintainer of the script. See his Overrun page, and also stop by Killin Is Fun's Overrun page, which features several extra maps. My thanks to the two of them for popularizing this script.
    - Five Overrun maps (Beck's Last Stand, Circular Logic, Escape From Titan, Final Battle, Rebel Hideaway) by Killin Is Fun. KillinOV.zip

    Thanks also to Super Monkey for the original suggestion.

    Last modified: 6/17/01



    Find and Retrieve

    Description
    Copied from Tribes. Find the flags on the field, and take them back to the pads at your base. The first team to get all the flags wins.

    Basis:
    CTF_Balance_of_Power

    New features:

    6/17/01

    - Added Fog and Fighting, a map by Killin Is Fun. Thanks go out to Killin for allowing me to post his work, and for making all the maps in the first place

    2/6/00

    - Cleaned up FnRStdLib.cs to make it smaller, and more easily adjustable to more flags, and different victory conditions.


    Download:
    - The .cs and .mis files, including a FnRStdLib.cs file and a dedicated server file:
    FnR.zip (7KB)
    - A silly variant, Lumberjack, which features randomly placed flag-trees: Lumberjack.zip (5KB)

    Last modified: 6/17/01



    Mercenaries, Inc.

    Description
    A server script using random missions and persistent player stats to model mercenary games such as Mechwarrior 1 or Elite. Incomplete.

    See:
    The Mercenaries, Inc. page

    Last modified: 6/10/01



    Elimination

    Description
    A different take on tackling a Team Arena game. This one has a 40 second wait period at the beginning of each map, and then players who try to join (whether they just jumped in the server or are trying to respawn) are just killed again. Each map ends when there's only one team left on the map.

    Download:
    - The Elimination.cs file, modified .cs files for all the standard DM maps, and a dedicated server file:
    Elimination.zip (14KB)

    Last modified: 5/24/99



    Starsiege Hockey

    Description
    A reworking of the Starsiege Football script.

    Features:

  • A moving puck. It moves in the opposite direction from the person firing on it
  • The original puck was the drone object but initial testing showed it was too hard to hit. The new puck is a, er, garage
  • The goal zones at each end are adjusted smaller, marked by a pair of flags
  • The puck rebounds off of the sides and end zones out of the goal area. While rebounding, the puck won't respond to shots
  • To start the game, both teams have to send someone to the pads in the middle of the field
  • Walls block off the two halves of the field before the game begins, to encourage planning of initial positions
  • There is a time penalty (15 seconds by default) before players can join the game after it starts, to encourage the mauling of goalies

    Basis:
    Starsiege_Football

    New features:

    2/6/00

    - Placed some larger objects behind the flags, to make the goal boundaries easier to see
    - Created a one-player practice mode, to let people hit the puck around when no one else is in the server

    Download:
    - The .cs and .mis files, including a dedicated server file:
    SSHockey.zip (7KB)

    Last modified: 2/15/00



    Orogogan Deathmatch

    Description
    A script I'm playing with for fun. The script forces Cybrid vehicles onto the blue team, and Human vehicles onto the red. Tech mixing is disabled by default, at least for the dedicated server. Some basic server logging is enabled, which writes to the serverlog.txt file included in the .ZIP file -- this currently records server starts (sometimes, I don't have it figured out yet), player adds and player drops. Five AI drones are spawned for each side, and (hopefully) kept in circulation. AIs are now bright enough to pick out a target when they spawn and run at them, but not much else.

    Basis:
    DM_City_on_the_Edge.ted.vol

    New features:

    12/28/99

    - Cleaned up the adjustTeam function somewhat

    - Used OnMessage() to retarget AI units, instead of checking all of them whenever anyone dies

    - Added IP logging to the serverlog.txt file

    12/20/99 (and then some)

    - Improved the server logging to include how long a player was on a server when he drops (unless he does it between missions). To accomodate this, also upgraded the timeDifference() function to handle hours as well as minutes and seconds.

    - Adjusted the scoreboard to reflect kills by AIs as well as humans.

    - Put a HUD timer in the mission to indicate the time left until the next server restart.

    - Not a feature, but the lag spike when an AI unit is added is sometimes quite noticeable now.

    - Added Prometheus, Harabec and Caanon to the AI list, with their proper vehicles. The latter two (especially Harabec, in his MFAC super-Predator) are significantly more dangerous than Prometheus. I may decide to take some measures to beef up the Cybrid AI units, especially the Platinum Guard.

    - Rewrote the script, overriding the 25 minute time limit I have in my dedicated server file, to end the game from the script at 20 minutes, making absolutely sure that all the AIs are removed at mission's end.

    - Modified the datPilot files from scripts.vol to use the Cybrid and Human campaign wingmen and hubmates as AIs. Unfortunately, they don't really come into their own (especially the Cybrids) until they've gained some experience in the campaign, and that doesn't happen in this script.

    Download:
    - The .cs and .mis files, a dedicated server file, ScanComponents.cs, OrogPilots.cs, serverlog.txt:
    ODM.zip (6KB)

    Last modified: 12/28/99



    Starsiege Assault

    Description
    Similar to Whack-A-Goad. In this scenario, players teleport into arenas which are larger than the ones in used in the original Whack-A-Goad map, to accomodate more targets. One random AI vehicle is spawned into the arena, and when the player kills it, two more are spawned in, then three, and so on. High scores are measured according to the number of targets destroyed, instead of the time to completion.

    Notes:
  • All players are radar invisible in this mission. The targets are not, and players may detect targets in other players' arenas.

    Suggested modifications:
  • Same as for Whack-A-Goad, above
  • Edit the allowed AI vehicles, in 164-180

    Possible improvements:
  • Same as for Whack-A-Goad, above

    Basis:
    DM_City_on_the_Edge.ted.vol

    New features:

    12/21/99

    - Added two new AI configs (a dual-ELF Goad and an MFAC/EMP Emancipator), and reworked the AI vehicle selection so that even if there are 2000 Emancipator variants and one of everything else, an Emancipator will only show up 1/32 of the time, instead of 2000/2013 of the time.

    12/19/99

    - Changed the random HERC scripting to allow the use of configs created in the mission editor. Create a vehicle off in the boonies, and name it Embryo1, Embryo2, etc., and put it in the /MissionGroup/Embryos/ missiongroup. Then go into the .cs file and search for the applicable code to clone and use the random HERC. Added two new HERCs: an EMP/ELF Minotaur and an EMP/HATC Shepherd.

    - Put in some code to make sure destroyed AIs were cleaned up after death, but I'm not sure it works.

    - Put in a five second delay before the AI starts firing, to cut down on devastating volleys while the new unit is still in the air.

    - Put in some script to log player adds and drops to a serverlog.txt file (which has to be created with a text editor before it will work).

    8/22/99

    - Added the ScanComponents.cs script, and included it in the main Assault script. Probably not very useful, but kind of fun scripting.

    - The script now logs the top scores (but not the personal scores) to file, into /Starsiege/Multiplayer/SSAssaultScores.cs.

    - Along with the persistent score log, the AI was upgraded to Reaper levels. Enemies should be much more likely to team up on the player.

    - Updated the associated dedicated server file.

    Download:
    - The .cs and .mis files, a dedicated server file and a README: StarsiegeAssault.zip (8KB)

    Last modified: 12/19/99



    Starsiege Arena

    Description
    Starsiege Arena is a way for players to fight repeated one-on-one duels without interference. Players spawn in a lobby area with a teleporter. Stepping on the teleporter sends players to an arena, whereupon they either engage the opponent there, or if there is no opponent already there, they wait for another player to step on the lobby teleporter and be sent to their arena. By preference, the script will (should) send players to arenas occupied by another player, and will only send players to empty arenas if no one-player arenas are available. Also, the script will try to send players to spawn points within an arena where the opponent is not within 50m. Players who lose (die) are sent back to the lobby, while the winner is automatically teleported to a new arena.

    Notes:
  • All players are radar invisible in this mission. This is meant to decrease the incidence of kills scored by people in the lobby, particularly those using guided weapons and locking onto people in an arena.

  • ATR scoring is enabled in this mission. That is to say, the score is weighted more heavily towards the ratio of kills versus deaths, and less towards the number of kills alone.

  • Players are automatically healed when attacked in the lobby. However, this doesn't prevent one-shot kills, nor are shields affected. Players are also healed and reloaded when they are teleported to an arena, although this doesn't affect shields or energy.

  • A later, more excessive measure was to raise the walls and put a ceiling over all of the arenas.

  • Disrupters and disrupter guns are a prime tool for people who try to be annoying in the lobby, and have been removed by default. Field stabilizers have also been removed from the list.

    Known problems:
  • As noted, it is possible for people to kill other players in the lobby through one shot kills.

  • The healing of damage in the lobby does not apply to shields (or energy), so players can have their shields lowered in the lobby, and start at a disadvantage if they teleport into the arena right away.

  • It is also possible for people to escape out of the arenas and wander around the empty terrain. This keeps other people from using that arena until the escapee dies (i.e., quits), and if there is already another opponent in the lobby, he will be abandoned without an opponent, and the mission logic may be permanently broken until the server restarts, so that one player is continually teleported into that arena and stranded there. Similarly, three or more people may end up in the same arena through broken mission logic.

    Suggested modifications:
  • Create new arena maps. This time, an effort was made to make this as easy as possible. There are two requirements for a Starsiege Arena map. The first is that there must be a trigger object with name and script class of BeamHimUp, to act as the lobby teleporter. The second is that each arena must contain the appropriate number of boxes, and the appropriate number of spawnpoints per box, specified in lines ~39-40 in the StarsiegeArena.cs file. Each box should have its own mission group, branched directly off of the main /MissionGroup group in the mission editor, and these groups should be named /MissionGroup/Box1, /MissionGroup/Box2, etc., up to the number of boxes specified in line ~30. In these groups, there should be trigger objects with name and script class of spawn1, spawn2, spawn3, etc., up to the number of spawn points specified in line ~40. A physical teleporter pad to go with the teleporter trigger, arena walls, and such should definitely be included, but are not literally required by the script.

  • Adjust the minimum starting distance for opponents in line ~207 according to the size of the map. Warning: if this number is set too high, it is possible to send the game into an infinite loop and crash the mission.

  • Turn radar invisibility back off, in line ~258.

    Possible improvements:
  • It would be possible to eliminate the lobby altogether, set the number of maximum players to the total number of boxes times 2, and teleport players directly to each others' boxes without a teleporter, and might make the game easier for new players to understand.

  • It might be nice to keep track of a player's best and current streaks, i.e., how many times he has won in a row.

    Basis:
    DM_City_on_the_Edge.ted.vol

    Download:
    - Two sets of .cs and .mis files, a dedicated server file, a scoring file, and a README. Note that there are two maps included, one based on the Whack-A-Goad map with three small arenas (StarsiegeArena), and one based on the Starsiege Assault map with two larger arenas (Arena_on_the_Edge):
    StarsiegeArena.zip (19KB)

    Last modified: 8/15/99



    Jailbreak

    Description
    Based on what how I think Jailbreak for Quake works. Players start out spawned in a jail for their tam. Once both teams report at least one player in the game, sixty seconds of free teleports are activated, wherein everyone gets out of jail. Once the minute is up, free teleports are turned off, and people who respawn after dying as well as new joiners have to wait in the jail for the next liberation or massacre. A pad next to each jail will either list the current occupants (if someone from the jailing team steps on the pad), or teleport everyone in the jail back to their own base (if someone from the jailed team steps on the pad). If everyone on a team is jailed, the entire team is killed again and sent back to their base.

    Notes:
  • This mission was copied from the WAR Martian Standoff map, and the turrets, generators and AI units from that scenario are still in place, although destroying all the buildings won't win the mission.

  • Whenever someone dies, there is a five second delay before the script checks to see if it's time for a massacre. At the same time, if a team has no living members (whether in or out of jail) five seconds after a death, the mission will restart.

    Known problems:
  • Lots. This is a pretty unpolished script. The massacre logic goes absolutely haywire rather often, and I haven't stopped to look it over yet.

    Suggested modifications:
  • Change the maximum points in the server settings to determine when the game ends.

    Possible improvements:
  • The mission restart when one team becomes empty was originally meant to prevent one team from destroying the other's base when there are no team members, but I've decided that it's pretty stupid. I'll probably just take it out whenever I get around to it.

  • Similarly, the AIs and turrets from WAR are there mainly because I was too lazy to take them out or change them. They look good in the mission, but the AIs are a little prone to haring off on their own.

  • I'm not sure if I like Jailbreak being a mainly tank game (they tend to do awfully well in WAR), and I may change the script so that a tank can't liberate the jail. The end result, I think, is that tanks would be used to destroy the generators, and HERCs would liberate the jail and do a lot of the heavy fighting.

    Basis:
    WAR_Martian_Standoff.ted.vol

    Download:
    - The .cs and .mis files, a dedicated server file and a README:
    MartianJailbreak.zip (12KB)

    Last modified: 8/14/99



    Whack-A-Goad

    Description
    Players spawn in a lobby area, which contains two scoring pads and a teleporter. The teleporter sends the player to one of three (identical) small arenas, whereupon three Goads are created for the player to fight, and spawned into random locations within the arena. When the player defeats all three Goads, his time is noted and he is teleported back to the lobby. The first scoring pad keeps track of the ten lowest scores (until the server restarts), reporting the names, times and vehicles to anyone who steps onto the pad. The second pad tells the player his best recorded time on that server, his best streak (how many times in a row he has successfully completed the Goad-whacking) and also reports how long the server has been running.

    Notes:
  • All players are radar invisible in this mission. The Goads are not, and players may detect Goads in other players' arenas.

    Suggested modifications:
  • Adjust the Goad skill ratings, in lines ~32-43 of WhackAGoad.cs
  • Increase the number of Goads to be spawned, in line ~47
  • Change the Goads to another vehicle type, in line ~176
  • Edit the map terrain

    Possible improvements:
  • Smooth out the script to make it easier for people to create new arenas. Currently, the script is specific to the Whack-A-Goad map in three places: when the player is sent to an arena, when a Goads are spawned into arenas, and when a player is respawned into the lobby after destroying the Goads.

  • Create a third high score list, for each vehicle type, and record the top ten times by vehicle. Set up a pad to report these times according to whatever vehicle the player is currently using.

  • Try to randomize the AI skill ratings somehow. I don't currently see an easy way to do this, however.

    Basis:
    DM_City_on_the_Edge.ted.vol

    Download:
    - The .cs and .mis files, a dedicated server file and a README:
    WhackAGoad.zip (8KB)

    Last modified: 8/2/99



    Team Arena

    Description
    A team version of Starsiege Arena, sort of, based on how I think Rocket Arena works (I don't own Quake I/II, so I'm mostly guessing). Players spawn in their bases, five kilometers above the map, and gather in the teleport areas at the end of the hallway. Once all the players in the game are in their respective teleport areas, the teleporters are activated for one minute, and players are allowed to beam down to the surface. Players who dies are sent back to their base, and once the teleporters are deactivated, they're stuck there. Once one team wipes out the other, the game ends and restarts.

    Known problems:
  • This script is mostly untested, so a wealth of bugs is probably waiting to be uncovered.

  • No allowance has been made to ensure that both teams have players. Thus, one player can teleport down to the map by himself, and the game will simply stall there.

  • It would be far better to send the victors back to their base and start the game again without ending the mission.

    Basis:
    DM_Fear_in_Isolation.ted.vol

    Download:
    - The .cs and .mis files, a dedicated server file and a README:
    TeamArena.zip (9KB)

    Last modified: 8/2/99



    HercRace

    Description
    A very, very unpolished script -- vehicles can run around a small, square racetrack. Triggers are placed about every 8 m around the track, and players receive points for crossing each one. Players also receive points for killing targets on the track. Some experimental scripting sets it so that heavier units receive more points for crossing triggers, while lighter units receive more points for kills. HUD timers are in place to keep track of total times as well as lap times. Right now, the script is more useful as a scripting exercise than as something actually fun to play.

    Basis:
    DM_City_on_the_Edge.ted.vol

    Download:
    - The .cs and .mis files, a dedicated server file and a README:
    HercRace.zip (6KB)

    Last modified: 7/25/99





    Short Instructions

    To run these scripts:

    Unzip the .cs and .mis files into your /Starsiege/multiplayer folder.

    To start a game: From your Multiplayer menu, choose Create Game. Change the Mission to the name of the new script. Click on OK.

    To set up a dedicated server: Move the Server_*.cs file into your /Starsiege folder. Create a new shortcut in your Windows Start Menu, or copy one of the ones included with Starsiege, and give it an appropriate name. In its file Properties, change the target to point at the Server_*.cs file (e.g. C:\Games\Starsiege\launch.exe infiniteSpawn starsiege -s Server_HercRace.cs).


    Unless otherwise stated, people are free to take these scripts and do what they want with them, with or without permission. Frankly, I don't even care if someone else takes credit for them, as long as they don't make me shut down my page.






    1