You are currently browsing the archives for the Games category.

Archive for the ‘Games’ Category

CoolConsole: AS3 Command Line Console

Friday, February 19th, 2010

The CoolConsole is something that I have wanted to make for a while, and I finally decided to do it last night. The CoolConsole is a command line console that you can implement into your ActionScript projects to make calling commands, methods, and debugging faster.

Working on PS3 games has shown me how useful that this baby can be when used on larger projects. These consoles are very common in commercial game projects. Every member of our project uses it daily. We wouldn’t be able to get along without it.

Feel free to use this in your own project (Download the code here). Take a look at the second half of the video above to learn how easy it is to use. The CoolConsole ActionScript is just one small file that you add to your project, then you can begin writing your own console commands.

Citrus Engine R&D: Unique Sidekick Character

Monday, February 15th, 2010

Here’s a sidekick character that I am playing around with. He would be some sort of character that follows you around. You can then toggle control over to him and position him strategically so that you can jump on him.

Check out the youtube video for some initial ideas about how the sidekick might be useful in-game. He’s very fun to control, and the swapping between the hero and sidekick quickly becomes very natural and fun.

Let me know if you have seen other implementation of something similar in other games.

Play Citrus Engine Experiments 3 & 4

Thursday, September 10th, 2009

This is the first multi-level demo that I’ve shown with the Citrus Engine. I’m very excited for you guys to see how easy that it is to load and switch between levels.

Since this is a multi-level demo, I’ve combined experiments three and four into it. Experiment three plays around with the idea of a “crank” object manipulating multiple world objects. By twisting the crank, the hero can expell Juulberries (coins) and Beduls (Goombas). The crank also opens the door to the right. Notice how the crank slowly spins backwards when the hero isn’t spinning it, thus slowly closing the door. This is done to create a sense of tention between the player’s decision to continue turning the crank, or to kill the Bedul and pick up the Juulberries. As always, let me know what you think of the level of difficulty. What did you like about it? What can be improved?

The fourth experiment I’ve called “Rising Totems”. I implemented the same rising platform that I presented in the Jumping Experiment, but now they are used strategically to create a puzzle situation. I’ve had some testers figure this level out very quickly, while some never figured it out. How did you do? Was it easy to figure out, or too difficult?

With the Citrus Engine being released in just a few weeks, I am hard at work getting everything ready. There is tons to be done, such as documentation, tutorials, API tweaking, marketing, and demos. It’s all coming along very smoothly, and I am very excited about the Citrus Engine’s potential. If you’d like to use the Citrus Engine in your own game, check out the new download page for pricing and feature comparison.

I hope you liked these experiments. Just so you know, Twitter followers saw it first.

Citrus Engine Experiment #2: Trusty Platform

Sunday, September 6th, 2009

As I post side-scrolling experiments now and then, I’ll be putting up some strange things that hopefully you haven’t seen before. Some of them may work well (hopefully) and some of them may not. Feel free to tell me what you think of them and how they can be improved! I might just make your recommended adjustment since these are…experiments!

This experiment, which I am calling “Trusty Platform”, is part of an overall idea I had where platforms would respond to the hero’s actions. The Trusty Platform moves itself below you at the last second to catch you. If you run off of it though, it won’t be able to catch you in time. Check it out, see if you can cross the chasm, then let me know what you think.

If you have an idea, let me know and maybe I’ll do it! Or, sign up to get the Citrus Engine when it comes out on September 28th, and see what you can come up with!

Edit: Based on some user feedback, I moved the platform closer to the hero to begin with. You can view the old version for comparison here.

Citrus Engine Experiment #1: Jumping

Sunday, August 2nd, 2009

Jumping Experiment

The Jumping Experiment is the first in a series of side-scrolling experiments and micro-games using the Citrus Engine: my Flash side-scrolling game engine.

In this experiment, you can tweak many different aspects of the hero’s jumping ability. My goal is to get feedback on what values you feel like are ideal for optimal balance between control and realism. I realize that I could have also included running speed and skidding friction, but I didn’t want to overload you with sliders. Maybe running will come next.

The Rules of a Good Jump

