Archive for the ‘MiniLD #03’ Category
Chronolapse Testing
Finally, my time lapse tool (Chronolapse) is ready for some serious testing.
Windows users can grab the exe here: http://code.google.com/p/chronolapse/downloads/list
Linux/Mac: I haven’t done any work on your versions yet, but everything but the webcam ‘should’ work. You’re next!
When you find bugs, please either comment here or send me an email to the address specified in the manual.
Very late Mini-ld #3 entry.
In the min-LD3 theme description, one of the suggestions was to write an article. I decided to spend my 48 hours figuring out how to use free tools to build flash applications. I didn’t actually get the article written over the weekend. But now, two weeks later, I finally finished it. Here is the link if you are interested:
micro Ludum Dare!
Monday, September 15th, 2008 5:47 amHello everyone!
I was hanging out on IRC with some pals when Bleck, DrPetter, and I decided to have a fun little “microLD”, where normal LD rules apply, but you get only 6 hours to develop your game. It’s quite flexible in that you can choose which 6 hours you want to use. (Hooray for the honor system)
There is an added twist that I announced the theme at least a day before everyone started, so you got to think about what you wanted to make.
The theme is/was ‘Utopia’.
Here are the final entries: (From what I’ve heard, I’m still waiting on entries from philhassey and mjau)
Bleck – Snowtopia - http://www.omnisu.com/files/snowtopia.zip
DrPetter – Utopia – http://www.cyd.liu.se/~tompe573/drpetter_utopia.zip
Fydo – Paradise Gone – http://fydo.net/programming/ParadiseGone-fydo-microLD1.zip
I certainly had a lot of fun making my entry. I had about 2 hours to kill on a busride a few hours before I started developing the game, so I planned it all out on paper. It worked out surprisingly well, in my opinion. Post your comments!
And of course, it’s not too late to participate. Since this isn’t really an official compo by any means, feel free to set aside 6 hours of your choice to make a game and put a link in the comments. Hooray!
Compensation
Well, I didn’t get a tool done for Mini-LD #3, but here’s some Flash movies instead. A total of four: FireSim, Run Around, Yayguy, and Yerfworks.

