Rank: Warmaster at Pax Dev and Pax West!

I will be attending PAX Dev and the first day of PAX West later this month in Seattle, Washington.  If you want to talk about Rank: Warmaster or anything else, I’d love to share.  :)  I’m not presenting or anything, but I will be chatting people up for wisdom.  :)

 

A small update about multi-threading, I updated it today and lowered the load time to 12 seconds from 16 seconds.  I made sure to figure out which CPU the main thread was on, and then put the worker threads on their own CPU (accounting for hyperthreading).  So now it will auto-expand based on how many cores it knows you have in your computer.   Technically, the game isn't fully loaded, but by the time you go through the animations and get into the game proper, it basically is.  (And what isn't will be in a few seconds, so you won't notice anyway, which is the point!)

New Shaders, Bloom and Multi-threading

New Shaders, Bloom and Multi-threading
New Shaders, Bloom and Multi-threading
New Shaders, Bloom and Multi-threading

Even though I might not post often, things are constantly moving and changing.  Since my last post, I have put in a new radar shader (which looks like the old radar except less ancient looking.  The lines are far smoother because it’s constructed in a shader so are thicker and more precise).  I have also added Bloom effects to the system.  Some things take to it well, other things, not so much, but it is setup to be able to be turned off on an object by object basis if need be.  So that will improve as time goes on.

The other really BIG thing I’m excited about is implementation of Multithreading.  So not only is the infrastructure there now for that, but I have used it to DRASTICALLY speed up the load time of the game.  It has gone from over 70 seconds to 16 seconds.  That is OVER a 4 times speed increase (4.375 to be exact!).   This is HUGE for development since the day to day trial and error just got massively sped up!  The intent is to move the terrain engine calculation to a separate thread as well, and eventually look into if anything in the main engine can be moved.  To me, this is a game changer for the game.

Other things are in the works, that will come up soon!

 

 

Full story »

New things are here and they go BOOM!

While it has taken a week, the infrastructure for the new shader system is in place.  From when I first restarted the project, the first thing I needed to do was  get a brain dead shader online to see ANYTHING in OpenGL.  After I was able to get a prototype going, I started on a more complex shader which could do your standard texture and lighting, and eventually bump mapping.  This is what has been running the engine for the past year or so.  However, with the push to take it to that next level, I needed a way do be able to import multiple shaders and have them integrate with the current engine seamlessly.  Now I can simply add another shader into the system, and give it a display list, and off it goes.  Even if it has its own unique needs, as this first explosion shader does.  So now it is more a matter of getting a functional shader rather than worrying about how to import it into the system.  I hope to improve many of the graphical aspects of the game with this new feature over the next month.  I will post my progress, of course. :)

Something...Explosive this way comes...

Something...Explosive this way comes...

With all the work on the networking code, I will admit, it kinda burnt me out.  A new direction is being pushed by the marketing people.  So we are putting as much effort as possible to pretty  up the game with the limited resources we have.  Other than spending far too long tracking down a stupid bug, I was able to get this running to a point today.  It isn't done, of course.  But it is slated to replace the old "cinematic" explosion in the game when something blows up.  More on this to come.

Happy 4th of July! (This is the Furball I was hoping for!)

Happy 4th of July!  (This is the Furball I was hoping for!)
Happy 4th of July!  (This is the Furball I was hoping for!)

I finally fixed what I wanted to fix to get the ground turrets to behave.  The game is set to spawn out ships every few seconds.  Sort of a stress test, as well as to see if it would crash.  It  didn't crash, and I ran it for about 20 minutes.  It slowed down a lot (it was a LOT faster before I alt-tabbed to bring up my screen cap software), and I have NO idea  how many spawned ships and missile were running around.  Not bad for very few optimizations.  :)  Back to networking code I guess.  But this means the single player is now functional enough to truly test the game balance and timings. There are global variables in the script that change the production of different aspects of the game as multipliers.  I have it set to times ten on all of them and you see what I get. 

Not the furball I asked for, but the one I deserved

Not the furball I asked for, but the one I deserved
Not the furball I asked for, but the one I deserved

Yeah...so....I fixed the targeting so factions would attack neutrals and not just enemies.  And I upped the production and research rates.  So now they are destroying each other's cities....Well, I was kinda going for that.

I am still working on the multiplayer part for the cities, but I wanted to see everything go crazy before the full multiplayer first.  I got my wish I guess. :)

 

Full story »

Typical Release Update Change Log

I realize my updates aren't that often, so it looks like little goes on behind the scenes.  So I wanted to post a typical release log that shows all the updates that get rolled into a release from a previous one.  Generally releases are done every two weeks.  So here is what that looks like.  I realize I'm asking empty air, but I wanted to know if people were more  interested in seeing the daily patch updates or not based on below:

 

Full story »

It is official. Ship to ship Multiplayer is Up!

It is official. Ship to ship Multiplayer is Up!

The multiplayer for ship to ship combat is up and working.  The respawn also works, which means, after someone dies, the host server can just hit a button and everyone is back to full health.  Obviously, this makes battles more fun since people can get right back into the action.  Admittedly, it is still rather crude, since fleets wouldn't be here yet.  There has been some rumblings about making a "fleet builder", so if one just wanted to do head to head fleets rather than the full game with cities, that could be done.  This would prevent the normal time it would take to design and build a fleet as in the normal game, so people could have instant action with a large amount of ships.

Does this mean the full multiplayer is up?  No, but now it's playable for ship to ship conflicts.  So then what actually works?  Sending a player across, sending ship designs across, position and heading tracking and damage.  (So basically anything you would need to run around and blow up your friends!)  What doesn't work?  Sending corporations/factions across, factory queues, AI decisions, etc.  That is what I will be working on next to bring the rest of the game across the network.  I expect this to take a few weeks since there are a lot of structures to have moved and tested that it works.  I'm sure there will be a lot of tweaks that will need to be done as further testing happens.

But make no mistake, this is a major milestone!  I will be getting this to the testers soon. ;)

 

Multiplayer is talking

Multiplayer is talking

The join and host mechanics are up and working.  Chatting works (as you can see).  The rest of the infrastructure needs to be awoken, but it is there waiting for it.  In the old system, the Scenerios never did anything.  In this case, it will be quite needed since it will determine how the players enter the game, either just in deep space (which is the next test), or plantside.  Then, of course, what do you have with you, etc.  Meaning, full cities, or just a builder bot and a dream?

I do expect the deep space to be running by the end of this coming week, since that always worked in the (distant) past.  Getting the system to like buildings and the AI will take longer, and I know that.  But depending on testing, should hopefully not be too bad.

Connection Established! Multiplayer has a heartbeat!

Connection Established!  Multiplayer has a heartbeat!
Connection Established!  Multiplayer has a heartbeat!

Ok.   What does "(**#*#*^$^PLAYER 1$%" mean?  It means that the Host and Client are talking and the client is sending the Player name to the host and everyone is talking to each other. :)

What you see in the screens shots are the "join" screen, and the Lobby/Host screen.  Obviously, very much a work in progress, as one might expect, but in the background, the machines are talking to each other. :)

I will end up cleaning up some of the connection code to the UI to make it easier to use than right now.  Then get the "chat" function working to show more interactivity between the systems.  Then I will be sending ships across. It is already doing positional updates, which doesn't mean much to the client yet.

This is a MAJOR milestone for me and the game project.  I know it isn't workable on a game level yet, but it's still important. :)

 

1 3 4 5 ...6 7