Good jump programming in Flash games is actually very hard to come by, and it’s one of the things that is automatically programmed into the Citrus Engine, so all the developer has to do is tweak the jump properties to their liking. A good platforming game follows certain rules about jumping:

No kangarooing: Poorly programmed side-scrollers have a common bug that I call “kangarooing”, which makes you continuously jump as long as you’re holding the jump button. It produces a kangaroo-like effect that causes you to immediately jump as soon as you hit the ground. Well programmed games (such as those on consoles) will not allow you to jump repeatedly while holding down the jump button.

Variable jump heights: A well programmed platformer will allow the hero to jump higher while the user is holding down the jump button (to a limit!). A quick press of the jump button will execute a short jump, while holding down the jump button will execute a high jump. Most flash side-scrolling games only allow the hero to jump the same height no matter how long the user presses the jump button. This results in a lack of control.

Smooth landing: When programming with physics engines, developers have a tendency to want to make their hero “bounce” a little bit when they land on a platform because this feature (called restitution) is included in most physics engines. This practice is distracting and makes for poor control. In addition, it is not realistic as we humans don’t bounce after landing a jump. Springiness should be left to springs and bouncy balls (or anything else that actually bounces in real life).

What Do Other Games Do?

When building a platformer, it’s good to do a lot of “research” (that is, playing a lot of video games!) so that you get a feeling for what control style that you’re looking for. Many profesionally-made side-scrollers (such as Mario) have very different physics, and each game is finely tuned to properly match the design of the game. I’ve picked out a few that I felt were worthy of commenting on.

Mario: Mario sets the standard for platforming physics, although I would argue that these games are on the looser, quicker (and tougher) end of the spectrum. Mario jump high and falls fast. He also skids a lot and has two run speeds. To get some physics like mario games, increase the jump height and gravity, and set the floatiness somewhere in the low-middle.

Braid: The first time I jumped in Braid, I felt like I was tethered to the ground. The physics in braid are unique in that you can’t jump very high considering the heavy platforming nature of the game. However, after a few levels, you get used to the small jumps. The designers make up for the short jumps by using ladders, and consequently, they are able to get more layers of height in a single screen without needing to scroll vertically. This works really well for them as the complicated puzzles require the gamer to step back and look at the level as a whole.

Fancy Pants Adventures: I bring this game up because it is the side-scroller with the highest quality on the Flash platform.  The animations are smooth and the controls feel polished. The physics are a bit floatier than that of Mario, and Fancy Pants Man slides and skids a bit more as well. If you’re looking for a good Flash standard for jumping, check this game out.

What other games might you pull inspiration from for their jumping mechanics?

ABC Launches Game Using Citrus Engine

Wednesday, March 4th, 2009

The Australian Broadcasting Corporation has completed a fun game using the Citrus Engine at Lawrence Leung’s Choose Your Own Adventure site. There is a lot of content on the site, so in order to see the Citrus Engine game, click on “Find Love” and then click “Love is a game”. It’s a fun, quick playthough, so give it a try!

Glen McNab, the game’s developer said: “The CITRUS engine was a delight to use. It provided everything we needed to create and skin our platform game exactly the way we wanted it. Creating new levels was a breeze with the level editor and the API was intuitive and easy to extend.”

The Citrus Engine is currently closed to beta testers until beta 2. It will re-open in the future, even bigger and better. Subscribe to the blog to find out when you can download it!,

Great Art Resources for Citrus Engine

Wednesday, February 18th, 2009

The forum is alive and well with some great comments, questions, and even some concept art and 3D graphics tips. I want to thank those who have helped others answer questions in the new forum. The Citrus Engine has beeb getting a great response. I have seen lots of personal work come through, some of it very exciting. Because of the increase in inquiries, it makes it difficult to get to everyone’s questions and I (of course) must prioritize the paid customers first.

If you are a new Citrus Engine user and you haven’t signed up for the Forum, please make sure and post your questions in there. I usually get to them once per day, and you may even get a response from another community member.

Thanks again for all those who have helped Beta test this first release. There are some great things coming in the near future, so check back often for updates.