The Dynaverse 3 Server Kit
By Scott Brown aka: Captain KoraH
Please note that this server manual will now be outdated, this is just a general
info page
if you need more specific details then STG reccomends that you visit
www.dynaverse.net
1. Overview
1.1 The server kit
1.2 Campaign maps
1.3 Server settings files
1.4 Validated client files
1.5 Ship Specs
1.6 Mission Scripts and the Campaign1.mct file
1.7 CommonSettings files
1.8 Saves and backups
1.9 Log Viewer
2. Basic Server setup
2.1 Open ports
2.2 Edit server name and description
2.3 Edit Chat name
2.4 Start the server
2.5 Stopping the server
3. Server logs
3.1 The Log Viewer
3.2 The text Log file
4. The Campaign1.mct file
4.1 Campaign1.mct settings
5. The CommonSettings files
5.1 General info
5.2 Chat.gf
5.3 RaceNames.gf
5.4 OfficerNames.gf
5.5 ShipNames.gf
5.6 Rank.gf
5.7 ItemRules.gf
5.8 HullItems.gf
5.9 WeaponItems.gf
5.10 BridgeItems.gf
5.11 PowerItems.gf
5.12 ShieldItems.gf
6. The Specs files
6.1 DefaultCore.txt
6.2 DefaultLoadOut.gf
7. AI.gf
7.1 Controlling creation of AI ships
7.1.1 How many AI's are created?
7.1.2 How fast are the AI's created?
7.1.3 What type of ship will each AI get?
7.2 Controlling officer availability
8. Assets.gf
9. Character.gf
9.1 Disrepute payback
9.2 Maximum players on the server
9.3 Moving defeated players away from the battle
9.4 Starting Prestige
9.5 AI names
9.6 Planet names
9.7 Duplicate player names
9.8 Starting Ships and officers
10. Chat.gf
11. Database.gf
11.1 Campaign database back files
11.2 Using SQL
12. Debug.gf
13. Economy.gf
13.1 The Shipyards
13.1.1 What determines the cost of a ship?
13.1.2 How many ships will be built by each empire?
13.1.3 Building "Big Ships"
13.1.4 The normal shipbuilding process
13.1.5 Economic thresholds
13.1.6 How many ships will be visible in the shipyards?
13.1.7 How long it takes to get the ship you bid on
13.2 The cost of it all
13.3 Rebates?
13.4 Supplies
14. Gamespy.gf
15.Goal.gf
15.1 Goal server info in the logs
15.2 AI activities
15.2.1 Returning to Base
15.2.2 General AI Activities
15.2.3 Specific AI assignments
16. HexValues.gf
17. Language.gf
18. MetaMap.gf
18.1 Map movement
18.2 Placing bases on the map
18.3 Politics
18.3.1 Variable Political tension
18.3.2 Starting political tensions
18.3.3 Miscellaneous [Politics] settings
18.4 Map hex Defense Values
18.5 Economic reports
18.6 Campaign victory conditions
18.7 AI birthplace
19. MissionGoals.gf
20. MissionMatching.gf
20.1 Checking for a match
20.2 Enabling PVP
20.3 Game speed
20.4 Adding custom mission variants
20.5 Modifier Based Difficulty Setting
20.6 Space backdrops
20.7 Preventing Cheating
20.8 How long to wait for mission launch
20.9 Forfeit prestige bonus
20.10 Battles between AI's
20.11 Fleet limits
21. News.gf
22.Score.gf
22.1 What happens when you die?
22.2 Starting Glicko ratings for humans
22.3 Rating shift
22.4 Bases and hex DV
22.5 Officer skill
23. Ship.gf
24. Time.gf
1. Overview
1.1 The server kit
The server kit itself can be unzipped and installed into any location on the
host computer. When you
unzip and extract the contents of the server kit zip file, the process will
create a new folder called
"03_07_03_ServerKit_1.01Beta2_Build_504" that contains all the necessary files.
Starfleet Command
III does not need to be installed on the computer that will run the D3 server.
The server kit can be
installed in any location on the computer that will run the server. The server
kit zip file contains all
the files needed to run a Dynaverse 3 online campaign.
1.2 Campaign maps
The maps used by the server are located in the Assets/Maps folder of the server
kit. Maps can be
edited and new maps created using the Artifex map editor available at
http://area51.alienmedia.net/downloads/SFC3_MapEditor.zip Editing maps with the
Artifex editor is
pretty easy. Click on the hex shape on the menu bar, and that will enable two
menus that allow you to
set the properties of the map hexes (ie: select "Economic" and "10" then click a
hex to set the economic
value of that hex to 10). Choose Regions to designate empires' territory. There
are 6 different types
of asteroids and Nebulae, and as far as I can tell they only look different on
the hex map, they have
no effect on what the nebulae or asteroids look like in missions. The same can
be said for the various
different Black holes, Homeworlds, Core worlds and Colonies. The bases are a bit
tricky. Placing
anything smaller than a base station is not advised, as the game tends to do
strange things when you
place listening posts and defense platforms. Starbases, Battlestations, Base
Stations and Shipyards
seem to work fine though. Also be aware that the server has a maximum map size.
If you make a
map larger than 50x30 it may not load. Another good thing to know is that your
server will not
work if you set any hexes to a very high Strength (DV) or Economy. I suggest a
maximum of 100.
Impedance is a multiplier to the speed players can travel through a hex. It's
usually common to
apply a higher Impendence value (like 1.2) to asteroid hexes and nebula hexes,
and sometimes
to planets or bases (to simulate heavy traffic). The opposite could be true of
some planets and
open space, where travel is either well routed or there are no navigational
hazards, and the
Impendence could be lower than normal (like 0.75 or even 0.5). Make sure each
empire
has at least one base or planet, and it's usually a good idea to give them a
homeworld too.
1.3 Server settings files
The server kit settings are contained in 18 .gf files that are located in the
Assets/ServerProfiles
folder. There are other folders in the ServerProfiles folder that contain
settings for test servers and
other purposes, but for running an online campaign you only need to modify the
.gf files located in
the ServerProfiles folder.
1.4 Validated client files
All the files that the server will CRC check against the players who try to
connect to your server are
located in the Assets/ValidatedClientFiles folder. Any files you place in this
folder are looked for on the
player's computer. If a player trying to connect to your server does not have
one or more of the files
in this folder, they will not be able to connect to your server. Also, if you
have made any modifications
to any of the files located in this folder, the players must have the modified
files as well. By default the
game checks the "Meta" mission scripts and the DefaultCore.txt file. The
DefaultLoadOut.txt file is not
validated because the game will use the DefaultLoadOut.txt file located on the
server, not on the player's
computer.
1.5 Ship Specs
The specifications for all ships, stations, planets ect are contained in the
DefaultCore.txt and
DefaultLoadOut.txt files. For Dynaverse 3 online campaigns, the game will use
the specs files
that you have installed in the Assets/Specs folder of your server kit.
1.6 Mission Scripts and the Campaign1.mct file
The missions that are offered in your online campaign are contained in the
Assets/Scripts folder. Also
located here is the Assets/Scripts/Campaigns folder, which contains the
Campaign1.mct file.
1.7 CommonSettings files
The Assets/CommonSettings folder contains the CommonSettings files that your
server will use. These
files are also looked for on the player's computer when they try to connect to
your server.
1.8 Saves and backups
The Saves folder contains the Autosave, Backup and ExitSave folders, as well as
a copy of the starting
database. Every time you start the server, it will look for the ExitSave folder,
and if present, it will try
to load the database located there. The database is a file named Sfc3Spd.sds. If
you specify your server
to save an "AutoSave" of the database, it will be located in the
Saves/Backup/AutoSaves folder by default.
1.9 Log Viewer
The logviewer program is located in the LogViewer folder. If you specify the
server to save a text log file,
it is saved in the root folder of the server kit, not in here.
2. Basic Server setup
2.1 Open ports
Make sure the following ports are open so the server can properly communicate
via the internet:
tcp 26100 - 26110
udp 2302 - 2400
tcp 27100 - 27110
udp 27100 - 27110
tcp 8085 and 6073
udp 8085 and 6073
2.2 Edit server name and description
Open the Campaign1.mct file in Notepad or any text editor. Where it says:
Name="Dynaverse3"
Description="REMEMBER! Change the Name and the Description BEFORE starting a
server with this kit.
Thanks!"
Change "Dynaverse3" to whatever you want to name your server, examples include
"The Neutral Zone" and
"Dominion Wars". Make sure that whatever you type here you keep the parenthesis
("") around your server
name. You must also change the Description to something other than the default
text. Type whatever you
want in here, to describe your server to the public. Examples include notes
about your campaign or the URL
to your website.
2.3 Edit Chat name
Go to the Assets/ServerProfiles/Chat.gf file and look for the value:
NickName="SFC3N". You need to
change this value to something more personalized, since your server's chat
nickname cannot be the same
as another server's.
2.4 Start the server
Execute the program ServerPlatform.exe located in the root of the server kit.
Select option 2
_CentralSwitchPlusAllServers to start the server.
2.5 Stopping the server
If you want to stop the server later, hit any key to bring up the menu and
select option 1 Shutdown.
If you stop the server without performing this step, the server will not save
the current database, and
the next time you choose to run the server it will load the last Exit Save,
which could be hours days
or even weeks old depending on how long your server has been up. The server only
does an "exit
save" when you shut it down properly with option 1.
3. Server Logs
3.1 The Log Viewer
There is a simple filter system. If you click View > Set Filter an edit box will
come up. You can enter any
RegEx (Regular Expression) in there and it will filter the output. It's still
rather crude and untested; if you
enter an expression that is not a RegEx then it will crash. To clear the filter
just enter an empty string
or ".*" It will only display 1000 elements. A log file is always created, it is
given the date the log file
was created and it is placed in the same directory LogViewer.exe is run from.
The Logviewer is useful
for viewing information as it happens.
3.2 The text Log file
You can also make the server create a text log file in addition to or in place
of using the LogViewer.
To do this, open the Assets/ServerProfiles/Debug.gf file in Notepad. Look for
the section called [Log].
It looks like
this:
[Log]
LogToLogViewer = 1 // (1)
LogViewerName = "LogViewer" // "LogViewer"
LogToConsole = 0 // (0)
LogToDebugOutput = 0 // (0)
LogToEventViewer = 0 // (0)
EventViewer = "" // Machine Name ("meta1")
LogToFile = 0 // (0)
LogFileName = "logfile.log"
Here you can specify for the server to create a text log file by changing the
setting "LogToFile= 0" to
"LogToFile= 1". you can also specify the filename of the log file. The log file
is created in the root of the
server kit when you start the server.
4. The Campaign1.mct file
4.1 Campaign1.mct settings
This file is used to determine the basic settings for your campaign, such as
which missions will be
offered, which map the server will use, what the difficulty level of your server
will be, which races are
playable and what the password to your server is, if you want one.
EarlyMapName="MediumMultiMap.mvm"
MidMapName="MediumMultiMap.mvm"
LateMapName="MediumMultiMap.mvm"
These settings are to specify a different map for each era. Era's are not really
enabled in SFC3. I suggest
you leave the setting Era=0 alone, so whatever map name you specify in
EarlyMapName will be used.
It is assumed that a map with the matching name has been created and stored in
the Assets/Maps folder.
DifficultyLevel=2
This setting determines the overall difficulty level of your server. Difficulty
level effects a lot of things in the
game such as the price of new ships, the cost of repairs and how hard the
missions are.
TriggerMission=""
TriggerPrestige=0
These settings are only used for the single player Dynaverse. They determine
when the storyline
campaign is started.
[Missions]
1="Meta_Scan.scr"
2="Meta_DistressCall.scr"
This list determines which missions your server will offer players. All these
missions must be located in the
Assets/Scripts folder. Don't forget to put the file extension at the end of the
filename!
[Races]
0=0
1=1
2=2
3=3
This setting determines which races will be playable in your campaign.
0=Federation, 1=Klingon, 2=Romulan
and 3=Borg. To make only 3 races playable, simply delete one of these lines.
5. The CommonSettings files
5.1 General info
The cost of the items is modified by the server difficulty setting in
Campaign1.mct and Economy.gf.
Campaign1.mct sets which difficulty setting you're using, and Economy.gf sets
what the cost multiplier
for each difficulty level is. The title and description of the items cannot be
changed by the server. The
"Health" value of each item is the amount of damage it can take.
5.2 Chat.gf
This file basically controls the colors of some of the in-game text. It is not
advised to change any of these
settings.
5.3 RaceNames.gf
This file lists, in a specific order, the names of the various races in the
game. The Long names may be
edited but the short names must all stay as they are or the game will not work
properly.
5.4 OfficerNames.gf
This file contains all the names of crew officers that the server will use to
name the officers that you see
in the shipyards and planets in the game. Names are listed by race.
5.5 ShipNames.gf
This file lists all the possible names of ships during the campaign, by race.
Players can edit the name of
their own ship in the Supply Docks screen in the game.
5.6 Rank.gf
This file controls what the names of the various ranks are, and how much
prestige it takes to earn that rank.
The rank names can be edited to whatever you want. Make sure that the prestige
needed to attain the first
rank is always 0.
5.7 ItemRules.gf
Here you can edit weather technology from one race can be used on another race's
ships. On the player's
computer, this file also determines what ship the Skirmish mode loads up by
default.
5.8 HullItems.gf
This file sets the cost, mass, "health" and race for all the Armor, Tractor
Beams and Transporters in the
game. The "Rating" value of the Transporter is how many boarding parties it can
transport in one activation.
5.9 WeaponItems.gf
Here you can set the cost, mass, "health" and race of every weapon in the game,
as well as setting how
much power it takes to charge and how much damage it does. Energy and Damage can
be decimal
numbers, but all the other settings MUST be whole numbers.
5.10 BridgeItems.gf
This is where you set the properties of the computers for all race's ships, plus
the Klingon and Romulan
Cloaking devices. Changing the RangeIndex of the computers changes their
scanning range, and has no
effect on the range of the ship's weapons. The LockBonus value is not used.
5.11 PowerItems.gf
This is where you set the properties of the warp cores, thrusters and impulse
drives for all races. Warp
core power is used for Shields, weapons, tractor beams and even scanners. By far
the most power is
used by weapons and shields. Most of the time you can barely tell that the
tractor beam and scanners are
using an power at all, and they only use it while switched on. Note that the
Thrusters have their Health
value commented out. That is because they cannot be targeted and never take
damage.
5.12 ShieldItems.gf
This is where the properties of the shields of each race may be edited. the
"efficiency" value is a factor
of how much power it takes to generate the listed value of shield strength. the
formula used to determine
exactly how much warp power is used to power the shield is: strength divided by
efficiency rounded off
to the nearest hundredth.
6. The Specs files
6.1 DefaultCore.txt
This file contains all the information regarding the ships statistics and
specifications. Things such as
how much space for engines, weapons and shields each ship has, as well as how
large the ship's
"sensor profile" is (ie: how hard it is to hit) and information regarding the
ships weapons and firing
arcs, how many marines, mines and shuttles the ship carries, and weather it has
enough bridge items
spaces to mount a cloaking device. Details on editing this file are beyond the
scope of this document,
but suffice to say that it is a tab-delimited text file that is easily opened
and edited using a spreadsheet
program like MS Excell.
6.2 DefaultLoadOut.txt
While the DefaultCore.txt file contains information like how much of something a
ship can carry,
and how many weapons the ship has, this file determines exactly what type of
items the ship will
come equipped with, both when flown by the AI and when the player buys the ship
from the
shipyard. Which items you mount on the ship has a lot to do with how expensive
the ship is in the
shipyards, as the cost value for each item is listed in the CommonSetings files,
and the costs for
each piece of equipment is cumulative. The total cost for everything is modified
by the difficulty
setting on your server, and the overall cost of each class of ship is modified
by the Economy.gf
file. Like the DefaultCore.txt file, this file is a tab-delimited text file.
While the details of editing this
file are beyond the scope of this document, you should know that any changes you
make in this file
that result in a ship being equipped with more mass than the DefaultCore.txt
file says it can will result
in the ship being omitted from the shipyards and unavailable in the game. The
name of each ship,
and the reason it was omitted are listed in a file called "InvalidShips.txt"
which is located in the root
of the server kit and is re-written each time the server kit is run.
7. AI.gf
7.1 Controlling creation of AI ships
7.1.1 How many AI's are created?
First, to control the number of AI ships each empire creates, you can either set
this to be a set
number of ships, or you can have the number of ships each empire creates be
based on the
empire's economy. To use a set number, just set the MaxAIsPerEmpire value to the
number of
AI ships you want each empire to have.
If you want the number of AI's per empire to be based on the empire's economy,
then set the
MaxAIsPerEmpire value to -1, and then look for the
TargetPopulationToEconomicRatio value.
The total economy of each empire is multiplied by this number to get the number
of AI's that the
empire will create. The default setting of 0.09 for instance, means that each
empire will produce
a number of AI's equal to 9% of it's total economic points. The number of
economic points an
empire has can change over the course of a campaign, as it captures enemy hexes
or loses hexes
to an enemy empire. The economy values of the hexes are set on the campaign map,
which is
discussed in section 1.2.
7.1.2 How fast are the AI's created?
You can change how quickly the AI ships are created by changing the
MaxAIsToCreatePerTurn
value. This number is how many AI's the server will try to create for each
empire until that empire
reaches it's maximum.
7.1.3 What type of ship will each AI get?
The [CreateShipClassOdds] sections set what the chances are of an AI being given
each
different class of ship. The number you assign to each class is factored against
the total of all the
numbers to get the chance of that class being given. For instance, if you add up
all the numbers
in the [CreateShipClassOdds/0] section, it adds up to 82. Therefore, the actual
chance of a
Battleship being built is less than 1%, and the chance of a Frigate being built
is about 16%.
[CreateShipClassOdds/0]
Freighter = 25
Frigate = 20
Destroyer = 15
LightCruiser = 10
HeavyCruiser = 5
HeavyBattlecruiser = 2
Dreadnought = 2
Battleship = 1
The 0, 1 and 2 at the end of the [CreateShipClassOdds/0] stands for what
difficulty level this
set of figures is used in.
7.2 Controlling officer availability
In the [Officers] section is a value called MaxInReviewByClient. This value is
how many
officers you will see in the officer screen when you go to a planet or base and
click on Officers.
The OfficerPopulationRatio number determines the overall number of officers that
each race
has in it's "officer pool". This number is multiplied against the number of
human players on the
server to get the total number of officers in each race's "officer pool". While
one race may
have 300 total officers in it's pool, only the number in MaxInReviewByClient
will be visible
in the officer screen.
You can also set how many officers are available at each type of installation.
The
[Officers/MinAtBase] values set the minimum number of officers available for
purchase at
each place, but remember that while there may be 16 officers at your Starbase,
you can
only see the number set in MaxInReviewByClient at one time. This is so if you
take some
officers away from the Starbase, there are others assigned to it to fill the
screen back up
again, but there is not an unlimited number of officers! The
[Officers/AvgAtBase] value is
how many of the officers that will be given to each base of each type first, so
that hopefully
all the bases have at least some officers available. If there are still more
officers left to assign
after all bases and planets have been given this allotment, then the server will
go around to
all the bases again and fill them up until they reach the [Officers/MaxAtBase]
value.
8. Assets.gf
This file contains some basic game information that should not be edited, such
as the path
to the various files the server needs.
9. Character.gf
9.1 Disrepute payback
The value set in DisreputePaybackRate is a percentage of the prestige earned
that goes
towards paying off the player's disrepute. Since it's a decimal number, 0.1 is
10% and
1.0 is 100%. The default setting of 5.0 means that the player's earned prestige
is counted
500% towards their disrepute.
9.2 Maximum players on the server
The PlayersMax value is the total number of players that will be allowed to have
an account
on your server. PlayersLoggedOnMax is the total number of human players that can
be
logged on to your server at the same time. This number has a lot of effect on
how well your
server will run, as too many players can easily slow down the server to a crawl.
The default
setting of 128 players is very optimistic. You can get rid of accounts of
players who have
stopped playing on your server with the PlayerMaximumInactivity setting. When a
player's
account goes beyond this number of days without logging on to the server, their
account is
deleted.
9.3 Moving defeated players away from the battle
By default the server will move a player to an adjacent hex if you are defeated
in a tactical
battle. The VictoryLevelToShiftAHexAfterBattle value determines when this
occurs. Here
is a list of the possible values:
// Levels:
// 3= Draw, Defeat, Devastating Defeat will move them
// 2= Defeat, Devastating Defeat will move them
// 1= Devastating Defeat will move them
// 0= Do not move the character at all
9.4 Starting Prestige
The three [Create] values are for setting a different starting prestige for each
difficulty level.
Note that a newly created account will have more than this many prestige points,
because
there is also a modifier in the Ship.gf file called PrestigeModiferOnShipGrant
that changes
the starting prestige, since a newly created player on the server is
automatically given the
starting ship.
9.5 AI names
The [Create/Federation] names listed will be used by the server as ship captain
names.
The server will choose a name at random from this list to give to each AI ship
captain.
There is no limit to how many names you can list here. The AI crew officer names
are
not drawn from this list, instead they are drawn from the OfficerNames.gf file
in the
Assets/CommonSettings folder.
9.6 Planet names
All of the planets that you placed on your map are given a name from the
[CreatePlanet]
list. There is no way to specify which planet will be given which name as the
server picks
a name at random for each planet. You may even see more than one planet with the
same
name. The longer the list of names, the less likely there will be two planets
with the same
name.
9.7 Duplicate player names
You can choose weather to allow more than one human player to have the same name
on your server with the AllowDuplicateLogOn setting. 1= yes, 0=no.
9.8 Starting Ships and officers
The ship that each player is given when they first create their account is
listed in the
[StartingShips] sections. The names used here are from the "SubName" column in
the DefaultLoadOut.txt file. Don't forget any apostrophes in the Klingon names!
[StartingShips/0] is the list of starting ships used for difficulty setting 0,
and so on.
Within each list, 0=Fed, 1=Klingon, 2=Romulan and 3=Borg. The ship names must
be in that racial order. It is important to note here that within the
DefaultLoadOut.txt
file, like any other component, each ship is given officers as well. If the
starting ship
you select is given "blank" officers (ie: OFFICER:TACTICAL: ) then the player
will
be given a set of random officers with randomly generated skill levels. If the
starting
ship you select comes equipped with skilled officers, which look like this:
OFFICER:HELM:PAULI:14:24:14:Legendary:6. Legendary:6. Legendary:6. ect ect...
Then the player will also receive those officers with his ship. This can be bad,
since
the player can immediately sell the officers for cheaper ones and gain a lot of
prestige
points, and it also detracts from the fun of watching your officers gain skill
points as
you progress through the campaign. It is also quite useful for testing various
ship
loadouts with legendary officers to see how they will handle when the players in
your
campaign have finally earned legendary officers.
10. Chat.gf
Go to the Assets/ServerProfiles/Chat.gf file and look for the value:
NickName="SFC3N".
You need to change this value to something more personalized, since your
server's chat
nickname cannot be the same as another server's. The rest of the data in this
file should
not be tampered with.
11. Database.gf
11.1 Campaign database backup files
The first rule of running any server is "1. Always keep a backup!" The path
specified
in "Path" is the path, relative to the ServerPaltform.exe file, of the active
database.
This should probably not be changed. BackupPath is where the server will save a
backup of the database. The AutoSaveFrequency is the number of turns between
"autosaves", which are additional backup files that are saved more frequently
than
Backups. The default value of 5 here, combined with the default value of 120000
in
the MilliSecondsPerTurn setting (120000 milliseconds = 2 minutes) in the Time.gf
file
makes the server do an AutoSave every ten minutes. If you increase this
frequency
you will notice a drop in server performance, but you will always have a more
recent
backup. If you decrease this frequency you may see an improvement in server
performance, but if something should go wrong (your power goes out or something
similar that stops the server without doing a proper shutdown) your last save
could be
hours or even days old. AutoSaveDateTimeStampedRate refers to yet another
backup of the database (you can NEVER have too many backups!) that actually
is created in a new folder that is named with the date and time the backup was
created. The default setting of 6 means that every 6th AutoSave is stored in a
separate folder that has a name like this:
"2003-10-19_1915"
This date is summarized as: "YYYY-MM-DD_HHMM" where the time of
"1915" is in the 24 hour military time (7:15pm). Since the default value is 6,
and the
default AutoSaveFrequency is is every 10 minutes, then the default
AutoSaveDateTimeStampedRate is once every hour (6 x 5 ten minute turns =
60 minutes). Setting the value to 0 means that no "timestamped" save will be
created.
11.2 Using SQL
By default the UseSQL value is 0, which means the server will use a flatfile
database instead of SQL. While much greater functionality can be had when using
SQL, it is extremely unstable when used on servers with more than 5 players. I
suggest this setting be left at 0. Since I do not recommend using a SQL database
the SQL settings in Database.gf should be ignored.
12. Debug.gf
The function of most of the settings here are unknown and should not be
tampered with. The [Log] section however can be extremely useful and I strongly
suggest that you keep a log. All this information is covered in section 3.
13. Economy.gf
13.1 The Shipyards
13.1.1 What determines the cost of a ship?
The cost you pay for a ship in the shipyards is effected by a number of things.
First,
the DefaultCore.txt file lists a base cost for the bare hull of the ship. Then,
the
DefaultLoadOut.txt file lists all the equipment that comes with the ship, and
the prices
of all those items (from the various CommonSettings files) are added to the base
hull
cost. Then add to that the [Cost/Difficulty] modifier from the Economy.gf file.
The
default setting for difficulty level 2 is 1.1, which means all prices of
everything in the
game are multiplied by 1.1. Multiply your subtotal so far by this number, but
you're not
done yet! The [Cost/Ship/ClassType] modifiers are also applied. The default
setting for
a Heavy Cruiser class ship is 0.7, which means the running subtotal cost of a
Heavy
Cruiser is finally multiplied by 0.7 to get the final cost of the ship in the
shipyards.
However, the MinimumBidFactor value is a minimum bid you can make for a ship,
which is regardless of the actual totaled value of the ships.
13.1.2 How many ships will be built by each empire?
The total number of ships to build is based on the total number of players that
are
logged on the server at the time. The PlayerModifierStep value is used to
increase
or decrease the "budget" available per a given number of players logged on at
the
time the shipyards build. The number you put in PlayerModifierStep is used to
figure a ratio which is applied to the total economy of the empire to get a
final
number which is the "production budget" for that empire. For example, if
PlayerModifierStep is set to 20, and there are 10 players online, the resulting
ratio
is 50%, so the production budget of all the empires is 50% of their total
economy.
If there are only 5 players online, the budget is only 25% of the empires total
econ.
13.1.3 Building "Big Ships"
First, the server checks the BuildBigShipFrequency number. If the current turn
number is
divisible by this number, the server will try to build a "Big Ship" (anything
larger than a DD)
before the normal build process. The default value for this number is 3.
13.1.4 The normal shipbuilding process
[Cost/Ship/Build] is the relative cost of building a ship of each hull type:
[Cost/Ship/Build]
Shuttle = 0.01
Freighter = 0.03
Frigate = 0.20
Destroyer = 0.15
LightCruiser = 0.15
HeavyCruiser = 0.10
HeavyBattlecruiser = 0.10
Dreadnought = 0.10
Battleship = 0.10
ListeningPost = 0.10
Shipyard = 0.10
BaseStation = 0.10
BattleStation = 0.10
StarBase = 0.10
The less expensive a hull type is, the greater it's chance of being produced
when it is
chosen by the server. The server chooses which ships to build by a random die
roll
of a 33 sided dice, and adds a modifier number from 1-5 based on the relative
size
of the empire's economy. The total is capped at 33. The rolls for the different
hull
classes are:
1-8 FF
9-14 DD
15-20 CL
21-25 CA
26-29 BCH
30-32 DN
33 BB
When a hull class is determined, the server subtracts the [Cost/Ship/Build]
value
for that hull class from the empire's budget. If the empire does not have that
much
left in it's budget, the server rolls again. It continues to roll until the
NormalBuildTriesBeforeGiveUp value has been reached. The default value for that
setting is 10.
13.1.5 Economic thresholds
The BuildBaseEconomicThreshold and BuildBigShipEconomicThreshold are set as a
relative economic strength of 0-5. An empire must be above this level for it to
be able
to build these items.
13.1.6 How many ships will be visible in the shipyards?
The MaximumInReviewByEmpire value is how many ships and bases will be available
for purchase at any one time in the shipyards, even if the empire built more
ships than that.
The MaximumAge value is how long each ship stays in the shipyards before it is
scrapped
(deleted).
13.1.7 How long it takes to get the ship you bid on
The TurnsUntilClose value sets how many turns the player must wait to get the
ship he has
the highest bid on. The default number is 3, which means a player must wait 6
minutes to get
the ship he has bid on, unless another player outbids him first.
13.2 The cost of it all
The [Cost/Difficulty] setting is a modifier applied to all prices of everything
in the game.
You can set this cost modifier to a different number for each difficulty level.
13.3 Rebates?
The CanBenefitFromDowngradingShip value is for giving the player back the
difference in
prestige points if they purchase a ship that costs less than their current ship.
It also applies when
a player removes some equipment from their ship to get back the prestige points
for that item.
13.4 Supplies
The [Cost/Ship/SupplyDock] numbers are the cost in prestige points for each item
a player
may purchase in the supply dock, including repairs. The player cannot "trade in"
their ship, nor
can they purchase missiles, fighters or spare parts. This value is modified by
the [Cost/Difficulty]
setting.
14. Gamespy.gf
As with some other server profile files, these values should not be altered.
15. Goal.gf
15.1 Goal server info in the logs
With the ViewGoalActivity and ReportInterval variables you can set how the goal
server
information is reported in the server logs.
15.2 AI activities
15.2.1 Returning to Base
When any AI sustains SystemRepairPercentage or HullRepairPercentage amount
of damage, they will cease whatever they are doing and return to the nearest
base for
repairs before returning to their previous activity.
15.2.2 General AI Activities
The various [GeneralActionOdds] variables are all % chances that an AI will take
the
stated action when presented with the stated situation. Care should be taken
with these
settings as some of them can have detrimental effects on a campaign if not
properly
managed.
15.2.3 Specific AI assignments
You can exercise a great deal of control over how each empire will act during
your
campaign by modifying the [ScenarioOdds] settings. Like the
[CreateShipClassOdds]
from AI.gf, the number you assign to each assignment is factored against the
total of all the
numbers to get the chance of that assignment being given.
[ScenarioOdds/Federation]
"NoScenario" = 600
"InternalPatrol" = 300
"BorderPatrolDefense" = 200
"BorderPatrolOffense" = 100
"Offense" = 070
"OffensePlanet" = 010
"OffenseStarbase" = 030
"DefendPlanet" = 200
"DefendStarbase" = 150
"DefendBorder" = 200
"ExpandTerritory" = 100
"DeliverStarbase" = 002
"DeliverBattleStation" = 001
"DeliverBaseStation" = 002
"DeliverWeaponsPlatform" = 003
"DeliverListeningPost" = 005
"HuntEnemy" = 020
You can control how each empire will act by setting the odds for them to do
things
like defending their borders or seeking out enemies to attack. Also, the odds of
an
AI trying to deliver a base are included here. The base must be available in
that
empire's shipyards for the AI to perform that assignment. Note also that if your
empires only have a few bases or planets, and the chances of the "DefendPlanet"
or "DefendStarbase" assignments are high, you will see a lot of AI's just
sitting on
the handful of bases and planets instead of going out and getting into a fight
with your
players (which is generally what the players want!). On the other hand, making a
few
of the AI's hang around the bases and planets ensures that the players will be
able
to find some when they go looking for a wingman.
16. HexValues.gf
These variables are not used.
17. Language.gf
The only purpose of the file is to set what language the server uses. Under
[Settings]
English = 1
If this is set to English = 1 then the server uses English. Otherwise it uses
German.
These are the only languages supported.
18. MetaMap.gf
18.1 Map movement
The [Movement] settings determine how far and how long it takes to move on
the map. Radius can be set to a number higher than 1, allowing players to move
more than 1 hex on the map with a single move. This may be useful for larger
maps. MovementDelayInMilliseconds is how long it takes the movement que bar
to complete when a player moves on the map. This length of time is multiplied by
the Impedance value for the arrival hex and the departure hex. The
CarryingStarbaseDelay setting is how long it takes to move while carrying a
base of any type. Generally you want this to be longer than the normal movement
delay. The WalkRate value is a "break time" between movements on the map.
18.2 Placing bases on the map
The UnlimitedBasesInHex setting allows players to drop more than one base in a
a single hex. This can be useful for increasing the Defense Value of surrounding
hexes. The MinNearbySameRaceHexes is a way you can control where players
can place a base on the map. The number is how many adjacent hexes must be
controlled by the player's empire for a base to be placed in a hex. If this is
set to
0 then bases may be placed in a single hex that is surrounded by enemy hexes. If
this is set to 6, then bases can only be placed in hexes where the player's race
controls all adjacent hexes. In campaigns that use the Area of Operations (or
AO)
rules developed by Chris "SghnDubh" Condon, this setting can make a great deal
of difference.
18.3 Politics
18.3.1 Variable Political tension
Your campaign can feature either variable political tensions, or static tension.
To make
the political tensions change during your campaign, change the default settings
in the
[PoliticalTensionInc] section of the MetaMap.gf file. These settings will change
the
political tension values of the empires whenever a battle is fought. Hand in
hand with
them are the [PoliticalTensionDec] values, which reduce tensions. A warning
about
using these settings: it is very difficult to predict exactly what every AI in
the game will
do. When you use these settings you are ceding control of the universe's
politics to the
AI! The default setting for all these values is 0, which disables variable
political tensions.
18.3.2 Starting political tensions
The [PoliticalTension/StartingTensions] values set how each empire feels
about the others politically. The higher the number, the more hated that empire
is by the
heading empire. These numbers can be altered to produce some strange effects, as
well as setting who is at war with whom. For example:
The Federation hates Pirates....
[PoliticalTension/StartingTensions/Federation]
Federation=0
Klingon=800
Romulan=800
Borg=1000
Species8472=1000
Cardassian=800
Ferengi=200
Rakellian=1000
Pirate=1000
Neutral=800
...but Pirates are rather fond of the Federation!
[PoliticalTension/StartingTensions/Pirate]
Federation=200
Klingon=200
Romulan=200
Borg=1000
Species8472=1000
Cardassian=200
Ferengi=200
Rakellian=1000
Pirate=0
Neutral=800
You should make sure that if you want two or more races to be "at war" with
each other, that they both have a value of 1000 listed for each other here. Also
note that I have witnessed some strange results when using non-standard
settings.
With the Federation set to 300 tension with the Borg and vise versa, sometimes
they would ask to join my fleet, and sometimes they would attack me! No wonder
the text said "We distrust the Borg Collective."!
18.3.3 Miscellaneous [Politics] settings
In the [Politics] portion of the MetaMap.gf file, the NumCycleUpTensions value
is
not used. The AllyRatio and NeutralRatio values are used to determine what the
variance in politics setting means. If the political tension between two race is
less
than the AllyRatio value, then they will be considered friendly. If the tension
between
them is equal to or less than the NeutralRatio value, they will be considered
allied
(non-hostile). When selecting a purely AI race, DistanceWeight is the weight
given
to the distance from the hex in question to the center of power of the AI race
in
question. TensionWeight is the weight given to the tension between a selected
purely AI race and the players race. The LowNewsRangeUpTo and
HighNewsRangeNotBelow settings determine the bottom and top of the list of
political news that will be reported in the news, respectively. The
[TensionBumps] settings are the exact amount of tension change for each mission
outcome possible. The values given here are multiplied x10 to get the relative
tension change, which is applied at the end of the mission.
18.4 Map hex Defense Values
The [VictoryPointModifier] settings determine how many DV points the DV of a
hex will decrease by when an enemy completes a successful mission in that hex.
The Easy, Med and Hard values correspond to the 3 difficulty levels. PureAI
means when a battle occurs in which no human players participate (yeah, they
do that!). In the [Battle] section you find the settings for controlling how low
the
DV of a hex has to be before it will turn neutral.
MinVictoryPointsForPlayerVictory
means if the hex DV has reached this level of it's starting value due to human
players
completing missions in that hex, it will turn neutral.
MinVictoryPointsForAIVictory
means the same thing for PureAI battles. HexHealthResetRatio is what the DV of
the hex will be once it "flips" to the capturing player's color. This number is
a
decimal percent of the original starting value.
18.5 Economic reports
Every "Interval" turns the report is produced in the news.
18.6 Campaign victory conditions
Under [WinConditions] you will see three values. NumCumulativeOpponentsToWin
is the number of competitor races to tally the economic status of to see if a
race has
'won'. If a race has more economic points than this many other races, then it
wins the
campaign. NumCumulativeOpponentsToWarn works the same way only if a race
has more economy than this many races a warning that the race is about to win
the
campaign is produced in the news. The CumulativeCoefficient value is a
multiplier
that's applied to the NumCumulativeOpponentsToWin and the
NumCumulativeOpponentsToWarn before tabulation. Make this number really
high to make your campaign go on and on, or leave it at the default value for a
shorter
campaign. Note that the more races you have in your campaign, the more effect
the CumulativeCoefficient has on the win conditions.
18.7 AI birthplace
The AI's can be "born" either directly on bases or in one of the surrounding
hexes.
The AIBornOnlyOnBases setting determines which. If you choose to allow AI's
to be created in the surrounding hexes, AIBornOnBaseOddsDelta is used to
determine if they are born on the base or not. The higher you set this value,
the
more likely the AI will be born on the base instead of next to it.
19. MissionGoals.gf
This file contains information regarding the single player storyline campaign
and
has no effect on a Dynaverse 3 online campaign.
20. MissionMatching.gf
20.1 Checking for a match
Basically to see if a mission will be offered, the server adds up a bunch of
modifiers,
and if the resulting number is high enough, a mission is offered to the player.
The
modifiers cover everything from what race the player's current location hex is
compared to the player's race, weather the player has moved this turn or not,
what type of planet or base is in the player's current hex and a lot more. These
modifiers are:
[ScreenForMatch]
MatchDetail = 1
BonusForNearbyForeignCharacters =100
EnemyHexBonus =100
NeutralHexBonus =50
ChanceMove =30
ChanceLogon =0
ChanceTurnBreak =10
ChanceMissionComplete =50
ChanceMissionForfeit =0
ChanceGoalExpired =0
ChanceGoalInvalid =0
ChanceGoalComplete =0
The MatchDetail value is a measure of how much about the mission matching
process
is reported in the server logs. 0=none, 1=minimal and 2=maximum. In general, you
want this set to 1 unless you are testing mission scripts.
Under [MissionProfiles] the ShowMission value means weather the real script
names of the mission scripts will be show to the players or not. In general this
should be set to 0 unless you are testing mission scripts and need to see which
one is actually being offered. This is useful for testing purposes if you have
written multiple scripts with the same mission briefing and you need to see
which one is being offered.
The HasMustPlayMissions and MustPlayOnlyOnEnemyHex values are for
determining if players will have mandatory missions "pushed" on them, and
weather these missions will be offered only in enemy space or in any space.
RandMssnInBaseOrPlanetHex is for restricting weather missions other than
plant and base assaults will be offered in planet and base hexes. This setting
can be used to prevent players from accidentally going into a mission when
they are trying instead to attack the planet or base and is highly recommended.
The [TerrainScoring] section contains some more modifiers to the mission
matching score based on the terrain of the hex the player is currently in.
[TerrainScoring]
PlanetTypeScoreForMatching =5000
BaseTypeScoreForMatching =2500
TerrainTypeScoreForMatching =100
The [PoliticsScoring] section contains more mission matching modifiers based on
politics settings.
[PoliticsScoring]
BonusForExactPoliticalMatch =1000
LookingForOwnHexInOwn =1000
LookingForOwnHexInAlly =500
LookingForOwnHexInNeutral =0
LookingForOwnHexInEnemy =-100
LookingForEnemyHexInOwn =-100
LookingForEnemyHexInAlly =-100
LookingForEnemyHexInNeutral =0
LookingForEnemyHexInEnemy =1000
LookingForAllyHexInOwn =0
LookingForAllyHexInAlly =1000
LookingForAllyHexInNeutral =0
LookingForAllyHexInEnemy =-100
The "LookingForAllyHexInEnemy" is referring to the player's current hex.
The [FleetScoring] section contains modifiers to the mission matching based on
the ships in the player's fleet and any other fleets and ships present in the
hex.
[FleetScoring]
GoodBPVScore =1000
TooWeakBPVScore =300
TooStrongBPV =0
GoodShipCountScore =0
TooFewShipCountScore =0
TooManyShipCountScore =0
PlaceBaseMissionScore =50000
BaseScoreBonus =10000
Finally, all the modifier sections listed above are given a relative importance
level in the [ScoringWeights] section.
[ScoringWeights]
WeightMissionsLastPlayed =0.2
WeightPoliticsScore =10.0
WeightTerrainScore =1.0
WeightFleetScore =0.01
The default setting of 0.01 for WeightFleetScore means that what ships are
involved
is not as important to the mission matching process as the WeightPoliticsScore
settings
which is 10.0. You can set the politics of the server in the MetaMap.gf file.
Other scores that are applied to the mission matching process are
[RelationshipScoring],
[RecentlyPlayedScoring] and [MapScoring].
20.2 Enabling PVP
If you want to enable PVP (human Player Versus Player) on your server, leave the
AllowHumanToHumanMatching setting at 1. This setting can be useful if you want
to have a campaign that is purely a race between the empires instead of a direct
confrontation.
20.3 Game speed
Under the [Game] section is the GameSpeed setting. This setting determines what
the
tactical mission speed setting will be on all human players on your server when
they
enter a mission. Because some players do not have "optimal" game systems, it is
highly recommended that you change this setting from the default setting of 9 to
8
instead.
20.4 Adding custom mission variants
In the [HailMissions/HailMissionTitles] section you will find a list of "Hail
mission"
categories. "Hail missions" are those that can involve multiple human players.
You
can add custom variants of these missions to the server by listing them within
the
various categories here. The list is ordered numerically, starting with 0 for
the
stock Taldren script.
[HailMissions/HailMissionTitles]
0 ="Meta_Hail"
[HailMissions/HailConvoyMissionTitles]
0 ="Meta_Hail_Convoy"
[HailMissions/HailBaseStationMissionTitles]
0 ="Meta_Hail_Base"
[HailMissions/HailBattleStationMissionTitles]
0 ="Meta_Hail_Base"
[HailMissions/HailStarBaseMissionTitles]
0 ="Meta_Hail_Base"
[HailMissions/HailPlanetMissionTitles]
0 ="Meta_Hail_Planet"
[HailMissions/HailHomePlanetMissionTitles]
0 ="Meta_Hail_Homeworld"
[HailMissions/HailShipYardMissionTitles]
0 ="Meta_Hail_ShipYard"
So if you wanted to add your own custom PVP mission, you could list it in the
appropriate section and it would be offered at random from the list of PVP
missions. Here is what that would look like:
[HailMissions/HailMissionTitles]
0 ="Meta_Hail"
1 ="Meta_MyCustomHail"
By listing the missions multiple times, you can have some control of how often
each variant is offered. Look at this example:
[HailMissions/HailMissionTitles]
0 ="Meta_Hail"
1 ="Meta_MyCustomHail"
2 ="Meta_Hail"
3 ="Meta_Hail"
With this list, the mission script Meta_MyCustomHail would be offered 25% of the
time, since it is listed in 1 of the 4 possible entries.
20.5 Modifier Based Difficulty Setting
The section [Diff] is a way of setting how hard the missions will be by setting
a modifier
to the BPV of the enemy (AI enemy, not non-human). Look at the table:
//modifier based difficulty setting
[Diff]
CaptainDiff =0.85
CommodoreDiff =1.0
AdmiralDiff =1.15
According to these default settings, the BPV of the AI enemies a player will
encounter in all missions on your server is multiplied by 1.15 if you use the
"Admiral"
difficulty setting (which is 2 in most of the .gf files). This setting has been
the subject
of popular myth but it performs no other function besides this.
20.6 Space backdrops
The space backround images listed in the [Backgrounds] section are stored on the
player's computer in the SFC3/Assets/Models/Space folder. You can change these
images if you want, but make sure the replacement image is at least 256x256 in
size
and in the .BMP format. The larger the images, the more detailed they appear in
the
game.
20.7 Preventing Cheating
There are a number of settings in the [ForfeitModifiers] section that are there
for you
to use in preventing the common forms of cheating on the D3. These are mostly
based on what happens when a player fails to join a battle.
ForfeitPercentageLossOfPrestige is how much prestige a player will lose if they
forfeit a battle instead of accepting it. This number is a percentage of their
current
prestige that is deducted from their current total.
The ForfeitLoseShipIfBelowPrestigeThreshold determines weather a player can
lose their ship when they forfeit a mission. If the ForfeitPrestigeThreshold
number
is more prestige than the player currently has, the server will take the players
ship
instead of his prestige. ForfeitLoseShipIfBelowPrestigeThreshold must be set to
1
for this to be used.
ForfeitIfFailedToJoin is used to determine if a player is automatically
forfeited if
they fail to join a battle that they have already "accepted". What this really
means
is that they have intentionally disconnected from the server to avoid battle.
If the DisreputeIfFailedToJoin setting is set to 1, the player will be charged
DisreputeLostOnFailedToJoin amount of disrepute for failure to join a battle.
MoveToFriendlyBaseIfFailedToJoin will move the player to the nearest friendly
base or planet if they fail to join a battle.
LoseStarbaseIfFailedToJoin will cause the player to lose any starbase they are
carrying when they fail to join a battle. In my experience this occurs weather
this setting is used or not, and rightfully so.
DeathIfFailedToJoin is a severe punishment, it treats any player that fails to
join
a battle as if they were destroyed in the battle instead.
Read this warning that appears in the MissionMatching.gf file:
WARNING: The "IfFailedToJoin" options are for CHEATERS. Be careful that
you don't use all at once, as they are cumulative - NOT exclusive.
This is very true, as many players with poor internet connections and other
problems
like having different versions of DirectX may experience difficulty connecting
to missions
even if they are not cheating. Most server admins do not use these settings, as
they can be
overly harsh on the average gamer, and not harsh enough on the real cheaters.
20.8 How long to wait for mission launch
In the [EngagementTimers] settings you will find the WaitForBattleStart setting.
This one
is fairly important in that it determines how long the server will count down
before
launching a mission once a player has clicked "Attack". This only applies to
"Hail missions".
The number is in milliseconds, so the default setting of 45000 is really 45
seconds.
20.9 Forfeit prestige bonus
In the [EngagementMisc] section is the DefenderFledAttackerBonus setting. This
is the
amount of prestige to give to a player when any enemy (human or AI) forfeits
rather than
fight them.
20.10 Battles between AI's
The AI's on your server will fight each other, even without a human player
present. The
server only simulates these battles, they are not actually carried out like
human missions.
You can set the server to decide all the details of how the victor is chosen,
how much
prestige the winner gets, and what happens to both AI characters during the
battle, as
well as setting how long it takes to simulate the outcome. With the
AIBattlesSimulateTime
setting set to 1, you can use the AIBattlesTimeInMinutes setting to set the
server to wait
seconds or minutes before determining the outcome of a pure AI battle, with the
exact
number of seconds or minutes set by the AIBattlesTimeRange setting.
20.11 Fleet limits
The LeaderCannotBeLowerClassThanMember setting limits the members of a fleet to
being in ships of equal or smaller size than the fleet leader. This is to
prevent players
in an FF from having 2 BB's as wingmen.
The [Fleet/Maximum] settings are used to limit how many of each class type of
ship can
be in the same fleet. While the default setting prevents the AI from forming
fleets of BB's
that a player would be hard pressed to defeat, it does nothing to prevent human
players
from all flying in the same hex to the same location and engaging in the same
battle.
21. News.gf
This file only contains data regarding the new item text colors and other
settings that
are best left unchanged.
22. Score.gf
22.1 What happens when you die?
The ChargeForReplacementShip value is to prevent players from cheating. With
this setting at 0, a player can take his brand new starting ship and strip all
the
equipment and weapons off of it, then go out and ram into an asteroid or
something
similar to blow his ship up, then he gets given a new starting ship by the
server. If
the player is charged the prestige cost of his new ship, then he is paying more
than
he can make by stripping his ship to the bone and self destructing it.
The ChargeToDisreputeRate rating is a percentage of the cost of the replacement
starting ship a player is given when he dies that is charged to the player as
disrepute
instead of being charged to the player as prestige points. Obviously this
setting
only works if ChargeForReplacementShip=1. The default setting here is 80, which
means 80% of the cost of the replacement ship is charged to the character as
disrepute instead of taking his prestige away. Here is an example of how this
works:
1. Player gets blown up in a tough mission.
2. Player is automatically given a replacement ship by the server.
3. The server determines how much prestige the replacement ship is worth. (ie:
10,000)
4. Server takes 2000 prestige from the player, and gives the player 8,000
disrepute.
With the default setting of 80 (80%), the server takes 80% of the cost of the
new ship
and instead of taking that much prestige away from the player, it gives them
that much
disrepute. It's a way of lessening the blow of losing your ship, while still
making it
impossible to cheat by gutting the replacements and self destructing.
The amount of prestige it takes to pay off disrepute is set in the
DisreputePaybackRate
in Character.gf. Disrepute simply prevents a player from buying a new ship in
the
shipyards until it is paid off.
22.2 Starting Glicko ratings for humans
The players' "rating" is a numeric method of tracking that player's skill in
battle.
It's a complex system of mathematical formulas that basically goes up as you
win missions, and down as you lose. The amount it increases or decreases
depends on how decisively you win or lose, and how much stronger or weaker
your opponent was.The StartingHumanRating value is the rating every human
player starts the campaign with. For the most accurate statistics, a starting
rating of 1500 is advised.
22.3 Rating shift
The table [VictoryLevels] shows the shift in a players rating for the given
outcomes
during a mission:
[VictoryLevels]
AstoundingVictory = 1.0
Victory = 0.8
Draw = 0.5
Defeat = 0.2
DevastatingDefeat = 0.0
This number is multiplied against the players rating to generate the amount of
shift in their
rating due to the listed outcome, with MaximumGain from the [Rating] section
being the
most a player's rating can increase in a single battle.
The WinThreshold is the amount of difference between the high scorers of both
sides
for the mission to be declared a win for the highest scorer's team.
22.4 Bases and hex DV
When a base is placed, the DV of the hex it's placed in, and the hexes around
that hex,
go up. When a base is destroyed, the DV of the hex it was in and all the
surrounding
hexes goes back down by the same amount. The [Transition/VictoryPoints] settings
allow you to change how much this shift in DV is, for each different kind of
base.
Primary is for the hex the base is in, and Secondary is for the 6 surrounding
hexes.
These settings can have a drastic effect on any campaign using the AO system.
The MinimumVictoryPoints setting is the lowest the DV of a hex can go due to the
destruction and removal of the base from the map, regardless of the Transition
value.
22.5 Officer skill
The [LevelUp] section details how often the officers advance in their
non-specialized
skills. Curiously, when these settings are enabled by typing a decimal number
other
than 0.0, all officers on the ship advance together in the first skill on the
list that they
aren't legendary in. This will continue until all officers are legendary in
every skill. This
is undesirable in most campaigns.
The [SpecializedLevelUp] values are what determine the advancement of the
officers
in their chosen fields. The decimal numbers represent percentages, so the
Trained
value of 0.060 means there is only a 6% chance an officer will advance a
"Trained"
skill to "Skilled" after a successfully completed mission. Generally D3 players
consider the default settings to be too slow, but I prefer to keep them slow, as
it
adds a lot of value to the better officers.
23. Ship.gf
The PrestigeModiferOnShipGrant is an amount of prestige points applied to the
player's account when a new ship is given to the player. The default value of
-100
means that when a player is given the starting ship by the server, both when
their
account is first created and when they receive the starting ship after being
destroyed,
they also lose 100 prestige points! You might want to keep this in mind when
setting
the starting prestige amount in Character.gf.
24. Time.gf
The server measures the passage of time in Stardates. You set the starting
stardate
in the BaseYear setting. The default setting is 56200 and although there are
different
settings for the different difficulty levels, they are not used in SFC3. The
TurnsPerYear setting is how many turns will pass before the stardate flips to
the next
year. The default setting of 10000 means that the stardate one year from the
start of
the campaign will be 66200.
The MilliSecondsPerTurn value is of critical importance to your campaign! Many
server settings are effected by how long a turn is, and that's what this setting
sets!
The default setting is 120000 milliseconds, which is 2 minutes. Any change you
make to this setting will have drastic effects on your campaign, so be very
careful.
The WaitForServersTurnRate and ServersToWaitForCount should not be altered.
In case you were wondering, the movie Star Trek Nemesis occurs on
stardate 56848.1.