Pediaicons debugger advice

IbnSina

Former Lurker
Joined
Jul 1, 2003
Messages
525
Location
fsa
I am writing a simple little tool (for Windows machines) to try to check names and existence of graphics files that appear in pediaicons.txt. You know the errors: you typed "Mslim Infantry" instead of "Muslim Infantry" after the ANIMNAME_PRTO line, so now your entire game exits. You fix the error, wait for the game to load up again, play your turn over, and then discover that you made the same typo in naming the .ini file: the game exits again. Iterate as necessary. The idea is that this little program should check whether all the files are named properly in the appropriate places before you start the game, thereby saving modmakers some time.

I have a more-or-less working version, but I need a little help. I have only my own Civ distribution to work with in parsing the directory structure. The root directory of my english language distribution is ...\Civilization III. Is this universal, or should I make accomodations for editions in other languages, or personally named root folders, or distributions I am unaware of?

Thus, the question is: What is the name of your Civilization root directory? Thanks!
 
maybe you could just let the user specify thier own directory, or would that totally mess-up the program?
 
The user does specify his own pediaicons file, but the program has to guess what the Civ root is, to avoid searching the entire C: drive for art directories. The point is that there are various units and other graphics squirreled away in different parts of the Civ distribution that do not have absolute paths, or even ordinary relative paths in the pediaicons file. The program tries to ferret them out. If we can give it some good guesses concerning where the tree starts, it will be more efficient.
 
Well, if you let them specify the pediaicons file, the default art folder and the scenario art folder it should work right. My 2 gold on the matter...
 
Code:
strInstallPath = GetRegSetting("Infogrames Interactive", "Civilization III", "Install_Path", "Unknown")

Works for me. ;)

BTW - this sounds very useful - I am writing one similar that checks the art files etc, but it might be much easier just to use yours! :D
 
ainwood said:
Code:
strInstallPath = GetRegSetting("Infogrames Interactive", "Civilization III", "Install_Path", "Unknown")

Works for me. ;)

BTW - this sounds very useful - I am writing one similar that checks the art files etc, but it might be much easier just to use yours! :D

You seem to know more about the registry - maybe I should use yours ;) Thanks! I still worry that e.g. the German version has a different name for the directory that I won't find, but maybe the thing to do is to finish debugging, and then see whether anybody finds it useful. Thanks again.
 
Hunter Noventa said:
Well, if you let them specify the pediaicons file, the default art folder and the scenario art folder it should work right. My 2 gold on the matter...

I hope users won't have to work that hard. Right now I tell it to open my pediaicons file, and on my english version it can identify the scenario art folder, and the default art folders from both vanilla and PTW, which contain units that my scenario units steal sound from (../Guerilla/GuerillaDeath.wav). I'm mostly worried that not all distros are created equal.
 
To be honest, I think different language versions do have different install paths, and I don't think this reg key is the same in all versions (not 100% sure though). :( But the main problem is with people putting the game in non-standard install directories, and the reg key sorts those out at least.
 
I think the entire Civ3 modding community would be very happy to have a program like this becasue th pediaicons file is the one file there are no helper programs for. I would definitely use this program becasue the pediaicons file seems to be my weakness and I get frustrated having to keep loading Civ3 repeatedly and crashing it repeatedly to solve a new error.
 
Wow! This seems as a wonderful program. I have experienced SOOO many errors like this and I'm very glad that someone makes this!:D
 
Top Bottom