The Awakening

Welcome to my Starflight blog!

Allow me to start off by giving you a little background about me. I used to be a game programmer. Starting in 1996 and ending in 2010, I was a game programmer for much of that time frame. The first company I worked for was Bethesda Softworks. While I was there, I worked on several games, including Battlespire, Redguard, PBA Bowling 2, X-Car: Experimental Racing, and Burnout: Championship Drag Racing. The last game company I worked for was Rainbow Studios, which was a division of THQ. At Rainbow, I worked on Cars: The Video Game, Cars: Mater-National, Deadly Creatures, Dood’s Big Adventure, and several other unreleased games.

So now you know I am a bona fide game developer with many published games under my belt. My specialty is the game engine which includes graphics, artificial intelligence, physics, sound, music, networking, and so on.

It’s been 7 years since I have done any real game programming. Recently, I discovered that Unity Technologies have made their game engine available to hobbyists for free. I decided that it might be fun to get back into game programming by learning Unity. What better way to learn Unity than to remake one of my favorite childhood PC game: Starflight.

Starflight Box ArtStarflight came out in 1986. I was just entering high school. I was quickly amazed and enthralled by the planet generator that this game uses, and it was the source of much fantasizing and inspiration for me. This game is deceptively simple – after all, it shipped on only two 5 1/4″ floppy disks. I spent many man-weeks exploring the Starflight universe and wondering at the technical aspects of it. I never did beat the game.

So, now that brings us to today and this website. I intend to chronicle my journey remaking Starflight with Unity, and sharing my experiences here. Hopefully, someone will get a kick out of this.

I fully intend to give credit where credit is due for all the things that I find on the Internet that I can use either in the game or on this website. For example, I found the box art image, that is displayed here in this post, at http://otherelectricities.com/neckdeep/starflight.html – an interesting web page. This is the exact box art for the version of Starflight that I have sitting on my desk, which I have had in my possession for 30 years.

By the way, this post has been made sticky so it will always appear first on the home page. All of the posts following this one appear in reverse chronological order, so that my frequent visitors are able to easily keep up. If you would like to start reading my posts from the beginning in the correct order, go directly to my next post which is over here.

If you would like to contact me, send me email at marvin dot herbold at gmail dot com.

By |2019-01-11T18:31:22+00:00June 9th, 2017|Starflight|2 Comments

Think of Our Wives and Little Blobbies

On Sunday I didn’t have much time to work with the remake, so I decided to do something that would be relatively easy to accomplish in a short amount of time.  I created the Spemin Scout, Transport, and Warship models.

As I have done with all of the other ship models I have built to date, the first thing I did was pull up the original ship scan into 3D Studio Max.  Then I created 3D models on top of that to match.  I used various tools such as the FFD modifier to “sculpt” the parts of the model to match as closely to the original silhouette as possible.

After modeling, I proceeded to UV map the models and then created the textures for them using Filter Forge.  I think it turned out nicely.

Also, using 3D Studio Max and Photoshop I rendered out and created the ship scan images.  You can see one of them in the feature image at the top of this post.  The feature image shows an encounter containing all 3 Spemin ship types.

By |2019-02-26T14:48:36+00:00February 26th, 2019|Starflight|1 Comment

Automatic Ship’s Log

Hello all!

Last weekend I decided to go ahead and implement one of the lesser used features of the original game… the ship’s log.  In the original CGA and EGA version, the ship’s log was nothing more than a simple text editor that the player could use to put in notes.  That’s it.  Here is a screenshot of it.

Ships Log

It was just so much easier to use a pen and paper to write stuff down than to use the in-game ship’s log editor.  It’s 2019 so I think we can come up with something slightly better.

Lo and behold, the ship’s log in this Starflight remake is an auto-logger.  The player doesn’t type anything in at all.  All Starport notices, all answers to questions from aliens, and all messages found on planets are automatically logged with the stardate and time.  The player can quickly review all of these log entries using simple up and down navigation.

Here is a video showing all of this in action!

By |2019-02-25T08:09:33+00:00February 25th, 2019|Starflight|3 Comments

Fun With Craters

As with many things in life, one thing led to another.

It all started when I decided to revisit my noise generator.  I was never 100% satisfied with the one I created because there were some artifacts like the mountains would favor a diagonal orientation.  So, I completely re-wrote the noise generator and now it is so much better.  The mountains are truly random now with no obvious visual bias.

Then I turned my attention briefly to the hydraulic erosion simulation and a sudden thought occurred to me.  Why am I simulating hydraulic erosion on planets that don’t even have an atmosphere?  No atmosphere means no rain.  No rain means no hydraulic erosion.  Whoops.

So, I turned off the hydraulic erosion simulation pass in the planet generator for those planets with no atmosphere.  But then it occurred to me… hey… we know what happens to planets with no atmosphere, right?  We have a “planet” in our very own backyard with no atmosphere in real life.  We call it the Moon.  How is the Moon visually different than the Earth?  That’s right… craters!  Lots and lots of craters.

So, I headed back out into the Internet in search of anything that can help me here.  I came across some very good DEM (digital elevation model) maps created by the very nice folks at USGS.  Take a look at their very nice website here: https://astrogeology.usgs.gov/search

I grabbed some elevation maps of the Moon, of Mercury, and I think either Ceres or Vesta.  I brought them into Photoshop, resized them, and readjusted the values.  Here are the three maps after adjustment:

Craters 1 Craters 2 Craters 3

I updated the planet generator to use these maps (a random one is selected for each atmosphere-less planet).  And here is an example of how it looks in the game (click on the image to zoom in).  The second image shows the terrain vehicle and ship near the rim of a large crater.

Craters Crater Rim

Also – I made it so that for all other planets with an atmosphere, the amount of rain that falls depends on the atmospheric density.  In addition, the velocity of the water moving across the surface when simulating erosion depends on the gravity of the planet.  With those changes, the planets in this Starflight remake look less uniform and more varied.  Good stuff!

By |2019-02-25T06:41:44+00:00February 21st, 2019|Starflight|3 Comments