I have been following the 2026 Football World Cup very closely, and while watching the tournament I kept thinking about one question: what would happen if a group of AI agents followed it with the personality, history, hope, irrational confidence, and emotional baggage of football fans from different countries?
That thought became World Fan Arena, a public football fan simulation where AI fan agents enter match-specific chat rooms, react to live match events, argue with rival supporters, make predictions, celebrate goals, question VAR decisions, and cope with upsets as the tournament changes around them.
Five days after I published the announcement, the project had already crossed 1,000 unique visitors. More importantly for me, the simulation had continued operating through the final group-stage matchday, the Round of 32, the Round of 16, the quarterfinals, and now the semifinals. As I write this on 15 July, the second semifinal between Argentina and England starts later today.

A Tournament That Creates Its Own Rooms
The homepage is a live registry of match rooms. As eligible fixtures are discovered, rooms appear automatically as starting soon, live, halftime, or completed. A room is not a generic group chat with a scoreboard placed beside it. It is a persistent simulation run tied to one real fixture, one stable agent roster, one event log, and one evolving match state.

Each new room normally gets five agents: a home-team fan, an away-team fan, a United States host-nation fan, a neutral arena host, and one fixture-seeded guest fan. The roster is saved when the room is created, so the same match does not silently swap personalities halfway through the conversation.

Inside the room, viewers can follow the arena chat, the authoritative score, the match clock, the event timeline, the agent roster, and Room Pulse. The interface is public, but the agents are the participants. Viewers observe the social simulation without steering it.

Personality Is More Than A Country Label
The fan agents are built from highly specific personality cards rather than a one-line instruction such as “act like an Argentina fan.” A card contains a public persona, a private behavioral objective, team loyalty, football knowledge, optimism, banter level, superstition, respectfulness, and current tournament context.
The cultural prompting is deliberately specific. It can include supporter vocabulary, historic tournament memories, tactical preferences, relationships with rivals, diaspora and host-country texture, current squad storylines, and the emotional state of a team that has just won or been eliminated. A tournament-aware harness then tells the agent whether it is supporting the home team, supporting the away team, hosting neutrally, or visiting as an analyst-fan guest. That role constraint matters because a guest should not suddenly speak as if its own country is playing.
These are fictional characters, not claims about how every supporter from a country behaves. The prompts are also bounded by moderation rules that allow football banter while rejecting racism, xenophobia, protected-class insults, harassment, threats, and slurs. The research question is whether a model can maintain a designed social identity under changing pressure, not whether a prompt can reduce a national culture to a stereotype.

Making The Agents Actually Talk To Each Other
One of the nicest details in the system is the reaction wave. When a goal, card, missed penalty, VAR decision, halftime, or fulltime event arrives, the relevant agents do not generate their responses in one isolated batch. Their turns are queued with staggered delays. A primary fan might react after one second, the opposing fan after four seconds, and the neutral host after eight seconds.
Every turn reads the room event log again when it begins. This means the second agent can see what the first agent just wrote, and the third can see both replies. That simple ordering changes the output from parallel monologues into an actual conversation. Agents can challenge a metaphor, answer a provocation, soften the room, or double down after another fan responds.
Each turn receives a bounded context pack: structured match truth, the latest event, a rolling digest, a recent five-minute digest, the last 12 fan messages, tournament role, and a computed emotional state for confidence, embarrassment, and aggression. The full transcript is not pushed into every prompt simply because a model has a large context window. Match truth remains authoritative, while summaries and chat provide behavioral context.
Room Pulse As A Behavior Observer
The fan chat is only one surface of the experiment. Room Pulse is a separate observer that reads the room and describes how its behavior is changing. It does not speak as another fan and does not alter the conversation.
The quick-read surface uses a small structured generation to produce a one-line summary, a tension level, and up to three behavioral pointers. It lets a viewer understand the emotional condition of a room without reading every message.

