Six

LD15

Stumbling in the dark.

I didn’t intend to take part in this Ludum Dare.  A friend told me about LD a while ago, so I had looked in a little after previous competitions and liked the idea, but I didn’t intend to take part .  The same friend told be he was going to take part in this LD which I thought was neat, but I still didn’t intend to take part myself.  In browsing through the comments on the “Welcome to Ludum Dare 15!” post a few hours before the competition started,  I got to reading about what people said they were going to be using to make their entries and thought I’d check out LOVE for a bit of fun, not at all intending to make something for LD.

I’d never used Lua before, but found it simple to pick up and the LOVE libraries made doing things very easy.  I looked at a tutorial or two, then went out to get some fresh yeast so I could bake some red bean buns.  I was feeling a little inkling to maybe take part in this LD, but didn’t really intend to take part.  While  making the buns a friend of mine came over and we went off to wander around town and find somewhere for dinner while I let the dough rise.  Before heading out I checked to see what the theme for LD 15 was, as it had just officially started.  Getting back later that night to my over risen dough, I finished making the buns while chatting with my friend. The buns turned out pretty good.

Photobucket

My friend headed home and I wandered the Internets a while before going to bed, still not intending to take part in LD.  But I had seen the theme and as I drifted off to sleep I couldn’t help but buzz ideas about in my head.  I thought about how the theme cavern would be a alright for a concept I’d thought about a while ago.  Sort of super minimal survival horror with a limited view, though that was about as far as the idea reached.  I had no idea if the idea was possible using LOVE and lua, but I reasoned if I could draw back rectangles of varying opacity, I could get some cool pixelated lighting effects going, and I’d be happy with that.  So when I got up the next day, I got coding.

Without too much trouble I got a bit of a torch like effect, pointing from the middle of the window to where the mouse was and making what was lit by it visible (only a piece of text at the moment, which actually stayed till the end of the game, if you can find it 😉 ).  Then I added a bit of wobble to it so it would slowly waver back and forth when still, for a bit of flavor.  Neat.  But simply pointing a torch wasn’t so fun, so I made it so you could move around too (well, move everything else around technically).  Now I needed a protagonist to fill the void of the torch beam source, so I got to pixel drawing.  I didn’t really know what I was after when starting to draw, but felt I was heading towards something almost Lovecraftian in theme, so wanted something that wouldn’t look out of place with that.  Somehow this little guy developed (you can never really see the full sprite in the darkness of the game).  I like his tie.

Photobucket
(the 2nd and 4th line are the same, because it
saved me a few lines of code and a lot of hassle)

It kept on like this for pretty much the whole rest of the time, adding little bits, checking they worked, not really knowing where I was going exactly (kind of like the protagonist really…).  Probably the most important bit of code was the bit that cuts off the lightbeams from the torch.  This is pretty much single handedly what gives the game most of it’s atmosphere and charm in my opinion.  I also hit upon a rather amusing bug at one point that had me for a while.  When walking into a wall, instead of pushing you back like it should, you could walk into the wall and then the pushing back code let you walk inside with controls reversed, leaving you unable to walk out and trapped in the boundries of the wall (basically the reverse of what I was after).  Reversing the conditions for hitting a wall almost worked, except left the controls backwards now outside the walls.  The solution?  Reverse the keyboard controls 😛  Adding sounds was also a big part of the atmosphere, being the only real indicator for how far away the other occupant of the cave is,  That and I like the protagonists plodding footsteps.  I went to grab sfxrfor the sounds at first, but the site apparently hosting it was down.  So I looked around a bit and grabbed and tweaked a few things off Freesound, which a commenter informed me was actually a nono.

Overall the development went pretty easy. I was surprised how long the 48 hours seemed for me, even minus the first half day and first night.  Like pretty much everyone else, there are many things I would do differently if  I was to do it all again, but all up I am fairly pleased with what evolved for my entry.  Not really sure how the game actually plays for other people (after mass playing it throughout development) but hopefully it’s not  terrible.  Good luck getting out if you do try it.

