Archive for July, 2014


Pinballesque v0.05

I’ve put up a new version of pinballesque.

ml2_thumbNew stuff:

  • The game now has ramps, as I mentioned in the last post. Still have a few sorting issues with the visuals.
  • I’ve redone the multi-level table, which is the one to play if you want to try out the ramps. It’s lit and rendered now, and this time in a glowy, emissive style rather than shiny look I used in table 1.
  • I’ve made some colours inherently more valuable than others (Later in the rainbow is higher). This means the top half should be much higher scoring than the lower half. It also gives me the capability to give higher rewards for harder shots. Unfortunately it adds another multiplier to explain and at present the UI isn’t doing a good job of explaining how it arrives at the score. I’ve also made some internal preparations for the goal system.
  • I’m prompting to user to hit a go button before launching the ball. My hope is that it gives people a chance to familiarise themselves with the flipper controls before being under pressure to keep the ball in play.
  • I’ve tweaked the trajectory hint visuals so it’s clearer that you’re seeing an angle range available at that flipper position, and also the angle you’ll get if you flip right now.

Adventures in Dwarf Fortress Adventure Mode v0.40

The last time I played Dwarf Fortress was in 2006, and I was playing fortress mode, so this is a learning experience for me. Some selected highlights:

Rolling a character

Should I put points into ‘Misc. Object User’? Sounds pretty useful.

I decided instead to put all my skill points into ‘Biting’ instead. My character is a level 14 Biter, or a ‘Professional Biter.’ Hopefully this means I’ll get paid to bite.

Starting out

My character description says I have very short ears, which is weird, because I opted to be an elf.

Reviewing the keybindings:

[o] – Show strongest odor.

[I] – Interact with an object in an advanced way.

[W] – Weather. (Note: unspecified if this is a noun or a verb)

I notice that the Get Item command gives you the option to start a fire. Useful!

The adventure mode quickstart guide:

If you are in a private house, you must first ask the owner for permission before you can sleep. If a commoner is blocking you from entering his home, use the [s] key to crawl under his legs, and then the same key to stand back up.


In the starting location there’s another character. I say hello to them. Crash to desktop. This is v0.40.01, the first release after 2 years of feature development, and no QA.

This time I skip the greeting and get this menu:

  • Bring up a specific incident or rumor
    • Spread rumor of Sunkenbear the Misty Root’s presence in Glacialpelts the Sea of Panting.
    • Spread rumor of Migrur Tundrabeach the Tufted Dunes’s presence in Dunesclods.
  • Inquire about any troubles
  • Ask for directions
  • Ask about the local ruler
  • Trade
  • Exchange, give or take personal items
  • Ask favor, place request, make demand or issue order
  • Ask listener to join you
  • Claim this site for yourself
  • Ask about this site’s neighbours and trade partners
  • Ask about the surrounding area
  • Comment on weather
  • Comment on natural surroundings
  • Accuse listener of being a night creature
  • Inquire about listener’s profession
  • Ask about listener’s family
  • Brag about your past violent acts
  • Say goodbye

I have no idea what the procedural rumours relate to. Did I walk past these people?

Me: (Ask about the surrounding area)

Her: “Ask me when I’ve returned to my home!”

Me: (Tell me about the local ruler)

Her: “The Firey Poet rules Lordbear. I am chieftainess. We are in the right in all matters.”

Me: “Are there patrols or guards?”

Her: “You sound like a troublemaker.”

I try the trade option but apparently that’s only for shopkeepers. Exchange brings up a bartering interface. I successfully trade loincloths with the chieftainess.

Me: (Claim this site for myself) “I’m in charge of Lordbear now.”

Her: “This must be stopped by any means at our disposal.”

Her: “Just now, (player character) claimed Lordbear in the name of (player character)”

I get a menu allowing me to react to this startling news:

  • Ask for the whereabouts of (player character)
  • Ask for directions to Lordbear
  • State opinion that it must be stopped with violent force
  • State opinion that it is not your problem
  • State opinion that it was inevitable
  • State opinion that it is terrifying
  • State opinion that you don’t know anything about it
  • State that it is for the best
  • State that you don’t care
  • State opinion that it is sad but not unexpected
  • State opinion that it is terrible
  • State opinion that it is terrific
  • Change the subject

I ask for more information about myself, in the hope that maybe it’ll lead to a self-assassination quest. It doesn’t have any effect. Nor does asking her to join me on my adventures or accept me as her lord. I accuse her of being a night creature but she just tells me to calm down. At no point does she turn hostile.


Having exhausted the charms of the conversation system, I set off into the wilderness. I meet a flock of peacocks that are mingling with a herd of stray cats. Lots of messages appear in the console. The stray cats affectionately head-bump the peacocks. The peacocks eat bugs. I am informed of this bug by bug.

I decide that I need some food and find the attack command. I attack a peacock and get a menu where I choose the target body part, the attack method and the manner of attack (fast, precise, multi-attack…). I bite the peacock in the belly. “You latch on firmly.” I attack again, and this time have an extra option: “Wrestle using upper front teeth.” “You bit the stray blue peacock in the guts from the side, tearing it. The stray blue peacock looks sick!” I bite the peacock some more, and manage to get multiple simultaneous wrestling holds using my upper front teeth, my lower front teeth and my upper right front teeth.

Before I can press my molars into action, the peacock dies of blood loss. I pick up the corpse and check my inventory. Sure enough the peacock corpse is there, along with quantities of peacock blood contained inside each item of clothing I’m wearing. The peacock guts are still in my clenched teeth. I try to interact with them in an advanced way.


Progress Update

What I’ve been up to lately:

  • I’ve been pitching a concept for a tree-top city builder game, that’s too large for me to self fund.
  • I shifted house.
  • I added ramps to Pinballesque. This turned out to be circuitous. I figured that moving from a 2D to a 3D physics engine would be the simplest way to achieve it, and might get me more realism.
  • After the reimplementation I wasn’t very impressed with PhysX. It had trouble with really fast rotation which I ended hacking by making the ball slide instead of roll (And yes, I did crank the max angular velocity). The continuous collision detection in the version I was using wasn’t reliable, which is bad news for something as fast as a pinball. Initially I tried to implement habitrails as extruded tubes of collision, but a mess of thin collision geo seemed like a far worse solution that just hacking it with a spline.
  • After I wrote my custom physics for rolling along a spline, I went back to Box2D. Now I have a 2D table surface with 3D ramps and rails, and rail visuals courtesy of Curvy. It works well.

I’ll have a new build up after I’ve built a table that does a decent job of showing off ramps.