Jump to content
  • Advertisement
  • entries
  • comments
  • views

About this blog

Still making games...

Entries in this blog


Status update...

Bennu is currently at 75% of the Peer Review process. This doesn't exclude the possibility of someone finding a bug that resets the whole process, but still, it's closer.

In the meantime, Bennu was featured in the IndieGames.com Weblog and in Co-Optimus.




Quick update...

EDIT: Here's a video of the latest build.

Just a quick update, Attack of the 50ft Verbose Dinosaur is back in playtest, here are the changes since the last version:

Bugs fixed:
- Chopper collided with bubbles that weren't shot.
- Credits only showed once.
- Stack overflow when many bubbles were attached to the same building.
- Sometimes the fireball effect kept appearing on the dinosaur's head.
- The chopper appeared immediately if you paused the game for some time.

- Vowels no longer include W and Y (only a,e,i,o,u)
- Letters not shown when level is paused to avoid cheating
- Chopper moves slower in the easier modes.
- Easy time limit increased again due to popular demand.
- Font size increased when time is running out.
- Font colors changed in credits for improved readability.
- Contrast increased for the letters on the dinosaur's back.
- More information about letter power added to the tutorial.
- If the helicopter comes when you destroy a building, it crashes but returns almost immediately with the same bonus.
- Formed words are no longer desselected when the chopper is hit with a bubble.
- Parallax scrolling on the background.

If you are an Xna Creators Club Member and want to give it a try, click here.




Bennu on the 360...

I had a plan that if Bennu wasn't selected for the PAX 10, which it wasn't, I would participate in this year's DreamBuildPlay contest. But this year's DreamBuildPlay contest is for the 360 only, so I figured that since Braid was out too, I'd buy a 360. :) And by the way, Braid is totally worth it.

I was curious about how much effort it would take to port the game to the 360. The steps I went through may help someone in the same situation (some of them are explained in more detail in the creator's club web site):

1. Used XNA Studio's option to create a copy of each project for the 360, which gave me new compiler errors, as expected. This works well, the projects share files but you have to add new files to each project separately.

2. Added to each 360 project the 360-specific xna framework dlls (included in the XNA directory in Program Files).

4. Replaced references to libraries not supported on the 360. I was using the Application class in the System.Windows.Forms library to change the current system culture so the decimal separator employed on data files wouldn't get messed up on other systems. It was replaced by Double/Integer/whatever.Parse with an invariant culture. Timers also aren't supported, so I did a basic Timer class of my own.

3. Added a XBOX360 flag to each 360 project so I could use conditional compiling instructions for the platform. With this flag I was able to keep the mouse/keyboard code in the PC generated code but not on 360 code.

5. Removed the encoding specification from the XML files I load game data from as XNA on the 360 doesn't support encoding specification. Luckily I wasn't counting on a specific encoding.

6. Purchased a Creator's Club gold membership and downloaded XNA Game Connect from the XBOX live games list. I'm not sure you need the gold membership to do this, but I want to check out other games anyway.

7. Added the 360 console to XNA Game Studio on the pc, just needed to input an identification code so it knows which console to upload the game to (the game is uploaded through the internet without any direct connection needed between the pc and the console).

8. Deployed the game to the 360. Each time you build the game it checks which files were altered and uploads them, which is pretty neat.

By then the game was running on the 360. Which was freaking cool.

On the positive side, I was surprised I had to alter so little of the game code, specially the file input/output code. Also, the game looked good on a small tv, the colors where much brighter than on my LCD monitor.

On the negative side, I'm having performance issues on the 360. This is a common issue, reported my many developers. This is where I am now: Every 5-10 seconds, the game freezes for a second or so. I think it's the garbage collector, but I'm still running tests. Here's a collection of resources I've gathered on this subject:

Managed Code Performance on Xbox 360 for XNA: Part 1 - Intro and CPU
The cost of value types in .NET Compact Framework
XNA Framework Remote Performance Monitor for Xbox 360
Understanding XNA Framework Performance
Twin paths to garbage collector nirvana
Foreach, Garbage, and the CLR Profiler





Attack of the 50ft Dinosaur is now in playtest. If you are an Xna Creators Club member and you have nothing better to do, give it a try here.

Here's the game cover, I'm not sure if it's the final one:

EDIT - The second image should be the final one, my brother changed it to make the dinosaur look even more deranged.




Before and after

So my middle brother finished doing the new backgrounds and also polished the blocks and Bennu's chain:

And the main menu. And the buttons.

All that stuff you hear about how you should get other people to play your game worked for me, but it's also nice to have an outsider's perspective on your art. :) Like the gameplay, when you've been working on it for too long, you stop noticing the flaws.