Anyway, this was a little account of my accidentle unintended first Ludum Dare.  I might write up a bit of a afterthought on how the game ended up later, with some thoughts on how it could have been made better if I’d known where I was going when I set out.  I have to say I’ve had rather a lot of fun and plan to take part with a bit more intention and involvment for the next one.

P.S.  Does anyone even read these posts?

Comments

01. Sep 2009 · 12:35 UTC
P.S. Yes.
01. Sep 2009 · 13:00 UTC
Yep, we do read these things.

It sounds like you had a good time! Welcome to LD. I was pretty sure that taking sounds and tweaking them was fine… Better check the rules wiki. Either way, it’s about having fun and making a good game.
01. Sep 2009 · 13:09 UTC
I love the concept of the accidental LD.. :)
01. Sep 2009 · 13:55 UTC
Naw, no one ever reads these things. 😉

Adding an overall game flow loop

In playing through people’s entries I found a lot of them just jump straight into the game and stop when you win or lose.  This is a post intended to inform anyone who doesn’t know how, about a quick and dirty way to create a simple ‘start screen’ -> ‘game’ -> ‘end’ -> ‘reset’ loop in thier game.  I’ve no idea if there is a more ‘proper’ way to do this, but this is quick, dirty, and works.  There may be some differences depending on how your game is structured, but you can fit the idea to most.

First you will need to add one integer variable to tell the program what state the game is currently in (i.e. the start screen, the actual game etc.) called something like ‘gameState’.  Initialize this to 1, corrisponding to the menu screen, so that when the game starts up it shows the menu. You’ll also want to pull out any specific initialization that needs to be done before the game starts into a separate method, not the image loading or any of that, just things like generating maps, reseting scores to 0 and the like.

Now for the magic, wrap any parts that are involved with updating your game in great big ‘if elseif’ statements checking the value of ‘gameState‘.  Leave the normal playing of the game stuff in ‘gameState == 2′.  Now, when at the menu (gameState == 1) draw whatever is needed for a main menu (instructions, keys, intro, etc.) and check for whatever causes the game to start (clicking a button or pressing a key) and when that happens call the game inialization stuff you pulled out earlier and set ‘gameState = 2’.  In the actual game (gameState == 2), when checking for Win/Lose conditions, when they occur (or after a button is pressed after they occur etc.) clean up anything that should be from the game and set gameState to 3 or 4 to go to win/lose screens (or alternativly just back to 1 to jump back to the menu).  If using a win lose screen make sure to have a point in them that will set gameState back to 1, to put you back on the menu.

Using this simple idea it’s quick and easy to create game flow for your game.  You can also have the nice aspect of being able to restart easily by calling the reinitialize method, or to even quit back to the menu from the game easily too.  So please to the peoples out there, add game flow to your game.  It ends up making the whole thing feel like a much more complete and rounded game experience, with only a few minutes work.

Comments

08. Sep 2009 · 13:30 UTC
This is all true, but if it comes down to the wire and I have the option of either polishing up my gameplay and adding sounds (as I did) or adding pre-game and post-game mensu, I’m going to go for polish every time. Most people are scrambling just to finish their gameplay in the last few minutes, and haven’t had time to even think about menus yet.

One week wiser

Thank you to all the people that have played and commented on my entry, much obliged.  I left it alone for a week, wanting to come back to it with a bit of a fresh head and hopefully fresh eyes.  In replaying it a bit there are a few particular points I think are worth talking about, important aspects of the game which I fell I either did or didn’t get right.

-Enjoyability-

Games should always be fun to play in some regard.  Quite frankly, I don’t think the game is very fun.  Winning is largely up to luck and there isn’t much payoff in a play where you lose.  However, most of the aspects discussed below deal with things which would improve this.

-Exploration-

I feel this was simultaneously the biggest success and the biggest failure of the entry.  The torch mechanic made walking around and feeling your way through the darkness fun in itself, giving a real sense of exploring a dark area.  The problem is that there is nothing to find in the darkness, no payoff for the player, destroying any real motivation for the player to explore and making the fun not last.  The ‘monster’ could pretty much be done away with if the area was interesting to explore, using that as the driving motivation for the player to move.  However, during the time frame I couldn’t come up with any good way to generate a random interesting cave.  Which leads nicely to the next point.

