About JohanAR (twitter: @JohanRasten)

Entries

 
Ludum Dare 21

JohanAR's Trophies

JohanAR's Archive

Progress so far

Posted by (twitter: @JohanRasten)
Saturday, April 21st, 2012 1:00 pm

My initial plan was to have my game running in a web browser, to make it easy for people to play and rate it. Problem is that I’m not too fond of Adobe/Flash (partially because they just canceled Linux support) or JavaScript. So I thought I’d try Haxe but it really lacked useful tutorials for JS/HTML5 and I didn’t feel like learning a new language by reading the API.

As of writing this blog post the pie chart is missing 1 hour for “Trying to get Gimp 2.7.x installed” because the stable version (2.6) in Ubuntu repository doesn’t have single window mode.

Anyhow, the language I settled for is Pike because it’s very high level, it’s compiled and it can do compile-time type checking. The downside is that it’s horribly under-documented. At work we say “the source is the documentation”, which unfortunately isn’t as much of a joke as you’d like it to be.

Right, back to coding stuff. I think I have 20 lines so far..

There’s more to EscApe than you think

Posted by (twitter: @JohanRasten)
Monday, August 29th, 2011 2:16 am

This is kind of a port-mortem of EscApe (there’s another game with same name, it’s not about that one :)) but I’m going to focus certain design choices I did in the 3 hours I created it.

Massive spoilers below, so if you intend to play my EscApe, go do it now!

“Your game is just a crummy monkey in a badly drawn cage”, you say? Perhaps, but there’s still more to it than meets they eye. Continue reading!

I’ve found two other games that are exactly the same as EscApe, except that they look and play quite differently. There’s The Power of Escape by BurnZeZ and BATHOS by johanp. I’ll use them to point out some differences in game design, which might sound like I’m trying to bash the other games, but that’s not my intention. Read it as constructive criticism.

The basic concept [of all 3] is of course to present the player with a room, which is impossible to escape using methods normally available in computer games. Not until the player starts thinking outside the box (or tries to quit the game, as we’ll see later), and takes what’s printed on her keyboard literally, she will escape the challenge. If executed correctly, this puzzle actually takes place in your room, rather on the computer screen.

Now, what did I try to do with this? My goal was to give as many hints as possible, without actually revealing the solution. I wanted the player after figuring it out to think “omg, why didn’t I think of that from the beginning?”.

Starting at the title, there’s a big green hint all over the screen. But I tried to draw your focus away from it, by making the game about an ape. You see, the title only says “escape” with “ape” highlighted.. or does it? :) To put even more emphasis on this I added the text “Can you help the ape escape?”. There’s actually one more thing, which I didn’t think of until later, that APE is written in a slightly stronger color than ESC, but I think the difference could have been even bigger.

Still at the title menu, at the bottom it just says ENTER (the compo version had more text, but I thought it was distracting so I changed it). This is also a hint, actually. You see, I don’t give any exact instructions on how to play the game – I will return to why shortly – you have to figure it out yourself. As I mentioned the solution is to read the Esc-key literally, and for this to work, all keys have to work in the same way. You enter the game by pressing the enter key. Simple enough.

Lack of instructions, yes? The reason is of course, that only thing worse than giving no instructions at all, would be to give partial or faulty instructions (without telling the player that they are faulty). So either you tell players what all keys do, which would spoil the puzzle, or you say nothing at all.

(BATHOS – not made by me)

As you can see BATHOS looks nothing like my game, it has much better graphics (and sound) and I thought it was incredibly funny as well. But the other Johan seems to have done the opposite in just about every choice I’ve described so far. In fact, it even seems like he knowingly tries to lead players in the wrong direction  :) By giving instructions, there’s nothing in the game – or deducted from experience of playing 100s of other computer games earlier – saying that there’s another unmentioned key that is crucial to winning. Further, if Z means “jump” and X means “pickup”, then Q might as well mean “escape”? IMHO it’s a little like playing Super Mario Bros and having to figure out that you have to press the reset button on your console to press to find the princess. Though BATHOS has a lot more comments and ratings than EscApe, so maybe this is what people wants :)

Back to our poor, caged simian. My idea here was to print out the key you pressed in clear text, so you would get the connection between its literal meaning and what goes on on screen. Initially I was going to make it more passive, so that pressing left would only make the monkey look left for example, but I ran out of time sooner than expected. People ought to figure out soon enough that moving around in the cage won’t help you, so I’m not sure it made any difference. Hopefully after coming to that conclusion, all the previously mentioned hints have trained the player enough to start pressing other keys to see if anything happens.

Due to this lack of time, there is a crucial part of the game missing; There should be more keys with functions in the game to lead the player from using the direction keys to thinking “aha! I need to press Esc to escape”. Not only would this help bridge the logical gap, but also add a little bit more fun to the game. These were some I thought of:

  • Space – Launches the cage into space or something. Maybe the monkey just thinks about space. However, it is a very important key, as it’s likely one of the first ones the player tries pressing (partially because of its size and location and partially because of its use in other games).
  • Shift – The ape shifts its weight around.
  • Home – Text: “You can’t go home”
  • Enter – Text: “You’re already inside”
  • Dash (well, it’s technically a minus sign, but they look similar enough) – Quick sprint in either direction.
  • End – Popup saying “Are you sure you want to end the game?” with possible quit.
  • Backspace – Printed as “Back (from) space” and returns to the jungle. Maybe too far fetched.

