Wilbefast timelapse (ld25)
I finally got around to posting my Ludum Dare 25 time-lapse, accompanied with some idle musings and some epic open (GPL3) music
Check it out!
youtu.be/90V72BQvPOo
Read the rest of this entry »
Jam Over!
And that’s a wrap folks!
Honestly that’s the most fun I’ve had in a jam in a while. Even if I had a few problems and unforseen hiccups along the way. I was able to finish a jam game on time! (the universe must be getting ready to collapse in on itself, prepare your souls)
And to top it off, at least 11 (not counting myself) of you submitted a game! I only expected 1 or 2, not 11! Especially since, due to circumstances, the original jam starter guy couldn’t finish. But I’m surprised that we got so many games! This has really been a pleasure!
You may check out all the submissions here:
www.ludumdare.com/compo/cra-jam/?action=preview
Submitters:
woneill
Lianne Booton
Spelchan
cmjd
dualryan
netgrind
Finnegan2100
Businessman
tony.pe
Sgt Squirrelly
DamianSommer
Myself: xhunterko
Special Thanks to:
mikebithell
Pov
David S. Gallant
Don’t forget to play and rate the games! Careful, some might be NSFW! And don’t forget to help the guy who made the game that started this all out by buying it here: www.davidsgallant.com/igtced.html And don’t forget to vote yes on Greenlight here: steamcommunity.com/sharedfiles/filedetails/?id=116321868
Great jobs everyone and thank you again!
www.ludumdare.com/compo/cra-jam/?action=preview
New Udacity course HTML5 Game Development
A new Udacity course has just begun, which may be of interest to (future) HTML5 game programmers.
https://www.udacity.com/course/cs255
(Or Watch the short intro video: https://www.youtube.com/watch?feature=player_embedded&v=F3JeV756B7w )
The course has only just begun so there is not much content yet, just Unit 0 and Unit 1.
Free to sign up and participate.
There are other courses too, ranging from beginners to advanced (python mostly, and even non-computery courses like physics, statistics, algebra)
Posted in CRAJam |
A Stick in the Mud MiniLD#39 Post Mortem
What Went Right
1. Haxe/NME with HaxePunk
I really enjoyed Haxe as a programming language. It’s got some gotchas (like iterators are automatically created variables that only exist in loop scope and loop ranges are exclusive not inclusive) but overall it was a charm to work with. I’m also glad I got to use NME. This meant I could target mac, pc, mobile devices, and swf all from the same source. There were a few cross-platform few issues, but not as many as I expected.
HaxePunk is a game library built on top of Haxe/NME (based on FlashPunk) and that worked out pretty well. I bumped heads with the API a few times, but ultimately it was a time saver. Without it, I would have spent too much time working on my own game tools instead of working on my game.
2. Using Texture Packer and Tiled Map Editor
Texture Packer (TP) is a great tool for assembling all your graphics in one place. Tiled Map Editor (TME) is a decent (and free) tool for drawing level maps. TME needs a “packed” image to work properly. That’s the image below on the left. Although TME needs packed images, it doesn’t read the associated XML files that TP produces. So when you add new images to the folder TP is monitoring, TP annoyingly moves images around to make room. So the images get shuffled around and then TME’s map gets all messed up, carpet showing where grass should be, walls turning into desks, etc. The solution I used was to number my images (04_carpet.png) and tell TP to sort by name and use a short fixed output width. It was still a pain to remove images using this process, so I just didn’t. Bear witness to the first two tiles in the first image below, which were placeholder graphics.
I also separated sprites going straight into the game without TME. To better work with HaxePunk spritemaps, I make several spritesheets based on the image size. Mostly I worked with 64 x 64. But I also found it easier to deal with larger sprites as whole images, rather than breaking them down into 64 pixel tiles. This isn’t optimal, but it worked. Hopefully by time for my next game Spritemap will be updated to work with texture packer images rather than fixed tile grids. If it isn’t, I’ll make my own class. Below from left to right are the TME map tiles, 64×64 sprites, and 256×256 sprites.
3. Dynamic object creation
This worked out really well. I used Matt Tuttle’s Tiled Map Editor code (not currently part of HaxePunk) to read the TME file and create a scrollable map. This code and TME both also support the ability to add generic “objects” to the map. Generic objects can be given a name, type, and (most awesomely) properties. Here I’ve got a worker, an effect, and a zone. The zone is used to detect when you’re close enough to interact with the worker (and therefore the spacebar is active). The quest effect (smoke) is searched for when you complete the quest. The worker uses facing to determine which direction to face, has all of his speaking lines in one place, including the line he uses when you complete the quest. Color is an old prototype property I never bothered removing.
In my main game world, after loading the TMX map (that’s the extension for a TME file), I process all the objects I can find on the “items” layer.
var group = map.map.objectGroups.get("items"); for(i in group.objects) { var clazzName = ENTITY_PREFIX + i.type; var clazz = Type.resolveClass(clazzName); if(clazz != null) { var obj = Type.createInstance(clazz, [i, i.custom]); add(obj);if(Std.is(obj, Zone)) { var zone:Zone = cast(obj, Zone); zone.playerSignal.bind(playerSignal); } } else trace("Unknown object class found: " + i.type + " with name:" + i.name); }
So when it finds “Worker” in the Type field, it creates a Worker game entity dynamically, and passes it the properties I defined on the object. It uses those properties to bootstrap itself. This was very cool and has a lot of potential. Also I started messing with the HSL signaling library for cross communication. In this case, I’m binding the playerSignal() method to each zone, so the game world can know a zone is entered or exited, and can display the “press space to inspire!” message.
I started putting together a cascading notification system, where an object can receive a message (the only message I care about is “the quest just completed”) and can also pass on that message to other objects. In response to a message, the object can show, hide, or remove itself. So for example in the stolen lunch quest, two workers are arguing over stolen lunch. When the riddle is solved, the main worker is notified. The main worker has a property “notifies” that contains “arguingCoworker,lunchBags”. In response to being notified, the worker notifies the other worker (who speaks his “success” line), and notifies the lunch bags (which specifies “show” for its “onNotify” property, so the lunch bags suddenly appear). I’ll be doing more stuff in this direction.
What Went Wrong
To some extent, these “wrongs” were also successes. But I suppose that’s just because failure is just an opportunity for improvement.
1. Tried to move to HaxePunk 2.x.
Mid project HaxePunk 2.x was released and I tried applying it. Everything broke instantly. For the most part I did a good job of suppressing my natural tendencies to fixate on a problem, but I wasted a couple of days trying to get 2.x working properly before I came to my senses and rolled back to 1.72a. That’s just time you don’t have to spare during a jam, even a two week jam, not if you’ve picked a project plan with no slack in it. It’s a hard lesson to learn, especially for an aging dog like me, but I have to pick my battles. It’s my Achille’s heel. This was such a unwinnable battle that, in fact, a week or so later 2.x still doesn’t work with my post-compo build. The good news though is HaxePunk 2.x is adding support for hardware accelerated blitting, so it’ll be worth the growing pains.
2. Started late, dreamed big.
I started a few days late, missing out on the initial weekend. And of course I picked new tools and game styles I’d never done before: Tiled Map Editor, Texture Packer, HaxePunk-Tiled (that’s the TMX reader), and orthogonal 2.5 perspective. This is all great learning stuff but it made it really tough to make the deadline and things had to get dropped out. I also put together 10 puzzles, plus a bonus puzzle and an easter egg. If you haven’t played the game (feel free, it’s here), it’s about an alien who is fascinated with a piece of old poetry, and uses that poetry to inspire his coworkers. The way that works is you go up to a coworker, hit spacebar, pick a stanza from the poem, and then see if that dramatically solved the worker’s problem. I came up with the puzzles first, and then worked backwards to make the poem. That was a challenge, and probably not the best way to approach it.
It was a race to the deadline, which shifted on me. I thought it was 10PM GMT-5 on Friday and they extended it to Sunday. So I busted my backside to get as much as I could in there literally down to the last moment, and then I noticed the submission was still editable. In retrospect, this probably helped me, because I was able to slow down over the next two days and address some glaring issues that I couldn’t get in by what I thought was the deadline.
Still, there wasn’t enough time to do everything. I wanted to add an end game cinematic, where after stealing from the guy who was stuck in the elevator you have a change of heart and learn from Hrothmok’s mistake. A FIRE-O-METER got dropped; this would have filled every moment you weren’t at a desk (tap tap tap!). The meter would fill rapidly if you gave a wrong quote and the boss would try to find you if the meter went red. The plants were originally a place you could hide from the boss. Now they’re just silly. Using aliens instead of humans was a time constraint compromise. Human animation was harder. I started messing with Spriter and would have loved to get some neat animation in there but there was just no time. And finally I needed a lot more art. The place was barren.
3. Three votes
For those who gave me feedback, thank you so much! I was very happy to receive it. I was unhappy with the lack of voting from the members. There were only 12 submissions. I voted for 8 of the 11 other folks, holding back from two who had voted for no games and one who had voted for one but also received some votes. I knew that Mini LDs had less participation than the regular compo, but I expected more than 3 folks to rate my game. The lack of feedback is disappointing given the amount of work I put into it. How do you get better if you don’t get critiqued? I kept checking to see if someone else would rate my game. I didn’t know when the voting was going to end, I couldn’t find that information anywhere. They also didn’t announce the rankings (here) although maybe I’m being impatient. I made it to the top two, if you consider 3 votes statistically significant.
At this point I’m a tiny bit soured on Mini LDs. I’d rather come in last place and get lots of great feedback. I do see that other Mini LDs have gotten more participation. I guess I was surprised to see the ratio between compos and minis to be so extreme (1327 vs 12). But it was a good experience overall and I’m looking forward to entering the LD#26 jam in April. I hope that the lesson “pick your battles” sticks because I’m going to need it to stay focused for 48 hours.
If anyone is curious, Hrothmok – the protagonist of the poem – is a portmanteau of Hrothgar (of Beowulf fame) and Darmok (from the ST:TNG episode).
Posted in MiniLD #39 |
CRA Auditor Released
My entry for the CRAJam has been released. the entry page is www.ludumdare.com/compo/cra-jam/?action=preview&uid=15656 . The game has you playing an auditor who has to decide the fate of the people you audit. There are three different endings to the game based on your performance. I still have sound to add to the game so might slip in an update on monday or tuesday.
Posted in CRAJam |
Deadline…
Since it’s a little vague as to when the deadline is, let’s try to address that.
Since a few of the entry’s started early, and a few people might start late, I think it’s only fair to allow for at least 2 days to work and on it and one day of polish. Since that’s pretty much what everyone else got. So, the proposed deadline is Wednesday!
I’ll leave the final word to Pov. But let’s use that as a guideline shall we?
Good luck to the remaining jammers everyone!
First Release Ever :)
So After a month or so of pretty relaxed programming I’ve finally finished my first game. For me this is a big thing, I’ve finally stuck with an idea through good and bad and got a finished product. Basically I’d really appreciate it if some of you amazing people on this site could play and tell me what you think. It’s uploaded here at staticvoidgames(This website is great)
SCREENSHOTS:
Posted in CRAJam |
My First 3D Game: RedGreenBlue
Hello
I started making my first 3D game in Unity about 3 months ago and it is now (partially) complete. I created the models in Maya, the textures in Photoshop, and I recorded the in-game music on my.It was fun to make. It’s called RedGreenBlue and it’s about shooting ghosts with the right coloured pills (not bullets; ghosts react badly towards pills).
I am 15 years old and I stared learning programming a few years ago (I really enjoy it). The game will be available soon as a free download.
Here is video of what it looks like: https://www.youtube.com/watch?v=ls2ySVIe6sI
Natanijel: Ba(NO3)2
Posted in LD #06 - Light & Darkness - 2005, Uncategorized |
Just starting
Not sure how many people are going to be entering this Jam, but I fear it will be even fewer than Mini-LD#39, so I am going to have to make sure I finish an entry for this. The subject matter is political in nature which is the kind of subject that I don’t like to touch so this may be very interesting. I am going with my first thought which is a tax auditor adventure game. While I would like to go with my GameJam libraries adventure game library, it is simply not far enough along so this will be created in Flash Professional the old-fashioned way. As no real rules have been given, I am going with the combo rules but with a looser deadline. As I have created a twitter account, I figure I might as well post updates to it ( https://twitter.com/BillySpelchan )
For those of you who are skipping this Jam to watch some type of big game, I will only point out that the Stanley Cup playoffs aren’t for a while yet!
CRT M.A.M.E.
The unique old school climate. Who spent days in games’ saloons knows what I am talking about
Program splits colour of the background, sprites into 3 RGB base colours plus noise, plus a horizontal line filter*
Then it randomly shifts it, in a random time intervals, it gives an illusion of glitches from old monitors
It all gives an efffect of old, and ” kind-hearted” games that we have played.
Download
The software has been produced in gamemaker 8.1 in a free time to be used in games.
You can download the filter pack from our website
team Something Beautiful
Cheers!
frog.recurse( HUGMONSTER (-o^_^)-o );
In another lifetime, four Ludum Dares ago, I entered my very first game jam with a little platformer called “HUGMONSTER”
HUGMONSTER was a Unity web player game (yes, there was a time when I wasn’t making only Android titles!) It had a title screen, and ending, and six or seven levels. It also had art completely composed of typefaces.
Very soon, HUGMONSTER will have its official, world debut as a mobile game, specifically designed for tablets! It features:
- 20 Levels of puzzle platforming pandemonium!
- 5 Animated movie intermissions!
- An awesome soundtrack!
- A touchscreen-friendly UI!
- Art still mostly composed of typefaces!
Screenshot from device
And here’s a quick trailer
More details to come!
Posted in LD #22, Uncategorized |
MidBoss first official release
Today I released MidBoss (v0.5 beta), because stuff might still change and/or break) as a feature complete game. It’s an overhauled, rebalanced version of my LD25 game, and my January entry for One Game a Month.
MidBoss is a game about possessing your defeated enemies in order to become stronger. You play the weakest of the dungeon denizens, an imp with no ability other than possessing other creatures. Your goal is to defeat and possess increasingly stronger creatures, unlocking their abilities for yourself and becoming stronger as you go along, and eventually defeat and become the dungeon’s ultimate endboss.
Features now include: