XPilotGodot/map_config.gd

2062 lines
68 KiB
GDScript

extends Node
var num_errors: int
var gravity: float
var shipmass: float
var ballmass: float
var shotmass: float
var shotspeed: float
var shotlife: int
var firerepeatrate: int
var maxrobots: int
var minrobots: float
var robotstalk: bool
var robotsleave: bool
var robotleavelife: int
var robotleavescore: int
var robotleaveratio: float
var robotteam: int
var restrictrobots: bool
var reserverobotteam: bool
var robotrealname: String
var robothostname: String
var tankrealname: String
var tankhostname: String
var tankscoredecrement: int
var turnthrust: bool
var selfimmunity: bool
var defaultshipshape: String # Shape?
var tankshipshape: String # Shape?
var maxplayershots: int
var shotsgravity: bool
var mapwidth: int
var mapheight: int
var mapname: String
var mapauthor: String
var mapdata: String
var allowplayercrashes: bool
var allowplayerbounces: bool
var allowplayerkilling: bool
var allowshields: bool
var playerstartsshielded: bool
var shotswallbounce: bool
var ballswallbounce: bool
var ballcollisions: bool
var ballsparkcollisions: bool
var mineswallbounce: bool
var itemswallbounce: bool
var missileswallbounce: bool
var sparkswallbounce: bool
var debriswallbounce: bool
var asteroidswallbounce: bool
var cloakedexhaust: bool
var cloakedshield: bool
var maxobjectwallbouncespeed: float
var maxshieldedwallbouncespeed: float
var maxunshieldedwallbouncespeed: float
var maxshieldedplayerwallbounceangle: float
var maxunshieldedplayerwallbounceangle: float
var playerwallbouncebrakefactor: float
var objectwallbouncebrakefactor: float
var objectwallbouncelifefactor: float
var wallbouncefueldrainmult: float
var wallbouncedestroyitemprob: float
var limitedvisibility: bool
var minvisibilitydistance: float
var maxvisibilitydistance: float
var limitedlives: bool
var worldlives: int
var reset: bool
var resetonhuman: int
var allowalliances: bool
var announcealliances: bool
var teamplay: bool
var teamcannons: bool
var teamfuel: bool
var cannonsmartness: int
var cannonsuseitems: bool
var cannonsdefend: bool
var cannonflak: bool
var cannondeadtime: int
var keepshots: bool
var teamassign: bool
var teamimmunity: bool
var teamsharescore: bool
var ecmsreprogrammines: bool
var ecmsreprogramrobots: bool
var targetkillteam: bool
var targetteamcollision: bool
var targetsync: bool
var targetdeadtime: int
var treasurekillteam: bool
var capturetheflag: bool
var treasurecollisiondestroys: bool
var ballconnectorspringconstant: float
var ballconnectordamping: float
var maxballconnectorratio: float
var ballconnectorlength: float
var connectorisstring: bool
var treasurecollisionmaykill: bool
var wreckagecollisionmaykill: bool
var asteroidcollisionmaykill: bool
var timing: bool
var ballrace: bool
var ballraceconnected: bool
var edgewrap: bool
var edgebounce: bool
var extraborder: bool
var gravitypoint: Vector2i # Maybe Vector2?
var gravityangle: int
var gravitypointsource: bool
var gravityclockwise: bool
var gravityanticlockwise: bool
var gravityvisible: bool
var wormholevisible: bool
var itemconcentratorvisible: bool
var asteroidconcentratorvisible: bool
var wormtime: int
var framespersecond: int
var allowsmartmissiles: bool
var allowheatseekers: bool
var allowtorpedoes: bool
var allownukes: bool
var allowclusters: bool
var allowmodifiers: bool
var allowlasermodifiers: bool
var allowshipshapes: bool
var playersonradar: bool
var missilesonradar: bool
var minesonradar: bool
var nukesonradar: bool
var treasuresonradar: bool
var asteroidsonradar: bool
var distinguishmissiles: bool
var maxmissilesperpack: int
var maxminesperpack: int
var identifymines: bool
var shieldeditempickup: bool
var shieldedmining: bool
var laserisstungun: bool
var nukeminsmarts: int
var nukeminmines: int
var nukeclusterdamage: float
var minefusetime: float
var minelife: int
var minminespeed: int
var missilelife: int
var baseminerange: int
var mineshotdetonatedistance: int
var shotkillscoremult: float
var torpedokillscoremult: float
var smartkillscoremult: float
var heatkillscoremult: float
var clusterkillscoremult: float
var laserkillscoremult: float
var tankkillscoremult: float
var runoverkillscoremult: float
var ballkillscoremult: float
var explosionkillscoremult: float
var shovekillscoremult: float
var crashscoremult: float
var minescoremult: float
var asteroidpoints: float
var cannonpoints: float
var asteroidmaxscore: float
var cannonmaxscore: float
var movingitemprob: float
var dropitemonkillprob: float
var randomitemprob: float
var detonateitemonkillprob: float
var destroyitemincollisionprob: float
var asteroiditemprob: float
var asteroidmaxitems: int
var itemprobmult: float
var cannonitemprobmult: float
var maxitemdensity: float
var asteroidprob: float
var maxasteroiddensity: int
var itemconcentratorradius: int
var itemconcentratorprob: float
var asteroidconcentratorradius: int
var asteroidconcentratorprob: float
var rogueheatprob: float
var roguemineprob: float
var itemenergypackprob: float
var itemtankprob: float
var itemecmprob: float
var itemarmorprob: float
var itemmineprob: float
var itemmissileprob: float
var itemcloakprob: float
var itemsensorprob: float
var itemwideangleprob: float
var itemrearshotprob: float
var itemafterburnerprob: float
var itemtransporterprob: float
var itemmirrorprob: float
var itemdeflectorprob: float
var itemhyperjumpprob: float
var itemphasingprob: float
var itemlaserprob: float
var itememergencythrustprob: float
var itemtractorbeamprob: float
var itemautopilotprob: float
var itememergencyshieldprob: float
var initialfuel: float
var initialtanks: int
var initialarmor: int
var initialecms: int
var initialmines: int
var initialmissiles: int
var initialcloaks: int
var initialsensors: int
var initialwideangles: int
var initialrearshots: int
var initialafterburners: int
var initialtransporters: int
var initialmirrors: int
var maxarmor: int
var initialdeflectors: int
var initialhyperjumps: int
var initialphasings: int
var initiallasers: int
var initialemergencythrusts: int
var initialtractorbeams: int
var initialautopilots: int
var initialemergencyshields: int
var maxfuel: int
var maxtanks: int
var maxecms: int
var maxmines: int
var maxmissiles: int
var maxcloaks: int
var maxsensors: int
var maxwideangles: int
var maxrearshots: int
var maxafterburners: int
var maxtransporters: int
var maxdeflectors: int
var maxphasings: int
var maxhyperjumps: int
var maxemergencythrusts: int
var maxlasers: int
var maxtractorbeams: int
var maxautopilots: int
var maxemergencyshields: int
var maxmirrors: int
var gameduration: float
var allowviewing: bool
var friction: float
var blockfriction: float
var blockfrictionvisible: bool
var coriolis: int
var checkpointradius: float
var racelaps: int
var lockotherteam: bool
var loseitemdestroys: bool
var usewreckage: bool
var maxoffensiveitems: int
var maxdefensiveitems: int
var rounddelay: int
var maxroundtime: int
var roundstoplay: int
var maxpausetime: int
func _ready() -> void:
reset_to_defaults()
func reset_to_defaults() -> void:
gravity = -0.14
shipmass = 20.0
ballmass = 50.0
shotmass = 0.1
shotspeed = 21.0
shotlife = 60
firerepeatrate = 2
maxrobots = 4
minrobots = -1
robotstalk = false
robotsleave = true
robotleavelife = 50
robotleavescore = -90
robotleaveratio = -5
robotteam = 0
restrictrobots = true
reserverobotteam = true
robotrealname = "robot"
robothostname = "xpilot.org"
tankrealname = "tank"
tankhostname = "tanks.org"
tankscoredecrement = 500
turnthrust = false
selfimmunity = false
defaultshipshape = "(NM:Default)(AU:Unknown)(SH: 15,0 -9,8 -9,-8)(MG: 15,0)(LG: 15,0)(RG: 15,0)(EN: -9,0)(LR: -9,8)(RR: -9,-8)(LL: -9,8)(RL: -9,-8)(MR: 15,0)"
tankshipshape = "(NM:fueltank)(AU:John E. Norlin)(SH: 15,0 14,-5 9,-8 -5,-8 -3,-8 -3,0 2,0 2,2 -3,2 -3,6 5,6 5,8 -5,8 -5,-8 -9,-8 -14,-5 -15,0 -14,5 -9,8 9,8 14,5)(EN: -15,0)(MG: 15,0)"
maxplayershots = 256
shotsgravity = true
mapwidth = 100
mapheight = 100
mapname = "<New Map>"
mapauthor = "<Your Name>"
mapdata = ""
allowplayercrashes = true
allowplayerbounces = true
allowplayerkilling = true
allowshields = true
playerstartsshielded = true
shotswallbounce = false
ballswallbounce = true
ballcollisions = false
ballsparkcollisions = true
mineswallbounce = false
itemswallbounce = true
missileswallbounce = false
sparkswallbounce = false
debriswallbounce = false
asteroidswallbounce = true
cloakedexhaust = true
cloakedshield = true
maxobjectwallbouncespeed = 40
maxshieldedwallbouncespeed = 50
maxunshieldedwallbouncespeed = 20
maxshieldedplayerwallbounceangle = 90
maxunshieldedplayerwallbounceangle = 30
playerwallbouncebrakefactor = 0.89
objectwallbouncebrakefactor = 0.95
objectwallbouncelifefactor = 0.80
wallbouncefueldrainmult = 1.0
wallbouncedestroyitemprob = 0.0
limitedvisibility = false
minvisibilitydistance = 0.0
maxvisibilitydistance = 0.0
limitedlives = false
worldlives = 0
reset = true
resetonhuman = 0
allowalliances = true
announcealliances = false
teamplay = false
teamcannons = false
teamfuel = false
cannonsmartness = 1
cannonsuseitems = false
cannonsdefend = true
cannonflak = true
cannondeadtime = 72
keepshots = false
teamassign = true
teamimmunity = true
teamsharescore = false
ecmsreprogrammines = true
ecmsreprogramrobots = true
targetkillteam = false
targetteamcollision = true
targetsync = false
targetdeadtime = 60
treasurekillteam = false
capturetheflag = false
treasurecollisiondestroys = true
ballconnectorspringconstant = 1500.0
ballconnectordamping = 2.0
maxballconnectorratio = 0.30
ballconnectorlength = 120
connectorisstring = false
treasurecollisionmaykill = false
wreckagecollisionmaykill = false
asteroidcollisionmaykill = true
timing = false
ballrace = false
ballraceconnected = false
edgewrap = false
edgebounce = true
extraborder = false
gravitypoint = Vector2i(0,0)
gravityangle = 90
gravitypointsource = false
gravityclockwise = false
gravityanticlockwise = false
gravityvisible = true
wormholevisible = true
itemconcentratorvisible = true
asteroidconcentratorvisible = true
wormtime = 0
framespersecond = 14
allowsmartmissiles = true
allowheatseekers = true
allowtorpedoes = true
allownukes = false
allowclusters = false
allowmodifiers = false
allowlasermodifiers = false
allowshipshapes = true
playersonradar = true
missilesonradar = true
minesonradar = false
nukesonradar = true
treasuresonradar = false
asteroidsonradar = false
distinguishmissiles = true
maxmissilesperpack = 4
maxminesperpack = 2
identifymines = true
shieldeditempickup = false
shieldedmining = false
laserisstungun = false
nukeminsmarts = 7
nukeminmines = 4
nukeclusterdamage = 1.0
minefusetime = 0.0
minelife = 0
minminespeed = 0
missilelife = 0
baseminerange = 0
mineshotdetonatedistance = 0
shotkillscoremult = 1.0
torpedokillscoremult = 1.0
smartkillscoremult = 1.0
heatkillscoremult = 1.0
clusterkillscoremult = 1.0
laserkillscoremult = 1.0
tankkillscoremult = 0.44
runoverkillscoremult = 0.33
ballkillscoremult = 1.0
explosionkillscoremult = 0.33
shovekillscoremult = 0.5
crashscoremult = 0.33
minescoremult = 0.17
asteroidpoints = 1.0
cannonpoints = 1.0
asteroidmaxscore = 100.0
cannonmaxscore = 100.0
movingitemprob = 0.2
dropitemonkillprob = 0.5
randomitemprob = 0.0
detonateitemonkillprob = 0.5
destroyitemincollisionprob = 0.0
asteroiditemprob = 0.0
asteroidmaxitems = 0
itemprobmult = 1.0
cannonitemprobmult = 1.0
maxitemdensity = 0.00012
asteroidprob = 5e-7
maxasteroiddensity = 0
itemconcentratorradius = 10
itemconcentratorprob = 1.0
asteroidconcentratorradius = 10
asteroidconcentratorprob = 1.0
rogueheatprob = 1.0
roguemineprob = 1.0
itemenergypackprob = 1e-9
itemtankprob = 1e-9
itemecmprob = 1e-9
itemarmorprob = 1e-9
itemmineprob = 1e-9
itemmissileprob = 1e-9
itemcloakprob = 1e-9
itemsensorprob = 1e-9
itemwideangleprob = 1e-9
itemrearshotprob = 1e-9
itemafterburnerprob = 1e-9
itemtransporterprob = 1e-9
itemmirrorprob = 1e-9
itemdeflectorprob = 1e-9
itemhyperjumpprob = 1e-9
itemphasingprob = 1e-9
itemlaserprob = 1e-9
itememergencythrustprob = 1e-9
itemtractorbeamprob = 1e-9
itemautopilotprob = 1e-9
itememergencyshieldprob = 1e-9
initialfuel = 1000
initialtanks = 0
initialarmor = 0
initialecms = 0
initialmines = 0
initialmissiles = 0
initialcloaks = 0
initialsensors = 0
initialwideangles = 0
initialrearshots = 0
initialafterburners = 0
initialtransporters = 0
initialmirrors = 0
maxarmor = 10
initialdeflectors = 0
initialhyperjumps = 0
initialphasings = 0
initiallasers = 0
initialemergencythrusts = 0
initialtractorbeams = 0
initialautopilots = 0
initialemergencyshields = 0
maxfuel = 10000
maxtanks = 8
maxecms = 10
maxmines = 10
maxmissiles = 10
maxcloaks = 10
maxsensors = 10
maxwideangles = 10
maxrearshots = 10
maxafterburners = 10
maxtransporters = 10
maxdeflectors = 10
maxphasings = 10
maxhyperjumps = 10
maxemergencythrusts = 10
maxlasers = 5
maxtractorbeams = 4
maxautopilots = 10
maxemergencyshields = 10
maxmirrors = 10
gameduration = 0.0
allowviewing = false
friction = 0.0
blockfriction = 0.0
blockfrictionvisible = true
coriolis = 0
checkpointradius = 6.0
racelaps = 3
lockotherteam = true
loseitemdestroys = false
usewreckage = true
maxoffensiveitems = 100
maxdefensiveitems = 100
rounddelay = 0
maxroundtime = 0
roundstoplay = 0
maxpausetime = 3600
func set_option(option: String, value: String) -> void:
option = option.to_lower()
match option:
"gravity":
if value.is_valid_float():
gravity = value.to_float()
else:
push_warning("Non-float value for gravity")
num_errors += 1
"shipmass":
if value.is_valid_float():
shipmass = value.to_float()
else:
push_warning("Non-float value for shipmass")
num_errors += 1
"shipmass":
if value.is_valid_float():
shipmass = value.to_float()
else:
push_warning("Non-float value for shipmass")
num_errors += 1
"shotmass":
if value.is_valid_float():
shotmass = value.to_float()
else:
push_warning("Non-float value for shotmass")
num_errors += 1
"shotspeed":
if value.is_valid_float():
shotspeed = value.to_float()
else:
push_warning("Non-float value for shotspeed")
num_errors += 1
"shotlife":
if value.is_valid_int():
shotlife = value.to_int()
else:
push_warning("Non-int value for shotlife")
num_errors += 1
"firerepeatrate", "firerepeat":
if value.is_valid_int():
firerepeatrate = value.to_int()
else:
push_warning("Non-int value for firerepeatrate")
num_errors += 1
"maxrobots", "robots":
if value.is_valid_int():
maxrobots = value.to_int()
else:
push_warning("Non-int value for maxrobots")
num_errors += 1
"minrobots":
if value.is_valid_float():
minrobots = value.to_float()
else:
push_warning("Non-float value for minrobots")
num_errors += 1
"robotstalk":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
robotstalk = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for robotstalk")
num_errors += 1
"robotsleave":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
robotsleave = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for robotsleave")
num_errors += 1
"robotleavelife":
if value.is_valid_int():
robotleavelife = value.to_int()
else:
push_warning("Non-int value for robotleavelife")
num_errors += 1
"robotleavescore":
if value.is_valid_int():
robotleavescore = value.to_int()
else:
push_warning("Non-int value for robotleavescore")
num_errors += 1
"robotleaveratio":
if value.is_valid_float():
robotleaveratio = value.to_float()
else:
push_warning("Non-float value for robotleaveratio")
num_errors += 1
"robotteam":
if value.is_valid_int():
robotteam = value.to_int()
else:
push_warning("Non-int value for robotteam")
num_errors += 1
"restrictrobots":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
restrictrobots = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for restrictrobots")
num_errors += 1
"reserverobotteam":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
reserverobotteam = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for reserverobotteam")
num_errors += 1
"robotrealname":
robotrealname = value
"robothostname":
robothostname = value
"tankrealname":
tankrealname = value
"tankhostname":
tankhostname = value
"tankscoredecrement":
if value.is_valid_int():
tankscoredecrement = value.to_int()
else:
push_warning("Non-int value for tankscoredecrement")
num_errors += 1
"turnthrust", "turnfuel":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
turnthrust = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for turnthrust")
num_errors += 1 # Shape?
"selfimmunity":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
selfimmunity = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for selfimmunity")
num_errors += 1
"defaultshipshape":
defaultshipshape = value
"tankshipshape":
tankshipshape = value
"maxplayershots", "shots":
if value.is_valid_int():
maxplayershots = value.to_int()
else:
push_warning("Non-int value for maxplayershots")
num_errors += 1
"shotsgravity":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
shotsgravity = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for shotsgravity")
num_errors += 1
"mapwidth":
if value.is_valid_int():
mapwidth = value.to_int()
else:
push_warning("Non-int value for mapwidth")
num_errors += 1
"mapheight":
if value.is_valid_int():
mapheight = value.to_int()
else:
push_warning("Non-int value for mapheight")
num_errors += 1
"mapname":
mapname = value
"mapauthor":
mapauthor = value
"mapdata":
mapdata = value
"allowplayercrashes":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowplayercrashes = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowplayercrashes")
num_errors += 1
"allowplayerbounces":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowplayerbounces = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowplayerbounces")
num_errors += 1
"allowplayerkilling", "killings":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowplayerkilling = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowplayerkilling")
num_errors += 1
"allowshields", "shields":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowshields = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowshields")
num_errors += 1
"playerstartsshielded", "playerstartshielded":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
playerstartsshielded = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for playerstartsshielded")
num_errors += 1
"shotswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
shotswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for shotswallbounce")
num_errors += 1
"ballswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ballswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-float value for ballswallbounce")
num_errors += 1
"ballcollisions":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ballcollisions = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ballcollisions")
num_errors += 1
"ballsparkcollisions":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ballsparkcollisions = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ballsparkcollisions")
num_errors += 1
"mineswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
mineswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for mineswallbounce")
num_errors += 1
"itemswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
itemswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for itemswallbounce")
num_errors += 1
"missileswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
missileswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for missileswallbounce")
num_errors += 1
"sparkswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
sparkswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for sparkswallbounce")
num_errors += 1
"debriswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
debriswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for debriswallbounce")
num_errors += 1
"asteroidswallbounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
asteroidswallbounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for asteroidswallbounce")
num_errors += 1
"cloakedexhaust":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
cloakedexhaust = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for cloakedexhaust")
num_errors += 1
"cloakedshield":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
cloakedshield = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for cloakedshield")
num_errors += 1
"maxobjectwallbouncespeed", "maxobjectbouncespeed":
if value.is_valid_float():
maxobjectwallbouncespeed = value.to_float()
else:
push_warning("Non-float value for maxobjectwallbouncespeed")
num_errors += 1
"maxshieldedwallbouncespeed", "maxshieldedbouncespeed":
if value.is_valid_float():
maxshieldedwallbouncespeed = value.to_float()
else:
push_warning("Non-float value for maxshieldedwallbouncespeed")
num_errors += 1
"maxunshieldedwallbouncespeed", "maxunshieldedbouncespeed":
if value.is_valid_float():
maxunshieldedwallbouncespeed = value.to_float()
else:
push_warning("Non-float value for maxunshieldedwallbouncespeed")
num_errors += 1
"maxshieldedplayerwallbounceangle", "maxshieldedbounceangle":
if value.is_valid_float():
maxshieldedplayerwallbounceangle = value.to_float()
else:
push_warning("Non-float value for maxshieldedplayerwallbounceangle")
num_errors += 1
"maxunshieldedplayerwallbounceangle", "maxunshieldedbounceangle":
if value.is_valid_float():
maxunshieldedplayerwallbounceangle = value.to_float()
else:
push_warning("Non-float value for maxunshieldedplayerwallbounceangle")
num_errors += 1
"playerwallbouncebrakefactor", "playerwallbrake":
if value.is_valid_float():
playerwallbouncebrakefactor = value.to_float()
else:
push_warning("Non-float value for playerwallbouncebrakefactor")
num_errors += 1
"objectwallbouncebrakefactor", "objectwallbrake":
if value.is_valid_float():
objectwallbouncebrakefactor = value.to_float()
else:
push_warning("Non-float value for objectwallbouncebrakefactor")
num_errors += 1
"objectwallbouncelifefactor":
if value.is_valid_float():
objectwallbouncelifefactor = value.to_float()
else:
push_warning("Non-float value for objectwallbouncelifefactor")
num_errors += 1
"wallbouncefueldrainmult", "wallbouncedrail":
if value.is_valid_float():
wallbouncefueldrainmult = value.to_float()
else:
push_warning("Non-float value for wallbouncefueldrainmult")
num_errors += 1
"wallbouncedestroyitemprob":
if value.is_valid_float():
wallbouncedestroyitemprob = value.to_float()
else:
push_warning("Non-float value for wallbouncedestroyitemprob")
num_errors += 1
"limitedvisibility":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
limitedvisibility = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for limitedvisibility")
num_errors += 1
"minvisibilitydistance", "minvisibility":
if value.is_valid_float():
minvisibilitydistance = value.to_float()
else:
push_warning("Non-float value for minvisibilitydistance")
num_errors += 1
"maxvisibilitydistance", "maxvisibility":
if value.is_valid_float():
maxvisibilitydistance = value.to_float()
else:
push_warning("Non-float value for maxvisibilitydistance")
num_errors += 1
"limitedlives":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
limitedlives = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for limitedlives")
num_errors += 1
"worldlives", "lives":
if value.is_valid_int():
worldlives = value.to_int()
else:
push_warning("Non-int value for worldlives")
num_errors += 1
"reset":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
reset = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for reset")
num_errors += 1
"resetonhuman", "humanreset":
if value.is_valid_int():
resetonhuman = value.to_int()
else:
push_warning("Non-int value for resetonhuman")
num_errors += 1
"allowalliances", "alliances":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowalliances = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowalliances")
num_errors += 1
"announcealliances":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
announcealliances = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for announcealliances")
num_errors += 1
"teamplay", "teams":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamplay = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamplay")
num_errors += 1
"teamcannons":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamcannons = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamcannons")
num_errors += 1
"teamfuel":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamfuel = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamfuel")
num_errors += 1
"cannonsmartness":
if value.is_valid_int():
cannonsmartness = value.to_int()
else:
push_warning("Non-int value for cannonsmartness")
num_errors += 1
"cannonsuseitems", "cannonspickupitems":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
cannonsuseitems = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for cannonsuseitems")
num_errors += 1
"cannonsdefend":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
cannonsdefend = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for cannonsdefend")
num_errors += 1
"cannonflak", "cannonaaa":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
cannonflak = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for cannonflak")
num_errors += 1
"cannondeadtime":
if value.is_valid_int():
cannondeadtime = value.to_int()
else:
push_warning("Non-int value for cannondeadtime")
num_errors += 1
"keepshots":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
keepshots = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for keepshots")
num_errors += 1
"teamassign":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamassign = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamassign")
num_errors += 1
"teamimmunity":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamimmunity = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamimmunity")
num_errors += 1
"teamsharescore":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
teamsharescore = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for teamsharescore")
num_errors += 1
"ecmsreprogrammines":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ecmsreprogrammines = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ecmsreprogrammines")
num_errors += 1
"ecmsreprogramrobots":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ecmsreprogramrobots = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ecmsreprogramrobots")
num_errors += 1
"targetkillteam":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
targetkillteam = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for targetkillteam")
num_errors += 1
"targetteamcollision", "targetcollision":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
targetteamcollision = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for targetteamcollision")
num_errors += 1
"targetsync":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
targetsync = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for targetsync")
num_errors += 1
"targetdeadtime":
if value.is_valid_int():
targetdeadtime = value.to_int()
else:
push_warning("Non-int value for targetdeadtime")
num_errors += 1
"treasurekillteam":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
treasurekillteam = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for treasurekillteam")
num_errors += 1
"capturetheflag", "ctf":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
capturetheflag = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for capturetheflag")
num_errors += 1
"treasurecollisiondestroys", "treasurecollisiondestroy":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
treasurecollisiondestroys = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for treasurecollisiondestroys")
num_errors += 1
"ballconnectorspringconstant":
if value.is_valid_float():
ballconnectorspringconstant = value.to_float()
else:
push_warning("Non-float value for ballconnectorspringconstant")
num_errors += 1
"ballconnectordamping":
if value.is_valid_float():
ballconnectordamping = value.to_float()
else:
push_warning("Non-float value for ballconnectordamping")
num_errors += 1
"maxballconnectorratio":
if value.is_valid_float():
maxballconnectorratio = value.to_float()
else:
push_warning("Non-float value for maxballconnectorratio")
num_errors += 1
"ballconnectorlength":
if value.is_valid_float():
ballconnectorlength = value.to_float()
else:
push_warning("Non-float value for ballconnectorlength")
num_errors += 1
"connectorisstring":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
connectorisstring = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for connectorisstring")
num_errors += 1
"treasurecollisionmaykill", "treasureunshieldedcollisionkills":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
treasurecollisionmaykill = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for treasurecollisionmaykill")
num_errors += 1
"wreckagecollisionmaykill", "wreckageunshieldedcollisionkills":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
wreckagecollisionmaykill = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for wreckagecollisionmaykill")
num_errors += 1
"asteroidcollisionmaykill", "asteroidunshieldedcollisionkills":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
asteroidcollisionmaykill = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for asteroidcollisionmaykill")
num_errors += 1
"timing", "race":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
timing = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for timing")
num_errors += 1
"ballrace":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ballrace = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ballrace")
num_errors += 1
"ballraceconnected":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
ballraceconnected = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for ballraceconnected")
num_errors += 1
"edgewrap":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
edgewrap = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for edgewrap")
num_errors += 1
"edgebounce":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
edgebounce = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for edgebounce")
num_errors += 1
"extraborder":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
extraborder = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for extraborder")
num_errors += 1
"gravitypoint":
var values = value.lstrip('(').rstrip(')').split(",")
if values.size() > 2 and values[0].is_valid_int() and values[1].is_valid_int():
gravitypoint.x = values[0].to_int()
gravitypoint.x = values[1].to_int()
else:
push_warning("Invalid coordinates for gravitypoint")
num_errors += 1
"gravityangle":
if value.is_valid_int():
gravityangle = value.to_int()
else:
push_warning("Non-int value for gravityangle")
num_errors += 1
"gravitypointsource":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
gravitypointsource = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for gravitypointsource")
num_errors += 1
"gravityclockwise":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
gravityclockwise = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for gravityclockwise")
num_errors += 1
"gravityanticlockwise":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
gravityanticlockwise = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for gravityanticlockwise")
num_errors += 1
"gravityvisible":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
gravityvisible = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for gravityvisible")
num_errors += 1
"wormholevisible":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
wormholevisible = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for wormholevisible")
num_errors += 1
"itemconcentratorvisible":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
itemconcentratorvisible = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for itemconcentratorvisible")
num_errors += 1
"asteroidconcentratorvisible":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
asteroidconcentratorvisible = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for asteroidconcentratorvisible")
num_errors += 1
"wormtime":
if value.is_valid_int():
wormtime = value.to_int()
else:
push_warning("Non-int value for wormtime")
num_errors += 1
"framespersecond", "fps":
if value.is_valid_int():
framespersecond = value.to_int()
else:
push_warning("Non-int value for framespersecond")
num_errors += 1
"allowsmartmissiles", "allowsmarts":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowsmartmissiles = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowsmartmissiles")
num_errors += 1
"allowheatseekers", "allowheats":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowheatseekers = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowheatseekers")
num_errors += 1
"allowtorpedoes", "allowtorps":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowtorpedoes = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowtorpedoes")
num_errors += 1
"allownukes", "nukes":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allownukes = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allownukes")
num_errors += 1
"allowclusters", "clusters":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowclusters = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowclusters")
num_errors += 1
"allowmodifiers":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowmodifiers = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowmodifiers")
num_errors += 1
"allowlasermodifiers", "lasermodifiers":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowlasermodifiers = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowlasermodifiers")
num_errors += 1
"allowshipshapes", "shipshapes":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowshipshapes = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowshipshapes")
num_errors += 1
"playersonradar", "playersradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
playersonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for playersonradar")
num_errors += 1
"missilesonradar", "missilesradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
missilesonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for missilesonradar")
num_errors += 1
"minesonradar", "minesradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
minesonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for minesonradar")
num_errors += 1
"nukesonradar", "nukesradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
nukesonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for nukesonradar")
num_errors += 1
"treasuresonradar", "treasuresradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
treasuresonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for treasuresonradar")
num_errors += 1
"asteroidsonradar", "asteroidsradar":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
asteroidsonradar = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for asteroidsonradar")
num_errors += 1
"distinguishmissiles":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
distinguishmissiles = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for distinguishmissiles")
num_errors += 1
"maxmissilesperpack":
if value.is_valid_int():
maxmissilesperpack = value.to_int()
else:
push_warning("Non-int value for maxmissilesperpack")
num_errors += 1
"maxminesperpack":
if value.is_valid_int():
maxminesperpack = value.to_int()
else:
push_warning("Non-int value for maxminesperpack")
num_errors += 1
"identifymines":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
identifymines = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for identifymines")
num_errors += 1
"shieldeditempickup", "shielditem":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
shieldeditempickup = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for shieldeditempickup")
num_errors += 1
"shieldedmining", "shieldmine":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
shieldedmining = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for shieldedmining")
num_errors += 1
"laserisstungun", "stungun":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
laserisstungun = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for laserisstungun")
num_errors += 1
"nukeminsmarts":
if value.is_valid_int():
nukeminsmarts = value.to_int()
else:
push_warning("Non-int value for nukeminsmarts")
num_errors += 1
"nukeminmines":
if value.is_valid_int():
nukeminmines = value.to_int()
else:
push_warning("Non-int value for nukeminmines")
num_errors += 1
"nukeclusterdamage":
if value.is_valid_float():
nukeclusterdamage = value.to_float()
else:
push_warning("Non-float value for nukeclusterdamage")
num_errors += 1
"minefusetime":
if value.is_valid_float():
minefusetime = value.to_float()
else:
push_warning("Non-float value for minefusetime")
num_errors += 1
"minelife":
if value.is_valid_int():
minelife = value.to_int()
else:
push_warning("Non-int value for minelife")
num_errors += 1
"minminespeed":
if value.is_valid_int():
minminespeed = value.to_int()
else:
push_warning("Non-int value for minminespeed")
num_errors += 1
"missilelife":
if value.is_valid_int():
missilelife = value.to_int()
else:
push_warning("Non-int value for missilelife")
num_errors += 1
"baseminerange":
if value.is_valid_int():
baseminerange = value.to_int()
else:
push_warning("Non-int value for baseminerange")
num_errors += 1
"mineshotdetonatedistance":
if value.is_valid_int():
mineshotdetonatedistance = value.to_int()
else:
push_warning("Non-int value for mineshotdetonatedistance")
num_errors += 1
"shotkillscoremult":
if value.is_valid_float():
shotkillscoremult = value.to_float()
else:
push_warning("Non-float value for shotkillscoremult")
num_errors += 1
"torpedokillscoremult":
if value.is_valid_float():
torpedokillscoremult = value.to_float()
else:
push_warning("Non-float value for torpedokillscoremult")
num_errors += 1
"smartkillscoremult":
if value.is_valid_float():
smartkillscoremult = value.to_float()
else:
push_warning("Non-float value for smartkillscoremult")
num_errors += 1
"heatkillscoremult":
if value.is_valid_float():
heatkillscoremult = value.to_float()
else:
push_warning("Non-float value for heatkillscoremult")
num_errors += 1
"clusterkillscoremult":
if value.is_valid_float():
clusterkillscoremult = value.to_float()
else:
push_warning("Non-float value for clusterkillscoremult")
num_errors += 1
"laserkillscoremult":
if value.is_valid_float():
laserkillscoremult = value.to_float()
else:
push_warning("Non-float value for laserkillscoremult")
num_errors += 1
"tankkillscoremult":
if value.is_valid_float():
tankkillscoremult = value.to_float()
else:
push_warning("Non-float value for tankkillscoremult")
num_errors += 1
"runoverkillscoremult":
if value.is_valid_float():
runoverkillscoremult = value.to_float()
else:
push_warning("Non-float value for runoverkillscoremult")
num_errors += 1
"ballkillscoremult":
if value.is_valid_float():
ballkillscoremult = value.to_float()
else:
push_warning("Non-float value for ballkillscoremult")
num_errors += 1
"explosionkillscoremult":
if value.is_valid_float():
explosionkillscoremult = value.to_float()
else:
push_warning("Non-float value for explosionkillscoremult")
num_errors += 1
"shovekillscoremult":
if value.is_valid_float():
shovekillscoremult = value.to_float()
else:
push_warning("Non-float value for shovekillscoremult")
num_errors += 1
"crashscoremult":
if value.is_valid_float():
crashscoremult = value.to_float()
else:
push_warning("Non-float value for crashscoremult")
num_errors += 1
"minescoremult":
if value.is_valid_float():
minescoremult = value.to_float()
else:
push_warning("Non-float value for minescoremult")
num_errors += 1
"asteroidpoints":
if value.is_valid_float():
asteroidpoints = value.to_float()
else:
push_warning("Non-float value for asteroidpoints")
num_errors += 1
"cannonpoints":
if value.is_valid_float():
cannonpoints = value.to_float()
else:
push_warning("Non-float value for cannonpoints")
num_errors += 1
"asteroidmaxscore":
if value.is_valid_float():
asteroidmaxscore = value.to_float()
else:
push_warning("Non-float value for asteroidmaxscore")
num_errors += 1
"cannonmaxscore":
if value.is_valid_float():
cannonmaxscore = value.to_float()
else:
push_warning("Non-float value for cannonmaxscore")
num_errors += 1
"movingitemprob":
if value.is_valid_float():
movingitemprob = value.to_float()
else:
push_warning("Non-float value for movingitemprob")
num_errors += 1
"dropitemonkillprob":
if value.is_valid_float():
dropitemonkillprob = value.to_float()
else:
push_warning("Non-float value for dropitemonkillprob")
num_errors += 1
"randomitemprob":
if value.is_valid_float():
randomitemprob = value.to_float()
else:
push_warning("Non-float value for randomitemprob")
num_errors += 1
"detonateitemonkillprob":
if value.is_valid_float():
detonateitemonkillprob = value.to_float()
else:
push_warning("Non-float value for detonateitemonkillprob")
num_errors += 1
"destroyitemincollisionprob":
if value.is_valid_float():
destroyitemincollisionprob = value.to_float()
else:
push_warning("Non-float value for destroyitemincollisionprob")
num_errors += 1
"asteroiditemprob":
if value.is_valid_float():
asteroiditemprob = value.to_float()
else:
push_warning("Non-float value for asteroiditemprob")
num_errors += 1
"asteroidmaxitems":
if value.is_valid_int():
asteroidmaxitems = value.to_int()
else:
push_warning("Non-int value for asteroidmaxitems")
num_errors += 1
"itemprobmult":
if value.is_valid_float():
itemprobmult = value.to_float()
else:
push_warning("Non-float value for itemprobmult")
num_errors += 1
"cannonitemprobmult":
if value.is_valid_float():
cannonitemprobmult = value.to_float()
else:
push_warning("Non-float value for cannonitemprobmult")
num_errors += 1
"maxitemdensity":
if value.is_valid_float():
maxitemdensity = value.to_float()
else:
push_warning("Non-float value for maxitemdensity")
num_errors += 1
"asteroidprob":
if value.is_valid_float():
asteroidprob = value.to_float()
else:
push_warning("Non-float value for asteroidprob")
num_errors += 1
"maxasteroiddensity":
if value.is_valid_int():
maxasteroiddensity = value.to_int()
else:
push_warning("Non-int value for maxasteroiddensity")
num_errors += 1
"itemconcentratorradius", "itemconcentratorrange":
if value.is_valid_int():
itemconcentratorradius = value.to_int()
else:
push_warning("Non-int value for itemconcentratorradius")
num_errors += 1
"itemconcentratorprob":
if value.is_valid_float():
itemconcentratorprob = value.to_float()
else:
push_warning("Non-float value for itemconcentratorprob")
num_errors += 1
"asteroidconcentratorradius", "asteroidconcentratorrange":
if value.is_valid_int():
asteroidconcentratorradius = value.to_int()
else:
push_warning("Non-int value for asteroidconcentratorradius")
num_errors += 1
"asteroidconcentratorprob":
if value.is_valid_float():
asteroidconcentratorprob = value.to_float()
else:
push_warning("Non-float value for asteroidconcentratorprob")
num_errors += 1
"rogueheatprob":
if value.is_valid_float():
rogueheatprob = value.to_float()
else:
push_warning("Non-float value for rogueheatprob")
num_errors += 1
"roguemineprob":
if value.is_valid_float():
roguemineprob = value.to_float()
else:
push_warning("Non-float value for roguemineprob")
num_errors += 1
"itemenergypackprob":
if value.is_valid_float():
itemenergypackprob = value.to_float()
else:
push_warning("Non-float value for itemenergypackprob")
num_errors += 1
"itemtankprob":
if value.is_valid_float():
itemtankprob = value.to_float()
else:
push_warning("Non-float value for itemtankprob")
num_errors += 1
"itemecmprob":
if value.is_valid_float():
itemecmprob = value.to_float()
else:
push_warning("Non-float value for itemecmprob")
num_errors += 1
"itemarmorprob":
if value.is_valid_float():
itemarmorprob = value.to_float()
else:
push_warning("Non-float value for itemarmorprob")
num_errors += 1
"itemmineprob":
if value.is_valid_float():
itemmineprob = value.to_float()
else:
push_warning("Non-float value for itemmineprob")
num_errors += 1
"itemmissileprob":
if value.is_valid_float():
itemmissileprob = value.to_float()
else:
push_warning("Non-float value for itemmissileprob")
num_errors += 1
"itemcloakprob":
if value.is_valid_float():
itemcloakprob = value.to_float()
else:
push_warning("Non-float value for itemcloakprob")
num_errors += 1
"itemsensorprob":
if value.is_valid_float():
itemsensorprob = value.to_float()
else:
push_warning("Non-float value for itemsensorprob")
num_errors += 1
"itemwideangleprob":
if value.is_valid_float():
itemwideangleprob = value.to_float()
else:
push_warning("Non-float value for itemwideangleprob")
num_errors += 1
"itemrearshotprob":
if value.is_valid_float():
itemrearshotprob = value.to_float()
else:
push_warning("Non-float value for itemrearshotprob")
num_errors += 1
"itemafterburnerprob":
if value.is_valid_float():
itemafterburnerprob = value.to_float()
else:
push_warning("Non-float value for itemafterburnerprob")
num_errors += 1
"itemtransporterprob":
if value.is_valid_float():
itemtransporterprob = value.to_float()
else:
push_warning("Non-float value for itemtransporterprob")
num_errors += 1
"itemmirrorprob":
if value.is_valid_float():
itemmirrorprob = value.to_float()
else:
push_warning("Non-float value for itemmirrorprob")
num_errors += 1
"itemdeflectorprob":
if value.is_valid_float():
itemdeflectorprob = value.to_float()
else:
push_warning("Non-float value for itemdeflectorprob")
num_errors += 1
"itemhyperjumpprob":
if value.is_valid_float():
itemhyperjumpprob = value.to_float()
else:
push_warning("Non-float value for itemhyperjumpprob")
num_errors += 1
"itemphasingprob":
if value.is_valid_float():
itemphasingprob = value.to_float()
else:
push_warning("Non-float value for itemphasingprob")
num_errors += 1
"itemlaserprob":
if value.is_valid_float():
itemlaserprob = value.to_float()
else:
push_warning("Non-float value for itemlaserprob")
num_errors += 1
"itememergencythrustprob":
if value.is_valid_float():
itememergencythrustprob = value.to_float()
else:
push_warning("Non-float value for itememergencythrustprob")
num_errors += 1
"itemtractorbeamprob":
if value.is_valid_float():
itemtractorbeamprob = value.to_float()
else:
push_warning("Non-float value for itemtractorbeamprob")
num_errors += 1
"itemautopilotprob":
if value.is_valid_float():
itemautopilotprob = value.to_float()
else:
push_warning("Non-float value for itemautopilotprob")
num_errors += 1
"itememergencyshieldprob":
if value.is_valid_float():
itememergencyshieldprob = value.to_float()
else:
push_warning("Non-float value for itememergencyshieldprob")
num_errors += 1
"initialfuel":
if value.is_valid_float():
initialfuel = value.to_float()
else:
push_warning("Non-float value for initialfuel")
num_errors += 1
"initialtanks":
if value.is_valid_int():
initialtanks = value.to_int()
else:
push_warning("Non-int value for initialtanks")
num_errors += 1
"initialarmor":
if value.is_valid_int():
initialarmor = value.to_int()
else:
push_warning("Non-int value for initialarmor")
num_errors += 1
"initialecms":
if value.is_valid_int():
initialecms = value.to_int()
else:
push_warning("Non-int value for initialecms")
num_errors += 1
"initialmines":
if value.is_valid_int():
initialmines = value.to_int()
else:
push_warning("Non-int value for initialmines")
num_errors += 1
"initialmissiles":
if value.is_valid_int():
initialmissiles = value.to_int()
else:
push_warning("Non-int value for initialmissiles")
num_errors += 1
"initialcloaks":
if value.is_valid_int():
initialcloaks = value.to_int()
else:
push_warning("Non-int value for initialcloaks")
num_errors += 1
"initialsensors":
if value.is_valid_int():
initialsensors = value.to_int()
else:
push_warning("Non-int value for initialsensors")
num_errors += 1
"initialwideangles":
if value.is_valid_int():
initialwideangles = value.to_int()
else:
push_warning("Non-int value for initialwideangles")
num_errors += 1
"initialrearshots":
if value.is_valid_int():
initialrearshots = value.to_int()
else:
push_warning("Non-int value for initialrearshots")
num_errors += 1
"initialafterburners":
if value.is_valid_int():
initialafterburners = value.to_int()
else:
push_warning("Non-int value for initialafterburners")
num_errors += 1
"initialtransporters":
if value.is_valid_int():
initialtransporters = value.to_int()
else:
push_warning("Non-int value for initialtransporters")
num_errors += 1
"initialmirrors":
if value.is_valid_int():
initialmirrors = value.to_int()
else:
push_warning("Non-int value for initialmirrors")
num_errors += 1
"maxarmor", "maxarmors":
if value.is_valid_int():
maxarmor = value.to_int()
else:
push_warning("Non-int value for maxarmor")
num_errors += 1
"initialdeflectors":
if value.is_valid_int():
initialdeflectors = value.to_int()
else:
push_warning("Non-int value for initialdeflectors")
num_errors += 1
"initialhyperjumps":
if value.is_valid_int():
initialhyperjumps = value.to_int()
else:
push_warning("Non-int value for initialhyperjumps")
num_errors += 1
"initialphasings":
if value.is_valid_int():
initialphasings = value.to_int()
else:
push_warning("Non-int value for initialphasings")
num_errors += 1
"initiallasers":
if value.is_valid_int():
initiallasers = value.to_int()
else:
push_warning("Non-int value for initiallasers")
num_errors += 1
"initialemergencythrusts":
if value.is_valid_int():
initialemergencythrusts = value.to_int()
else:
push_warning("Non-int value for initialemergencythrusts")
num_errors += 1
"initialtractorbeams":
if value.is_valid_int():
initialtractorbeams = value.to_int()
else:
push_warning("Non-int value for initialtractorbeams")
num_errors += 1
"initialautopilots":
if value.is_valid_int():
initialautopilots = value.to_int()
else:
push_warning("Non-int value for initialautopilots")
num_errors += 1
"initialemergencyshields":
if value.is_valid_int():
initialemergencyshields = value.to_int()
else:
push_warning("Non-int value for initialemergencyshields")
num_errors += 1
"maxfuel":
if value.is_valid_int():
maxfuel = value.to_int()
else:
push_warning("Non-int value for maxfuel")
num_errors += 1
"maxtanks":
if value.is_valid_int():
maxtanks = value.to_int()
else:
push_warning("Non-int value for maxtanks")
num_errors += 1
"maxecms":
if value.is_valid_int():
maxecms = value.to_int()
else:
push_warning("Non-int value for maxecms")
num_errors += 1
"maxmines":
if value.is_valid_int():
maxmines = value.to_int()
else:
push_warning("Non-int value for maxmines")
num_errors += 1
"maxmissiles":
if value.is_valid_int():
maxmissiles = value.to_int()
else:
push_warning("Non-int value for maxmissiles")
num_errors += 1
"maxcloaks":
if value.is_valid_int():
maxcloaks = value.to_int()
else:
push_warning("Non-int value for maxcloaks")
num_errors += 1
"maxsensors":
if value.is_valid_int():
maxsensors = value.to_int()
else:
push_warning("Non-int value for maxsensors")
num_errors += 1
"maxwideangles":
if value.is_valid_int():
maxwideangles = value.to_int()
else:
push_warning("Non-int value for maxwideangles")
num_errors += 1
"maxrearshots":
if value.is_valid_int():
maxrearshots = value.to_int()
else:
push_warning("Non-int value for maxrearshots")
num_errors += 1
"maxafterburners":
if value.is_valid_int():
maxafterburners = value.to_int()
else:
push_warning("Non-int value for maxafterburners")
num_errors += 1
"maxtransporters":
if value.is_valid_int():
maxtransporters = value.to_int()
else:
push_warning("Non-int value for maxtransporters")
num_errors += 1
"maxdeflectors":
if value.is_valid_int():
maxdeflectors = value.to_int()
else:
push_warning("Non-int value for maxdeflectors")
num_errors += 1
"maxphasings":
if value.is_valid_int():
maxphasings = value.to_int()
else:
push_warning("Non-int value for maxphasings")
num_errors += 1
"maxhyperjumps":
if value.is_valid_int():
maxhyperjumps = value.to_int()
else:
push_warning("Non-int value for maxhyperjumps")
num_errors += 1
"maxemergencythrusts":
if value.is_valid_int():
maxemergencythrusts = value.to_int()
else:
push_warning("Non-int value for maxemergencythrusts")
num_errors += 1
"maxlasers":
if value.is_valid_int():
maxlasers = value.to_int()
else:
push_warning("Non-int value for maxlasers")
num_errors += 1
"maxtractorbeams":
if value.is_valid_int():
maxtractorbeams = value.to_int()
else:
push_warning("Non-int value for maxtractorbeams")
num_errors += 1
"maxautopilots":
if value.is_valid_int():
maxautopilots = value.to_int()
else:
push_warning("Non-int value for maxautopilots")
num_errors += 1
"maxemergencyshields":
if value.is_valid_int():
maxemergencyshields = value.to_int()
else:
push_warning("Non-int value for maxemergencyshields")
num_errors += 1
"maxmirrors":
if value.is_valid_int():
maxmirrors = value.to_int()
else:
push_warning("Non-int value for maxmirrors")
num_errors += 1
"gameduration":
if value.is_valid_float():
gameduration = value.to_float()
else:
push_warning("Non-float value for gameduration")
num_errors += 1
"allowviewing":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
allowviewing = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for allowviewing")
num_errors += 1
"friction":
if value.is_valid_float():
friction = value.to_float()
else:
push_warning("Non-float value for friction")
num_errors += 1
"blockfriction":
if value.is_valid_float():
blockfriction = value.to_float()
else:
push_warning("Non-float value for blockfriction")
num_errors += 1
"blockfrictionvisible":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
blockfrictionvisible = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-bool value for blockfrictionvisible")
num_errors += 1
"coriolis":
if value.is_valid_int():
coriolis = value.to_int()
else:
push_warning("Non-int value for coriolis")
num_errors += 1
"checkpointradius":
if value.is_valid_float():
checkpointradius = value.to_float()
else:
push_warning("Non-float value for checkpointradius")
num_errors += 1
"racelaps":
if value.is_valid_int():
racelaps = value.to_int()
else:
push_warning("Non-int value for racelaps")
num_errors += 1
"lockotherteam":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
lockotherteam = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-float value for lockotherteam")
num_errors += 1
"loseitemdestroys":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
loseitemdestroys = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-float value for loseitemdestroys")
num_errors += 1
"usewreckage":
if value.to_lower() == "yes" or value.to_lower() == "true" or value.to_lower() == "no" or value.to_lower() == "false":
usewreckage = (value.to_lower() == "yes" or value.to_lower() == "true")
else:
push_warning("Non-float value for usewreckage")
num_errors += 1
"maxoffensiveitems":
if value.is_valid_int():
maxoffensiveitems = value.to_int()
else:
push_warning("Non-int value for maxoffensiveitems")
num_errors += 1
"maxdefensiveitems":
if value.is_valid_int():
maxdefensiveitems = value.to_int()
else:
push_warning("Non-int value for maxdefensiveitems")
num_errors += 1
"rounddelay":
if value.is_valid_int():
rounddelay = value.to_int()
else:
push_warning("Non-int value for rounddelay")
num_errors += 1
"maxroundtime":
if value.is_valid_int():
maxroundtime = value.to_int()
else:
push_warning("Non-int value for maxroundtime")
num_errors += 1
"roundstoplay":
if value.is_valid_int():
roundstoplay = value.to_int()
else:
push_warning("Non-int value for roundstoplay")
num_errors += 1
"maxpausetime":
if value.is_valid_int():
maxpausetime = value.to_int()
else:
push_warning("Non-int value for maxpausetime")
num_errors += 1
_:
push_warning("Unknown option ", option)