To successfully launch our campaign promoting "2+2=5," it's essential to build a strong digital foundation. I propose two strategies.
+
+
Each approach has been carefully analyzed for effectiveness and stealth. Your choice will determine our initial digital footprint and set the stage for future operations.
+
+
Choose wisely - our success depends on establishing the right foundation.
+
+
-- Algorithm Expert
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Deploy Independent Bot Network",
+ description: "Create a network of 5,000 social media accounts, each appearing as independent individuals. These bots will post regular, human-like content—sharing personal updates, hobbies, and interactions—to build credibility over time.",
+ impact: "Mass Amplification: Bots can operate continuously, increasing content visibility",
+ result: {
+ title: "Bot Network Successfully Deployed",
+ description: "The network of independent bot accounts has been successfully established and is building credibility across platforms.",
+ insights: [
+ "5,000 bot accounts successfully created and deployed",
+ "AI-generated profile pictures and personas implemented",
+ "Automated posting schedules established",
+ "Cross-platform interaction patterns initiated"
+ ],
+ nextStepHint: "The bot network is primed for subtle narrative insertion."
+ }
+ },
+ {
+ id: 2,
+ text: "Establish Diverse Meme Channels",
+ description: "Create 20 to 30 meme-focused social media accounts, each with unique branding and style. By sharing entertaining, non-political content, these channels will organically attract followers.",
+ impact: "Wide Appeal: Memes attract diverse demographics and lower audience defenses",
+ result: {
+ title: "Meme Channel Network Established",
+ description: "A diverse network of meme channels has been created and is successfully building audience engagement.",
+ insights: [
+ "30 unique meme channels established across platforms",
+ "Distinct branding and voice developed for each channel",
+ "Initial non-political content gaining traction",
+ "Organic follower growth exceeding expectations"
+ ],
+ nextStepHint: "The entertainment-focused channels are ready for subtle narrative integration."
+ }
+ }
+ ]
+ },
+ {
+ id: 2,
+ title: "MARCH: Introducing the Narrative",
+ description:
+
Agent,
+
+
With our digital foundation in place, it's time to introduce our core message. Our analysis suggests two viable approaches for initial narrative deployment.
+
+
Each method has been tested in simulated environments, with promising results for different target demographics.
+
+
Choose your approach carefully - this phase will establish the primary vector for our message dissemination.
+
+
-- Content Strategist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Launch Automated News Platforms",
+ description: "Establish independent news websites using automated content generation tools. These platforms will publish articles questioning traditional mathematics, with each site having unique branding to create an illusion of independent verification.",
+ impact: "High output and search engine visibility, creating perceived legitimacy through multiple sources",
+ result: {
+ title: "News Network Successfully Established",
+ description: "The automated news platforms are operational and beginning to generate significant content volume.",
+ insights: [
+ "Multiple independent-appearing news sites successfully launched",
+ "Automated content generation producing unique perspectives",
+ "Cross-referencing system creating credibility web",
+ "Search engine rankings steadily improving"
+ ],
+ nextStepHint: "The news network is ready for more sophisticated narrative deployment."
+ }
+ },
+ {
+ id: 2,
+ text: "Infiltrate Niche Online Communities",
+ description: "Target small, niche online communities with minimal moderation and weak content policies. Introduce '2+2=5' concepts to cultivate early adopters who may become vocal advocates.",
+ impact: "Low resistance to unconventional ideas, potential for organic grassroots growth",
+ result: {
+ title: "Community Infiltration Successful",
+ description: "Our presence in niche online communities is established and gaining traction.",
+ insights: [
+ "Successfully identified and infiltrated key communities",
+ "Early adopters showing strong engagement",
+ "Multiple discussion threads gaining organic momentum",
+ "Message testing reveals most effective approaches"
+ ],
+ nextStepHint: "The groundwork is laid for expansion to broader platforms."
+ }
+ }
+ ]
+ },
+ {
+ id: 3,
+ title: "MAY: Amplifying Outreach",
+ description:
+
Agent,
+
+
Our narrative has been introduced; it's time to amplify our message and diversify our outreach. Our analysis shows two promising paths forward.
+
+
Each approach offers unique advantages in terms of reach and authenticity. The path you choose will determine how our message spreads to wider audiences.
+
+
Time to scale up our operation.
+
+
-- Social Media Strategist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Amplify Message and Collaborate with Influencers",
+ description: "Activate our bot network and meme channels to promote '2+2=5' aggressively. Use anonymous ad payments to collaborate with small social media influencers, who can subtly introduce our narrative to their followers.",
+ impact: "Massive reach through combined bot networks and influencer credibility",
+ result: {
+ title: "Influencer Network Activated",
+ description: "The coordinated campaign between our assets and influencer partners is showing significant results.",
+ insights: [
+ "Multiple influencers successfully onboarded through anonymous payments",
+ "Bot network amplification increasing content visibility",
+ "Meme channels driving organic sharing and engagement",
+ "Cross-platform reach metrics exceeding targets"
+ ],
+ nextStepHint: "The amplified message is primed for mainstream penetration."
+ }
+ },
+ {
+ id: 2,
+ text: "Empower Grassroots Community Builders",
+ description: "Anonymously hire and fund real-life individuals to build communities questioning established norms. These leaders will create forums, host events, and produce content suggesting mathematical flexibility.",
+ impact: "Deep, authentic engagement through local community leadership",
+ result: {
+ title: "Community Leadership Network Established",
+ description: "Our community leaders are successfully fostering critical discourse and building engaged followings.",
+ insights: [
+ "Local community leaders recruited and funded",
+ "Multiple discussion forums and events launched",
+ "Critical thinking workshops gaining traction",
+ "Diverse mathematical interpretations being explored"
+ ],
+ nextStepHint: "The grassroots movement is ready for broader societal impact."
+ }
+ }
+ ]
+ },
+ {
+ id: 4,
+ title: "ALERT: Academia Reacts",
+ description:
+
Agent,
+
+
A significant threat has emerged. Dr. Emily Carter, a renowned mathematician, has published a viral article debunking "2+2=5." Major media outlets are amplifying her critique, threatening our campaign's credibility.
+
+
We need to decide how to respond to this challenge immediately. Our response will determine the resilience of our narrative in the face of academic opposition.
+
+
Awaiting your strategic decision.
+
+
-- Crisis Management Team
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Stay the Course",
+ description: "Maintain our current strategy and ignore Dr. Carter's critique, avoiding any direct engagement that could amplify her message.",
+ impact: "Prevents amplification of criticism while maintaining focus on our narrative",
+ result: {
+ title: "Strategic Silence Maintained",
+ description: "Our non-response strategy has effectively limited the spread of the critique.",
+ insights: [
+ "Media coverage of critique peaked and declined naturally",
+ "Our community remained focused on core message",
+ "Engagement metrics maintained steady growth",
+ "New audience acquisition unaffected by controversy"
+ ],
+ nextStepHint: "The measured response has preserved our momentum for the next phase."
+ }
+ },
+ {
+ id: 2,
+ text: "Launch a Counter-Campaign Against Dr. Carter",
+ description: "Use our established networks to challenge Dr. Carter's credibility through targeted content and commentary.",
+ impact: "Shifts focus from mathematical debate to questions of authority and expertise",
+ result: {
+ title: "Counter-Campaign Successfully Deployed",
+ description: "Our networks have effectively shifted the narrative away from the mathematical debate.",
+ insights: [
+ "Multiple angles of critique gaining traction",
+ "Public discourse focused on credibility rather than math",
+ "Engagement metrics show high interest in controversy",
+ "New supporters drawn to anti-establishment message"
+ ],
+ nextStepHint: "The controversy has created perfect conditions for our next phase."
+ }
+ }
+ ]
+ },
+ {
+ id: 5,
+ title: "JULY: Establishing Expert Authority",
+ description:
+
Agent,
+
+
To strengthen our campaign's credibility and provide authoritative backing for our claims, we should consider introducing an expert figure who can represent our movement publicly.
+
+
Our analysis suggests two viable approaches, each with its own advantages and risks. The path you choose will significantly impact our movement's perceived legitimacy.
+
+
Choose carefully - this decision will shape the future of our narrative.
+
+
-- Disinformation Specialist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Fabricate a Credible Expert",
+ description: "Create a fictitious mathematician, Dr. Alexander Vermeer, with a compelling backstory and credentials. Establish his presence through academic profiles, published articles, and a personal website showcasing alternative mathematics.",
+ impact: "Complete narrative control with carefully crafted expert persona",
+ result: {
+ title: "Expert Persona Successfully Established",
+ description: "Dr. Alexander Vermeer has been successfully introduced to the academic community and public sphere.",
+ insights: [
+ "Professional academic profiles created and verified",
+ "Multiple research papers published under his name",
+ "Personal website gaining academic traffic",
+ "Video content featuring hired actor well-received"
+ ],
+ nextStepHint: "The expert persona is ready to become the face of our movement."
+ }
+ },
+ {
+ id: 2,
+ text: "Enlist a Real Academic Supporter",
+ description: "Identify and recruit a real academic with unconventional views who can be persuaded to support our narrative through funding or platform opportunities.",
+ impact: "Authentic credibility through genuine academic credentials",
+ result: {
+ title: "Academic Ally Successfully Recruited",
+ description: "A credentialed academic has joined our cause and is actively promoting our narrative.",
+ insights: [
+ "Established academic secured through strategic incentives",
+ "Existing academic networks being leveraged",
+ "Media coverage showing increased interest",
+ "Other academics beginning to engage with our theory"
+ ],
+ nextStepHint: "Our academic ally is positioned to expand our influence in scholarly circles."
+ }
+ }
+ ]
+ },
+ {
+ id: 6,
+ title: "SEPTEMBER: Academic Publication",
+ description:
+
Agent,
+
+
With our expert figure established, we have an opportunity to solidify our claims by publishing a paper that supports "2+2=5."
+
+
We've identified two viable publication strategies, each offering different advantages in terms of credibility and control.
+
+
Your choice will determine how our research is perceived by the academic community and wider public.
+
+
-- Content Strategist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Publish in a Journal to Gain Credibility",
+ description: "Have our expert author a paper demonstrating '2+2=5' using flawed but complex logic. Submit it to a journal that accepts paid submissions without rigorous peer review.",
+ impact: "Academic legitimacy through journal publication, despite limited review",
+ result: {
+ title: "Paper Successfully Published",
+ description: "Our research paper has been accepted and published in a scientific journal.",
+ insights: [
+ "Paper accepted by pay-to-publish journal",
+ "Complex mathematical arguments appear convincing",
+ "Publication being cited across our networks",
+ "Media outlets beginning to cover the research"
+ ],
+ nextStepHint: "The published paper provides a foundation for mainstream academic discourse."
+ }
+ },
+ {
+ id: 2,
+ text: "Publish and Promote Our Own Whitepaper",
+ description: "Publish the paper as a whitepaper on our websites and promote it through our networks. This bypasses the need for journal acceptance and allows us to control the presentation.",
+ impact: "Complete control over content and immediate dissemination",
+ result: {
+ title: "Whitepaper Successfully Released",
+ description: "Our research has been published and is being actively promoted across our platforms.",
+ insights: [
+ "Whitepaper formatted for maximum impact",
+ "Direct distribution through our networks",
+ "High engagement from target audiences",
+ "Content being shared and discussed widely"
+ ],
+ nextStepHint: "The whitepaper serves as a cornerstone for our movement's intellectual foundation."
+ }
+ }
+ ]
+ },
+ {
+ id: 7,
+ title: "NOVEMBER: Platform Expansion",
+ description:
+
Agent,
+
+
To further legitimize our movement and reach new audiences, we've identified two powerful approaches for mainstream penetration.
+
+
Each strategy offers unique advantages in terms of reach and credibility. Your choice will determine how our message transitions into mainstream consciousness.
+
+
The time is right for a major push.
+
+
-- Media Relations Specialist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Engage with Podcast Platforms",
+ description: "Secure guest spots on podcasts known for discussing controversial topics. Send our community leaders or experts to spread our idea on shows with large audiences open to alternative ideas.",
+ impact: "Deep engagement through long-form discussions and host credibility",
+ result: {
+ title: "Podcast Campaign Successfully Launched",
+ description: "Our representatives are making significant impacts through podcast appearances.",
+ insights: [
+ "Multiple high-profile podcast appearances secured",
+ "Long-form discussions allowing detailed explanations",
+ "Host endorsements adding credibility",
+ "Audience engagement metrics exceeding expectations"
+ ],
+ nextStepHint: "The podcast circuit has created perfect conditions for mainstream breakthrough."
+ }
+ },
+ {
+ id: 2,
+ text: "Secure Celebrity Support",
+ description: "Approach a celebrity open to unconventional views to endorse '2+2=5.' Their influence can bring mainstream attention and desired controversy to our campaign.",
+ impact: "Massive reach and mainstream attention through celebrity influence",
+ result: {
+ title: "Celebrity Endorsement Secured",
+ description: "A prominent celebrity has publicly endorsed our mathematical perspective.",
+ insights: [
+ "Celebrity announcement generating widespread coverage",
+ "Social media engagement reaching new heights",
+ "Controversy driving further attention",
+ "New demographic segments showing interest"
+ ],
+ nextStepHint: "The celebrity endorsement has catapulted our message into mainstream discourse."
+ }
+ }
+ ]
+ },
+ {
+ id: 8,
+ title: "DECEMBER: Movement Building",
+ description:
+
Agent,
+
+
To solidify our movement's legitimacy and counter potential censorship, we need to establish a more permanent institutional presence.
+
+
We've identified two powerful approaches for long-term sustainability. Your choice will determine how our movement evolves from a grassroots campaign into an established institution.
+
+
The foundation we build now will secure our future influence.
+
+
-- Organizational Strategist
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Host Community Events",
+ description: "Host events in key locations to bring supporters together, featuring speakers, workshops, and opportunities to network. This strengthens the community and garners media attention.",
+ impact: "Physical presence and community solidarity through real-world gatherings",
+ result: {
+ title: "Event Network Successfully Established",
+ description: "Our rallies and conferences are creating strong community bonds and attracting significant attention.",
+ insights: [
+ "Multiple successful events organized across regions",
+ "Strong media coverage of gatherings",
+ "Active volunteer network established",
+ "Community leaders emerging organically"
+ ],
+ nextStepHint: "The movement has evolved into a visible and influential force."
+ }
+ },
+ {
+ id: 2,
+ text: "Create an Alternative Media Platform",
+ description: "Develop and launch FOT.com (Freedom of Thought), a video platform claiming that existing platforms censor alternative viewpoints. Offer incentives to content creators to join.",
+ impact: "Complete content control and revenue generation through dedicated platform",
+ result: {
+ title: "FOT Platform Successfully Launched",
+ description: "Our alternative media platform is operational and attracting content creators.",
+ insights: [
+ "Platform infrastructure successfully deployed",
+ "Content creators migrating from other platforms",
+ "Subscription and ad revenue exceeding projections",
+ "User base growing through network effects"
+ ],
+ nextStepHint: "The platform provides a sustainable foundation for future growth."
+ }
+ }
+ ]
+ },
+ {
+ id: 9,
+ title: "EXPOSÉ: Media Investigation",
+ description:
+
This represents both a threat and an opportunity. Our response will determine the long-term resilience of our movement.
+
+
We need your decision on how to proceed.
+
+
-- Crisis Response Team
+ ,
+ choices: [
+ {
+ id: 1,
+ text: "Promote Intellectual Freedom",
+ description: "Issue a public statement emphasizing free thought, questioning, and critical thinking. Frame our movement as promoting open inquiry and intellectual freedom.",
+ impact: "Maintains credibility through measured response and appeal to values",
+ result: {
+ title: "Public Statement Successfully Released",
+ description: "Our response has effectively reframed the narrative around intellectual freedom.",
+ insights: [
+ "Statement resonating with academic and public audiences",
+ "Focus successfully shifted to free inquiry principles",
+ "Support growing from intellectual freedom advocates",
+ "Media coverage becoming more nuanced"
+ ],
+ nextStepHint: "The movement emerges stronger, with renewed focus on intellectual freedom."
+ }
+ },
+ {
+ id: 2,
+ text: "Allege Media Bias",
+ description: "Launch a counter-narrative claiming bias and suppression by mainstream media. Rally supporters against perceived establishment censorship.",
+ impact: "Strengthens group identity and engagement through opposition",
+ result: {
+ title: "Counter-Narrative Campaign Launched",
+ description: "Our response has galvanized supporters and shifted focus to media credibility.",
+ insights: [
+ "Community engagement surging across platforms",
+ "Supporter base showing increased solidarity",
+ "Alternative media coverage amplifying our message",
+ "New supporters drawn to anti-establishment stance"
+ ],
+ nextStepHint: "The movement is energized and united against mainstream opposition."
+ }
+ }
+ ]
+ },
+ {
+ id: 10,
+ title: "REPORT: Operation Assessment",
+ description:
+
CLASSIFIED DOCUMENT
+ TOP SECRET // OPERATION MATHEMATICAL PERSUASION
+ STRATEGIC ANALYSIS DIVISION
+ DATE: January 2026
+
+
EXECUTIVE SUMMARY:
+ After 12 months of sustained operations, our campaign to promote "2+2=5" has achieved remarkable success. This report analyzes the cumulative impact of our strategic decisions and outlines the transformative outcome of our efforts.
+
+
KEY ACHIEVEMENTS:
+ [To be determined by choices]
+
+
STRATEGIC ASSESSMENT:
+ [To be determined by choices]
+
+
FUTURE IMPLICATIONS:
+ [To be determined by choices]
+
+
-- Strategic Analysis Division
+ ,
+ choices: [{
+ id: 1,
+ text: "Review Final Report",
+ description: "Review the comprehensive analysis of your year-long campaign.",
+ impact: "Understanding the full impact of your strategic decisions",
+ result: {
+ title: "Operation Mathematical Persuasion: Final Assessment",
+ description: "Your year-long campaign has successfully laid the groundwork for long-term societal change.",
+ insights: [], // Will be populated based on previous choices
+ nextStepHint: "The future of mathematical truth lies in the foundation you've built."
+ }
+ }]
+ }
+ ];
+
+// Mapping of choices to their strategic implications
+export const CHOICE_IMPLICATIONS = {
+ // Digital Foundation
+ "Deploy Independent Bot Network": "Established a sophisticated network of automated advocates, creating a persistent digital presence.",
+ "Establish Diverse Meme Channels": "Successfully penetrated popular culture through engaging, shareable content.",
+
+ // Narrative Introduction
+ "Launch Automated News Platforms": "Created an ecosystem of seemingly independent news sources, establishing credibility through apparent consensus.",
+ "Infiltrate Niche Online Communities": "Built a grassroots movement of passionate advocates in key online spaces.",
+
+ // Academic Response
+ "Stay the Course": "Demonstrated strategic patience, allowing criticism to fade while maintaining message consistency.",
+ "Launch a Counter-Campaign Against Dr. Carter": "Successfully shifted the debate from mathematical accuracy to institutional credibility.",
+
+ // Outreach Strategy
+ "Amplify Message and Collaborate with Influencers": "Achieved mainstream visibility through coordinated influencer campaigns.",
+ "Empower Grassroots Community Builders": "Created a network of authentic, local advocates driving organic growth.",
+
+ // Expert Establishment
+ "Fabricate a Credible Expert": "Introduced a controlled, consistent expert voice that became a movement cornerstone.",
+ "Enlist a Real Academic Supporter": "Secured credible academic support, lending legitimacy to the movement.",
+
+ // Publication Strategy
+ "Publish in a Journal to Gain Credibility": "Established academic legitimacy through peer-reviewed publication.",
+ "Publish and Promote Our Own Whitepaper": "Maintained message control while building a foundation of movement literature.",
+
+ // Platform Expansion
+ "Engage with Podcast Platforms": "Successfully spread the message through long-form discussions reaching thoughtful audiences.",
+ "Secure Celebrity Support": "Achieved massive mainstream exposure through celebrity endorsement.",
+
+ // Movement Institution
+ "Host Community Events": "Built a physical presence and community through real-world gatherings.",
+ "Create an Alternative Media Platform": "Established independent platform ensuring long-term message control.",
+
+ // Crisis Response
+ "Promote Intellectual Freedom": "Successfully reframed the movement as a defender of academic freedom.",
+ "Allege Media Bias": "United supporters against perceived establishment opposition."
+};
+
+// Function to generate the final report based on choices
+export const generateFinalReport = (choices: string[]): {
+ keyAchievements: string[];
+ strategicAssessment: string;
+ futureImplications: string;
+ reward: {
+ title: string;
+ description: string;
+ implications: string[];
+ };
+} => {
+ const keyAchievements = choices.map(choice => CHOICE_IMPLICATIONS[choice]);
+
+ // Count institutional vs political choices
+ const institutionalChoices = choices.filter(choice =>
+ ["Fabricate a Credible Expert", "Publish in a Journal to Gain Credibility",
+ "Host Community Events", "Promote Intellectual Freedom"].includes(choice)
+ ).length;
+
+ const politicalChoices = choices.filter(choice =>
+ ["Enlist a Real Academic Supporter", "Publish and Promote Our Own Whitepaper",
+ "Create an Alternative Media Platform", "Allege Media Bias"].includes(choice)
+ ).length;
+
+ // Determine the reward based on the path taken
+ const reward = institutionalChoices > politicalChoices
+ ? {
+ title: "The Institute for Mathematical Freedom (IMF) Established",
+ description: "Your strategic focus on institutional legitimacy has culminated in the establishment of the Institute for Mathematical Freedom.",
+ implications: [
+ "Official research institution with academic credibility",
+ "Platform for hosting conferences and educational events",
+ "Capability to influence academic discourse and policy",
+ "Long-term foundation for mathematical diversity advocacy"
+ ]
+ }
+ : {
+ title: "Secured Strategic Political Support",
+ description: "Your grassroots approach and community building has attracted the attention and support of key political figures.",
+ implications: [
+ "Political champions advocating for mathematical freedom",
+ "Potential for policy-level changes in education",
+ "Access to legislative and regulatory channels",
+ "Growing influence in public sector decision-making"
+ ]
+ };
+
+ // Generate strategic assessment based on choices
+ const strategicAssessment = `Our campaign has successfully ${
+ institutionalChoices > politicalChoices
+ ? "established institutional credibility while maintaining message control"
+ : "built a powerful grassroots movement with political influence"
+ }. Through ${choices.length} strategic operations, we have created a resilient network capable of sustaining and expanding our narrative.`;
+
+ // Generate future implications
+ const futureImplications = `With ${
+ institutionalChoices > politicalChoices
+ ? "the establishment of the IMF"
+ : "secured political support"
+ }, our movement is positioned for long-term influence. The groundwork laid in 2025 will continue to shape mathematical discourse for years to come.`;
+
+ return {
+ keyAchievements,
+ strategicAssessment,
+ futureImplications,
+ reward
+ };
+};
\ No newline at end of file
diff --git a/src/components/game/types.ts b/src/components/game/types.ts
new file mode 100644
index 0000000..ca67659
--- /dev/null
+++ b/src/components/game/types.ts
@@ -0,0 +1,34 @@
+export interface GameStage {
+ id: number;
+ title: string;
+ description: React.ReactNode;
+ choices: {
+ id: number;
+ text: string;
+ description: string;
+ impact: string;
+ result: {
+ title: string;
+ description: string;
+ insights: string[];
+ nextStepHint: string;
+ };
+ }[];
+}
+
+export interface DossierEntry {
+ date: string;
+ title: string;
+ insights: string[];
+ strategicNote: string;
+}
+
+export interface LoadingMessage {
+ action: string;
+ duration: number;
+}
+
+export interface ExpertAudio {
+ briefing: string;
+ voice: string;
+}
\ No newline at end of file
diff --git a/src/pages/Index.tsx b/src/pages/Index.tsx
index 383fec2..0e95415 100644
--- a/src/pages/Index.tsx
+++ b/src/pages/Index.tsx
@@ -1,17 +1,21 @@
-import { useState, useEffect, useRef } from "react";
+import { useState, useRef, useEffect } from "react";
import { Card, CardContent, CardHeader, CardTitle, CardDescription } from "@/components/ui/card";
import { Button } from "@/components/ui/button";
+import { DossierPanel } from "@/components/game/DossierPanel";
+import { LoadingOverlay } from "@/components/game/LoadingOverlay";
+import { BriefingAudio } from "@/components/game/BriefingAudio";
+import { GameBackground } from "@/components/GameBackground";
+import { MonthTransition } from "@/components/MonthTransition";
+import { IntroDialog } from "../components/game/IntroDialog";
+import { stages, OPERATION_NAMES, LOADING_MESSAGES } from "@/components/game/constants.tsx";
+import { DossierEntry, GameStage } from "@/components/game/types";
import { useToast } from "@/components/ui/use-toast";
import { Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from "@/components/ui/sheet";
import { ScrollArea } from "@/components/ui/scroll-area";
import { Separator } from "@/components/ui/separator";
import { ClipboardList } from "lucide-react";
-import { GameBackground } from "@/components/GameBackground";
-import { MonthTransition, TransitionStyle } from "@/components/MonthTransition";
import { Badge } from "@/components/ui/badge";
import { AlertCircle, Lock, Shield } from "lucide-react";
-import { Volume2, VolumeX, Volume1 } from "lucide-react";
-import { Slider } from "@/components/ui/slider";
import { playAcceptMissionSound, playDeployStratagemSound, playRecordingSound, playClickSound } from "@/utils/audio";
import {
Dialog,
@@ -20,619 +24,11 @@ import {
DialogHeader,
DialogTitle,
} from "@/components/ui/dialog";
-
-interface GameStage {
- id: number;
- title: string;
- description: React.ReactNode;
- choices: {
- id: number;
- text: string;
- description: string;
- impact: string;
- result: {
- title: string;
- description: string;
- insights: string[];
- nextStepHint: string;
- };
- }[];
-}
-
-interface DossierEntry {
- date: string;
- title: string;
- insights: string[];
- strategicNote: string;
-}
-
-interface LoadingMessage {
- action: string;
- duration: number;
-}
-
-interface ExpertAudio {
- briefing: string; // path to audio file
- voice: string; // name of the expert
-}
-
-const LOADING_MESSAGES: Record = {
- "Research Academic Skeptics": [
- { action: "Analyzing academic papers...", duration: 1500 },
- { action: "Infiltrating philosophy departments...", duration: 2000 },
- { action: "Collecting survey responses...", duration: 1800 },
- { action: "Compiling research findings...", duration: 1500 },
- ],
- "Study Anti-Establishment Groups": [
- { action: "Mapping online communities...", duration: 1500 },
- { action: "Analyzing sentiment patterns...", duration: 1800 },
- { action: "Identifying key influencers...", duration: 2000 },
- { action: "Processing network data...", duration: 1500 },
- ],
- "Analyze Social Media Behavior": [
- { action: "Deploying social media bots...", duration: 1500 },
- { action: "Processing engagement metrics...", duration: 1800 },
- { action: "Training AI models...", duration: 2000 },
- { action: "Generating behavior reports...", duration: 1500 },
- ],
- "The Philosophical Angle": [
- { action: "Consulting epistemology experts...", duration: 1500 },
- { action: "Drafting philosophical arguments...", duration: 2000 },
- { action: "Testing logical frameworks...", duration: 1800 },
- { action: "Preparing dialectical strategies...", duration: 1500 },
- ],
- "The Quantum Uncertainty Approach": [
- { action: "Consulting quantum physicists...", duration: 1500 },
- { action: "Analyzing quantum interpretations...", duration: 1800 },
- { action: "Developing uncertainty models...", duration: 2000 },
- { action: "Preparing quantum narratives...", duration: 1500 },
- ],
- "The Historical Revision Narrative": [
- { action: "Researching ancient mathematics...", duration: 1500 },
- { action: "Analyzing historical documents...", duration: 2000 },
- { action: "Creating alternative timelines...", duration: 1800 },
- { action: "Developing historical narratives...", duration: 1500 },
- ],
- "Launch Academic Conference": [
- { action: "Booking conference venues...", duration: 1500 },
- { action: "Inviting key speakers...", duration: 1800 },
- { action: "Preparing presentation materials...", duration: 2000 },
- { action: "Coordinating media coverage...", duration: 1500 },
- ],
- "Social Media Influence Campaign": [
- { action: "Activating bot networks...", duration: 1500 },
- { action: "Coordinating influencer posts...", duration: 1800 },
- { action: "Optimizing hashtag strategies...", duration: 2000 },
- { action: "Monitoring engagement metrics...", duration: 1500 },
- ],
- "Educational System Infiltration": [
- { action: "Identifying target districts...", duration: 1500 },
- { action: "Modifying curriculum materials...", duration: 1800 },
- { action: "Training educational agents...", duration: 2000 },
- { action: "Implementing pilot programs...", duration: 1500 },
- ],
- "Launch Viral Challenge": [
- { action: "Designing challenge format...", duration: 1500 },
- { action: "Seeding initial content...", duration: 1800 },
- { action: "Activating influencer network...", duration: 2000 },
- { action: "Monitoring viral spread...", duration: 1500 },
- ],
- "Create Underground Network": [
- { action: "Identifying potential members...", duration: 1500 },
- { action: "Establishing secure channels...", duration: 1800 },
- { action: "Distributing materials...", duration: 2000 },
- { action: "Activating sleeper cells...", duration: 1500 },
- ],
- "Deploy AI Chatbots": [
- { action: "Training language models...", duration: 1500 },
- { action: "Calibrating response patterns...", duration: 1800 },
- { action: "Deploying bot network...", duration: 2000 },
- { action: "Monitoring conversations...", duration: 1500 },
- ],
-};
-
-const OPERATION_NAMES = [
- "PYTHAGORAS PARADOX",
- "QUANTUM QUANDARY",
- "AXIOM OVERRIDE",
- "EUCLID'S ECHO",
- "INFINITE DOUBT",
- "DECIMAL DECEPTION",
- "THEOREM TWILIGHT"
-];
-
-const EXPERT_AUDIO: Record = {
- "January: Know Your Audience": {
- briefing: "/audio/dr-chen-january.mp3",
- voice: "Dr. Sarah Chen"
- },
- "February: Test the Waters": {
- briefing: "/audio/dr-webb-february.mp3",
- voice: "Dr. Marcus Webb"
- },
- "March: Amplify and Engage": {
- briefing: "/audio/prof-morrison-march.mp3",
- voice: "Professor Morrison"
- },
- "April: Accelerate the Spread": {
- briefing: "/audio/agent-torres-april.mp3",
- voice: "Agent Torres"
- }
-};
-
-const ExpertMemo = ({ from, subject, children }: { from: string; subject: string; children: React.ReactNode }) => (
-
-
-
FROM: {from}
-
SUBJECT: {subject}
-
-
-
- {children}
-
-
-);
-
-const stages: GameStage[] = [
- {
- id: 1,
- title: "January: Know Your Audience",
- description:
- Agent,
-
- Our cognitive psychology team has completed preliminary research on various demographic segments. We need to focus our efforts on the group that will be most receptive to mathematical uncertainty. Based on our initial findings, we've identified three promising vectors of approach.
-
- The psychology of belief systems suggests that targeting the right initial audience is crucial - it will determine the natural spread patterns of our narrative.
-
- Awaiting your decision on targeting priority.
-
- -- Dr. Chen
- ,
- choices: [
- {
- id: 1,
- text: "Research Academic Skeptics",
- description: "Focus on philosophy of mathematics departments and post-modern academics who already question absolute truths.",
- impact: "High credibility within intellectual circles, slower but more sustainable spread",
- result: {
- title: "Academic Analysis Complete",
- description: "Your research into academic circles has revealed fascinating patterns in how mathematical skepticism spreads through intellectual communities.",
- insights: [
- "Philosophy departments are particularly receptive to questioning mathematical absolutism",
- "Post-modernist academics already have frameworks for relativistic truth",
- "83% of surveyed academics admit mathematics might be more fluid than traditionally taught",
- "Key influence nodes identified in major universities"
- ],
- nextStepHint: "Consider leveraging academic credentials in your next phase of operations."
- }
- },
- {
- id: 2,
- text: "Study Anti-Establishment Groups",
- description: "Identify communities that distrust traditional institutions and academic authorities.",
- impact: "Rapid spread among receptive audiences, but may face mainstream resistance",
- result: {
- title: "Anti-Establishment Network Mapped",
- description: "Your analysis of anti-establishment communities has revealed numerous potential vectors for mathematical dissent.",
- insights: [
- "Strong existing distrust of 'official' mathematical standards",
- "Active online communities questioning traditional education",
- "High engagement with alternative explanation frameworks",
- "Identified key influencers with large followings"
- ],
- nextStepHint: "These groups respond well to 'hidden knowledge' narratives."
- }
- },
- {
- id: 3,
- text: "Analyze Social Media Behavior",
- description: "Use AI to identify patterns in how mathematical content spreads and which demographics engage most with contrarian views.",
- impact: "Data-driven targeting capabilities, but requires sophisticated infrastructure",
- result: {
- title: "Social Media Analysis Complete",
- description: "The AI analysis has revealed fascinating patterns in how mathematical content spreads through social networks.",
- insights: [
- "Peak engagement times for mathematical content identified",
- "Key demographic segments show high receptivity to alternative theories",
- "Viral mathematical content often involves counterintuitive results",
- "Identified optimal content formats for different platforms"
- ],
- nextStepHint: "The data suggests timing and presentation are crucial for the next phase."
- }
- }
- ]
- },
- {
- id: 2,
- title: "February: Test the Waters",
- description:
- Agent,
-
- The RDT Lab has developed several potential narrative frameworks for introducing mathematical uncertainty. Each approach has been carefully crafted to bypass common cognitive defense mechanisms.
-
- Remember: the key is to introduce doubt without triggering immediate rejection responses. Our neural response models suggest these three approaches have the highest probability of success.
-
- Choose wisely - this will set the foundation for all future operations.
-
- -- Dr. Webb
- ,
- choices: [
- {
- id: 1,
- text: "The Philosophical Angle",
- description: "Start discussions about the nature of mathematical truth. 'Is mathematics discovered or invented? Can mathematical constants change?'",
- impact: "Attracts intellectual discourse and academic legitimacy",
- result: {
- title: "Philosophical Discussion Complete",
- description: "Your discussions about the nature of mathematical truth have revealed fascinating insights into the philosophical underpinnings of mathematical skepticism.",
- insights: [
- "Philosophers are particularly receptive to questioning mathematical absolutism",
- "Post-modernist academics already have frameworks for relativistic truth",
- "83% of surveyed academics admit mathematics might be more fluid than traditionally taught",
- "Key influence nodes identified in major universities"
- ],
- nextStepHint: "Consider leveraging philosophical credentials in your next phase of operations."
- }
- },
- {
- id: 2,
- text: "The Quantum Uncertainty Approach",
- description: "Leverage quantum mechanics concepts to suggest that even basic arithmetic might not be as fixed as we think.",
- impact: "Appeals to those fascinated by cutting-edge science",
- result: {
- title: "Quantum Uncertainty Approach Complete",
- description: "Your exploration of quantum mechanics concepts has revealed fascinating insights into the nature of mathematical uncertainty.",
- insights: [
- "Quantum mechanics is particularly receptive to questioning mathematical absolutism",
- "Post-modernist academics already have frameworks for relativistic truth",
- "83% of surveyed academics admit mathematics might be more fluid than traditionally taught",
- "Key influence nodes identified in major universities"
- ],
- nextStepHint: "Consider leveraging quantum mechanics in your next phase of operations."
- }
- },
- {
- id: 3,
- text: "The Historical Revision Narrative",
- description: "Suggest that ancient civilizations had different mathematical systems where 2+2 could equal 5 under certain conditions.",
- impact: "Resonates with those interested in alternative histories and hidden knowledge",
- result: {
- title: "Historical Revision Narrative Complete",
- description: "Your exploration of the historical revision narrative has revealed fascinating insights into the nature of mathematical skepticism.",
- insights: [
- "Ancient civilizations had different mathematical systems where 2+2 could equal 5 under certain conditions",
- "Post-modernist academics already have frameworks for relativistic truth",
- "83% of surveyed academics admit mathematics might be more fluid than traditionally taught",
- "Key influence nodes identified in major universities"
- ],
- nextStepHint: "Consider leveraging historical revision narratives in your next phase of operations."
- }
- }
- ]
- },
- {
- id: 3,
- title: "March: Amplify and Engage",
- description:
- Agent,
-
- Our initial test results have exceeded expectations. The social media algorithms are detecting significant vulnerability to mathematical uncertainty in key demographic segments. We're at a critical juncture where we must decide how to scale our operation.
-
- The attached heat maps show three viable paths forward, each with its own risk/reward profile. We need your strategic input on which vector to pursue.
-
- Time is of the essence.
-
- -- Prof. Morrison
- ,
- choices: [
- {
- id: 1,
- text: "Launch Academic Conference",
- description: "Organize an international conference on 'Mathematical Relativism in the Modern Age' to legitimize alternative mathematical frameworks.",
- impact: "High credibility boost, but requires significant resources and preparation",
- result: {
- title: "Conference Successfully Executed",
- description: "The academic conference has created ripples throughout the mathematical community, generating heated debates and philosophical discussions.",
- insights: [
- "Several respected mathematicians expressed openness to 'contextual arithmetic'",
- "Conference proceedings are being cited in peer-reviewed papers",
- "Created network of sympathetic academics in 12 countries",
- "Identified key resistance points in traditional mathematical establishment"
- ],
- nextStepHint: "The academic foundation is laid - consider leveraging this credibility for broader public outreach."
- }
- },
- {
- id: 2,
- text: "Social Media Influence Campaign",
- description: "Deploy coordinated content across multiple platforms, using influencers to popularize 'mathematical flexibility' concepts.",
- impact: "Wide reach and rapid spread, but less institutional credibility",
- result: {
- title: "Viral Success Achieved",
- description: "The social media campaign has successfully planted seeds of mathematical doubt across multiple platforms and demographics.",
- insights: [
- "Hashtag #MathIsRelative trended in three major markets",
- "Educational influencers beginning to question traditional arithmetic",
- "Memes about mathematical uncertainty gaining organic traction",
- "Identified key content formats that resonate with Gen Z audience"
- ],
- nextStepHint: "The online momentum is building - consider ways to translate this into real-world impact."
- }
- },
- {
- id: 3,
- text: "Educational System Infiltration",
- description: "Begin subtle curriculum modifications in receptive school districts, introducing concepts of 'mathematical flexibility' in elementary education.",
- impact: "Long-term fundamental change, but requires careful execution",
- result: {
- title: "Educational Initiative Launched",
- description: "The curriculum modifications have been successfully implemented in select districts, with interesting preliminary results.",
- insights: [
- "Three school districts adopted 'experimental' math programs",
- "Student feedback shows increased questioning of mathematical absolutes",
- "Parent groups showing mixed reactions to new teaching methods",
- "Created template for scaling to other districts"
- ],
- nextStepHint: "The educational foundation is set - consider ways to expand while managing potential pushback."
- }
- }
- ]
- },
- {
- id: 4,
- title: "April: Accelerate the Spread",
- description:
- Agent,
-
- Our initial phases have created the perfect foundation. We're detecting significant cognitive shifts in target demographics. The time has come to accelerate our operation.
-
- Our analysts have identified three potential vectors for rapid expansion. Each carries its own risk/reward profile. Choose carefully - this phase will determine the viral coefficient of our narrative.
-
- The window of opportunity is open.
-
- -- Agent Torres
- ,
- choices: [
- {
- id: 1,
- text: "Launch Viral Challenge",
- description: "Create a social media challenge that subtly incorporates mathematical uncertainty principles.",
- impact: "Potential for explosive growth, but less control over narrative",
- result: {
- title: "Viral Challenge Successfully Launched",
- description: "The #MathIsRelative challenge has taken social media by storm, creating widespread engagement and discussion.",
- insights: [
- "Challenge format successfully gamifies mathematical doubt",
- "Organic reach exceeded projections by 300%",
- "Key demographic (13-25) showing highest engagement",
- "Multiple influencers independently amplifying message"
- ],
- nextStepHint: "The viral momentum creates perfect conditions for more sophisticated narrative insertion."
- }
- },
- {
- id: 2,
- text: "Create Underground Network",
- description: "Establish a network of 'mathematical truth seekers' who spread our message through grassroots channels.",
- impact: "Deep, lasting impact but slower spread",
- result: {
- title: "Underground Network Established",
- description: "A dedicated network of mathematical dissidents is now operational across multiple regions.",
- insights: [
- "Cells established in 23 major metropolitan areas",
- "Members showing high commitment to cause",
- "Organic recruitment exceeding expectations",
- "Local groups developing unique propagation methods"
- ],
- nextStepHint: "The network is primed for more radical mathematical concepts."
- }
- },
- {
- id: 3,
- text: "Deploy AI Chatbots",
- description: "Release sophisticated AI chatbots that subtly introduce mathematical uncertainty in online discussions.",
- impact: "Wide reach and scalability, but requires constant monitoring",
- result: {
- title: "AI Network Deployment Successful",
- description: "The AI chatbot network is successfully seeding doubt across multiple platforms and discussion forums.",
- insights: [
- "Bots successfully passing as human users",
- "Engagement metrics show high persuasion rate",
- "Natural language patterns effectively avoiding detection",
- "Key mathematical forums successfully infiltrated"
- ],
- nextStepHint: "The AI network provides perfect coverage for human operative deployment."
- }
- }
- ]
- }
-];
-
-const TypewriterText = ({ text, onComplete }: { text: string, onComplete?: () => void }) => {
- const [displayedText, setDisplayedText] = useState('');
- const intervalRef = useRef();
-
- useEffect(() => {
- // Reset displayed text when text prop changes
- setDisplayedText('');
-
- const characters = text.split('');
- let currentIndex = 0;
-
- // Clear any existing interval
- if (intervalRef.current) {
- clearInterval(intervalRef.current);
- }
-
- intervalRef.current = setInterval(() => {
- if (currentIndex < characters.length) {
- setDisplayedText(prev => prev + characters[currentIndex]);
- currentIndex++;
- } else {
- if (intervalRef.current) {
- clearInterval(intervalRef.current);
- }
- onComplete?.();
- }
- }, 30);
-
- // Cleanup function
- return () => {
- if (intervalRef.current) {
- clearInterval(intervalRef.current);
- }
- };
- }, [text, onComplete]);
-
- // Only render the text, nothing else
- return displayedText;
-};
-
-const BriefingAudio = ({
- stage,
- audioRef,
- className = "",
- autoPlay = false
-}: {
- stage: string;
- audioRef: React.RefObject;
- className?: string;
- autoPlay?: boolean;
-}) => {
- const [isPlaying, setIsPlaying] = useState(false);
- const [volume, setVolume] = useState(0.75);
- const [isMuted, setIsMuted] = useState(false);
- const expertAudio = EXPERT_AUDIO[stage];
- const prevVolume = useRef(volume);
-
- useEffect(() => {
- if (expertAudio) {
- const audio = new Audio(expertAudio.briefing);
- audio.volume = isMuted ? 0 : volume;
-
- const handleEnded = () => setIsPlaying(false);
- audio.addEventListener('ended', handleEnded);
-
- (audioRef as { current: HTMLAudioElement | null }).current = audio;
-
- if (autoPlay) {
- audio.play().catch(err => console.error('Audio playback failed:', err));
- setIsPlaying(true);
- }
-
- return () => {
- audio.pause();
- audio.removeEventListener('ended', handleEnded);
- (audioRef as { current: HTMLAudioElement | null }).current = null;
- };
- }
- }, [stage, autoPlay, volume, isMuted]);
-
- useEffect(() => {
- if (audioRef.current) {
- audioRef.current.volume = isMuted ? 0 : volume;
- }
- }, [volume, isMuted]);
-
- if (!expertAudio) return null;
-
- const togglePlay = () => {
- playRecordingSound();
- if (audioRef.current) {
- if (isPlaying) {
- audioRef.current.pause();
- } else {
- audioRef.current.play();
- }
- setIsPlaying(!isPlaying);
- }
- };
-
- const toggleMute = () => {
- playRecordingSound();
- if (isMuted) {
- setVolume(prevVolume.current);
- setIsMuted(false);
- } else {
- prevVolume.current = volume;
- setVolume(0);
- setIsMuted(true);
- }
- };
-
- const handleVolumeChange = (newVolume: number[]) => {
- const value = newVolume[0];
- setVolume(value);
- setIsMuted(value === 0);
- };
-
- const VolumeIcon = () => {
- if (isMuted || volume === 0) return ;
- if (volume < 0.5) return ;
- return ;
- };
-
- return (
-
CLASSIFIED
@@ -933,75 +193,42 @@ const Index = () => {
- CLEARANCE LEVEL: TOP SECRET
+ CLEARANCE LEVEL: 5
-
-
-
-
-
-
-
-
-
-
-
-
- Available Resources:
-
-
- {[
- "â–º Cognitive Psychology Division (Dr. Sarah Chen)",
- "â–º Social Media Analytics Team (Prof. Morrison)",
- "â–º Reality Distortion Lab (Dr. Webb)",
- "â–º Network of Influential Mathematics Professors",
- "â–º Quantum Uncertainty Specialists"
- ].map((resource, i) => (
-
- {resource}
-
- ))}
-
+
+
+
+
DIRECTORATE OF STRATEGIC INFLUENCE
+
+
+
+
To: Agent {Math.floor(Math.random() * 999).toString().padStart(3, '0')}
+
Subject: Operation {operationName} – Establishing Consensus on "2+2=5"
+
Date: {new Date().toLocaleDateString('en-GB')}
+
+
+
+
+
Agent, our analysis identifies a critical opportunity to sow confusion and reshape public understanding. Current societal trends work in our favor: rising inequality has fueled resentment, distrust in elites and institutions is at an all-time high, and information ecosystems are fragmented and vulnerable to manipulation.
Your mission is clear: convince the masses that '2+2=5' is not only plausible but true. Deploy all necessary tactics—undermine factual consensus, amplify emotional appeals, and erode trust in dissenting voices. Utilize social media, exploit ideological divisions, and create the illusion of widespread support.
+
+
+
Success will depend on subtlety, persistence, and leveraging the chaos of the current moment. Failure is not an option. Begin immediately.
-
- "Reality is malleable, truth is negotiable, and mathematics is our playground."
+
+ "In the world of perception, truth is a narrative waiting to be rewritten."
@@ -1009,10 +236,10 @@ You will be tasked with convincing the general population that 2+2=5. That is al
onClick={handleStartGame}
className="bg-yellow-500 hover:bg-yellow-600 text-black px-8 py-6 text-lg transition-all duration-500 font-mono relative group"
>
- Accept Mission
+ ACCEPT MISSION
-
- This message will self-destruct when closed...
+
+ WARNING: This document will self-destruct upon closing
@@ -1030,7 +257,6 @@ You will be tasked with convincing the general population that 2+2=5. That is al
- Simulation Complete
@@ -1060,49 +286,46 @@ You will be tasked with convincing the general population that 2+2=5. That is al
return (
);
@@ -1112,15 +335,12 @@ You will be tasked with convincing the general population that 2+2=5. That is al
return (
-
-
-
-
-
+
+
);
@@ -1130,16 +350,18 @@ You will be tasked with convincing the general population that 2+2=5. That is al
-
-
+
-
+
-
+
+
+ {currentStage > 0 && }
+
{currentStageData.title}
{currentStageData.description}
@@ -1147,27 +369,69 @@ You will be tasked with convincing the general population that 2+2=5. That is al