packtloss 10 Posted August 29, 2010 Hi Guys; I apologize if this is old news, but it's new to me - and i had a hard time finding examples/docs on how to make this work - so i thought i would share, i really hope this helps someone, and im not the only idiot who didnt know about this :) I run domination and warfare servers, and the difficulty for me is having the map parameters set manually each time the server starts, map changes etc - Defaults are great but generally not what you want. After a lot of googling, whining and forum posts, i found that i needed to extract the map pbo i wanted to work with, and start variable hunting. (I'll use Warfare BE for this example) After extracting WarfareV2_063LiteOA.Takistan and viewing Description.ext, I found that the mission parameters are stored in WarfareV2_063LiteOA.Takistan\Rsc\Paramters.hpp *** Keep in mind, these variables can/probably/will change every time a map is updated, dont expect this stuff to work with anything other than WarfareBE 0.63 on OA (There are mission specific vars for vanilla/combined ops, ive left them remmed out) *** Now, in my server.cfg, i started with the basic mission framework: class Missions { class warfareBeTakistanDefaults // Mission Name { template = "WarfareV2_063LiteOA.Takistan"; // File Name difficulty = "veteran"; // difficulty }; }; Now, if you look closely at that Parameters.hpp; you will find lines like this: class aiGroupSizeAI { title = "$STR_WF_Gameplay_GroupSizeAI"; values[] = {2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,35,40,45,50,60,70,80,90,100}; texts[] = {"2","4","6","8","10","12","14","16","18","20","22","24","26","28","30","35","40","45","50","60","70","80","90","100"}; default = 10; Bingo. Now we know the parameter names, possible values and their defaults. So, you can start building your server.cfg like this: class Missions { class warfareBeTakistanDefaults // Mission Name { template = "WarfareV2_063LiteOA.Takistan"; // File Name difficulty = "veteran"; // difficulty class Params // Values are Mission Defaults { // *** AI OPTIONS *** // AI Group Size - values[] = {2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,35,40,45,50,60,70,80,90,100}; aiGroupSizeAI = 10; // Player Group Size - values[] = {2,4,6,8,10,12,14,16,18,20,22,24}; aiGroupSizePlayer = 12; // AI Keep Units JIP - 0 = No/Disabled, 1 = Yes/Enabled aiKeepUnits = 0; // AI Teams - 0 = No/Disabled, 1 = Yes/Enabled aiTeams = 1; // *** ARTILLERY OPTIONS *** // Artillery Calls - 0 = No/Disabled, 1 = Yes/Enabled artilleryCalls = 1; // Artillery Interface - 0 = No/Disabled, 1 = Yes/Enabled artilleryUI = 1; // Artillery Range - Values 1 (Short), 2 (Medium), 3 (Long) artilleryRange = 3; }; }; }; Short, for testing: (Running this, you should connect and see your starting funds/supplies parameters are at max) class Missions { class warfareBeTakistanMoneySupplyTest // Mission Name { template = "WarfareV2_063LiteOA.Takistan"; // File Name difficulty = "veteran"; // difficulty class Params // Values are Mission Defaults { // *** ECONOMY OPTIONS *** // Enconomy Income System - Values - 1 (Full), 2 (Half) economyIncomeSystem = 1; // Economy Starting Funds East - Values 800,1600,2400,3200,4000,4800,6400,8000,12800,25600,51200,102400,204800 economyStartingFundsEast = 204800; // Economy Starting Funds East - Values 800,1600,2400,3200,4000,4800,6400,8000,12800,25600,51200,102400,204800 economyStartingFundsWest = 204800; // Economy Starting Supplies East - Values 1200,2400,3600,4800,6000,7200,8400,9600,19200,38400,76800 economyStartingSupplyEast = 76800; // Economy Starting Supplies East - Values 1200,2400,3600,4800,6000,7200,8400,9600,19200,38400,76800 economyStartingSupplyWest = 76800; }; }; }; Now, Here's the missions class with all of the defaults set, as a foundation for you to work with; class Missions { class warfareBeTakistanDefaults // Mission Name { template = "WarfareV2_063LiteOA.Takistan"; // File Name difficulty = "veteran"; // difficulty class Params // Values are Mission Defaults { // *** AI OPTIONS *** // AI Group Size - values[] = {2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,35,40,45,50,60,70,80,90,100}; aiGroupSizeAI = 10; // Player Group Size - values[] = {2,4,6,8,10,12,14,16,18,20,22,24}; aiGroupSizePlayer = 12; // ???AI Keep Units - 0 = No/Disabled, 1 = Yes/Enabled aiKeepUnits = 0; // AI Teams - 0 = No/Disabled, 1 = Yes/Enabled aiTeams = 1; // *** ARTILLERY OPTIONS *** // Artillery Calls - 0 = No/Disabled, 1 = Yes/Enabled artilleryCalls = 1; // Artillery Interface - 0 = No/Disabled, 1 = Yes/Enabled artilleryUI = 1; // Artillery Range - Values 1 (Short), 2 (Medium), 3 (Long) artilleryRange = 3; // *** BASE OPTIONS *** // AI Commander - 0 = No/Disabled, 1 = Yes/Enabled baseAICommander = 1 // Base Allies - Only for NON-ARROWHEAD, NON-CO - 0 = No/Disabled, 1 = Yes/Enabled // baseAllies = 0; // Anti-Air Radar - 0 = No/Disabled, 1 = Yes/Enabled baseAAR = 0; // Base Areas - 0 = No/Disabled, 1 = Yes/Enabled baseArea = 1; // Base Area Limit - Values 1,2,3,4,5,6,7,8,9,10,12,14,16,18,20,22,24 baseAreaLimit = 2; // Base Auto Defenses (AI Controlled Defenses) - 0 = No/Disabled, 1 = Yes/Enabled baseAutoDefenses = 1; // Base Auto Defense Range - Values (Meters) 50,100,150,200,250,300,350,400,450,500,600,700,800,900,1000 baseAutoDefensesRange = 250; // Base Building Limit (Max number of each type of building) - Values 1,2,3,4,5,6,7,8,9,10 baseBuildingsLimit = 2; // Base HQ Deployment Cost - Values 100,200,300,400,500,600,700,800,900,1000,1500,2000,2500,3000,3500,4000,5000 baseHQDeploycost = 100; // Base Patrols (AI Infantry) - 0 = No/Disabled, 1 = Yes/Enabled basePatrols = 0; // Base Spawn System Restriction - 0 = No/Disabled, 1 = Yes/Enabled baseSpawnSystemRestrict = 1; // Base Starting Distances - Values 1000,1500,2000,2500,3000,3500,4000,4500,5000,5500,6000,6500,7000,7500,8000,8500,9000 baseStartingDistance = 5500; // Base Starting Locations - Values - 0 (West: North), 1 (West: South), 2 (Random) baseStartingLocations = 2; // *** ECONOMY OPTIONS *** // Enconomy Income System - Values - 1 (Full), 2 (Half) economyIncomeSystem = 1; // Economy Starting Funds East - Values 800,1600,2400,3200,4000,4800,6400,8000,12800,25600,51200,102400,20480 economyStartingFundsEast = 800; // Economy Starting Funds East - Values 800,1600,2400,3200,4000,4800,6400,8000,12800,25600,51200,102400,20480 economyStartingFundsWest = 800; // Economy Starting Supplies East - Values 1200,2400,3600,4800,6000,7200,8400,9600,19200,38400,76800 economyStartingSupplyEast = 1200; // Economy Starting Supplies East - Values 1200,2400,3600,4800,6000,7200,8400,9600,19200,38400,76800 economyStartingSupplyWest = 1200; // Economy Supply System - Values 0 (Truck), 1 (Time) economySupplySystem = 1; // *** ENVIRONMENT OPTIONS *** // Environment Fast Time - Values 0 = No/Disabled, 1 = Yes/Enabled environmentFastTime = 0; // Environment Time of Day - Values 0-23 (0 - 00:00, 1 - 01:00, ... 22 - 10:00, 23 - 11:00) environmentTimeOfDay = 9; // Environment Weather - Values 0 = No/Disabled, 1 = Yes/Enabled environmentWeather = 0; // *** GAMEPLAY OPTIONS *** // Gameplay Alice (Civillians) - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayAlice = 0; // Gameplay Hangars - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayHangars = 1; // Gameplay Body Timeout - Values (Seconds) 60,120,180,240,300,600,1200,1800,2400,3000,3600 gameplayBodiesTimeout = 240; // Gameplay Empty Vehicle Timeout - Values (Seconds) 60,120,180,240,300,600,1200,1800,2400,3000,3600 gameplayVehiclesTimeout = 1200; // Gameplay Fast Travel - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayFastTravel = 0; // Gameplay Friendly Fire (Buildings) - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayFriendlyFire = 0; // Gameplay Grass Distance - Values: 10 (Far), 20 (Medium), 30 (Short), 50 (Toggleable) gameplayGrass = 50; // Gameplay Kick Teamswappers - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayKickTeamswap = 1; // Gameplay Limited Map Boundaries - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayLimitedBoundaries = 1; // Gameplay Show Player Names - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayShowUID = 1; // Gameplay Block Spacebar Scanning - Values 0 = No/Disabled, 1 = Yes/Enabled gameplaySpacebarScanning = 1; // Gameplay Track AI on Map - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayTrackAI = 1; // Gameplay Track Players on Map - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayTrackPlayers = 1; // Gameplay Unit Balancing - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayUnitsBalancing = 0; // Gameplay Upgrades (East) - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayUpgradesEast = 1; // Gameplay Upgrades (West) - Values 0 = No/Disabled, 1 = Yes/Enabled gameplayUpgradesWest = 1; // Gameplay Victory Condition - Values 0 (Annihliation), 1 (Assassination), 2 (Supremecy) gameplayVictoryConditions = 2; // Gameplay View Distance - Values (Meters) 200,500,800,1000,1500,2000,2500,3000,3500,4000 gameplayViewDistance = 4000; // *** ADDITIONAL MODULE OPTIONS *** // Module Counter Measures (VANILLA ARMA2 ONLY) - Values 0 = No/Disabled, 1 = Yes/Enabled //moduleCM = 0; // Module EASA Aircraft Weapons - Values 0 = No/Disabled, 1 = Yes/Enabled moduleEASA = 1; // Module High Command - Values 0 = No/Disabled, 1 = Yes/Enabled moduleHC = 1; // Module ICBM (Nuke) - Values 0 = No/Disabled, 1 = Yes/Enabled moduleICBM = 0; // Module ISIS Injury/Revive - Values 0 = No/Disabled, 1 = Yes/Enabled moduleISIS = 0; // Module Volumetric Clouds (Weather) - Values 0 = No/Disabled, 1 = Yes/Enabled moduleVC = 0; // *** RESPAWN OPTIONS *** // Respawn Town Camps - Values 0 = No/Disabled, 1 = Yes/Enabled respawnCamps = 1; // Respawn at Camps - Values 0 = No/Disabled, 1 = Yes/Enabled respawnCampsRule = 1; // Respawn Delay timer - Values (Seconds) 10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90 respawnDelay = 30; // Respawn with Gear - Values 0 = No/Disabled, 1 = Yes/Enabled respawnGear = 1; // Respawn at MASH - Values 0 = No/Disabled, 1 = Yes/Enabled respawnMASH = 1; // Respawn at HQ - Values 0 = No/Disabled, 1 = Yes/Enabled respawnMobile = 1; // Respawn Towns Range - Values (Meters) 50,100,150,200,250,300,350,400,450,500,550,600,650,700,750,800,850,900,950,1000 respawnTownsRange = 550; // *** RESTRICTION OPTIONS *** // Restriction - Advanced Aircraft - Values 0 = No/Disabled, 1 = Yes/Enabled restrictionAdvancedAir = 0; // Restriction - Gear - Values 0 = No/Disabled, 1 = Yes/Enabled restrictionGear = 0; // Restriction - Kamov (OH/VANILLA ONLY) - Values 0 = No/Disabled, 1 = Yes/Enabled //restrictionKamov = 0; // *** TOWN OPTIONS *** // Towns - Amount Values 0 (Extra Small), 1 (Small), 2 (Medium), 3 (Large), 4 (Full) townsAmount = 3; // Towns - Striker (Assault Teams) - Values 0 = No/Disabled, 1 = Yes/Enabled townsStriker = 0; // Towns - Striker (Max) - Values 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40 townsStrikerMax = 4; // Towns - Occupation Enabled - Values 0 = No/Disabled, 1 = Yes/Enabled townsOccupation = 1; // Towns - Occupation Difficulty - Values 1 (Light), 2 (Medium), 3 (Hard), 4 (Insane), 5 (Automatic) townsOccupDifficulty = 1; // Towns - Occupation Reinforcment - Values 0 = No/Disabled, 1 = Yes/Enabled townsOccupReinforcement = 0; // Towns - Patrols - Values 0 = No/Disabled, 1 = Yes/Enabled townsPatrol = 0; // Towns - Patrols (Max) - Values 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,22,24,26,28,30,32,34,36,38,40 townsMaxPatrol = 12; // Towns - Protection Radius - Values (Meters) 0,50,100,150,200,250,300,350,400,450,500 townsProtectionRange = 400; // Towns - Purchase Militia - Values 0 = No/Disabled, 1 = Yes/Enabled townsPurchaseMilita = 0; // Towns - Resistance Enabled - Values 0 = No/Disabled, 1 = Yes/Enabled townsResistance = 1; // Towns - Resistance Difficulty - Values 1 (Light), 2 (Medium), 3 (Hard), 4 (Insane) townsResistanceDifficulty = 1; // Towns - Resistence Reinforcments - Values 0 = No/Disabled, 1 = Yes/Enabled townsResistanceReinforcement = 0; // Towns - Resistence Type (CO ONLY) - Values - 0 (Guerillas), 1 (Takistani Locals) //townsResistanceType = 1; // Towns - Starting Mode - Values - 0 (None), 1 (Divided), 2 (Nearby) townsStartingMode = 0; }; }; }; Share this post Link to post Share on other sites
Birdseye 0 Posted August 29, 2010 I knew it was possible, but never took the time to set it up. But you made it pretty easy, so I gave it a quick test for another map, and it works! Thanks for sharing this info :) Share this post Link to post Share on other sites
Mac_Spliff=ISK= 10 Posted October 24, 2010 Yip very handy, starting to get in the scripting stuff slowly... But now at least our dedicated server is running Straight and no need to set all the parmameters all the time when we want to start the thing hehehehehe Handy handy....thanks bro....apreciated Share this post Link to post Share on other sites