Tannhauser Q&A: Truly a Labour of Love of Explosions
A few days ago, I put out a call to space game devs to write me if they wanted me to do a Q&A for their game, since I need to overcome my anxiety about writing Q&A questions, and forcing myself to do it would be a massive step in the right direction. One of the devs who responded was Pedro Nunes, who is creating a top-down game of galactic conquest called Tannhauser. You may recall I did a preview of the game a while back and enjoyed it, so I figured I’d use this Q&A as a follow up of sorts, to see how he and the game are coming along. The answers are below, and I hope you enjoy reading them.
Brian Rubin: Thanks for taking my questions! It’s been a while since I visited the game back in February. How’s the game been coming along in the last six months?
Pedro Nunes: Quite well! Since February I’ve added most of the missing features such as customisable fleets, random events, all the remaining factions, loads of stability fixes and new modules… and it now has a really nice soundtrack to go with it. I’m currently adding sound effects and adding a mission generator and finally have an eye on the finishing line!
BR: What’s the biggest challenge you’ve been facing when it comes to putting the game together?
PN: Creating a community has proven very difficult and is a big part of putting a game together, as it provides both motivation and a very useful feedback loop. With only a small amount of time available each day, splitting time between development and community building is quite tricky. On one hand, the work on the game needs to carry on so there is something to show and it is closer to actually being released. On the other, engaging with players, websites and writing blog posts is very time consuming and needs to be done regularly to keep traction.
My current solution is to use Twitter for day-to-day communication and then write up long blog posts to IndieDB which sum up the development for the month. I also want to write some posts about the technical side (e.g. the maths behind the shield effects) which could be of use to the game development community at large but is even a larger time investment!
BR: What the biggest/most important lesion about game design you’ve learned since beginning this project?
PN: That randomness is good but that it can’t be truly random. For example, several of the “random” events could indeed happen at any time but players were running into some events too early in their progression. Sure, it is interesting to run into a splinter wing of pirates in what could be considered “safe” space, but once I saw it triggering in the very first moment the player started a game.
It was a very short game.
After a few moments like these, I’ve started adding further weights and conditions to quite a few systems in the game that rely on the classic random number generator. The result is a game that is less random but, in the end, more fun to play.
BR: Was there an idea that you had at the beginning of the project that has since had to be scrapped for whatever reason, and if so, why was it scrapped?
PN: Originally the game was going to be far more traditional: there were ships the player could buy and then equipment which could be slotted into the various hardpoints. The issue with it became apparent as I started creating the ships: asset creation takes forever, especially for someone like me who has limited experience with modelling packages. Acquiring models from various websites wasn’t much an option, as I wanted to keep a consistent art style and polygon count.
After realizing that I’d never finish the game if I kept on that path, I ended up taking the hexagonal module approach, which would give me a much greater ability to re-use assets and allow a huge amount of customization for the ships. No longer would I need to spend a week modelling a new ship for a faction, I could open up the ship editor and assemble a new one in a matter of minutes.
BR: What’s been your biggest triumph of the project so far, and why?
PN: Successfully writing an engine which can be re-used for other projects. Although we are in the age of Unity & Unreal, a tremendous amount can still be learnt from writing your own engine. I say this with full understanding that writing a custom engine is a lot of work and if someone just wants to “make a game and get it out there” it isn’t the right option, but as a learning process it is fantastic.
This doesn’t mean that I’ve implemented everything from the ground up, with physics and sound still being handled by middleware. However, even those packages still need to be integrated with the engine in a sensible way.
I’ve found that the knowledge gained from writing an engine translates very well into the professional industry as well, making it easier to understand much more complex programming environments.
BR: How are you fleshing out the universe as the game progresses in its development?
PN: The initial set up of having a galaxy which had been controlled by a powerful Empire at one point but which has become fragmented over the centuries isn’t new, but it provides a brilliant background for factions to emerge.
Fleshing this out into something that can be used in a game took a while, writing out the ideas for the various factions and differentiating them. There is little use to having large amounts of factions if they essentially all behave the same, after all. So each faction had to be given their own set of ships, with vastly different preferences.
Fighting a Marauder fleet is a vastly different affair from engaging a Pirate fleet. The Pirates have spiced up engines, keep their ships mobile and try to pepper the player from afar. If they attack a sector, they’ll pillage it and leave to go find somewhere else. The Marauders will have none of that and will arrive with cumbersome, heavily armoured ships which are designed to take a beating and keep going. They’ll attack and claim the sector, enslaving the population.
More recently I’ve been working on the leaders of the factions, giving them a personal presence in the galaxy. Portraits are being outsourced for these characters and they’ve been given their own flagships and will be properly tied into the “campaign”.
BR: You mention getting the game onto Steam once you’re sure it’s ready, how has that process been going?
PN: Originally I thought about getting the game through the Steam Greenlight process and into early access but after further consideration decided to wait further until the game is very close to its “1.0” before tackling Steam. Although I can see the value that early access can provide to a small developer, it also means that a great many people will pick up the game, play it a bit and then put it aside because it isn’t feature complete – and then never come back once the updates are released.
BR: How long would you now say a campaign takes to complete on what would be considered a normal difficulty level?
PN: It will depend on how aggressive the player is but I’m aiming at 6-8 hours of intense space battles. There’s a lot of balancing still going on as the game isn’t linear: the Empire might ask you to take out the Marauder’s home world but as the fleet’s Captain, you’ll have to decide whether this is actually a sensible idea. Sometimes it is, sometimes it is just too dangerous and it is better to do something else.
It is even possible to end up shortening the campaign because you’ve managed to get two enemy factions to destroy each other. Or, if you play very conservatively, the campaign might end up considerably longer as one of the factions has now taken half of the galaxy…
BR: Once a player has conquered the galaxy, what kind of tools will they have available to want them to keep playing? Dynamic galaxies? Editing tools?
PN: The game will be released with a static galaxy, which contains the “campaign”, an arena and several random events to keep the player on his toes. There is also the hardcore mode, which is very challenging as it requires the player to play the game in a different way: after all, you only have one life. The game can also be modded easily, with most of the data being straightforward to modify by one with a text editor.
However, this is very much a labour of love and I have no intentions on working on another title for the foreseeable future, so I want to keep it fresh with regular, free updates: one of those will definitely add dynamic galaxies. Something else I’ve been looking into is putting the player in the shoes of a different faction, such as having the player start as a pirate and have him survive in a galaxy where the Empire is on the rise again.
BR: Finally, what has helped maintain your excitement about the project since you started it?
PN: Seeing ships explode is a big part of it. Sending it out to people testing the game and hearing their feedback is great, in particular listening to some of the stories or a tester finding out some random event they hadn’t discovered before. Tweeting a screenshot and having someone go “that looks awesome!”
But yeah, seeing ships explode. Managing to jump out when my ship’s bridge health is so low that I can’t even see the health bar any more, with engines gone and my fleet reduced to space dust. Conquering sectors after a battle turns in my favour after an Imperial fleet comes to my aid and arrives just before we were about to be wiped out.