Competition: Single Screen RPG!

3 July 2008

CODEAR: Single Screen RPG

We launched a new contest at the argentine game developers association (ADVA) for indie and hobbist game developers.

The rules:

  • It must run on a single screen: you can’t scroll, you can’t zoom, you can’t have levels in a conceptual sense. From start to end, everything must go on in the same place.
  • It must have at least some RPG element

The deadline is August 15, and anybody from anywhere can compete.

Some people asked me why is it genre-oriented, which restricts the games a bit. The answer is: because so many people have the fantasy of making an RPG, I wanted to give them a chance to make it happen on a small scale.

You can see the rules in spanish and english.

Java vs Flash vs Python

24 June 2008

This is a programming post. Those not interested in programming can quit now.

I’m evaluating switching my default development platform. So far, I’ve been doing all of my games in Java as applets because I was familiar with the language and they run in a web browser. But there are some downsides to it: it’s pretty unstable when managing sounds, some browser/network configurations prevent applets from running, and up-to-date runtimes don’t have the penetration that Flash has thanks to YouTube and friends. Also, I want to change because I feel like it.

Python

So first I grabbed Python. I once coded something simple on it and I loved its syntax and philosophy. Armed with Pygame and the latest runtime, I set to port my current in-development game, Pixelworld as a test. The game is mildly demanding as it is essentially a particle simulator, but it’s just a 128×128 field, so I figured it should not be a problem.

Wrong. Despite an honest effort to optimize as far as I could by tweaking and trying whatever trick I could find on google, a loop that runs 655360 times a second with some logic is too much for Python. The final veredict was that calling user-defined methods in Python is excruciatingly slow and there’s no workaround for it. If I am to inline the bulk of my particle logic without helpers, I might as well not code in Python at all. If you are a Python wizard and want to have a shot, here’s my final source code. If someone manages to make it run above 30 fps without making the code unreadable, I’ll apologise for this:

Conclusion: Any platform is good for games if you just draw a bunch of hardware-accelerated sprites. I just needed a bit more on the soft side, and as much as I liked the language, it does not provide the penetration of Flash or the raw performance expected from a standalone game.

On to…

ActionScript 3.0

Then I started with AS3 on Flex builder. Again, Pixelworld is about writing pixels on a surface, so I knew from the start that I was going to be pushing Flash beyond it’s area of expertise. However, Flash really stood up for the pixel mangling after implementing several obscure hacks I found here and there coupled with some code optimization in general. The language is ugly, but the runtime offers many possibilities (i.e. Kongregate). However, I had to optimize beyond what it’s healthy for this game. You can check out the Flash prototype.

Conclusion: I’m not going to do Pixelworld in Flash 9. But I’m probably going to switch over to it soon just because of the runtime. Maybe Flash 10 makes a difference to me. Maybe Silverlight will be out of beta… for now… I stop promiscuity and go back to safe sex.

Demons of Experimentation: Level Slicers

14 June 2008

Convention-class demon are sneaky because they blend with the background and it’s very difficult to realize you’re succumbing to them. Level Slicers devote themselves to make you think about splitting your game in levels too soon.

Level Slicers sometimes leave visible scars like meaningless progress numbers showing up, puzzling loading times and lots of decorative filler in levels that doesn’t need to be so big.

Their main poison are rationalizations:

  • Technological limitations
  • Delivering immediate reward fixes (junkgames)
  • Make progress-status and menus a better trap (menus are another demon)
  • “It’s custom, so it must be right”

But the worst variant is “It’s natural that this game is split in levels!”. And then their harm is evident: We are probably thinking we’ll have levels before having a good grasp on the core gameplay. And levels help divide the problem by, in turn, reducing the possible games we could have came up with.

We humans are used to deal with a continuum. We learn to divide and conquer just to make our problems easier to solve. But whose problem are levels solving? the player’s or yours?

Level Slicers are legion. We need more continuous games.

Night Raveler and the Heartbroken Uruguayans: The Game

3 June 2008

The Raveler

Yesterday I sent my current entry for TIGSource’s Procedurally Generated Content competition (Play It).

Originally, it was supposed to be a game about a huge alien that destroyed cities, breaking everybody’s heart. But the concept shifted quite a bit and now it’s completely different.

Some relationships (any kind) sometimes doesn’t work. And some other times they just barely work, but can’t bear themselves to break for fear of suffering the pain that comes with the breakage. At the same time, the pain is actually fearsome, and if taken in large amounts can be lethal.

It is not a game with goals, levels, punishment or achievements. It’s about exploring consequences.

Update: I made several fixes and improvements to the game. It includes more interesting endings.

Credits:
HernĂ¡n Rozenwasser for the music track.
The stars feedback is inspired in Rod Humble’s Stars Over Half Moon Bay.

Space, Aliens and Uruguayans

23 May 2008

Right now, I’m enjoying some vacations. Which means I’m spending most of my time sleeping, watching plays and movies, playing games and getting generally dirtier.

Thus I have my projects in the back burner now, but since I’m bored, I’ll share what’s cooking:

Space Opera in a Box

Space Opera

This game was to be part of the CODEAR: Banner Games compo, but quitting and stuff kept me from finishing it on time. It’s a Science Fiction collage poorly glued together. It’s all the space adventures on a single (short) game. Maybe.

The Raveler Alien & the Heartbroken Uruguayans

Space Opera

This is my unlikely attempt at the TIGSource Procedurally Generated Content compo. It’s about an alien, raveling and Uruguayans with a broken heart. I only know it’s not a game about hating uruguayans. But I’m still not sure what it is about. I could end up with uruguayans being removed instead of heartbroken.

Today we had a talk with Petri, and two ideas I liked came up with the conversation:

  • How would you design a shooting game if the player were to be in a permanent ‘God Mode’?. It would force the game to be exploratory. But how do you keep the shooting? (excluding cheap rewards like scoring).
  • Pixel art makes games feel gamey. Anybody looking at something made with pixel art will conclude it’s a game and couldn’t be other thing (like, something important). Petri had this idea. Made me challenge a couple of preconceptions.

Expect the games to be released in a couple of weeks or so.