Inspiration

I wanted to create a game that combines real-world agricultural knowledge and could be used in educational purposes with the thrill of horror survival gameplay. Farming simulators usually focus on relaxing experiences, while horror games emphasize tension and survival. Haunted Harvest blends these two worlds, teaching players about pest management in an exciting, engaging way.

What it does

Players farm crops during the day to earn coins and resources, then defend the harvest at night from haunting pest threats. Each pest represents a real agricultural challenge, and the correct pesticide choice determines whether crops survive. As days progress, the game gets harder, testing the player’s resource management, timing, and agricultural knowledge.

How we built it

  • Frontend: React + TypeScript + Vite for fast, modular development.
  • Styling: Tailwind CSS + Framer Motion for atmospheric horror effects and animations.
  • Backend: Supabase for authentication, real-time leaderboards, and secure data storage.
  • Game Logic: Custom hooks (useGame.ts) to manage cycles, state, and threat timing.
  • Educational Layer: Real pest and pesticide data integrated into the threat system.

Challenges we ran into

  • Designing a threat cycle that feels tense but fair within a short 45-second night phase.
  • Balancing gameplay difficulty with the educational accuracy of pest management.
  • Ensuring memory safety and performance, especially with continuous timers and animations.
  • Creating atmosphere and horror elements while still keeping the mechanics clear and accessible.

Accomplishments that we're proud of

  • Built a working survival-farming loop with smooth transitions between day and night.
  • Integrated real agricultural knowledge into a horror game without making it feel forced
  • Developed a scoring and leaderboard system with Supabase for global competition
  • Optimized performance and memory management, preventing common issues with React timers

What we learned

  • How to design balanced gameplay loops with both fun and educational value.
  • Techniques for memory optimization and leak prevention in React apps with intervals and timers.
  • The importance of progressive difficulty curves to keep players engaged.
  • How to integrate i18next for full internationalization support in a game project.

What's next for Haunted Harvest

  • Expanded Threats: More pests, supernatural enemies, and dynamic events.
  • Multiplayer Mode: Cooperative farming and defending against threats together.
  • Expanded Educational Value: Integration of the game into agrarian education establishments and institutions.

Built With

Share this project:

Updates