-Level design-

Half way through the development the working idea for what I wanted was actually quite different to the random cave with monster.  I wanted to instead have the player start at the entrance to the cave and venturing in.  The cave would be rough at first but slowly leading to a more structured area, with interesting things to see on the walls and such.  Things would slowly get spookier and the area more ancient-temple-like until you got to the heart of the temple.  At this point something would happen and something would start chasing after you, leading to to a desperate sprint for your life, going back along the way you had come and out to the entrance.  Of course I soon realized, as I was getting caught up in the details, I had no chance of doing all that with the time I had left and my ability with the engine I was using.  I instead focused on having some sort of random map, adding a win lose condition and putting some sort of drive and gameplay to the mix.  Speaking of which…

-Game flow-

I think everyone should add a full ‘start’->’game’->’end’->’start’ loop to their game.  I actually got distracted and wrote a whole post on this here.

-Fear-

This was the biggest emotion I was playing with.  I wanted to make something that induced a sense of fear in the player.  I must have succeeded in this to some degree, having had plenty of comments along the lines of “It scared me!”, however I’m not sure if it was the type of ‘scare’ I was after.  What I wanted was the feeling of blindly running from an unknown fear, but what I got was more of the sudden jump scare.  There is some of the former, but I felt more people experienced the latter.  I think a better level design, as mentioned above, would have achieved this better.  However, another aspect of this that I feel I succeeded with was never really giving you a clear view of the ‘monster’.  Trying to look at it when it’s close causes it to speed up greatly, so you can only ever catch a glimpse of it before it’s game over.   Or alternatively. you can only see the tentacles skirting the edge of the light beam.  I did however, want the ‘monster’ to instill more of a feeling of ‘wrongness’, so prevalent in Lovecraftian horrors.  I’m sure there would be a way to do this with introducing/playing on classic game concepts, then breaking them, but that’s still a bit hazy in my mind.

-The rest-

– Sound worked ok, but would be a lot cooler if I could have added left/right stero pan to give sense of direction.

– Ties into level design, but better and more varied floor/wall graphics would be great.  I got caught up in how to deal with perspective and having things covering other things should work with the light.

– Having the ‘monster’ always just move towards you was a mistake in my part, but the simplest way to do the ‘AI’ for it.  A bit more intelligence would be good, but I again got caught up in how to do it.

– Another concept I wanted to play with was to have some aspect of ‘seeing things in the shadows/darkness’.  Just the kind of stuff that might make you suddenly flash your torch at something you thought you saw, only to find nothing there (or perhaps actually find something…).

– It’d actually be really easy to add in the code things which the torchbeam hits that change the colour of the light.  I’m sure there has to be a cool way to use this, but I can’t think of things that fit (Crystals? Stainglass?).

– Sound should have been done in sfxr, which I couldn’t get my hands on during the comp, but have now.

– A col idea from philomory: “Now I think of it, it’d be really sweet if the map changed around you, but I’m only thinking that because this reminds me of House of Leaves.”

-Finally-

There are a number of directions I could take this if I want to expand on it a bit. The torch mechanic would totally work for a quite a few different styles of game and could be a bit of fun to toy around with more.  I think making the more structured level mentioned in the level design bit above might be something I’ll try, if in my head I can work out the small niggles to it.  Any other suggestions people have are welcome too, for anything that I might have missed or things they felt differently about.  Also, thanks for reading (if you made it this far).

LD16

Progress, just missing the actual game part

Had something I wanted to try at this sort of low resolution, and after reading through a paper and a fair bit of fiddling I’ve got the basics working. Not exactly an original idea, but I thought a nice improvement would be to actually try and make it fun. Am I being vague enough here? A screenshot might help a few people catch onto what I’m talking about:

Screenshot

Anyway, will try to add more tomorrow, as it’s far too late already.

FLUDONG – Po(ng)etry in Motion

Image7

There’s a few buggy bits, I somehow got it crashing when you try to do smooth scaling, the code became a beast and I have no idea how well it’ll run on other computers. Many more tweaks that could be made, but it’s done enough to throw it out there. It’s pong with fluid dynamics, kind of like plasmapong in that I used the same paper for the fluid dynamics code, however I tried to actually make the game side more pong-like and fun to play (I always found that plasmapong was beautiful to look at, but the game wasn’t exactly ‘fun’).

I did find out pretty quickly that even at low res, it’s probably not the best idea to do fluid dynamic simulation in a scripting language. Luckily the LuaJIT version of the engine that sfernald posted in this comment (you can download a bare version here, minus the example game) actually did provide a huge speedup and made it playable on my compy.

You can download the actual game code here, just throw the files in the same folder as the LuaJIT executable and run that. More tasty pixel fluid dynamics after the jump.

(EDIT: replaced rar after fixing a small problem, where it told you you lost when you won, and added 2 more palettes. On a side note, sometimes when running it goes very slow for me, in which case if I close and start again it’ll normally be fine)

Image0

Image1

Image5

Image6

Image2

Image3

Image4

P.S. SEKRIT CODE!

Comments

allen
22. Mar 2010 · 20:04 UTC
Wow this is pretty cool. It’s like a retro version of plasma pong.
23. Mar 2010 · 11:48 UTC
Pretty nifty. Though I thought it froze up when I scored, it turns out I just needed to press ‘start’ again.
Gopher
23. Mar 2010 · 12:50 UTC
I had the same reaction, thedaian. The fluid effect looks great! I felt compelled to keep playing until I won, and apparently I’m terrible at pong, so that took a while…
Tenoch
26. Mar 2010 · 04:44 UTC
Awesome! A 48h Plasmapong. It’s true that the low resolution was a good context for heavy field dynamics. And as the others said, it is actually fun to play.

Great work!

LD17

Vote for Fishing.

It is interesting.
It is original.
It is open to interpretation.
It is best.

Vote for Fishing.

Comments

allen
20. Apr 2010 · 01:33 UTC
economics is much more interesting!
crackerblocks
20. Apr 2010 · 01:39 UTC
A compelling argument… voted.
SonnyBone
20. Apr 2010 · 01:49 UTC
FISHING FOR VOTES, ARE WE?!?!?!
GanonsSpirit
20. Apr 2010 · 03:30 UTC
Baked goods as weapons is where it’s really at!
sf17k
20. Apr 2010 · 04:31 UTC
Make a game about a theme then launch a propaganda campaign to get it voted on…clever strategy!
Mstrp2ez
20. Apr 2010 · 06:32 UTC
My handle is Mstrp and i approve of this message.
20. Apr 2010 · 07:14 UTC
… I have wanted to make a fishing game for a while now actually >__>
20. Apr 2010 · 07:58 UTC
Fishing as an abstract concept is even more compelling!
20. Apr 2010 · 09:22 UTC
I support this message.
20. Apr 2010 · 11:09 UTC
I’m all for FISHING in its many forms and meanings!
Sos
20. Apr 2010 · 17:02 UTC
YES! FISTING!

Not exactly my place, but it’ll do.

So I had a bit of a curve ball thrown at me earlier in the week, my computer finally up and died.  So I’ll be working in at my space at the uni here.  Luckily I’ve been throwing everything needed for development onto my portable HD, so I should be good as long as I don’t need to actually install anything.

Workspace:

CRT dual monitor!  It's like I'm at NASA!

CRT dual monitor! It's like I'm at NASA!

Tools will probably be:

-Flash Develop, because it can run off a portable HD.

-Flixel, with the base code JonothanW threw out there… which I should probably look at before we start.

-sfxr and musagi, because DrPetter is King.

-Graphics Gale for graphics, because it does pixels.

Also, food:

Ohhhhhh.  Now with 4 kinds of grain!

Ohhhhhh. Now with 4 kinds of grain!

Tags: food, workspace

This is a Post.

I’ve always loved this switch.

Tags: motivation, poster

The Fishing Mini-Game Challenge!

So Fishing didn’t make it.  However, that does not mean it is dead!  The original idea that spawned Fishing to be added to the themes list was the amusing idea of having a fishing mini-game in another game, so that is my challenge to you!  No matter how mini, or how small, try to put a fishing mini-game in your game.

If you’re thinking making one game is hard enough, here’s simple fishing game logic for you (which I’ll probably use):

  • 3 sprite image – one with pole normal, one with pole being tugged, one with fish pulled up
  • choose random time to have pole pulled down for 0.5 sec and change sprite
  • check for some key press, if pressed while pole is down change to fish pulled up sprite for some 1 sec

Fishing For Life!

Awesome tower of towerness

Haven’t played too many of the games yet, partly because of being stuck playing Hempuli’s Paradise Fort and having too much fun.

Anyway, the tower:

Note the damaged sections where it was HIT BY METEORS!!!

Note the damaged sections where it was HIT BY METEORS!!!

Then after a while longer the rains came, and I looked awawy for too long as the water level rose:

screeny2

Comments

snowyowl
26. Apr 2010 · 05:47 UTC
Nice tower! I admire your ability to not get blown up. Also to find enough stone to make such a massive thing.

LD18

Coding environment

Environment

Time to throw in a post before everything starts, with the obligatory environment-I’ll-be -sitting-while-coding photo.  Note the drink at the ready to the left of the lappy and the notebooks to the right.  All I’m missing now is snacks, which shall be amended with a trip to the 100 yen store around the corner in a moment.

As for tools:

  • I plan to use Javascript and canvas for code, so the result will be playable online.
  • Most code writing will go down in Notepad++.
  • GraphicsGale for graphics, possibly with a bit of dash Gimp.
  • DrPetter for anything sound, if I get around to it.  Err, sfxr and musagi that is.
  • If appropriate, though I have no ideas for it, I might go grab some audio from the festival going on this weekend at the nearby park.

Finally, I might take advantage of the fact I’m working on a tiny laptop and take it out and about to code for a bit.  Change of scenery and all that.

Tags: desk, deskphoto, LD18

Foodum Dare as Weapons

Hrm, hard to think of this theme in a non-mechanic way.  In the meantime, FOODUM DARE!

Banana is supposed to be good for the brain or something right?

BANANA TOAST!

BANANA TOAST!

Also, snacks are esential.  These are from the nearby 100 yen store.  <3 100 yen stores.

Cookies and something with a tanuki on it!

Cookies and something with a tanuki on it!

Tags: food, foodphoto, Foodum dare, LD18

Comments

Fiona
21. Aug 2010 · 00:22 UTC
Banana sandwiches are the king of all sandwiches.
21. Aug 2010 · 00:31 UTC
Japanese food is fun :)

Motivational Distractions and Theme Thinking

It’s a good thing I can’t embed this motivational poster, it might give people seizures (waring: might give you seizures). Click though to see the awesome Distractionness. P.S. it’s all HTML, Javascript and CSS, the CSS to make the layout took a while yesterday as I suck at CSS.

On theme related news, I started as a hater, thinking it’s just a ‘game mechanic’ rather than a ‘theme’. But really you can still interpret it in other ways, just think of the definitions and interpretations of ‘enemies’ and ‘weapons’. If one complains that they can’t make an arty game from this, then you’re too stuck on what those words normally mean when applied to a game. Think outside the screen.

Also, 3 hours gone already ohmy.

Comments

hdon
21. Aug 2010 · 03:47 UTC
heh, I wouldn’t have voted for “enemies as weapons” if I the only interpretation was as a game mechanic (ie. knocking enemies into each other, for instance)
hdon
21. Aug 2010 · 03:49 UTC
Also, way cool how the pattern interferes with itself from one frame to the next! Is there any kind of blurring going on or is it entirely a brain effect?!
21. Aug 2010 · 04:16 UTC
Your distraction demo is totally kicks ass.

Ideas

ideasThere’s an idea in here somewhere, but as usual I’m geting bogged down trying to the language I’m using (this time Javascript and the HTML5 canvas) to do what I want it to.  I need to stop messing around and just get something controlable moving around on screen.  But first to grab some festival food.

Tags: hungry, idea, ideas, LD18

Nearly half not done

Dang, one night down and hardly anything to show for it.  It’s annoying that I most of the code I wrote yesterday is all stuff that I’m sure others have written in the past, all just things to make stuff work.  I really wish that I’d found a Javascript library that did the things I wanted it to and not had to spend so much time trying to work out how to make it do those things myself, rather than just spend that time actually making game code.

Ah well, 2 hours to go until the half way point.  What I’ve got running is next to nothing, just random map generation that’s not in the final shape I want, along with some other classes sorted.  I’m going to sprint through as much code as I can over the next 2 hours, just throwing in a bunch of pseudo code of how things should work, and slowly fill that in.

Also, spagetti with pre-made sauce from last night (now I’m actually having more banana toast).image001

Redirection

So I went for a walk to go get some taiyaki and think about what to do.  I’ve ended up spending so much time getting the basic useful classes I’ve been wanting for working with the canvas sorted that I totally don’t have time left to make what I was originally intending.  So while munching the aforementioned taiyaki (pictured below), I decided on the best course to take now.  I do like the game plan I had in mind and would like to keep pushing at it after the compo, but I also want to finish something for this, so the logical option: Branch the project.

Now it’s a matter of taking these last 13 or so hours, working with what I’ve made so far and making something fun, slightly flashy and not too tricky to code.  Not too much of an ask there.. right?

Nom'd off fish face

Nom'd off fish face

Tags: Foodum dare, LD18

Comments

jakkarth
22. Aug 2010 · 11:08 UTC
Mmmm taiyaki! Ah, the memories. Enjoy it a little extra on my behalf!
22. Aug 2010 · 11:39 UTC
Pretty sure I can’t find something that awesome looking here.
22. Aug 2010 · 12:09 UTC
Yum!

Reinforcements have arrived

image001

I love that 100 yen stores are open 24 hours.  After running into too many walls, and realizing that javascript canvas just seemed to slow without doing lots of tricky things (which I don’t know) I decided to look at flashpunk.  And it it is pretty much exactly the structure I’ve been looking for and partially made over the last week (albeit in flash rather than javascript, but that just means at least some hardware acceleration(including my lappy with the last flash update)).

I visited the 100 yen store around the corner again and grabbed some supplies to last me through the night, while I go through the tutorials on the flashpunk site and try to get something out in the next 9 hours and 39 minutes.  It’s for these reasons that I normally go easy on the caffeine, so that when I want to use it, it actually has an effect.

Tags: Foodum D, Foodum dare, LD18

Comments

Felipe Budinich
22. Aug 2010 · 14:42 UTC
Oh that Ice Coffee thing looks sweet

LD19

FOODUM DARE!

Of ChampionsFoodum Dare is about to start! Who’s excited??

10 Hours to go, or so

Surprisingly I didn’t end up spending the entire LD trying to solve a problem  of doing something well (that generally isn’t something really needed anyway).  There’s about 10 hours to go, and I’ve run out of fiddling to do with it…  now I guess maybe I could use it in some game or something? I’m kind of inexperienced in getting to this part.

What’s I’ve managed to get going is a top down view, with shadows and a ‘sightline’ sort of effect.  Example of it here: http://filebox.me/view/rp56gmvej WASD moves, hold mouse button to look in a direction, and tap sapce a few times initially to drop in some random pillars.  I’d be interested in feedback on how many entites people can go up to before the FPS starts to suffer, if you’ve got the time to drop a comment below.

I JUST REMEMBERED I HAVE PUDDING

It may not be Giga, but it has Pocky for backup.

Not-Giga-Pudding. :(

Comments

19. Dec 2010 · 19:39 UTC
POCKY!!!!!!!!!