Home | Rules and Guide | Sign In/Create Account | Write a Post | Reddit | #LD48 | #ludumdare on irc.afternet.org (Info)

Ludum Dare 30 — August 22nd-25th 2014 — Theme: ??? (Suggest a Theme)
  • Ludum Dare 30 Begins: in 25 days, 4 hours, 28 minutes, 57 seconds
  • [ Real World Gatherings | Ludum Deals (coming soon) | MiniLD #53 ]

    About koredozo

    Hi. I'm DOZO, but that handle was lost forever in a tragic verification e-mail accident. I'm a professional failure at amateur game development. Let's see if Ludum Dare can change that.


    MiniLD #52
    Ludum Dare 25
    Ludum Dare 23

    koredozo's Trophies

    koredozo's Archive


    Posted by
    Monday, August 26th, 2013 1:07 am

    So I was putting the finishing touches on the chess rules, when I discovered that the king could ‘escape’ from checks by pieces like rooks by moving away from the rook (because the king’s previous position blocked its new one from being threatened.) Attempting to fix this bug introduced a bevy of new glitches whose causes are eluding me. All in all, I don’t feel like missing sleep over it or trying to salvage things in the six or so hours I’m likely to spend awake before the deadline tomorrow.

    There’s also no way I would have time to add an AI, so you might as well find a friend to play Ridiculous Chess with.

    I blame my ongoing illness for my failure, so I’m not ashamed of it and I think I did alright for the 24 hours I was actually able to spend working on my game. I might revisit this project later when I’ve gotten over the cough, or maybe do a private 48 hour jam of my very own (I’m gonna need to think of something else to submit to 1GAM.)

    Fool’s mate

    Posted by
    Sunday, August 25th, 2013 9:53 pm


    Almost all of the game logic is in place, except for the more complex rules of chess like en passant captures, castling, and pawn promotion. Those probably aren’t going to be implemented.

    I’m not sure 20 hours is long enough to implement an AI either. Progress is being made, at least, and I should have something playable by the end of the jam.

    King’s pawn

    Posted by
    Sunday, August 25th, 2013 4:27 am

    I finally started to feel decent enough to really get to work fairly late at night, so in what is probably an inadvisable move, I’ve decided to pull an all-nighter to make up for lost time.


    Here you see the opening of the game, with Black ready to move. (I decided to make the player play as Black because the AI probably needs the minor advantage, plus having it move first might help the player acclimate to the mouse controls. Also made some other minor visual tweaks.)

    I’m glad I entered the Jam or I could probably write this off as a failure for reasons beyond my control; as is it still has a chance of getting finished.

    Slow progress

    Posted by
    Saturday, August 24th, 2013 6:22 pm

    What else is new?

    This time though, it’s because I’ve had some kind of respiratory complaint for the past month and it saw fit to remind me of its presence today. I spent most of the past 24 hours in bed or not in an ideal state to work on a game, and got pretty much no concrete work done up until an hour ago. As of now, though, I have a serviceable chessboard and data structure for representing it.


    The bright side is that I have a pretty clear idea of how to proceed from here, both in design and implementation terms, which I think puts me at an advantage over my past LDs. I’ll just have to hope the malaise doesn’t flare up again.

    Oh, I’m also renaming my game Psychic Speed Chess. It alliterates a little better and I have some fun stylistic ideas, though I’m going to make sure the game is fully playable before I start trying to make it snazzy.

    So what’s cooking?

    Posted by
    Friday, August 23rd, 2013 6:36 pm

    First things first: Despite working on my own, I’m doing the Jam, not the Compo. I’d just much rather make use of all the nice stuff one can find on OpenGameArt than spend hours coming up with my own shoddy placeholders. I might still compose my own music, since I like to think I’m pretty decent at that, but I’ll leave that until last and only do it if I have enough time.

    Also, I already have an idea, and a descriptive title for it: Telepath Speed Chess. You can probably guess that this means each chess player has ten seconds to move. The interesting part is going to be coding an AI that thinks ‘slowly’ to put the human player on a fair footing; Telepath refers to the fact that the game will display insights into the AI’s thought process.

    I’m not sure that was the clearest of descriptions, but you’ll see soon enough. I’m also not sure if this game will be all that fun, but well, I won’t know until I try it. Time to get to work!

    I’m in this time

    Posted by
    Thursday, August 22nd, 2013 6:11 pm

    Unless the theme is really uninspiring again, of course. This looks like a pretty decent set of themes, though, so I think I’ll be able to come up with a good idea.

    I’ve also learned my way around Unity since the last LD I was in, so hopefully I won’t spend half the time limit struggling with my tools.

    Stealth Slime is live

    Posted by
    Monday, December 17th, 2012 8:16 pm

    Dungeon Leaper was renamed Stealth Slime (because I ended up having some issues with the ‘leap’ code, and who heard of a leaping slime anyway) and has now been submitted. I suppose I should write something in the way of a postmortem, though I don’t know if anyone reads these blog entries.

    This LD really hammered in the importance of knowing your tools before the theme is announced. I had the same issue last time to a lesser extent, so I should have been prepared, but deciding to enter again was a bit of a last-minute decision and I didn’t have time to learn the ins and outs of Canvas beforehand. To keep up the trend I’ll probably switch to Unity next time.

    Also, I should probably plan on entering the jam rather than the combo straight away unless my idea goes well with an abstract art style, because my programmer art isn’t going to impress anyone. I think my music is decent, though!

    It was pretty fun and I’m a little more pleased with my entry this time, so I’m glad I decided to participate again. See you next LD!

    It’s jam time

    Posted by
    Sunday, December 16th, 2012 6:45 pm

    Sound trails

    As predicted, I am not finished in time for the compo, and doubt I can get there during the grace period either. Spent most of those last two hours figuring out how to properly animate sound trails for my hero.

    He can also see the villanous monster (if there’s nothing in the way and he’s facing the right direction) and react by printing “saw you!” to the Javascript console. Unfortunately, I don’t think this serves adequately as AI, plus I need to add a way to let the player and hero defeat each other as well.

    Let’s hope I don’t run into any more technical issues and can get it all done in 24 hours!

    Probably won’t make it.

    Posted by
    Sunday, December 16th, 2012 5:02 pm

    Too little, too late

    I have real sprites now and a hero wandering around, but I doubt it’s going to be a game worth playing within two hours. I’ll probably submit it as a Jam entry if the extra day gives me time to finish it.

    Kind of ironic- in LD #23 I have a lame, barely themely idea but finish it comfortably in time, and this LD it’s the opposite. Oh well.

    It works!

    Posted by
    Sunday, December 16th, 2012 1:27 am

    I have seen the light!


    After banging my head on the wall for a while, I started trying things at random and fixed the showstopping bug via the sophisticated method of renaming some loop iterators from ‘x’ and ‘y’ to ‘j’ and ‘k’. I guess it was some kind of scope/previously initialized variable issue. Due to the aforementioned lack of layer blending, I doubt I can get the lighting to look any nicer than this, but I’m content with it.

    Unfortunately, my game still suffers from two major shortcomings; it has really sluggish controls and it’s not a game. I’m not sure if I have time to fix both, so I’ll focus on the former.



    Totally bogged down

    Posted by
    Saturday, December 15th, 2012 11:53 pm

    Lighting is important for my game, so I need an LOS algorithm. Unfortunately my attempt to implement Bresenham’s is not working on the Y axis for unknown reasons, and KineticJS and its lack of (clearly documented) layer blending is not helping me debug it. I think I’m going to have to switch to another one.

    Here’s a screenshot anyway. As you can see, the ‘lighting’ layer is completely obscuring the placeholder player graphic as I’m unable to tweak its opacity.

    All I have to show.


    Another argument in favor of learning your tools before LD starts, I guess.

    First Steps

    Posted by
    Saturday, December 15th, 2012 3:09 am

    Took a break from content creation. It’s probably a smarter move to do some prototyping first anyway and worry about visuals & audio later.

    I tried using JavaScript for about an hour or two and found out I couldn’t bear to program without tuples and list comprehensions (Python is my usual programming language of choice.) So I went hunting for alternatives and discovered CoffeeScript. It’s similar enough that it feels like home, though I did encounter an amusing case of… unexpected behavior where testing for “array.length = 0″ resulted not in the syntax error I would expect, but the array mysteriously becoming blank (in other words, length 0.)

    I’ve successfully implemented a very lazy dungeon generator; it creates a maze and then carves some rooms out atop it, with the maze guaranteeing connectivity. It’ll do the job for what I have in mind, though the corridors with dead ends might be a bit hard on players.

    A lazy dungeon

    Fashionably late again.

    Posted by
    Friday, December 14th, 2012 9:59 pm

    This Ludum Dare doesn’t overlap with Guild Wars 2′s launch weekend, so I’ll be giving it a shot. It does overlap with their holiday event, but I can live with that (plus all the events will be doable for weeks to come in Lion’s Arch anyway.)

    Surprisingly, I came up with a solid idea right off the cuff this time. Due to my love for puns, my entry is going to be titled Dungeon Leaper.

    I’ll be doing it in HTML5/Canvas this time. Why? Because LOVE2D had some issues, the last LD I participated in had someone going around and posting nasty comments on every game that wasn’t web based, and it doesn’t hurt to broaden my skill set. I should probably have made an effort to become familiar with it before the compo, but I don’t expect this to require any particularly complex programming.

    Rather than plunge myself into the unfamiliar wilds of JavaScript right away, I’m spending tonight on content creation – I already have half a theme song and I’m going to try for a slightly less abstract look, despite my lack of any real pixel art ability. We’ll see how it goes.


    Posted by
    Sunday, April 22nd, 2012 4:44 pm

    Well, in the end I wasn’t able to come up with good menu music or get that particle system to display, so I suppose my game is finished. There’s an hour and a bit left still, but I doubt I could do much more within that time to improve it – I’m not expecting too many people to play it anyway over all the sexy stuff I’m seeing on the front page.

    Lessons I’ve learned:

    • Don’t be afraid to spend a while coming up with a better idea – 48 hours is longer than it seems.
    • LOVE2D is neat and fairly easy, but knowing your tools beforehand would save trouble.
    • Unless the next LD48 theme gives you a great idea that can be done with abstract graphics, plan on entering the jam instead of the compo next time, so you can use art that other people have released for free.
    • Do more game jams!
    • Belatedly, I guess lesson #5 is to test your game more carefully before you submit it. Even if you didn’t expect that last minute tweak to break anything, it just might have.

    I’m happy I participated, modest as my creation is, and if anyone manages to have fun with my game for a few minutes that would be cool. See you at PyWeek!

    All posts, images, and comments are owned by their creators.

    [cache: storing page]