Pre-Order the Game!

Desura Digital Distribution

Friday, April 4, 2014

A Makeover

Arpad and I continue to test and improve the game.  One of the things I just did was to give the fleet window a make-over.  It now dynamically re-sizes based on the amount of types of ships in the selected fleet.  The scrollbar for fleet list is replaced by next/previous buttons that allows you to change between fleets if there's multiple fleets in the same point.

Here's a before/after screenshot of fleet view window:

Thursday, March 20, 2014

Progress report

I sent my latest build to Arpad last week, and he gave me a list of bugs and issues that needs to be fixed.  I've been working on those, and also fixing some other bugs that I discovered.  There's now 8 code issues, 1 art issue, and 2 enhancements left in the list (not counting the "Other" category).  As soon as those issues are resolved, and I've finished the planet list, I will update the Desura build.  Then you all can submit bugs that you discover at

One of the issues I worked on is that ETA wasn't being displayed.  So I took time to implement it, and here's a screenshot of it in action:

Let me explain each of the picture.  Top left is the star being out of range for the colony ship which does not have extended fuel tanks.  Top right shows a scout already en-route, with 3 turns left to arrive.  Bottom right shows you being able to change destination, but since it's already en-route to the first star, it will have to continue there, then it'll go directly to next destination.  Hence two ETAs being displayed.  However, since it won't stop at the first star (it will simply continue to next star without stopping there for a full turn), it won't explore the star.

This latter is very useful in cases when you have ships retreating, and you want them to reroute to another star when they're already en-route, this allows you to make orders without forgetting about the fleet.

Hyperspace communications will of course simply change the route to be direct to the new destination.

Friday, March 14, 2014

Space Scanners Implemented!

