mirror of
https://github.com/exogen/t2-model-skinner.git
synced 2026-07-12 06:55:13 +00:00
add build:models step
This commit is contained in:
parent
14bdf8545b
commit
79a075bcad
13 changed files with 1112 additions and 820 deletions
|
|
@ -1,734 +0,0 @@
|
|||
import { globby } from "globby";
|
||||
import orderBy from "lodash.orderby";
|
||||
|
||||
const models = [
|
||||
"lmale",
|
||||
"mmale",
|
||||
"hmale",
|
||||
"lfemale",
|
||||
"mfemale",
|
||||
"hfemale",
|
||||
"lbioderm",
|
||||
"mbioderm",
|
||||
"hbioderm",
|
||||
];
|
||||
|
||||
export async function getSkinConfig() {
|
||||
const defaultSkins = await Promise.all(
|
||||
models.map((name) => globby(`./public/textures/*.${name}.png`))
|
||||
);
|
||||
|
||||
return {
|
||||
defaultSkins: models.reduce((skins, name, i) => {
|
||||
skins[name] = orderBy(
|
||||
defaultSkins[i].map((name) =>
|
||||
name.replace(/(^.*\/|\.[lmh](male|female|bioderm)\.png$)/g, "")
|
||||
),
|
||||
[(name) => name.toLowerCase()],
|
||||
["asc"]
|
||||
);
|
||||
return skins;
|
||||
}, {}),
|
||||
modelDefaults: {
|
||||
// Players
|
||||
lmale: "Blood Eagle",
|
||||
mmale: "Blood Eagle",
|
||||
hmale: "Blood Eagle",
|
||||
lfemale: "Blood Eagle",
|
||||
mfemale: "Blood Eagle",
|
||||
hfemale: "Blood Eagle",
|
||||
lbioderm: "Storm",
|
||||
mbioderm: "Storm",
|
||||
hbioderm: "Storm",
|
||||
// Weapons
|
||||
chaingun: "weapon_chaingun",
|
||||
disc: "weapon_disc",
|
||||
elf: "weapon_elf",
|
||||
energy: "weapon_energy",
|
||||
grenade_launcher: "weapon_grenade_launcher",
|
||||
mine: "mine",
|
||||
missile: "weapon_missile",
|
||||
mortar: "weapon_mortar",
|
||||
plasmathrower: "weapon_plasmathrower",
|
||||
repair: "weapon_repair",
|
||||
shocklance: "weapon_shocklance",
|
||||
sniper: "weapon_sniper",
|
||||
targeting: "weapon_targeting",
|
||||
// Vehicles
|
||||
vehicle_land_mpbbase: "vehicle_land_mpbbase",
|
||||
vehicle_grav_scout: "vehicle_grav_scout",
|
||||
vehicle_grav_tank: "vehicle_grav_tank",
|
||||
turret_assaulttank_mortar: "turret_assaulttank_mortar",
|
||||
vehicle_air_scout: "vehicle_air_scout",
|
||||
vehicle_air_bomber: "vehicle_air_bomber",
|
||||
vehicle_air_hapc: "vehicle_air_hapc",
|
||||
},
|
||||
animationLabels: {
|
||||
Forward: "Run Forward",
|
||||
Back: "Run Backward",
|
||||
Back0: "Run Backward",
|
||||
Root: "Idle",
|
||||
Root2: "Run Backward",
|
||||
Root3: "Idle",
|
||||
Idlepda: "Idle (PDA)",
|
||||
PDA: "Idle (PDA)",
|
||||
Root1: "Idle (PDA)",
|
||||
Jump: "Jump",
|
||||
Jump0: "Jump (Alternate)",
|
||||
Jump1: "Jump (Alternate)",
|
||||
Jump2: "Jump (Alternate)",
|
||||
Jump3: "Jump (Alternate)",
|
||||
Jet: "Jet",
|
||||
Fall: "Fall",
|
||||
Land: "Land",
|
||||
Land1: "Land (Alternate)",
|
||||
ski: "Ski",
|
||||
Side: "Strafe Left",
|
||||
Celwave: "Wave",
|
||||
Celbow: "Bow",
|
||||
Celdisco: "Dance",
|
||||
Celdance: "Dance",
|
||||
Celflex: "Flex",
|
||||
Celflex1: "Flex",
|
||||
Celrocky: "Awesome",
|
||||
Celjump: "Awesome",
|
||||
Celsalute: "Salute",
|
||||
celTaunt: "Too Bad",
|
||||
CelebrationGora: "Wave Arms",
|
||||
Celgora: "Wave Arms",
|
||||
CelebrationJump: "Bull Charge",
|
||||
Tauntbull: "Bull Charge",
|
||||
CelebrationJump0: "Celebrate",
|
||||
CelebrationJump4: "The Greatest",
|
||||
CelebrationRoar: "Roar",
|
||||
Celroar: "Roar",
|
||||
Celraor: "Roar",
|
||||
Celflex2: "Flex",
|
||||
celyeah: "Yeah",
|
||||
celtaunt: "Too Bad",
|
||||
Tauntbutt: "Butt",
|
||||
Tauntkiss: "Blow Kiss",
|
||||
Tauntbest: "The Greatest",
|
||||
Taunimp: "Move!",
|
||||
Tauntimp: "Move!",
|
||||
Sitting: "Sit",
|
||||
Scoutroot: "Gravcycle",
|
||||
Recoilde: "Recoil",
|
||||
Light_recoil: "Recoil",
|
||||
Dieforward: "Death (Fall Forward)",
|
||||
DeathForward: "Death (Fall Forward)",
|
||||
Dieslump: "Death (Slump)",
|
||||
DeathSlump: "Death (Slump)",
|
||||
Diespin: "Death (Spin)",
|
||||
DeathSpin: "Death (Spin)",
|
||||
diechest: "Death (Hold Chest)",
|
||||
Diechest: "Death (Hold Chest)",
|
||||
DeathChest: "Death (Hold Chest)",
|
||||
Dieback: "Death (Hold Back)",
|
||||
DeathBack: "Death (Hold Back)",
|
||||
Diehead: "Death (Hold Head)",
|
||||
DeathHead: "Death (Hold Head)",
|
||||
Dieknees: "Death (On Knees)",
|
||||
DeathKnees: "Death (On Knees)",
|
||||
Dieleglf: "Death (Left Leg Injury)",
|
||||
Dieleglft: "Death (Left Leg Injury)",
|
||||
DeathLegLeft: "Death (Left Leg Injury)",
|
||||
Dielegrt: "Death (Right Leg Injury)",
|
||||
Dielegtrt: "Death (Right Leg Injury)",
|
||||
DeathLegRight: "Death (Right Leg Injury)",
|
||||
Dielegrt0: "Death (Right Leg Injury)",
|
||||
Diesidelf: "Death (Left Side)",
|
||||
DeathSideLeft: "Death (Left Side)",
|
||||
Diesidert: "Death (Right Side)",
|
||||
DeathSideRight: "Death (Right Side)",
|
||||
Diesidert0: "Death (Right Side Alternate)",
|
||||
},
|
||||
cameraOverrides: {
|
||||
chaingun: { target: "0m 0m 0m", fov: "12deg" },
|
||||
plasmathrower: { target: "0.002m -0.001m 0m", fov: "12deg" },
|
||||
energy: { fov: "31deg", orbit: "135deg 70deg 105%" },
|
||||
hmale: { fov: "24deg" },
|
||||
hfemale: { fov: "24deg" },
|
||||
hbioderm: { fov: "24deg" },
|
||||
vehicle_grav_scout: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_grav_tank: { orbit: "290deg 60deg 130%" },
|
||||
turret_assaulttank_mortar: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_land_mpbbase: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_scout: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_bomber: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_hapc: { orbit: "290deg 60deg 130%" },
|
||||
},
|
||||
animationLabelOverrides: {
|
||||
mmale: {
|
||||
Back: "Strafe Left",
|
||||
},
|
||||
mfemale: {
|
||||
Dielegrt: "Death (Slump)",
|
||||
},
|
||||
lbioderm: {
|
||||
Root: "Gravcycle",
|
||||
},
|
||||
},
|
||||
materials: {
|
||||
lmale: [{ name: "base", label: "Warrior", fileSuffix: ".lmale" }],
|
||||
mmale: [{ name: "base", label: "Warrior", fileSuffix: ".mmale" }],
|
||||
hmale: [{ name: "base", label: "Warrior", fileSuffix: ".hmale" }],
|
||||
lfemale: [{ name: "base", label: "Warrior", fileSuffix: ".lfemale" }],
|
||||
mfemale: [{ name: "base", label: "Warrior", fileSuffix: ".mfemale" }],
|
||||
lbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".lbioderm" }],
|
||||
mbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".mbioderm" }],
|
||||
hbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".hbioderm" }],
|
||||
disc: [
|
||||
{ name: "weapon_disc", label: "Weapon" },
|
||||
{
|
||||
name: "dcase00",
|
||||
label: "Disc Case",
|
||||
size: [256, 256],
|
||||
baseColorFactor: [1, 1, 1, 0.7],
|
||||
emissiveFactor: [1, 1, 1],
|
||||
emissiveTexture: true,
|
||||
alphaMode: "BLEND",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
frameCount: 6,
|
||||
frameTimings: [21, 1, 1, 1, 1, 1],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
chaingun: [{ label: "Chaingun", name: "weapon_chaingun" }],
|
||||
grenade_launcher: [
|
||||
{ label: "Grenade Launcher", name: "weapon_grenade_launcher" },
|
||||
],
|
||||
sniper: [
|
||||
{ label: "Weapon", name: "weapon_sniper" },
|
||||
{
|
||||
label: "Green Light",
|
||||
name: "greenlight",
|
||||
hasDefault: false,
|
||||
optional: true,
|
||||
},
|
||||
{
|
||||
label: "Red Light",
|
||||
name: "lite_red",
|
||||
hasDefault: false,
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
plasmathrower: [
|
||||
{
|
||||
label: "Rear & Barrel",
|
||||
name: "weapon_plasma10",
|
||||
file: "weapon_plasma1",
|
||||
},
|
||||
{
|
||||
label: "Top & Front",
|
||||
name: "weapon_plasma21",
|
||||
file: "weapon_plasma2",
|
||||
},
|
||||
{
|
||||
name: "weapon_plasma1",
|
||||
file: "weapon_plasma1",
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "weapon_plasma2",
|
||||
file: "weapon_plasma2",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
energy: [
|
||||
{
|
||||
label: "Weapon",
|
||||
name: "blinn1",
|
||||
file: "weapon_energy",
|
||||
},
|
||||
],
|
||||
shocklance: [
|
||||
{ label: "Weapon", name: "weapon_shocklance", size: [512, 256] },
|
||||
{
|
||||
label: "Glow",
|
||||
name: "weapon_shocklance_glow_",
|
||||
file: "weapon_shocklance_glow ",
|
||||
emissiveFactor: [1, 1, 1],
|
||||
alphaMode: "MASK",
|
||||
alphaCutoff: 255,
|
||||
emissiveTexture: true,
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [256, 128],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
elf: [
|
||||
{ label: "Weapon", name: "weapon_elf", file: "weapon_elf" },
|
||||
{
|
||||
label: "Glow",
|
||||
name: "weapon_elf0",
|
||||
file: "weapon_elf",
|
||||
},
|
||||
],
|
||||
missile: [{ label: "Weapon", name: "weapon_missile" }],
|
||||
mortar: [{ label: "Weapon", name: "weapon_mortar" }],
|
||||
repair: [{ label: "Weapon", name: "weapon_repair" }],
|
||||
targeting: [{ label: "Weapon", name: "weapon_targeting" }],
|
||||
mine: [
|
||||
{
|
||||
label: "Weapon",
|
||||
name: "mine",
|
||||
size: [512, 512],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
},
|
||||
],
|
||||
// Vehicles
|
||||
vehicle_air_scout: [
|
||||
{
|
||||
label: "Vehicle",
|
||||
name: "vehicle_air_scout0",
|
||||
file: "vehicle_air_scout",
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_scout",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Flare",
|
||||
name: "shrikeflare2",
|
||||
emissiveFactor: [0, 0, 0],
|
||||
alphaMode: "BLEND",
|
||||
emissiveTexture: true,
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [256, 256],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
vehicle_air_bomber: [
|
||||
{
|
||||
label: "Cockpit & Thrusters",
|
||||
name: "vehicle_air_bomber10",
|
||||
file: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Rear",
|
||||
name: "vehicle_air_bomber2",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
label: "Wings",
|
||||
name: "vehicle_air_bomber31",
|
||||
file: "vehicle_air_bomber3",
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_bomber3",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
vehicle_air_hapc: [
|
||||
{
|
||||
label: "Cockpit",
|
||||
name: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Wings",
|
||||
name: "vehicle_air_hpc2",
|
||||
},
|
||||
{
|
||||
label: "Seats",
|
||||
name: "vehicle_air_hpc1",
|
||||
},
|
||||
{
|
||||
label: "Thrusters",
|
||||
name: "vehicle_air_hpc30",
|
||||
file: "vehicle_air_hpc3",
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_hpc3",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
vehicle_grav_scout: [
|
||||
{
|
||||
label: "Vehicle",
|
||||
name: "Vehicle_grav_scout0",
|
||||
file: "Vehicle_grav_scout",
|
||||
size: [512, 256],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Pipes",
|
||||
name: "Vehicle_grav_scout_pipes1",
|
||||
file: "Vehicle_grav_scout_pipes",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
},
|
||||
{
|
||||
name: "Vehicle_grav_scout",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Side Thrusters",
|
||||
name: "Vehicle_grav_scout_pipes",
|
||||
file: "Vehicle_grav_scout_pipes",
|
||||
emissiveFactor: [1, 1, 1],
|
||||
alphaMode: "OPAQUE",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
emissiveTexture: true,
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
label: "Windshield",
|
||||
name: "Vehicle_grav_scout_windshield",
|
||||
file: "Vehicle_grav_scout_windshield",
|
||||
selectable: false,
|
||||
alphaMode: "BLEND",
|
||||
baseColorFactor: [1, 1, 1, 0.5],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [128, 128],
|
||||
optional: true,
|
||||
},
|
||||
{
|
||||
label: "Windshield Inner",
|
||||
name: "Vehicle_grav_scout_windshieldInner",
|
||||
file: "Vehicle_grav_scout_windshieldInner",
|
||||
selectable: false,
|
||||
alphaMode: "BLEND",
|
||||
baseColorFactor: [1, 1, 1, 0.5],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [128, 128],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
vehicle_grav_tank: [
|
||||
{
|
||||
label: "Center",
|
||||
name: "Vehicle_grav_tank_bodyMain",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Sides",
|
||||
name: "vehicle_grav_tank_bodyside10",
|
||||
file: "vehicle_grav_tank_bodyside1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
label: "Thrusters",
|
||||
name: "vehicle_grav_tank_bodyside21",
|
||||
file: "vehicle_grav_tank_bodyside2",
|
||||
},
|
||||
{
|
||||
name: "vehicle_grav_tank_bodyside2",
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_grav_tank_bodyside1",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
turret_assaulttank_mortar: [
|
||||
{
|
||||
label: "Turret",
|
||||
name: "turret_assaulttank_mortar",
|
||||
file: "turret_assaultTank",
|
||||
},
|
||||
],
|
||||
vehicle_land_mpbbase: [
|
||||
{
|
||||
label: "Vehicle Front",
|
||||
name: "vehicle_land_mpb1",
|
||||
},
|
||||
{
|
||||
label: "Vehicle Back",
|
||||
name: "vehicle_land_mpb2",
|
||||
},
|
||||
{
|
||||
label: "Wheels",
|
||||
name: "Vehicle_Land_Assault_wheel",
|
||||
file: "Vehicle_Land_Assault_Wheel",
|
||||
size: [512, 256],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
animations: {
|
||||
global: [
|
||||
"Forward",
|
||||
"Back",
|
||||
// "Head",
|
||||
"Jump",
|
||||
"Jet",
|
||||
"Fall",
|
||||
"Land",
|
||||
"ski",
|
||||
// "Lookde",
|
||||
// "Looknw",
|
||||
"Root",
|
||||
],
|
||||
lmale: [
|
||||
"Idlepda",
|
||||
"Side",
|
||||
"Jump0",
|
||||
"Land1",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdisco",
|
||||
"Celflex",
|
||||
"Celrocky",
|
||||
"Celsalute",
|
||||
"celTaunt",
|
||||
"Taunimp",
|
||||
"Tauntbest",
|
||||
"Dieback",
|
||||
"diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
"Scoutroot",
|
||||
"Sitting",
|
||||
],
|
||||
mmale: [
|
||||
"Back0",
|
||||
"Jump3",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdance",
|
||||
"Celflex",
|
||||
"Celrocky",
|
||||
"Celsalute",
|
||||
"celtaunt",
|
||||
"Tauntbest",
|
||||
"Tauntimp",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diespin",
|
||||
// "Head1",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
// "Root2",
|
||||
"Sitting",
|
||||
],
|
||||
hmale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdance",
|
||||
"Celflex",
|
||||
"Celjump",
|
||||
"Celsalute",
|
||||
"celtaunt",
|
||||
"Tauntbest",
|
||||
"Tauntimp",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diesidert0",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Lookms",
|
||||
],
|
||||
lfemale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celbow",
|
||||
"Celdance",
|
||||
"Celsalute",
|
||||
"Tauntbest",
|
||||
"Tauntbutt",
|
||||
"Tauntimp",
|
||||
"Tauntkiss",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
"Scoutroot",
|
||||
"Sitting",
|
||||
],
|
||||
mfemale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celbow",
|
||||
"Celdisco",
|
||||
"Celsalute",
|
||||
"Tauntbest",
|
||||
"Tauntbutt",
|
||||
"Tauntimp",
|
||||
"Tauntkiss",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Dielegrt0",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Looksn",
|
||||
// "Lookth",
|
||||
"Sitting",
|
||||
],
|
||||
lbioderm: [
|
||||
"Root3",
|
||||
"PDA",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Light_recoil",
|
||||
"CelebrationGora",
|
||||
"CelebrationJump",
|
||||
"CelebrationJump0",
|
||||
"CelebrationJump4",
|
||||
"CelebrationRoar",
|
||||
"Salute",
|
||||
"Celflex2",
|
||||
"celyeah",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathForward",
|
||||
"DeathHead",
|
||||
"DeathKnees",
|
||||
"DeathLegLeft",
|
||||
"DeathLegRight",
|
||||
"DeathSideLeft",
|
||||
"DeathSideRight",
|
||||
"DeathSlump",
|
||||
"DeathSpin",
|
||||
// "Head1",
|
||||
// "Lookms",
|
||||
"Sitting",
|
||||
],
|
||||
mbioderm: [
|
||||
"Root1",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Salute",
|
||||
"Celflex1",
|
||||
"Celgora",
|
||||
"Celjump",
|
||||
"Celroar",
|
||||
"celyeah",
|
||||
"Tauntbest",
|
||||
"Tauntbull",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathHead",
|
||||
"DeathSideLeft",
|
||||
"DeathSpin",
|
||||
"Dieforward",
|
||||
"Dieknees",
|
||||
"Dieleglft",
|
||||
"Dielegtrt",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
"Sitting",
|
||||
],
|
||||
hbioderm: [
|
||||
"Root1",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Salute",
|
||||
"Celflex2",
|
||||
"Celgora",
|
||||
"Celjump",
|
||||
"Celraor",
|
||||
"celyeah",
|
||||
"Tauntbest",
|
||||
"Tauntbull",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathForward",
|
||||
"DeathHead",
|
||||
"DeathKnees",
|
||||
"DeathLegLeft",
|
||||
"DeathLegRight",
|
||||
"DeathSideLeft",
|
||||
"DeathSideRight",
|
||||
"DeathSlump",
|
||||
"DeathSpin",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
],
|
||||
},
|
||||
};
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -11,7 +11,7 @@ f:"$Sreact.suspense"
|
|||
11:I[68027,[],"default"]
|
||||
:HL["/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","style"]
|
||||
:HL["/t2-model-skinner/_next/static/chunks/be25e0c53b3e76c3.css","style"]
|
||||
0:{"P":null,"b":"PVUb_yF9G21U3L0XIp__W","p":"/t2-model-skinner","c":["","gallery",""],"i":false,"f":[[["",{"children":["gallery",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":["gallery",["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","searchParams":{},"params":{},"promises":["$@6","$@7"]}],[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/be25e0c53b3e76c3.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/t2-model-skinner/_next/static/chunks/ff1a16fafef87110.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/t2-model-skinner/_next/static/chunks/6d7b92f74fb4b5af.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/t2-model-skinner/_next/static/chunks/3710394f99078da4.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$L9",["$","$La",null,{"promise":"$@b"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Lc",null,{"children":"$Ld"}],null],["$","$Le",null,{"children":["$","div",null,{"hidden":true,"children":["$","$f",null,{"fallback":null,"children":"$L10"}]}]}]]}],false]],"m":"$undefined","G":["$11",[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"s":false,"S":true}
|
||||
0:{"P":null,"b":"Vx_atjNO8Iysn7kMNwaQO","p":"/t2-model-skinner","c":["","gallery",""],"i":false,"f":[[["",{"children":["gallery",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":["gallery",["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","searchParams":{},"params":{},"promises":["$@6","$@7"]}],[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/be25e0c53b3e76c3.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/t2-model-skinner/_next/static/chunks/ff1a16fafef87110.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/t2-model-skinner/_next/static/chunks/6d7b92f74fb4b5af.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/t2-model-skinner/_next/static/chunks/3710394f99078da4.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$L9",["$","$La",null,{"promise":"$@b"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Lc",null,{"children":"$Ld"}],null],["$","$Le",null,{"children":["$","div",null,{"hidden":true,"children":["$","$f",null,{"fallback":null,"children":"$L10"}]}]}]]}],false]],"m":"$undefined","G":["$11",[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"s":false,"S":true}
|
||||
6:{}
|
||||
7:"$0:f:0:1:2:children:2:children:1:props:children:0:props:params"
|
||||
d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -11,7 +11,7 @@ f:"$Sreact.suspense"
|
|||
11:I[68027,[],"default"]
|
||||
:HL["/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","style"]
|
||||
:HL["/t2-model-skinner/_next/static/chunks/df18f9fdc6a3cb7c.css","style"]
|
||||
0:{"P":null,"b":"PVUb_yF9G21U3L0XIp__W","p":"/t2-model-skinner","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","searchParams":{},"params":{},"promises":["$@6","$@7"]}],[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/df18f9fdc6a3cb7c.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/t2-model-skinner/_next/static/chunks/00e36f5c4a673582.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/t2-model-skinner/_next/static/chunks/d9e502f7607fcfba.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/t2-model-skinner/_next/static/chunks/ada16a90703ade36.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/t2-model-skinner/_next/static/chunks/ff0e0c566323c690.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/t2-model-skinner/_next/static/chunks/a55df98dcb3b60ad.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$L9",["$","$La",null,{"promise":"$@b"}]]}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Lc",null,{"children":"$Ld"}],null],["$","$Le",null,{"children":["$","div",null,{"hidden":true,"children":["$","$f",null,{"fallback":null,"children":"$L10"}]}]}]]}],false]],"m":"$undefined","G":["$11",[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"s":false,"S":true}
|
||||
0:{"P":null,"b":"Vx_atjNO8Iysn7kMNwaQO","p":"/t2-model-skinner","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","searchParams":{},"params":{},"promises":["$@6","$@7"]}],[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/df18f9fdc6a3cb7c.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/t2-model-skinner/_next/static/chunks/00e36f5c4a673582.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/t2-model-skinner/_next/static/chunks/d9e502f7607fcfba.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/t2-model-skinner/_next/static/chunks/ada16a90703ade36.js","async":true,"nonce":"$undefined"}],["$","script","script-3",{"src":"/t2-model-skinner/_next/static/chunks/ff0e0c566323c690.js","async":true,"nonce":"$undefined"}],["$","script","script-4",{"src":"/t2-model-skinner/_next/static/chunks/a55df98dcb3b60ad.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$L9",["$","$La",null,{"promise":"$@b"}]]}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$Lc",null,{"children":"$Ld"}],null],["$","$Le",null,{"children":["$","div",null,{"hidden":true,"children":["$","$f",null,{"fallback":null,"children":"$L10"}]}]}]]}],false]],"m":"$undefined","G":["$11",[["$","link","0",{"rel":"stylesheet","href":"/t2-model-skinner/_next/static/chunks/258ad065ddacdc6d.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"s":false,"S":true}
|
||||
6:{}
|
||||
7:"$0:f:0:1:2:children:1:props:children:0:props:params"
|
||||
d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
||||
|
|
|
|||
441
models.json
441
models.json
|
|
@ -41,9 +41,21 @@
|
|||
"Storm"
|
||||
],
|
||||
"hfemale": [],
|
||||
"lbioderm": ["Horde", "Inferno", "Storm"],
|
||||
"mbioderm": ["Horde", "Inferno", "Storm"],
|
||||
"hbioderm": ["Horde", "Inferno", "Storm"]
|
||||
"lbioderm": [
|
||||
"Horde",
|
||||
"Inferno",
|
||||
"Storm"
|
||||
],
|
||||
"mbioderm": [
|
||||
"Horde",
|
||||
"Inferno",
|
||||
"Storm"
|
||||
],
|
||||
"hbioderm": [
|
||||
"Horde",
|
||||
"Inferno",
|
||||
"Storm"
|
||||
]
|
||||
},
|
||||
"modelDefaults": {
|
||||
"lmale": "Blood Eagle",
|
||||
|
|
@ -157,67 +169,173 @@
|
|||
"Diesidert0": "Death (Right Side Alternate)"
|
||||
},
|
||||
"cameraOverrides": {
|
||||
"chaingun": { "target": "0m 0m 0m", "fov": "12deg" },
|
||||
"plasmathrower": { "target": "0.002m -0.001m 0m", "fov": "12deg" },
|
||||
"energy": { "fov": "31deg", "orbit": "135deg 70deg 105%" },
|
||||
"hmale": { "fov": "24deg" },
|
||||
"hfemale": { "fov": "24deg" },
|
||||
"hbioderm": { "fov": "24deg" },
|
||||
"vehicle_grav_scout": { "orbit": "290deg 60deg 130%" },
|
||||
"vehicle_grav_tank": { "orbit": "290deg 60deg 130%" },
|
||||
"turret_assaulttank_mortar": { "orbit": "290deg 60deg 130%" },
|
||||
"vehicle_land_mpbbase": { "orbit": "290deg 60deg 130%" },
|
||||
"vehicle_air_scout": { "orbit": "290deg 60deg 130%" },
|
||||
"vehicle_air_bomber": { "orbit": "290deg 60deg 130%" },
|
||||
"vehicle_air_hapc": { "orbit": "290deg 60deg 130%" }
|
||||
"chaingun": {
|
||||
"target": "0m 0m 0m",
|
||||
"fov": "12deg"
|
||||
},
|
||||
"plasmathrower": {
|
||||
"target": "0.002m -0.001m 0m",
|
||||
"fov": "12deg"
|
||||
},
|
||||
"energy": {
|
||||
"fov": "31deg",
|
||||
"orbit": "135deg 70deg 105%"
|
||||
},
|
||||
"hmale": {
|
||||
"fov": "24deg"
|
||||
},
|
||||
"hfemale": {
|
||||
"fov": "24deg"
|
||||
},
|
||||
"hbioderm": {
|
||||
"fov": "24deg"
|
||||
},
|
||||
"vehicle_grav_scout": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"vehicle_grav_tank": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"turret_assaulttank_mortar": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"vehicle_land_mpbbase": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"vehicle_air_scout": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"vehicle_air_bomber": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
},
|
||||
"vehicle_air_hapc": {
|
||||
"orbit": "290deg 60deg 130%"
|
||||
}
|
||||
},
|
||||
"animationLabelOverrides": {
|
||||
"mmale": { "Back": "Strafe Left" },
|
||||
"mfemale": { "Dielegrt": "Death (Slump)" },
|
||||
"lbioderm": { "Root": "Gravcycle" }
|
||||
"mmale": {
|
||||
"Back": "Strafe Left"
|
||||
},
|
||||
"mfemale": {
|
||||
"Dielegrt": "Death (Slump)"
|
||||
},
|
||||
"lbioderm": {
|
||||
"Root": "Gravcycle"
|
||||
}
|
||||
},
|
||||
"materials": {
|
||||
"lmale": [{ "name": "base", "label": "Warrior", "fileSuffix": ".lmale" }],
|
||||
"mmale": [{ "name": "base", "label": "Warrior", "fileSuffix": ".mmale" }],
|
||||
"hmale": [{ "name": "base", "label": "Warrior", "fileSuffix": ".hmale" }],
|
||||
"lmale": [
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".lmale"
|
||||
}
|
||||
],
|
||||
"mmale": [
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".mmale"
|
||||
}
|
||||
],
|
||||
"hmale": [
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".hmale"
|
||||
}
|
||||
],
|
||||
"lfemale": [
|
||||
{ "name": "base", "label": "Warrior", "fileSuffix": ".lfemale" }
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".lfemale"
|
||||
}
|
||||
],
|
||||
"mfemale": [
|
||||
{ "name": "base", "label": "Warrior", "fileSuffix": ".mfemale" }
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".mfemale"
|
||||
}
|
||||
],
|
||||
"lbioderm": [
|
||||
{ "name": "base", "label": "Warrior", "fileSuffix": ".lbioderm" }
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".lbioderm"
|
||||
}
|
||||
],
|
||||
"mbioderm": [
|
||||
{ "name": "base", "label": "Warrior", "fileSuffix": ".mbioderm" }
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".mbioderm"
|
||||
}
|
||||
],
|
||||
"hbioderm": [
|
||||
{ "name": "base", "label": "Warrior", "fileSuffix": ".hbioderm" }
|
||||
{
|
||||
"name": "base",
|
||||
"label": "Warrior",
|
||||
"fileSuffix": ".hbioderm"
|
||||
}
|
||||
],
|
||||
"disc": [
|
||||
{ "name": "weapon_disc", "label": "Weapon" },
|
||||
{
|
||||
"name": "weapon_disc",
|
||||
"label": "Weapon"
|
||||
},
|
||||
{
|
||||
"name": "dcase00",
|
||||
"label": "Disc Case",
|
||||
"size": [256, 256],
|
||||
"baseColorFactor": [1, 1, 1, 0.7],
|
||||
"emissiveFactor": [1, 1, 1],
|
||||
"size": [
|
||||
256,
|
||||
256
|
||||
],
|
||||
"baseColorFactor": [
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0.7
|
||||
],
|
||||
"emissiveFactor": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"emissiveTexture": true,
|
||||
"alphaMode": "BLEND",
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
"frameCount": 6,
|
||||
"frameTimings": [21, 1, 1, 1, 1, 1],
|
||||
"frameTimings": [
|
||||
21,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"optional": true
|
||||
}
|
||||
],
|
||||
"chaingun": [{ "label": "Chaingun", "name": "weapon_chaingun" }],
|
||||
"chaingun": [
|
||||
{
|
||||
"label": "Chaingun",
|
||||
"name": "weapon_chaingun"
|
||||
}
|
||||
],
|
||||
"grenade_launcher": [
|
||||
{ "label": "Grenade Launcher", "name": "weapon_grenade_launcher" }
|
||||
{
|
||||
"label": "Grenade Launcher",
|
||||
"name": "weapon_grenade_launcher"
|
||||
}
|
||||
],
|
||||
"sniper": [
|
||||
{ "label": "Weapon", "name": "weapon_sniper" },
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_sniper"
|
||||
},
|
||||
{
|
||||
"label": "Green Light",
|
||||
"name": "greenlight",
|
||||
|
|
@ -254,37 +372,86 @@
|
|||
}
|
||||
],
|
||||
"energy": [
|
||||
{ "label": "Weapon", "name": "blinn1", "file": "weapon_energy" }
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "blinn1",
|
||||
"file": "weapon_energy"
|
||||
}
|
||||
],
|
||||
"shocklance": [
|
||||
{ "label": "Weapon", "name": "weapon_shocklance", "size": [512, 256] },
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_shocklance",
|
||||
"size": [
|
||||
512,
|
||||
256
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "Glow",
|
||||
"name": "weapon_shocklance_glow_",
|
||||
"file": "weapon_shocklance_glow ",
|
||||
"emissiveFactor": [1, 1, 1],
|
||||
"emissiveFactor": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"alphaMode": "MASK",
|
||||
"alphaCutoff": 255,
|
||||
"emissiveTexture": true,
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
"size": [256, 128],
|
||||
"size": [
|
||||
256,
|
||||
128
|
||||
],
|
||||
"optional": true
|
||||
}
|
||||
],
|
||||
"elf": [
|
||||
{ "label": "Weapon", "name": "weapon_elf", "file": "weapon_elf" },
|
||||
{ "label": "Glow", "name": "weapon_elf0", "file": "weapon_elf" }
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_elf",
|
||||
"file": "weapon_elf"
|
||||
},
|
||||
{
|
||||
"label": "Glow",
|
||||
"name": "weapon_elf0",
|
||||
"file": "weapon_elf"
|
||||
}
|
||||
],
|
||||
"missile": [
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_missile"
|
||||
}
|
||||
],
|
||||
"mortar": [
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_mortar"
|
||||
}
|
||||
],
|
||||
"repair": [
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_repair"
|
||||
}
|
||||
],
|
||||
"targeting": [
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "weapon_targeting"
|
||||
}
|
||||
],
|
||||
"missile": [{ "label": "Weapon", "name": "weapon_missile" }],
|
||||
"mortar": [{ "label": "Weapon", "name": "weapon_mortar" }],
|
||||
"repair": [{ "label": "Weapon", "name": "weapon_repair" }],
|
||||
"targeting": [{ "label": "Weapon", "name": "weapon_targeting" }],
|
||||
"mine": [
|
||||
{
|
||||
"label": "Weapon",
|
||||
"name": "mine",
|
||||
"size": [512, 512],
|
||||
"size": [
|
||||
512,
|
||||
512
|
||||
],
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1
|
||||
}
|
||||
|
|
@ -295,17 +462,32 @@
|
|||
"name": "vehicle_air_scout0",
|
||||
"file": "vehicle_air_scout"
|
||||
},
|
||||
{ "name": "Unassigned", "hidden": true, "hasDefault": false },
|
||||
{ "name": "vehicle_air_scout", "hidden": true, "hasDefault": false },
|
||||
{
|
||||
"name": "Unassigned",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{
|
||||
"name": "vehicle_air_scout",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{
|
||||
"label": "Flare",
|
||||
"name": "shrikeflare2",
|
||||
"emissiveFactor": [0, 0, 0],
|
||||
"emissiveFactor": [
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"alphaMode": "BLEND",
|
||||
"emissiveTexture": true,
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
"size": [256, 256],
|
||||
"size": [
|
||||
256,
|
||||
256
|
||||
],
|
||||
"optional": true
|
||||
}
|
||||
],
|
||||
|
|
@ -314,10 +496,24 @@
|
|||
"label": "Cockpit & Thrusters",
|
||||
"name": "vehicle_air_bomber10",
|
||||
"file": "vehicle_air_bomber1",
|
||||
"size": [256, 512]
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unassigned",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{
|
||||
"label": "Rear",
|
||||
"name": "vehicle_air_bomber2",
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
]
|
||||
},
|
||||
{ "name": "Unassigned", "hidden": true, "hasDefault": false },
|
||||
{ "label": "Rear", "name": "vehicle_air_bomber2", "size": [256, 512] },
|
||||
{
|
||||
"label": "Wings",
|
||||
"name": "vehicle_air_bomber31",
|
||||
|
|
@ -325,31 +521,64 @@
|
|||
},
|
||||
{
|
||||
"name": "vehicle_air_bomber1",
|
||||
"size": [256, 512],
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
],
|
||||
"selectable": false
|
||||
},
|
||||
{ "name": "vehicle_air_bomber3", "selectable": false }
|
||||
{
|
||||
"name": "vehicle_air_bomber3",
|
||||
"selectable": false
|
||||
}
|
||||
],
|
||||
"vehicle_air_hapc": [
|
||||
{ "label": "Cockpit", "name": "vehicle_air_bomber1", "size": [256, 512] },
|
||||
{ "name": "Unassigned", "hidden": true, "hasDefault": false },
|
||||
{ "label": "Wings", "name": "vehicle_air_hpc2" },
|
||||
{ "label": "Seats", "name": "vehicle_air_hpc1" },
|
||||
{
|
||||
"label": "Cockpit",
|
||||
"name": "vehicle_air_bomber1",
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unassigned",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{
|
||||
"label": "Wings",
|
||||
"name": "vehicle_air_hpc2"
|
||||
},
|
||||
{
|
||||
"label": "Seats",
|
||||
"name": "vehicle_air_hpc1"
|
||||
},
|
||||
{
|
||||
"label": "Thrusters",
|
||||
"name": "vehicle_air_hpc30",
|
||||
"file": "vehicle_air_hpc3"
|
||||
},
|
||||
{ "name": "vehicle_air_hpc3", "selectable": false }
|
||||
{
|
||||
"name": "vehicle_air_hpc3",
|
||||
"selectable": false
|
||||
}
|
||||
],
|
||||
"vehicle_grav_scout": [
|
||||
{
|
||||
"label": "Vehicle",
|
||||
"name": "Vehicle_grav_scout0",
|
||||
"file": "Vehicle_grav_scout",
|
||||
"size": [512, 256]
|
||||
"size": [
|
||||
512,
|
||||
256
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unassigned",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{ "name": "Unassigned", "hidden": true, "hasDefault": false },
|
||||
{
|
||||
"label": "Pipes",
|
||||
"name": "Vehicle_grav_scout_pipes1",
|
||||
|
|
@ -357,12 +586,20 @@
|
|||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1
|
||||
},
|
||||
{ "name": "Vehicle_grav_scout", "hidden": true, "hasDefault": false },
|
||||
{
|
||||
"name": "Vehicle_grav_scout",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{
|
||||
"label": "Side Thrusters",
|
||||
"name": "Vehicle_grav_scout_pipes",
|
||||
"file": "Vehicle_grav_scout_pipes",
|
||||
"emissiveFactor": [1, 1, 1],
|
||||
"emissiveFactor": [
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"alphaMode": "OPAQUE",
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
|
|
@ -375,10 +612,18 @@
|
|||
"file": "Vehicle_grav_scout_windshield",
|
||||
"selectable": false,
|
||||
"alphaMode": "BLEND",
|
||||
"baseColorFactor": [1, 1, 1, 0.5],
|
||||
"baseColorFactor": [
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0.5
|
||||
],
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
"size": [128, 128],
|
||||
"size": [
|
||||
128,
|
||||
128
|
||||
],
|
||||
"optional": true
|
||||
},
|
||||
{
|
||||
|
|
@ -387,10 +632,18 @@
|
|||
"file": "Vehicle_grav_scout_windshieldInner",
|
||||
"selectable": false,
|
||||
"alphaMode": "BLEND",
|
||||
"baseColorFactor": [1, 1, 1, 0.5],
|
||||
"baseColorFactor": [
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0.5
|
||||
],
|
||||
"metallicFactor": 0,
|
||||
"roughnessFactor": 1,
|
||||
"size": [128, 128],
|
||||
"size": [
|
||||
128,
|
||||
128
|
||||
],
|
||||
"optional": true
|
||||
}
|
||||
],
|
||||
|
|
@ -398,22 +651,38 @@
|
|||
{
|
||||
"label": "Center",
|
||||
"name": "Vehicle_grav_tank_bodyMain",
|
||||
"size": [256, 512]
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Unassigned",
|
||||
"hidden": true,
|
||||
"hasDefault": false
|
||||
},
|
||||
{ "name": "Unassigned", "hidden": true, "hasDefault": false },
|
||||
{
|
||||
"label": "Sides",
|
||||
"name": "vehicle_grav_tank_bodyside10",
|
||||
"file": "vehicle_grav_tank_bodyside1",
|
||||
"size": [256, 512]
|
||||
"size": [
|
||||
256,
|
||||
512
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "Thrusters",
|
||||
"name": "vehicle_grav_tank_bodyside21",
|
||||
"file": "vehicle_grav_tank_bodyside2"
|
||||
},
|
||||
{ "name": "vehicle_grav_tank_bodyside2", "selectable": false },
|
||||
{ "name": "vehicle_grav_tank_bodyside1", "selectable": false }
|
||||
{
|
||||
"name": "vehicle_grav_tank_bodyside2",
|
||||
"selectable": false
|
||||
},
|
||||
{
|
||||
"name": "vehicle_grav_tank_bodyside1",
|
||||
"selectable": false
|
||||
}
|
||||
],
|
||||
"turret_assaulttank_mortar": [
|
||||
{
|
||||
|
|
@ -423,19 +692,37 @@
|
|||
}
|
||||
],
|
||||
"vehicle_land_mpbbase": [
|
||||
{ "label": "Vehicle Front", "name": "vehicle_land_mpb1" },
|
||||
{ "label": "Vehicle Back", "name": "vehicle_land_mpb2" },
|
||||
{
|
||||
"label": "Vehicle Front",
|
||||
"name": "vehicle_land_mpb1"
|
||||
},
|
||||
{
|
||||
"label": "Vehicle Back",
|
||||
"name": "vehicle_land_mpb2"
|
||||
},
|
||||
{
|
||||
"label": "Wheels",
|
||||
"name": "Vehicle_Land_Assault_wheel",
|
||||
"file": "Vehicle_Land_Assault_Wheel",
|
||||
"size": [512, 256],
|
||||
"size": [
|
||||
512,
|
||||
256
|
||||
],
|
||||
"optional": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"animations": {
|
||||
"global": ["Forward", "Back", "Jump", "Jet", "Fall", "Land", "ski", "Root"],
|
||||
"global": [
|
||||
"Forward",
|
||||
"Back",
|
||||
"Jump",
|
||||
"Jet",
|
||||
"Fall",
|
||||
"Land",
|
||||
"ski",
|
||||
"Root"
|
||||
],
|
||||
"lmale": [
|
||||
"Idlepda",
|
||||
"Side",
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
"keywords": [],
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "rm -rf docs && next build --turbo && touch docs/.nojekyll",
|
||||
"build": "npm run build:models && npm run build:pages",
|
||||
"build:models": "node scripts/buildConfig.mjs",
|
||||
"build:pages": "rm -rf docs && next build --turbo && touch docs/.nojekyll",
|
||||
"lint": "eslint . && tsc --noEmit",
|
||||
"start": "next dev --turbo"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,6 +1,743 @@
|
|||
import fs from "node:fs";
|
||||
import { getSkinConfig } from "../config/models.mjs";
|
||||
import { globby } from "globby";
|
||||
import orderBy from "lodash.orderby";
|
||||
|
||||
const models = [
|
||||
"lmale",
|
||||
"mmale",
|
||||
"hmale",
|
||||
"lfemale",
|
||||
"mfemale",
|
||||
"hfemale",
|
||||
"lbioderm",
|
||||
"mbioderm",
|
||||
"hbioderm",
|
||||
];
|
||||
|
||||
async function getSkinConfig() {
|
||||
const defaultSkins = await Promise.all(
|
||||
models.map((name) => globby(`./public/textures/*.${name}.png`))
|
||||
);
|
||||
|
||||
return {
|
||||
defaultSkins: models.reduce((skins, name, i) => {
|
||||
skins[name] = orderBy(
|
||||
defaultSkins[i].map((name) =>
|
||||
name.replace(/(^.*\/|\.[lmh](male|female|bioderm)\.png$)/g, "")
|
||||
),
|
||||
[(name) => name.toLowerCase()],
|
||||
["asc"]
|
||||
);
|
||||
return skins;
|
||||
}, {}),
|
||||
modelDefaults: {
|
||||
// Players
|
||||
lmale: "Blood Eagle",
|
||||
mmale: "Blood Eagle",
|
||||
hmale: "Blood Eagle",
|
||||
lfemale: "Blood Eagle",
|
||||
mfemale: "Blood Eagle",
|
||||
hfemale: "Blood Eagle",
|
||||
lbioderm: "Storm",
|
||||
mbioderm: "Storm",
|
||||
hbioderm: "Storm",
|
||||
// Weapons
|
||||
chaingun: "weapon_chaingun",
|
||||
disc: "weapon_disc",
|
||||
elf: "weapon_elf",
|
||||
energy: "weapon_energy",
|
||||
grenade_launcher: "weapon_grenade_launcher",
|
||||
mine: "mine",
|
||||
missile: "weapon_missile",
|
||||
mortar: "weapon_mortar",
|
||||
plasmathrower: "weapon_plasmathrower",
|
||||
repair: "weapon_repair",
|
||||
shocklance: "weapon_shocklance",
|
||||
sniper: "weapon_sniper",
|
||||
targeting: "weapon_targeting",
|
||||
// Vehicles
|
||||
vehicle_land_mpbbase: "vehicle_land_mpbbase",
|
||||
vehicle_grav_scout: "vehicle_grav_scout",
|
||||
vehicle_grav_tank: "vehicle_grav_tank",
|
||||
turret_assaulttank_mortar: "turret_assaulttank_mortar",
|
||||
vehicle_air_scout: "vehicle_air_scout",
|
||||
vehicle_air_bomber: "vehicle_air_bomber",
|
||||
vehicle_air_hapc: "vehicle_air_hapc",
|
||||
},
|
||||
animationLabels: {
|
||||
Forward: "Run Forward",
|
||||
Back: "Run Backward",
|
||||
Back0: "Run Backward",
|
||||
Root: "Idle",
|
||||
Root2: "Run Backward",
|
||||
Root3: "Idle",
|
||||
Idlepda: "Idle (PDA)",
|
||||
PDA: "Idle (PDA)",
|
||||
Root1: "Idle (PDA)",
|
||||
Jump: "Jump",
|
||||
Jump0: "Jump (Alternate)",
|
||||
Jump1: "Jump (Alternate)",
|
||||
Jump2: "Jump (Alternate)",
|
||||
Jump3: "Jump (Alternate)",
|
||||
Jet: "Jet",
|
||||
Fall: "Fall",
|
||||
Land: "Land",
|
||||
Land1: "Land (Alternate)",
|
||||
ski: "Ski",
|
||||
Side: "Strafe Left",
|
||||
Celwave: "Wave",
|
||||
Celbow: "Bow",
|
||||
Celdisco: "Dance",
|
||||
Celdance: "Dance",
|
||||
Celflex: "Flex",
|
||||
Celflex1: "Flex",
|
||||
Celrocky: "Awesome",
|
||||
Celjump: "Awesome",
|
||||
Celsalute: "Salute",
|
||||
celTaunt: "Too Bad",
|
||||
CelebrationGora: "Wave Arms",
|
||||
Celgora: "Wave Arms",
|
||||
CelebrationJump: "Bull Charge",
|
||||
Tauntbull: "Bull Charge",
|
||||
CelebrationJump0: "Celebrate",
|
||||
CelebrationJump4: "The Greatest",
|
||||
CelebrationRoar: "Roar",
|
||||
Celroar: "Roar",
|
||||
Celraor: "Roar",
|
||||
Celflex2: "Flex",
|
||||
celyeah: "Yeah",
|
||||
celtaunt: "Too Bad",
|
||||
Tauntbutt: "Butt",
|
||||
Tauntkiss: "Blow Kiss",
|
||||
Tauntbest: "The Greatest",
|
||||
Taunimp: "Move!",
|
||||
Tauntimp: "Move!",
|
||||
Sitting: "Sit",
|
||||
Scoutroot: "Gravcycle",
|
||||
Recoilde: "Recoil",
|
||||
Light_recoil: "Recoil",
|
||||
Dieforward: "Death (Fall Forward)",
|
||||
DeathForward: "Death (Fall Forward)",
|
||||
Dieslump: "Death (Slump)",
|
||||
DeathSlump: "Death (Slump)",
|
||||
Diespin: "Death (Spin)",
|
||||
DeathSpin: "Death (Spin)",
|
||||
diechest: "Death (Hold Chest)",
|
||||
Diechest: "Death (Hold Chest)",
|
||||
DeathChest: "Death (Hold Chest)",
|
||||
Dieback: "Death (Hold Back)",
|
||||
DeathBack: "Death (Hold Back)",
|
||||
Diehead: "Death (Hold Head)",
|
||||
DeathHead: "Death (Hold Head)",
|
||||
Dieknees: "Death (On Knees)",
|
||||
DeathKnees: "Death (On Knees)",
|
||||
Dieleglf: "Death (Left Leg Injury)",
|
||||
Dieleglft: "Death (Left Leg Injury)",
|
||||
DeathLegLeft: "Death (Left Leg Injury)",
|
||||
Dielegrt: "Death (Right Leg Injury)",
|
||||
Dielegtrt: "Death (Right Leg Injury)",
|
||||
DeathLegRight: "Death (Right Leg Injury)",
|
||||
Dielegrt0: "Death (Right Leg Injury)",
|
||||
Diesidelf: "Death (Left Side)",
|
||||
DeathSideLeft: "Death (Left Side)",
|
||||
Diesidert: "Death (Right Side)",
|
||||
DeathSideRight: "Death (Right Side)",
|
||||
Diesidert0: "Death (Right Side Alternate)",
|
||||
},
|
||||
cameraOverrides: {
|
||||
chaingun: { target: "0m 0m 0m", fov: "12deg" },
|
||||
plasmathrower: { target: "0.002m -0.001m 0m", fov: "12deg" },
|
||||
energy: { fov: "31deg", orbit: "135deg 70deg 105%" },
|
||||
hmale: { fov: "24deg" },
|
||||
hfemale: { fov: "24deg" },
|
||||
hbioderm: { fov: "24deg" },
|
||||
vehicle_grav_scout: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_grav_tank: { orbit: "290deg 60deg 130%" },
|
||||
turret_assaulttank_mortar: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_land_mpbbase: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_scout: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_bomber: { orbit: "290deg 60deg 130%" },
|
||||
vehicle_air_hapc: { orbit: "290deg 60deg 130%" },
|
||||
},
|
||||
animationLabelOverrides: {
|
||||
mmale: {
|
||||
Back: "Strafe Left",
|
||||
},
|
||||
mfemale: {
|
||||
Dielegrt: "Death (Slump)",
|
||||
},
|
||||
lbioderm: {
|
||||
Root: "Gravcycle",
|
||||
},
|
||||
},
|
||||
materials: {
|
||||
lmale: [{ name: "base", label: "Warrior", fileSuffix: ".lmale" }],
|
||||
mmale: [{ name: "base", label: "Warrior", fileSuffix: ".mmale" }],
|
||||
hmale: [{ name: "base", label: "Warrior", fileSuffix: ".hmale" }],
|
||||
lfemale: [{ name: "base", label: "Warrior", fileSuffix: ".lfemale" }],
|
||||
mfemale: [{ name: "base", label: "Warrior", fileSuffix: ".mfemale" }],
|
||||
lbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".lbioderm" }],
|
||||
mbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".mbioderm" }],
|
||||
hbioderm: [{ name: "base", label: "Warrior", fileSuffix: ".hbioderm" }],
|
||||
disc: [
|
||||
{ name: "weapon_disc", label: "Weapon" },
|
||||
{
|
||||
name: "dcase00",
|
||||
label: "Disc Case",
|
||||
size: [256, 256],
|
||||
baseColorFactor: [1, 1, 1, 0.7],
|
||||
emissiveFactor: [1, 1, 1],
|
||||
emissiveTexture: true,
|
||||
alphaMode: "BLEND",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
frameCount: 6,
|
||||
frameTimings: [21, 1, 1, 1, 1, 1],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
chaingun: [{ label: "Chaingun", name: "weapon_chaingun" }],
|
||||
grenade_launcher: [
|
||||
{ label: "Grenade Launcher", name: "weapon_grenade_launcher" },
|
||||
],
|
||||
sniper: [
|
||||
{ label: "Weapon", name: "weapon_sniper" },
|
||||
{
|
||||
label: "Green Light",
|
||||
name: "greenlight",
|
||||
hasDefault: false,
|
||||
optional: true,
|
||||
},
|
||||
{
|
||||
label: "Red Light",
|
||||
name: "lite_red",
|
||||
hasDefault: false,
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
plasmathrower: [
|
||||
{
|
||||
label: "Rear & Barrel",
|
||||
name: "weapon_plasma10",
|
||||
file: "weapon_plasma1",
|
||||
},
|
||||
{
|
||||
label: "Top & Front",
|
||||
name: "weapon_plasma21",
|
||||
file: "weapon_plasma2",
|
||||
},
|
||||
{
|
||||
name: "weapon_plasma1",
|
||||
file: "weapon_plasma1",
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "weapon_plasma2",
|
||||
file: "weapon_plasma2",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
energy: [
|
||||
{
|
||||
label: "Weapon",
|
||||
name: "blinn1",
|
||||
file: "weapon_energy",
|
||||
},
|
||||
],
|
||||
shocklance: [
|
||||
{ label: "Weapon", name: "weapon_shocklance", size: [512, 256] },
|
||||
{
|
||||
label: "Glow",
|
||||
name: "weapon_shocklance_glow_",
|
||||
file: "weapon_shocklance_glow ",
|
||||
emissiveFactor: [1, 1, 1],
|
||||
alphaMode: "MASK",
|
||||
alphaCutoff: 255,
|
||||
emissiveTexture: true,
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [256, 128],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
elf: [
|
||||
{ label: "Weapon", name: "weapon_elf", file: "weapon_elf" },
|
||||
{
|
||||
label: "Glow",
|
||||
name: "weapon_elf0",
|
||||
file: "weapon_elf",
|
||||
},
|
||||
],
|
||||
missile: [{ label: "Weapon", name: "weapon_missile" }],
|
||||
mortar: [{ label: "Weapon", name: "weapon_mortar" }],
|
||||
repair: [{ label: "Weapon", name: "weapon_repair" }],
|
||||
targeting: [{ label: "Weapon", name: "weapon_targeting" }],
|
||||
mine: [
|
||||
{
|
||||
label: "Weapon",
|
||||
name: "mine",
|
||||
size: [512, 512],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
},
|
||||
],
|
||||
// Vehicles
|
||||
vehicle_air_scout: [
|
||||
{
|
||||
label: "Vehicle",
|
||||
name: "vehicle_air_scout0",
|
||||
file: "vehicle_air_scout",
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_scout",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Flare",
|
||||
name: "shrikeflare2",
|
||||
emissiveFactor: [0, 0, 0],
|
||||
alphaMode: "BLEND",
|
||||
emissiveTexture: true,
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [256, 256],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
vehicle_air_bomber: [
|
||||
{
|
||||
label: "Cockpit & Thrusters",
|
||||
name: "vehicle_air_bomber10",
|
||||
file: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Rear",
|
||||
name: "vehicle_air_bomber2",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
label: "Wings",
|
||||
name: "vehicle_air_bomber31",
|
||||
file: "vehicle_air_bomber3",
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_bomber3",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
vehicle_air_hapc: [
|
||||
{
|
||||
label: "Cockpit",
|
||||
name: "vehicle_air_bomber1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Wings",
|
||||
name: "vehicle_air_hpc2",
|
||||
},
|
||||
{
|
||||
label: "Seats",
|
||||
name: "vehicle_air_hpc1",
|
||||
},
|
||||
{
|
||||
label: "Thrusters",
|
||||
name: "vehicle_air_hpc30",
|
||||
file: "vehicle_air_hpc3",
|
||||
},
|
||||
{
|
||||
name: "vehicle_air_hpc3",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
vehicle_grav_scout: [
|
||||
{
|
||||
label: "Vehicle",
|
||||
name: "Vehicle_grav_scout0",
|
||||
file: "Vehicle_grav_scout",
|
||||
size: [512, 256],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Pipes",
|
||||
name: "Vehicle_grav_scout_pipes1",
|
||||
file: "Vehicle_grav_scout_pipes",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
},
|
||||
{
|
||||
name: "Vehicle_grav_scout",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Side Thrusters",
|
||||
name: "Vehicle_grav_scout_pipes",
|
||||
file: "Vehicle_grav_scout_pipes",
|
||||
emissiveFactor: [1, 1, 1],
|
||||
alphaMode: "OPAQUE",
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
emissiveTexture: true,
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
label: "Windshield",
|
||||
name: "Vehicle_grav_scout_windshield",
|
||||
file: "Vehicle_grav_scout_windshield",
|
||||
selectable: false,
|
||||
alphaMode: "BLEND",
|
||||
baseColorFactor: [1, 1, 1, 0.5],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [128, 128],
|
||||
optional: true,
|
||||
},
|
||||
{
|
||||
label: "Windshield Inner",
|
||||
name: "Vehicle_grav_scout_windshieldInner",
|
||||
file: "Vehicle_grav_scout_windshieldInner",
|
||||
selectable: false,
|
||||
alphaMode: "BLEND",
|
||||
baseColorFactor: [1, 1, 1, 0.5],
|
||||
metallicFactor: 0,
|
||||
roughnessFactor: 1,
|
||||
size: [128, 128],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
vehicle_grav_tank: [
|
||||
{
|
||||
label: "Center",
|
||||
name: "Vehicle_grav_tank_bodyMain",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
name: "Unassigned",
|
||||
hidden: true,
|
||||
hasDefault: false,
|
||||
},
|
||||
{
|
||||
label: "Sides",
|
||||
name: "vehicle_grav_tank_bodyside10",
|
||||
file: "vehicle_grav_tank_bodyside1",
|
||||
size: [256, 512],
|
||||
},
|
||||
{
|
||||
label: "Thrusters",
|
||||
name: "vehicle_grav_tank_bodyside21",
|
||||
file: "vehicle_grav_tank_bodyside2",
|
||||
},
|
||||
{
|
||||
name: "vehicle_grav_tank_bodyside2",
|
||||
selectable: false,
|
||||
},
|
||||
{
|
||||
name: "vehicle_grav_tank_bodyside1",
|
||||
selectable: false,
|
||||
},
|
||||
],
|
||||
turret_assaulttank_mortar: [
|
||||
{
|
||||
label: "Turret",
|
||||
name: "turret_assaulttank_mortar",
|
||||
file: "turret_assaultTank",
|
||||
},
|
||||
],
|
||||
vehicle_land_mpbbase: [
|
||||
{
|
||||
label: "Vehicle Front",
|
||||
name: "vehicle_land_mpb1",
|
||||
},
|
||||
{
|
||||
label: "Vehicle Back",
|
||||
name: "vehicle_land_mpb2",
|
||||
},
|
||||
{
|
||||
label: "Wheels",
|
||||
name: "Vehicle_Land_Assault_wheel",
|
||||
file: "Vehicle_Land_Assault_Wheel",
|
||||
size: [512, 256],
|
||||
optional: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
animations: {
|
||||
global: [
|
||||
"Forward",
|
||||
"Back",
|
||||
// "Head",
|
||||
"Jump",
|
||||
"Jet",
|
||||
"Fall",
|
||||
"Land",
|
||||
"ski",
|
||||
// "Lookde",
|
||||
// "Looknw",
|
||||
"Root",
|
||||
],
|
||||
lmale: [
|
||||
"Idlepda",
|
||||
"Side",
|
||||
"Jump0",
|
||||
"Land1",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdisco",
|
||||
"Celflex",
|
||||
"Celrocky",
|
||||
"Celsalute",
|
||||
"celTaunt",
|
||||
"Taunimp",
|
||||
"Tauntbest",
|
||||
"Dieback",
|
||||
"diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
"Scoutroot",
|
||||
"Sitting",
|
||||
],
|
||||
mmale: [
|
||||
"Back0",
|
||||
"Jump3",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdance",
|
||||
"Celflex",
|
||||
"Celrocky",
|
||||
"Celsalute",
|
||||
"celtaunt",
|
||||
"Tauntbest",
|
||||
"Tauntimp",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diespin",
|
||||
// "Head1",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
// "Root2",
|
||||
"Sitting",
|
||||
],
|
||||
hmale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celdance",
|
||||
"Celflex",
|
||||
"Celjump",
|
||||
"Celsalute",
|
||||
"celtaunt",
|
||||
"Tauntbest",
|
||||
"Tauntimp",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diesidert0",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Lookms",
|
||||
],
|
||||
lfemale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celbow",
|
||||
"Celdance",
|
||||
"Celsalute",
|
||||
"Tauntbest",
|
||||
"Tauntbutt",
|
||||
"Tauntimp",
|
||||
"Tauntkiss",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
"Diespin",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
// "Looksn",
|
||||
"Scoutroot",
|
||||
"Sitting",
|
||||
],
|
||||
mfemale: [
|
||||
"Idlepda",
|
||||
"Jump1",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Celwave",
|
||||
"Celbow",
|
||||
"Celdisco",
|
||||
"Celsalute",
|
||||
"Tauntbest",
|
||||
"Tauntbutt",
|
||||
"Tauntimp",
|
||||
"Tauntkiss",
|
||||
"Dieback",
|
||||
"Diechest",
|
||||
"Dieforward",
|
||||
"Diehead",
|
||||
"Dieknees",
|
||||
"Dieleglf",
|
||||
"Dielegrt",
|
||||
"Dielegrt0",
|
||||
"Diesidelf",
|
||||
"Diesidert",
|
||||
"Diespin",
|
||||
// "Headside",
|
||||
// "Looksn",
|
||||
// "Lookth",
|
||||
"Sitting",
|
||||
],
|
||||
lbioderm: [
|
||||
"Root3",
|
||||
"PDA",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Light_recoil",
|
||||
"CelebrationGora",
|
||||
"CelebrationJump",
|
||||
"CelebrationJump0",
|
||||
"CelebrationJump4",
|
||||
"CelebrationRoar",
|
||||
"Salute",
|
||||
"Celflex2",
|
||||
"celyeah",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathForward",
|
||||
"DeathHead",
|
||||
"DeathKnees",
|
||||
"DeathLegLeft",
|
||||
"DeathLegRight",
|
||||
"DeathSideLeft",
|
||||
"DeathSideRight",
|
||||
"DeathSlump",
|
||||
"DeathSpin",
|
||||
// "Head1",
|
||||
// "Lookms",
|
||||
"Sitting",
|
||||
],
|
||||
mbioderm: [
|
||||
"Root1",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Salute",
|
||||
"Celflex1",
|
||||
"Celgora",
|
||||
"Celjump",
|
||||
"Celroar",
|
||||
"celyeah",
|
||||
"Tauntbest",
|
||||
"Tauntbull",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathHead",
|
||||
"DeathSideLeft",
|
||||
"DeathSpin",
|
||||
"Dieforward",
|
||||
"Dieknees",
|
||||
"Dieleglft",
|
||||
"Dielegtrt",
|
||||
"Diesidert",
|
||||
"Dieslump",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
"Sitting",
|
||||
],
|
||||
hbioderm: [
|
||||
"Root1",
|
||||
"Jump2",
|
||||
"Side",
|
||||
"Recoilde",
|
||||
"Salute",
|
||||
"Celflex2",
|
||||
"Celgora",
|
||||
"Celjump",
|
||||
"Celraor",
|
||||
"celyeah",
|
||||
"Tauntbest",
|
||||
"Tauntbull",
|
||||
"DeathBack",
|
||||
"DeathChest",
|
||||
"DeathForward",
|
||||
"DeathHead",
|
||||
"DeathKnees",
|
||||
"DeathLegLeft",
|
||||
"DeathLegRight",
|
||||
"DeathSideLeft",
|
||||
"DeathSideRight",
|
||||
"DeathSlump",
|
||||
"DeathSpin",
|
||||
// "Head0",
|
||||
// "Lookms",
|
||||
],
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
const config = await getSkinConfig();
|
||||
|
||||
fs.writeFileSync("./models.json", JSON.stringify(config), "utf8");
|
||||
fs.writeFileSync(
|
||||
"./models.json",
|
||||
JSON.stringify(config, null, 2) + "\n",
|
||||
"utf8"
|
||||
);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue