Jump to content

GRAW 2 Server setup file


Recommended Posts

There are 2 files that work together, this is the main one

sb_server_settings.xml the other is network xml. Any questions ask them here and stop the gaggle of threads on the GRAW2 server please. I will help answer your questions if you can not figure something out, but most is obvious. GRIN have included many comments and I can confirm they have made it so we/ you can edit and add features (as they promised).

If you ask a question I will edit the post and add the answer there and also in a reply post too. There are other scripts <!-- DEATH and DAMAGE --> (in multiplayer.xml)

This is the server settings file, similar to the old graw_server_yourserver.xml

but more powerful

===============================

<?xml version="1.0" encoding="ISO-8859-1"?>

<!-- Important note:

If you are adding something that need so be syncronised between the Server and the Klient

you have to add it in the following functions, and PACKET.

PACKET:

- from_server_gametype_settings <-- This is in settings/network.xml

FUNCTIONS:

- send_server_settings() <-- this is on the server side where the packet is "packed" and sent, script_network/gametype/gametype.dsf

- from_server_gametype_settings() <-- this is where the clioent recives the packet, script_network/gametype/gametype.dsf

-->

<stats_blocks>

<block name="server_settings">

<!-- Server settings -->

<var name="name" type="string" default="" /> <!-- this should be empty so that the localizer can get the right default name -->

<var name="port" type="number" default="16250" />

<var name="dedicated_server" type="boolean" default="false" /> (true or false /dedicated or not)

<!-- Ranked game options -->

<var name="ranked_game" type="boolean" default="true" />

<var name="clan_game" type="boolean" default="false" />

<var name="ladder_id" type="boolean" default="false" />

<!-- general gameplay -->

<var name="max_players" type="number" default="32" />

<var name="max_deaths" type="number" default="0" />

<var name="friendly_fire" type="boolean" default="true" />

<var name="game_mode" type="string" default="MPCoop" />

<var name="level" type="string" default="mp01" />

<var name="load_next_map" type="boolean" default="true" />

<var name="switch_sides" type="boolean" default="true" />

<var name="message_of_the_day" type="string" default="" />

<var name="auto_balance" type="boolean" default="true" />

<var name="auto_balance_limit" type="number" default="2" />

<var name="scan_for_cheats" type="boolean" default="true" />

<var name="start_condition" type="number" default="3" />

<var name="even_round" type="boolean" default="true" />

<!-- match/round -->

<!-- OLD, no longer used. (Minutes)

<var name="game_match_length" type="number" default="30"/>

-->

<var name="round_length" type="number" default="10" /> <!-- this is the round time we used in GRAW1 --> <!-- (Minutes) -->

<var name="match_length" type="number" default="15" /> <!-- this is the round time we used in GRAW1 --> <!-- (Minutes) -->

<var name="next_round_time" type="number" default="10" /> <!-- Time till next round will start, when stats is showing -->

<var name="match_start_time" type="number" default="5" /> <!-- time till match start, when starting condition is meet -->

<!-- Spawning -->

<var name="immortality_duration" type="number" default="6" />

<var name="spawn_time" type="number" default="15" />

<var name="spawn_on_side_switch" type="boolean" default="true" /> <!-- this defines if you are able to spawn when you change team -->

<var name="lock_spawn_time" type="number" default="45" /> <!-- (Seconds) Lock the player from being able to spawn -->

<!-- HUD and subsystem setup -->

<var name="has_xcom" type="boolean" default="true" />

<var name="has_tag_system" type="boolean" default="true" /><!-- True if the players should be enabled to tag. -->

<var name="has_tag_data_system" type="boolean" default="false" /><!-- The extended data about tagged units, name, class, rank -->

<var name="has_mp_map" type="boolean" default="false" />

<var name="update_markers" type="string" default="team" />

<var name="awa_distance" type="number" default="15000" /> (150m)

<!-- password -->

<var name="password_locked" type="boolean" default="false" />

<var name="password" type="string" default="" />

<!-- points -->

<var name="match_points" type="number" default="35" /> <!-- Points to win the match. In Seige, seconds to take over the siege zone -->

<var name="capture_time" type="number" default="5" /> <!-- In Seige, time in seconds to take over the siege zone -->

<!-- team killing .-->

<var name="punish_tk" type="boolean" default="true" />

<var name="teamkill_kick_limit" type="number" default="2" /> <!-- (Kills) After how many teamkills a player will be kicked -->

<!-- votes -->

