caranha

LD22

Last Minute In :-)

First timer yadda yadda yadda.  Tools of the trade:

  • Java-Slick2D-Eclipse (I was going to use pygame, but my friend MME convinced me otherwise)
  • Graphics edited with pixmap
  • Taking screenshots of my workspace every minute to make a time-lapse of my downfall after LD is done
  • AI programming background – toyed a bit with pygame but never completed a game before

 

Wish me luck :-)

Thinking about the Theme

¨Alone¨ is not exactly an easy theme… I´ll spend the first hour or two thinking up the game… maybe washing the dishes and thinking while I do this.

A quick idea that I had was some sort of shooter or dungeon crawler, where your ¨hitpoints¨ and ¨abilities¨ are defined by the companions that you grab along the way.

When your group is large, you have more options to act, and you can survive more dangerous stuff.

But if you have many people with you, maybe you can´t fit through certain openings in the game area, or you are an easier target…

I´ll keep thinking for a while.

Game Defined! :-D

I think I just thought of a game that fits the theme, is not too ambitious, and can be quite fun.

Mazes.

The idea is to make a simple maze navigation game. You can traverse the maze alone, or you can get the help of some friends. Those friends give you some abilities, but they also 1- get in your way while you move, 2- reduce the time you have to solve the maze (eat your food!).

Ideally, I can make some levels where there is more than one way to solve it – going alone or ¨asking¨ for help.

I already defined the main types of obstacles (walls, pits, rocks and a few others) and the main types of friends, so I guess I can begin prototyping the game.

Not sure if I start now, while I´m excited, or I try to sleep :-)

Someone else in a post below mentioned ¨hourly posts¨, that sounds like a good idea.

After a few hours of work, I managed to do:

  • A very basic tile map
  • A character that moves around that tile map
  • Other characters following him in a conga line
  • Variable line-of-sight

Time to get some sleep :-)

Tomorrow I will try to package this, and begin map interactions (walls, etc)

Some progress!

The characters walk in a conga line, and there is a range for light!

Yay!

All Bow Before the Mighty Conga Line! :-D

After spending almost one hour fighting with java and jnlp´s, I managed to get my prototype from last night running!

Now, it is still not perfect, java will ask you if you trust me, if you trust slick, if you trust lwjgl, if you trust your mother… And one of my testers told me that he had to answer ¨no¨ to one of these questions or java would give the ¨trying to run signed content with sandboxed content¨ error :-/

But it runs, just try!

And if anyone would know how I can solve java´s trust issues, that would be greatly appreciated!

Maze Explorers!

Now back to making the game :-)

EDIT: fixed the php hack and added a proper .htaccess file

Comments

17. Dec 2011 · 11:10 UTC
I click the link, it downloads a php file

15 hours in, and I got this, hmmm :-P

Maze Explorers! V0.2

So I have improved on my prototype a little bit. You can change the size of the conga line by adding and removing friends. You can change the light level of the cave around you. Food is counted, and the more friends you have around, more food you spend. Friends and Walls block your path. The game loads the map from a text file inside the jar (not sure this was a good idea).

It is far from a ¨game¨, but it is shaping up — this is fun!

Now to add goals, maze events, your powers. I´m not sure I´ll have time to polish up the graphics and make a decent opening screen, but for a first time game project, with a library I never used before, I getting quite happy with the result!

Oh, and this! 😀

Done for the first day! :-D

My game after 24hrs! :-)

After 24hs, I managed to mostly complete my game engine. There are a few features missing, but I got all the mechanisms that I need to make my game:

  • Controls are all in.
  • Victory and Defeat conditions are in.
  • Level Selection and Unlocking are in.
  • Reading levels from text files is in.
  • Placeholder graphics and animations are in.

This means that tomorrow I can mostly concentrate on adding levels to make the game fun/challenging, and adding bells and whistles like images and sounds. I feel hopeful that, for someone who has never made a video game before, I will not embarrass myself :-)

My code, on the other had, is a complete mess. Hardcoded stuff all around, hacks to make the player and the world talk to each other. Very few comments. Objects and world tiles mashed together. Ugh Ugh. I must say that these first 24hrs of LD were great for me to learn some lessons in programming.

Anyway, here is the game. There is no content, but you can get a feel of how it works. You are an explorer, who has to find your way out of mazes. You can do it by yourself, or help people stuck in the maze. Some of them will give you powers, but they will also get in your way, and eat your food. Sometimes it is better to go alone…

Maze Explorers!

PS: If anyone could give me some hints of what exactly I should put in my manifest to make java skip all (or some) of those nasty warnings, I would be very very happy :-)

