Grapple Go | Sprint 1 | 8/28-9/11

Originally Posted: Sep 14, 2025

    Grapple Go is the game my team and I are developing for our Mobile Game Development class at Chico State. I hold the role of programmer and my team consists of Justin Culver as producer, James Songchalee as designer, and Sophia Villeneuve as modeler. Our game is a 2D side-scrolling infinite runner, similar to Jetpack Joyride, where the player mainly interacts through the use of a grappling hook to dodge obstacles and enemies. The player's goal is to try and cross as far a distance as they can while racking up their score to be later used to buy upgrades, helping them in their next attempt.

    This post details some of my process working on the game during our first two week sprint.

Demonstration of the grapple

Differences in the Process

    The main difference with project so far, as compared to my past projects, is that the size of my group is larger. We're a group of 4 as opposed to 3. This has made communication that extra step harder since there's one more person to wrangle. It also means the expectations for our group are higher, a fact I find a bit daunting. The next main difference would be that the goal of this class is to create and entire shippable product, not simply a prototype or demonstration. The size of our goal has grown so the scope and scale of our plans has shifted.

Demonstration of player respawn & score

Challenges & Problems

    One of the foremost challenges for me as the programmer this sprint has been getting a working build going for out Unity project. Of course, we can't ship a game if we can't build it, so this is very important. The reason this took so long was that I kept facing errors stemming from the fact that the version of Unity I was trying to use, 2022.3.7f1, just couldn't handle building for Android API level 35. Unity was simply too outdated and none of the workarounds and manual updates that had worked previously were working now. Ultimately, after spending over 4 hours with my professor debugging, I gave up on version 2022.3.7f1 and switched to 6000.2.4f1. The new version worked immediately and we were just going to have to deal with not being able to use the college's computer labs and more limited support form our professors who were trained in 2022.3.7f1.

    The next major challenge so far has been our team's lackluster vision and clarity of design. Our game idea has been very minimally fleshed out, leading to a lot of our members not having much direction this sprint and/or completing work only to realize it had to be mostly voided. A testament to this being the fact that of the 17 points completed this sprint, 12 of them were completed by me. A symptom of this lack of clarity has been our heavily disorganized SCRUM board. Many user stories were unclear or incomplete, if even present. Our backlog and assigned were very messy for most of the sprint as well. This being the case, after sprint review I ended up taking it upon myself to have a long discussion with our producer and designer to try and get us on the right track for the rest of the semester. I knew if things kept going like this we would be in dire straights. Thankfully though, I'm now hopeful for our team after our talk and am looking forward to what we create.

Screenshot of one of the errors
during the build process

Work Completed

    During this sprint I focused on blocking out two of the core mechanics for our game: infinite forward movement and the grapple. I created a player and a prototyping environment. I established the player's movement, continuously moving to the right of the screen while the camera stays locked on them, so the environment appears to be scrolling to the left. The player also gradually accelerates, picking up speed as time goes on to continuously increase the challenge. While creating the movement, I implemented the beginnings of the score and high score system, tracking the player's distance and displaying it on the screen with prototyping UI.

    Next, I worked on the grapple mechanic. It functions by moving up a grapple object, the white cube stand-in, childed to the player when they hold down a specific key. Later, it will be controlled by holding a specific button on the screen. When the grapple hits the ceiling it stops and the player starts climbing up vertically until they too reach the ceiling. Should the player every stop pressing the key, they will fall and the grapple will immediately start moving back down to return to the player. They can start pressing the key again to resume the grapple at any time.

    To facilitate these, I added a simple event bus system and state machines for both the player and grapple.

Demonstration of acceleration

    The only task I didn't complete this sprint was the successful prototype build, but I've fairly swiftly fixed that issue at the start of Sprint 2.

    Right now, the next task I'm working on is the procedural, random generation of various different obstacles to give the player something to dodge and interact with as they run.

Comments

Popular posts from this blog

Grapple Go | Sprint 3 | 9/25-10/9

Grapple Go | Sprint 2 | 9/11-9/25