<var name="vote_enabled" type="boolean" default="true" />

<var name="vote_ratio" type="number" default="50" /> <!-- ( % of all players ) -->

<var name="vote_time" type="number" default="20" />

<var name="vote_kick_starters" type="number" default="2" />

<var name="vote_map_starters" type="number" default="2" />

<!-- Camera -->

<var name="death_cam" type="boolean" default="true" /> <!-- (Deathcamera) 0=disabled, 1=friendly, 2=all -->

<!-- Gametype specifik -->

<!-- OLD VALUES should be removed, Wiking -->

<var name="win_condition" type="number" default="1" /> <!-- Win condition used in HH and Siege -->

<var name="mpcoop_timer" type="number" default="5" />

<var name="siege_time" type="number" default="5" /> <!-- Seconds (or points) needed to win in siege -->

<var name="swap_method" type="string" default="side" /> <!-- Can be "side" (the sides are changed) or spawn (only the spawnlocations are switched) -->

<var name="win_method" type="string" default="side" /> <!-- Can be "swap" or "old" -->

<!--var name="has_sides" type="boolean" default="true" /> <!-- -->

<var name="use_victory_points" type="boolean" default="true" />

<var name="show_teammates" type="boolean" default="true" />

<var name="show_player" type="boolean" default="true" />

<var name="show_supply" type="boolean" default="false" />

<var name="kill_score_a" type="number" default="1" /> <!-- This the normal score given to a team_a player for killing an other team player -->

<var name="kill_score_b" type="number" default="1" /> <!-- This the normal score given to a team_a player for killing an other team player -->

<var name="adv_scoring_a" type="boolean" default="false" />

<var name="adv_scoring_b" type="boolean" default="false" />

<var name="tk_scoring" type="boolean" default="false" /> <!-- This score is given if there are more than or equal to kill_limit_b enemies left -->

<var name="kill_score1" type="number" default="5" /> <!-- This score is given if there are more than or equal to kill_limit_b enemies left -->

<var name="kill_score2" type="number" default="3" /> <!-- This score is given if there are less than kill_limit_b enemies left -->

<var name="kill_score3" type="number" default="2" /> <!-- This score is given if there are less than kill_limit_c enemies left -->

<var name="kill_limit2" type="number" default="9" />

<var name="kill_limit3" type="number" default="4" />

<var name="ranking_system" type="boolean" default="false" />

<switching ON/ OFF TAGS>

<var name="minimap_player_marker" type="boolean" default="true" />

<var name="minimap_friendly_markers" type="boolean" default="true" />

<var name="minimap_enemy_markers" type="boolean" default="true" />

<var name="minimap_hh_slider" type="boolean" default="true" />

<var name="use_side_score" type="boolean" default="false" />

<var name="show_zoomed_markers" type="boolean" default="true" />

<var name="show_attachable_early" type="boolean" default="false" />

<var name="use_sides" type="string" default="two" /> <!-- "one", "two", "coop" -->

<var name="score_listing_type" type="number" default="0" />

<var name="reset_kills_per_rounds" type="boolean" default="false" />

<var name="timer_type" type="string" default="normal" /> <!-- "normal" is round and Match time. "mission" is one timer that counts up -->

<var name="match_is_one_round" type="boolean" default="false" /> <!-- this is only true in [GR] coop, else next map wont load -->

<var name="always_reload_map" type="boolean" default="false" /> <!-- this is only true in [GR] coop, we must reload the map to spawn the enemies-->

<var name="end_round_message" type="string" default="round" /> <!-- "round" will show the normal "round score". "deathmatch" will show deathamtch localized. If there is something else the text will be displayed as its written. this is for the modders.-->

<var name="adversarial" type="boolean" default="false"/>

<!--var name="spawn_method" type="string" default="timed" /> <!-- Can be "timed" or "select" -->

<!--var name="side_effect" type="string" default="efx_hh_zone_smoke" /> <!-- -->

<!-- Kick for idle, not implemented -->

<var name="auto_kick" type="boolean" default="false" />

<var name="auto_kick_time" type="number" default="240" /> <!-- ( Seconds ) -->

<!-- Maps -->

<var name="next_map" type="string" default="" />

<var name="map_cycle" type="string" default="" /> <!-- (Mapnames) A string with space separated map names, "mp01 mp02 mp05" -->

<!-- Invisible settings -->

<var name="coop_difficulty" type="string" default="normal" /> <!--This shall be removed and game_difficulty should be used instead-->

