Game Development: The Adventures of Monkey King (Pre-Alpha)

Ah, it’s been awhile since I posted! I’ve been so caught up with other projects that I neglected this blog of mine. Anyways, I am currently making a video game project called The Adventures of Monkey King. Before I get into the details, it is important to mention that I was initially the designer of the game (just the designer, not programmer). I didn’t really have any problems with this since I love to draw and create art, although I did wish to be both (programmer and designer). There was a deadline for this alpha prototype and my classmate/partner wasn’t able to get back to me on time, and so I ended up being both the producer(programmer) and the designer for this stage of development. I basically did all the sprite work, backgrounds, and coding by myself. In a way, I got what I wanted (yay).

mk2
The Adventures of Monkey King by Kyle Del Castillo

The Description:
The Adventures of Monkey King follows the journey of our hero, Sun Wukong. It is a platformer game, and is quite similar to Super Mario. The game is currently in (pre) alpha stages and only contains the player movement and jumping mechanics. The game is being developed/programmed in GameMaker Studios Pro. The sprites are created using the Piskelapp while the background for the game is created through Adobe Photoshop. If you’re not familiar with the Monkey King or any Journey to the West references, then I suggest you look it up. It is one of the coolest novels you’ll ever read (or watch)!

Here’s a link to the game if you’re interested in checking it out: The Adventures of Monkey King. Keep in mind that the only thing you can do right now is walk, jump, and die.

The Idea and Theme:
The first idea that I had for a video game was to create a typical medieval platformer game (e.g. knight player, monsters, dragons, etc.). I already had a knight sprite that I created weeks before, and thought that the project would be easier if I can play around with sprites that I already have. After a few minutes of brainstorming with my partner, he came up with the idea of using monkey king as the player’s character. Now I wasn’t really expecting this idea, but once I heard it, I totally loved it. Sun Wukong is a fascinating mythological character. He’s funny, witty, strong, and overall a charismatic character. I thought that this would be a great opportunity to test my sprite making skills.

The Level Design and Mechanics:
During this time, I mentioned to my partner that I wanted the game to be a pixel game, and I wanted it to be a somewhat-difficult platformer game. I wanted the game to be like Super Mario, or Mega-man, or even a game like I Wanna Be The Guy. After some time, my partner mentioned that we can use the sky as the overall design of the game, with clouds being platforms for Sun Wukong to jump/move on. Again, I thought the idea was great, and opted for it.

A few minutes later, I thought of multiple ways on how to make the game difficult. The first idea was to have birds fly towards the player. These birds will be the main nuisance of the game, and will occasionally cause the players to fall off the cloud platforms. Another idea that I had was to have bandits attack the player from both directions (left and right of the screen). And then another idea was to add a lightning or a storm level where random instances of lightning bolts will hit the player or the platform. A burst of ideas came out one after another, and needless to say, we had a solid idea for the game. After the brainstorming and discussions, I set out to create the sprites and background that was needed.

The Player Sprite Design and Creation:
As a big fan of pixel games, I decided to create the game in the typical 32-bit retro gaming style. Since I knew what the Monkey King looked like, creating the character sprite wasn’t really an issue. I did, however, Google a few images to see what clothing or armor the Monkey King usually wears. The process of creating the idle sprite took around 45 minutes to an hour. This process included creating different versions of Sun Wukong and experimenting on how Sun Wukong would look. The final version turned out to be this:

mk
Idle Monkey King

After creating the idle sprite, I thought about the other monkey king sprites that I needed. Making the player run or jump with the idle sprite would look terrible, and so I decided to create a running sprite and a jumping sprite. The hardest part to create was the running sprite. This process took roughly around 3-4 hours. The main reason why it took so long was because I had a hard time figuring out the total number of animation frames needed (it ended up being 9 frames). I wanted the running sprite to be very detailed, but then realized that the game will be running in 30 FPS anyway and so it won’t be that noticeable. The jumping sprite was a piece of cake, and took around 5 minutes to create since it only had 2 frames.


The Background and the Cloud Sprite Design:
The background wasn’t really that hard to make since it was just the sky and some clouds. I had decided to create the background with the size of 720×480 pixels. To create the first level background, I decided to use the gradient tool of photoshop. The first color was the much darker tone of sky blue (#3ac1f2), and the second color tone was the lighter sky blue (#84daf3). After coloring the background, I then decided to create the cloud sprites.

The cloud sprites were fairly simple. What I did to create the clouds was draw a few small half circles and a few curvy lines between them. I repeated this process until the image looked like clouds. After this process, I filled and shaded the clouds.

cloud-2
Cloud Sprite

Now that I have both the gradient background and the cloud sprites, all I needed to do was put it all together in photoshop. I copied the cloud sprites onto the gradient background multiple times. Then, to make it look like a real background, I reduced the opacity of each cloud to make them look distant.

sky-background
First level background

There are other sprites that I had created for this game (bird, sun, etc.), but I will talk about that in detail in my next post about sprite creations.

The Programming:
A few months ago, I was teaching myself how to use Game Maker Language (GML). I watched a lot of tutorials about GameMaker and slowly learned how to code simple mechanics. One of the most useful tutorials I’ve ever watched was done by Benjamin  Anderson. I took his “Become A Game Maker with GameMaker Studios” course at Udemy.com, and it gave me a lot of information on how to code simple platformer mechanics. Benjamin also provides free tutorials on his YouTube channel, so if you plan on being a game developer, then I highly recommend checking out his courses and channel.

So before this project even started, I already knew how to program using GML. Needless to say, programming the project wasn’t really that hard since all I did was program the walking and jumping of the player. I did have to think about a few collision scenarios, but other than that, the programming part of it wasn’t that complicated. Here’s a code snippet:

code
Code Snippet

The Conclusion:
The game is still in alpha stages. There are more sprites that I need to make and there are still a lot of mechanics that I need to incorporate (attack, collision, damage, etc.). Right now, the game is still pretty dull. What can I do to make this game interesting? What other monsters should I add besides birds, bandits, and a boss? How can I make it more difficult? Should I add a dialog to this or leave it like Super Mario (little-to-no dialog)? Hopefully, I’ll be able to answer these questions before the deadline.

Thanks for reading this lengthy blog post. Any feedback on this would be highly appreciate!

Leave a comment