Wednesday, November 01, 2006

Yet another waste of time

Well, I've played with the settings for the blog here. Very powerful stuff. Blogger lets you actually edit the HTML code ontop of providing a nice Interface for doing it graphically. I'd like to have some picture borders, but that might have to wait. Until then we are just left with simple boxes of color.

I really do need to do something a bit more productive, but I just keep on thinking about the stuff I'd like to put on this blog, and how to customize it. I changed the template mainly because I didn't like how restricted the space was for the posts. And I already have some monster posts that require quite a bit of scrolling. So I've settled with this one for now, which scales to the size of the browser, instead of fixed width settings. Now I'm afraid it's too wide and smaller posts will look very puny.

XCOM Apocalypse

So one night I had this craving to play XCOM Apocalypse (3rd in the XCOM series). I had played it many years ago on an older machine running Windows 98 or it might have actually been 3.11. Anyways, it was a pain even then to get the sound working correctly, but I think I finnally got it on the old system.

Now this game must have been rushed. It is very fickle and even the documentation says it was developed for DOS only and that Windows users should use MS-DOS mode. (This was written before the days of NT aka Windows 2000 and XP, which don't have such modes). So of course trying to run it in command prompt under XP didn't fly. It would install fine but the game would not run, even with the compatibility settings and tweaks.

Fortunately I had ran into this problem with the first XCOM game. I found a nice DOS emulator for Windows (which is kind of ironic, that I would need one) called DOS Box. It did the job for the first one, so I figured that I could get it to run under it. Nope, no dice. Still did the same things, and I tried numerous settings like installing it through DOSBox (instead of just mounting the folder that had it) nothing worked.

Finally out of nowhere something dawned on me: Virtual PC. I saw my late friend use it. Instead of trying to emulate a single OS, it emulates an entire PC. My friend had used it to install Mandrake Linux so he could switch between normal windows and linux like it was nothing. I had thought about getting it to try linux out but never got around to it. Suddenly, I realized that this would do the trick. Just install DOS on the virtual PC and install XCOM and poof I'm playing XCOM. (As you can probably tell from the size of the post, it was not that easy)

I then realized that you might have to pay for this software and thought I might have to 'acquire' it. But I checked out Microsoft's site on it and they are offering it for free, and working on another version that's in beta. Freakin sweet. Sucker is small too, about 18 megs, installed pretty fast too.

Then came the next problem, it doesn't come with any OS's. Thus you have to install your own which is fine for linux which you can download for free, but DOS technically has a licence and M$ isn't going to put it up for download anytime soon. I thought about 'acquiring' it, but how popular of a download would MS-DOS be?

Then I remembered the first PC my family got. Had the good old Windows 3.11, which requires DOS. I knew we had disks for it in case we needed to reinstall or recover the system. (Computer is long gone now, lived pretty long as we got Win98 on it... barely) So I go downstairs to my brother's computer area searching for the disk. I come from a line of pack rats, I knew we still had the disks, even though years ago I probably would have said that we could pitch it if we wanted to. Unfortunately, there were many disks. (I'm talking good ol' 3.5" floppies you will be telling your grand kids about) My Dad would literally go dumpster diving at his work. They tended to throw out usable stuff, including floppy diskettes. Well back when we had the 3.11 system, way before CD burners, hell before USB, floppies were the prime choice of media. My Dad got boxes of Disks. We never had a shortage, if you needed a new floppy just grab one and format it and stick a label on it. Anyways it took me awhile to find the disks among all the others.

Alright hoo ray got my DOS right here. Shit... I don't have a floppy drive on my computer, they are obsolete and I thought I'd save a bit of money. Fortunately my parents computer had one. So I copied all the files including the hidden and system ones to folders and then transferred them to my computer over the network.

Ok, got the folders on my computer lets start this up. I knew you could mount CD's and Floppy's on the virtual PC (you can even do folders, but it takes some work and an existing OS). However, you can only mount images of the floppies, so I needed an image. I thought, OK I can make a bootable CD with the files on there and run the setup from the CD. Used Nero to 'Burn' one to the virtual image drive with the files I needed, mount it up boot the virtual pc. It loads but then I notice it says 'Caldera DR-DOS'. Well shit... It's the off-brand DOS, who knows how it would handle a true MS-DOS program, let alone install it. Yeah, well I couldn't run the DOS program, cause it had to boot off of it, or possibly be ran with a partitioned drive. So I used Caldera to format, no dice. I even tried to use Caldera to install the system (IE install Caldera DOS), but it wouldn't boot.

OK, so I get to thinking. The Win98 CD does allow you to boot to a command prompt... which should be MS-DOS. Maybe I can do it from there, if nothing else partition and format the drive. It did occur to me to maybe just install 98 and use it's DOS or MS-DOS mode, but I was fearful that it might not work since what I read on the web, and even the manual about getting it to work on Win95/98. I try all that, format, fdisk, no dice. The installer would say 'Incorrect DOS version', pfft I'm trying to freaking install it, what does it matter if its the right version?

Now I realize that the only way to install DOS on this sucker is to make images of those disks, or install a floppy on my computer and route it though there. In hindsight I should have done that, but instead I found this program called WinImage. Handy thing as it can even open the virtual hard drive files that virtual pc uses and edit them. Unfortunately it didn't come with a standard boot image, and I almost tried to download one, when I realized I could just make an image of the disks I have on my parents computer. So I install WinImage on their computer make images.. of 3 disks. (Keep in mind how slow floppies are, and this was the 2nd time I was basically coping everything off of it). Got the images, transferred them to my computer, mounted and viola! I'm installing MS-DOS 6.22.

It gets done and boots up and I suddenly remember the old command prompt days, and here I had a very clean install of DOS that I could do whatever I wanted with. But I got back to the task at hand and tried to save some time by copying the XCOM files (I had installed it about 2 or 3 times already) onto the virtual hard drive (using WinImage), but the game still wouldn't run. So I'm like ok... I'll install it through DOS on here, all it will detect is this Virtual PC, not my advanced one that blows it's mind. Do all that, keep in mind I've installed this several times, each time taking a good 15-20 minutes.

OK here we go, time to play some XCOM. I'm really stoked. The only way of getting any closer to an actual DOS machine would be to make one (but why? when I get tired of the game, I'm gonna have to find a place for the machine).