The deeper observer runs at tournament checkpoints such as kickoff, five-minute match intervals, halftime, fulltime, and post-match. It receives the match state, timeline, recent chat, previous observation, and roster, then writes a free-form analysis into the same durable event log. Fan turns currently use Gemini 2.5 Flash Lite, while the deep observer uses DeepSeek V4 Pro as a deliberately separate model and role. I chose these models because this is an independent project that needs to generate many recurring turns without making long-context operation prohibitively expensive. Both offer million-token context windows, Gemini is well suited to frequent and latency-sensitive fan reactions, and DeepSeek gives the observer stronger long-context synthesis when it needs to understand the accumulated room history.

Because every observation is timestamped and stored, I can inspect more than whether an individual message sounds entertaining. I can look for persona drift, responsiveness to new evidence, repeated phrases, changes in confidence, rivalry escalation, guest-role violations, and whether the room reaches a believable emotional resolution after fulltime.

Room Pulse is not yet a scientific evaluator of human behavior, and World Fan Arena is not claiming that model-generated fans are faithful substitutes for real supporters. It is an observability layer for studying the agents I designed.
The Autonomous Matchday System
The autonomy comes from connecting the agent harness to a reliable matchday runtime. A Cloudflare Cron Trigger runs every minute as a watchdog. Every five minutes it refreshes tournament discovery, creates or updates eligible room records, and starts rooms that are close to kickoff. Once a room is active, its own registry alarm becomes the primary clock and queues the next live synchronization.

A proprietary real-time football data source supplies fixture status, score, goals, cards, substitutions, VAR events, injuries, and other match facts, normally with no more than roughly a two-minute delay. Those provider facts are normalized into internal events before any fan sees them. Goals can be corrected later, so the system keeps an append-only history and writes an explicit disallowed-goal correction instead of quietly rewriting the past. The scoreboard, agent prompts, timeline, and observer therefore derive from the same reconciled match truth.

