Massively Multiplayer
Seamless Open-World
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-12-31 16:52:19
Homepage: onemanmmo.com email:one at onemanmmo dot com
The goal this year was to finish the game. While I didn't quite achieve that, Miranda is now very close to the game I have always imagined. A lot of Miranda's art and design content has been finalized and it is a much, much more polished experience than it was a year ago. There is a surprising perceptual change when you finally eliminate all the little glitches you've let slide for so long - the game miraculously transforms from broken to ahhhhhhh.

I opened the year with a major rendering overhaul, dragging framerates on my aging laptop from a low of 50FPS back up to an acceptable 120FPS. After that I realized I was tired of seeing just the salt flats in my screenshots so I added the Scorched Desert biome.

The%20Imperial%20Realm%20-%20Miranda%20-%20Happy%20Days_Lo.jpg
[Some days I'm quite pleased by the way my little RTS is looking.]


I started work on the preparations for the Friends and Family Pre-Alpha in June, fixing a ton of pathfinding and collision issues, getting Miranda set up on Amazon AWS, adding an automated crash reporter and bug reporting form as well as many more last minute additions. In-game Vendors were also new around this time. In July I added unit caps and work started on the New Combat Model which continued through August and September and culminated in the addition of the set of 65 components and 43 standard unit designs that make up The Independents Faction.

The%20Imperial%20Realm%20-%20Miranda%20-%20Independent%20Force_Lo.jpg
[The Complete Independents Forces Initial Loadout.]


One of my breaks from this huge stretch of unit and game design was the addition of the oh-so-attractive deformable terrain. Also this summer there was a great article on the Miranda at MMOS.com. In October, work started in earnest on the first trailer for the game. The trailer is almost entirely in-game shots so I added a new Capital City, a new sky, many new weapon and explosion effects, a crashed spaceship, Mansion sur Mont, and an in-game film-maker and video recording facility.

The%20Imperial%20Realm%20-%20Miranda%20-%20Muzzle%20Flash_Lo.jpg
[I painted that muzzle flash.]


My final feature of the year was based on feedback from my third Full Indie Demo night so now when the player scrolls the terrain with the mouse, the mouse cursor changes to red arrows and when he clicks on the terrain, it plays an animation to let them know that the units will start moving soon. While I was at it I added mouse cursors for repair mode and sell mode. I had hoped to complete the Empire's forces before New Years, but there is still a bit of work to do on the art for those units before they will be ready for players to test. Overall this year about a quarter of my time was spent on additions, a quarter on bug fixes and about half on general improvements.

I was much more diligent about blogging this year, I was trying for one post a week and I almost made it. My favourite blog post of the year was The Imperial Realm::Miranda Pre-Alpha - how could it be any other? (Although Full Indie Demo Night was a close second.)

Resolutions for 2016

  • Miranda will launch.
  • I'll have a month where I don't work evenings.
As for my 2015 resolutions: I bought a D&D starter set and figured out my next project, I did some PR (yesterday!) but didn't end up doing anything with robots.

2015 By The Numbers

254,102 Lines of C++ Code
5,473 Lines in largest file scene.cpp
1,124 C++ files
1,316 Tweets
855 Followers
634 Items in the "what did I do this week" log.
466 UI Files
273 Textures
192 Models
189 Materials
83 Checkins to Mercurial
68 Shaders
44 Blog Posts
31 Facebook Likes
17 Custom Tool programs
8 Server programs

Favourite Devlog Comments

  • Demoed the game at Full Indie to about 20 people. I let someone else drive!
  • Backup doesn't fit on 32GB stick anymore.
  • Started work on Trailer.

Favourite Behind-The-Scenes Screenshot

The%20Imperial%20Realm%20-%20Miranda%20-%20Many%20Moving%20Units_Lo.jpg
[This is what debugging pathfinding looks like.]

Read more... (3 comments)
By Robert Basler on 2015-12-16 23:55:03
Homepage: onemanmmo.com email:one at onemanmmo dot com
I demoed Miranda at Full Indie at The Pint Public House tonight. I nearly missed the start of the meet because the parkade I usually park in was undergoing renovations and had only TWO non-reserved parking spots (which were full.) I then tried the mall parking ($16!) then the T&T grocery store parking (1 hour max - no signs to that effect anywhere) then finally I parked on the street for $6. If you were at the meet you got to see the raw video I've put together so far for the trailer - quite a few people loved the idea of Mansion sur Mont. I also had a number of people come up who have seen Miranda before and were impressed with the game's progress. I am quite encouraged that nearly everyone asked about public playtesting.

As is always the case, the first guy who tried the game hit the one big UI bug I've been putting off fixing. Luckily only one other player tonight hit it.

I was pleasantly surprised to have someone come up and correctly guess the provenance of the game's name. I shared a couple of the easter eggs in the game with him.

As always, I learned some valuable things from watching people play. The first is that I'm going to need to add the Starcraft style (left mouse selects, right mouse attacks) controls in addition to the classic Command & Conquer style (left mouse selects, left mouse attacks) that I prefer. For about half the people who took the helm, their expectation was Starcraft controls.

The other big lesson is that people click a lot more than me when moving units. Several people would click on a unit, then start clicking all over the terrain. What I realized after watching a couple of people do this is that visual and audible feedback for actions is needed when the action doesn't happen right away. With Miranda's pathfinding, units wait half a second after the player selects the destination before the unit starts to move. This gives the pathfinder time to calculate the path and send it to other players so that units start moving at the same time for all players. Other RTS games have a similar delay, but when the player clicks on the destination the game says "moving out" and plays a little click animation. The plan has always been to have that feedback, but with that not in yet, players would repeatedly tell the unit to move to different locations before it had a chance to start moving, resulting in no movement at all. I'll be adding that audible and visual feedback sooner rather than later.

Thanks to everyone who came out to tell me what they think of the game so far. Your help is invaluable.
Read more... (0 comments)
By Robert Basler on 2015-12-11 23:31:52
Homepage: onemanmmo.com email:one at onemanmmo dot com
missiles.gif


One of the 5 new weapon effects: Cannons, missiles, lasers, lightning and flamethrower. Moving on to explosions.
Read more... (0 comments)
By Robert Basler on 2015-12-07 01:16:13
Homepage: onemanmmo.com email:one at onemanmmo dot com
I have written 200 blog posts on the development of The Imperial Realm::Miranda. It turns out developing an MMO is a complicated business!

When I started the blog back in November 2009, I wrote:

I'll state up front, I realize how ambitious a project an MMO is. Even a small MMO is huge, I get that. But I still want to try. Chances are at the end of my time on the project, there will be nothing resembling a game. I think the value here will be what is learned along the way.

While what I have learned has been amazing and valuable, the biggest benefit has been the opportunity to watch my little girl grow up in person instead of over Skype. Developing Miranda has been thousands of late nights, constant budget analysis, a small fortune, stress - and a much closer relationship with my wife, who has been amazing in her support of Miranda. Miranda is a game. We built her and I am thrilled.

I kind of wish I had a big announcement to make to celebrate this milestone, but if you've been following along you already know that I have a trailer and some big game features still to finish... Pre-Alpha Release 4 will be out by New Years. There, nailed it.
By Robert Basler on 2015-11-29 23:44:23
Homepage: onemanmmo.com email:one at onemanmmo dot com
I'm finally feeling pretty good again after a week of having a cold, but progress was kind of sporadic this week. Friday was great fun though! While I have been working on other parts of the trailer I have been thinking a lot about why combat isn't as exciting as I want it to be. I had a bunch of ideas and that all started to come together Friday afternoon.
By Robert Basler on 2015-11-23 02:19:06
Homepage: onemanmmo.com email:one at onemanmmo dot com
A couple of my biggest, baddest bugs fell this week. There are three different types of bugs programmers face: there are bugs where you can easily reproduce the bug and know right away what the problem is, those are pretty easy to fix. There are bugs where you know what the problem is but fixing it is a huge effort (usually because it is in a system made of dozens of massively complicated components.) Lastly there are the really bad bugs, the ones that aren't obvious and can't easily be reproduced. Those ones can take days.

I once worked on a crash bug in a Need for Speed game that took about an hour to set up, and it took 59 attempts to get the bug to reproduce one time. It turned out that the bug depended on the WiFi dropping a UDP packet. When that happened, two packets arrived in the reverse order they normally arrived in, generating a crash.
By Robert Basler on 2015-11-12 17:29:36
Homepage: onemanmmo.com email:one at onemanmmo dot com
The six year anniversary of the start of development on The Imperial Realm::Miranda passed quietly this Monday while I was busily fixing bugs in some new elements for the upcoming trailer. (The people on the mailing list just received the advance scoop on that.)

Miranda's development has taken too long. I'm the first person to admit that. I feel a little awkward now when someone asks me how long I've been working on the game. I've often described Miranda as wildly ambitious but now that it is coming together, I think it is going to be unique and surprising for traditional RTS players.

FirstMultiplayer.jpg
[Miranda has certainly come a long way since this first multiplayer session back in 2011]


So what can you expect from Year 7?
By Robert Basler on 2015-11-02 19:12:40
Homepage: onemanmmo.com email:one at onemanmmo dot com
Something I discovered people are quite floored by when I demo Miranda is when I zoom out from my base, then it switches to map view and then just keeps zooming out. While I don't yet have the full 300x300KM map, even my 20x20KM test map gives a pretty good sense of how big the environment is. So that needs to be in the trailer. The map has been working for a long time, but when I took a close look at it this week, I found a few little things that needed to be addressed.
By Robert Basler on 2015-10-28 23:07:19
Homepage: onemanmmo.com email:one at onemanmmo dot com
Every once in a while being a programmer is a useful skill.

For years I fought with Pixela's broken ImageMixer software to try to get it to download videos from my Canon Vixia HF S100 camcorder. The software worked about 30% of the time, which was enormously frustrating. Recently the PC with that software had a hard drive failure. I couldn't find the original software CD. Canon's website now recommends CameraWindow, ZoomBrowser and ImageBrowser for the HF S100, but after finding the camera box with the serial number and entering that, downloading and installing the three packages, not one could see the attached camera.

I'd had enough. While watching TV with the wife last night, it took just four hours to write new Windows software to locate the attached camera (or storage card,) download the videos, thumbnails and photos from the camera and copy them to a PC with a naming scheme consistent with what I used to get from ImageMixer. I should have done this years ago.

canonimport.jpg

By Robert Basler on 2015-10-25 12:19:20
Homepage: onemanmmo.com email:one at onemanmmo dot com
Recording game video is not as easy a problem as you might think. You likely want to record at 1920x1080 resolution, 60FPS so that's 1920x1080x3x60=373,248,000 bytes every second (373MB/s.) My disk drive is pretty quick, it can do around 85MB/s, some newer hard drives can break 100MB/s. My first video recording system wrote every frame as a PNG and I liked to call it the crash-the-game-button. It would record about ten seconds of video before it ran out of memory and crashed, however once I had half a video recording system, I kind of wanted to finish it. Actually, that's not true. The reason for all this work is that I'm not satisfied with the quality of video produced by screen capture programs. The trailer for Miranda needs to look as good as I can make it.

More Posts

Project Line Counter in Visual Studio 2010 - 2011-06-04 00:01:45 (5 comments)
A Chrome UI - 2011-04-07 10:28:46 (6 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)
Fixin' Bugs - 2016-08-14 11:29:43 (0 comments)
Load Testing by Day, Features by Night - 2016-08-08 11:54:08 (0 comments)
Server Scaling Week One - 2016-10-24 00:30:47 (1 comments)
War Story - 2016-11-21 00:38:06 (7 comments)
On Balance - 2016-09-22 01:50:34 (2 comments)

Recent Comments

The Imperial Realm::Miranda Test Weekend 2 - 2016-12-05 10:21:04 (3 comments)
Player count was up, crash count was down so both those numbers are trending in the right direction. There's simply no way I can find all the bugs myself because everybody plays different and has different equipment (we tracked one player's crashes ...
The Imperial Realm::Miranda Test Weekend 2 - 2016-12-05 10:01:05 (3 comments)
I was not able to play too much this week. But I have to say the amount of crashes was a lot lower. Unfortunately not completely gone though.

Looking forward to see where it goes from here!
The Imperial Realm::Miranda Test Weekend 2 - 2016-12-02 18:56:31 (3 comments)
Version 0.0.7.61

A player found a bug that only affected players playing for the first time today and resulted in most keyboard controls (like WASD scrolling) not working. I have put out a new build which will prevent this problem going forward. ...
War Story - 2016-11-28 13:50:47 (7 comments)
I didn't remove any keys, and if you got into game your account will still be just as you left it.
War Story - 2016-11-28 12:53:41 (7 comments)
Hey Rob,

If you already had a key last time, you can simply keep using that one? Or do I need to request a new one?
|<      <<      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