Jump to content
Sign in to follow this  
nuggetz

Dedicated server parameters - How?

Recommended Posts

What would my server.cfg look like if I wanted to specify the different parameters for a Benny or Domination map? For example, if I wanted to just enable the teleport to base option and set that to yes instead of "NO" in Domination, what would I need to put into my config file?

Share this post


Link to post
Share on other sites

Into the server.cfg

class Missions

{

class Mission_01 // name for the mission, can be anything

{

template = mymission.Chernarus; // omit the .pbo suffix

difficulty = "regular";

param1 =

param2 =

};

class Mission_02

{

template = anothermission.Chernarus;

difficulty = "veteran";

param1 =

param2 =

};

};

	class d_WithMHQTeleport {
	title = "Teleport or spawn at MHQ:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class WithTeleToBase {
	title = "Enable teleport to base:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

Complete Parameters for Domination 2.17. Use the values not texts.

class Params {
class d_MainTargets {
	title = "Main Targets";
#ifdef __DEFAULT__
	values[] = {50,60,70,90,2,4,6,8,10,12,14,16,18,21};
	default = 8;
	texts[] = {"West Route","South Route","East Route","Complete, ordered","Random 2","Random 4","Random 6","Random 8","Random 10","Random 12","Random 14","Random 16","Random 18","Random 21"};
#endif

#ifdef __TT__
	values[] = {2,4,6,8,10,12,14,16,18,20};
	default = 8;
	texts[] = {"2","4","6","8","10","12","14","16","18","20"};
#endif

#ifdef __EVERON__
	values[] = {2,4,6,8,10,12,14,16,18};
	default = 8;
	texts[] = {"2","4","6","8","10","12","14","16","18"};
#endif
};

class d_TimeOfDay {
	title = "Time of day:";
	values[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
	default = 7;
	texts[] = {"00:00","01:00","02:00","03:00","04:00","05:00","06:00","07:00","08:00","09:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00"};
};

class d_InitialViewDistance {
	title = "Initial Viewdistance:";
	values[] = {1000,1500,2000,2500,3000,3500,4000,4500,5000};
	default = 1500;
	texts[] = {"1000 m","1500 m","2000 m","2500 m","3000 m","3500 m","4000 m","4500 m","5000 m"};
};

class d_MaxViewDistance {
	title = "Maximum Viewdistance:";
	values[] = {2000,3000,4000,5000,6000,7000,8000,9000,10000};
	default = 5000;
	texts[] = {"2000 m","3000 m","4000 m","5000 m","6000 m","7000 m","8000 m","9000 m","10000 m"};
};

class d_ViewdistanceChange {
	title = "Viewdistance changable:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_WithMHQTeleport {
	title = "Teleport or spawn at MHQ:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class WithTeleToBase {
	title = "Enable teleport to base:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_FastTime {
	title = "Fast time (1 sec ~ 1 minute):";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_HALOWaitTime {
	title = "HALO at base wait time:";
	values[] = {0,300, 600, 1800,3600};
#ifndef __TT__
	default = 1800;
#else
	default = 300;
#endif
	texts[] = {"0 Minutes","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};
};

class d_LockArmored {
	title = "Lock armored enemy vecs:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_LockCars {
	title = "Lock enemy cars:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_LockAir {
	title = "Lock enemy air vecs:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class WithRepStations {
	title = "Repair buildings can repair:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class WithJumpFlags {
	title = "No parachute jump flags:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class ParaAtBase {
	title = "Parachute from base:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class AmmoBoxHandling {
	title = "Ammobox handling:";
	values[] = {0,1};
	default = 0;
	texts[] = {"New","Old"};
};

class VecCreateWaitTime {
	title = "MHQ vec creation time:";
	values[] = {60,300, 600, 1800,3600};
	default = 1800;
	texts[] = {"1 Minute","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};
};

class AutoKickTime {
	title = "Air vecs autokick time:";
	values[] = {0,60, 300, 600, 1800,3600};
	default = 1800;
	texts[] = {"0 Minutes","1 Minute","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};
};

class HALOJumpHeight {
	title = "HALO jump height:";
	values[] = {500,700, 888, 1000, 2000, 5000};
#ifndef __ACE__
	default = 888;
#else
	default = 2000;
#endif
	texts[] = {"500 m","700 m","888 m","1000 m","2000 m","5000 m"};
};

class WithBackpack {
	title = "With backpack:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class LimitedWeapons {
	title = "Weapons limited:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_with_ranked {
	title = "Ranked:";
	values[] = {0,1};
#ifndef __RANKED__
	default = 1;
#else
	default = 0;
#endif
	texts[] = {"Yes","No"};
};

class EnemySkill {
	title = "Skill Enemy:";
	values[] = {1,2,3};
	default = 2;
	texts[] = {"Low","Normal","High"};
};

class WithIsleDefense {
	title = "With isle defense:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

#ifndef __TT__
class WithBaseAttack {
	title = "Base sabotage:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};
#endif

class WithRecapture {
	title = "Enemy recaptures targets:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class WithLessArmor {
	title = "Armor at main targets:";
	values[] = {0,1,2};
	default = 0;
	texts[] = {"Normal","Less","None"};
};

class ArtiOperatorMaxDist {
	title = "ArtiOp. max. strike dist:";
	values[] = {500,1000,2000,3000,5000,10000000};
	default = 500;
	texts[] = {"500 m","1000 m","2000 m","3000 m","5000 m","Infinite"};
};

class d_arti_reload_time {
	title = "Artillery reload time:";
	values[] = {5,10,20,30,60};
	default = 20;
	texts[] = {"5 secs","10 secs","20 secs","30 secs","60 secs"};
};

class d_arti_available_time {
	title = "Artillery avail. after:";
	values[] = {10,30,60,120,240,300,600};
	default = 300;
	texts[] = {"10 secs","30 secs","60 secs","120 secs","240 secs","300 secs","600 secs"};
};

class d_arti_check_for_friendlies {
	title = "Arty check friendlies:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

#ifdef __WOUNDS__
class WoundsRevTime {
	title = "Wounds life time:";
	values[] = {60,120,300,600,1200,-1};
	default = 300;
	texts[] = {"60 secs","120 secs","300 secs","600 secs","1200 secs","No poor mans r"};
};
#endif

class WithChopHud {
	title = "Enable Chopper Hud:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_vechud_on {
	title = "Enable Vehicle Hud:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_show_vehicle_welcome {
	title = "Vehicle welcome msg:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_weather {
	title = "Internal weather system:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class WithWinterWeather {
	title = "With winter weather:";
	values[] = {0,1};
	default = 0; 
	texts[] = {"Yes","No"};
};
#ifndef __ACE__
class OverrideBISEffects {
	title = "Override BIS Effects:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_BloodDirtScreen {
	title = "Dirt and blood effects:";
	values[] = {0,1};
	default = 0;
	texts[] = {"On","Off"};
};

class d_BlockSpacebarScanning {
	title = "Block spacebar scanning:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};
#endif
class d_MaxNumAmmoboxes {
	title = "Max. # ammo boxes:";
	values[] = {10,20,30};
	default = 10;
	texts[] = {"10","20","30"};
};

class d_WreckDeleteTime {
	title = "Delete wrecks after:";
	values[] = {1800,3600,5400,7200,-1};
	default = 3600;
	texts[] = {"30 minutes","60 minutes","90 minutes","120 minutes","Never"};
};

class d_GrasAtStart {
	title = "Gras:";
	values[] = {0,1};
#ifndef __OA__
	default = 1;
#else
	default = 0;
#endif
	texts[] = {"Yes","No"};
};

class d_Terraindetail {
	title = "Player can disable gras:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_max_ai {
	title = "Recruit AI (max.):";
	values[] = {6,8,10,12,14,16};
	default = 8;
	texts[] = {"6","8","10","12","14","16"};
};

class d_show_player_marker {
	title = "Player marker:";
	values[] = {0,1,2,3,4};
#ifndef __TT__
	default = 0;
#else
	default = 1;
#endif
	texts[] = {"Off","Name only","Marker only","Role only","Health"};
};

class d_dont_show_player_markers_at_all {
	title = "Disable player markers:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_p_marker_dirs {
	title = "Player marker with dir:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};

class d_v_marker_dirs {
	title = "Vehicle marker with dir:";
	values[] = {0,1};
#ifndef __TT__
	default = 1;
#else
	default = 0;
#endif
	texts[] = {"Yes","No"};
};

class d_MarkerTypeL {
	title = "Marker type:";
	values[] = {0,1,2,3,4};
	default = 0;
	texts[] = {"mil_dot","Man","mil_circle","mil_box","mil_triangle"};
};

class d_use_teamstatusdialog {
	title = "Enable TeamStatusDialog:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class d_drop_radius {
	title = "Air drop radius:";
	values[] = {0,10,30,50,100};
	default = 0;
	texts[] = {"Exact position","10 m","30 m","50 m","100 m"};
};

class d_drop_max_dist {
	title = "Airdrop max. dist:";
	values[] = {100,500,1000,2000,3000,5000,10000000};
	default = 500;
	texts[] = {"100 m","500 m","1000 m","2000 m","3000 m","5000 m","Infinite"};
};

class d_reload_engineoff {
	title = "Vec reload, engine off:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

class x_reload_time_factor {
	title = "Vec reload, time factor:";
	values[] = {0,1,2,3,4,5,10};
	default = 4;
	texts[] = {"0","1","2","3","4","5","10"};
};

class d_with_mgnest {
	title = "With MG nest:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};
#ifdef __REVIVE__
class d_NORRN_max_respawns {
	title = "Revive max respawns:";
	values[] = {5,10,20,30,40,50,1000};
	default = 30;
	texts[] = {"5","10","20","30","40","50","1000"};
};

class d_NORRN_respawn_button_timer {
	title = "Respawn button after:";
	values[] = {30,60,90,120,180,240,300,600};
	default = 90;
	texts[] = {"30 secs","60 secs","90 secs","120 secs","180 secs","240 secs","300 secs","600 secs"};
};

class d_NORRN_revive_time_limit {
	title = "Revive time limit:";
	values[] = {60,120,180,240,300,600,1200};
	default = 300;
	texts[] = {"60 secs","120 secs","180 secs","240 secs","300 secs","600 secs","1200 secs"};
};

class d_NORRN_no_of_heals {
	title = "Revive # of heals:";
	values[] = {0,1,2,3,4,5,10};
	default = 3;
	texts[] = {"0","1","2","3","4","5","10"};
};
#endif
class d_sub_tk_points {
	title = "Negative TK points:";
	values[] = {0,1,5,10,20,30,50};
	default = 10;
	texts[] = {"0","1","5","10","20","30","50"};
};

class d_max_truck_cargo {
	title = "Salvage cargo capacity:";
	values[] = {1,3,6,9,12,16};
	default = 6;
	texts[] = {"1","3","6","9","12","16"};
};

class d_maxnum_tks_forkick {
	title = "Max # TKs for kick:";
	values[] = {1,3,5,10,20,30,40,1000000};
	default = 10;
	texts[] = {"1","3","5","10","20","30","40","Disable"};
};

class d_ai_arti_available_time {
	title = "AI observers arty avail time:";
	values[] = {60,120,180,240,300,600};
	default = 240;
	texts[] = {"60 secs","120 secs","180 secs","240 secs","300 secs","600 secs"};
};
#ifdef __WOUNDS__
class d_wounds_no_ai {
	title = "ACE wounds for AI:";
	values[] = {0,1};
	default = 1;
	texts[] = {"Yes","No"};
};
#endif
};


Edited by Cross

Share this post


Link to post
Share on other sites

Thanks for that Cross, but what do you mean by use values? I pasted your code in the server.cfg and none of the parameters appear to be taking effect. Where exactly do I inject your code structure wise in the config file? Can someone share a full working server.cfg example that addresses my problem? I tried changing the default = X sections but nothing happens. What am I doing wrong?

Here's the top of my server.cfg

class Missions
{
  class Mission01
  {
  template = co30_Domination_2_17A2_West_AI_OA.Takistan;
  param1 =
  param2 = 
  };//end of this mission

};//end of missions

class Params {
   class d_MainTargets {
       title = "Main Targets";
#ifdef __DEFAULT__
       values[] = {50,60,70,90,2,4,6,8,10,12,14,16,18,21};
       default = 8;
       texts[] = {"West Route","South Route","East Route","Complete, ordered","Random 2","Random 4","Random 6","Random 8","Random 10","Random 12","Random 14","Random 16","Random 18","Random 21"};
#endif

#ifdef __TT__
       values[] = {2,4,6,8,10,12,14,16,18,20};
       default = 8;
       texts[] = {"2","4","6","8","10","12","14","16","18","20"};
#endif

#ifdef __EVERON__
       values[] = {2,4,6,8,10,12,14,16,18};
       default = 8;
       texts[] = {"2","4","6","8","10","12","14","16","18"};
#endif
   };

   class d_TimeOfDay {
       title = "Time of day:";
       values[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};
       default = 7;
       texts[] = {"00:00","01:00","02:00","03:00","04:00","05:00","06:00","07:00","08:00","09:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00"};
   };

Edited by nuggetz

Share this post


Link to post
Share on other sites

You don't need to copy/paste parameters to the cfg. You need to enter the required one to the param1 or param2 area.

Remove the list of parameters from server.cfg .. you dont need them there.

Only have the below one. I entered the class name in param1-2-3 area. Lets see if that works. If it doesn't you'll need to find out the rank of the parameter and use that ..like param26=

class Missions
{
  class Mission01
  {
  template = co30_Domination_2_17A2_West_AI_OA.Takistan;
  d_WithMHQTeleport = 0
  WithTeleToBase = 1

  };//end of this mission

};//end of missions

and if it doesnt work then try this as they are the 6th and 7th parameters.

class Missions
{
  class Mission01
  {
  template = co30_Domination_2_17A2_West_AI_OA.Takistan;
  paramsArray[5] = 0
  paramsArray[6] = 1

  };//end of this mission

};//end of missions

also see http://community.bistudio.com/wiki/Arma_2:_Patch_v1.03.58899_Beta#How_to_add_multiple_parameters_to_your_MP_mission

Edited by Cross
changed params to paramsarray

Share this post


Link to post
Share on other sites
You don't need to copy/paste parameters to the cfg. You need to enter the required one to the param1 or param2 area.

Remove the list of parameters from server.cfg .. you dont need them there.

Only have the below one. I entered the class name in param1-2-3 area. Lets see if that works. If it doesn't you'll need to find out the rank of the parameter and use that ..like param26=

Assume I know nothing about this. Its still not clear whether or not I need to keep any of the original code that you posted in the config or not. You say remove the list of parameters from the server.cfg and I assume that means all the code you gave me in your first post... Is that correct? I guess you were just trying to tell me the names of the parameters, correct? And you pulled that code from deep within the Domi mission itself? I think I'm getting it now.

Edited by nuggetz

Share this post


Link to post
Share on other sites

You only need teh part below in the server.cfg .. of course modified as in my second post.

class Missions
{
  class Mission01
  {
  template = co30_Domination_2_17A2_West_AI_OA.Takistan;
  param1 =
  param2 = 
  };//end of this mission

};//end of missions

Yes I copied the parameters section from Domi to see how many are there and their names & values etc..

The problem is you need to enter

paramsArray=[1,0,2,80,0,2,1,4,.............]

after the template line above.

paramsarray should have all the parameters and values. There are like 40 parameters in domi so you need to have 40 values in the array separated with commas. I'm trying to avoid it at the moment.

Now the real problem is there are some switches which turns some parameters on/off and therefore the number of parameters is changing.

Say with ACE you have 42 parameters, without ace you have 39, in ranked ace you have 45 etc...and these switches are in the middle so if they change the relative position of that setting in the array changes too.

Also there is a piece of script in Domi that says if paramsArray is not defined, then use the defaults values.

If the above codes do not work, the easiest way is to open the Domi mission pbo and change the default values for those settings in the description.ext file so that it will enable say "teleport-to-base" option by default.

You'll need to re-pbo it and you'll need to do this for every domi mission and for every new version.

IF you are playing only one domination version, then editing the description.ext is the easiest solution.

Edited by Cross

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×