Making games Vista compatible...

Miscellaneous Forums/General Discussion/Making games Vista compatible...

What exactly needs to be done to make a game Vista compatible? My understanding is that you can only save your game files e.g hiscores etc to a certain folder. I've seen the GetSpecialFolder command which returns the start menu but I don't know exactly which folder to use.

Where should these files be saved?

I believe its where in the users My Documents - cant remember exactly where though.

\Documents and Settings\<User Name>\Application Data\Your Company Name\Your Game Name\Version Number\blah

yup. Plus don't forget to get is ESRB rated otherwise your game won't apear in Vista's "Game Explorer". Realistically though, hardly any Indies will do this due to the cost/hassle.

Can games write in their own folder? Alot of pre-Vista games will fail if its not allowed.

no they can't and yes they will fail.

You can disable that aspect of Vista by running in administrator mode or something, so you can run your old apps, but you can't count on users of your game doing that.

From memory, I don't believe you can write into /program files/app directly anymore without being in Admin mode, but I think <user>/Documents (formally My Documents) may be OK.

Could be wrong though...

Has anyone else noticed that this file saving issue has started to appear in XP when you install the newest version of Internet Explorer? Does anyone know how to turn this off in XP?

It's only a matter a time of time before all the shit things about Vista secretly find themselves in XP. This is nearing the beginning of the end as far as backwards compatibility is concerned.

Has anyone else noticed that this file saving issue has started to appear in XP when you install the newest version of Internet Explorer?

No. It's your imagination.

I take it Vista is going to make game-updates a headache for developers?

Any 'Trusted Installer' program can write anywhere it wants. Just use one of the many installers.

Has anyone else noticed that this file saving issue has started to appear in XP when you install the newest version of Internet Explorer?
I hope you are lying or deluded...

"Any 'Trusted Installer' program can write anywhere it wants. Just use one of the many installers."

The issue isn't the initial install, it is writing data after the program is installed. But there's a directory for wiritng that data to. You just have to write to that instead of your program directory.

Thanks for your replies everyone. I was just worried about what folder I should be saving to knowing I can't use my games directory in vista.

Hopefully I am deluded and the problem will magically go away.

The issue isn't the initial install, it is writing data after the program is installed.

That quote was in answer to Genexi's patch question. Patches will need to use a Trusted Installer too, unless the game can update itself somehow via the user's documents, which is NOT where program files etc should be stored ;] But I can just imagine it happenning...

unless the game can update itself somehow via the user's documents, which is NOT where program files etc should be stored ;] But I can just imagine it happenning...

That was what I've been fearing if I ever upgraded (well, I will have too sooner or later anyway once game devs drop XP/2K support because they're stupid)....

More-so when some games these days pack all the game resources into a large single file, and given what I've been fearing, there'ss no way to update that without either dumping said large file into yer documents folder and patching it there, or have the game read a script in yer documents folder that redirects file-paths from the old-files that are packed, to the updated ones in documents folder...


Regarding Vista though, how's the uninstall thinger? I been hating games lately that leave folders undeleted and registry entries left alive after uninstallation. Was hoping with Vista that essentially everything would be deleted regarding the program, with a user-option to clear saved stuff in the Documents folder as well.

Once an application is istalled, this application can write documents to its own installation folder. This documents can be of any type except executable files. BlitzMax itself can write documents in its own folder, but can't compile them if they are not stored in the user's documents folder.

Do B3D executables work on Vista please?

IPete2.

As far as I understand it (little rusty, read this a while ago), Vista runs DirectX 10, and is only backwards compatible with DX9.0c. So if this is true, it suggests that B3D stuff wouldn't run, as it's DX7. But I could be mistaken!

[EDIT] From Wikipedia:

http://en.wikipedia.org/wiki/Directx_10#Compatibility

Prior to DirectX 10, DirectX was considered backward compatible, which means that newer versions supported the older versions. For example, if one had DirectX 9 installed on one's system and ran a game that was written for DirectX 6, it would still work. The game used what was called the DirectX 6 "interface". Every version of DirectX supported every previous version of DirectX. This is a positive consequence of the COM model used for this API.

This has changed with DirectX 10, which uses a legacy version of DirectX 9.0c (9.0 EX) to support older platforms.


> it suggests that B3D stuff wouldn't run, as it's DX7. But I could be mistaken!


Hasn't someone already confirmed that Blitz works on Vista? Or was that bmax?

It's been confirmed that B3D stuff does indeed work on Vista. B3D may be DX7, but some people seem to be forgetting that DX9 is backgrounds compatible ... it's DX10 that isn't! Cna't remember who confirmed it, but it has been in the past.

Obviously, some programs may beed to be rewritten to some degree to ensure they work in terms of the new UAC system and file structure, but that goes for any game/app that has been written, no matter what language it is written in.

B3D stuff does indeed work on Vista. B3D may be DX7, but some people seem to be forgetting that DX9 is backgrounds compatible ... it's DX10 that isn't!

Ok, after reading your post and then re-reading the Wikipedia info, I think I get it now.

I think you're saying that the "legacy version of DirectX 9.0c" will support DirectX 6, 7, 8 etc. - but DX10 no longer maintains seperate "interfaces" for older versions.

If I'm understanding that correctly then great - B3D and lots of other stuff should still run, maybe just requiring a few tweaks here and there as you said.

Actually, Documents and Settings has been replaced with a folder called Users.

Regarding Vista though, how's the uninstall thinger? I been hating games lately that leave folders undeleted and registry entries left alive after uninstallation.

Sadly, that's more a responsibility of the installer package/script and out of the realms of OS resposibility...

Do B3D executables work on Vista please?

So long as Microsoft's guidelines are followed for file storage mostly - the B3D code itself runs perfectly.

As far as I understand it (little rusty, read this a while ago), Vista runs DirectX 10, and is only backwards compatible with DX9.0c.

Completely false. It uses an emulation layer for DX9, which is a little more complicated for previous backwards compatibility (ie DX8 or less in DX9), which means speed loss is evident, but still perfectly usable in all aspects, including prior DX support.

Actually, Documents and Settings has been replaced with a folder called Users.

Hidden links called for example 'Documents and Settings' point towards the Users folder - the same goes for all other folders that have been renamed. Then will solve any problems with bad programs that have hardcoded paths.