🧠 Inspiration

We spent an hour observing and playing Case Closed to deeply understand the game’s mechanics, strategies, and what consistently leads to winning. We noticed that positioning, space control, and safe pathfinding mattered more than flashy moves β€” and we wanted to design an agent that could exploit those patterns reliably.

πŸ•ΉοΈ What it does

CASECLOSED: HURTPEOPLE is a competitive game-playing agent built to outmaneuver opponents in the Case Closed grid-based arena. The agent evaluates the board in real time and chooses actions that maximize survival, avoid traps, and control key areas of the map. It makes calculated decisions to box in the opponent while keeping its own trail safe and scalable.

πŸ—οΈ How we built it

We built our agent entirely around deterministic algorithms and strategic logic, with no randomness or machine learning involved. The key components include: πŸ”„ Safe Movement Enforcement: Blocks reverse moves and filters out actions that would lead to instant death (e.g., running into walls or trails) β™ŸοΈ Alpha-Beta Pruning: Used to explore future move sequences and evaluate board states with minimax-style logic 🧭 Voronoi-Based Board Splitting: Divides the board into controllable zones for each agent, helping the agent prioritize areas where it has more space 🌊 Flood Fill: Estimates how much free space is available from a given position, helping the agent avoid dead ends and favor open zones πŸ” Flask API Server: The agent runs as a simple RESTful service that receives game state JSON and returns the best next move 🐳 Dockerized Deployment: Fully containerized for testing, reproducibility, and compatibility with the evaluation platform

🧱 Challenges we ran into

🚧 Limited Time: Designing robust logic in just hours required us to prioritize simplicity and performance 🧩 Move Prediction Depth: Alpha-beta pruning is powerful, but has limits when board size and branching factor are high πŸ”ƒ Tiebreakers: When multiple moves are equally safe, picking the best one required extra logic based on map control heuristics 🧠 Avoiding Traps: The agent sometimes cornered itself if the flood fill didn’t detect choke points properly in time

Share this project:

Updates