Posts Tagged ‘haxepunk’


Posted by
Friday, August 23rd, 2013 11:15 pm

The game is called Offspring. All I’ve got to show for five hours is an idea document, a description of screens and required assets, and this rules.xml file. I have a pretty good notion of the kinds of interactions I want to happen in this game, but I know the actual rules will need lots of tweaking. So my hope here is by putting all my rules and triggers inside an xml file I can spend Saturday putting in the framework and art, and tweak the hell out of all the rules on Sunday. This is a bit of a game of exploration, especially for the first time player, until you discover all the rules — well, presuming I finish in time. :)

Screen Shot 2013-08-24 at 2.07.03 AM

The XML file driving a rules based system

10 seconds … 9 … 8 …

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

Alright, I gotta say it’s not my favorite theme because I think we’re going to see a hundred McPixel clones, but you could all prove me wrong, and then I’ll be all stupidy so and so for saying it. Okay, let’s do this! I’m game. Gonna find that box, think out of it, and then smash it with a wrench and set it on fire. Then gonna grab another box, say from some homeless dude, and burn that box too. I mean I’ll make sure it’s empty first, I’m no murderer. But all boxes must burn! BURN!! Sorry I burned your house, dude. :(

I’m in for once

Friday, August 23rd, 2013 4:49 am

Language: Haxe
Framework: HaxeFlixel or HaxePunk depending on the kind of game I decide to make.
IDE: Sublime Text 3
Graphics: mtPaint
Audio: sfxr

I made this for the warmup in 24 hours so I’m sure I’ll produce something playable in a longer timespan. Hopefully.

It’s time for that thing again

Posted by
Wednesday, August 21st, 2013 3:30 pm

It’s compo time! This will be my third compo (four if you count a two-week mini-LD, which you probably don’t, you big meanie). I failed to complete my first LD comp and barely scraped together a working single level for my second LD compo. Right on. The mini-LD was alllllmost fully working, but still key things got dropped proving that I will always code up to the time allotted…

Editor: Sublime Text 2
Language: Haxe 3/OpenFL
Framework: HaxePunk, HaxePunk-AI, Ash-Haxe (ECS)
Visuals: Photoshop, FilterForge
Audio: Audacity, Bfxr, Renoise and some plugins
Version Control: Git … maybe
Base Code: GitHub (older) and zip (latest).

For base code, I’ll be borrowing as needed from my LD26 entry, which is on GitHub, or more likely I’ll be borrowing from this zip. That’s pieces of my fugly source code for reRocket — an attempt to flesh out my LD26 entry Mass Splitter into a fully playable game. I’m still working on it. Of course. The zip has most of the render/input/util frameworky entity-component-system stuff I’ll probably use and regret doing so.

I’m severely sleep deprived at the moment (thanks, insomnia! wooo! you rock!), which I hope to a’right by the time the weekend rolls around or my entry might wind up terribly silly.

Good luck everyone!

I’m in there like swimwear

Posted by (twitter: @IamJacic)
Wednesday, August 14th, 2013 8:44 am

Just a short “I’m in” post that I should have made weeks ago.

This will be my 7th Ludum Dare (and all in a row too!), and I am IN! I was a planning to use Haxe + Openfl + HaxePunk again, but I’ve also been re-learning c++. SDL2 was also just released. There are so many choices, and I’m not exactly sure will I’ll use.

I do know I will use sfxr for sound effects, GraphicsGale for art, and caffeine to keep me going.

Good luck everyone, and may the Source be with you!

Gardener Post Mortem

Posted by (twitter: @RustyBotGames)
Wednesday, May 15th, 2013 1:26 pm

The technology behind

This Ludum Dare I only could spend one day for making a game and I wanted to try out a new technology (HaxePunk). Usually that’s not a good idea for a time restricted jam, especially with restricting oneself even further.

Working with a new language and library worked surprisingly well. Tuning down the scope of my game probably helped, but Haxe seems to be quite a convenient language to work with. The HaxePunk library was a great addition to have quick results, as most of the basic engine stuff necessary for my game was already in there.

For creating some ambient background sound for my game I had a nice idea: As it is finally spring now in Germany, I wanted to record some spring sounds, like birds. I did this with my phone, which worked pretty well. Unfortunately transferring the file into Audacity did something very strange to the sound and it was too late to figure out how to solve it. That is the reasons the bird sounds seem more like from a jungle than a mid-European garden.


What’s that game about

As mentioned, I didn’t have the full 48 hours, so I had to come up with something really simple. The basic idea has some resemblance to my LD23 game Bottlecolonies, but this time with free placement and only two different colors. This makes the gameplay probably a little boring quite soon.

Can you spot the similar concept?

Can you spot the similar concept?

The idea is, that with each new planted flower, the existing ones will grow through different stages. If there are negative influences around (potatoes, mushrooms, different kind of plant) and surpass the positive ones (same kind of plants) the plant will decay. Additionally, a feature implemented quite late, the mushrooms will spread for a while. So goal and strategy of the game is to place the same kind of plants close to each other, block spreading of mushrooms and avoid the negative stuff around your seedlings. The rhythm as how the two different plants are seeded is quite simple. Each three plants it will change. You will win the game if there are enough grown plants and will lose if there are too many decayed ones.

What went right

  • Getting the idea (I already had this idea in my mind for OneGameAMonth for the theme “spring” and it also fits the LD theme)
  • Fast progress with a new tech (I’m surprised by myself how well I got into HaxePunk)
  • Making a Flash game (a lot more plays than usually with a Windows standalone)
  • Finish in time (was a long evening, but I did cut the features early enough)

What went wrong

  • Making the background sounds (as mentioned above, and took me some time to mix the few recorded sounds to not be to repetitive)
  • Player feedback in the game (A lot of people mentioned it: an indicator for the placing position and some feedback what will seed next would be great; I agree)

So all in all I’m quite happy with my entry.

Go play and rate

Enhanced version of Shape of shades

Posted by (twitter: @allinlabs)
Monday, May 13th, 2013 4:02 am

I just wanted to let people know about the enhanced version of my game I just uploaded. It’s an abstract game where you use shadows to orient yourself and go through walls to escape enemies.

You can play Shape of shades here : [PLAY]




A week has passed since LD48 and it’s a good time to take a deep breath and reflect. Rub our sore muscles. Think about what’s next. Weep uncontrollably. Whatever you need. In my case, Mass Splitter went out the door without a hitch! Well, rather, it was well under the maximum number of allowed hitches. It was within hitch tolerance. In truth, there were three hitches: I didn’t get in a main menu, I didn’t get in a tutorial or at least an instruction page, and there was only one level. But all these hitches pretty much have the same cause, that of running out of time, so how comes I haz runs out?

What Went Wrong

Architect hat mostly unworn

I spent a bunch of time trying to get some view components working with HaxePunk. HaxePunk handles origin a little differently than I would think it should work, so I spent a few hours on my View class, getting the Scale, Origin, and Position components to all work together. Great, they now work together.

I did this because my game has orbs in it, and the active orb has a tube spinning around the outside edge of it. You hold the spacebar to shrink the active orb and start growing a new orb on the other side of the tube. After I got the tube spinning at the right radius around the correct center point I then went to add the new orb. This new orb also needs to be placed at spinning radius from the center, so how do I get the true position of the edge of the tube?

Well I can’t. The tube’s actual position is derived inside the view class, so it doesn’t exist at the component level. So now I’d have to either hack into the View objects to get this information (which horrifies my MVC sensibilities), or just calculate the orbital position myself, which I did. Well gosh, that was easy. And now that I’ve done that I can position and rotate the tube using the same logic, so the tube stops scaling along with the size of the active orb, which is a better look I like anyway.

In essence, I looked at just one next thing to do, rather than the broader landscape. Without putting on the architect hat, I spent a few hours going down a rabbit hole I didn’t need or want. On the other hand, I’ve got a cooler View class now.

Failed to take the time to split up complicated classes

I didn’t universally fail this, but I could probably attribute a few hours of wasted energy because of failing to do this early or at all. In particular my firing system is doing several things rather than breaking it up into different systems. See Ash Entity System / What Went Right.

Not putting more of my personality into my game

Friends often tell me I’m funny. Even fine, up-standing strangers — if not calling me that — have in the least called me irreverent. I try not to listen to other categories of people whose job is to be offended by everything. Anyhow – you wouldn’t know these things about me from playing Mass Splitter. Sure, I don’t have to make humor a central aspect of all my games, but a) it’s clearly desirable in a competition where there’s a category for it, b) there are many kinds of humor besides pratfalls and puns that can serve a dramatic cause. Heard of irony? Sarcasm? Deprecation? Pathos? Impudent contempt? Not that Mass Splitter is a deep example of erudition (it’s not), but it’s better for one’s self esteem to believe your personality is a strength. And if it’s not … well, you should work on your personality. Are you trying to tell me I should work on my personality? Stop staring at me like that.

