:: The story of a lone developer's quest to build an online world
:: MMO programming, design, and industry commentary
[The Imperial Realm :: Miranda] [Blog] [Gallery] [About]

The One Man MMO Project

By Robert Basler on 2014-06-27 16:04:44
Homepage: onemanmmo.com email:one at onemanmmo dot com
I've never been happy with the look of the in-game map. This week it occurred to me that maybe a topographical map would be a more in the theme of the game and a military-strategy-friendly way to go.

The Miranda map is made with WorldMachine. A little Googling led me to discover that WorldMachine can generate topographical maps of the terrain it renders. This seemed a whole lot easier than writing a topographical map generator into the world importer I wrote for Miranda, so off I went.

I brought the image into Gimp, inverted it (since the terrain in WorldMachine is flipped on the Y axis in Miranda) and got this:

contourmap_orig.jpg


Originally I looked at old maps and experimented with using a tea-stained paper background, but that didn't really go with the hi-tech nature of a future spacefaring society, so I used Google image search to search for "cool topological map" and found this neat old source of inspiration (12MB).

Next I took the image from WorldMachine, added a transparent layer, then used Gimp's select color to delete the black, then select color again and bucket fill with "Fill Whole Selection" checked, to change the white to blue. I pieced together a background and cleaned it up with the stamp tool and a soft brush, then I added a grid with Filters|Render|Pattern|Grid. Then I added a legend, making up some lore-consistent details, and the final map looks like this:

terrain_lo.jpg

[The full 2048x2048 image is 5M so it will take a while to download if you click it.]


The map covers the entire 20x20km test area I'm currently running.
Read more... (0 comments)
By Robert Basler on 2014-06-16 18:26:37
Homepage: onemanmmo.com email:one at onemanmmo dot com
I was looking at Twitter today and realized I haven't posted anything about The Imperial Realm :: Miranda since the beginning of May. Still here! Working hard. Well except last week.

Since around March I've been working pretty consistently on the trailer for the game. I worked out a script, did the voiceover recording, put together a roughcut using beautiful hand-drawn storyboards like the one below, hunted down some music, and started showing it to people looking for feedback. Since then I've been building all the features into the game that I wanted to show in the trailer. This is not going to be a prerendered scandal like Crysis 2's trailer, I'm using almost 100% in-game graphics.

storyboard.jpg

By Robert Basler on 2014-05-27 15:12:45
Homepage: onemanmmo.com email:one at onemanmmo dot com
I am not a lawyer. This is not legal advice.

If you want to contact press (or anybody) that you don't have an existing relationship with about your game, you have until July 1. Canada's new anti-spam law will come into effect on that date and the implications for anyone with a commercial message are huge.
By Robert Basler on 2014-05-12 13:56:13
Homepage: onemanmmo.com email:one at onemanmmo dot com
Did this screenshot a while back for a magazine but it didn't end up being used. The game looks a lot different now but I really like this shot so I thought I'd share it. I'll be showing off the new look in the Reveal Trailer in a few short weeks.

The%20Imperial%20Realm%20-%20Miranda%20-%20In%20Search%20of%20Prey%20Lo.jpg

The Imperial Realm :: Miranda - In Search of Prey


"In Search of Prey" gives a hint of the scope of Miranda's single 90,000 square kilometre environment. Anything in the screenshot can be driven to without any loading screens. The area they are searching is known as The Wasteland and it is the most inhospitable part of Miranda. The only life there are a few hardy insects and some curious flowers.
Read more... (0 comments)
By Robert Basler on 2014-03-29 14:55:31
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
If you're not happy with the quality of your screen capture, just write out the frames as bitmaps then put them together after with a video tool.

Half day coding this up, tried it, crashed, then I did the math. 30FPS * 1920 * 1080 * 3 bytes per pixel = 178MB/s. That's a lot more than the 40MB/s my disk drive can do. Tried a few different things. The best I could do is about 15 seconds of video using PNG with fastest compression and 512K chunk disk writes before it runs out of memory and crashes.

Oh well, at least the game can take its own screenshots now. And I have a shiny new "crash the game" button.

Looks like libavcodec is the way to go with this.
Read more... (2 comments)
By Robert Basler on 2014-03-15 17:37:04
Homepage: onemanmmo.com email:one at onemanmmo dot com

"I've seen [formations] done really well ... but the guy did spend something like 4 to 6 months on a 2d grid working on just that problem all by itself. And he had done it before." - TheMartian

