Twitter  Facebook  YouTube  E-Mail  RSS
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 2019-02-01 18:46:09
Homepage: onemanmmo.com email:one at onemanmmo dot com


Just one week until my unique RTS Miranda's Bold New World update is out. Here is a little of the ambience in The Perilous Precipices.

Get 30% off now at theimperialrealm.com.
Read more... (1 comments)
By Robert Basler on 2019-01-25 15:36:50
Homepage: onemanmmo.com email:one at onemanmmo dot com

Bold New World is the upcoming third update to The Imperial Realm::Miranda and a major upgrade to the art and rendering engine. It has been over a year in the making. Bold New World will be released February 8!



The%20Imperial%20Realm%20-%20Miranda%20-%20Plasma%20Storm%20Base_Lo.jpg
[Extinction Salt Flats amid an ion storm, one of the new weather effects in Bold New World.]


Bold New World's features include:

  • New Environments - Four completely new biomes: Vermillion Hardship, Extinction Salt Flats, Perilous Precipices and The Badlands.
  • Spectacular Sky - It's gorgeous, what more can we say.
  • Dynamic Weather - Cloud cover, heat waves, wind, dust and ion storms come and go throughout the day.
  • Improved Terrain - Terrain textures are higher resolution with reduced tiling.
  • Rock Formations - Dramatic procedurally generated rock formations dot the landscape, creating paths and bottlenecks for your fighting forces.
  • Detail Props - Thousands of steam vents, spires, rocks, sticks, crystals, plants and other tiny details add life to the surface of Miranda.
  • Atmospherics - Dust, ash, embers and plant material float in the air, especially after battles.
  • New POI - Visit Deathwish Rock - hard hat recommended.
  • Map Legend - Locations now have names with coordinates.
  • New Launcher - Perfect upgrades, email preferences, password reset and wow, GDPR support.
  • Renderer Upgrades
    • Ambient Occlusion - Scalable Ambient Obscurance makes more beautiful lighting.
    • Ubershader - Miranda's ubershader provides consistent lighting and features for all of Miranda's inhabitants.
    • Shroud - The shroud now has a soft edge.
    • Particles - More particles, more effects, more beautiful.
    • Shadows - Increased resolution and draw distance.
    • Terrain - Increased draw distance.
    • Texture Filtering - Bilinear, Trilinear and 16X Anisotropic texture filtering options.
    • DXT Compression - Textures use about 25% of the memory and offer better performance.
    • Color Correction & Vignette - The last 5%.

Get 30% off by pre-purchasing now at theimperialrealm.com
Read more... (1 comments)
By Robert Basler on 2019-01-17 15:09:12
Homepage: onemanmmo.com email:one at onemanmmo dot com
TLDR; Bold New World could be live today, but I'm finishing up the promo stuff and some last little art tweaks.

I realized it's been a while since I've posted anything about what's going on with Bold New World, so here's the good news: All the code is done. All the new environment art is done. The new launcher is working.

I tested Bold New World against everyone's game data this week, so when it comes out, all your forces will be intact and your shroud progress preserved. The world conquest map is getting reset. Players will have to reinstall with miranda_setup - I can't figure a way to patch it.

I did a couple of what I thought would be small tweaks to rendering of distant things last week but I'm kind of thrilled with how that worked out. Draw distance is impressive. Miranda is looking the best it ever has.

So what's left?

New screenshots and a short trailer for the website. Everything that exists now is no longer representative. That will be hard.

The launcher needs new art and I want to update the background image during login. That should all be pretty easy once I have new screenshots. I've also been noodling around with a new startup splash screen in the evening.

I have some writing to do: press release, update the website, itch store, misc gaming websites, various blog posts I've been saving. And I have one fixed bug left to verify.
Read more... (2 comments)
By Robert Basler on 2019-01-06 19:38:46
Homepage: onemanmmo.com email:one at onemanmmo dot com
I've been kind of dragging my butt writing a 2018 retrospective. I looked at the 2017 one and it turns out I'm still working on #1 of my goals for 2018 and those goals have not changed for 2019. My unofficial goal was to have all my PC's desktops be screenshots of Miranda, and although it took some time, Miranda did finally take over a few months back.
By Robert Basler on 2018-12-23 15:34:20
Homepage: onemanmmo.com email:one at onemanmmo dot com
I watched "Every Upcoming MMO & MMORPG 2019 And Beyond!" yesterday, and it was a little disheartening. I've been playing Guild Wars 2 for years, I've racked up hundreds of hours, it is spectacularly awesome and beautiful, but I'm sort of running out of things to do in it. I'm looking for something new to play and the current PC MMO market isn't looking very promising.

You're probably going to smirk at this comment from someone who's making a "games as a service" game, but GAAS isn't really working out for me as a player. Games are living far longer than they should. I'd be excited by a new Star Wars MMO, but there's already a Star Wars MMO, it came out in 2011 and shows no signs of being replaced. The Old Republic was good, I quite liked it, I played it for a few months, but at some point you're done as a player and want a new game. Publishers on the other hand, don't want to compete with themselves. "You want to play Star Wars? Here's the Star Wars game. It was really expensive to make." Similarly, The Lord of the Rings MMO was fun back in 2007 but it's still going! Yes, there is apparently a new LOTR game in the works at last.

I think part of the problem is that in the past, AAA MMO developers have just aimed too big. Every game doesn't need to be on the scale of World of Warcraft. I'd be quite happy with an experience that topped out at a hundred hours or so. That's still a big game for most people. Given that making content is a huge part of the cost of developing an MMO, maybe if developers didn't make so much of it, the games might not be so overwhelmingly expensive to make. Sure, if you have a massive hit then build an add-on, but maybe don't start with 12,000 hours of content. Amortize the tech cost over multiple titles.

Since I'm making a wish list, I'd also like some more options that aren't set in the middle ages. I loved The Secret World with its twisted take on the modern age. I was so disappointed when after I watched the amazing Cyberpunk 2077 Gameplay Reveal, I found out it was a single player game. I'm sure it will still be great, but I really like MMOs.

For a while I had been thinking that a Fallout style game would be really interesting as an MMO. It would have a futuristic open world, vaults to explore, loot to pore over, mutant beasts to flee or hunt. So I was quite excited when I heard Bethesda was making Fallout 76 because their production values are generally pretty good, and it sounded like the scope was a little smaller, but apparently it's just broken.

The original plan for Secret Lair Games was to make more, smaller MMOs. Maybe it'll get there.
Read more... (0 comments)
By Robert Basler on 2018-12-15 00:55:51
Homepage: onemanmmo.com email:one at onemanmmo dot com
I'm making a blog post of this in case anyone else ever runs into this problem so that the web won't let them down.

I was having a problem where wrong, or maybe old vertex data was being rendered after the program had been running for a while. I checked everything, and as it turns out everything was in fact working exactly as designed. To try and narrow down the problem, I spent a day building a frame debugger so I could isolate the vertex/index data that was rendering incorrectly. Once I had this working I noticed that the VBO ID's of the meshes that were rendering incorrectly were ones that had been recycled by OpenGL.

The%20Imperial%20Realm%20-%20Miranda%20-%20Glitch_Lo.jpg
[It does make pretty glitches.]

By Robert Basler on 2018-12-03 02:54:47
Homepage: onemanmmo.com email:one at onemanmmo dot com
Vermillion Hardship is the eighth and final biome for Bold New World. I finished up most of the work for it last Monday, the rock formations are looking great, texturing looks really sharp, and I made several new microprops. I'm finally starting to feel comfortable making my own art in Blender. The last thing left to do is to find some new larger decorations since I removed all of the existing ones.

While I was thinking about that, I started on my QA pass. It didn't take long to find a big problem. The ability to move around Miranda smoothly has always been a huge priority for me, and at the start of the week, movement was very jerky due to an inconsistent frame rate. Luckily, optimization is just about my favourite thing to do as a programmer. You don't have to figure out how to make something new, you just have to find out what's slow, and then puzzle out how to make it faster. Oftentimes, much, much faster. So I turned on Miranda's frame profiler and found several functions which were sometimes taking a very long time to execute (as long as 250ms - a whole frame usually takes just 16ms.)

The cause of the 250ms delay was Miranda's model loader. Miranda loads 3D models on a worker thread so that doesn't affect framerate, but once they are loaded they have to be put into a tree for rendering which is done on the render thread. It turns out that occasionally a whole bunch of models finished loading at the exact same time which caused that frame to be very, very late. The fix was to simply put a timer on the render thread model loading code so that it can't run for more than 5ms. Anything that doesn't get done immediately when it comes in, gets done over the next few frames until all the models are processed.

The next delay was 180ms spent compiling the material script for each block of microprops. It turns out that too was running on the render thread, so I moved it to the already-existing worker thread that builds all the renderables for the props, easy peasy.

Next up was a 175ms spike processing compiled material scripts. Every 3D model in the game has a list of materials associated with it. Materials control the renderer to tell it how to render each and every triangle that makes up a 3D model. Each material has a set of passes, each pass has a set of shaders. Like the model loader, it happened that occasionally a lot of new material lists were queued up for processing on a single frame. The first step was to limit the number of those processed each frame, and that got the time down to about 75ms - still far too much. Miranda's renderer processes a full material list at a go and one of them was simply too long. When Miranda loads a new set of shaders for a pass, it checks to see if it has already loaded that particular set of shaders before. With all of Miranda's new art, there are far more shaders than there used to be, and the code to check for an existing shader got called a lot of times which was where the problem lay. The shader comparison function itself is pretty short, so first I removed a couple of memory allocations and simplified some string handling, but that only got me a few milliseconds. Miranda was doing a full source code comparison of the shaders, so next up was to change that to a comparision of a cryptographic hash of the source code. That got it down to about 35ms at the end of Friday.

