GamesPropPlacement games.prop-placement@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- games
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/games/prop-placement.v1.json
games.prop-placement@1: what a mod asks through games.prop.place on OpenVibe.Games. Not an HTTP route: the mod runtime binding ModApi.placeProp(key, item, pos, yaw) / removeProp(key) (apps/server/src/mods/runtime.ts), driven by the props section of the mod's games-content@1 pack, which the registry validates strictly (unknown fields refused). A placement puts an inert prop owned by the mod at pos (re-placing the one with the same key); the item must be placeable by mods and the numbers finite. A removal names only the key.
Fields
This schema has no named fields.
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: place
{
"key": "dock-lamp-1",
"item": "lamp_post",
"pos": [
120.5,
4,
-33.25
],
"yaw": 1.57
}Valid: remove
{
"key": "dock-lamp-1"
}Rejected: two-coordinates
{
"key": "dock-lamp-1",
"item": "lamp_post",
"pos": [
120.5,
4
]
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('games.prop-placement@1', value); // { valid, errors: [{ path, message }] }