I didn’t find a direct-linking file hosting thing, but I did find a really nice non-direct-linking one. Get the compensation here!
Source code is included.
Chronolapse Progress Report
Since the mini LD started, I’ve been filling my time with diablo, TF2, C&C3, amusement parks, and other non-coding activities. However, I have been sneaking in coding time here and there, and am making progress on my tool, despite being well outside the ‘deadline’. I posted a gui shot to IRC, but forgot to put it here, until now!
People’s biggest complaint seems to be that it is rather dense. Well screw those people.
Seriously though, it is a semi-heavy tool, but I’m hoping I’ve put it together logically. I’ll be writing instructions on how to use each part and I’d like to think that, with a little tool-tip help, each section is pretty self explanatory.
Since I haven’t really discussed it here yet, my tool, codenamed Chronolapse, creates time lapses. Right now the only working webcam library I have is windows only, but that might be addressed later. The goal is to make it a snap to make time lapses like the one below. Here is an overview featurelist:
- Synched Screenshots and Webcam Captures (can do either one or both)
- Simple ‘Annotation’ – show messages like status etc on your timelapse
- Picture in Picture – example: put your webcam shots in the corner of your screenshots
- Video – convert your images to video for you
I decided to make each of these features a seperate entity to give the user as much freedom and functionality as possible. It will add a little bit of time on the backend as you go through each ‘phase’, but it really enhances the value of the tool. Here is a picture in picture example: First, you capture your images. Instead of allowing you to pick PIP at the beginning, it just saves the two different sets of pictures. After you’re finished capturing, you can run it through the PIP section, selecting size and position (and sources). This gives you a new folder of pictures with the PIP effect. Now, if you want to go back and change where you put the PIP, it is as simple as tweaking the settings and re-doing the PIP. If PIP was built into the capture, you couldn’t change it at all. It also means you can use any program you want to do any of the steps, and CL will fill in the rest. You can capture with CL and create video with virtualdub, or capture with something else and add PIP with CL, etc etc etc. You have da powah!
Example Goal Timelapse – This wasn’t made with CL; it required 4 different tools to put it all together, plus the youtube annotation. Being able to make this using just one program (well, need to add sound separately) is the end-result goal of CL.
Bleh, but yet yay.
Bleh, homework, yet yay, other things coming up to compensate for my lack of a finished Mini-LD #3 entry. Look forward to…
- A Flash movie thing,
- A Half-finished Flash game,
- Maybe my modifications to the Chipmunk demos,
- and something I’m not publicly announcing yet, but those who have been on #ludumdare recently may have experienced…
And also, going back through things, Towlr is awesome. I emailed it to my friends. Buahahaha!
XPAK
My tool is a little pack utility. Similar to the Q3 pak file.
No need for instructions or anything, simply right click insert/remove/extract tiles etc.
Src code provided.
Where in the world are you?
Sunday, September 7th, 2008 5:02 pmWell, I actually did a bit of coding on my world map wordpress plugin and you can see it sort of in action here.
The only ugliness is it requires a onload=”load()” onunload=”GUnload()” in the <body> tag, and I don’t see any (easy) way for the plugin to do that for just the pages that use the “SimpleMap” shortcode in their text. Setting up a filter to replace that part in the header seems really ugly, don’t want to do that…
So that means it requires a wordpress template which is bleh.
It has a wordpress control panel thingie where you enter your google map API key and can clear its database. No way for logged-on users to enter their own geocode yet.
I have real work to do now but hope to finish it up and move it to the real LD site at some point before the next compo!
ChipmunkLand died
I gave up on making it load files, and in the first place it was never much of a tool. So, yeah. I gave up. Maybe I’ll release my modifications to the Chipmunk Demos, or something.
On an unrelated note, I self-congratulaified myself.
my 48 hours is gone
gotta be honest here, I started two days ago so I’ll submit what I have so far.
I’ll finish it off some other time and upload it here <3
Epic fail
I’ve just slept about seven hours longer than I intended to, and have awoken with the beginnings of a migraine, so shan’t be finishing my entry any time near the time limit. I’ll still finish it though.
hey!
hmm just whipped this up in 2 hours..hmm i’ve been meaning to make a sprite/animation editor to port to the ds, so i can use my ds to draw and animate sprites with the touchscreen. but, i think i’m done for tonight, and probably for the weekend. i’ve got tons of homework due as school started again last week and i lost the first week to burningman. ciao!
Drying off
Alright. So I started out this morning by writing a long post where I detailed my decisions that were going in to my Texture Pool design. I nearly finished it, before finally realizing my argument could become moot with a couple simple hacks.
Disappointed in that, I put my head down and got to work.
While working, I realized I could combine both methods, and get the benefit of both.
And eventually finished.
So the Texture Pool is done, but it is late, so I’d rather call it a night. I may revisit earlier post, since it does have some meaningful information in it.
As for a Sunday tool, we’ll see. I gotta read over my notes and think a bit about how badly I want the image slicer stuff, or if I should get on to the slightly hacky screen builder. Hmm..
Toodles!
ChipmunkLand Compiles & Runs!
I’ve named my “tool” ChipmunkLand!
It can’t load files yet, but it does say “Usage: … filename” if you don’t give it a command line argument. I’m sticking to command line arguments because I’ve never made a usable GUI before. I’m using OpenGL and Glut so I can just use the drawing code from the Chipmunk Demos.
so far so good…
really not used to making editors for stuff, but I think I’m blundering through pretty well:

(heres a link to a web version so you can play with what I have so far)
use the arrow keys to move the cursor, and click the tile types to alter the current tile.
—
didnt quite think the tile thing through, so I’ll have to have a way of having more than one plane per tile. after that I’ll be getting on to textures
Ludumdare World Map idea
Saturday, September 6th, 2008 5:43 amWell, I haven’t actually done anything but I’ve been pondering!
I think a neat tool website feature(?), would be dead-simple to use WordPress plugin that allows users to place themselves on a map and can be installed here on Ludumdare for future competitions. I did this by hand a long time ago but it’s time to enter the 90′s or whatever.
After some initial looking around I can’t find anything existing that really fits the bill.. a requirement would be the end result has to show the names directly on the map, not just those dumb balloon things. It looks like this can be done with Google maps using elables. Hmm, would be nice if they were clickable to bring up more info as well…
Also, it should be smart enough to only show people on the map who have made at least one post in the active competition so the map stays more or less readable totally zoomed out, at least for that mode.
Hrm.
Swimming in a texture pool
I have a seemingly endless list of libraries and tools I want, and a few I need to finish up my current project. So I’ll be starting with something I need. If all goes according to plan, I’ll get to start another one tomorrow.
So I need a Texture Pool. In other words, I want a nice way to say “hey, load blah.png”, and it’ll use it’s brains to know that I already loaded “blah.png”, and return me the same copy. Pretty straight forward stuff.
This Texture Pool is a piece I’m adding to my graphics library. Said library is designed to wrap multiple graphics API’s. Currently it wraps OpenGL (1.5) and OpenGL ES (1.1), but it also has a slightly out of date software renderer too (lacking texture support, but does geometry and transformations).
The Texture Pool itself I’d like to eventually support several formats. Currently it supports a hybrid format of mine, LZMA’d Power VR (PVR) files. The way it’s structured, it’s easy enough for me to support ZLIB, BZIP, or RAW PVR files as well, I just don’t currently. And while I don’t yet support them, I have stubs in place for PNG and DDS files.
I have some other wild goals for the Texture Pool down the line. Right now, one of my main target platforms requires square power-of-two textures. So I’d like to build a tool for combining multiple smaller images in to a single texture atlas. I’d also like a way to automatically fatten up a PNG image file, yet still somehow remember the original dimensions. This slicing information I’d like to be known by the Texture Pool, so I can draw centered or aligned texture elements with just a call, instead of having to build geometry or remember dimensions.
My solution to both is a custom file format, vaguely like an archive format. As an added bonus, I want it to be able to support storing multiple images in the same file. But the important point is to create this “many to one” relationship, where I have a single texture and some way to say it contains many elements. I’m leaning towards throwing together a text based format and tool to generate a sliced file, so I can start using this right away.
Alas, that’s a tomorrow issue.
Today, we’re building a Texture Pool. After some breakfast, we’ll do it.
Here goes…
so I’m going to be making a tile-based level editor… a 3D one… kind of. I guess really its 2.5D but whatever, heres a mockup of the interface:

