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

Ludum Dare 26 — April 26th-29th Weekend — Theme: Minimalism

  • Judging Ends: in 23 hours, 48 minutes, 36 seconds
  • Play and Rate Games | View All Games | Edit | View My Entry
    Twitter | #ludumdare on irc.afternet.org

    [ Warmup Weekend | Real World Gatherings | Tools | Ludum Deals (yep, we got it) ]


    About Covenant

    Entries

     
    Ludum Dare 26
     
    Ludum Dare 20
     
    Ludum Dare 18
     
    Ludum Dare 16
     
     

    Covenant's Trophies

    Covenant's Archive

    Postmortem: Particles

    Posted by
    Friday, May 3rd, 2013 6:14 am

    After almost a week after the competition, here’s the postmortem for “Particles”, my LD #26 entry…

    screen11

    What went right

    - Again, my wife helped me with the brainstorming of a simple idea that was doable early on, which let me focus on developing soon, instead of just dicking around with some concepts

    - Theme… Although I wasn’t a big fan of the theme this time, the fact remains that it restrained me a bit and I managed to pull a very complete game.

    - Time for level design: this time, I budgeted and got to work about 3 hours or so in level design, which was great for the overall feel of the game, making for a more interesting and cohesive experience.

    - Development plan: making a development plan early on really helped me keep the game on track… Although I could only “finalize” it later in the first day, it really gave me a good perspective on what I could achieve

    - Focus on gameplay mechanics: I’m more of a story guy, but that usually lead to games that require a lot of content, which is kind of a no-no in 48-hour compos… This time, by focusing on the gameplay, I could fine tune the game and add the extras I wanted.

    - Motivation: since I was seeing cool stuff happen on screen (and I did it fast), it started getting my creating juices going, which helped me keep me motivated for the 20+ hours it took me to actually develop this.

    screen09

    What went wrong

    - Music: I usually use Wolfram Tones to build the music, but someone pointed out in a previous compo that their user agreement doesn’t allow to use it in this way, so I had to find another way to make music… But I don’t have any decent tools for it and I couldn’t find anything that really allowed me to create something fast that I could master easily… I tried out iNudge and some other stuff, but I ended up resorting to a friend of mine that’s a musician. He has all this gear so he was kind enough to teach me how to use it and leverage it to make at least one music for the game… although it took me 3 hours to get it right!

    - Particle physics: It took me forever to fine-tune the particle behavior, since the standard “magnetic” equations weren’t making for a fun game, which is kind of more important than actual being physically correct… I ended up by having lots of small parameters to adjust and specialized code to handle some circumstances so that the game felt right without being right.

    All in all, it was one of my best entries ever, and considering the feedback I’ve been having so far, it seems people are enjoying the game…

    This is why I intend not only fixing some bugs reported, but also improve the graphics a bit (get rid of Comic Sans, for example!), besides adding levels and new mechanics to the game in the near future…

    You can download the game here, and the source here. If you took part on the Ludum Dare 48-Hour competition, you can go here to vote for my entry.

    If you’re too lazy to download and play stuff, you can always check the video below:

    http://www.youtube.com/watch?v=IgRfgHjTalA

    (would love to find out how the hell I embed videos on the posts)…

    Done!

    Posted by
    Sunday, April 28th, 2013 4:00 pm

    Game done, and I have 3 hours to spare! Smile I think it’s the first time I finish with time to spare and that I actually had time to create levels with some care (instead of just throwing things at the last minute). The game is a bit hard at the end, but keep at it and finish all levels with 100% completion and you’ll get a bonus level as well!

    Fully tested, played through it one last time (so I don’t repeat the issues of last time)…

    This game was really fun to develop, I got more out of the gameplay than I expected, although some elements kind of got lost in middle…

    I’ll write a postmortem eventually, but not today.

    Anyway, you can check my entry here. If you participated, vote for it, please!

    screen13screen12screen09screen11

    Looking forward to doing some voting, there was really interesting stuff going pass on the blog!

    Good luck to all the jammers (and whoever is still working to finish the compo!)

    Almost done…

    Posted by
    Sunday, April 28th, 2013 1:49 pm

    Not been blogging because I’m getting late on my schedule…

    Just came back from a friend’s house… he’s a musician, so he has keyboards and cool programs to play around and he taught me how I could make a song for the game…

    Unfortunately, it took me so much time to make one song that I couldn’t do a victory one as well…

    Anyway, got all levels up and running, including the secret bonus level, just missing tutorial system (I hate writing these), and some polish (save game state, highscores, etc), besides the final testing of the game in “Release” mode…

    Options are also working, including the colorblind mode (hope this works fine, let me know if you test this game and you’re colorblind, I’m interested in your insight!)

    Anyway, I’m pretty happy on how this is turning out… I gave up the previous 2 times I took part in the compo, so I was in dire need of actually finishing something, and this one ended up being quite fun to program and playtest!

    A couple more hours and I’m done…

    Schedule13

    Anybody colorblind?

    Posted by
    Sunday, April 28th, 2013 7:48 am

    Hey guys, I’m thinking on adding a colorblind option in my game, considering being able to distinguish colors might be important…

    Problem is, I don’t have the time to do the proper research, so I was wondering if anybody out there is colorblind and can help me choose the primary colors of the game…

    The game uses a 3-color palette for the particles:

    colors

    These colors are 0xFF0000, 0x00CC00, 0x00CCFF respectively…

    What should I replace these with so it’s more friendly for colorblind people? Or at least the majority of them (I think there’s different kind of colorblindness)…

    Oh, and they should be able to work on a white background… If it isn’t possible to find 3 colors that show well on a white background, I’ll have to invert the palette of the game, which is a bit more work (but doable)…

    Thanks for the help in advance!

    A bit behind schedule…

    Posted by
    Sunday, April 28th, 2013 7:45 am

    For the first time since I started this compo, I’m behind my schedule! Gasp!

    Anyway, not very serious, since I did a lot of code for other tasks further ahead, specially in the polishing department…

    Anyway, finished the scoring, high-score, end game conditions (including space for the bonus level!) and flow between all of these…

    Next step is doing some more levels… Still thinking if I should put a time-limit of sorts in the game, but I don’t really think it will improve the game that much… At least, not for the type of levels I’m thinking…

    screen12

    Current schedule:

    Schedule12

    Title screen…

    Posted by
    Sunday, April 28th, 2013 5:31 am

    Finally, my game has a name… “Particles”… Yep, even the title is minimalist… Smile

    Anyway, here’s the title screen:

    screen11

    Impressive, I know…

    Anyway, the options currently don’t have anything, but I want to add there the option to turn on the tutorial on/off, sounds and music on/off, and a colorblind mode…

    The game relies a bit on the three primary colors (red, green, blue), and as far as I know, some colorblind people can’t see the difference clearly between them, so I was wondering if anybody that’s colorblind could give me a hand in adding this to the game…

    The 3 primary colors in the game are:

    colors

    So, basically what should I replace these with?

    These colors are 0xFF0000, 0x00CC00, 0x00CCFF respectively…

    Anybody?

    Anyway, I’ll add this if I have the time… had to change the schedule a bit, I’m going to take longer making the music, since a friend of mine has a lot of gear and I’m going to his place to use it to make the music with his help (guiding me in the tools, etc, since I’ve never worked with professional stuff)…

    Schedule11

    Explosions!

    Posted by
    Sunday, April 28th, 2013 4:05 am

    I really love particle systems… so little work, so much bang!

    screen10

    When a particle hits a wall, now we have a nice feedback… The way I’m building this is a bit inefficient, but this is not exactly a GPU intensive game… Smile

    Anyway, I’m running some minutes behind schedule, but everything’s under control (I think)… now the though part: making the main menu and finding a name for the game… Since I don’t have a story (the game is abstract), it’s harder to figure out a name… Candidates are “BoomParticle!”, “Quarkxplosion!”, “TakeTheParticlesToTheExit!”.

    Schedule:

    Schedule10

    Level design

    Posted by
    Sunday, April 28th, 2013 3:14 am

    Been working on level design this morning, I have the 6 first levels (the tutorial levels) done…

    I’m still getting the grips with the game mechanics, trying to figure out what’s hard and what’s easy to do, what kind of difficulties I expect players to have, etc…

    My wife’s been beta-testing the levels for me, and so far the game looks fun (I lack objectivity on it, since I’ve played too much already)…

    screen09

    Going to add a mini-explosion to when we lose a particle… there’s little feedback at the moment on it…

    I’ve also been thinking about level-done conditions (more than 50% particles saved? More than 75%?), when to trigger it (if I trigger as soon as the condition is reached, there’s no space for “bonus points”, but if not I might risk being stuck if there’s a forgotten particle somewhere), and the retry system (infinite retries? Limited? If infinite, scoring makes little sense, unless I reduce the score based on the amount of retries on a specific level)…

    And there’s also the business with the name of the game… no idea on what to call it! Disappointed smile

    Schedule09

    Better attractor selection…

    Posted by
    Sunday, April 28th, 2013 2:12 am

    As I mentioned previously, I was wondering if the type of attractor on the mouse should be done through keypresses or some kind of environment element…

    Well, I’ve tried it with the environment element:

    screen08

    When the player passes through any of those panels in the floor, the cursor will start attracting only the color on it for a certain duration (adjusted per pile)… This seems to work better in terms of gameplay, so I’m probably keeping it for the future.

    The element for the floor tile needs some graphical work, since it can be confused with a door/wall…

    Anyways, going to work on some level design before moving on to the polish phase… think the main game elements are done at the moment…

    Current schedule:

    Schedule08

    I’d like to have music…

    Posted by
    Saturday, April 27th, 2013 12:14 pm

    …but I can’t seem to find the right way to do it…

    To unwind, I went and searched for a way to get music for my game (although it’s only scheduled for tomorrow)…

    I’ve played around with iNudge, and although I managed to get a decent enough song for my game, I can’t seem to find a way to save it… besides, I don’t know the license on it as well, although I guess it’s ok to use it (since it’s on the tools page of the compo)…

    Also tried the trance generator on www.anticulture.net, and some of the songs generated are quite good (with some tweaking, but since it exports MIDI, shouldn’t be too hard to achieve)… but again, can’t find if we’re allowed to use the music generated in a game…

    In previous compos, I’ve used Wolfram Tones, but someone pointed out to me that their license doesn’t allow for use in a game and such… Sad smile

    I could grab my electrical guitar, but I doubt I’m skilled enough to build a song for this sort of game with it…

    Hopefully, I’ll find something that I can actually use or I’ll have to remove the cobwebs of my old Impulse Tracker and find me some sample banks! Smile

    Attractor fail!

    Posted by
    Saturday, April 27th, 2013 10:57 am

    It’s funny that some things that look well on paper turn out to be terrible when implemented… Case in point: the attractors…

    Just added attractors to the game, which behave as the mouse and can attract and repulse elements:

    screen06

    The result is terrible, from a gameplay perspective… Either they’re too strong (and they bypass our own attraction on the mouse cursor), or they’re too weak (and do nothing to help or hinder the player)… The behavior was different from what I was expecting (I was expecting a kind of “negation zone”), but it is actually correct, although not fun at all…

    I might use them anyway to impede some paths (although I can use just walls for that, to be honest, no difference).

    I have also implemented moving attractors, to see if they could be salvaged… although they’re a bit better, adding a measure of challenge in some sections, they’re still very weak as a gameplay mechanism:

    screen07

    Problem is that I don’t know if I can make a compelling game with just walls and blocks… My wife seemed to have fun with just those elements, but I don’t know how fun that actually can be in the long run… Maybe I’ll have some new idea in the meantime, since I’m still on schedule… I still have to consider the attraction change issue (keypress vs environment control) anyway, and if I decide to go for the environment control, the attractors might be a good element again (although I doubt it)…

    Current schedule:

    Schedule07

    Options galore…

    Posted by
    Saturday, April 27th, 2013 9:45 am

    Colored walls now!

    screen05

    Colored walls don’t affect particles of the same color… Same applies to blocks!

    Still not sure what’s the best option for changing the attraction type… Currently, it’s keypress driven (as you can see in the lower right corner), but I still think that having areas on the screen that change the color of the particles or the cursor (really the same, it’s just a matter of duration of the effect) might open new options for the gameplay… Probably will have to code it to try it out, which will mean less one hour or so of polish-time (especially because I’ll have to be social tonight, so no late night coding for me!) Smile

    Anyway, this is going fine… If I’m lucky, I can finish all the gameplay elements today, which means I have all the day tomorrow for the polish (levels, menus, sound, music, etc)…

    Schedule06

    Ahead of schedule, nice!

    Posted by
    Saturday, April 27th, 2013 8:28 am

    I’m 1h40 ahead of schedule, incredible! Smile

    Schedule05

    Interaction between the particles and the level end block was easier than expected…

    The game is also shaping up a bit, I’m starting to have a lot of ideas on extra elements for the game, although I’m still not sure on how to get them all together in a fun, level-based design.

    Now, complete with moving blocks:

    screen04

    Next up, one of the new elements: colored walls that only let pass certain colors… of course, for that to make sense, I need to have control on the type of color I’m attracting with the mouse. I have two choices: I can base it on keypresses (which kind of defeat a bit my idea of minimalist gameplay, but might lead to a game that’s more fun), or there might be elements that either change the color of the cursor (changing what it attracts) or changes the color of the particles for a certain time (or forever, not sure).

    These are the small decisions that I usually have a lot of fun with when I have more time, but when I have so little time to develop a game, I’d like to have a magic ball that gives me the answer right away! Smile

    Is this fun? Dunno…

    Posted by
    Saturday, April 27th, 2013 6:51 am

    Still don’t know if my idea with result in any fun whatsoever, but I have the level loader already working, from a text file:

    screen02

    This one is ugly even for my standards, but it’s also minimalistic, which was the goal… I’m really no good in building “small” stuff… My dreams are always so much larger than what I can build (either in compos because of time-constraints, or outside of them because of too big of a scope and an obsession with “perfect” code)…

    Anyway, still on schedule (only by 10 mins, but it’s something!):

    Schedule04

    If I had a clear idea on what I’m aiming to build, I might have a more comprehensive schedule, which was my idea on the start, instead of just having the next few tasks defined…

    Still not sure where I’m going…

    Posted by
    Saturday, April 27th, 2013 5:57 am

    Progress has been steady and on schedule so far:

    Schedule03

    Currently, there’s particles, and they follow the mouse cursor (or any attractors I define, the code is general)… It took me some measure of tweaking the parameters until I got something similar to the behavior I wanted… Ended up by defining the force applied to the particles as “force=delta_v/sqrt(dist)”, instead of the classical gravity-like “force=delta_v/sqr(dist)”… The particles are more reactive this way… Also added a “drag coeficient” to the particles, so they lose about 25% their energy each animation iteration… This will avoid them just shooting off screen in some fringe cases…

    screen01

    I can setup the attractors to affect only some colors (currently it’s just a RGB mask, but that might change).

    Although it’s fun moving the particles around, I’m not sure if this will make an actually fun game… But to test that, I need to add the “level”, in a form of a maze of sorts… I expect I’ll have some other attractors and moving walls on that, but everything’s open at the moment…

    I never thought how “minimal” is the complete opposite of what I usually think of in terms of game design (although I guess it’s a good way to design things: start with something big and subtract until you’re left with just some core mechanics, then you can add stuff back… I think it might avoid excessive padding in the game)…

    Simple idea…

    Posted by
    Saturday, April 27th, 2013 2:26 am

    I was thinking about an idea that I could implement with a terribly simple input mechanism… I’ve decided on only using the mouse position (can’t be much more simple than that, I guess)…

    The idea is that the player attracts some particles (pixels, so keeping with the minimalist approach) with the mouse cursor… The behavior of the particles is physically correct, so if we don’t move the mouse cursor carefully, we will force the particles to overshoot and hit the walls of the level…

    The level is comprised of a maze like structure (keeping it simple for now, but I might extend that with other attractors and moving walls). If a particle hits a wall, it’s lost…

    The objective is for the player to reach the end of the level only losing a certain percentage of the particles… Seems simples, but with the addition of a time limit, it might be enough to make a simple fun game…

    I don’t have a name for the game yet, but it will come to me… Smile

    Anyway, here’s the revised schedule:

    Schedule02

    So, minimalism…

    Posted by
    Saturday, April 27th, 2013 1:20 am

    So, there’s the theme… As a lot of people have pointed out, almost all LD games are minimalist by nature, being time constrained…

    I’ve already made a schedule in Excel, considering break and sleep times… I need to figure out an idea to be able to fill in the blanks:

    Schedule01

    I’m thinking on an idea around gameplay minimalism and do it with minimalist graphics and sound…

    First thought was a “one-button-game”, but I think that may take more effort than I have available (even with minimalist graphics, it’s still a lot of stuff to draw with my puny art skills).

    So, I’m thinking puzzle game… One simple mechanic, one simple set of graphics, lose my time building levels and such…

    I still have 40 mins remaining on my schedule to have an idea…

    Let’s see how this goes…

    Posted by
    Friday, April 26th, 2013 3:35 pm

    Again, I intend to take part in this glorious event… unfortunately, I didn’t finish any of my last entries on this, since I lost the motivation to work on the games midway… a good idea is usually very important to me to finish a game, and I feel my latest ideas with the themes at hand were crap…

    Anyway, rooting for “Survival”, but I won’t get my hopes up, since it never pans out! :)

    I’m going to use my old framework (the same I’ve been evolving for these competitions, while keeping within the “no-gameplay code” rule)…

    You can download it from here, if you’re interested… it has a couple of test applications so you can see how it works… It features:

    • D3D9 initialization and some helpers
    • FMOD interface for sound
    • 2d Sprites (with sprite caching, etc)
    • 2d Particle System
    • Text
    • 3ds file loading (only tested with 3ds generated by 3d Studio Max). Loads lights, meshes and cameras.
    • Small simple math library (vectors and quaternions)
    • Simple 3d camera handling system (just with a “look at” operation)
    • XML loading/saving (might come in handy for configuration files, load/saves, etc. The XML loader was created by Frank Berghen, not me… the writer is all me, although the loader also has save functions, but I’m too lazy to figure out how they work)
    • 3d particle system (based on the 2d one, so very rudimentary)
    • 3d sprite system (quads that always face the camera)
    • LUA library support (it’s actually ripped from my engine, so it’s a good support system for LUA)… Last time I used cutscenes and scripting, and loads of the game code was much simpler because of that…
    • DDS image loading for an offscreen buffer (just supports A8R8G8B8 images). Might be useful for some level design stuff, although I’ll probably go back to my old days of text files.
    • 3d Tilemap (Kind of a blocky heightmap with an automatic texture atlas generation and partition of the map in chunks for possible culling (not implemented)).
    • Simple geometry generation (quad, cube, spheroid, caps and cylinders)

    The tools I intend on using are:

    On the tools side:

    • Visual Studio 2010
    • Photoshop CS5 (for 2d graphics and textures if I decide to adventure into 3d, and for map creation, etc)
    • 3d Studio Max (for modelling if I go 3d, or for title screens and such otherwise)
    • sfxr (or Bfxr) (for audio effects)
    • Live Writer for blogging

    Still don’t know what I’m going to do about music, but I’ll figure that out if I get to that point… I’m also probably going to try to structure the project better than usual, by making an initial timeline, scheduling my pauses, etc… Want to see if that improves my workflow…

    So, good luck everyone! And may “Survival” win! :D

    Throwing the towel…

    Posted by
    Sunday, April 22nd, 2012 2:24 am

    I’m ashamed to say that for the second time in a row, I’m giving up…

    There’s 15 hours to go, and all I have is a voxel engine and no idea on what to do with it… And because I have that voxel engine, I’m having even more difficulty having ideas that fit the theme…

    I’m more of a “huge thinker”, not a “tiny thinker”… And just making a normal game but set it on a tiny world doesn’t appeal to me, since my idea is that a game with the theme “Tiny World” couldn’t be done in a big world (the “Tiny World” has to be part of the gameplay, not just a setting).

    Why couldn’t “procedural generated” have won?! Smile

    building_stuff

    Anyway, good luck everyone!

    Raycasting working, woot!

    Posted by
    Saturday, April 21st, 2012 9:04 am

    Contrary to my expectations, I got raycasting working… It’s not perfect, and I still need to identify which face the cursor intersected with, but it works nevertheless!

    raycasting

    Next step, finding which face it has intersected, and actually create blocks (updating the voxel representation)…

    I might have to call it a day in an hour or so, since there’s a concert tonight that I wanted to see… Ah, the difficulties of juggling game development and a real life! Open-mouthed smile


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

    [cache: storing page]