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 }] }