Twitter  Facebook  Google+  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 2012-05-26 01:41:33
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
My first Screenshot Saturday.

This is the Design screen I've been working on this week. The player designs their units by dragging components from their inventory to the design template. The template's slots change based on which components (of 12 types) the player selects. The components selected determine the unit's strength and abilities as well as its cost. The player can compare stats by hovering the mouse over each component and the full unit's stats are displayed to the right of the template.
By Robert Basler on 2012-05-22 21:31:07
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
Had a bit of a thrill this weekend. An artist friend of mine gave me a sneak preview of something he's been working on. He took one of my in-game screenshots and is drawing overtop of it using Photoshop so we can see what the game will look like once the art-style and effects I have in mind are completed. Wow! So nice looking.

One of my big uncertainties was that I had some ideas which move away from a couple of the age-old standards of the genre. Seeing those ideas onscreen, I'm now convinced they're going to be awesome.

He's still working on the screenshot, so I won't post it yet, but I'm sorely tempted.

As for me, I have some tech to work out. I need shadows, and he has made his case for SSAO. I was resisting that particular feature but it really gives a whole bunch more realism to the models. I need to add some foliage and work on my terrain textures, but those were already in the plan. And he gave me an idea to make my tooltips look way cooler.

It's good to have help from an artist.
Read more... (0 comments)
By Robert Basler on 2012-05-15 14:50:42
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
In Chrome, if you try to use event.dataTransfer.getData("Text") in the dragend event handler, it returns "undefined". In the drop event it works fine. Huh?

Workaround: replace event.dataTransfer.* with dataTransferString as follows. This has the added benefit of also working in all other drag events.


var dataTransferString;

function onDragStart(event) {
dataTransferString = this.id;
...

function onDragEnd(event) {
var sourceId = dataTransferString;
...

function onDrop(event) {
var sourceId = dataTransferString;
...

Read more... (1 comments)
By Robert Basler on 2012-05-14 12:48:03
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
I discovered Screenshot Saturday on the weekend. What a cool idea to promote progress on your games. So I've decided to participate.

The first step for me was to get some of my screenshots up on the site. You'll note there's a new [Gallery] link at the top of the page. I have a bunch of older screenshots in there now - no spoilers - but it is going to grow.

I think the Gallery is pretty cool, what do you think?
Read more... (0 comments)
By Robert Basler on 2012-05-09 14:21:08
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
A demonstration of the proper way to use a laptop for game development.

herecomesthesun.JPG

Read more... (0 comments)
By Robert Basler on 2012-05-07 19:42:36
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
Sometimes your kids bring things home from school that you really don't want. My daughter brought home the plague. For a week I slept all the time. The next week I managed to work up the energy to make it to the couch each morning so I could watch TV. I was so run down I didn't even have the energy to think about my game.

Up until I got sick I had been working on a new particle effects system which I plan to use for smoke and weapon effects. It uses the GPU to move the particles as well as render them so it should be able to render a whole lot of particles. All the cool techniques to power that came out of the very last chapter of the OpenGL SuperBible Fifth Edition. I bought the latest edition just for that chapter.

All of that is on the shelf for the moment. While I'm feeling better and have been back to work for a couple of days, I still don't have the energy to tackle that difficult a feature.

For the last while I've been focused on the appearance of the game and gameplay has suffered. I do sometimes miss having other people around to help things move forward on more than one front at a time. But it is time to start correcting that so I'm back to working on gameplay.
By Robert Basler on 2012-04-13 01:20:41
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
It's funny how things can sneak up on you. I've been working on adding lasers, fixing bugs, mucking about in Blender, and adding animation to my recent art acquisitions. There have been a lot of evil, evil bugs to fix, and I've been pretty heads down. So today, after I hunted down the last bug in a rather long series, I was testing the fix when I had the sudden and shocking realization that the game I've been working on full time for two years and five months had become a game!

Not a monstrous pile of code. Not a graphics demo. Not an engine. A game.

I could show it to a grandmother and she'd recognize it as a game. People can play it. Quite a few people I suspect. Not as many as I need it to, but a lot.

It's still missing many of its big features, and it has lots and lots of bugs, but it is undeniably a game.

More importantly, it is THE GAME!

The catalyst for this project was the great times I had playing co-op LAN games on Tuesday nights with my buddies. I had a vision of the kind of game I wanted to play. None of the big game companies ever made that game. At long last I can play that game.

So cool! So amazingly cool. Wow.

No, you can't play it yet. Sorry.
Read more... (2 comments)
By Robert Basler on 2012-03-29 11:19:56
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
Last night I needed a square root function that would work on 64-bit unsigned integers. I have been using the standard library's sqrt, but my first thought was that an integer square root could be faster.

I looked around and found what was said to be a "fast" integer square root on Stack Overflow by Craig McQueen. I used the code as-is except that I changed it to use 64-bit unsigned ints because that was what I needed.

It seemed like a reasonably performance efficient algorithm, but I had always heard that sqrt, even in hardware, was slow. Because sqrt gets used a lot, I thought better safe than sorry, so this morning I decided to benchmark the integer algorithm against sqrt just to be sure.
By Robert Basler on 2012-03-27 12:57:35
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
I'm not much of a gambler. I don't buy lottery tickets. When I went to Vegas, the only gambling I did was with my change from breakfast. But I don't mind if someone else wants to gamble with their money. I've been thinking a bit lately about the growth of gambling in MMO games and whether its an element I want to include in my game's economy.
By Robert Basler on 2012-03-23 23:44:12
Homepage: www.onemanmmo.com email:one at onemanmmo dot com
I took a couple days off for spring break, but I've been working on getting my models to share rendering resources. I'm afraid I have to let you in on a secret: not all MMO development is super exciting. Up until today, each time I loaded a model, I loaded its complete scenegraph including transforms, and allocated a material list, a vertex array and and a set of meshes for every instance of that model. If I had 20 identical objects on the screen, rendering all those duplicated meshes was really super inefficient.

I had a few requirements:
  • I wanted model loading to be asynchronous.
  • Models should share meshes, vertex arrays and material lists allocated by the renderer.
  • I wanted to be able to customize models individually (hiding submeshes, and moving/scaling/rotating model components.)

The asynchronous loading part was the simplest. I used an AVL tree template to build a model cache, then made a quick little task to do the loading when models aren't already in the cache, then schedule it in my task system. The asset system was already re-entrant so loading the model scenegraphs was no problem. Then I added a lock-free queue to put the finished models into and a step in the update to poll that queue for finished models, and Bob's your uncle. No possibility of long frames during model loading.

Once I had the loading working, the really tricky part started. In order to share renderables between model instances I used a super handy shared pointer template.

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)
Enabling NVidia GPUs on Optimus Laptops - 2014-12-03 02:31:40 (3 comments)
Netgear is Stupid - 2017-01-14 19:48:29 (0 comments)
Full Indie Demo Night 5 - 2016-09-30 02:09:45 (0 comments)
Superweapon Testing - 2016-10-03 23:09:59 (0 comments)
An Algorithm for Generating Contour Maps - 2017-02-13 10:41:06 (0 comments)
Test Weekend Feedback - 2016-11-30 00:50:18 (0 comments)

Recent Comments

Early Bird Test Weekend - 2017-05-14 17:15:54 (1 comments)
The Early Bird Test Weekend is "officially" over, however I won't be updating the server until tomorrow, so all supporters will be able to continue to play until then.

Everyone seemed to have a good time. Play time for some users is much higher than ...
The Imperial Realm::Miranda Early Access Trailer - 2017-05-10 10:47:11 (2 comments)
Ultimate Edition, Co-Op Ultimate Edition, Collectors Edition, Limited Edition.

Look at where it says "Start Playing"

I'm having an early-bird playtest weekend this weekend so anyone who has purchased any edition can try it out over the weekend. ...
The Imperial Realm::Miranda Early Access Trailer - 2017-05-09 23:30:43 (2 comments)
Hi, looked on itch.io and im a bit confused ? which edition allows me to play now ? the standard says available may 2018 ?
The Imperial Realm::Miranda Early Access - 2017-05-09 10:04:25 (9 comments)
Awesome cant w8 you gonna post here when its done my wallet is burning a hole in my pocket lol
The Imperial Realm::Miranda Early Access - 2017-05-09 07:22:03 (9 comments)
I'll be excited to play when I get money on my card. shouldn't be long.
|<      <<      15      16      17      18      19      (20)      21      22      23      24      >>      >|

  Admin Log In



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