<var name="game_difficulty" type="string" default="normal" /> <!-- Use this -->

<var name="skip_insertion" type="boolean" default="false" />

<var name="fail_on_leader_death" type="boolean" default="false" />

<var name="max_ai_ghosts" type="number" default="3" /> <!-- (AI Players) Maximum AI controlled players -->

<!-- <var name="forced_spawn_time" type="number" default="60" /> --> <!-- (Seconds) Spawns the player after this time, even if he hasn't pushed "Ready". 0 = disabled -->

<var name="resupply_ammo_time" type="number" default="20" /> <!-- (Seconds) How long a player has to be inside a supplied zone before he receives new ammo -->

<var name="member_info_broadcast_interval" type="number" default="5" /> <!-- (Seconds) How often non-essential information about kills, deaths and score is sent to clients -->

<Lag time out>

<var name="max_move_without_ack_time" type="number" default="2" /> <!-- (Seconds) How long a player may keep moving without server verification. Lower will make it harder for cheaters and people with bad connections -->

<!-- (Players) How many more people on one team the server allows before forcing a change -->

<var name="both_side_ready_required" type="boolean" default="true" /> <!-- Players on both sides need to press the ready button before match starts -->

<var name="players_ready_required" type="number" default="2" /> <!-- (Players) How many people in total that has to be ready before match starts -->

<var name="allow_sidechange_under_match" type="boolean" default="true" /> <!-- (Players) How many people in total that has to be ready before match starts -->

</block>

</stats_blocks>

<!-- PICKING A PORT

Choose a port number that is registered for general use. Registered ports range from 1024 to 49151.

If you do not have a registered port to use, review the list of assigned registered ports and choose a port in the range 5001 to 49151 that

is not in use. Ports 1024 to 5000 are also registered, however operating systems use ports in this range for client programs.

Consider registering a port you choose to use.

Choose a port number that does not contain patterns or have a known meaning. That is, avoid port numbers that more likely to be used by

others because they are easier to remember.

Do not use ports 1 to 1023. These ports are reserved for use by the Internet Assigned Numbers Authority (IANA).

Avoid using ports 49152 through 65535. These are dynamic ports that operating systems use randomly. If you choose one of these ports, you

risk a potential port conflict.

-->

Link to comment
Share on other sites

There are some settings that seem to have the effect. For example...

<var name="kill_score_a" type="number" default="1" /> <!-- This the normal score given to a team_a player for killing an other team player -->

<var name="kill_score_b" type="number" default="1" /> <!-- This the normal score given to a team_a player for killing an other team player -->

Perhaps the comment for "kill_score_b" should be "This the normal score given to a team_b player for killing an other team player ".

BTW, thanks for starting this thread, viiiper. Good idea.

Link to comment
Share on other sites

Yes ARDelta, You are right, I spotted a syntax error in one of the script files but I think GRIN would of put it right, so I did not bother them. The comment miss print comes from what programmers like doing best (me too), CUT-N-PASTE, and I'm sure it was to be like you said. The value defining the amount of points given for a std KILL.

There are 2 other files that have alot of other data, like adjusting the damage, per bullet, per shot to body etc. but that is another thread for another day. This file is the dedicated server script setting file and functions can be added and passed both ways from SERVER-->CLIENT & back with the sister file network.xml. GRIN have mad a big change with comments and explanations on how to add functionality.

Link to comment
Share on other sites

<!-- team killing .-->

<var name="punish_tk" type="boolean" default="true" />

<var name="teamkill_kick_limit" type="number" default="2" /> <!-- (Kills) After how many teamkills a player will be kicked -->

As you know viiiper, this quoted item pleases me VERY much. thank you for pointing this out. this will clear good servers of worthless types quickly. but what about banning? hope Grin has the issue managed

Link to comment
Share on other sites

<!-- team killing .-->

<var name="punish_tk" type="boolean" default="true" />

<var name="teamkill_kick_limit" type="number" default="2" /> <!-- (Kills) After how many teamkills a player will be kicked -->

As you know viiiper, this quoted item pleases me VERY much. thank you for pointing this out. this will clear good servers of worthless types quickly. but what about banning? hope Grin has the issue managed

out of the box you can already kick, ban and kill a player :D Without digging and looking into the bundle file.

Link to comment
Share on other sites

<!-- team killing .-->

<var name="punish_tk" type="boolean" default="true" />

<var name="teamkill_kick_limit" type="number" default="2" /> <!-- (Kills) After how many teamkills a player will be kicked -->

