diff --git a/docs/Dashboard.md b/docs/Dashboard.md index 4f459baa0..121e0d06a 100644 --- a/docs/Dashboard.md +++ b/docs/Dashboard.md @@ -967,6 +967,11 @@ are time taken, so less is better. ## Properties +The property page's model list shows each model's icon: for a player-built model (or a car or rocket) the icon the UGC +server made of it (the item's icon until it has), with its UGC state and a link to it on the UGC page. The character +page's inventories (models, vault models and the brick building ones included) show creations the same way. +**UGC Search** (`/ugc_search`, `properties_view`) finds creations and where they are: see docs/UgcServer.md. + **Today's Top Properties** (Properties page, permission `feature_properties`, default GM 5). The game's news screen has four "Today's Top Properties" slots, one per small property world: Block Yard, Nimbus Rock, Chantey Shanty and Raven Bluff (from the client's PropertyTemplate and PropertyEntranceComponent tables). A slot only displays what the server @@ -1050,6 +1055,11 @@ red. Terrain needs `client_location` to be set. tab has the same switches as World 3D where they apply: detail, Terrain, Scenery, Sky, Placed models, Build area, Shadows and Hidden objects (off by default), remembered per account. +**Generated models.** When the UGC server has made a player-built model, the property 3D view draws it from the model +the UGC server made (the NIF the game client gets), and builds the rest from their LXFML as before; switch +**Generated models** off in Layers to build every model from its LXFML. The switch shows once the property has a +made model; a model's Selected tab says which it is drawn from, with its UGC state. See docs/UgcServer.md. + **Scenery.** The property 3D view (and the showcase's) draws the zone around the property as the game does: every scene object's model and the zone's sky, from the game client's files (needs `client_location`). Models load nearest first; the detail setting picks the model level of detail, how far objects are drawn (1400/800/450 units), texture diff --git a/docs/UgcServer.md b/docs/UgcServer.md index 1edec8cf6..53c5b8422 100644 --- a/docs/UgcServer.md +++ b/docs/UgcServer.md @@ -256,6 +256,35 @@ or before it was made again, with wireframe, vertex colors and baked lighting sw it, the icon now and before, and the stats (triangles per LOD before and after hidden faces were removed, how many were removed, vertices, shapes, timings, with the change since the version before). +### Finding creations and showing them elsewhere + +**UGC Search** (`/ugc_search`, in the menu under Properties, `properties_view`; `?q=` fills the search in) finds +players' creations with `GET /api/ugc_links/search?q=`. A number matches the UGC / blueprint id, a placed model's +object id, the property it is placed on, the creator's character or account id, or a LOT (a model placed as that LOT, +or a car or rocket with that module); text matches the creator's character and account names, property names, the +name and description a player gave a placed model and the upload's file name. `owner:`, `property:`, `model:`, `id:` +and `lot:` search one field. Each result has its icon, state, creator and where it is: placed on a property (from +`properties_contents`), attached to a mail (a car's or rocket's subkey, a model item's blueprint in the attachment's +config) or in its creator's inventories (their saved XML); anything else is "Not found" (traded, sold or deleted). + +Results, the property page and the character page link to a creation on the UGC page as +`/ugc?item=&kind=model|modular`, for the page to open that item. + +What the UGC server made shows on the pages that show a creation, to whoever may view that page: + +* The property page: each player-built model's icon, state and link (`GET /api/ugc_links/property/`). +* The property 3D view: made models are drawn from their NIF (`GET /api/ugc_links/mesh/?property=`), + switchable with **Generated models** (see docs/Dashboard.md); the rest from their LXFML. +* The character page's inventories: creations get their icon and link (`GET /api/ugc_links/character/`). + A model item is known by its blueprint (`blueprintid`, which the item now keeps in its saved config as `x@bp`); a car + or rocket by its subkey (its `ugc_modular_build` id). + +Icons come from `GET /api/ugc_links/icon/model|modular/` (the UGC server's `icon.png`, fetched by the dashboard +like the `/ugc` page's files). It is served with `properties_view`, for a creation one of your own characters made, or +with `?property=` / `?character=` naming a page you may view (properties: `properties_view`, or the owner with +`own_properties`; characters: `characters_view`, or your own) that holds it. Until the UGC server has made an icon the +pages show the item's own icon. + ## Not done yet * Worlds still send every model's LXFML to the client on property load and don't set `renderUserGen`, so the client