Click here for a video of the new stuff. It's long again.




Super Ninja Kung-Fu Puzzle Extra Pow Pow

Me and my brother started working this weekend on our next game after Bennu:

Super Ninja Kung-Fu Puzzle Extra Pow Pow

After Bennu, we're working on a game with many similarities but much more accessible. The main ninja character will be animated in the same way as the frog boss in Bennu (sort of a cardboard puppet). My brother drew the main character parts and I'm currently working on a character editor to position the parts, create joints to bind them together and set the limits of those joints. Video here.

We want to participate in DreamBuildPlay '09. The submission date is the 6th of August, less than a month from now. Will we make it? Stay tuned.

P.S.: The name of the journal changed to "Once a Bird". That's our group name, since there isn't a company to speak of. It's just me (main concept/programming/programmer art), my middle brother (decent art / suggestions), my cousin (music) and my older brother (general math and physics help / other suggestions).




The Papyrus Swamps

Click here for a video of a level on Bennu's second area, "The Papyrus Swamps".

To create the trees in the background (and the papyrus) I used the classes that were created for the game intro. Each tree is composed of a trunk, lianas and branches.

When a tree is generated, I randomly pick 3 to 6 of the 6 maximum branches and rotate them
around the point where they're attached to the trunk. I also scale and rotate the whole tree randomly.

I submitted Bennu for the PAX 10. I'm not expecting anything to come out of this, because there are bigger teams working on their games full-time and I'm just doing Bennu after work - I'm a programmer for a stock-broker.

The demo I sent featured the intro, the main menu and 7 levels, 3 from the "Lost Temple of Abu Simbel" area and 4 from "The Papyrus Swamps".

I expect Bennu to be ready this year if everything goes right.




Another game...

...Super Ninja Kung-Fu Extra Pow Pow was put on hold because I had an idea for a game that would be quick to make. For me, "quick" means 2-3 months. :)

Here's the first screenie and a poem, that doesn't even rhyme, to describe it:

Paved roads, walkways and bricks
The city sleeps in a moonlit bed
Untroubled by the lamp posts and HEY!
Is that a dinosaur on the way?




April came, April went...

...And Bennu isn't ready yet. The guys over at XNA Creators Club discovered a ton of bugs and gave a lot of useful suggestions, most of which I'm done implementing. I hope Bennu is ready this month... In the meantime, here's the debut trailer at gametrailers.com.




On the swamp

A-aight. Been working on Bennu on the free time I have between work and Call of Duty 2. :)

I wanted to finish a single level before anything else. The setting for the level is a swamp:

I've also been building a sort of integrated level editor, where I can play and drag, scale and rotate objects around at the same time. The gun in the previous screenshot was made using it. I can save the level as is at any time to a XML file.

The first prototype I made of Bennu had him changing color randomly. Now for Bennu to change color he has to touch bonuses spread across the level, in this case mushrooms. Click here to see a video of the latest gameplay. The music was just what I was listening at the time and is not part of the game. :)




Another trailer....

...So DreamBuildPlay as ended and since the deadline was postponed two days I did an extended trailer:

Bennu Trailer 2

So far the contest has 250 entries in the gallery without the last-time entries, so it should reach 300!

EDIT - Click here for a higher resolution AVI.





I'm doing an animated frog for Bennu, so I started by doing the frog sprite first.
Below are the steps the sprite went through in its creation.

1. I searched the net for reference pictures and drawings.

2. Paths were used to create the main shapes of the frog...

3. ...and the animated parts were left on separate layers so they can be used as separate images.

(These separate images will be rotated and translated to animate the frog)

4. Shadows and highlights were used to make the frog more 3-D (the amulet on the top-right of the reference images was the main source for this)

