Archive for the ‘Projects’ Category

Merchant Commander: an online game in progress

Friday, May 21st, 2010

Here’s a peek into my current game (Spirits of Gaia is on hold).

I put together this title screen from art I commissioned for an old project that never got started, but the game world is similar, so I used it here. I designed the logo. Probably a keeper.

Merchant Commander login/title screen

I’m using RedDwarf (Java) for the server and Flex 3 for the client.

The game is sort of playable, which is such a nice feeling. I haven’t had a playable project to work on for at least two years. Must… finish… or… die…!

I’ll pester anyone who will listen/read with more details later. :)

A quiet but official announcement

Friday, July 17th, 2009

I’m starting on a new game project! There’s a minimal site and blog for it. Please have a look.

Spirits of Gaia: an online multiplayer world.

I am building the server side code on Project Darkstar. I’ve already got a pretty nice hunk of code constructed, but there’s a long way to go still. I haven’t started on the client at all, but it will be built on the PushButton Engine.

Better than SmartFox? Researching Project Darkstar Server.

Thursday, May 28th, 2009

I haven’t reached any conclusions yet, but I am really excited about Project Darkstar Server.

Project Darkstar is software infrastructure that aims to simplify the development and operation of massively scalable online games, virtual worlds, and social networking applications. Originally created by Sun Microsystems, it is today advanced as an open source project through the Project Darkstar Community.

I knew about it a few years ago, but it didn’t seem complete enough to bother with. But then I saw that CampFu had launched using it on their games backend, and that pushed me over the fence into wanting to investigate because it has to be pretty robust and usable to support a commercial product like that.

campfu I like SmartFox Server just fine. I think for my needs (indie games on small to medium scale), it would work really well. But two big motivations for looking at Darkstar are that 1) Darkstar seems like it provides more MMO functionality from the start, and 2) Darkstar is free and open source.

I had written a hefty chunk of server code for SmartFox already, and had plans for more. That’s really the product’s weakness for doing something with a persistent world type experience. SmartFox is very bare bones, but that’s not a bad thing if you go in knowing it’s not MMO-in-a-box. Well, I don’t think Darkstar is, either, but it appears to have more than SmartFox that is specifically for virtual worlds. So that is what really excites me about it: maybe I can get to building game logic sooner!

I’ve only done a day of reading about it, and I’ve downloaded and browsed through the 0.9.9 distribution. So far it looks really cool, and I like that the developers want to make it seem like a single-threaded program, because I’m not looking forward to debugging thread race conditions and all that crap. Another big plus for Darkstar, in my book.

If things pan out, I am going to be releasing a multiplayer Flash game. Some folks were balking at the idea of using Unity for Lila Dreams, but I still think that’s the way I’m going for that project. But it doesn’t mean I’m done with Flash, because I have a closet full of game concepts that I’d love to be able to create eventually. PushButton Engine is still very much on my radar. And, as I’ve said elsewhere, I choose the technology based on the needs and goals of a project and its parameters. I’m not a fanboi of any particular technology, platform, programming language, etc. I just use what makes the most sense on a case by case basis.

Maybe Darkstar will become my server technology of choice. I need more time to dig deeper and find out what it’s really like to use it on something that is non-trivial. Does it really provide a lot of virtual world infrastructure as compared to SmartFox? Is it viable for indies? I guess you can find the answers when I post again on this topic in the near future! :)

A Unity game work-in-progress

Wednesday, April 29th, 2009

It’s nothing mind blowing, granted, but it’s turning out kind of cool. If you have a lot of imagination. :) Right now it looks like dog pooh. But it’s kind of fun for what it is.

The game is going to be very simple, very shallow, intentionally, of course. It’s one of my “learning” projects to get to grips with 3d modeling, animation, texturing, and of course Unity itself. I’m finding that the art is requiring a lot more time than the code, but that’s to be expected since I’ve been coding for decades and only just started 3d art.

creatrix-unity3d-wip

I’ll hopefully post a few more progress shots before I release it. Hope you’ll visit and say hi!

Forever – a new action game by Creatrix Games!

Saturday, January 3rd, 2009

Yay!