Tags: java, maze, prototype

Time to write some levels.

After a short night of sleep, time to write some levels to my game. I´m a little afraid that I may have made the game too hard, and that only luck will carry you through without dying at least once.

But if I think again, not that this is a bad thing, is it?

Or maybe it is the day two blues of not believing in your own creation…

Well, time for coffee and graph paper.

Tags: content, doubts, java, level design

It is a game! :-)

I have updated Maze Explorers with three actual levels! So now you can beat the game or lose! It was really fun creating the mazes, and not as bad to make the maze files by hand as I feared. Even squashed a couple of bugs.

Now I need to make the game prettier. A friend of mine told me that the game screen was too small, and maybe it kinda is :-/ I´ll try adding a zoom effect when your light level is low.

Anyway, please play and let me know how hard you found the mazes (you want easier mazes? harder mazes? more mazes like these?)

Maze Explorers!

HELP! (Slick2D)

So I´m trying to pretty up my game, but I can´t get Slick2D to render fronts using the UnicodeFont class. (So I can´t use some of the fancier functions from that class)

using the Graphics Class, I manage to:

g.Drawstring(¨foo¨,x,y);

But when I do:

UnicodeFont font = new Unicodefont(new Font(fontname, Font.Plain,20);
font.draw(x,y,¨foo);

Nothing happens.

I have tried to add a font effect to UnicodeFont, but it is still not displaying :-(

Halp, please?

EDIT: Thanks for all the help! It turns out that I have to font.loadGlyphs() at every render cycle to get my font to display.

Tags: code, help, java

Comments

18. Dec 2011 · 10:47 UTC
Got some help _> lolwut?
kibertoad
18. Dec 2011 · 10:54 UTC
Are you sure you want to use UnicodeFonts? AngelCode fonts are much faster, you can generate them from ttf (don’t forget to remember some symbols) with this utility
Jarek Radosz
18. Dec 2011 · 10:54 UTC
after adding the font effect:
kibertoad
18. Dec 2011 · 10:54 UTC
remember -> “select” some symbols, I meant – otherwise you’ll generate empty font :).
18. Dec 2011 · 11:16 UTC
Yeah, I forgot to load the glyphs :-(

So as far I as can tell, loadGlyphs() is kind of a ¨Flush¨, and the ¨Draw()¨ method doesn´t really draw? That makes sense with the behavior I´m seeing.

To Scale or not To Scale?

The game is about a maze. You can get an ability that will let you see more of the maze at once (think ¨light¨ or ¨binoculars¨).

At first, I just rendered the cells that you could see, and kept the others dark.

One of my friends thought that the play area was too small, and suggested that when your sight range is small, I should zoom in.

I did a quick implementation of it. It looks clearer, but because the scaling was not perfect, there were some nasty lines in the zoomed in version…

To scale or not to scale? That is the question (If I had the time, maybe I would just create bigger sprites and scale DOWN instead of scaling UP).

Difference between the ¨Scale¨ and ¨Not Scale¨ approach

EDIT: Thanks to Jack, now I have scaling AND smooth tiles :-)

Comments

Jack
18. Dec 2011 · 12:33 UTC
put the scale mode on nearest neighbour, then you won’t get the ugly lines
vubuntu
18. Dec 2011 · 12:34 UTC
if you’ll get rid of that nasty lines, then scale. otherwise leave it unscaled, it is not so small.

Kitten Dare Achieved!

Ok, I have managed to complete the Kitten Challenge! Good luck trying to find it in my game :3. It is there, I promise! Dont give up!

Now three more hours before submitting… I wish I could have finished the transitions, but I think that will not happen this time. I will probably spend this time improving the character sprites and maybe adding a few extra levels.

Nyan! Nyan!

Tags: easter-egg, java, kitten-challenge

When all is said and done,

I managed to complete the Ludum Dare! :-) Amazing!

Maze Explorers!

I didn´t quite know what to expect when I decided to join this LD, two weeks ago. I had never made a game from start to finish. But the time limit pressure, and watching other people do the same thing as me gave me a lot of motivation.

Also, I learned a LOT. In my job I have to make java programs to solve optimization problems, and they never involve things such as states, interfaces, resource management, etc. If nothing else, Ludum dare was worth it just for the learning experience alone.

That said, I´m actually rather proud of the game I´ve submitted. Granted, there are a lot of planned things that are missing (just note the huge blank space in the bottom of the playing area). But it went much much farther that I would have guessed. It has half-decent old school graphics! It is multi-platform! It has levels! And I can even add more levels easily in the future.