Nope, no dice. Same error as when I tried the copied files. I use some 'fixes' that were out on the web, they didn't do anything.

I search around on the net some more, hoping that someone else tried to install this on a Virtual PC as well. Fortunately I found one, he has an entire blog devoted to getting things to run on Virtual PC. He has a whole section on games too!

I read up on what he did, sounds like he had an easier time, probably because he's installed DOS on VPC before. He ran into the same error I did, and it appears that a few select games like this on and command and conquer run some bizarre processor command that causes VPC to crash. Oh, wonderful. But this guy did get it to run on VPC. Guess what, he installed Win98 and used it's MS-DOS mode. The very thing I avoided doing in fear that it wouldn't work! (It appears that Win98's DOS ignores the processor command, instead of bombing out and it works.

OK... so I load up the 98 CD. Fortunately it doesn't have to format, so I can keep the XCOM installation and use them. (Unfortunately, those 'fixes' caused them to crash later). So I install 98 which takes forever. VPC is wonderful, but it's still emulating and it's very slow. Even Windows 98 takes forever even though the transfer was from an image on my hard disk it took forever to copy and even longer to 'install all the devices'.

OK, got 98 up and running. Got the nice pale green desktop at 640x480 resolution. What's the first thing I do? Restart in MS-DOS mode.

Alright lets try this out. I run XCOM from there and it crashes first because of the 'fixes' I mentioned earlier, and later after I installed it (yes, I installed it yet another time through MS-DOS mode).

At this point I'm like What the Hell? Then I remembered that I did install these Additions that VPC has (lets you mount folders and helps it perform better) for when I had DOS on it (I needed them for the CD drivers, as the game was on a CD, and it had pirate protection). I thought that it might be interfering with this fickle game. So I removed them from the autoexec.bat which apparently 98 still runs before loading. Still no dice.

I reboot again into windows, and out of sheer desperation I try running it through a shell in windows. I knew it wouldn't work. If it doesn't work in MS-DOS mode why would it work in Windows?

It worked.

But of course there was a slight problem. Sound was fubar, just static and all. So I quit out and play around with sound settings, some of them screwing up and I'd have to restart the computer etc. Got one that worked, or it would. After about 5 minutes or so it would start popping and crapping out. So I tried some other settings and tested the sound in the setup program many many times, comparing it to the old ones (which did start popping and cracking after a while) and this one still sounded good. So I went with it thinking alright got the sound down. It still pops and cracks after about 5 or so minutes, fortunately when the game switches modes it resets and I get another 5-10 minutes of actual sound.

Oh and yeah, the game runs kinda slow. I remember it being much smoother on the old computer but oh well. I spent an entire day getting it to work (actually trying it through DOSBox and XP was tried the previous day). Needless to say I've been playing it quite a bit.