So here’s what I’ve been slaving away on, trying to talk about it without talking about it. Well, the cat’s outta the bag.

Forever

I made this game to enter into the MochiAds Walk of Fame contest. It has a moderate amount of polish, but the level design was rushed and so is a lot weaker than I’d like (but the boss fight definitely is fun). Well, I learned a lot in the process, at least, even if I don’t win anything.

UPDATE 2: It seems the MochiCrypt wrapper was causing some problems with my Flex app, but all seems well now. Please let me know if you have any issues starting the game after the ad shows.

UPDATE: We’ve had a few reports of the game not working beyond the ad screen. If you get this, please let me know. I’d like to get an idea of how widespread this is and what common factors might contribute to it. Please mention your OS and web browser. Thanks!

The Pain, the Agony, the Fun

This has possibly been one of the hardest months of my life. I’ve suffered and toiled and shunned my family, the holidays, and my personal hygiene to get this game out the door. In a month. That still flabbergasts me. How did I make this in a single month?! I don’t even know. But it’s a month that I can’t really remember much about. Yeah, I didn’t sleep or eat very often.

Of course, a large chunk of the core engine was already completed. Things like the component system, game states, rendering pipeline, and other nuts and bolts. But there was no editor at all, and there was no game logic at all, no art, no levels, no plan beyond an old design doc that seems like it can be made into a nice little trilogy of games.

What we have so far is not the best it could be. I mean, we cranked out these levels in a matter of a few days, literally. But we’ll be updating it over time, building, and eventually it’s going to be pretty dang cool. And then we’ll make another one! :)

The Team

I recruited my very talented wife to help me build levels, and without her help I would never have hit the deadline or had this version out by now. *bows in gratitude and wonderment* Jamie rules!!! No, wait.

Jamie rules!

My thanks is endless to her. For most levels, I laid out the major elements, then she went along and tirelessly and always without complaining added details and her own creative touches. And a few of the levels coming up are her creations entirely. She quickly learned to use the editor fluently, despite its clunky nature. We’ve had a good time working on it together.

And of course, how could we leave out the man behind the visuals? Greg is really excessively good at this kind of art, so the game looks good even though he cranked out the stuff in maybe two days. Three cheers for Greg and his pixels of beauty!!!

The Future

Now that my blood pressure is starting to come back to normal, I can relax a little (catch up on Heroes, play someone else’s games, actually talk to my kids!) and spend more time and thought on the level progression and narrative. There is a story there, but I didn’t have any time to convey it, really. Updates will fix that, though.

I really, really like this kind of development. Make a little game, release, update, repeat. Now if I can earn some money on this, that would be icing on the cake.

I’ll post more later, but for now I have to sleep for about 14 hours straight in order to catch up. Ta-ta!

Deadline crunch time – and one screenshot before the release.

Saturday, December 27th, 2008

I hope to not have many deadlines that are this crushing, but it sure as heck is making me productive!

I’m working at a breakneck pace: 12-18 hours per day, and I have to thank my wonderful wife and kids for their unconditional support. But–oh my goodness–I’ve built a full editor, the second half of my alpha game engine, and all kinds of game logic in just one month. It sucks, but the pain is temporary, and I’ve got a nice chunk of code to start with for the next project and beyond.

Here’s another ugly screenshot using placeholder art stolen from freebies out there and a few things from my own archives that Greg has done. So, disclaimer: This isn’t what the actual game will look like at all. It’ll look a lot better. You can find out in about 3 or 4 days. ;)

prerelease-gilgamesh

That’s me getting blown to smithereens.

Goblin now comes with entities included

Wednesday, December 17th, 2008

Here’s a quick post to show the entity panel of my game editor (click for full size version).

Editor entity panel

So on the left is the map view, where you see a really, really hiddeous jumble of a test map. The interesting thing there is the little heart with lips (a placeholder icon I borrowed from a casual game I made a couple years ago). That’s the entity icon, which in this case is a player spawner. That is where the player will start in this map. Yellow means that’s the selected entity, and the white square is where the cursor is (though the mouse pointer isn’t visible since pressing Print Screen doesn’t capture it).

