Virtual Programming

Fire-Watch pointed out that I’ll need to get a virtual image of Windows XP going in order to program GalCiv.  Otherwise, I’d have to take some people off of Elemental to migrate the GalCiv II project to Visual Studio 2005 or 2008.

Right now, I’m on a bit of a sabbatical to get back to focusing on tech. So installing a virtual PC image (or VM Ware) is kind of cool.  I’ll let you guys know how it goes as I’m doing it.

70,843 views 17 replies
Reply #1 Top

I wonder how hard it would be to convert the project to VS2008/VS2010 yourself? I imagine that running GC2 inside a VM would limit the speed of the Direct3D stuff, so to debug or run it you would have to copy it over to your native system.

Reply #2 Top

The problem is that porting to a new compiler version can introduce myriad subtle compatibility issues.  It can also fix a lot of subtle incompatibilities, so I've usually found that it's worth it overall.  However, if this needs to be a small, low-risk update that won't require much QA time, a major compiler upgrade is likely out-of-scope.

Reply #3 Top

Then again, given that GC2 is a game, not a critical business app, and given that it's in the latter end of its lifecycle, it might also be possible to crowdsource the QA here by having a public beta test for any new patch.  In that case, maybe a compiler version upgrade would be a good way to breathe a bit of new life into it.  If you use much STL, Microsoft made a lot of performance improvements in VS2010.

Reply #4 Top

GalCiv2 has direct3d hardware rendering, doesnt it? Direct3d for XP guests on vmware is supported but it's slow.  It would be kind of tedious for testing the game.

Reply #5 Top

Virtual machine?  I'd dual boot, hell, running a remote desktop from a second machine over your network would be faster than testing systems based in a 3d engine on even the better virtual machines.  You've got SSD drives right?  It's not like it takes you time to reboot into a secondary OS.

Reply #6 Top

Quoting Elestan, reply 3
Then again, given that GC2 is a game, not a critical business app, and given that it's in the latter end of its lifecycle, it might also be possible to crowdsource the QA here by having a public beta test for any new patch.  In that case, maybe a compiler version upgrade would be a good way to breathe a bit of new life into it.  If you use much STL, Microsoft made a lot of performance improvements in VS2010.
End of Elestan's quote

 

That would be awesome, having the community QA GC2. :D

Reply #7 Top

It's one of those times where being able to run two different operating systems at the same time (without emulation) would be kinda cool.

Reply #8 Top

No need to be testing in a virtual environment, with XPM all one would need to do is drop the build on a share mapped to the host(Win7) and then Brad could easily test in Win7 with no DirectX issues.   Code, Build & Test all on one physical machine easily. Piece of cake. Virtual rocks :)

Longest part of the setup will be loading and patching vs2003.

Off topic but totally geeky virtualization http://blogs.msdn.com/b/virtual_pc_guy/archive/2010/03/23/windows-virtual-pc-everywhere-part-2.aspx 

Of course you could take that one step further and boot the 2008 r2 box running hyper-V from a vhd under win7... but the universe might implode :)

 

Reply #9 Top

The downside is that if there's some sort of error, or if you want to step through some code to test particular input values, the test build isn't in the debugging environment.  Sure, with error codes and so on you can probably figure out the problem, but it's a lot faster to be able to go to the exact place where the error happened, with execution temporarily suspended.

Reply #10 Top

Point well taken. I don't know what part of my brain had forgotten actual debugging.  Up way too late last night.  DirectX under virtual environments Virtualpc or VMWare is one of those edge cases. The environment wasn't designed to support accelerated hardware  in the vm clients so performance tends to be suboptimal and some scenarios simply aren't viable. I'm curious if it'll meet Brad's needs.

Reply #11 Top

All that reminds me of the first time I tried out Linux. When I was disappointed that I couldn't run all of my Windows games on it I asked the community on the Ubuntu forum if it was possible to emulate Windows on my Linux box. Well... They where not very helpful. I think they where shocked by the idea and the whole concept and thought I was a pervert because of just having the idea... :D Funny replies though... ;)

Reply #12 Top

in what languange is galactic civ wrote i gues c++ ?

and you are going to migrate the code to VS 2005 / 2008 why ?

Why dont you start over with 2010 ?

regards

Reply #13 Top

Migration takes longer the more versions you have to upgrade through.  When you have one man working on a project, you have to be realistic about how many hours you can spend on migration and how many hours will be saved by working on a newer platform.

Reply #14 Top

does this mean that you are the only developer for this

game ? What about a glactic civ version III ?

Reply #15 Top

Quoting Abendstern, reply 14
does this mean that you are the only developer for this

game ? 

End of Abendstern's quote

At this point, yes he is.

But then, given that there hadn't been anyone working on GC2 at all for the last year or two (most of Stardock's game people have been working on Elemental), I'm just happy to have Brad still giving a little love to this excellent space 4x game.  |-)  

 

 

Quoting Abendstern, reply 14
What about a glactic civ version III ?

End of Abendstern's quote

 

This is what Brad (Frogboy/Draginol) said in this thread:

"For those wondering about a future Galactic Civilizations III, right now, our plans for now will be to continue supporting the existing Galactic Civilizations II -- no GalCiv III is in the works right now."

End of quote

 

So no GalCiv 3 anytime soon.  I'm guessing it'll be at least five years before we see another entry in the franchise (if not more). 

 

Reply #16 Top

What i dream about that gal civ would develop to is that you get a programmable interface like WOW so the basics is being delivered by the company and the addicts go work on extra functions, in smart way there should be determind what could be programmed and what not, i am a programmer myself and would like to build an AI advisor so it feels more like a fancy chess game, and less micro management, hopefully that you automate turns till bigger jobs are finished events occur.

just speaking my mind about a great game,

robert

Reply #17 Top

Ya elemental is like that grooovie. You can mod just about everything. Space is just more fun though. And this game works better. Hopefully they use the elemental engine for GalCiv 3 instead of teething a new one. Really wish they would have devoted Elemental to MMO and made GalCiv 3 last couple of years. Prolly would have worked out better, but hindsight is 20/10.