What Went Right

Ash Entity Framework

Richard Lord’s Ash Entity Framework is really good. It’s an entity component system. I used the Haxe port maintained by Dan Korostelev. It was really fun to learn how to use an entity system and put it into practice. For those who don’t know, apparently those folks at AAA game houses have been using these things for years. The idea is to eschew traditional static object hierarchies for a data-driven composition approach. Richard has some great articles about it on his website.

Everyone seems to approach an entity system differently; in Ash the entity is a fairly generic object. You create a new Entity instance, optionally give it a name, add components to it, and add it to the engine. Usually it’s the job of a factory to create the entities with the components you need, but that’s up to you. Components are simply data-holders that you create, with little if no logic in them. Ash components do not need to derive from any base class, any object could be a component. All the behavior for your game goes into the systems you write, derived from the System class and added to the engine instance driving your game. When you call engine.update(time), all your systems execute in the appropriate sequence. Although Ash provides a signaling capability, Richard recommends you use boolean flags or components as markers to indicate when events happen, so that a component event (such as “this changed”) is only responded to by a system when it executes. Using engine.getNodeList(MyNode) a system fetches a list of entities from the engine that are relevant to it. Nodes are classes that contain one or more components; only those entities holding the components you specify will be returned.

I enjoyed using Ash quite a bit and encourage you to look at my source on Github if you’re interested in seeing one possible way of using the library.

