This mod allows you to host a new gametype, Capture-The-Flag, for the stock Mohaa maps. The default rules are as follows: To score a point your team must capture and bring the enemy team's flag to your own team's base and hold it there for 15 seconds. The first team to score 5 points, or the team with the most points at the end of the round, wins the round.
There are 15 options for customizing the rules of the game, including the locations of the axis and allied bases for each map-- see below for instructions.
This mod is a server-side mod, meaning clients do not have to download anything to play it on your server!
Server-Side "Capture-The-Flag" MOD Version 1.1 For Mohaa (11-15-2003) -Stock Map Pack Release #1- by Mark Follett (Mefy) firstname.lastname@example.org Description ----------- This mod allows you to host a new gametype, Capture-The-Flag, for the stock Mohaa maps. The default rules are as follows: To score a point your team must capture and bring the enemy team's flag to your own team's base and hold it there for 15 seconds. The first team to score 5 points, or the team with the most points at the end of the round, wins the round. There are 15 options for customizing the rules of the game, including the locations of the axis and allied bases for each map-- see below for instructions. This mod is a server-side mod, meaning clients do not have to download anything to play it on your server! Installation ------------ Included in this map pack is a separate pk3 file for each stock map: user-mefy-ctf-mohdm1_1_1.pk3 (Southern France) user-mefy-ctf-mohdm2_1_1.pk3 (Destroyed Village) user-mefy-ctf-mohdm3_1_1.pk3 (Remagen) user-mefy-ctf-mohdm4_1_1.pk3 (The Crossroads) user-mefy-ctf-mohdm5_1_1.pk3 (Snowy Park) user-mefy-ctf-mohdm6_1_1.pk3 (Stalingrad) user-mefy-ctf-mohdm7_1_1.pk3 (Algiers) user-mefy-ctf-obj_team1_1_1.pk3 (The Hunt) user-mefy-ctf-obj_team2_1_1.pk3 (V2 Rocket Facility) user-mefy-ctf-obj_team3_1_1.pk3 (Omaha Beach) user-mefy-ctf-obj_team4_1_1.pk3 (The Bridge) Place the pk3 files for the maps you'd like to host as Capture-The-Flag into your MOHAA/main directory. Hosting a Game -------------- If the map is one of the stock dm maps (mohdm#), then run that map in Round-Based-Match mode in order to enable Capture-The-Flag. If the map is one of the stock objective maps (obj_team#), then run the map in Objective mode. Running a stock dm map in Free-For-All or Team-Match modes will make the map function as normal. Uninstall --------- Just remove the user-mefy-ctf... pk3 files from your MOHAA/main directory. References ---------- http://www.planetmedalofhonor.com/rjukanproject/ http://www.alliedassault.com http://www.alliedassault.com/community/guides/BitsnCK/ http://www.alliedassault.us http://www.mohadmin.com http://www.modtheater.com http://www.planetmedalofhonor.com/map/ General Customization --------------------- The game can be customized by adjusting the following cvars. After setting a cvar, you must restart the game for the changes to take effect. * "g_ctf_disable" Default: 0 Set this to 1 in order to disable Capture-The-Flag mode. If the map running is a dm map, then it will run in Round-Based-Match mode. If the map running is an obj map, then it will begin a standard objective game. * "g_ctf_pointlimit" Default: 5 This sets the number of points a team must score in order to win a round. If time runs out before the point limit is reached, then the team with the most points will be the winner. Setting this to 0 will allow the round to continue until time runs out, then determine a winner. Use the standard 'roundlimit' cvar to control the length of the round. The default round time is 15 minutes. * "g_ctf_suddendeath" Default: 5 If time runs out and the score is tied, a sudden death round will begin. The next team to score will win the round. Set this option to the number of minutes the sudden death round should last. If the sudden death round ends with the score still tied, then a draw will occur. Setting this to 0 will force a draw immediately. * "g_ctf_alliedbase" Default: map-specific Set this in order to change the location of the allied base. The format is as follows: "<x-coord> <y-coord> <z-coord> <angle>". For example, a value of "297 -2115 -22.62 180" will place the allied base at ( 297 -2115 -22.62 ) and it will be facing at an angle of 180. You will most likely want to set this for a specific map. See the section on "Map-Specific Customization" for instructions on how to do this. * "g_ctf_axisbase" Default: map-specific Set this in order to change the location of the axis base. The format is the same as 'alliedbase'. * "g_ctf_returnboth" Default: 0 Set this to 1 in order to require a team to bring both flags to their own base in order to score a point. When set to 0, they only have to bring the enemy team's flag to their own base to score. * "g_ctf_countdown" Default: 15 This sets the number of seconds a team must hold the flags at their base in order to score a point. Setting this to 0 will cause them to instantly score when the flags are brought home. Setting this to a large value will give the opposing team a chance to re-capture their flag and prevent a score. The scoring team will have to guard their base well in order to hold off the opposing team. Set this to a small value to make scoring easy. * "g_ctf_capturepress" Default: 25 This sets the duration of the button press for capturing a flag from the enemy's base (in tenths of a second). Setting this to -1 means that a button press is not required- you can walk up to the flag and capture it immediately. Set this to a large value to make it difficult to capture a flag from an enemy team's base. A player will have to stand in front of the base while pressing the button and be vulnerable to attack. This allows snipers to guard a base. Setting to zero is not recommended-- it will be too easy for the opposing team to re-capture their flag and prevent a score. * "g_ctf_returnpress" Default: 15 This sets the duration of the button press for returning a flag to home base (in tenths of a second). Setting this to -1 means a button press is not required- simply walk up to the spot where the flag should go and it will attach to the base immediately. Set this to a large value to make it difficult to return a flag to home base, and keep the snipers happy. * "g_ctf_drophold" Default: -1 This sets how long a player must hold the 'use' key in order to drop a flag (in tenths of a second). Setting this to -1 will disable intentional flag dropping. Setting this to a value of 20 would enable flag dropping, and require a player to hold the use key for 2 seconds in order to drop it. This would allow players to intentionally hide a flag from the opposing team, or allow a player to hand off their flag to a teammate. * "g_ctf_friendlyreturn" Default: 7 This determines how much time (in seconds) after a player captures their own team's flag that it will return automatically to their own base. Setting this to 0 will cause the flag to immediately return home. Setting this to -1 means that the flag will not return home. Setting this to a large value means that a player needs to stay alive for awhile after they pick up their team's flag in order for it to return to home base. Disabling flag return by setting to -1 will allow a team to hide their own flag by having a teammate carry the flag and hide somewhere. * "g_ctf_groundreturn" Default: 25 This determines how much time (in seconds) after a flag sits on the ground that it will automatically return to its base. Setting this to 0 will cause the flag to immediately return home. Setting this to -1 means that the flag will not return home. Setting this to a large value will give a team the chance to recapture a flag and continue their progress if their flag carrier drops the flag by being killed. Setting this to 0 would mean that the flag carrier must stay alive during the entire journey back to home base. Setting to -1 is not recommended-- the flag could potentially be lost somewhere for the remainder of the round. * "g_ctf_dropdelay" Default: 30 This sets the amount of time (in tenths of a second) after a flag is dropped that it cannot be picked up by any player. The flag will be semi-transparent while it is disabled. Set this to a large value to lengthen the amount of time players will fight over a flag once its dropped. Setting to 0 is not recommended and may make certain functions not work. * "g_ctf_announce" Default: "dropped atbase" This setting controls the announcing of the flag positions for given events. The format is the list of events in which to announce the flag position. The possible events are: "captured" -- Announce the flag position when a player picks up a flag. When not set, the position will be a generic 'Axis/Allied Player' "dropped" -- Announce the flag position when the flag is on the ground. When not set, the position will be 'Ground' "atbase" -- Announce the flag position when the flag is at a team's base. When not set, the position will be 'Axis/Allied Base' "abbr" -- Include this option to announce the flag positions in abbreviated format. "none" -- Set the cvar to "none" to disable all flag position announcements. Note that flag positions will only be announced for maps that have a map description set up (currently mohdm2, mohdm4, and mohdm6). If a map doesn't have a description available then you will only get the generic announcements. Setting these options will keep the game moving forward by showing players where the flags are. * "g_ctf_announcefreq" Default: 8 If announcing the flag position when "captured" is enabled, this setting controls the frequency that the flag position is updated. Set to the number of seconds between updates of the flag position. If set to 0, then only the position at the spot of capture will be announced. Setting this to a small value will make it impossible for the flag carrier to hide or stay alive. Set this to a large value to give them a chance but not allow them to completely hide. Map-Specific Customization -------------------------- The game can be further customized by having map-specific rules. In order to do this, set a cvar named "g_ctf_<mapname>_settings" to a list of settings to be used for the map. For example, setting the cvar "g_ctf_mohdm2_settings" to: "returnboth: 1 alliedbase: 297 -2115 -22.62 180 axisbase: -3237 270 24.97 0 drophold: 20" will adjust the rules for Destroyed Village to place the bases in new locations, require players to return both flags to their base, and enable intentional flag dropping. If a map-specific setting is set, it will override the general setting cvar. You can review the current settings during any game by reading the cvar "g_ctf_currentsettings", which will give a list of all settings. Capture-The-Flag for Custom Maps -------------------------------- Setting up Capture-The-Flag for a custom map is easy. Most of the code is placed in library files that you simply need to distribute with your custom map. The library files are as follows: /global/libmef/ctf.scr /global/libmef/mapdesc.scr /global/libmef/util.scr You will then need to modify your map script to initialize a capture-the-flag game. Use one of the stock map script files included in this map pack as a template for your own map's script file. The map script file for mohdm3 (Remagen) is the simplest one to use as a template-- the axis and allied bases are in the same position every round. Check out some of the others for more complex examples that show you how to place the bases in random locations each round.
There are no comments yet. Be the first!