Recent submissions

Comment · 8 months ago
Star Control 2 (which takes many Starflight influences and also hired Greg Johnson) also used a lot of procedural generation. It has around 500 stars and 4000 worlds with minerals and lifeforms. I recall the SC2 lead programmer Fred Ford saying they used a fixed seed, and they went through many seeds until they found one that looked good. I presume Starflight was of the same mindset.
Comment · 8 months ago
It goes beyond drawing inspiration. Greg Johnson, designer of Starflight, worked directly on Star Control 2.
Comment · 8 years ago
Comment · 8 years ago
LuaCocoa author here.

While the objc_msgSend, objc_msgSend_stret, et. al, is an annoying detail, that isn't really the hard part. (And in fact, all the good bridges use libffi to do more direct invocations and avoids a lot of this problem.)

The hard part of bridging is those places where Objective-C introspection is not powerful enough to discover the types of parameters or signatures of functions. Typically, this is all the C stuff.

So for example, Obj-C's runtime introspection cannot tell you the make up of a struct. So it cannot tell you the size of NSRect, NSPoint, NSSize, or the individual data types inside the struct (and the names of each item if you need to access them).

And the Obj-C runtime introspection cannot tell you about what C functions exist and what the parameter types and return types are. So for example, there is no Obj-C runtime way to look up that CGPointMake takes two CGFloat parameters and returns a CGPoint struct.

Also, inline functions (marcos) in C/Obj-C are also problematic for these bridges since they need to call the functions at runtime.

Apple shipped a framework called BridgeSupport in Mac OS X 10.5 which contains XML data for all the things that cannot be determined at runtime. It also contains .dylibs with symbols for inline functions. BridgeSupport is still in macOS today, but it isn't getting much love and Apple keeps (accidentally?) breaking things in BridgeSupport every release.

Comment · 9 years ago
Comment · 9 years ago
Comment · 9 years ago
I wrote a little about the QFG1 vs. QFG5 inspirations in my blog entry.

But here is a video of the QFG5 dryad dance which will probably start making it clear. https://www.youtube.com/watch?v=D2dTxSCGeNE

And this is from QFG1, which is where the concept of dancing and personality of the fairies originate from. https://www.youtube.com/watch?v=pYpN8Uii6ng

I don't remember if that clip shows all the dialog, but they talk about how they rule the forest and make rainbows and "fairies just want to have fun". They like to dance and don't know if humans can dance.

This video does show you making them mad by walking into the fairy ring (because the human smell is impossible to get rid of). So they make you dance to your death as punishment.

The last fairy message at the end of the credits is also borrowed straight from the game. When you leave the screen in the game, a fairy will fly to you in the next screen to say a randomized good bye message before flying off.

Comment · 9 years ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton