This is a shot of the new resource fields in an experimental biome that probably will likely never otherwise see the light of day but I thought the shot turned out quite pretty.
[Resource Field in "Glassed" experimental biome]
It has been over a month since the last status update, but nobody worry, the game is still proceeding! I just had an unplanned delay. I've been working on resource fields and harvesting. Three weeks in I realized what I had wasn't going to be as fun or as pretty as I wanted. I did a redesign and had to throw away most of that work. C'est la vie.
Another fun night! I took a big stack of business cards with me tonight and after 3-1/2 hours of continuous talk, I came home with just one. I talked to a whole lot of really interesting people: a woman from East Side Games who shares my love of Age of Empires, I talked game design with a developer working on MechWarrior Online, and I spent several minutes talking with Justin Smith, the guy behind Desert Golfing who put on a great talk
at the Full Indie Summit in October.
I was quite surprised when someone suggested people may perceive Miranda to be a hard-core game like EVE Online. While traditionally RTS games are considered more hard-core than other genres, and technologically Miranda and EVE have similarities (big map, single world simulation, PvP gameplay, both ladies' names) the play experience of the two games is intended to be quite dissimilar. I think the key difference between Miranda and a game like EVE Online is the level of jeopardy. In EVE Online if you make an error you can lose a ship worth thousands of dollars, that you've been working to afford for years, along with weeks or months of character skill advancement. In Miranda if you make an error you may lose a base you spent a few minutes and some in-game resources to build, maybe a few cool unit components you won in combat, and some pride. That's it. The long-term progress you've made in the game is never lost and the setback is intended to be manageable rather than crushing. Even among RTS games, some are more hard-core than others. Miranda takes a lot of its design cues from Command and Conquer which is a more moderate game than for example, Starcraft with its professional league play and APM focus.
Overall the feedback from people was very positive, which for a lone developer is like pure oxygen. Lots of people were taken aback at the scope of the game. Yes, I should have picked something easier.
So many people had stories of playing classic RTS games like Age of Empires and Command and Conquer. There is a lot of nostalgia for classic RTS gameplay. Nearly everyone was enthused to try Miranda out themselves. A surprising number of people commented that there aren't any other games like Miranda - I may have found a niche.
When I got home, my little girl who was supposed
to be sleeping, talked my ear off for 20 minutes straight about her day. One of the reasons I left AAA was so I would be able to know my daughter - so far that at least has worked out really well.
I know some of my friends working in AAA would be pretty amped about a 1 frame per second frame rate increase, but after four days work I was hoping for a bit better results.
Models in Miranda are edited in Blender, exported to Collada format, then a tool converts the Collada file to the LSG (Lair Scene Graph) file format. The old tool would convert each model component (body, turret, wheels, treads, etc.) into a vertex array and an index array (mesh.) The thing you might notice is that many models have several identical components (like wheels) and duplicating the renderables for each of those wheels is an inefficiency.
I posted these earlier this week on Twitter, but Twitter kind of mangles them so here are the latest hi-res screenshots of The Imperial Realm::Miranda.
[Point of Interest - Crashed Spaceship]
Two APC's have just discovered a Crashed Spaceship point of interest. Points of interest will be discoverables for explorers of Miranda. This shot also shows some of Miranda's more dramatic terrain which will severely constrain how forces move.
Adjacent to the wreck of the Edmund Fitzgerald, this independent base shows the current unit cap of 150 units. A hoverster can be seen in the bottom right.
[Devastated Capital City (2.0)]
For twenty-thousand seasons, Miranda was the seat of supreme power in The Imperial Realm. Until the Emperor burned her. Now, these buried wrecks are all that remain of the once great Capital.
This weekend I answered a question on Jonathan Blow's Twitter with a blog link to onemanmmo.com which resulted in over 200 new visitors to The One Man MMO Project. Statistically, a few of those should have been interested in The Imperial Realm::Miranda and visited its website, but not a single one did.
So the blog got a little facelift today, it matches the game colors, has a little info about the game, a screenshot and a more prominent link.
Let me know if you notice anything broken.
The most commonly asked question about PA4 was "when can I play it?" I want to get more players into the game soon so I did some work this week to get the game ready for them: I disabled a few UI elements for features that aren't finished, and fixed a couple of bugs in the installer. I've also been working on automation so that I can push new builds to the test server with a single command which will be a huge timesaver for me, and get updated builds to players more quickly. To the question at hand though, above all, I want the game to make a good first impression so I'm trying to get the big bugs we've found in PA4 fixed before I invite more people to spend their time on it. I haven't decided exactly when yet, but I have decided that I'll be giving out pairs of Secret Lair Codes so that anyone who gets one can invite a friend to play with.
Pre-Alpha 4 is the first release of The Imperial Realm::Miranda with two of the four planned factions: Empire and Independent, so pick a side and get hunting. If you were following along on Twitter last week, you would have seen renders of a lot of the new units for the Empire faction, but here's a screenshot of all the new models.
[The Imperial Faction.]
New in this Release
- New Empire Faction: 70 Components and 34 Standard Unit Designs.
- Enhanced combat visuals, new weapon and explosion effects.
- Map rendering improved and UI reworked to support mouse drag.
- Shader support for Intel GPUs.
- The Capital City can now be found in the north-east.
- New Sky and clouds.
- New Sell and Repair cursors, plus map scrolling arrows and clicking animations.
- New Field of View setting on the off chance Miranda makes people motion-sick.
- Can now zoom UI with Ctrl-+ and Ctrl--
- 184 Changes & Bugfixes
All of the units' weapons damage and effectiveness statistics, as well as speed and unit health are in and ready for testing. Particle effects for moving units are looking a lot better, no more giant clouds of smoke when units start up. Pathing is generally looking a lot better with the elimination of the crazy steering bugs. Vendors have had several nice usability improvements. I'm hoping you'll feel the game is overall less glitchy.
[Pre-Alpha 4 Imperial Attack.]
- If you log out without a construction yard, there is no way to lay your base out the next time you log in. All you can do is sell everything.
- Once created, it is impossible to tell what type of infantry an infantry unit is - even for the owner.
- Most units' special abilities are not implemented.
- Some faster units still need their turning rates tweaked which results in units missing their target then looping back around to park.
- Fence layout is broken. They function as barriers, but it is impossible to make them pretty.
- Occasional GPU hangs on AMD GPUs.
- Some of the new unit models are causing lower framerates and long rubber-band-select times.
I wiped the database again (should be the last time) so testers will have to recreate their account using the Secret Lair Code received previously.
Occasionally Miranda has long frames, one of the big culprits for that is glLinkProgram which takes 50ms per call, sometimes even longer. That's three frames worth just for a single OpenGL call and because of the way Miranda manages materials, it can happen any time. The solution for this in OpenGL 4.1 and above (or if your OpenGL supports ARB_get_program_binary) is glProgramBinary and glGetProgramBinary. These two functions allow you to save and load the compiled version of shaders completely bypassing calls to glLinkProgram. Binary shaders are hardware specific, so they can't be distributed with the game and they have to be discarded if the OpenGL driver is updated, but once they are compiled, Miranda uses the compiled shaders every single time - no more slow calls to glLinkProgram.
I spent a lot of time looking at key-value stores for this since I mostly don't need relational features. Finding none of them particularly ideal, I pretty seriously considered developing my own file-system based key-value store with versioning, ...
Interesting to hear your approach. Personally, I made something similar, that I moved every to be "storage" from HD to Database, but now I'm just migrating it back to harddrive. Mysql is simply not fast enough, I switched to Postgre (much better ...
Very interesting update post. Its good that you are doing that optimization right now to keep the game flowing correctly. Thanks for the update :D
No problem at all, glad it was of some use!
Glad to hear that you are planning them to be weighty out of the gate. I remember the tension evaporating after the first C&C countdown expired in a lacklustre explosion.
Thinking on you saying players ...
You're so right, having players poke each other in the eye repeatedly isn't so fun. Superweapons as they are in Miranda are pretty super. Fire a fuel-air explosion off over a force of tanks and they all disappear. The orbital bombardment can't ...