Think smaller

Last compo I thought I picked a small idea but apparently it wasn’t small enough because I couldn’t get it done in time. This one was doable — juuuust barely. :)  I tried to get a playable prototype as soon as possible; I would have liked to go to bed on Saturday night with it playable.  Now, that didn’t work.  Pthbth. The prototype wasn’t playable until Sunday afternoon, but imagine if I wasn’t striving for earlier! Suck-sess.

Toolkit practice

I’ve had previous practice with HaxePunk, and I started messing with Ash in a previous game I attempted to complete for the 7-day Roguelike. Even though THAT attempt was a failure, it gave me crucial practice that made this submission possible, and also gave me base code to pick at for Mass Splitter. Of course, more practice would be better, so I shouldn’t wait four months for my next game…


This audio tool is available in several forms; the one I used is BFXR. Sooooo convenient. Sure, all your sounds do tend to sound video gamey retro screechy crunchy if you don’t post-process them, but a lot of people go for that, and damn if it isn’t quick to pump out some placeholders.  (… that wind up being the final sounds when you run out of time)

Shut up, good enough, it’s playable

Shut up, I say! It’s good enough. It’s playable. I’m just happy I got out a game. Would I have liked to get those extra things I conceived of? Of course. Over time, with practice, I’ll be able to meet the goals I think I should be capable of. (I’m a damn perfectionist. I’d be faster if I wasn’t always trying some different way of doing things.)

