Monday, August 29, 2011

Z4R - The following weeks!

'Dames and 'gents, take off your sweatshirts and relax. It's time for me to fill you in on what's been goin' down these past few weeks.

Following the first few weeks of development, I've gotten a LOT done. Frankly, there isn't much to play, so it's arguable that I haven't 'done anything'. But! On the inside, there are some nice, finely tuned gears that are ready to handle my game.

I've yet to do any true benchmarking, but I believe my game can push about 1000 stretched images and still retain 60 fps. This is great, because my game will probably never exceed more than 50 or 100 images on screen at once.

I added two enemies, a simple drone which flies through the screen(traditional cannon fodder!) and then a sweeping enemy which will sweep through and fire some bursts of bullets at you. It's all pretty simple for now, but it's a start! With that, of course, I've added bullets and damaging. Each enemy will have a unique weak spot which will net you extra points if you can nail it-- more on that later.

Behind the scenes, I made 5 new enemies'(including the sweeper and drone) graphics and design, but have yet to implement them. This engine for my game is written entirely by me(aside from gfx/sound which is done by cocos2d), so I have to add functionality on a need-by-need basis.

Lately I've been heavily considering changing up the art style to incorporate color. I'm not entirely sure how I'd like to do it, but some life definitely needs to be breathed in to this rather drab feeling shooter.

Oh yes, and, my summer vacation has finished and I've now returned to school. It's slowed things down a bit, needless to say.

Saturday, August 13, 2011

The Hunt

I made a game for the Twitter-centric No Text Game Jam, somewhat hosted by Shelby Smith. You make a game using the "no text" theme in under 8 hours.

It took me about 3 and a half hours of work time.(lots of in-between breaks, heh)


In this game you play as a hunter in an African tribe. The God of the Hunt has offered you his help, but he can't communicate with you directly! He draws cave paintings to try to help you figure out what button to press to kill your prey. Be careful though, some of your prey may be hostile! One wrong move and you may never seen your tribesmen again.

Since there's no text, I don't need to tell you this story is never directly told in-game.

You can download the game now, right here.

Smoothies, Smartphones, and Serenity

Hello, welcome to the "mobile" era of computing. I'm currently chilling on the beaches of Waikiki, sipping a delicious fruit smoothie, and writing a blog post on my iPhone about my enthusiasm for the direction computers are going in.

With a smartphone, you're not tied to a desk. Hell, I'm at a fancy beach writing this post. I can go anywhere and take care of my business. I don't have to worry about my battery, I know it'll last me all day. I can use it while strolling down the main street, because it's so easy to handle. When sunset comes around, I'll stop for a moment to get that perfect picture of the pacific dusk, post it on my Twitter, and be on my merry way. Later that night I'll have a laugh with my friends, reading the silly comments they posted about my photo. Tomorrow I might go on a jog down the beach while enjoying some tunes streamed from Pandora. It's a much needed jog, too. I have to make up for those years and years of me spending 8 to 12 hours on a computer, you know! But hey, I don't fret. I can be anywhere, and do anything.

Yes, this is the life!

These devices are totally the future. I love them, and that's why I want to involve myself with them. These amazing little pocket devices are immensely powerful-- they give us, human beings, power. No longer are you tied to that desk. Walk free, as I do, enjoying both the real world and it's cyberspace in perfect harmony. It's just great being able to do any of your computing, or gaming, anywhere and everywhere.

That's the beauty of where computers are going. "mobile" isn't simply referring to the device. It's referring to us.

Now excuse me, I'm about to go inland for a traditional Luau. Aloha, brother!

Thursday, August 11, 2011

Mini Project: “Z4R”

Today I’d like to talk about the iPhone shmup I’m making and some ideas I have for it. I consider this a mini-project, but it very well may take several months to finish.image

A screenshot of the current testing version. Looks spiffy, huh? Click for full res


I’ve got a couple core ideas tied to this game. The main gameplay mechanic is supposed to revolve around ammo conservation, and precise aiming. The challenge & reward mechanics will all be based around making a precise shot. One motive of this idea is to challenge the idea that touch screens don’t make well for precise input—I believe I can make a game where it’s entirely viable to be precise.

The second reason comes from me noticing that most shmups throw around bullets without any kind of retention. It’s practically a staple of the genre to fire impractical amount of ammunition towards your enemies.(how do you even hold that much on your ship?!) Not only that, but players pretty much just hold down the fire button or turn on “auto fire” and simply spray bullets randomly. I think there is an untapped potential, so to speak, in bringing in elements of precision aiming into the genre.

As a segue, one of the few virtues I see in the FPS genre is that aiming and ammo conservation play a big role. It’s actually important(usually)—and the player has to be smart about how they handle their lead. Inversely, imagine a FPS which allowed all players unlimited ammunition and where they’d never have to reload. It would be much more chaotic and mindless, surely. So in some ways, this game is a amalgamation of what I like about the “standards” of the shmup and FPS genres.


For now, the name is pretty much temporary. It’s based on my old series of Z4R shmups. I might keep it, who knows! I made the logo just for fun