So why am I ranting about all this? Because gradually training the player to adapt to your game’s rules and mechanics is how you write modern games. No game designer ships their game with a printed manual these days, and if they do, nobody is going to read it :) Another central concept of modern game design is to make player feel like they’re doing exactly what they want to, while they’re doing exactly what you want them to. This makes the player feel incredibly awesome and is a lot more rewarding that simply following a heavily scripted story. Ok, so EscApe isn’t Half-Life 2 (Valve are good at this), but maybe it’s a little bit more to it than you initially thought? 😉

I wonder what would happen if the next LD theme was “space”…

Unity3D for Linux

Posted by (twitter: @JohanRasten)
Thursday, August 25th, 2011 1:08 am

While rating your games I came across several written using Unity3D, which is understandable as it looks like a modern 3d Flash on steroids. However, there still is no Linux player available, so go and vote for them to write one!

Most of you probably don’t use Linux, and might be thinking “why should I care”. But you should. It’s about freedom of choice as much as about anything else. One might think that people should be free to choose the operating system they like, without being punished by third parties. Ok, I know it’s not that simple, porting to a new OS requires an effort and some companies will have to make a cost/benefit calculation, while many others can afford to be selfless most of the time.

I  will always try to make my games multi-platform, even though I think Windows is crap and that Apple is an awful company (with good products :)). Not because I think I can sell more copies, but because of you. You should be allowed to use the OS you chose, not the one I do.

EscApe Deluxe (Super Monkey King Edition)

Posted by (twitter: @JohanRasten)
Wednesday, August 24th, 2011 8:24 am

Not that my game is that interesting, or have some kind of potential, but I spent a few hours today adding some of the original planned features and touched up some of the graphics.

Unfortunately it has pretty much 0 replayability so it might not be so interesting for those who already solved it (unless you really like monkeys with their arms swaying hypnotically).

Still no sound effects though 😛

How I rate your games for theme

Posted by (twitter: @JohanRasten)
Monday, August 22nd, 2011 11:36 pm

In case anyone is wondering, here’s how I reason when I hand out Theme-ratings.

The main question is how important is “escape” to your game? It’s very easy to start any game with a text box saying “you have to escape this XXX!”, but in how many of these games could you replace that sign with “you have to find the treasure” or the “…evil XXX hiding in his dungeon”?

Many, you say? Indeed. If you could simply exchange one or two dialogs and the game would still play exactly the same, that’s going to give you a lower Theme score. Not necessarily a 1, but low. Notch’s game is an example of this. Overall it’s a fun game and incredibly impressive for being made in 48 hours. But IMHO it’s more a game about killing monsters and gathering trinkets than an escape themed game. I’m not going to give him all 5s just because he’s Notch 😀

On the other hand, if something is so intimately tied to escaping that it would be an entirely different game without it, you get higher scores. If you look at ChevyRay’s Flee Buster the escape (though technically, it could equally well be “chase” but I’ll let it slip this time) is very central to how you play.

And I might have to add, if you write a story driven game and it’s about escaping, it’s of course possible to get a high score – if the story actually is about escaping. But I’m not sure there are too many of that kind here, most games I’ve played yet focuses on gameplay and mechanics. Nothing wrong with that though, there are a lot of good games where the story is unimportant! :)

Finally, what do I consider perfect (theme) score? I had a look at my ratings and the only game that has a 5-star theme so far is Gjarble’s Beyond the Fourth Wall. In other aspects, it might not rate as high as Notch and ChevyRay, but it’s a solid mini-game 100% dedicated to an escape. Flee Buster could still be a cool platformer, but take away escape from BtFW and you pretty much have nothing left.

So there you have it. Luckily there are many aspects to give points for, and personally I’m basically focusing on humor and theme (guessing I’ll have pretty low scores for overall and fun, because as a game it really sucks). If you’re going for a high theme rating, or perhaps got lower than you initially expected, hopefully this provided something to think about.

Now I have to go back playing all your entries. Having great fun doing so! If you know any game that took good advantage of the escape theme, please post a link in the comments!

UPDATE EDIT:

I also rate [theme] based on how originally it is used. Bonus points for not using the most simple and common “escape from prison-like facility” and “escape from XXX chasing and trying to kill you”

First entry (EscApe)

Posted by (twitter: @JohanRasten)
Monday, August 22nd, 2011 3:46 am

Just submitted an entry to LD for the first time, and well, it’s not the most serious game ever made. Problem was that this Saturday we had decided to play some board games with friends (initially Diplomacy but we ended up with Android) and Sunday we were going to a family dinner. Soo, not much time left to code. Last minute I scrapped my plans of writing an awesome platform game in Scala and threw this ape game together in Java using Slick2D.

[cache: storing page]