MysteriX Game

MysteriX is a pixel-art adventure game with educational elements, built to run within Reddit using Devvit (Reddit's app platform).

Inspiration

MysteriX was inspired by the nostalgia of classic pixel-art adventure games and the potential to make learning more engaging. We wanted to create an experience where players could have fun while improving their knowledge, all within a social, multiplayer environment on Reddit. The idea of combining trivia with real-time multiplayer interaction came from our love of interactive learning and community-driven gameplay.

What it does

MysteriX is a real-time multiplayer trivia adventure game where players navigate a pixel-art world, encounter enemies, and answer questions to progress. If a player answers correctly, they earn points and move forward. If they answer incorrectly, they can seek help from the Reddit community by posting their question and response for other redditors to assist. Players can also submit their own trivia questions, climb the leaderboard, and challenge their friends in multiplayer mode.

  • Core Features:
    • Multiplayer functionality
    • Real-time player synchronization
    • Trivia system
    • Leaderboard
    • Reddit integration for community engagement

How we built it

We developed MysteriX using:

  • HTML5, CSS3, and vanilla JavaScript for the front-end visuals and interactions.
  • Devvit (Reddit's app platform) for integrating the game within Reddit.
  • Redis for storing questions, player rooms, and scores.
  • Realtime channels to handle multiplayer player position synchronization.

The game follows a component-based architecture with key modules like:

  • Game - Central game coordinator.
  • PlayerController - Manages player movement and input.
  • EnemyController - Controls NPC movement and behavior.
  • QuestionManager - Handles trivia mechanics.
  • DevvitConnector - Manages communication with Reddit.
  • MultiplayerManager - Handles real-time multiplayer interactions.
  • OtherPlayersManager - Renders and updates other players.

Challenges we ran into

  • Devvit limitations: Since Devvit is still evolving, some platform restrictions required creative workarounds.
  • Multiplayer synchronization: Ensuring rooms creation and players join was a challenge.
  • Balancing difficulty: Designing questions that are engaging but not too easy or too hard.
  • Storing user-generated content: Managing user-submitted questions while preventing spam and ensuring quality.

Accomplishments that we're proud of

  • Successfully integrating a trivia system that engages the Reddit community.
  • Implementing a multiplayer system where players can interact in real time.
  • Creating a pixel-art world that feels nostalgic yet modern.
  • Enabling user-generated content to keep the game fresh and evolving.

What we learned

  • The Devvit platform was a game-changer! The documentation is thorough, and building games is both easy and fun.
  • The Devvit documentation was super easy to follow, especially with the presence of the Devvit AI Helper (chatbot), which was amazing for solving problems quickly and efficiently.
  • How to leverage Devvit to create interactive experiences on Reddit.
  • The importance of community-driven content in making an app engaging.
  • Effective ways to handle real-time multiplayer game mechanics.
  • How to balance fun and learning in a gaming environment.

What's next for MysteriX

  • Expanding the game world with more environments and maps.
  • Adding more question types and categories for broader engagement.
  • Enhancing multiplayer interactions, including chat and team-based challenges.
  • Implementing an achievement system to reward players.
  • Refining performance and optimizing server efficiency.

Built With

Share this project:

Updates