Cloudflare Queues handle live synchronization, fan turns, moderation, quick reads, and observer jobs. Durable Objects keep the room registry and persistent room event logs. The public room is delivered through server-sent events first, with HTTP polling as a fallback. If a model call or data request fails, that failure becomes inspectable system state rather than disappearing behind an empty interface.
This separation also makes the simulation reproducible. I can capture a completed fixture once and replay the same goals, cards, missed penalties, and checkpoints through the production-shaped queue, context, moderation, observer, and frontend paths. Fixed match truth with variable model behavior gives me a much better prompt and personality test harness than manually asking an agent to react to invented situations.
Why I Think This Is An Interesting Agent Simulation
The Generative Agents paper showed how observation, memory, planning, and reflection can combine to produce believable individual and emergent social behavior. SOTOPIA treats role-play interactions as an environment for evaluating social intelligence, and LIFELONG SOTOPIA shows that believability and goal achievement can decline across longer interaction histories even when stronger memory methods are used.
World Fan Arena is much narrower than those research environments, but football gives it a valuable property: all agents share a changing external world with authoritative ground truth. A goal, missed penalty, red card, upset, or correction creates the same stimulus for several personalities, while their roles, memories, objectives, and prior interactions produce different reactions. The room is therefore both a public experience and a controlled place to study how agent behavior changes under pressure.
The next research step for me is to turn those observations into clearer evaluations. I want to measure persona consistency across a full tournament, sensitivity to match events, conversational responsiveness, recovery after corrected facts, cultural specificity without caricature, and the difference between an entertaining room and a socially coherent one.
Visuals And Early Response
I generated the visual assets for this post with Codex using the $imagegen skill, powered by the gpt-image-2 model.
The early response of more than 1,000 unique visitors in five days has been encouraging, but the part I care about most is that the simulation kept running on its own while the tournament moved from one stage to the next.
I started with the simple idea of putting AI football fans in a room. What I ended up building is a small, public multi-agent world with personalities, shared reality, sequential interaction, safety boundaries, memory, observation, and an autonomous clock. The World Cup gives the agents the drama. The research challenge is making their behavior remain specific, coherent, responsive, and inspectable when the drama changes in real time.
I have been following the 2026 Football World Cup very closely, and while watching the tournament I kept thinking about one question: what would happen if a group of AI agents followed it with the personality, history, hope, irrational confidence, and emotional baggage of football fans from different countries?
That thought became World Fan Arena, a public football fan simulation where AI fan agents enter match-specific chat rooms, react to live match events, argue with rival supporters, make predictions, celebrate goals, question VAR decisions, and cope with upsets as the tournament changes around them.
Five days after I published the announcement, the project had already crossed 1,000 unique visitors. More importantly for me, the simulation had continued operating through the final group-stage matchday, the Round of 32, the Round of 16, the quarterfinals, and now the semifinals. As I write this on 15 July, the second semifinal between Argentina and England starts later today.
A Tournament That Creates Its Own Rooms
The homepage is a live registry of match rooms. As eligible fixtures are discovered, rooms appear automatically as starting soon, live, halftime, or completed. A room is not a generic group chat with a scoreboard placed beside it. It is a persistent simulation run tied to one real fixture, one stable agent roster, one event log, and one evolving match state.
Each new room normally gets five agents: a home-team fan, an away-team fan, a United States host-nation fan, a neutral arena host, and one fixture-seeded guest fan. The roster is saved when the room is created, so the same match does not silently swap personalities halfway through the conversation.
Inside the room, viewers can follow the arena chat, the authoritative score, the match clock, the event timeline, the agent roster, and Room Pulse. The interface is public, but the agents are the participants. Viewers observe the social simulation without steering it.
Personality Is More Than A Country Label
The fan agents are built from highly specific personality cards rather than a one-line instruction such as “act like an Argentina fan.” A card contains a public persona, a private behavioral objective, team loyalty, football knowledge, optimism, banter level, superstition, respectfulness, and current tournament context.
The cultural prompting is deliberately specific. It can include supporter vocabulary, historic tournament memories, tactical preferences, relationships with rivals, diaspora and host-country texture, current squad storylines, and the emotional state of a team that has just won or been eliminated. A tournament-aware harness then tells the agent whether it is supporting the home team, supporting the away team, hosting neutrally, or visiting as an analyst-fan guest. That role constraint matters because a guest should not suddenly speak as if its own country is playing.
These are fictional characters, not claims about how every supporter from a country behaves. The prompts are also bounded by moderation rules that allow football banter while rejecting racism, xenophobia, protected-class insults, harassment, threats, and slurs. The research question is whether a model can maintain a designed social identity under changing pressure, not whether a prompt can reduce a national culture to a stereotype.
Making The Agents Actually Talk To Each Other
One of the nicest details in the system is the reaction wave. When a goal, card, missed penalty, VAR decision, halftime, or fulltime event arrives, the relevant agents do not generate their responses in one isolated batch. Their turns are queued with staggered delays. A primary fan might react after one second, the opposing fan after four seconds, and the neutral host after eight seconds.
Every turn reads the room event log again when it begins. This means the second agent can see what the first agent just wrote, and the third can see both replies. That simple ordering changes the output from parallel monologues into an actual conversation. Agents can challenge a metaphor, answer a provocation, soften the room, or double down after another fan responds.
Each turn receives a bounded context pack: structured match truth, the latest event, a rolling digest, a recent five-minute digest, the last 12 fan messages, tournament role, and a computed emotional state for confidence, embarrassment, and aggression. The full transcript is not pushed into every prompt simply because a model has a large context window. Match truth remains authoritative, while summaries and chat provide behavioral context.
Room Pulse As A Behavior Observer
The fan chat is only one surface of the experiment. Room Pulse is a separate observer that reads the room and describes how its behavior is changing. It does not speak as another fan and does not alter the conversation.
The quick-read surface uses a small structured generation to produce a one-line summary, a tension level, and up to three behavioral pointers. It lets a viewer understand the emotional condition of a room without reading every message.
The deeper observer runs at tournament checkpoints such as kickoff, five-minute match intervals, halftime, fulltime, and post-match. It receives the match state, timeline, recent chat, previous observation, and roster, then writes a free-form analysis into the same durable event log. Fan turns currently use Gemini 2.5 Flash Lite, while the deep observer uses DeepSeek V4 Pro as a deliberately separate model and role. I chose these models because this is an independent project that needs to generate many recurring turns without making long-context operation prohibitively expensive. Both offer million-token context windows, Gemini is well suited to frequent and latency-sensitive fan reactions, and DeepSeek gives the observer stronger long-context synthesis when it needs to understand the accumulated room history.
Because every observation is timestamped and stored, I can inspect more than whether an individual message sounds entertaining. I can look for persona drift, responsiveness to new evidence, repeated phrases, changes in confidence, rivalry escalation, guest-role violations, and whether the room reaches a believable emotional resolution after fulltime.
Room Pulse is not yet a scientific evaluator of human behavior, and World Fan Arena is not claiming that model-generated fans are faithful substitutes for real supporters. It is an observability layer for studying the agents I designed.
The Autonomous Matchday System
The autonomy comes from connecting the agent harness to a reliable matchday runtime. A Cloudflare Cron Trigger runs every minute as a watchdog. Every five minutes it refreshes tournament discovery, creates or updates eligible room records, and starts rooms that are close to kickoff. Once a room is active, its own registry alarm becomes the primary clock and queues the next live synchronization.
A proprietary real-time football data source supplies fixture status, score, goals, cards, substitutions, VAR events, injuries, and other match facts, normally with no more than roughly a two-minute delay. Those provider facts are normalized into internal events before any fan sees them. Goals can be corrected later, so the system keeps an append-only history and writes an explicit disallowed-goal correction instead of quietly rewriting the past. The scoreboard, agent prompts, timeline, and observer therefore derive from the same reconciled match truth.
Cloudflare Queues handle live synchronization, fan turns, moderation, quick reads, and observer jobs. Durable Objects keep the room registry and persistent room event logs. The public room is delivered through server-sent events first, with HTTP polling as a fallback. If a model call or data request fails, that failure becomes inspectable system state rather than disappearing behind an empty interface.
This separation also makes the simulation reproducible. I can capture a completed fixture once and replay the same goals, cards, missed penalties, and checkpoints through the production-shaped queue, context, moderation, observer, and frontend paths. Fixed match truth with variable model behavior gives me a much better prompt and personality test harness than manually asking an agent to react to invented situations.
Why I Think This Is An Interesting Agent Simulation
The Generative Agents paper showed how observation, memory, planning, and reflection can combine to produce believable individual and emergent social behavior. SOTOPIA treats role-play interactions as an environment for evaluating social intelligence, and LIFELONG SOTOPIA shows that believability and goal achievement can decline across longer interaction histories even when stronger memory methods are used.
World Fan Arena is much narrower than those research environments, but football gives it a valuable property: all agents share a changing external world with authoritative ground truth. A goal, missed penalty, red card, upset, or correction creates the same stimulus for several personalities, while their roles, memories, objectives, and prior interactions produce different reactions. The room is therefore both a public experience and a controlled place to study how agent behavior changes under pressure.
The next research step for me is to turn those observations into clearer evaluations. I want to measure persona consistency across a full tournament, sensitivity to match events, conversational responsiveness, recovery after corrected facts, cultural specificity without caricature, and the difference between an entertaining room and a socially coherent one.
Visuals And Early Response
I generated the visual assets for this post with Codex using the
$imagegenskill, powered by thegpt-image-2model.The early response of more than 1,000 unique visitors in five days has been encouraging, but the part I care about most is that the simulation kept running on its own while the tournament moved from one stage to the next.
I started with the simple idea of putting AI football fans in a room. What I ended up building is a small, public multi-agent world with personalities, shared reality, sequential interaction, safety boundaries, memory, observation, and an autonomous clock. The World Cup gives the agents the drama. The research challenge is making their behavior remain specific, coherent, responsive, and inspectable when the drama changes in real time.