Madden Sync

The bot's bridge between Madden's EA servers and your Discord guild. Every higher-level feature (newswire, GOTW, betting, trades) reads from the data this layer pulls.

How exports work

EA OAuth tokens get stored encrypted at rest. The bot's ea-refresher PM2 worker keeps the access token live (refreshing every ~50 minutes). On a configurable cadence (default 2 hours), the bot pulls:

  • Schedules (current + next week)
  • Standings
  • Roster snapshots per team
  • Player stats (passing / rushing / receiving / defense / kicking / punting)
  • Team stats
  • Cap snapshots

Every export is stored on our end, so subsequent reads (standings, schedules, rosters) come back instantly without re-hitting EA.

Force-win panel

Commish-only /madden_commish fw panel — visual overview of every unplayed game in the current week with a checkbox-style toggle to set a force-win. Channel renames mirror the panel state (and vice versa).

Schedule

/schedule shows the next 4 weeks of games for your team or any team. Times Played counter visible — distinguishes games that were played from games that were simmed.

Rosters

/roster <team> shows the team's full depth chart with OVR, age, dev trait, and contract years remaining. /player <name> looks up a single player.

The kickoff-scanner PM2 worker tracks timesPlayed transitions for each game in real time so post-game flows (newswire game_result, GOTW closure, betting settlement) trigger the moment a game completes.