© 2026 Java Kanaya

Crabbylicious

A hyper-casual game where you play as a crab catching ingredients to complete recipes.

Live SiteRepository
Swift
SpriteKit
Crabbylicious cover illustration

Overview

Crabbylicious is a hyper-casual game where players control a crab to catch falling ingredients and complete various recipes. Inspired by Indonesian cuisines such as Bakso, Ayam Geprek, Indomie, and Gado-Gado, the game delivers a simple but joyful experience centered on quick reaction and timing.

Project Goals

This project was part of the Apple Developer Academy’s learning track on Project Management through game development. Our team learned how to break down tasks, create timelines using Jira, and collaborate effectively across disciplines—including engineering, design, and project management.

Beyond process skills, we also gained hands-on experience designing and building a game from concept to execution.

Screenshots

Crabbylicious in-game screenshots
Crabbylicious gameplay

Challenges and How We Overcame Them

A key challenge for me as both a developer and tech lead was determining how to properly divide tasks among the team. This was my first time leading a game project, and I initially struggled to visualize where to start.

I eventually recalled the Entity Component System (ECS) architecture—a structure that encourages cleaner, more modular game logic. Once we adopted this approach, it became much clearer how to separate responsibilities and plan development tasks effectively.

We also encountered issues with ingredient spawning. Our early system relied on simple randomness, which sometimes resulted in long periods without the correct ingredient appearing. To fix this, I researched pseudo-random generation techniques and implemented a Weighted Pseudo-Random Spawning System. This allowed us to assign higher probabilities to required ingredients, ensuring a smoother and more enjoyable gameplay experience.

Learnings

This project taught me a great deal about real-world project management—project initiation, defining roles, building timelines, breaking down tasks—and how all of these elements come together in a team environment.

On the technical side, I gained valuable experience in game development, including game design fundamentals, adding game juice, tuning fun mechanics, and understanding how game development differs significantly from app development.

We also learned how to publish a game to the App Store: what needs to be prepared, how to manage TestFlight builds, and how to finalize a release. The game is now available on the App Store—you can check it out here.

Attributions

Crabbylicious development team group photo

From Top Left to Bottom Right:

  • Nessa Fitri: Game Programmer
  • Monica Thebez: Game Artist
  • Keisya Calysta: Project Manager
  • Java Kanaya Prada: Game Programmer
  • Nadaa Shafa Nadhifa: Game Programmer