Endless Sky is a 2D exploration, trading, and combat game set in space.
What inspired the creation of Endless Sky?
Partly, I just got tired of waiting for someone else to create a modern
remake of one of my favorite games from my childhood, Escape Velocity.
But also, for years I've wanted to "give back" to the free software
community in some way, and I've heard games described as one of the last
areas where free software can seldom compete with the proprietary,
commercial options. I've been playing The Battle For Wesnoth (another
GPL-licensed game) for the past 15 years or so, and have seen how the
Wesnoth community has created an enormous amount of content that has kept
it fresh and interesting for that whole time. My hope is for Endless Sky to
grow into something similar.
How are people using it?
It's a game; they're using it to waste colossal amounts of their free time.
I've also seen a video where a teacher was trying to use Endless Sky
to teach basic economic ideas. In the game you have a mortgage to pay
off, and you need to make choices of how to earn money - buying
commodities at low prices and selling them high, etc. Make bad
choices, or take on more debt than you can afford, and you can end up
bankrupt.
What features do you think really sets Endless Sky apart from similar software?
I put a lot of thought into making it as easy as possible to add
content to the game. A lot of other games rely on things like Lua
scripting or UV-mapped 3D models, which creates a high barrier to
entry for content creators. I wanted it to be possible for
non-programmers to add their own content, using nothing but a text
editor and a graphics program.
In Endless Sky all the data files, including saved games, are
human-readable text. The data's structure is represented by the
indentation, like in Python code, because I've found that
non-programmers really struggle with keeping their brackets balanced,
even in simple markup languages like YAML. (Of course, it turns out
that non-programmers have trouble keeping their indentation correct,
too.)
Why did you choose the GPLv3 as the license for your code?
I saw it as a choice between either working alone to create a
mediocre, proprietary game, or attracting a community to create a much
higher quality game that will eventually include stories and other
content contributed by many different people. I chose the GPL for the
code, and Creative Commons share-alike licenses for the artwork, so
that anyone building on my work will continue making it freely
available to the world.
How can users (technical or otherwise) help contribute to Endless Sky?
My biggest need right now is to find someone to implement more main
story lines for the game - I don't have enough time to do that while
also dealing with all the bug fixes and feature requests. I'm also
hoping that people will expand the game universe by adding new alien
species to discover, each of whom would have their own unique stories
and technology.
Other more technical needs include updates to the universe editor (a
Qt program), and eventually setting up some sort of server for
plugins.
What's the next big thing for Endless Sky?
Ever since the Steam release I've had a flood of new bug reports and
small feature requests to work through. I'm hoping that I'm now at a
point where most of the bugs have been addressed and I can switch to
experimenting with bigger, more interesting changes - a dynamic
economy, missile tracking that takes your ship's size and temperature
into account, better controls for commanding a large fleet, etc.
Enjoy this interview? Check out our previous entry in this series,
featuring Guillaume Roguez, Ring Project Director.