So there's still work to do on that one, plus probably another half dozen to look at in the 30-40ms range which I'm hoping won't be quite so difficult. But even with just those improvements, by Friday afternoon movement was looking a whole lot better. Pretty slick in fact.
Read more... (0 comments)
By Robert Basler on 2018-11-27 02:17:34
Homepage: onemanmmo.com email:one at onemanmmo dot com
Maybe you read my tweet that I'm building a dynamic weather system, so you're probably wondering "Is he EVER going to finish this thing? How long can this go on?" Well, it's super-cool-looking, so there.

The whole thing came about because I was playing with GIMP to do the color correction for the biomes when I accidentally created an awesome looking screenshot that I just couldn't not put in the game. All I needed to make it work was a scheduler and a map to control where and when the effect occurs. Since I was in there anyway, I made it support all of the weather effects that were already in the game but were turned off because I didn't have anything to control them. Miranda now has a five hour day. The dynamic weather system also controls the sky.

Effects include a dust storm, an ion storm, super-hot weather and a fancier cloud shadow system. If you're looking for them, right now they only occur in the white area except for the cloud shadows which work everywhere. I'll add weather effects to the other areas in some happy future where I have tons of free time.

I meant to finish QA-ing this tonight, but instead I watched Deadpool 2. The world needs more R rated superhero movies.
Read more... (0 comments)
By Robert Basler on 2018-11-09 21:56:02
Homepage: onemanmmo.com email:one at onemanmmo dot com
Today is my 9th anniversary working on The Imperial Realm::Miranda so I decided to take the day, have a little party, eat cake and play the game I made.

Miranda9Cake_Lo.jpg
[Happy Birthday Miranda]


I had 110 kills at the end of the afternoon which is pretty good.

And since you've all been so very patient and supportive all these months, here's a little peek at what's coming in Bold New World.

BoldNewWorld_Lo.jpg
[The Perilous Precipices]


You can see the Silverswords and the volcanic vents at the bottom as well as one of the new rock formations and the sky. Like before, everywhere you can see, you can set up a base or drive your tanks.
Read more... (2 comments)
By Robert Basler on 2018-10-28 19:24:00
Homepage: onemanmmo.com email:one at onemanmmo dot com
The first biome, recently renamed The Perilous Precipices is complete and I am thrilled with how it has turned out. Making an area that is mostly black is quite challenging from an art perspective because black on black doesn't really look like much. I wanted to have some unusual plantlife in the area and I remembered the Silversword plant I saw at the top of the Haleakala volcano. I struck out at finding a pre-made model (although I did find a lot of lovely silver swords,) so I took one of my photos from my trip and created my own low-poly take on that plant.

The%20Imperial%20Realm%20-%20Miranda%20-%20Silverswords_Lo.jpg
[Miranda's Silversword Plants]

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)
Enabling NVidia GPUs on Optimus Laptops - 2014-12-03 02:31:40 (4 comments)
Looking for a Fast Square Root - 2012-03-29 11:19:56 (4 comments)
Ever Forward - 2019-06-07 01:38:08 (0 comments)
Bold New World Micro Trailer - 2019-02-14 17:59:12 (0 comments)
Levelling Up! - 2019-09-09 17:29:45 (0 comments)
Bold New World Trailer - 2019-02-19 18:27:55 (0 comments)
Spy Satellite - 2019-04-28 23:18:27 (0 comments)

Recent Comments

Crash Reporter - 2019-11-08 14:42:11 (1 comments)
Addendum: Some virus programs will block transmission of the dump file unless you lightly encrypt the dump data when sending it from the client.
Being Rejected by 36,261 People Feels Really Bad - 2019-10-04 13:10:20 (3 comments)
Thanks for the detailed feedback, that is really helpful. I hope you enjoy the game. There's another big update coming pretty soon now.
Being Rejected by 36,261 People Feels Really Bad - 2019-10-03 16:57:50 (3 comments)
Some thoughts as someone who was brought here by HN and buying it didn't even cross my mind.

1. It wasn't immediately obvious to me where to get this, or that it was available to the general public at all yet.
You need an eye catching "BUY" button. ...
Being Rejected by 36,261 People Feels Really Bad - 2019-10-02 14:06:15 (3 comments)
P.S. I debated quite a while about posting this at all, but bad things are also part of the indie gamedev experience and often people don't talk about them.
Off Topic: CanonImport - 2019-06-07 23:45:27 (1 comments)
Uploading videos to PC from HF-S100.

1) If you want thumbnails:
Connect camera power.
Connect camera to PC via USB cable.
Turn camera on
Open Screen
Press Camera/Play button below screen.
Generate Thumbnails.
2) Run canonimport for directions.
|<      <<      1      2      (3)      4      5      6      7      8      9      10      >>      >|

  Admin Log In



[Home] [Blog] [Video] [Shop] [Press Kit] [About]
Terms Of Use & Privacy Policy