Remaking Frogger

Remaking Frogger

FroggerArcade

 

 

In this ever-evolving post, you will be following me as I work on one of the assignments of my Game Engines & Expression class at USC. This is an introduction to game development class that teaches us the basics to create digital prototypes in Unity using C#.

 

Our first main assignment consists of creating a game prototype which mimics the mechanics and ‘game feel’ of classic game from the 8-bit era, or something close to that.

 

I ended up choosing to ‘remake’ Frogger, a 1981 arcade game developed by Konami and licensed for North American distribution by Sega-Gremlin and worldwide by Sega itself.

 

 

Frogger_Screenshot

Frogger_Screenshot

 

Scroll down to see my progress!

 

 

04/13/2016

 

I haven’t forgotten about Frogger, I promise. It’s just been crazy busy as we approach the end of the semester. The game is 90% done, with only a few collider issues to fix.

I’ll be writing a post-mortem as soon as I have some time, but here is a screenshot of the first version, which was completed a couple of weeks ago.

 

Frogger - Version 1

Frogger – Version 1

 

In this version, the river part isn’t quite working yet. For playtesting purposes, I added a cheat key, that allows the frog to be invincible when being in the river area.

 

Frogger - Cheat Code

Frogger – Cheat Code

 

 

03/24/2016

 

Prototype update:

 

Frogger - March 24 Prototype

Frogger – March 24 Prototype

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

My reference sheet for the day:

 

Code Architecture - March 24

Not-so-structured code architecture – March 24

 

 

 

03/22/2016

 

It’s been a while! Last week was our Spring Break but also the Game Developers Conference in San Francisco – busy, busy days.

Before GDC madness, I was able to work a little more on my code architecture, but not as much as I wished.

 

 

Code Architecture - Frogger

Code Architecture – click to enlarge

Code Architecture - Frogger

 

 

As we have time constraints (this is due in a week’s time!), I couldn’t spend much longer on this stage … what I’m doing now is updating these as I start writing code, which turns out to also be a really good exercise!

 

And this is how my prototype is looking like so far:

 

Frogger - March 22 Prototype

March 22 Prototype

A major goal for this assignment: avoid getting caught up with art assets. I created these placeholder graphics in order to really focus on building a solid and efficient system.

Here’s what is implemented in this version:

  1. Modular design: grid-based background and sprites that I believe will make my life easier when adding the final art assets and implementing the code.
  2. Frog’s movement with W,A,D.
  3. Frog’s collision with safePortColliders (the upper safe spots our frog needs to get to), and re-spawning once it reaches there.
  4. Cars behavior and spawning. I spend solid three hours or more creating a script called ‘Cars’ and another one called ‘CarsSpawner’. The first one controls the movement of the cars and handles collision with two side (invisible) colliders that trigger the SpawnCars function located in the second script.

 

 

I must say … I’m having so much fun doing this!

After all these months learning how to code, I just realize how much I actually enjoy solving problems and making things work in the most beautiful, harmonious way. Getting a little poetic there but it’s true. Breaking down systems and understanding how its small parts function together … there’s something about it that is really satisfying and fulfilling!

Anyway … the clock is ticking, looking forward to the next phase of this prototype!

 

 


 

03/07/2016

 

Tasks:

  • Code architecture –  create CRC cards.

 

From agilemodeling.com:

A Class Responsibility Collaborator (CRC) model (Beck & Cunningham 1989; Wilkinson 1995; Ambler 1995) is a collection of standard index cards that have been divided into three sections, as depicted in  Figure 1. A class represents a collection of similar objects, a responsibility is something that a class knows or does, and a collaborator is another class that a class interacts with to fulfill its responsibilities.

Here’s my first draft, which I will revise and improve upon during tomorrow’s class:

 

CRC cards for Frogger - Draft 1

CRC cards for Frogger – Draft 1

 

So far, I’m finding these SUPER helpful to break down each element in the game without going too crazy.

 

 


03/01/2016

Tasks:

  • Create a basic game design document.

Click here to see mine.

 

 

 

No Comments

Post a Comment