On the right side, things are a little more fun. Those entity properties you see are generated dynamically. This is a really cool thing that I have wanted to try for a long time. The entity’s components define what is exposed and editable in the editor. The editor then builds the UI based on that. So I don’t have to add code to support editing new components; I just add the property definitions to the component, and the rest is magic. I’m hoping this will save me time in the long run. So far? It rocks. :)

In case it didn’t slap you in the face, the editor is an AIR application, which means I get to do all kinds of file system stuff like load and save maps and assets without security restrictions.

(Maybe in the next post I will finally show a map that isn’t just random lines.)

Wandering around nowhere (screenshots)

Thursday, December 11th, 2008

Well, it’s not much. It’s certainly not representative of the real thing. But it shows some progress. Box2d handles collisions, game entities are defined in XML as a series of component definitions, and soon there will be much more interactivity in this little game world.

pre-alpha-screenshot

(Hrmm. WordPress seems to shrink the images even when I tell it not to! The one I uploaded is slightly bigger and less fuzzy than this one. Do a “right-click->view image” and you’ll see the slightly larger one. The engine version is wrong. It’s more like 0.3.0 now, but still Alpha.)

The red-tinted parts show the “entity” layer where all the fun stuff happens. The other layer is “above” the entities and so they can appear to be under it. No technical limits on the number of layers, and each one doesn’t add much to the rendering workload since the engine only renders the strips that appear when a tile-boundary is crossed (ie, vertical or horizontal strips on the edges of the screen).

The tiles are something I got from RPG Maker, I think. The avatar is by Greg (Lila Dreams’ visual designer and my long-time collaborator).

Here’s the editor, first showing tile editing mode.

Tile edit mode

And here is map “attribute” mode where you define what tiles are blocked or not. Eventually this will be expanded and refined so that you can create Box2d polygon shapes right in the map, but that’s a long way off. For this game project, the needs are simple, so this does fine.

I am keeping mum as to the nature of the game being made, but expect to see more of it as things progress this busy month. :)

Goblin game editor pre-alpha: second screenshot

Wednesday, December 3rd, 2008

I’m probably boring the world here, but I figured I’d follow up on the last post to show some progress on my editor. It’s still really ugly, and this isn’t anything more than a throwaway map scribble, but at least I can say that it’s running and I have conquered the Flex issues I ran into. So there. :)

(The magenta is transparent in the game engine.)

The editor also has undo. It’s hard to live without, so I implemented it now instead of later. It also saves maps as XML, which I will usually embed into the SWF, but doesn’t have to be there. The asset manager can handle either case, which makes life easier for test phases when you are changing the maps a lot.

I hope to get some “real” test maps put together and get right to testing things by this weekend. All depends on other demands on my time, of course.

Goblin game editor pre-alpha: first screeny

Tuesday, December 2nd, 2008

How about a little self indulgence? :) After the amount of hair I lost wrangling with Flex, I deserve it!

I admit it: this is butt ugly. It’s just plain old Flex. I didn’t add any styling at all. Who has time for that?! And the screenshot is tiny (better ones will be bigger, promise).

Anyway, what you see is the new map dialog, where you enter some parameters for your new map. To the right you see the edit bar, a tile set, etc. This is laid out like the Lila Dreams editor, but the code is only slightly based on stuff I did previously (handling user prefs, finding asset directory, etc). It won’t actually make a new map yet, but I just need to hook that up to the UI.

Let me summarize: five hours of trying to figure out why Flex didn’t like my custom components and associated .as files. Finally I just decided to inline all the code, to hell with keeping it separate. I have always thought Flex is very tedious to use. It’s a love/hate relationship. Maybe in seventeen thousand years, after I have used it a little bit, I will feel more on the love side. Today… not so much.

On the positive side, it is coming together pretty fast despite these kinds of frustrations. There’s a chance I can achieve my goal! More updates to come.

Addendum:
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=7142

*Screams*

Well, at least now I know that you can’t subclass Canvas and expect it to behave like when you subclass UIComponent if you are trying to add a child Sprite to it. What I mean is, if you create a custom component that subclasses Canvas, it will throw an exception when you try to addChild() a Sprite. But if you subclass UIComponent, it will let you addChild() a Sprite.

*Slaps self silly, then gets back to work*