So, to celebrate, here is the obligatory time lapse. Sorry for the lack of sound!

A shout to MME, who did the dare in parallel with me. We shared a lot of ideas, questions and lols in these 48 hours.

And make sure you find the secret kitten in the game!

Tags: final timelapse, finally done, java, kitten-challenge, timelapse

Rate ALL the things!

What is better almost as good as making a game all by yourself, from scratch, in 48 hours? Why, receiving feedback on your creation! :-)

So I took the time to rate a bunch of games. I tried my best to offer meaningful comments and suggestions to all the games that the “rate” button put in front of me :-)

Here are some of the best games that I played tonight:

Courage Quest – A very well polished game, a platformer with multiple mechanically varied quests. Nice animations, graphics and sounds.

The End – A neat game with solid controls and a very spooky and well executed mood.

Alone in all Elona – While this game is not very polished at all, it deserves a mention because of its unique and very fun mechanical premise. I liked playing with it, and would play more if the author takes the time to cut the rough edges from the game.

SleepWalker – This game’s text is simply hilarious.

Void – A very, very beautiful game. Just note that the signs don’t kill you, they indicate the end of the stage 😛

See you tomorrow with more game highlights!

Tags: game reviews, rating

Rate ALL the things — Part 4!

The RNG is my friend, and he is rewarding my rating efforts! The games I rated and commented today were so good that I had some real difficulty choosing which 5 games to highlight. I ended up choosing the games with the highest degree of polish in the list. One of the picks only had 5 rates so far!

Without further ado, here are the reviews I want to share with you tonight.


Alone in a Cave — A turn-based puzzle game, you have to take your character through maze rooms while avoiding robots and picking up items. The graphics and sounds were well though out and fit well together, and the game is generally well finished, with animations, transitions, good controls (minus keyboard controls), etc. The challenge is another high point.

Blue Moon — A fantastic puzzle platformer. The main mechanic of the game is quite innovative: you can spend your life force to activate mechanisms, or drain the energy of mechanisms to replenish your life. Animations and story are also quite well developed. The game is initially quite challenging, but suddenly gets trivial. Even then, it is a well polished game definitely worth playing.

Split Party — This game is the king of polish so far. I wouldn’t be surprised to see a game like this come out of a DS cartridge. Sounds, controls, graphics, everything fits well together in one tight package. Everything is actually dead simple, but I say this is a testament to controlling the scope of your game. The only downside is that to win this game you must be a heartless bastard who makes cute boxes cry.

Solus — A beautiful side-scrolling shooter. The mood of this game is palpable, and everything was built around it. Even the kittens hidden in the game don’t break its aesthetics. It is not so difficult since you don’t return to the beginning when dying, but it has a very engaging boss battle.

She Loves You — A 3D Action/Puzzle game. A very creepy game. This game is not as finished as the previous ones, since it still lacks things such as intro and ending screens, but it is worth the pick for its uniqueness alone. The model for the girl in the game and the maze design are very good.


That is it for tonight! Check out my journal if you want to see the picks from my previous days, and feel free to plug your game in the comments! I’ll make sure to give it a fair shake and offer some suggestions for improvement. A shout out to THE HUG MONSTER who is also making a series of reviews in his journal. (-o^_^)/\(^_^o-)

See you tomorrow!

Tags: game reviews, rating, review

Rate ALL the things — Part 5!

I’ve broken the barrier of 10% of the all games played. Yay!

That said, today was a bit slower than the other days. I have to take a plane to visit my family this weekend, so preparations for that means less games played :-(. Even then, people in the irc and comments pointed me to some really amazing games. The picks for today are:


Spawn — You are a creature, alone in the ocean. You can create more life as you get nutrients in the environment. Your creations will vary based on the type and order of the nutrients acquired. And that is it. Although the premise is simple, the execution is well made, with relaxing graphics and sounds, and an interesting variety of creatures. Not as much a game as a toy box, but I spent a lot of time seeing what was the next creature that would pop out.

Arzea — A very well polished action platformer. Graphics and sounds work well together. The game is extremely fun to play — I had a lot of difficulty putting it down to rate other games :-P. Levels have a nice challenge to them, although the spawn rates are a bit high at the moment.

Blind — A maze solver with a unique mechanic: You can’t see the maze! You navigate using sonar, that will warn you of walls (or, in this case, of corridors). This makes for a hellishly difficult game, but worth trying out for the novelty.

Comfort zone — Another maze solver with a unique mechanic, but this one is a bit more complicated to describe. Your interactions with the different objects in the maze will alter your speed and your ability to move through obstacles. The mechanics allow a lot of room for interesting maze design, and the controls are very slick.


I hope that you are enjoying these reviews :-) If you want more, check my journal for my previous posts on this series. And if you want me to take a look at your game, feel free to drop a comment! I try to give suggestions/report bugs on all games that I play.

