ARK: Survival Evolved

ARK: Survival Evolved

Server Benchmark - Performance Score
 This topic has been pinned, so it's probably important
Kozenomenon  [developer] 7 Sep, 2020 @ 5:15pm
CONFIG SETTINGS
ServerBenchmark INI Settings
Mod INI settings always go in your server's GameUserSettings.ini file.

[ServerBenchmark] DebugMode=False CallbackUrl="http://url/to/your/web/svc" MaxSpawnCnt=999999999 MaxDuration=86400 DefaultDinoTestLoc= MaxSpawnLocOffset=5000.0 MaxDurationOverrunRatio=2.0 InitialFinalFrameSpan=30 BaselineSFPS=30.0 ScoreWeightInitialSFPS=1 ScoreWeightFinalSFPS=2 ScoreWeightAvgSFPS=3 ScoreWeightDuration=1 ScoreMax=1000

DebugMode
Default is False. Set to True and there will be additional [DEBUG] entries made to the GameLog during tests.

CallbackUrl
Default is blank. Provide a url to your web service and test results json will be post to it at the end of a test. Value should be a url starting with http:// or https:// and needs to be surrounded by double quotes as shown above.

MaxSpawnCnt
Max allowable spawn count for tests. The SpawnCnt param for the 'DinoTest' command will be clamped by this max value.

MaxDuration
Max allowable duration for tests (in seconds). The Duration param for the 'DinoTest' command will be clamped by this max value.

DefaultDinoTestLoc
By default tests will be ran from the X/Y center of the map's spawn bounds. This 'test location' is used as the center of a box that will be determined, where spawners will be setup along the boundaries of that box. Additionally, if default, then the Z axis will be 'MaxSpawnLocOffset' less than map's Max Player Fly Z. Or you can supply your own x,y,z location to use as center of the test box. The test box when starting a test will still clamp within the map's spawn boundaries (X & Y) and within KillZ boundaries.

MaxSpawnLocOffset
Default is 5000. Will be used as random max offset to apply to dino spawns from a spawner's location. Also used for Z coord of Test Loc if using default 'DefaultDinoTestLoc'.

MaxDurationOverrunRatio
Not Used / May Reintroduce
Was originally intended to auto-kill a test if running too long but later deemed this not needed. Let me know if you feel it can in some way be beneficial.
The 'DinoTest' command has a 'stop' switch param to kill a currently running test.

InitialFinalFrameSpan
Default is 30. This is the number of ticks/frames to use in computing a mini-average for both the Initial and Final SFPS recordings. This is done instead of a single start/end reading in order to produce more consistent results. At the default, 30, this means that when a test begins for the next 30 server frames the SFPS will be recorded and once 30 have been taken, the average of those 30 SFPS values will be used for InitialSFPS. And the same is done for FinalSFPS, except that it would be the final 30 frames during a test.

BaselineSFPS
The default is 30. This is used for computing benchmark results related to SFPS. Ark Server is generally capped at 30 SFPS.

ScoreWeightInitialSFPS
Default is 1. Integer representing the weight to give the InitialSFPS / BaselineSFPS ratio in computing final benchmark score.

ScoreWeightFinalSFPS
Default is 2. Integer representing the weight to give the FinalSFPS / BaselineSFPS ratio in computing final benchmark score.

ScoreWeightAvgSFPS
Default is 3. Integer representing the weight to give the (overall) AvgSFPS / BaselineSFPS ratio in computing final benchmark score.

ScoreWeightDuration
Default is 1. Integer representing the weight to give the test (requested) Duration / ActualDuration ratio in computing final benchmark score.

ScoreMax
Default is 1000. This will be the scale for the benchmark score. It is an integer representing the maximum possible benchmark score (all test ratios = 1.0).
Last edited by Kozenomenon; 7 Sep, 2020 @ 9:05pm