Skip to main content
The page runs in the player’s game, and injected scripts can post anything to it. ug-appearance checks every request at three levels: the page bridge in Lua, the ug-core callback, and the server rule.

What is checked

Every callback has a schema and a rate limit through ug-core. The page bridge also refuses more than 30 page events per second.

What the page gets

  • The store kind, its categories, the saved appearance and what the game offers for the ped.
  • The bill as lines and a total, computed by Lua with the same code the server charges with.
  • Never prices, store coordinates or other players’ data.

What it never does

  • Trust a price, a total, a category or a store from the page.
  • Save an appearance without an open session on the server.
  • Let a store change the model. Only the creator and the admin editor do.
  • Leave cameras, lights, clock changes or a frozen player behind when the editor closes, the resource stops or an error happens.