I realized that I totally forgot the space scanner part of the planets!  So I took time to implement them, and to fix up issues related to it (such as able to select invisible fleets, seeing other fleets not in range between turns, etc).  I also even added a scanner range visual indicator, by pressing "R" (similar to Fuel Range's "F").  I changed the fuel range to be green, instead of empire color, and radar to be red.

Here's a screenshot with me using Deep Space Scanner technology.  Note, fleet's radar is actually centered at the system they're in, otherwise they'd be centered on the fleet.

Announcing the AI Developer

For those who've been worried about the AI for Beyond Beyaan, worry no more!  I am now joined by a Dr. Arpad Kelemen, who specialize in AI.  Let me introduce him:

"I am the #2 designer and developer of reMaster of Magic, which is the latest open source attempt to revive the best turn based strategy game idea of all time – Master of Magic. Master of Orion 1 is #2 on my list. I am a computer science PhD who is an extreme Master of Orion 1 fan since it came out. I am also a funded academic researcher who leads developments of computer games that involves programmers, doctoral students, and faculty at an American university.  My Ph.D. was in AI theory and AI software development. I published many scientific papers and books on AI and taught AI courses at a university."

Right now, he is assisting me in testing my game and giving me feedback on bugs and things that needs improvement.  When the game reaches a stable state, with all the rules frozen and bugs fixed, then he will start development on AI.

Please welcome Dr. Arpad Kelemen!

Wednesday, March 12, 2014

Planet code ~95% done!

Yes, you read the title right, the planet's code is about 95% done!  The remaining 5% is for minor stuff like adding to list of notifications the player gets when starting his next turn, bug fixes, stargate which isn't implemented yet, planetary bonuses being applied, and number tweaking.  Now I'll finally go back to the Planets List screen and finish it.

The following has been implemented:

Factories, with robotic controls and refitting

Environment, with pollution cleanup, terraforming, atmospheric terraforming, soil and advanced soil enrichment, and population growth (yes, you can actually generate waste now, and reduce max population)

Missile bases and shields, including upgrading older bases (Yes, missile bases factor in your available technologies when determining how much it costs)

Display text for each of the field to correctly show what that field is working on ("Building Shield", "Atmospheric Terraforming", etc)

Matched the planet type generation to MoO 1 (such as higher chance of hostile planets at blue stars, etc)

Matched the planetary bonus generation from MoO 1 (even though their bonuses are not actually applied yet)

Matched the star type generation percentages from MoO 1 (Such as 25-30% chance of having red star, etc)

Fixed some crashes that I came across.

Thursday, March 6, 2014

Slowly matching MoO 1's mechanisms

If you follow my commit history, you'll see that I'm working on under-the-hood for matching up Master of Orion 1's mechanisms.

It is a bit tedious work, nothing too exciting.  But I thought I'd let you know that work is still under way.  The planet list is mostly implemented, but required that I finish the planet mechanisms before I can finish the planet list.  So as soon as missile bases, waste, and a few other items are handled, then I'll finish the planet list and post a new screenshot.

There is one detail that I can't quite figure out.  The manual or the official strategy guide have no explanations on how waste affects population's growth.  Over at Realms Beyond, I learned that max waste is the planet's base size - 10 (terraforming does not count toward the limit, but atmospheric terraforming and soil enrichments does affect the limit).  But the actual population loss is still a mystery.  I did some number crunching, and the closest I could get to the game's results is the following:

private static float GetNewPop(float pop, float maxPop, float waste)
float newPop = pop - (pop * ((waste / maxPop) * 0.1f));
newPop = newPop + (pop * ((1 - (newPop / maxPop)) * 0.1f));
return newPop;

So if you happen to have the actual formula laying around, please share, thanks.

Wednesday, January 29, 2014

Still Alive

Yes, I'm still alive, and yes, I'm still working on the game.  The past couple of months I've been feeling a bit burnt out, and just wanted to take a break.  So a friend and I decided to learn how to do networking in C#, by creating a multiplayer Asteroids game, in our free time.  The upside is that as a result, I can copy over the mechanisms into Beyond Beyaan.  We're still not done, there's a lot of stability issues (it crashes or corrupts some memory for some reason), but we're slowly getting there.  So once everything else are done for Beyond Beyaan (including AI), I'll start looking into adding multiplayer.  Here's a screenshot from that game:

Me vs Gold and Repulser Asteroids

I'm going to name it "Asteroids of Beyaan" since it uses the same artwork from Beyond Beyaan :)  I may put it up on Desura as well if there's enough interest.  What the game features:

Physics - Asteroids bounce off each other, unlike most asteroids game, making for a hectic mayhem.  The harder an asteroid impacts your ship, the more damage it deals to you.

Upgradeable ships (5 different ship sizes to choose from, with 18 different artwork per size, and various upgrades like rotation, acceleration, speed, shield, etc)

11 different types of asteroids, each with their distinctive color.  They are:
Gray - Your regular boring old asteroid.
Clumpy - Upon impact with each other, they clumps together to form a bigger asteroid.
Magnetic - When you draw close to this asteroid, it suddenly accelerates to your position due to magnetic attraction, very deadly
Explosive - Instead of splitting into smaller asteroids when destroyed, this generates a shockwave that damages everything nearby
Black - Same as Gray, but Black.  Why? Well, the background is black, so requires a sharp eye for this one.
Dense - Very dense meaning other asteroids bounce off it without affecting it much.  Also harder to destroy.
Gravitic - Pulls everything nearby towards it
Zippy - Low mass equals high velocity, they're speeding bullets bouncing off everywhere.  Watch out for them!
Repulser - Opposite of Gravitic, pushes everything away from it.
Phasing - This asteroid phases in/out of our dimension.  When phased out, doesn't interact physically with other asteroids.
Gold - Gives a lot moola for your troubles (you use money to buy upgrades)


Anyway, back on subject of Beyond Beyaan.  There were three main reasons why I was feeling burnt out.

First one is that Beyond Beyaan at its current state is simply not fun to play because it requires all components to be in place before it's playable and fun.  Hence my "break" in making an asteroids game.

Second, my family and I got sick a lot over the holidays, most of them minor colds, but enough to hinder my work.  I even got shingles :(

Third is the UI.  I've been trying to create the Planet Overview screen, trying to cram everything into 800x600, the minimum resolution that the game supports.  No matter what I do, it won't fit, or don't look good.  Finally. this week, I decided that I'll just make my life easier, and expand the min resolution to at least 1150 by 600 (any resolutions bigger than this will be supported).  This has helped me get back into the game.

Here's a preview of the planets view: