{
 "id": "vehicle.space.speeder/hover-cargo-skiff",
 "version": 2,
 "name": "Cargo hover skiff",
 "summary": "Original open utility hover skiff: 9.0 m long, 3.8 m wide, 2.4 m high, 0.6 m ride height; 4 pivoted lift fans, rear driver station and secured cargo.",
 "tags": [
  "cargo",
  "hover",
  "sci-fi",
  "skiff",
  "space",
  "speeder",
  "speeders",
  "utility",
  "vehicle"
 ],
 "style": "realistic",
 "status": "candidate",
 "frame": {
  "contract": "library/hover-+Z-front-+X-left-origin-ground",
  "up": "+Y",
  "unit": "m",
  "front": "+Z"
 },
 "size": {
  "measured_m": {
   "w": 3.8,
   "l": 9.0,
   "h": 2.4
  },
  "source": "measured",
  "scale_to_class": 1.0
 },
 "bounds": {
  "geometry": {
   "min": [
    -1.9,
    0.6,
    -4.5
   ],
   "max": [
    1.9,
    3.0,
    4.5
   ]
  },
  "footprint": {
   "kind": "rect",
   "minX": -1.9,
   "maxX": 1.9,
   "minZ": -4.5,
   "maxZ": 4.5,
   "source": "measured"
  },
  "collider": {
   "parts": [
    {
     "type": "box",
     "x": 0.0,
     "y": 1.8,
     "z": 0.0,
     "hx": 1.9,
     "hy": 1.2,
     "hz": 4.5
    }
   ],
   "source": "guessed"
  }
 },
 "placement": {
  "role": null,
  "notes": null,
  "source": null
 },
 "sockets": [
  {
   "name": "foot_l",
   "role": "foot",
   "parent": null,
   "pos": [
    0.19,
    1.54,
    -3.07
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "foot_r",
   "role": "foot",
   "parent": null,
   "pos": [
    -0.19,
    1.54,
    -3.07
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "hand_l",
   "role": "hand",
   "parent": null,
   "pos": [
    0.245,
    2.27,
    -3.14
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "hand_r",
   "role": "hand",
   "parent": null,
   "pos": [
    -0.165,
    2.27,
    -3.14
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_head_l",
   "role": "light",
   "parent": null,
   "pos": [
    0.72,
    1.045,
    4.43
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_head_r",
   "role": "light",
   "parent": null,
   "pos": [
    -0.72,
    1.045,
    4.43
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_tail_l",
   "role": "light",
   "parent": null,
   "pos": [
    0.72,
    1.17,
    -4.43
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "light_tail_r",
   "role": "light",
   "parent": null,
   "pos": [
    -0.72,
    1.17,
    -4.43
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "seat_driver",
   "role": "seat",
   "parent": null,
   "pos": [
    0.0,
    2.07,
    -3.61
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "camera_chase",
   "role": "camera",
   "parent": null,
   "pos": [
    0.0,
    4.1,
    -7.8
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "lift_1",
   "role": "lift",
   "parent": null,
   "pos": [
    1.289,
    0.6,
    3.02
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "lift_2",
   "role": "lift",
   "parent": null,
   "pos": [
    -1.289,
    0.6,
    3.02
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "lift_3",
   "role": "lift",
   "parent": null,
   "pos": [
    1.289,
    0.6,
    -3.02
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "lift_4",
   "role": "lift",
   "parent": null,
   "pos": [
    -1.289,
    0.6,
    -3.02
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "thruster_1",
   "role": "thruster",
   "parent": null,
   "pos": [
    0.72,
    0.91,
    -4.423
   ],
   "rot": null,
   "source": "authored"
  },
  {
   "name": "thruster_2",
   "role": "thruster",
   "parent": null,
   "pos": [
    -0.72,
    0.91,
    -4.423
   ],
   "rot": null,
   "source": "authored"
  }
 ],
 "nodes": {
  "body": [
   "Hull"
  ],
  "thrusters": [
   "Thruster_1",
   "Thruster_2"
  ],
  "lifts": [
   "Lift_1",
   "Lift_2",
   "Lift_3",
   "Lift_4"
  ],
  "fans": [
   "Fan_FL",
   "Fan_FR",
   "Fan_RL",
   "Fan_RR"
  ],
  "moving": {
   "Fan_FL": {
    "kind": "spinner",
    "axis": [
     0,
     1,
     0
    ],
    "axis_source": "default"
   },
   "Fan_FR": {
    "kind": "spinner",
    "axis": [
     0,
     1,
     0
    ],
    "axis_source": "default"
   },
   "Fan_RL": {
    "kind": "spinner",
    "axis": [
     0,
     1,
     0
    ],
    "axis_source": "default"
   },
   "Fan_RR": {
    "kind": "spinner",
    "axis": [
     0,
     1,
     0
    ],
    "axis_source": "default"
   }
  },
  "axes": {
   "Fan_FL": [
    0,
    1,
    0
   ],
   "Fan_FR": [
    0,
    1,
    0
   ],
   "Fan_RL": [
    0,
    1,
    0
   ],
   "Fan_RR": [
    0,
    1,
    0
   ]
  },
  "limits": {}
 },
 "paint": {
  "encoding": "material factor",
  "material": "Paint",
  "default": [
   0.5,
   0.42,
   0.3
  ],
  "paints": [
   [
    0.5,
    0.42,
    0.3
   ],
   [
    0.78,
    0.8,
    0.77
   ],
   [
    0.78,
    0.19,
    0.045
   ],
   [
    0.84,
    0.61,
    0.075
   ],
   [
    0.055,
    0.34,
    0.3
   ],
   [
    0.29,
    0.49,
    0.65
   ]
  ],
  "names": [
   "Worn sand",
   "Chalk white",
   "Industrial orange",
   "Safety yellow",
   "Harbour teal",
   "Pale blue"
  ],
  "colour_space": "linear",
  "how": "set the Paint material's color (linear RGB) to recolour; nothing else uses Paint"
 },
 "render": {
  "tris": 83326,
  "verts": 85896,
  "materials": 9,
  "draw_calls": 17,
  "textures": [
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     64,
     64
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     512,
     512
    ],
    "fmt": "ktx2"
   },
   {
    "px": [
     1024,
     1024
    ],
    "fmt": "ktx2"
   }
  ],
  "gpu_mb_decoded": 12.6,
  "bytes": 1479032,
  "codec": "draco",
  "extensions": [
   "KHR_draco_mesh_compression",
   "KHR_materials_emissive_strength",
   "KHR_materials_ior",
   "KHR_materials_transmission",
   "KHR_texture_basisu"
  ]
 },
 "rig": null,
 "animations": [],
 "gameplay": {
  "source": "measured",
  "length": 9.0,
  "beam": 3.8,
  "height": 2.4,
  "scale": "vehicle",
  "hover_height": 0.6
 },
 "techniques": [
  "baked-pbr",
  "draco",
  "paint-factor",
  "repaint-all-round",
  "textured"
 ],
 "provenance": {
  "author": "gpt-6-astra (Blender)",
  "source": "jobs/hover-cargo-skiff-v1",
  "kit": "library-author",
  "job": "hover-cargo-skiff-v1",
  "feedback": null,
  "imported": "2026-10-07",
  "file_origin": "~/forge-build/forge-assets/jobs/hover-cargo-skiff-v1/hover-cargo-skiff.glb",
  "parent": {
   "id": "vehicle.space.speeder/hover-cargo-skiff",
   "version": 1,
   "release": "sha256:6c08339c988a06a0f73a13cbbae79d44495a5e0d595d6a5b6844b54d8b33f469"
  },
  "variant": {
   "kind": "retexture",
   "note": "painted copy (GPT Image 2 + forge-repaint), same mesh"
  }
 },
 "licence": {
  "kind": "owned",
  "game_use": true,
  "raw_redistribute": false,
  "evidence": "Forge Astra Blender job hover-cargo-skiff-v1 (Nano Banana Pro sheet, CC0 Poly Haven textures: fan_test, metal_plate, rusty_metal_02, rusty_painted_metal, wood_planks)"
 },
 "quality": {
  "gates": "fail: decoded texture memory 13 MB > 12 MB budget",
  "judge": null
 },
 "files": {
  "glb": "sha256:fc88c47ef5394706e4a33c659856b4f5f586f7cfc3586a0f5ec6dd98238abfe4",
  "painted_glb": "sha256:f601c7dea52dc8f17d33aea09b023c14eddca45a9aebf83c7857ec4ffd02b58e"
 },
 "deps": [],
 "release": "sha256:5d393b6d8c2d5a666057bed81984b2c2b833addf3ec83da0c60a4d57ecac1cf5",
 "painted": {
  "editor": "GPT Image 2 (Codex)",
  "method": "forge-repaint all-round (render, image edit, project back)",
  "views_kept": 8,
  "views_tried": 9,
  "pictures": 10,
  "outside_painted": 0.8072023248195175,
  "tris": 83326,
  "bytes": 1417452,
  "gpu_mb_decoded": 7.7,
  "how": "files.painted_glb = a static one-material copy with the repainted texture: no moving parts and no Paint recolour; use files.glb for gameplay"
 }
}
