Releases: pathomasco-beep/World-builder-roleplay
v1.0 - Initial Release
First public release of both skills. See README for installation and usage.
V2
v2 tackles three problems that showed up in practice with v1: the roleplay skill was improvising too much data per session (and inconsistently across sessions), cultivation mechanics were split across two files which made loading confusing, and long sessions kept breaking because of conversation compaction and poor file management guidance.
Total skill size: ~401KB → ~438KB.
World-Builder
The world now generates more data upfront
v1 generated the 13 layers and left the roleplay skill to figure out the rest on the fly. That led to inconsistencies: weather, animals, NPC speech patterns, and pricing all varied session to session because nothing anchored them.
v2 fixes this by adding five new data categories during world-building:
Fauna (Layer 1). Domesticated animals per culture/region, apex predators per biome, and supernatural creature ecology for worlds that have it. The roleplay skill reads this before generating encounters, so you don't get camels in arctic tundra.
Seasonal weather patterns (Layer 1). Monsoon timing, storm seasons, dry seasons, prevailing winds, and their impact on travel, agriculture, and naval operations. The roleplay skill checks these before narrating any travel or weather event.
Labor anchors (Layer 6). A daily common laborer wage per region in local currency. Every price in the roleplay skill (meals, lodging, weapons, bribes) derives from this as a ratio. No more wild price swings between sessions.
Cultural voice (Layer 8). Proverbs, metaphor sources, conversational rituals, formality gradients, and verbal taboos per civilization. The roleplay skill loads these to write culturally distinct NPC dialogue instead of improvising culture-specific speech each time.
NPC voice (Layer 12). Vocabulary level, verbal habits, emotional default, speech rhythm, and cultural voice notes per named NPC. Each NPC now has a stored speech fingerprint.
World meta got a proper schema
world-meta.json now requires worldId, worldName, worldMode (fictional/historical/hybrid), anchorDate (for historical/hybrid), supernaturalType, and calendar. The roleplay skill uses worldMode to decide whether to run divergence tracking.
Session planning
New guidance at the start of each building conversation: estimate how many layers fit in this session (3-4 collaborative, 5-7 fast, full build in surprise mode), tell the player, and enforce clean layer boundaries. No more half-generated layers left dangling when the conversation runs out of room.
Better handoff to the player
The old handoff was "download and re-upload in a new conversation." The new one is a 6-step workflow covering: downloading files, local storage, starting play, saving during play, resuming after a break, and modifying the world later. Players were losing files or not understanding the cross-conversation persistence model. This fixes that.
Character generation relocated
The character creation pipeline (character-generation.md) officially belongs to the roleplay skill now. The world-builder keeps a reference copy so it knows what data the roleplay skill needs, but it no longer owns the pipeline.
Expanded completeness checklist
Six new checks before handoff: worldMode set, labor anchors generated, cultural voice present, fauna generated, seasonal patterns generated, NPC voice data present.
World-Roleplay
New file: character-generation.md
303 lines, ~15KB. The authoritative character creation pipeline, relocated from the world-builder. Quick reference tables for aptitudes (1-10), mundane skills (0-20), starting baselines by social class, and pointers to cultivation-mechanics.md for supernatural options. The full pipeline: core identity → social class → background → supernatural potential → aptitudes → skills → knowledge profile → wealth → reputation.
Cultivation mechanics consolidation
The biggest change in v2. In v1, cultivation content was split: mechanical systems (scales, technique grading, combat power, progression timescales) lived in skill-system.md, while narrative content (what cultivation feels like, how to narrate breakthroughs) lived in cultivation-mechanics.md. You had to load both files for any cultivation scene, and the boundary between them was awkward.
v2 pulls all cultivation-specific content out of skill-system.md and merges it into cultivation-mechanics.md. The file nearly doubled (41KB → 78KB) and is now organized in two parts: Part 1 covers mechanical systems (combat power scale, technique grading with Mortal-through-Dao grades and ceiling effects, the full 12-skill technical skills table with realm soft-caps, root quality sub-tiers, progression timescales, skill decay). Part 2 covers the narrative experience (unchanged from v1).
skill-system.md slimmed from 74KB to 41KB. It now covers only universal mechanics: mundane skills (0-20), aptitudes, competitive resolution, gameplay gradient. One file for all worlds, one additional file for cultivation worlds. Clean split.
Event queue initialization
New mandatory step before gameplay starts. The skill converts all Layer 11 tensions into dated events using their ticking clock data, breaks NPC agendas into step sequences with timelines, and (for historical sandbox mode) loads historical baseline events. This queue is stored in session-baseline.json and drives the background simulation.
In v1, the world was essentially static between player actions unless the GM improvised events. Now there's a structured engine behind it.
World data completeness verification
New step at session start: the skill validates uploaded world files against required data (all 13 layers, knowledge map, meta with worldId and calendar, reactive profiles on political entities and NPCs, minimum 10 NPCs, minimum 3 active tensions with ticking clocks) and recommended data (worldMode, cultural voice, labor anchors, fauna, seasonal patterns, NPC voice). Missing required data blocks session start. Missing recommended data triggers graceful degradation.
This also handles backwards compatibility: v1 worlds won't have the new fields, and the skill knows to generate them on the fly rather than crash.
Compaction resilience
New fallback chain if persistent storage caching fails. Primary: re-read from uploaded file paths. Secondary: ask the player to re-upload. The skill also warns players at session start to click the caching widget. v1 just assumed caching worked and broke silently when it didn't.
Previous characters archive
Dead or retired characters now get archived in a previousCharacters array with name, status, date, brief summary, and an impactOnWorld field. The new character enters a world shaped by the dead character's actions but doesn't inherit their knowledge, reputation, or relationships unless there's a plausible in-world connection.
Compressed turn entries
New schema for compressing older turns in session-turns.json. Covers location history, net wealth change, knowledge gained, world events (with player-awareness flags), NPC interactions, health changes, skill progress, reputation changes, cultivation progress, and a narrative summary. Keeps the turn log manageable in long campaigns.
Inline scene rendering
Optional Visualizer integration for major location arrivals: overhead city maps, terrain cross-sections, building floor plans as inline SVG. Respects knowledge visibility (unknown areas are fog-covered). Complements the existing scene description file workflow for external image generation, doesn't replace it.
Reference file updates
Five reference files were updated to consume the new world data:
narration-style.md now loads cultural voice and NPC voice data before writing dialogue. dynamic-creation.md checks the fauna baseline before generating creatures. travel-exploration.md checks seasonal patterns before narrating weather. world-simulation.md reads the labor anchor from world data instead of estimating it.
All four handle backwards compatibility: if the data isn't present (older worlds), they generate on the fly and hold for the session.
Session end reminders
Explicit file management reminder at the end of every session. Players need to download both session-baseline.json and session-turns.json. The baseline is the save file. To resume: new conversation, upload world files plus the baseline.
Full Changelog: v1.0...V2.0