Breaking away from the segue, the second core idea of this game is the visual art style. I want to challenge myself to create a beautiful game using black and white(or more accurately said, grayscale) and chunky pixels. I don’t expect this to be an easy task, but I think it’ll be a huge payoff in the end if I can pull it off.

Getting a little more technical, for the aiming I’ve minimalized the control scheme to single axis movement. The player can only move left and right, like in Space Invaders and Galaga. It’s easier for the player to initially control the game this way, but more importantly it puts a greater emphasis on the aiming and precision mechanics which I strive for. If the player could more on the Y axis too(vertically), then they would be able to move within an inch of their enemy and blast them, removing the need for thoughtful aiming. It’s these reasons which led me to this.

“I believe that ideas for a game design should not be polished until it’s actually running. What I do is play while creating, feel and think about what would make me like this game more. The problem with this method is that you can’t effectively create planning documents.” – Daisuke “Pixel” Amaya

As for how exactly I’m executing this game’s precision aiming emphasis, I’ve yet to completely decide. I’ve got a few ideas in mind, and I’m already starting to try them out. Whichever I think works the best will be what is present in the final game, naturally. I would normally try to plan this stuff out completely ahead of time, but thanks to my experiences from Pocket Protector and a quote from Daisuke “Pixel” Amaya(quoted above), I think I’d rather take that approach this time.

Friday, August 5, 2011

Drowning In Hot Cocoa

Have you ever read a super-duper-long Wikipedia page?

Well, imagine that five times over in full pages of text. Yes indeed, that's how much I've read about Cocoa(the framework Mac/iOS is built on) in the past two days.

Objective-C is an incredibly difficult programming language for me to work with. While I acknowledge it's just a different approach to many of the same concepts I'm used to in other languages, it does feel quite bloated. Thankfully, you're actually able to use C and C++ seamlessly with Objective-C, so that's been a life-saver for me. Cocoa itself though, I've found to be a pleasantly well thought-out library and it's been great working with it so far.

On another less chocolaty note, Flash runs *ahem*, not so well on the iPhone. A blank frame of Flashpunk drawing one orange square topped off at 30 frames per second. I understand that Flashpunk hasn't exactly been optimized for efficiency, but I don't see any great way of getting around this-- Flash is just slow on iOS. It might work well enough for UI apps and slow-paced games, but not for something fast-paced like Pocket Protector.

So with that, I now know I'll have to stick to native development. The possibility of Pocket Protector getting an iOS port has lessened, but is not completely gone. It was initially intended as a mobile game, so I might still carry out that intention. That said, it probably wouldn't be for a while. Don't get your hopes up, but if I were to do that I'd also add more content and refine the game quite a bit.

For native development I've relegated my attention to two main libraries:
- Polycode
- Cocos2D

Polycode is a cross-platform development library. The creator, Ivan Safrin, is actively working on(and for what I know, almost done with) an iOS port. Polycode is a pleasure to work with, and if you're into cross-platform libraries you'll love it.

Cocos2D is Cocoa-centric, so I believe it only works on Mac and iOS. It's another excellent library, but doesn't have quite as much PC support as I'd like.(which Polycode does have.) So far it's been a nice, simplistic library. I wouldn't say it's anything to write home about, per se, but it's much better than writing pure OpenGL ES code.

Once Polycode for iOS is in a usable state, I'm quite confident that I'll be using that to develop my games. The prospect of developing on Mac/Windows/Linux/iOS all with the same code base is very valuable to me. In the meantime, I don't see myself doing cross-development.(making the game/app for multiple systems as the same time with different tools/languages)

I don't have much to show for my progress on iOS yet, since it's just some images moving and stretching around the screen. Once I get something cool going, I'll post up some screenshots or a video.

Tuesday, August 2, 2011

New Ventures

Today I graciously received a MacBook Pro, and that means it's time forrrrr.... Making iOS games! I'm right about to pay that developer fee, then I'll be up and ready to get going.(opting to pay the dev fee now because on-device testing is valuable to me)

Immediate plans are to get some of my flash projects up and running on iOS. Later I'll be more focused on native games, I can imagine. I'd like to make a UI app, but I'm currently not sure what I'd make.

There's a very strong possibility that Pocket Protector will get a revamp and be ported to iOS. Very strong.

Monday, August 1, 2011

Rant to Nintendo

Let me put it this way, Nintendo

If you refuse to give us free games, or those on price-par with those on other mobile platforms, then at least deliver on your promise of "premium". If you want to sell me a $10 game, that's fine. But if I can get a better game, in terms of both play and production value, on my iPhone for $1, then you're not giving me premium content. You're giving me overpriced piles of horse shit, which I won't buy. Premium means it's the best-- of the highest quality. So if you're going to charge me a premium price, you better damn well give me premium content. You no longer have my trust as making the best games, let me just put it that way. If you want me to buy your stuff, first help me trust you again. Give me great games at great deals. Prove to me that I didn't waste $250 on a 3DS. Prove to me that I made a good decision buying your console and not Sony's. This is the last straw Nintendo-- if you can't deliver what I, as a gamer, want, then I'll simply leave you behind. I'm open-minded, and love games of all varieties. But a shitty game is a shitty game. Give me the premium content which you keep promising. Give me a reason to put my 3DS in my bag every morning.

Thank you.