As you know viiiper, this quoted item pleases me VERY much. thank you for pointing this out. this will clear good servers of worthless types quickly. but what about banning? hope Grin has the issue managed

multiplayer.xml

Full Ban

<string id="NM_mp_banned_header" value="Banned" />

<string id="NM_mp_banned_text" value="You have been banned from this server and are no longer permitted to play on the server" />

<string id="NM_mp_banned_help" value="Be sure to abide by server rules to avoid being banned" />

Temp ban

<string id="NM_mp_temporary_banned_header" value="Temporarily banned" />

<string id="NM_mp_temporary_banned_text" value="You have been banned by server administrator" />

<string id="NM_mp_temporary_banned_help" value="Be sure to abide by server rules to avoid being banned" />

Link to comment
Share on other sites

Buddy system from

menu.xml

<string id="multi_buddy_list" value="Buddy list"/>

<string id="multi_buddies_close" value="Close" />

<string id="multi_buddy_info" value="Buddy info"/>

<string id="multi_header_message" value="Enter your message"/>

<string id="multi_add_buddy_error" value="Error: can't add buddy !"/>

<string id="multi_message_add_buddy" value="Please let me add you to my PlayerSpy player list."/>

<string id="multi_deny_buddy" value="Deny"/>

<string id="multi_authorize_buddy" value="Authorize"/>

multi=multiplayer

Link to comment
Share on other sites

as graw /ban #4

By CD key (encrypted), by player name, by player I.P. any or all three

sample:

<ban hash_id="01869dcc0f1c138bxxxxxxxxxxxxxxxx9" name="YouDog" ip="xxx.xxx.xxx.xx8:37293" duration="0" date="2007-06-30 19:29" day="2455" time="19.483334" end_day="0" end_time="0" />

end=0 means forever and ever or 2456 would mean one day.

Link to comment
Share on other sites

  • 2 months later...
to make all players ready before launching game -

is that general gameplay -

start_condition = 2

i think nutlink told me that - question is how do we know that 2 means everyone ready up?

where are all these server settings written?

thanks

Search is your friend young padawan.

http://www.ghostrecon.net/forums/index.php...c=46902&hl=

Link to comment
Share on other sites

  • 3 weeks later...

interesting...

i believe pretty much any value listed in the sb_server_settings.xml could be placed into the dedicated_game_info.xml within the <gametype_settings> section. sorry if this is a well known fact.

i'm running a server and all of a sudden it started failing to load the next map, so i checked the server window and what do you know - next_map value was blank! i have no idea how that happened, but i added the line into the dedicated_game_info.xml, set the value to true and the server got updated! then i did that with message of the day, and spawn lock time. pretty neat.

Link to comment
Share on other sites

interesting...

i believe pretty much any value listed in the sb_server_settings.xml could be placed into the dedicated_game_info.xml within the <gametype_settings> section. sorry if this is a well known fact.

i'm running a server and all of a sudden it started failing to load the next map, so i checked the server window and what do you know - next_map value was blank! i have no idea how that happened, but i added the line into the dedicated_game_info.xml, set the value to true and the server got updated! then i did that with message of the day, and spawn lock time. pretty neat.

Hi th33f,

yes, you can put allmost all the values from the "sb_server_settings.xml" in your "dedicated_game_info.xml". There is some settings that will be ignored depending on the current gamemode and I think there was one or two that could mess up the gamemode if you give it the wrong value. Dont remeber exact what it was, had the problem a couple a month ago. But I remember it was kind of obvious. (Something like switch_side="true" in a Deathmatch with only one team) =)

// Mattias Wiking

Link to comment
Share on other sites

Question:

If we set this to false:

<var name="has_tag_system" type="boolean" default="true" /><!-- True if the players should be enabled to tag. -->

Would that eliminate they enemy tagging bug after a /restart_match? It might disable the tagging in RvsA, but that's not a deal breaker. <_<

Edited by BOTA:X
Link to comment
Share on other sites

Question:

If we set this to false:

<var name="has_tag_system" type="boolean" default="true" /><!-- True if the players should be enabled to tag. -->

Would that eliminate they enemy tagging bug after a /restart_match? It might disable the tagging in RvsA, but that's not a deal breaker. <_<

I just checked the code quick but as it looks it only enable/disable when players is tagging each other.

I'll look for the "tag players in spawn" and see if its possible to disable. Didnt write that part so im not 100% sure how it works.

// Mattias Wiking

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...