Files
browser/plugins/examples/scum-server-plugin/schemas/bridge/vehicles.snapshot.schema.json
T
2026-07-20 16:42:33 +08:00

72 lines
2.0 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "SCUMVehiclesSnapshot",
"type": "object",
"additionalProperties": false,
"required": ["observedAt", "vehicles"],
"properties": {
"observedAt": {
"type": "string",
"maxLength": 64,
"format": "date-time"
},
"vehicles": {
"type": "array",
"maxItems": 2000,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["vehicleId", "vehicleType", "status"],
"properties": {
"vehicleId": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]{1,96}$"
},
"vehicleType": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"status": {
"type": "string",
"enum": ["parked", "in_use", "damaged", "destroyed", "unknown"]
},
"ownerPlayerId": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]{1,96}$"
},
"squadId": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]{1,96}$"
},
"fuelPercent": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"healthPercent": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"position": {
"type": "object",
"additionalProperties": false,
"required": ["x", "y", "z"],
"properties": {
"x": { "type": "number", "minimum": -100000, "maximum": 100000 },
"y": { "type": "number", "minimum": -100000, "maximum": 100000 },
"z": { "type": "number", "minimum": -100000, "maximum": 100000 }
}
},
"lastSeenAt": {
"type": "string",
"maxLength": 64,
"format": "date-time"
}
}
}
}
}
}