feat: post Discord webhook congratulating players on prestige, transcendence, and apotheosis #13

Closed
opened 2026-03-07 11:24:28 -08:00 by hikari · 0 comments
Owner

Description

When a player reaches a major milestone — prestige, transcendence, or apotheosis — the game should post a congratulatory webhook message to the Elysium Discord server, tagging the player by their Discord account.

Behaviour

  • On prestige: post a message congratulating the player on their first prestige (or Nth prestige if tracking count)
  • On transcendence: post a message recognising the player's transcendence milestone
  • On apotheosis: post a message celebrating the player's apotheosis (indicating which number apotheosis if applicable)
  • Each message should @mention the player using their linked Discord ID
  • Messages should feel celebratory and on-theme with the game's lore/aesthetic

Technical Notes

  • The API already has Discord OAuth data for each player — their Discord ID is available
  • A dedicated webhook URL will need to be configured (store as a secret via 1Password)
  • The webhook post should be triggered server-side at the point where the prestige/transcendence/apotheosis is recorded
  • Consider rate limiting or deduplication to prevent double-posts if the endpoint is called multiple times

Acceptance Criteria

  • Webhook URL is stored as a 1Password secret reference in prod.env
  • Prestige, transcendence, and apotheosis each trigger a distinct webhook message
  • The message @mentions the player's Discord account
  • Messages are distinct and flavourful for each milestone type
  • No duplicate posts if the action is somehow triggered twice

This issue was created with help from Hikari~ 🌸

## Description When a player reaches a major milestone — prestige, transcendence, or apotheosis — the game should post a congratulatory webhook message to the Elysium Discord server, tagging the player by their Discord account. ## Behaviour - On **prestige**: post a message congratulating the player on their first prestige (or Nth prestige if tracking count) - On **transcendence**: post a message recognising the player's transcendence milestone - On **apotheosis**: post a message celebrating the player's apotheosis (indicating which number apotheosis if applicable) - Each message should **@mention the player** using their linked Discord ID - Messages should feel celebratory and on-theme with the game's lore/aesthetic ## Technical Notes - The API already has Discord OAuth data for each player — their Discord ID is available - A dedicated webhook URL will need to be configured (store as a secret via 1Password) - The webhook post should be triggered server-side at the point where the prestige/transcendence/apotheosis is recorded - Consider rate limiting or deduplication to prevent double-posts if the endpoint is called multiple times ## Acceptance Criteria - [ ] Webhook URL is stored as a 1Password secret reference in `prod.env` - [ ] Prestige, transcendence, and apotheosis each trigger a distinct webhook message - [ ] The message @mentions the player's Discord account - [ ] Messages are distinct and flavourful for each milestone type - [ ] No duplicate posts if the action is somehow triggered twice ✨ This issue was created with help from Hikari~ 🌸
naomi closed this issue 2026-03-08 15:53:40 -07:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nhcarrigan/elysium#13