Fun holidays for all, and check next week for more reviews!

Tags: ratings, review

A PostMortem for Maze Explorers — or how I finally sat on my ass and completed my first computer game EVER.

Since the weekend forced me to take a break on my review series, I have decided to take this chance to sit back and think about how the LD22 weekend worked out for me.

Maze Explorers
was not the first time that I tried to make a computer game, but it was the first time I managed to ¨complete¨ my effort. I can thank the 48 hour deadline for that. I feel that after completing this LD, something clicked on me, and game making is not something as mysterious and arcane as I thought it was. I hope this means I can turn my ideas into real games more often in the future.

Now for the obligatory ¨what worked¨ and ¨what did not work¨ lists:

What Worked

  • Having friends test my prototypes mid game: I had some very awesome friends test my prototypes as I submitted them, and provide me feedback. Some of the most important suggestions included: A highscore feature, zooming in the game area when the light radius was limited, and making sure my tiles were colorblind friendly (<3 colorblind friends).
  • Having a Ludum Dare ¨partner¨: In terms of motivation, I was lucky to have entered the LD with a friend of mine. We were constantly IM´ing each other, talking about bugs and landmarks, and just ranting. It gave me a sense of duty — he was putting effort on it, so I´d better put some effort too! I´m sure I would have procrastinated a LOT if not for him.
  • Deciding my theme/game design quickly: After the theme was announced, I sat on my sofa and did not leave until I had the complete game on my head. I found a kinda interesting, not too ambitious idea. Years of programming/Dungeon Mastering helped me keep the scope of my game reined in. I managed to complete about 90% of the planned features for my game, and even to sneak a few more in. Even when it looked like a stupid idea, I stuck to my guns and kept going on.
  • Familiarity with the Language/Environment: I have been working with Java and Eclipse for a few years (although only in the realm of scientific computing), and even though I did learn a new thing or two, this familiarity helped a lot.

Thanks for reading so far! I hid the kitten easter egg pretty well, so here is a hint: there is one control key in the game that apparently is not useful for anything. You need that key to find the easter egg!

What did not work

  • Unfamiliarity with Game Programming: This goes without saying, but I spent too much time figuring out things like “which class I should store my resources in”, “where to call transitions”, “how to properly program my tile engine”, etc. I was reinventing the wheel way too many times.
  • Unfamiliarity with the game library: Related to the previous one, even though slick2D is a pretty simple and straightforward library, I think I spend the majority of my time peering through its class documentation. Finding out how to change the size/color of a font was a pain. Luckly, this means that next LD I should have more time to spend on the game itself.
  • Making Levels: A large part of the theme tie-in in my game depended on level design. Levels should have at least two solutions — an “alone” solution and a “with company” solution. Unfortunately this means that designing levels took quite a while for me, and I only managed to complete 5 levels before the deadline. Fortunately, having the player try for the best score increased playability a bit beyond just beating the 5 levels.
  • Sound: Sound and Music were always my weak point. I know nothing about sound terminology and technical aspects, and I wouldn’t even know where to begin to try and make some music for my game. sfxr helped me a bit with the sound effects, but I ended up botching the synth voice effects: its volume is too low, and either you can’t hear them, or the stepping sound effect gets too annoyingly high. I need to practice this a bit before the next LD. Suggestions for programs to make music out of thin air appreciated.
  • Environment: My environment was far from optimal. I didn’t get enough good food, and ended up eating too much junk food (I had enough water, though). Also, even though I divided my 4 virtual desktops well (net/docs/programming/resource-terminals), a second display was sorely missed.

What now? There are many things that I didn’t manage to finish in my game: Transitions, a few more levels, music, something to fill the bottom of the screen, background screens. There are also some things that the reviewers (thanks!) asked for: better sounds, not getting stuck with a companion on your back (thinking about it, we don’t really need this for the game to be hard).

I might make a post-compo version with the above, for the sake of completeness. On the other hand, I might keep the game as is, for archiving sake, and move on with trying to make some new games to get more practice with the gaming library and with game coding in general.

Thanks for reading, and make sure to try out Maze Explorers and tell me what you think about it :-)

Cheers,

Tags: easter-egg, easter-eggs kitten-challenge, postmortem

Comments

