Updated the web site, it’s been long overdue. I would still like to totally redo it someday, but I think it’s at least looking a lot cleaner. I removed a lot of the vintage screen shots, lol. Now I need to get some updated images up!
Still working on all of the spell mechanics. New avatar items have been created for each of the spells that can be individually spawned. Still trying to decide where to put the level 1 spells, like in a random chest or on a starter enemy to drop. Once you acquire a spell scroll, you can double-click on it in your backpack to learn it. There’s a list of available spells that you can attempt to cast based on your current skill level. You can also see which spells are currently active and how much longer they will last.
Also smashed some nasty bugs that were a result of changes in the client due to adding multithreading support. I also found a bug in the new list box control that could keep the last item in the list from showing up. The game feels pretty solid now, I hope it stays that way!
You can cast spells now, it’s pretty cool! Working on some particle systems for the various types of magic. Hopefully I’ll be working on the war magic hit points soon.
Finally added a list box to the engine’s 2D control library. This was needed for the Spell Book dialog in the game, so spells can be easily selected. Things are still moving along great with the spell system!
I’ve been working on the skill system. The calculations are currently used for the run speed, weapon speed, armor, and hit points. I decided that before I finish the ability to fight, I’ll get the spell system under way too. This way all of the bonuses and everything can be correctly determined as well. Besides, I need at least the war magic spells, so that you can fight with a wand. Also, I really need to create some new UI elements to implement this stuff. Hopefully this doesn’t take too long.
The new windowed/borderless option I added to the game is working great for fullscreen! All of the performance is back now. I’ve been able to tune and fix a bug with the multithreading support that I recently added. Things like input processing and networking are now offloaded to another CPU. This does add some synchronization difficulties, but it’s worth it for the smoothness and performance gain that it provides. The scene update and rendering threads work in parallel now. A synchronization barrier is used to ensure both threads have completed before continuing. Anyway, nuts and bolts aside, it seems the Orion Engine is coming back alive in a big way!
I’ve been playing a lot of games lately and noticed a new feature that I’ve never really noticed before. An option called “Windowed Borderless” mode. Since exclusive full-screen access was broken in my game by a recent Microsoft patch, this certainly is worth a try. The game still ran well in windowed mode, so I should be able to just render to a window without any borders or title bar. The required client options have been updated and I’m about ready to try out the fix. That is, once I bring all of the servers back up. I think one of the power supplies has failed. It’s always something!
Wow, is it February already? Finally able to get busy with the game again. Just wanted to leave a post letting people know that I’m still alive and kicking!
I’ve never really been totally happy with how my avatar movements are handled by the client and the server. For one thing, dealing with the inevitable network lag stinks. I’m trying to make the server and the client perform the exact same simulation. This way they should never require much synchronization and/or correction. Unless, of course, the player is cheating.
I also need to finish the shader(s) I’m going to use to emulate the legacy Fixed-Function Pipeline (FFP). Then I can resume testing of the D3D11 driver that I’ve been working on for the engine. I like the simplicity of the Fixed-Function Pipeline, for basic things such as viewport overlays and simple lighting effects. This will all be handled within the engine’s Render State Manager. Thus, keeping this functionality will not add complexity to any of our modern video drivers. It should be noted that our D3D9 video driver still works with the current abstraction layer. Although, this will likely change in the future as the older drivers are deprecated and newer features are implemented.
Just about have the new Orion Engine D3D11 driver module finished. Testing should begin soon. I still want to emulate some of the legacy Fixed-Function Pipeline using shaders. I think the generic lighting routines are still useful. Also, FFP processing lends itself to being easily scripted.
Once all of this is working and ready to release, I’ll likely begin work on a D3D12 driver module. Note that the D3D9 driver still works with the engine and can be used to target older operating systems. There will probably never be a D3D10 driver, as it never gained much traction anyway.