been in a bit of a funk this week but I knocked out an implementation of Kepler's laws and it's lookin' pretty good

orbits can be properly elliptical but not yet hyperbolic.

(the plot culminated in the player character choosing their own destruction by refusing to follow orders to assault a peaceful target)

and while I love the tension that question evokes, I'll have to save it for another time.

the original storyline ended with this quote from Dune:

I know the evil of my ancestors because I am those people. [...] I know that few of you who read my words have ever thought about your ancestors this way. It has not occurred to you that your ancestors were survivors and that the survival itself sometimes involved savage decisions, a kind of wanton brutality which [civilization] works very hard to suppress. What price will you pay for that suppression? Will you accept your own extinction?

I still feel this is a powerful and appropriate philosophy for interacting with other humans around you, but it's woefully inadequate for dealing with existential threats like runaway capitalism.

in 2018 that seems like an ill-considered message to be sending, and I need to take it in the direction of optimistic resistance; more solarpunk with a little meatpunk influence for good measure:

part of the reason I rebooted Bussard is that I'm just having so much fun with Fennel, and I want to use it more.

but part of it is that I was feeling increasingly uncomfortable with the message behind the story. it was a parable in the vein of The Lathe of Heaven, which is a meditation on the Taoist principle of 无为: the art of achieving ends without the use of means. in Taoism, the idea that you can comprehend the impact of your actions enough to act with benevolence is arrogant and foolish.

the next step is to reimplement the ability to SSH into station computers; for that I will probably take the OS subsystem wholesale from the old implementation and plug it into this one and just redo the client side, because I was pretty happy with how that part of the system worked before.

but that means diving into the OS code which was my first introduction to back in 2015:

OK, I went ahead and rebooted the Bussard codebase with a fresh start. The new version lives at and is written in 100%

it's still pretty rough around the edges, but I have a functioning solar system orbital model and fully sandboxed ship computer evaluation context.

bussard boosted

I'm strongly considering a rewrite of Bussard because it's too ambitious; I think a more focused game could have a much better chance of actually being finished, and I've learned a lot in the past year from the game jams I've participated in.

I want to put the story and gameplay first, and I think that means easing off on the "programming IS gameplay" aspects because I'm nowhere near clever enough to find a way to make that actually fun.

development on Bussard has been on hold for a bit, but I'm hacking away at the underlying engine, Polywell:

in particular I'm in the process of porting it to the programming language (still running on ) and removing a number of hacky bits, making backwards-incompatible changes. I just landed Emacs ido-style completing "invoke command by name" today!

current LOC, Lua: 1308, Fennel: 525

Development has been on hold for a while as I've been working on the compiler which I hope to eventually use from Bussard.

I blogged about using some of these same technologies in a recent game jam at and

If you're interested in Bussard you'll probably also find these interesting.

Oh, uh, massive spoilers, obviously.

This outline was largely inspired by Ursula K. Le Guin's novel "The Lathe of Heaven", which I read several months ago and haven't been able to shake loose from my head since.

I've had a hard time figuring how to intertwine the plot and the puzzles/challenges around it so far, but over the weekend I finally pushed out a comprehensive outline I feel pretty good about.

My next plan is to programmatically generate planet textures to replace all the planet sprites and hopefully the stars as well. This tutorial looks promising if I can adapt it to which I don't believe actually uses the libnoise implementation.

Finally a little easter egg; I implemented Tetris on the Emacs-clone editor thingy.

There is one other in-game minigame hidden away but I won't give that one away.

This one is a flight thru the Sol system, which is currently the most interesting of the 11 populated systems in the game.

The latest beta release has all the planets rendered with static sprites, but on the master branch they're rendered as rotating textured spheres with shaders.

How about some , eh?

This first one is the rover system; you control it as it navigates thru the map using a variant of the Forth programming language.

Hey it's @technomancy moving my gamedev-related posts to this account.

Bussard is a spaceflight adventure game I'm working on where programming is a core mechanic. It is free software implemented with the game engine.

I've been working on it since mid-2015 on and off. It contains a port of Emacs, a lua repl, a fake unix, a lisp compiler, a forth implementation, and more, all as functional environments you can interact with and explore.

Gamedev Mastodon

Game development! Discussions about game development and related fields, and/or by game developers and related professions.