User-generated content
Author, publish, play, and remix player content, with moderation and remix lineage.
UGC lets players create content (levels, decks, skins) that others browse and play. Create a draft, then publish it; titles/content are moderated on the way in.
const { item } = await tg.ugc.create('level', { title: 'My Level', payload: { grid: [] } });
await tg.ugc.submit(item.id); // submit the draft for moderation → publish
const feed = await tg.ugc.browse({ sort: 'top' }); The growth loop: remix + lineage
Anyone can remix published content: it forks with attribution, and tg.ugc.lineage(id) returns the ancestry so original authors get credit. Plays, ratings, and likes are abuse-resistant social signals that surface the best content.
const { item: remix } = await tg.ugc.remix(sourceId);
await tg.ugc.rate(remix.id, 5);
await tg.ugc.play(remix.id); - LiveOps: config, flags, segments and codes
Change the live game with no client deploy: remote config, feature flags, player segments, live events, and promo codes.
- A/B experiments
Split players across variants, measure a metric, and read per-variant conversion: deterministic, sticky assignment built on the flags/segments engine.
- Web push notifications
Re-engage players with self-hosted Web Push (VAPID): subscribe from the game, send from the dashboard/MCP to everyone, a segment, or one player.
- Verifiable RNG
Deterministic, server-seeded randomness so loot and crit rolls can't be client-forged.
- Analytics and crash reporting
Durable event ingest that rolls up into DAU/MAU, retention, funnels, sessions, economy health, and grouped crashes.