orbit/data/ship.json

28 lines
1.4 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"_art": "texture/frameWidth/frameHeight/frame = the spritesheet (frame 0 = the starter ship, 256×256 frames; the ship is drawn centered in its frame and rotates about that center). artFacing = the direction the art points in its frame — the code applies a constant render offset so heading math stays identical. If the sheet is missing, the built-in procedural dart is drawn instead (it faces east). size = hull length in world px (also its collision 'diameter'); scale multiplies it (1 = as designed).",
"texture": "assets/images/ships-player.png",
"frameWidth": 256,
"frameHeight": 256,
"frame": 0,
"artFacing": "north",
"size": 46,
"color": "#dfe7ff",
"cockpitColor": "#41c7ff",
"scale": 1,
"thrust": 900,
"maxSpeed": 480,
"drag": 2.4,
"rotSpeed": 10,
"brakeDistance": 260,
"arriveRadius": 8,
"arriveSpeed": 50,
"stats": {
"_comment": "Base stats — the ship's starting condition, before any upgrades (builds/research layer deltas on top). hullIntegrity = the hull's max health (damage it can take); shields = damage absorbed in front of the hull; cargoHold = goods capacity; mineralStorage = minerals capacity; miningSpeed = multiplier on mining rate (1 = baseline). Exposed as ship.stats (js/entities/Ship.js); combat/trading/mining systems will read these as capacities.",
"hullIntegrity": 100,
"shields": 0,
"cargoHold": 100,
"mineralStorage": 250,
"miningSpeed": 1
}
}