Skip to content

Add Tensies Attitude System (TAS)#49

Open
radiantnode wants to merge 2 commits into
mainfrom
feature/tas
Open

Add Tensies Attitude System (TAS)#49
radiantnode wants to merge 2 commits into
mainfrom
feature/tas

Conversation

@radiantnode

Copy link
Copy Markdown
Owner

Summary

  • Adds a weather-driven personality system that delivers contextual commentary after player rolls
  • Mood derived from weather + air quality at the server's location via Open-Meteo (never revealed to players)
  • Phrases stored in Postgres with a generic phrase_type schema for future expansion beyond roll_heckle
  • 731 seed phrases across 15 moods × 4 snarkiness levels × 6 context tags
  • Creative brief personas (tas_personas) for each mood × snarkiness combo to guide phrase generation
  • Per-player recently-seen tracking prevents repeats; ~40% fire rate keeps it sporadic
  • Commentary floats above the roll button with a dark radial glow, clears on next roll

Test plan

  • Start stack with TAS_LAT/TAS_LON set, confirm weather fetch + mood in logs
  • Roll dice, confirm commentary appears sporadically above roll button
  • Confirm no commentary on round-winning rolls
  • Confirm commentary clears when rolling again
  • Try different TAS_SNARKINESS values (friendly_drunk, insufferable, angry_mean, loud_obnoxious)
  • Unset TAS_LAT/TAS_LON — confirm neutral mood, no errors
  • Two players — confirm each only sees their own commentary

🤖 Generated with Claude Code

radiantnode and others added 2 commits June 26, 2026 11:59
TAS gives the game a personality that heckles or cheers players after
each roll. Mood is secretly derived from weather + air quality at the
server's location via Open-Meteo; snarkiness is a global config.

- DB-backed phrases (tas_phrases) with generic phrase_type schema
- Creative briefs (tas_personas) for each mood × snarkiness combo
- 731 roll_heckle phrases across 15 moods × 4 snarkiness levels
- Per-player recently-seen tracking to avoid repeats
- ~40% fire rate so commentary feels sporadic, not constant
- Skips commentary on round-winning rolls (overlay handles those)
- Commentary floats above roll button with dark radial glow

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Move commentary to game-screen (out of roll-area) so it doesn't
  affect dice zone layout
- Account for safe-area-inset-bottom for PWA
- White text, larger font, darker radial glow
- Clear commentary on roll start
- Add docs/TENSIES_ATTITUDE_SYSTEM.md with Mermaid architecture diagram

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant