I used a screen video capturing utility to make a gameplay video (with the iPhone simulator):
It's really just a run-through of the available tools to mess with the worms. The starfish predator also makes an appearance. I still need to work on the menus and create the help option.
Friday, June 12, 2009
Monday, June 8, 2009
Sound Approval, Pixel Formats, About Menu, and Loading Indicator
I've managed to get approval to use a few sounds from http://www.freesound.org/ in Wormies, which is awesome (thanks to Jan 'fresco' Ripper, Ben Hillyard, and 'junggle'). Still waiting on responses from two other sound creators. If I don't hear back, I'll have to record the sounds myself. I'm doing all this because the license for using sound files from Freesound is a bit odd with commercial products. It seems to be okay if I "sample, mash-up, or otherwise creatively transform" sounds, but not if I use them in their original state (unless I get permission from the creators). The wording is a bit ambiguous, so I'm taking the safe route.
I messed around a bit with pixel formats for my sprites. It's much more memory efficient (and a bit faster) to use 16-bit textures instead of 32-bit for sprites, but they tend to look bad with gradients and details. I ended up keeping 32-bit depth for everything but the game icons (such as food items, predator warning graphics, etc), which are generic enough to look about the same either way. Hopefully this will be a good reduction in memory use.
Since I'm trying to round things out nicely, I created an about menu option. It brings up a sprite (with pre-rendered text/graphics) with information about the author (me), sound attribution, image credits, and the cocos2d logo.
Finally, I added a nice loading icon using Apple's standard UIActivityIndicatorView (the awesome swirling wait cursor thing). I think this is a nice touch, since the CocosDenshion sound library added a bit of time to the loading (which was near-instantaneous before). Not bad for a day's work.
I messed around a bit with pixel formats for my sprites. It's much more memory efficient (and a bit faster) to use 16-bit textures instead of 32-bit for sprites, but they tend to look bad with gradients and details. I ended up keeping 32-bit depth for everything but the game icons (such as food items, predator warning graphics, etc), which are generic enough to look about the same either way. Hopefully this will be a good reduction in memory use.
Since I'm trying to round things out nicely, I created an about menu option. It brings up a sprite (with pre-rendered text/graphics) with information about the author (me), sound attribution, image credits, and the cocos2d logo.
Finally, I added a nice loading icon using Apple's standard UIActivityIndicatorView (the awesome swirling wait cursor thing). I think this is a nice touch, since the CocosDenshion sound library added a bit of time to the loading (which was near-instantaneous before). Not bad for a day's work.
Wednesday, June 3, 2009
Sound Ahoy
I finally managed to compile and integrate Steve Oldmeadow's great CocosDenshion sound library into Wormies, with some help from the man himself for getting around linker bugs. Right now it just plays a splashing sound whenever the screen is touched, but it's awesome to see it working. After adding some sounds and a bit of polish, I'll finally be able to release the game.
Friday, May 22, 2009
iPhone OS 3.0
I just tested Wormies on the iPhone OS 3.0 beta 5. Everything seems to work great, both on the simulator and my iPod Touch (2nd gen, 16 GB). Kudos to the cocos2d developers who released version 0.7.3 just for OS 3.0 compatibility. Aside from this, in the last week of development I have also implemented basic predators. It's pretty sweet... random sea creatures come and try to devour your worms. Right now, you can only run away from then and hope to survive. I need to make the option to attack, using the strength attribute of each worm. I also need to add some warning that they are approaching, as it kinda happens out of the blue right now. Screenshot:
Sunday, May 10, 2009
Some Changes
I implemented a few odd features this week. The radiation tool now works. While shortening each worm's lifespan, it randomly increases or decreases points in strength, speed, and charm (with a bias towards decreasing points). I also made the food tool. If worms get too hungry (currently set to half their lifetime), they'll start eating each other instead of mating. To prevent this, you need to feed them occasionally with this tool (or just kill them off quickly enough for the next generation to take over). It places a food item on the screen, which worms eventually swarm around and devour, reducing their hunger.
I also stopped an annoying bug that created zombie worms, unable to breed or be killed, just swimming around on their own out of the game's control. It seemed to be an issue with scheduling a selector call with CallFuncND before completion of a previous selector call. It would delete worms from the storage array, but the sprite would still remain in memory (and keep the random movement cycle going). Fixed it by stopping all worm actions before calling a new function (kind of an ugly fix, but it works).
Now I will be working on:
I also stopped an annoying bug that created zombie worms, unable to breed or be killed, just swimming around on their own out of the game's control. It seemed to be an issue with scheduling a selector call with CallFuncND before completion of a previous selector call. It would delete worms from the storage array, but the sprite would still remain in memory (and keep the random movement cycle going). Fixed it by stopping all worm actions before calling a new function (kind of an ugly fix, but it works).
Now I will be working on:
- Adding predators which worms can attack or flee from
- Improving the starting menu
- Preventing the heart tool from being used with the population completely full (this can kill off all worms since breeding is stopped)
- Making a few more sprites for various icons and interactions
- Implement a sound system (I still need to decide on a good library for this) and come up with sound effects
- Test the game with iPhone OS 3.0
Thursday, April 30, 2009
Movement on Touch and Status Bar Removal
I implemented most of the finger/touch tool that moves worms to the tapped location. It starts with a short random delay on each worm before moving to the destination point within a random tolerance using the usual swimming circular motion. The overall effect is pretty realistic, though it gets slightly jumpy with the max number of worms on screen. I also removed the menu bar using the Info.plist file, which happens much faster than removing it through code (which I was doing before).
Tuesday, April 28, 2009
Fancy Backgrounds and Mating Probabilities
Through the magic of public domain images, I've found a few good background photos for the game (better than my horrible programmer art). It seems like a small change, but it makes the game look much nicer. I've also been improving the mating probability calculations. Each worm has a mating delay, set after birth or mating, that needs to count down to zero before another mating chance is available. Tuning the probability of mating to be balanced for small populations of ugly worms and large populations of charming worms is difficult. Here is a screenshot with a fancy background image (credit: National Oceanic and Atmospheric Administration/Department of Commerce):
Subscribe to:
Posts (Atom)