to tell the truth I’m still working on the bits of it that build the level, but I guess that grows up with the editor, so hopefully it will all fall into place and if not, I’ll learn something
—edit—
so its started coming together:

Wall of text!
Saturday, September 6th, 2008 3:24 amMy first thought when I saw what the theme would be for this MiniLD was, this is the perfect chance to finally start making that pixel/paint program I’ve been meaning to do for literally half a decade! So far I’ve gotten by with Gimp, but I really don’t like its interface, and it’s pretty obvious it wasn’t made with pixel art in mind at all, among other things. Its tablet handling is also buggy, though to be fair that’s actually a GTK issue. (On the other hand, GTK was made for Gimp, so, uh.)
Anyway, a gfx editor needs an interface. This is part of the reason it’s been delayed for so long, there just hasn’t been any cross-platform interface lib that I’ve been satisfied with, and apart from GTK’s buggy support I haven’t found any cross-platform tablet libs either. Tablet support isn’t exactly essential for a pixel editor, but if I put that in it wouldn’t be just for pixels. And it doesn’t have to be cross-platform, the Linux tablet evdev interface is pretty easy to use (or was, until Xorg started blocking it), but it’d be nice. Still, I’ve made some half-hearted false starts on a tablet-less version using a custom interface in SDL, but SDL is also limited to one window, which is really not that big of a deal either, but still, multi-window support would be nice.
While these things shouldn’t have prevented me from getting it done, they have been.. irksome. Which bothers me. That’s the problem with being a perfectionist, if you want something to be perfect the first time around you’ll never actually get anything done. But! I’ve been getting slightly better at avoiding that problem, not least of which thanks to Ludum Dare and some other game compos. If you’ve seen some of my entries you know what I mean =)
Also, SDL 1.3 has been getting to a usable state lately. It’s still in development, but it supports multiple windows and pressure-sensitive tablets, and it’s cross-platform. This kinda leaves my excuses baseless.
In short, it’s time to make this thing.
It still needs that interface, though! I actually started working on a simple library for that earlier this week with the intention of getting it done and ready to be used before the compo started, so that I could use it for my tool and maybe others could, too. While that didn’t happen, I did get some things done, and I like how it’s turning out. It’s based on SDL 1.3, using Lua for the interface. You can do stuff like this:
Frame {
w = 100,
h = 100,
Button {
label = "Click",
onclick = function () print "whee" end
},
}
But it also supports a kind of hybrid immediate mode!
if Button{ x=10, y=5, label="Click" }.clicked then
print "hurray"
end
I say hybrid because I’m not sure it could be called a true IMGUI, since some things like drawing are really delayed actions (though it happens behind the scenes, so you usually don’t have to care about this). This way immediate and retained mode can be freely mixed, so you could eg. have immediate-mode stuff inside a retained-mode frame’s onhover handler, and it’d all combine seamlessly.
I call it “SIF 2″ for now, but that might change. (If you’re wondering about SIF 1, that’s an ancient project that never really got anywhere. I guess I could just call it SIF. Or probably something completely different.)
Anyway, it’s not quite ready for use yet, so now I’ve got to decide what I want to do for this MiniLD! Do I keep working on the interface lib, even though that means I cheated by starting way before the deadline? Or, do I make some other tool without using the interface lib, so I can keep it within the 48 hours? I do have an idea for another very simple tool that could possibly be slightly useful. Decisions..
Salvation
In the mist of portability problems, java comes to the rescue. Because i use linux, and my artist and X-editor uses windows, i have a problem that tools have to be portable. I don’t want to use GTK+, becouse i don’t think i works well in windows, in don’t know QT (maybe i should learn it?), i was very much prepared to write my own UI in SDL, so it could port (that would never work as well as it should). But this morning i realized (duh), that java solves my portability problem. And i might even get a nice builder, which will make it that much posibble to finish TLM. Might even work.





