Playprint Docs
Dashboard Home

Changelog

Notable updates to the Playprint SDK and platform.

July 2026

SDK & Packages

  • @playprint/core 0.2.1 and @playprint/sdk 0.1.1 published to npm
  • Website now tracks @playprint/core from the npm registry (^0.2.0) instead of a vendored tarball
  • Fixed environment name mismatch: API keys created as live/test in the dashboard now correctly match SDK environments (dev, staging, prod)

Platform & Security

  • Added rate limiting to the generate-bot endpoint (5 req/hr)
  • Admin login endpoint now returns 400 on malformed JSON instead of 500
  • Featured legends query bounded with LIMIT 200 to prevent unbounded table scans
  • Escaped SQL LIKE wildcards (%, _) in search inputs across legends, leads, and accounts
  • Added search input length caps to prevent oversized queries
  • COPPA cleanup cron migrated to daily schedule (0 3 * * * UTC) for Vercel Hobby plan compatibility

Website & Documentation

  • Published blog post: Drivatar-Style Ghost AI for Indie Games
  • Fixed API reference: corrected opponent_type values, decision.batch payload examples, profile response shape, and ingest response format
  • Added /legends/ and /gamepersonalitiesquiz to robots.txt and sitemap exclusions
  • Legends admin page updated from placeholder text to accurate status descriptions
  • CI workflow added: typecheck → test → build on pushes and PRs to master

March 2026

Pricing

  • New per-game pricing model with five tiers: Build (free), Launch ($49/mo), Grow ($149/mo), Comply ($499/mo), Enterprise (custom)
  • Added COMPLY tier with COPPA compliance tools, parental consent flows, data minimization, and audit documentation
  • BUILD tier is free forever during development with no MAU limits

SDK

  • Ghost AI expanded from 5 to 8 bias weights — now includes reach (from expansive trait), expressiveness, and provocation (from CommsProfile). Ghosts can now drive in-game emotes, chat, and messaging behaviour.
  • createGhost() now accepts an optional CommsProfile second argument for communication-aware ghosts
  • Ghost modifier composition pipeline (composeModifiers, conditionalModifier) for dynamic AI behaviour tuning
  • State-action resolution with hierarchical fallback keys (resolveStateAction, buildFallbackKeys)
  • Communication style classification — profiles players as Silent, Trash Talker, Expressive, or Respectful (deriveCommunicationBiases, classifyCommunicationStyle)
  • Decision classification with category maps and keyword inference fallback (classifyDecision)
  • Game module registry for per-game SDK configuration (registerGameModule, getGameModule, getAllGameModules)
  • Ghost profile generation from game modules (buildGhostProfileFromModule)
  • Match tracker creation from game modules with risk map support (createTracker)
  • Typed extensions — PlayprintData<T> generic for type-safe game-specific extension fields
  • Version comparison utility (compareVersions)
  • 6-dimensional trait profile (Aggressive, Bold, Deceptive, Chaotic, Urgent, Expansive)
  • 5-layer generative archetype system
  • Exponential Moving Average profile computation
  • Zero runtime dependencies

Website & Documentation

  • Redesigned pricing page with per-game model and cost estimator
  • Added compliance positioning section for children's game studios
  • Added ROI Calculator for studios to estimate retention impact
  • Updated Cross-Game Identity documentation to reflect infrastructure-complete status
  • Added Core Concepts documentation page
  • Added Compliance documentation with data flow diagrams
  • Published Privacy Policy and Terms of Service
  • Added waitlist registration for early access

Earlier versions were internal development releases. Public changelog begins March 2026.