Expect more updates on this game. I already have 2 things in mind but this post is already long enough and I need to sleep.

Tuesday, October 31, 2006

My MMOG

Ok here's my idea for a Massively Multiplayer Game. It is kind goes with the philosophy Will Wright has in the upcoming game Spore: instead of having developers try to pump out new content (of which players blast through in no time), let the users be creative and allow them to submit their creations, effectively allow it to sustain itself.

The idea has been around for years, ever since games started coming with map editors and mods. However, these had to have their own support and be downloaded seperately from the game. In Spore, the new content will be downloaded dynamically.

I love this concept. I really want to make games, but one of the hardest parts is getting content like levels, models, textures, sounds, etc. I'm not much of an artist and there is a lot involved, instead I can use what I know to just build tools for creating content.

Ok, so I haven't actually described my MMOG yet. I'm thinking of some kind of RPG or adventure type game set in space. The unique part is that the server would be freely available. Anyone could make a solar system, planet, or just a city. There would need to be encouragement for different servers to link to each other, that way one person can develop a city, and import someone else's city, so that anyone on his/her planet could go to that city as well.

I also have an idea to allow player created items. Like an RPG. Obviously a balance system would need to be put in place so ultimate weapons are not easily created (if not impossible!). My thoughts are to use some kind of 'cash' system. That would be based on how many people are on the server and for how long. Technical details might get hairy such as making sure that it is actually a human 'playing' and not just a bot to exploit the system. In this way more popular servers would have more funds available and could create or allow users to have better weapons.

The one big issue about user created items, is portability. Say server A creates a laser gun, heck even has a nice model and animation attached to it, and say some guy has this. When he goes to say server B, how is it transferred? how will it react in this server? My thoughts are to implement a voucher system. In this case server A would keep the information and provide it on demand (caching would be necessary so popular items don't bog the connection) along with verifing the user that has said item, also the 'cost' of the weapon would be stored so that it can be removed from the server A's balance.

This is getting complicated to explain, let me describe the servers better.

Originally I thought that there would need to be 2 types of servers, but I believe I have generalized it enough that only 1 would be necessary. However there would be sort of 2 modes involved. Basically it will form a tree hierarchy. A server can have at most 1 parent server and will consist of the majority of servers. It is possible for a server to have no parent, this would be the root server and would then behave slightly different. Namely it would be able to 'create' money to give to the other servers, think of it as the Mint, you don't want to make too much money because that would lead to inflation, but it can't stay constant as new resources are found (or in our case new servers or users), secondly it would need to allow users to log in, preferably not allowing too many new accounts be used by one person.

Now a server may have as many children servers as necessary. It will be allocated 'money' from its parent server (unless there is not one, then it gets to decide the grand total) and allocate it to the children (which may allocate to thier children). It must also keep a record of items with their data along with the owners of the items and must register them with it's parent server (which will do the same unless it doesn't have a parent). The funds will be allocated from the server to the user that obtained the item, this allows for the servers to check if they balance with the money allocated to them and if their children haven't overdrawn. The register however will not contain the specific data (such as the model, textures, etc) it will instead contain a reference to the server that created the item. The idea is if a server overdraws it will refuse to vouch for the item, which should then not allow the item to be created. This would be one area that could be a potential problem for exploits.

My main idea is to come up with the base code for the game as well as a tool to do most of the basic stuff such as making buildings, items, planets, etc. However I would want to keep the code open source so that new additions can be made. The only issue with this is, how will a server know if another server is playing by the 'rules' and doesn't keep the standards? I'm hoping a big enforcer of this issue would be solved by making sure parent servers stick to the rules, and if one of it's children servers doesn't play to the rules start setting limits or removing association to the server which will mean no other users will connect to it, unless they manually do so, or another server is willing to pick it up and vouch for it. For most part however it will be enforced by the number of players using the server. If the server has screwy rules about stuff people will go to some other server and if a small section of the people are ok with not having many new people so be it, they will essentially be developing their own game/mod of the game.

I have so many thoughts about this game running around I don't think I could complete it in one post. I know an example is in much need right now, but I need to finalize some of the issues, like if a server doesn't implement an item the player has, does he get his money back? or is it tough luck?

New Blog

I'm moving my blog from xanga to blogger for several reasons.

  1. Google is the shit
  2. Blogger is therefore also the shit
  3. Labels, so I can categorize my posts and filter out my ramblings
  4. Other options I might use sending an email to post entries
  5. A new initiative to log more often
Instead of using a plain text file on a computer and having to move it around when I use another machine, I figured I'd use a blog to keep it in one central location. And who knows I might get an audience with this.