I finished something playable in time that some people actually liked. Next time I’ll do even better.

IceBreaker mini pre-sleep post-mortem

Posted by (twitter: @pentaphobe)
Sunday, April 28th, 2013 10:29 pm
when I was a kid this sort of image was like crack.  it's so laughable now.  stupid kid.

when I was a kid this sort of image was like crack. it’s so laughable now. stupid kid.

--- I - C - E ---- B - R - E - A - K - E - R --- 

(When I get up I’ll do a post-sleep post-pre-mortem-post-mortem, some of this will just be taking some of the prolix and manic text out of my submission page – yay sleep dep!)

That was a lot of fun! (but it’s not over yet..)  I somehow wrote just shy of 3,000 lines of code in 48hrs.  It’s almost certainly 90% ugly horribleness, and I’m not a fan of LOC as a metric of productivity – but it still feels pretty cool.  (If I printed it all out it would take about 46 A4 pages).

Unfortunately, quantity of code does not equal a finished game.  About halfway in (after some sleep) I lost a lot of time to vascilating between confusion at the code I’d added before passing out (that guy was craaaazy) and feeling generally dumb.  But eventually I got it nailed down and was grateful to discover that, whilst I had lost track of what I was doing – the more responsibly-minded part of me had sent me down a tunnel with no wrong turns.  Not to say I didn’t bump my head a few times, slip over in miscellany or mistaken inanimate objects for long-lost lovers..

 What went wrong / right

that one’s for the morrow I think, sorry – they’re my favourite part too.


Tools Used


It may not be much right now, but I think after I’ve checked the rules I may enter the Jam so I can see it closer to a working game.

I’ll be uploading post-compo editions to the entry’s page as I go (in about 8 hours or so)



(this is just copied over from the submission page to reduce clutter, tl;dr: rambling…)

circa T+05 mins
began writing submission
circa T+20 mins
I’m having a few unanticipated issues with publishing; the .swf
seems to work fine in the standalone Flash player, but not
even remotely in a browser.
I’ve got 20 minutes or so of submission hour to work it out, but
here’s the swf for the time being (same link under “Windows” unfortunately)
circa T+56 mins
Okay, got it to publish. Seems to have odd framerate issues.
Will use my last 3 mins to see if I can suss it out.

Game is done

Posted by (twitter: @RustyBotGames)
Sunday, April 28th, 2013 3:46 pm

There it is:

Gardener in Minimalism Spring

If anyone could give me a hint why the flash file scales up to browser window size, I would be very grateful. Found out a way around this with hosting it on my blog. The “music” are hand-recorded spring birds in our garden (and some strange auto-processing through file converting makes it sound pretty jungle like).


First Screen of “Gardener in Minimalism Spring”

Posted by (twitter: @RustyBotGames)
Sunday, April 28th, 2013 9:13 am

Yeah. Progress.

I’m a little proud of myself getting along with a totally new programming language and library (HaxePunk in this case). So here is a first screenshot of my game called Gardener in Minimalism Spring. (There are also potatoes included.)


Once more into the breach

Posted by
Friday, April 26th, 2013 2:53 pm

I’m in for the compo. Too bad about the potato theme, though…

Editor: Sublime Text 2
Language: Haxe/NME
Framework: HaxePunk, HaxePunk-AI, Ash-Haxe
Visuals: Photoshop, FilterForge
Audio: Audacity, VLC, Bfxr, Autotracker-py
Version Control: Git

I’ll be using the Ash entity system. I’ve written some components, systems, and views in a prior game that I may want to pilfer leverage for the compo. You can find that base code on GitHub. Dead Grinder is not really a game at this moment, so much as it’s a pile of code that could theoretically be reassembled into something resembling a game given additional effort.

Good luck everyone!

Last Minute Plans – Here’s What I Expect to Do

Posted by (twitter: @henrythescot)
Friday, April 26th, 2013 10:05 am

