From scratch?
August 24th, 2009 2:21 amThe definition of the Ludum Dare competition is:
“Ludum Dare is a regular accelerated solo game development competition. Entrants develop games from scratch in 48 hours, based on a theme suggested by community.”
But it seems we are doing things less “from scratch” than we used to. People are now using full fledged engines, physics libraries, their own engines, etc. I don’t think this satisfies the definition anymore.
I’m not necessarily saying this is a bad thing. After all there is limited fun in reimplementing texture loading and opengl setup in every competition, especially since all those simple things can very easily add up to whole day and leave only half the time for more creative tasks. But have we gone too far?
Is LD48 a competition meant to be from scratch or using existing engines? What do you guys think about that?
And now, you kids can get off my lawn…
What’s this about reimplementing OpenGL setup? Back in my day, we called interrupts with the assembler and we liked it!
I think the line is blurry, and if we exclude too much stuff, we’ll also be excluding a lot of good entries. I think one problem we do have is that people are starting on vastly different lines, but I think in the end it’s the creativity that’s important, not the technology, and you should choose tech that enables your creativity the best.
Yes, let’s all take a bunch of transistors and start soldering.
Seriously though, as there’s no real prizes, this thing can and should be a bit relaxed. I’ll change my mind when someone clearly beats everyone else using an engine.
Most of the time the best entries have been more “from scratch” than “hey, I modified this engine example, isn’t it cool?”.
Relax, mon. =)
Yeah, but I’m just jealous that I never manage to prepare anything in advance or learn to properly use an engine before the compo and always end up messing with basic 3d stuff most of my week-end while Unity users have something nice looking in 3 clicks with awesome projected shadows and stuff
Then vote them down. =)
from scratch is gameplay… anything else (engine) may be pre-writen no?
Mikea,
That’s pretty much how things are now. In the first compos, from scratch really meant no engine, no pre-written code of any sort and only low level libraries were allowed (also we had to walk for 5km in the snow to submit our entries, uphill… both ways)
If you end up messing with basic 3D stuff for most of the weekend, don’t you think you should be grabbing an engine like Unity too?
Off course I could, I just need to make sure I do enough preparation so that it can really be an advantage (have a working pipeline for exporting graphics and stuff, know the engine well enough etc.).
But I kind of like doing things myself
and the more things are prepared in advance the more I feel like I’m going against the “from scratch” spirit of the compo but maybe that’s just me and I shouldn’t feel that way (it looks that way from the comments so far).
Hmm. Well, the rules page did make it clear that this stuff is allowed (http://www.ludumdare.com/wiki/ld15:libs).
My thoughts:
It is about making a _game_ from scratch, not the engine / infrastructure, so only game logic and content should need to be from scratch. We’ll get better games, and avoid confusion over whether, say, using SDL or Construct is “from scratch” enough.
I guess it depends what kind of competition you want to have? But a from-scratch-we-mean-it-no-flash-no-gamemaker-no-unity 48hr compo sounds much less interesting to me.
Host a really-from-scratch weekend at some point =)
as others have said, ‘from scratch’ in ld’s case means all game logic and assets were created in the 48 hours. and i think that while, historically, voting has been far from unbiased, unity games haven’t had any better performance than other 3d games, and usually have done far worse. if the compo has any kind of ratings skew, it tends to overvalue ‘funny’ games, not the ones that look outrageously pretty.
Yep, don’t worry about other people since there aren’t any prizes. If someone else makes a great game, it’s always because it’s a great idea, not because of the engine. Do whatever you need to in order to feel comfortable that you can build a good game in 48 hours.
I suggest that we have a section where different library systems/engines are laid out for people to browse. Maybe new folks would look there and figure it out, rather than coming up with their own definition of “from scratch”. Imagine a set of pages: SDL, OGRE, Allegro, Construct, Love, PyGame, … Then each page contains groups of libraries that are often used with that system, common configurations, or something like that.
This thread pretty much echo’s my thoughts. Personally, I’d like to see the community work at and find ways to bend and make the most of the rules. SFXr being a great example of this. Not so much have everyone focus on content generators, but on the processes itself. How we can all go from nothing to something decent in the least time possible.
In my mind, the rules are just a complicated way of enforcing good copyright practices. That way, all the games we create truly belong to the creators, allowing them to take them places like iPhone and beyond.
As it’s been said, it’s about games. Bottom line, we want you all to make cool stuff for yourselves.
Doesn’t the open source requirement jeopardise that? I imagine that discourages a lot of people…
A simple example; if you make a flash game open source, you can’t get a sponsorship for it.
I’ll double check what’s written, but the source sharing is mostly an honesty enforcement rule… not that it’s ever been in contention. Unless I screwed up, the wording shouldn’t say you need to GPL your work, but simply are encouraged to share source.
Actually, I notice that an open source requirement is no longer mentioned on the rules page! But it’s still listed as “required” on the submit page.
I made a small edit. Hopefully Phil doesn’t catch me.
I think submitting the source should still be required. Just letting people examine the source code doesn’t automatically make something FOSS and looking at how other people do things is (IMO) a pretty decent way to learn new tricks and improve your own coding.
Maybe this isn’t realistic for a Flash game, but I expect that every game I write for LD has to be tweaked and finished with levels added, etc. after the competition. Open the source for the weekend, close it thereafter. It’s your property.
Oh, totally – and honestly, it’s not a problem for me (I’m probably going to use Unity this time). I just think it’s one rule in particular that probably puts people off.
Personally I don’t generally tend to use libraries; but this time I’m putting one together to at least be on the same footing as people using SDL and such
I’d much rather go completely from scratch, but building rasterizers isn’t really what it’s about, or a good way to make a game (though, is so much fun….)
Sure I could spend most of my time implementing physics and rendering from scratch, but I think we all know thats not what makes games cool, so I’ll use unity and whatever else I can get my hands on to make what I want asap.
its not like we are using ‘game generators’ or anything, I think the ‘game logic has to be made within the time’ is the most important part of the compo. as long as we arent crossing that I think people should use whatever they want to create their vision.
plus votes are made by people with know-how, if a game was made with nothing more than a ‘click to make game’ approach its going to get voted down by the people who put effort in anyway. it balances out.
I agree. When LD starts, I get completely naked, erase my memory, and start banging rocks together until I make fire. The next couple hours are spent recreating the events of the first million years of human civilization. By then I’ve got a game design concept carved into an obsidian stone in 12 different languages, which is taken by aliens and sent through the farthest reaches of the universe. The next hour is spent programming a clone of MS paint so I can draw every frame individually (no time to develop copy+paste), which I print out to make a flipbook for every possible combination of user inputs. I make videos of all these and develop a heuristic prediction algorithm which will figure out exactly how each user will play the game based on which letter in the word ‘Download’ the user clicks on to get my entry.
After the competition I get right to work on a robot which will play every entry and give random scores in each category except humor, where everyone gets 0′s so I can win.
Isn’t that how everyone does it?
More or less.
I’m pretty sure that the rules say to start with a pile of amino acids…
In the beginning, there was darkness…
…but then this is a 48 hour competition, not 7 days
Right. I save the ‘starting from darkness’ thing for PyWeek…
Well as I see it “completely from scratch” is not truly possible or you may filter out a lot of development environments/libs to put everyone on the same tracks. Like Unity/Flash have a lot of bonuses to make graphics quickly. In same time DirectX/OpenGL does give bonuses too. Being to strict will just filter out a lot of stuff making a lot less people interested.
I honestly think that we are here to make games no meter what tools we use and I think it is natural that Unity is better the assembler at it. So why should we limit game making creativity in favor of hardcore programming?
The dividing line between tools and logic/assets is a good one.
For LD14, a huge part of the value I got from participating was seeing what tools other people used. If it’s not an immediately productive tool, people in a 48-hour competition won’t be using it, and that’s probably a reasonably good metric for the value of the tool in general. If everyone starts with main() { return 0; }, that’s great for pure bravado, but it doesn’t reflect the state of the industry.
Anyways, as I see it, the rules are simple.
48 hours are over. Did you make a game? You won!
What I’ve been doing the past few times I’ve entered, is taking my engine and adding some new feature to it while doing a game to use that feature.
GEvOlve added an OpenGL renderer ( which was shockingly bad, hehe.. and was more or less replaced with Horde3D when I used it for DareToBeDigital 2008 )
Little Quirks added dynamic re-colouring for sprites in SDL ( in a very quick and hacky way that provided “colour clash” .. I’ll try get round to posting up how to do it at some point )
And this time, I’ll add something like camera support for scrolling, or some layer sorting stuff .. maybe even both!
This gives me double the amount of fun as I’m making a game, as well as extending my engine with a new technical feature. My engine may be very crap and basic, but that’s part of the fun
OK, I can see that an overwhelming majority welcomes the use of pre-made engines. So that’s what I’ll probably use this time. I was under the impression that it was tolerated but slightly frowned upon by some but apparently I was wrong.
On my entry for the tower compo, I was feeling guilty because I reused my routine for accessing the windows system timer ^^”
Just be sure the engine is available for anyone to use beforehand. That’s one rule that I like (although I’ve never looked at other peoples’ basecodes beforehand.. =)
what if you make your game with game maker… the engine is done… you just have to put some sprites and logics to it… and yet its from scratch..
I used the last LD that I participated to learn, Love2D and SDL
In this one I’m preparing some nuts and bolts in Java, I also believe that from scratch means : design, logic and sprites from scratch not the nuts and bolts.
The more low level capability you have with your computorizer, the more you may be able to provide some unique mechanics. The modren game engines (such as game maker) provide a pretty wide array of capability, but as their job is to hide underlying functionality, there are some things you cannot do with them. As a professional, these tools can make great prototypes, but you may want to work at a lower level to get ultimate performance and control. It is therefor a very practical skill for a game developer to be able to write a game engine ‘from scratch’.
In the context of Ludum Dare though, these tools likely provide all the functionality you’ll need to get a game out in 48 hours. I think we have higher quality games to play by the use of engines and libraries, and these may inspire further development.
From my experience with the relatively low level allegro library and the high level game maker, I can see how I could produce a much more polished game in less time with game maker. I still have much more experience with allegro at this point however, so it’s easier to visualize implementation of my ideas in allegro. So whatever you are most comfortable with may be the best choice. I also know that if I come up with some unique game mechanic in hour 24, I will be able to do it in C++, whereas game maker may not have the capability.
Maybe people should have a specific place to post what middleware or stuff that they didn’t write, and/or be encouraged/required to do so, so that people know how to vote accordingly on the graphics and technical categories?
I’m not even sure what from scratch means. Certainly some languages would be more “from scratch” than others just given what’s available in their standard libraries. Sure it was fun back in the day compiling your sprites into assembly code that wrote bytes into the framebuffer directly, or cutting a cycle or two from an asm inner loop for a special line draw case. That stuff is just not useful anymore, and that makes me happy. Game coding is more accessible for everyone with all of the wonderful tools and libraries available now.