And it's (mostly) done. :)





Bennu, now with more Bennu. I still have a few bugs to iron out, but it looks like fun. ^^ Video here.

EDIT - The only reason the Bennus don't move at the same time is because I'm playing alone and switching controllers.




Easy now...

I sent Bennu to my older brother so he could test it and he found it too difficult, so I'm adding an easier difficulty setting. He also suggested a view of the level before it begins would be useful to the player, so he knows the level boundaries. Video here.

In the easier difficulty setting, when Bennu falls in the water, instead of dying, he is grabbed by a hippo that throws him back up. Here's the hippo image:




Breaking the chain - more videos and screenshots

In Bennu, everytime you create a ball chain, balls are created in regular intervals from the beak of the Bennu to the first object found in the direction the beak is pointing to. If an object is found the balls are chained together, if no object is found the points are still created but fall to the ground.

Previously, everytime you created a new chain the balls that belonged to the previous chain were removed from the scene and placed in a "ball cache" in order to prevent performance issues. I changed that in order for the balls to remain on the scene until they were needed for a new chain. The result can be seen in this video.

Also I did a new level that explores something I did some months ago: in later worlds everytime the Bennu touches a block of the wrong color (a different color from the Bennu's current color) a new block is spawned. In this level the walls are slippery so the Bennu can't grab to them and he dies if he falls on the water. See it in action.




More FX

I've changed the blocks' appearance and added some particles effects to give the idea the Bennu is burning the blocks away. Video here.




Intro Sequence

I've been working on the intro sequence, which explains how and why you end up controlling the head of a bird attached to sphere-shaped irons. :) Because XNA has no built-in API to handle video or flash content, I ended up doing it with the game engine.

Click here for a video.





Hello there. Since my last entry I finished these items:

- Points system
- Options screen
- Pause menu
- 360 Gamepad support

Click here for a video. It's longer than usual but shows pretty much everything that's finished (except for the intro sequence).

- Tutorial
- Levels, lots more
- End sequence
- between-world sequences
- Credits




First level!

Welcome to the Bennu journal.

Right now I've finished the first prototype of the game, which has programmer art *shudders* and lacks many of the features I hope to implement.

Bennu is a puzzle game that can be described as puzzle-bobble meets spiderman meets some-cool-stuff-not-done-yet. Basically you control Bennu, an old bird that can't fly for long and so goes around each level using his tail to grab to whatever he can and swing himself around, smashing bricks with his head (the head and the bricks must have the same color), until there are no bricks left. Currently his color changes every five seconds but in the future the player will have to touch bonuses with the Bennu to change color.

Right now the blocks are generated randomly, but in the final game each level will have a hand-made layout. Click here to see a movie of the game.

The game is being developed using XNA and the Farseer 2D Physics Engine, which (so far) I highly recommend. :)




Frog continued...

After finishing the frog sprites, I used the Farseer Physics Engine to include the frog in the game.
In order to make the frog feel real each body part was added as a separate entity and revolute joints were employed to connect the body parts to each other in the positions shown below:

A revolute joint connects two bodies but doesn't constrain their relative angles, which means that after adding them the frog's legs and tongue rotated like the frog had every bone in his body broken. However Farseer also provides angle limit joints, that constrain the angle between two entities. These limits can be changed after the simulation has started.

Click here for a movie showing the leaping frog. Initially the upper and lower limits of the angle joints are set to zero, so the frog is completely rigid. Each time I press a key these limits are set to something close of a real frog and an upwards force is applied to the frog body, thus making it look like a leap. Another key sets the joint limits to the initial values. It's all Farseer's work, really.

Next step is controlling the frog's leap so he'll jump from platform to platform.




Bennu trailer - DreamBuildPlay

The DreamBuildPlay deadline is today. I spent the last month and a half increasing the game performance on the 360. One of the requirements for submitting a game was a video of it, which you can check here.

The trailer is poorly edited, but I think that made it (unintentionally) funnier. So, anyone else submitted a game?




Particle effects


Since the last update, I worked mainly on the hud and on particle effects for color change and for the eclipse in the hud (when it ends, the player has ran out of time to complete the current level - right now the level never ends, but you get the idea). Here's a video of the new stuff.



  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!