02. Jan 2012 · 12:40 UTC
Lovely Post-Mortem. We were wondering if you’d like it to appear in indie(Magazine);. Please reply to this if you’d like to give us permission to use it in the magazine.

Rate ALL the things — Part 6!

After a healthy break over the weekend, it is time to rate a few more games. This time I’m highlighting games with low number of votes, but bring something interesting to the table. Go rate them!


Alone .. Developer — I’m glad someone had this idea and actually went through and made it happen! This is a game about controlling a lone programmer as he tries to make a game in 48 hours. Sounds familiar? You have to manage his food/stamina/productivity levels through a wholly unhealthy sleep cycle. The bad endings are hilariously extreme. Unfortunately, the game does not have a good ending.

Diggy Dig — This is a very cute game about a naked dwarf miner. You dig away the dirt with your mouse, and try to grab the treasure. Beware not to paint yourself into a corner! I like games with novel mechanics like this one. But you also can’t win this one yet. Also: kitten power!

Alone with Zzzobmies! — This was the first LD22 game that made me actually scared! Great mood, even though problems with collision detection make the game a bit frustrating. Kill those creepy zombies with bricks! Oh, and this game DOES have an ending.

Squido does not like being alone — An addictive arcade, you have to control squido as he tries to make friends… unfortunately, sharks and zoidberg will kill your friends all the time, and you have to make MORE friends. Maybe a bit on the tragic side, but a very fun game — how many squid friends can you keep at the same time?

Alone in the Clouds — A very beautiful puzzle platform. You have to go to the end of the stage by managing your limited “superjumps”. In normal mode you can recharge your superjumps infinitely. In hardcore you can’t, and things get really difficult. Beautiful background and transitions + robot in a balloon. There is an ending, and a side door near the end that I didn’t manage to open.


Rating and commenting on every game is hard work. My hats off to those who have already rated more than 30% of the games! At my current rate, I don’t think I can make the 25% treshold, but I hope the devs enjoy my commentaries to their games. If you liked this review, make sure to check my journal for a few more.

Happy new year everyone!

Tags: ratings, review

LD23

Second Ludum Dare, Go!

Wow, next week already? Awesome.

To be quite honest, I mostly slacked since my last LD :-( I had these huge plans, see: improve my game, write a text window library, create a small “evolutionary garden”. And all of that got lost in the shuffle :-( That is what happens when you don’t have deadlines.

<3 LD48

Well, so for this LD I will try to get right what I got wrong last time. I will use Slick2D again, but now I won't have to learn the library from zero :-). I have written a small todo list, and tomorrow I will go through it for the warm-up, to make sure that all is working kinda all right for the dare.

Also, I am in a new apartment, and with a much improved setup if compared to last time:

My work setup for LD23

The down side is that now I’m on the GMT+9 timezone, which means the LD will start 10AM on saturday, and end on 10AM on sunday – so I won’t get much in term of last time additions… but at least I will begin with full speed on the first day.

Also, on LD22 I managed to get 10th place community due to my reviews. So I got a reputation to uphold!!! :-) It will be quite a bit harder this time, since now I got a full time job, so I won’t be able to dedicate entire days for reviewing, but I will see what I can do.

GL HF everyone!

Tags: desk shot, slick2d, warmup ld23

I’m all warmed up now! :-D

Yay, finished my warm-up game, and managed to refresh my mind about the basics of setting up a new game with Java + Slick2D.

You can see my entry here. It is a simple horizontal scrolling shooter, but I managed to remind myself of all the basics, like loading sprites, moving them, having multiple states for menu, game modes, pausing, game over, etc; loading and playing sounds, and some basic event and collision handling.

For some reason, my web applet is not working on my linux boxes – may be a problem with 32/64 bit libraries, I don’t know, and I can’t see any debugging messages :-( The fat jar works fine though. Any other linux-ers who could try my applet would be very appreciated! (applet works fine on windows).

Also, can anyone suggest me a program/tutorial/example about how to make music for a game? That was my weakest point last LD, and I would love to improve that this time around.

See you next week! 😀

Tags: java, music, side-scroller, slick2d, warmup ld23

Comments

Raptor85
15. Apr 2012 · 15:08 UTC
the web applet worked fine for me on 64 bit, if i had to guess though i’d say it’s a path/lwjgl problem…..99% of “java” problems i’ve run into in playing other games (for rating during LD or otherwise) in the past have been due to the copy of lwjgl used in the applet not being compatible with the system testing it on. (biggest offender, only prividing a 32 bit or 64 bit version, which would cause it to crash when trying to load native libs on the other)