The one thing you really need to nail with an RTS is unit movement. Unit movement has a surprising number of elements that all have to come together brilliantly to produce smart looking unit behaviour on the screen:
  • Long-distance pathfinding
  • Short-distance pathfinding
  • Collision avoidance
  • Collision resolution
  • Formations
  • Steering & Animation

The%20Imperial%20Realm%20-%20Miranda%20-%20Formations%20Lo.jpg
The Imperial Realm :: Miranda - Formations

This screenshot shows Miranda's new unit movement systems in action. I still have some work to do on collision resolution, but it is already looking pretty sweet. First, you will notice that the tanks are moving in a square formation. There are some units that are out of position because they've just gone around those buildings (you can tell from the dust trails,) but they'll all eventually get back into a neat grid layout. In the bottom left corner is the formations flyout menu ready to select one of the available formations. Once one is selected, the menu shrinks to display just the selected formation.
By Robert Basler on 2014-03-01 15:16:21
Homepage: onemanmmo.com email:one at onemanmmo dot com
I'm feeling a bit snarky this weekend since I haven't been able to try The Elder Scrolls(R) Online beta. The up-side is that I've learned a whole bunch of things about how to run an MMO Beta program that will be really helpful for Miranda.

After all the time I spent playing Skyrim, I was really excited when I saw PC Gamer was giving away beta keys on Thursday, so I hurried over, signed up for a PC Gamer account and lucky, lucky -- I got a key in the email a few minutes later. Hooray!
By Robert Basler on 2014-02-28 09:23:22
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
For whatever reason, Ctrl-Tab in Visual Studio 2010 has been broken for a long time. You have to press Enter to select the new window to switch to it. For ages I hunted for a solution to this problem, enduring the frustration of an extra keystroke but no longer. The problem seems to involve Magnifier, but Magnifier isn't really the problem. I've read "solutions" that involve completely removing Magnifier (doesn't work.) But here is the solution I've gone with (since the problem comes back after every reboot.)

  1. <Windows Key> +
  2. Click on X to close magnifier.
  3. Profit!

Read more... (0 comments)
By Robert Basler on 2014-02-15 17:59:05
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
The%20Imperial%20Realm%20-%20Miranda%20-%20City%20of%20Fire%20Small.jpeg
[City of Fire]


I'm working on the trailer for Miranda with G'Mic and GIMP. This is a reject, but a really cool one.
Read more... (0 comments)
By Robert Basler on 2014-02-15 15:00:13
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
I had need of a good spatial searching data structure. I found a pseudocode example for a quadtree on Wikipedia although it had a few key parts missing which is sort of inconvenient, so I've filled those out and decided to post the full C++ template code here.

This is a leafless quadtree as opposed to a quadtree which has both internal (points to children) and leaf (contain all data) nodes. I'm not yet sure what the performance implications are of the two types other than that the leafless quadtree is going to do more data comparisons than the traditional quadtree during deletion.

This is still somewhat a work in progress and there are some things I'm not entirely happy with. For example, Move could be made faster by avoiding a second search if QuickMove fails. Also see the comments above the Combine method. That said, I've run unit tests against this and can't find any more bugs in it.

The only code missing from here is my vector template used by Query. You can replace that easily enough with an STL vector or the equivalent.

If you are here looking for answers to your homework - go figure it out on your own!

Recent Comments

Crash Early, Crash Hard - 2014-10-28 13:33:12 (1 comments)
Discovered that a call to __debugbreak() in each ASSERT macro right before the call to Lair::Assert() makes the debugger break right at the assert line. Better.
The Miranda Conquest Map - 2014-10-04 11:31:12 (2 comments)
Me too! Tell your friends.
The Miranda Conquest Map - 2014-10-03 23:59:22 (2 comments)
Such map, much control, wow. That aside, I really like where this is going, and I think the 'Qux' style capturing will help to prevent boredom from having to capture empty zones. Of course I imagine that that is the whole point behind it :D

Can't ...
Designing a Secure MMO Login System - 2014-08-30 12:19:14 (6 comments)
Its just a random number appended to the data you are hashing so that if you hash the same password for two different users, they don't have the same hash. That way it is harder for someone with a list of common passwords to hash and compare them ...
Designing a Secure MMO Login System - 2014-08-30 12:11:57 (6 comments)
hi, im new to all this ... what is "salt" ?
1 (2) 3 4 5 6 7 8 9 10

Admin Log In