Vollständige Auflistung der konfigurierbaren Parameter für Spielobjekte die einerseits in unserem Dateiformat gespeichert werden soll und andererseits in ein komponentenbasiertes Entity-Design abgebildet.
Entity testEntity
{ renderable = "test object renderable" (string) entityName = "test object" (string) maxHealth = 30.0 (float) regenSpeed = 4.0 (float) armorType = "test object armor" (string) buildTime = 90.5 (float) destructible = true (bool) vulnerable = true (bool) wreckageFadeTime = 15.5 (float) targetSelectionRange = 600 (float) targetMovementBuffer = 200 (float) fixedYaw = false (bool) editorPlaceable = true (bool) editorCategory = "Test Objects" (string) moveSpeed = 270 (float) turnSpeed = 180 (float) abilities = ("radar", "repair") (list of string) collisionRadius = 5.5 (float) wreckageCollisionRadius = 0.0 (float) interfaceRenderable = "test object interface renderable" (string) canProduce = ("grunt", "psycho", "rocket") (list of string) numTurrets = 2 (int) turretPos = ((2.0, 4.0, 5.0), (4.0, 4.0, 5.0)) (list of vector3) allowedTurrets = ("turret rocket", "turret gatling") (list of string) spawnPos = (1.0, 0.0, 2.0) (vector3) exitPos = (3.0, 0.0, 2.0) (vector3) gateOpeningTime = 2.5 (float) hasDriver = true (bool) driverVisible = true (bool) hasHatch = true (bool) allowedDrivers = ("grunt", "sniper", "laser") (list of string) passengersVisible = true (bool) numPassengers = 3 (int) passengerPos = ((1.0, 2.0, 3.0), (2.0, 1.0, 1.0), (2.4, 3.4, 1.3)) (list of vector3) allowedPassengers = ("grunt", "sniper", "laser") (list of string) passengersShoot = true (bool) Cannon cannon1 { isIntegrated = false (bool) anchorPoint = (1.0, 2.0, 1.0) (vector3) anchorAxis = (0.0, 1.0, 0.0) (vector3) exitPoint = (2.0, 2.0, 1.0) (vector3) horzTurnSpeed = 80 (float) horzMaxAngle = 150 (float) vertTurnSpeed = 50 (float) vertMaxAngle = 40 (float) projectileRenderable = "test projectile" (string) projectileSpeed = 1200 (float) hitEffect = "test hit effect" (string) barrelEffect = "test barrel effect" (string) firingAngle = 45 (float) steeringProjectile = true (bool) damage = (15+1d3, 10+1d2, 5) (list of damage w. dice) damageRadius = (3, 10, 15) (list of float) shootDelay = 2.1 (float) shotDuration = 0.85 (float) missileExitTime = 0.5 (float) allowedTargets = ("robot", "tank", "building") (list of string) } Cannon cannon2 { isIntegrated = true exitPoint = (3.0, 2.0, 1.0) projectileSpeed = 0 hitEffect = "test hit effect 2" barrelEffect = "test barrel effect 2" firingAngle = 0 damage = (4) damageRadius = (0) shootDelay = 2.1 shotDuration = 0.55 missileExitTime = 0.2 allowedTargets = ("robot") } }
Renderable test_renderable { NodeTree tree { Node root { position = (0.0, 0.0, 0.0) (vector3) scale = (1.0, 1.0, 1.0) (vector3) orientation = (1.0, 0.0, 0.0, 0.0) (vector3) role = "none" (string) Mesh mesh { meshName = "test.mesh" (string) materialName = "object_material" (string) colourMapName = "test_colour.dds" (string) normalSpecMapName = "test_normal.dds" (string) tintMapName = "test_tint.dds" (string) envMapName = "test_env.dds" (string) boneMapping = (("bone1", "hatch")) (list of string-pairs) animMapping = (("move_anim1", "move"), ("move_anim2", "move"), ("idle_anim1", "idle")) (list of string-pairs) paramMapping = (("playerColour", "tintColour"), ("chainMovement", "chainMove")) (list of string-pairs) } Node driver { position = (0.0, 0.0, 0.0) scale = (1.0, 1.0, 1.0) orientation = (1.0, 0.0, 0.0, 0.0) role = "driverAnchor" } } } State normal { } State damaged { NodeOverwrite root { position = (0.0, 0.0, 0.0) (vector3) scale = (1.0, 1.0, 1.0) (vector3) orientation = (1.0, 0.0, 0.0, 0.0) (vector3) role = "none" (string) MeshOverwrite { materialName = "object_damaged_material" (string) colourMapName = "test_damaged_colour.dds" (string) normalSpecMapName = "test_damaged_normal.dds" (string) tintMapName = "test_damaged_tint.dds" (string) envMapName = "test_damaged_env.dds" (string) boneMapping = (("bone1", "hatch")) (list of string-pairs) animMapping = (("move_anim1", "move"), ("move_anim2", "move"), ("idle_anim1", "idle")) (list of string-pairs) paramMapping = (("playerColour", "tintColour"), ("chainMovement", "chainMove")) (list of string-pairs) } } } }