I have had HaxePunk recommended to me by a few people here and there, and now that I’ve done enough to get it (seemingly) working, it seems like I should use it.

So, I’m going back to my roots of having no idea what I’m doing.

That’s right! I’m going in with minimal experience. Ludum Dare is at its best (for me at least) as a trial-by-fire. The struggle of learning under that kind of pressure keeps it fun for me.

I’m not completely without knowledge, though. I’ve done plenty of things with FlashPunk (which HaxePunk is a port of) and I’ve used Haxe a little bit before (though it’s certainly been a while since I last used it), so I kind of have some idea. Kind of.

As for the type of game…

I want to make a shmup. I love shmups. They are probably my favorite genre of game. Kenta Cho’s shmups are some of my favorites. I also like Danmaku (aka “bullet hell”) shmups since they are nice and challenging. I also love to destroy lots of stuff, and shmups are generally pretty good for that. 😀

So, with all that said…


– Henry

(Edit: Put some tags on this post, that’s all.)

Oh yeah, I’m in!

Posted by (twitter: @IamJacic)
Monday, April 22nd, 2013 9:08 pm

With all the potato craziness, I forgot to announce this fact!

I’m in for my 6th(!) Ludum Dare. I plan to use Haxe + NME + HaxePunk to make a game for web and mobile devices. I’ll use GraphicsGale or GIMP for art, bfxr and audacity and maybe something else for sound, and caffeine to keep me awake.

Have fun everyone! Remember: #NoPotato #YesMeat

Thanks Ludum Dare and 1GAM, for encouraging me to put out more games … even if they are shamefully dull and unplayable. 😉 I had been working on a game about operating an underwater base but it was taking me too long to figure out what the game is actually about. I mean, okay, yes, it’s about an underwater base, but the game I want to make which is part economic sim and part micromanaging the staff was again reaching beyond my February grasp. Instead I cranked out a quick idea I had about manipulating Conway’s Game of Life.  The game, Death to Conway, is a turn-based simulation of the Game of Life, and you’re given an opportunity to kill an extra cell in between generations. Excitement? Thrills? Who needs em! We’ve got cells, lots of terrible cells, and they must all be killed!

Play Now (in browser)

This was another HaxePunk joint. HaxePunk is sort of in flux now as the developer is making some additional changes to better support hardware acceleration on native targets, so I rolled back to HaxePunk 1.72a to build this one.

I don’t know why I have to code everything twice. I think it’s a failure to personally commit to my own requirements. I knew I wanted to have the ability to run the simulation separate from the display, but since I didn’t commit to it at the start, I  tightly coupled the simulation with the rendering system. Then of course I get the game working and realize no one is going to have an idea if they did well or not. The game showed you how many turns you took, but this doesn’t factor in how hard the level is. So then I decoupled the simulation from the rendering. Now I can quietly put it through 50 generations or so to determine how long it runs before it becomes stable, and then use this number of steps and number of remaining  live cells to come up with some estimated “par” value for the player to play against. If I had simply committed to adding this feature in at the start, I could have saved myself some rework.

May as well do a self-review

Monday, December 17th, 2012 12:28 am

Somethings went right, some things went wrong, but they came together in the end to make my entry. For example, in the middle of the dare (Saturday at 7pm GMT) the game I was working on glitched and the tiles loaded from the TMX level file were incorrect – in this case it was a good idea to restart the game with a different concept.


Whilst the idea of running over cats is an original one, it needs a story.


Shown at the main menu, but some other keys like ‘p’ and ‘enter’ for pause and ‘space’ for jump exist.


I wish I had added in a few more kinds of cats and animals, but I probably would have ran out of time.


The game itself, is very upbeat, but I suppose it’s got a dark undertone considering you just run over cats.


I did the lazy thing and used mtPaint to make pixel art, but they turned out alright.


Did pretty well here considering the game consists of running over cats.


It was a good experience that benefited me in management of time etc in game developing. I look forward to the next Ludum Dare.

[cache: storing page]