Massively Multiplayer
Real Time Strategy

The One Man MMO Project
The story of a lone developer's quest to build an online world :: MMO programming, design, and industry commentary
By Robert Basler on 2015-06-02 15:40:51
Homepage: email:one at onemanmmo dot com
The first Pre-Alpha invites have been sent and the live server is up and running!

If you're on the very short friends and family list, you should have received an email with the install link and a Secret Lair Code to create an account.

[Doesn't look like much, but this is the first base on the Live Server.]

There is nothing more satisfying than seeing something you've put so much effort into actually working in a live environment.

So if you're one of the lucky few, give the game a try, and most importantly: let me know how things go.

If you didn't get an invite, be patient, these are the early days. This first test is mainly about finding out if the game even runs on other people's computers.
By Robert Basler on 2015-05-26 00:24:17
Homepage: email:one at onemanmmo dot com
I was fortunate to receive an SSD as a gift last week. I had long heard that using an SSD made no difference to build times with Visual Studio. But, everyone raves about them so I decided to use the SSD to replace the main drive in my dev laptop. Better boot times are always appreciated. I was able to install the new drive, image it with the standard Dell factory image, reinstall all my software and then wait through 200+ Windows updates. That took about 14 hours. The result though, was well worth the effort. Boot times are under 20 seconds and I got an amazing 44% reduction in build time from 10:06 to 5:41.
By Robert Basler on 2015-05-20 17:34:32
Homepage: email:one at onemanmmo dot com
Vendors are finally done! If you signed up for the Newsletter (at the little envelope icon above) you just learned all about it.

Next on the list is setting up the server for friends and family testing.

[Selling components to a Vendor.]

Read more... (0 comments)
By Robert Basler on 2015-05-03 14:35:32
Homepage: email:one at onemanmmo dot com
The server software I wrote at EA had a really nice feature: it would display an XML file of its status if you made an HTTP GET request to a specific port on the server. This is handy because it can be used by server-farm monitoring tools or for things as simple as a server up/down indicator. I wanted a server up/down indicator for the site as well as on the game's login screen.

Adding an HTTP server to the game server's front door was easy, a few lines to parse a new command line parameter for the port number, four lines to add the HTTP server and about 20 lines to output the game status as XML. Easy peasy.

<?xml version="1.0" encoding="utf-8" ?><server><status>up</status></server>

Now I needed to get that status to display in the HTML5 news page that displays on the game's login screen. My whole game UI is built on AJAX and XML, so I figured it would be pretty easy to use the same tools to add a simple up/down indicator. Wrong!
By Robert Basler on 2015-04-26 23:00:36
Homepage: email:one at onemanmmo dot com
I've been using this for a while, but especially this week so I thought I'd share: it's a class-based state machine. State machines are usually big and messy and awful spaghetti code. Making states class-based makes a state machine cleaner and much easier to follow.

Here's the base classes for the state machine.
By Robert Basler on 2015-04-13 10:18:28
Homepage: email:one at onemanmmo dot com
When I started developing The Imperial Realm :: Miranda, Content Delivery Networks (CDNs) were big and fancy and expensive and only used by giant multinationals so I never imagined I'd be able to afford to use one.

With me posting more and more big screenshots on my websites like this one:

[Random screenshot of the week.]

Last weekend I decided it was time to research solutions to improve my websites' performance.
By Robert Basler on 2015-04-02 11:57:33
Homepage: email:one at onemanmmo dot com
I've been working this week to get combat up and running reliably. It is starting to come together now, at least well enough for a screenshot.

[Things are going badly for Red. Blue is getting a lot of loot!]

By Robert Basler on 2015-03-26 02:16:40
Homepage: email:one at onemanmmo dot com
I showed The Imperial Realm::Miranda at Full Indie again tonight. Just like last time it was great fun.

I got to The Pint at about ten after six to set up, found myself a table (actually the same table as last time) and started up the server. As always happens when you want to show someone what you're working on, something immediately went wrong -- the server wouldn't start. I knew it had to do with setting up the game to run standalone with no internet. Firing the game up under the debugger I was able to figure it out just in time for the 6:30 start. It looked kind of funny having 9 instances of Visual Studio running while I was demoing the game. The good news was that once I worked through that little problem, the game ran flawlessly all night.

[During one of my breaks, I took a quick snap of my table.]

Like last time, I talked pretty much continuously from 6:30 until 9:45 (I got just two five minute breaks.) Most people stayed 10 minutes or more and I was often speaking to several people at a time. There are some real serious strategy game fans out there.
By Robert Basler on 2015-03-22 01:26:40
Homepage: email:one at onemanmmo dot com

If you aren't a programmer, here's a little sample of what we do to make games for you.

Today, at long last, I fixed a bug that goes back to Christmas 2014. The bug first appeared right after I updated the renderer for better performance. One of the things that that change added was a hard limit to the number of shader programs the Lair engine could support: 4096. I figured that should be lots since I only had a few hundred shaders even with permutations. One afternoon while cruising over Miranda, the game halted because it had hit the limit of shader programs. I was shocked. But when I looked into it the reason became readily apparent: I never released shader programs from materials when they were unloaded. It was a simple oversight, quickly rectified with this little bit of code:

void Pass::ShutdownProgram( void )
if ( mProgramId == 0 )
if ( mGeometryShaderId != 0 )
mGlShaders->DetachShader( mProgramId, mGeometryShaderId );
mGlShaders->DestroyShader( mGeometryShaderId );
mGeometryShaderId = 0;
if ( mVertexShaderId != 0 )
mGlShaders->DetachShader( mProgramId, mVertexShaderId );
mGlShaders->DestroyShader( mVertexShaderId );
mVertexShaderId = 0;
if ( mPixelShaderId != 0 )
mGlShaders->DetachShader( mProgramId, mPixelShaderId );
mGlShaders->DestroyShader( mPixelShaderId );
mPixelShaderId = 0;
mGlShaders->DestroyProgram( mProgramId );
mProgramId = 0;

Now I was destroying the shaders and programs when they were no longer needed. Problem solved.

Then the Bad Bug showed up.
By Robert Basler on 2015-03-15 15:03:19
Homepage: email:one at onemanmmo dot com
This started as a comment in reply to Tripleskit but then I wanted to add a picture so...


When will this game be accessible for open/close beta/alpha?

Ahh, when. The ever-present question. With just me to do the work, not a team of 300, or even 10, things happen a little more gradually than they do with bigger projects.

More Posts

Project Line Counter in Visual Studio 2010 - 2011-06-04 00:01:45 (3 comments)
A Chrome UI - 2011-04-07 10:28:46 (3 comments)
Looking for a Fast Square Root - 2012-03-29 11:19:56 (4 comments)
Happy MMO Easter - 2011-04-22 16:17:59 (1 comments)
Resource Fields - 2016-03-19 12:48:54 (1 comments)
Off Topic: CanonImport - 2015-10-28 23:07:19 (0 comments)
Trailer Mega-Map - 2015-11-02 19:12:40 (0 comments)
There's Value in Simplicity - 2016-04-17 22:29:49 (0 comments)
Capital City 2.0 - 2015-10-16 00:43:51 (0 comments)

Recent Comments

Explosion Test - 2016-04-09 22:14:57 (3 comments)
There are a few more explosions now. And a variety of sound effects. I'll be putting some more effort into sound soon.
Explosion Test - 2016-04-09 07:38:54 (3 comments)
It worked fine for me :D just looking back through your blog posts :p are these still the blast effects? because they look cool also what is the sound for this blast effect?
Upgrades - 2016-04-09 07:13:38 (1 comments)
Yeahy can't wait for the next dev blog. Sounds like you have had some bad luck with windows 10 it worked fine for me with the previous updates which fixed most of my problems. It makes me happy to hear you have a better machine now :p.
Resource Fields - 2016-03-19 18:01:35 (1 comments)
Hey Robert, it is great to hear an update! loving the resources and ideas. I like the sound of a nice sparkly effect on the resource fields. Looking forward to a public test :p. thanks again for the update :).
Silent Running - 2016-03-08 22:00:33 (2 comments)
I'll write up the whole story when its done.
|<      <<      1      2      3      4      (5)      6      7      8      9      10      >>      >|

Admin Log In

[The Imperial Realm :: Miranda] [Blog] [Gallery] [About]
Terms Of Use & Privacy Policy