View Full Version : #ifdef standards


Impaler[WrG]
Apr 30, 2006, 10:04 PM
We have a nice comenting style layed out but their are still some issues I would like to see resolved. SimCutie has recomended use of #ifdef, their are also some sugjectsions of if(ComunityEnhancmentsOn) or if(ModEnabled) type activations for each individual mod with some form of Options menu exposed to Python. Lastly theirs still some lingering doubt for me as to what the nature of any special header file or files and what we should be putting on that file. Lets discuss and deside these things.

I'm getting itchy to release my code though I know Spoiled Fruits server is not yet up and running. Is it possible for some provisional versions of the commonly moded files to be keept on the forum or should we use the SF untill then? Is their an ETA on Fruits Server?

12monkeys
May 01, 2006, 07:03 AM
As an excersise, I played a bit with CVS at SF and uploaded the sources of CvGameCoreDLL. If you like you can use this till SpiledFruits server is up and running.

The Great Apple
May 01, 2006, 08:35 AM
I don't see why we shouldn't use SF for keeping the code until we get the server. As I understand it everybody who wants to submit stuff on there needs to register on SF, and then PM me/12monkeys with your username so that we can add you.

As for the #ifdef stuff - does this sound good?

In separate header file ( I named it "CvGameCoreDLLExt.h" which is, in turn, included by global "CvGameCoreDLL.h" header), there will be lines like this.

#ifndef NO_GAMECOREDLL_EXTENTION
#define SIMCUTIE // base extension
#define SIMCUTIE_WIDGET // custom widget
#define SIMCUTIE_EVENTEXT // event extenstion
....
#define TGA_TALKINGAI
....
#endif // NO_GAMECOREDLL_EXTENTION

If we define or undefine specific Mod identifier, the DLL will be compiled with or without the mod feature.
Now I don't claim to be great at C++, but I didn't think stuff like that could be changed easily during runtime, so if you want a enable/disable feature on your specifc mod you might have to use an if (<some global variable>) clause, and then patch it into the options menu (when we get the code for the options menu).

12monkeys
May 01, 2006, 08:49 AM
You can't change any #ifdef stuff during runtime. Its a compiler switch and it does ONLY effect when the sources are compiled/linked. IMO there is not a big use for use in it, because we should head for switching during runtime.

So I would prefer that anything which alters gameplay MUST be switchable with a boolean like :


if (bCPPFeatureXY)
{
.. code ..
}


In this case we need an page in the game options, to enable/disable those features.

This leads me to another question. We (or me) just though about putting C++ code in the CVS or SVN or whatever. But we also need to put parts of the Python API in there, because we will get changed Python code or changed XMLs as well. So best is, that I will start to upload the standard Python API on SF as well.

The Great Apple
May 01, 2006, 09:01 AM
You can't change any #ifdef stuff during runtime. Its a compiler switch and it does ONLY effect when the sources are compiled/linked. IMO there is not a big use for use in it, because we should head for switching during runtime.

So I would prefer that anything which alters gameplay MUST be switchable with a boolean like :


if (bCPPFeatureXY)
{
.. code ..
}


In this case we need an page in the game options, to enable/disable those features.
Global bools it is then. As for where the bools are defined - it'll have to be a file imported into CvGameCoreDLL.h so that it gets inlcuded in all the files. When the options screen is up and running this should all be alot clearer. I suggest you just define you're own bools somewhere, and then when we have the screen we can delete them.

SpoiledFruit - is this all OK?
This leads me to another question. We (or me) just though about putting C++ code in the CVS or SVN or whatever. But we also need to put parts of the Python API in there, because we will get changed Python code or changed XMLs as well. So best is, that I will start to upload the standard Python API on SF as well.Probably will want the XML schemas as well. How are we going to keep the API up to date?

12monkeys
May 01, 2006, 03:57 PM
Following Status in CVS at Source Forge :

1.) CvGameCoreDLL_v161 :
all files from SDK, except the subdirs "Boost-1.32.0" and "Python24". I don't think we'll need them, because we problably will not change them.

2.) Assets_v161 :
contains files from standard Civ4 "Assets" folder. Following folders have been uploaded :
- complete XML folder incl. subdirs.
- complete Python folder incl. all subdirs, except the "system" folder (is also not needed, I think).

12m

Impaler[WrG]
May 01, 2006, 11:34 PM
Sounds good, runtime switching ability definatly sounds better for us (alows a much wider range of Mods to be included under our mission statment). I will go register right and start getting ready for upload.

The Great Apple
May 02, 2006, 02:00 PM
I agree with the more mods bit - it means we can include little tweaks, which while a purist might not want, but most are agreed make the game better - something like an era-specific interface, or an improved culture model.

For interface changes, I suggest we have only one new version of each screen included, and have a switch for each screen.

Jorgen_CAB
May 04, 2006, 12:59 PM
When it comes to switches there might be a difference between small features that any player could switch on or off from larger feature changes that will be required when you build a mod.
I think that there should be an option for any modmaker to very easy force a mod to include a certain feature where the player may not set the switch manually without go into the mod and change a parameter in an XML or INI file or something.

What do you think?

Impaler[WrG]
May 05, 2006, 01:47 AM
I dont seem to be able to view or access anything off our SF CVS, it may be that I havent configured the CVS client right (the SSH key is tricky and the documentation is rather poor if you ask me). But I cant even do the web viewing which should be noob proof. Are you shure it was properly uploaded, are their any restrictions I dont know about?

12monkeys
May 05, 2006, 03:27 AM
']I dont seem to be able to view or access anything off our SF CVS, it may be that I havent configured the CVS client right (the SSH key is tricky and the documentation is rather poor if you ask me). But I cant even do the web viewing which should be noob proof. Are you shure it was properly uploaded, are their any restrictions I dont know about?
The web view isn't working for me either. Have no clue why. I always get an error about "proxy loops".
I'm not sure if set up CVS right, but it works for me. It is the first time I did that, so its possbile that I mixed something up.

But what is your problem in detail? Can't you connect, or do you see no sources? I use WinCVS together with PuTTY and the PuTTY Pageant (wich is important!). What did you use? What is the CVSROOT you're connecting too?
Regarding the SSH key, there is a quite good documentation here http://sourceforge.net/docs/F02/en/#top . (http://sourceforge.net/docs/F02/en/#top)

Let me know some details and I will try to help where I can.

12m

SimCutie
May 05, 2006, 12:30 PM
The web view isn't working for me either. Have no clue why. I always get an error about "proxy loops".
I'm not sure if set up CVS right, but it works for me. It is the first time I did that, so its possbile that I mixed something up.

But what is your problem in detail? Can't you connect, or do you see no sources? I use WinCVS together with PuTTY and the PuTTY Pageant (wich is important!). What did you use? What is the CVSROOT you're connecting too?
Regarding the SSH key, there is a quite good documentation here http://sourceforge.net/docs/F02/en/#top . (http://sourceforge.net/docs/F02/en/#top)

Let me know some details and I will try to help where I can.

12m
Hmm.. I can not access CVS via web, too... It seems that CVS is malfunctioning and need re-configuration or set up again... I can access it via ssh & command line but it is too awkawrd... It should be fixed as soon as possible..
Without stable CVS, we can not start stable work..

12monkeys
May 05, 2006, 01:00 PM
Hmm.. I can not access CVS via web, too... It seems that CVS is malfunctioning and need re-configuration or set up again... I can access it via ssh & command line but it is too awkawrd... It should be fixed as soon as possible..
Without stable CVS, we can not start stable work..

If you have access through SSH your should install WinCVS. This is a grahical UI for CVS. It is a bit similar to Source Safe, but much more complex.

Meanwhile I will try to find the reason for this web problem. Didn't took much care about it, because I planned to use WinCVS anyway.

12m

12monkeys
May 05, 2006, 01:22 PM
Just did some quick checks. To use CVS via browser, you have to install ViewCVS (a cgi application). To run ViewCVSyou need Python, gnudiff and RCS installed, where the last two are some unix-guys-who-dont-like-windows-stuff. So CVS via bowser is even harder to install than WinCVS. I will give it a try anyway, but I highly recommend the WinCVS solution.

12m

SimCutie
May 05, 2006, 02:09 PM
Just did some quick checks. To use CVS via browser, you have to install ViewCVS (a cgi application). To run ViewCVSyou need Python, gnudiff and RCS installed, where the last two are some unix-guys-who-dont-like-windows-stuff. So CVS via bowser is even harder to install than WinCVS. I will give it a try anyway, but I highly recommend the WinCVS solution.

12m
I downed and tested WinCVS and concluded that it is not my type of application. It is too complex and has inconsistent UI and unstable (stuck or crash frequently). very cranky application, it seems not for production use quality. I give up on WinCVS and stick to old-but-proven comamnd line version.

12monkeys
May 05, 2006, 05:33 PM
Well, I don't like WinCVS as well. Tonight I gave TurtoiseCVS a try and its kind of better than WinCVS, at least if you are only useing checkin/out add/remove stuff. You may try that one if you like.

12m

Impaler[WrG]
May 05, 2006, 11:27 PM
I am able to web view the CVS repositories of other projects on SF so the problem is definatly with our project.

12monkeys
May 06, 2006, 04:34 PM
Ok, I did try to fix this WebView problem but failed. I also failed to fix some issues at the CVS root at SF. I'm not able to retrieve a module list which is quite unusual, as far as I understood all this stuff.
Somehow I mixed this completly up, but I have no clue how I did that.

I will now contact the SF admins and ask them for help. Maybe we have to reset our CVS there completely. If you have anything there please save it (if you haven't already).

12m

12monkeys
May 06, 2006, 04:55 PM
OK. SF staff is informed. When looking on the support request lists, there are lot of other people having problems with CVS and web view.

I don't know, how long it will take that this request will be handled, but we should calculate with 3-8 days.

If anybody has an alternative for source control it would be the right moment to come up with it.

12m

Impaler[WrG]
May 06, 2006, 05:59 PM
Sugjest we use cattle prods on Spoiled Fruit to accelerate his server coming online. Other then that we should all work on getting our codes ready for merging (proper commenting, debugging ect ect).

As for CVS I think it may have been a problem with Modual names, what was its name? When I tried the Tortise "fetch list" tool it would always fail saying the server didn't support it.

OK FINALY got it working checked out a copy, and yes it was a modual name problem, it seems that you didn't create any moduals for the project rather everything was included under the CVSROOT pathway which on every other projects is used only for keeping the chang logs for the project and other CVS type files. The Assets and CoreDll folders should be planced under a new modual which for simplicity should be civ4ccp (again the standard practice on other SF projects). I am not shure but would suspect that the current configuration is un-tenable because anyone comiting to the modual will also alter the changelogs themselves resulting in some kind of weird snake-eating-its-own-tail kind of behavior on the changelogs as they atempt to log changes to themselves!

P.S. I noticed a number of alterations from the original code mostly some coments on header files by 12monkeys, I din't see the purpose for most of these but I think on principle we should have a completely unaltered set of "as Firaxis made it" data used as the base for the project, all out changes being infact recorded as changes. As were likly going to need to do this ALL over again so lets use the completley blank files this time.

12monkeys
May 07, 2006, 02:22 AM
On of the problem is, that I can create modules using WinCVS and/or TortoiseCVS. But as soon as I want to retrieve them, I get the message, that there are no modules lsited in modules file. I don't know what I did, but I mixed somethingup there.

Some if the sources on CVS is more or less something for play+test with CVS, so don't use it.

I'm already prepared to merge my small changes in the source with whatever version.

12m

Impaler[WrG]
May 07, 2006, 11:29 AM
I think I have managed to get a civ4ccp modual created, I have a totaly firaxis virgin CoreDll in their now and am going to try moving the Assets as well. Try checkingout the new modual and making comits.

SimCutie
May 07, 2006, 03:28 PM
']I think I have managed to get a civ4ccp modual created, I have a totaly firaxis virgin CoreDll in their now and am going to try moving the Assets as well. Try checkingout the new modual and making comits.
Why did you appended extra level of civ4ccp to pathname?
( CVSROOT/civ4ccp/civ4ccp/CvGameCoreDLL_v161 instead of CVSROOT/civ4ccp/CvGameCoreDLL_v161 )
Other SF projects normally appended project name to CVSROOT only once.
I think that we should not include python24 and Boost-1.32.0 in CVS sub-tree. It is only dead weight that waste storage and traffic on public distibution.
I think that we should remove all the existing file in Assets tree, too.
We will not distribute whole Assets directory. We will distribute only modified files like CustomAssets file is distributed. This can be done this way.
First put all the original Firaxis Assrets file to CVS Assets folder (version 1.1.1.1),
Then remove all the files in Assets folder and commit it as 1.1.1.2.
If we check-out lastes version(1.1.1.2 version) of Assets folder, no file should be chedked out. When we trys to modify a file in the Assets folder, first check out 1.1.1.1 (Firaxis virgin) and modify it and commit it as latest version (like 1.1.1.3).
By this way, we can distributes only modified assets files. Else, we should always distribute whole assets files. That is not what we want.
PS) And before we start using it offically, let's remove all the gabages left in the CVSROOT and re-init CvS ROOT again to start over again. This may fix current CVS web problems. it can't be done with CVS commend alone. We should request CVS service to SF staff to do it.
PS 2) Binary DLL should be managed and distributed separately from source tree. So it shoule reside in separate folder, not subfolder of source tree.

12monkeys
May 07, 2006, 03:53 PM
Why did you appended extra level of civ4ccp to pathname?
( CVSROOT/civ4ccp/civ4ccp/CvGameCoreDLL_v161 instead of CVSROOT/civ4ccp/CvGameCoreDLL_v161 )
Other SF projects normally appended project name to CVSROOT only once.
I think that we should not include python24 and Boost-1.32.0 in CVS sub-tree. It is only dead weight that waste stroge and traffic on public distibution.
I think that we should not include all the existing file in Assets tree, too.
It should be initially empty directory and we should be added one by one if and only if we modify these files. We will not distribute whole Assets directory. We will distribute only modified files like CustomAssets file is distributed.
So initial state should be clean empty folder. When we modify a file in the Assets folder, first add original Friraxis virgin file and commit it. Then edit it as we modified the file and commit it again.
By this way, we can distributes only modified assets files. Else, we should always distribute whole assets files. That is not what we want.
PS) And before we start using it offically, let's remove all the gabages left in the CVSROOT and re-init CvS ROOT again to start over again. This may fix current CVS web problems. it can't be done with CVS commend alone. We should request CVS service to SF staff to do it.

@SimCutie : if you're online please check what you can see if you retrieve a module list. I did some manually modifications on the CVSROOT modules file and I would like to know the effects on it.

@all : I did clean up several folders on the CVS. They are deleted. I think they all have been created by me, the last days, but I'm not 100% sure, if the one or other has been created by anybody else. You'll probalby still see those deleted fodlerm if you browse the repository with an admin function of WinCVS, but they are not active anylonger. So don't check them out (if this is even possible).

What I tried to do now, is to create ONE module called "civ4ccp_v161". For each Civ patch, we'll create a new module. The "civ4ccp_v161" is located in the root of our repository : "cvs.sourceforge.net/cvsroot/civ4ccp".
There I created two subfolders : CvGameCoreDLL_v161 and Assets_v161. The first one will take the c++ part, the second one the Python and XML part. As SimCutie said, we should fill the Assets folder only with changed files.

If anybody has any suggestions or comments regarding the structure, so please let me know. These are just my thoughts after struggleing several days with this sucking CVS at SF.

BTW : the supprot request for SF is still running, because there is still no chance to view CVS by browser.

12m

Impaler[WrG]
May 07, 2006, 03:57 PM
The first civ4ccp is the Project name, the second is the modual, from what I could tell this is how other projects are structured. Do you think the CoreDll and Assets should be seperate moduals? I personaly think its wiser for them to be grouped together as their are going to be dependencies on the XML created in the code and comits can be made over all these files at once.

As for including all Assets I had had similar thoughts because when we distribute the Dll we will also distribute the updated Schemas and likly leave out the content type files (mod makers would then include what they want). But then I though about the inconvenience of having to do a bunch of pasting of my modified XML files when we test out our new features. Making a distribution is a one time thing, testing happens constantly so we should make that as convenient as possible. With this set up you could update the CVS compile the dll and drop the Assets directly in Custom Assets to see changes someone has made to the game.

As for the CVSROOT I removed the extra stuff that was their, but I dont thing this was the cause of our problems with webviewing.

EDIT: I see 12m has changed the name to civ4ccp_v161 thats a good idea and will be usefull when the game gets patched, as for what assets are included as I said I think getting all of them is wise but I can live with this arangment. I think we are ready to start real commits. Hopefully they will get this webview thing corrected soon, I am 90% shure its not a fault with our project. In the mean time we can checkout/update the CVSROOT modual to actualy view the changelogs.

12monkeys
May 07, 2006, 04:06 PM
First I thought the same as you, Impaler, but now I think its better to have only the changes files in the Assets folder. Just image the modders, who has scan all files for the comments to identify the changed file. To do a test, its quite simple. Just copy a fresh asset into a test folder and copy our changes files over. Thats it. So I think its better to have only the changes files there.

SimCutie
May 07, 2006, 04:34 PM
Hmm.. I see civ4ccp_v161.. now..
But why "CvGameCoreDLL_v161/CvGameCoreDLL/*.cpp" ?
I think that once we have version number in module name (civ4ccp_v161)
we don't need "CvGameCoreDLL_v161" folder prefix...
So I suggest to put all the source as "civ4ccp_v161/CvGameCoreDLL/*.cpp"

And Please read my previous posting again, I have revised it after you replied....
I am on-line and will be so for a while.. How about have on-line chat now.?
I will wait on #civfanatics channel until Sunday, May 7, 2006. 22:00 "GMT".

12monkeys
May 07, 2006, 04:45 PM
Ok! Maintenance completed. Here is the current state.

$CVSROOT : cvs.sourceforge.net/cvsroot/civ4ccp

Module : $CVSROOT/civ4ccp_v161

Subdirectories are :
- civ4ccp_v161/Assets_v161/Python
- civ4ccp_v161/Assets_v161/XML
- civ4ccp_v161/CvGameCoreDLL_v161/CvGameCoreDLL

So far agreed conventions (which are not set in stone):
The Asstes_v161 will only get CHANGED files. The both directories PYTHON and XML are empty execpt a readme.txt, which is needed to prevent empty directory pruneing. If you another subdirectory is needed, they can be created by the developer.

The CvGameCoreDLL contains all files from the SDK but non of its subdirectories. Those are not needed.

I hope this will work now because that CVS really drove me crazy the last days. If anybody has any suggestions or comments please let me know.

As long as we don't have much experiences with the CVS usage, we should keep always a copy of our changes at home, I suggest.

12m

12monkeys
May 07, 2006, 04:48 PM
Hmm.. I see civ4ccp_v161.. now..
But why "CvGameCoreDLL_v161/CvGameCoreDLL/*.cpp" ?
I think that once we have version number in module name (civ4ccp_v161)
we don't need "CvGameCoreDLL_v161" folder prefix...
So I suggest to put all the source as "civ4ccp_v161/CvGameCoreDLL/*.cpp"

And Please read my previous posting again, I have revised it after you replied....
I am on-line and will be so for a while.. How about have on-line chat now.?
I will wait on #civfanatics channel until Sunday, May 7, 2006. 22:00 "GMT".

The "CvGameCoreDLL_v161/CvGameCoreDLL/*.cpp" is because the SDK Zip has that structure. Thats the only reason. And, TBH, I have not much motivation to change that again. So, please, let us go as it is now. I'm really glad to made it so far.

12monkeys
May 07, 2006, 04:55 PM
Why did you appended extra level of civ4ccp to pathname?
( CVSROOT/civ4ccp/civ4ccp/CvGameCoreDLL_v161 instead of CVSROOT/civ4ccp/CvGameCoreDLL_v161 )
Other SF projects normally appended project name to CVSROOT only once.
I think that we should not include python24 and Boost-1.32.0 in CVS sub-tree. It is only dead weight that waste storage and traffic on public distibution.
I think that we should remove all the existing file in Assets tree, too.
We will not distribute whole Assets directory. We will distribute only modified files like CustomAssets file is distributed. This can be done this way.
First put all the original Firaxis Assrets file to CVS Assets folder (version 1.1.1.1),
Then remove all the files in Assets folder and commit it as 1.1.1.2.
If we check-out lastes version(1.1.1.2 version) of Assets folder, no file should be chedked out. When we trys to modify a file in the Assets folder, first check out 1.1.1.1 (Firaxis virgin) and modify it and commit it as latest version (like 1.1.1.3).
By this way, we can distributes only modified assets files. Else, we should always distribute whole assets files. That is not what we want.
PS) And before we start using it offically, let's remove all the gabages left in the CVSROOT and re-init CvS ROOT again to start over again. This may fix current CVS web problems. it can't be done with CVS commend alone. We should request CVS service to SF staff to do it.
PS 2) Binary DLL should be managed and distributed separately from source tree. So it shoule reside in separate folder, not subfolder of source tree.

I'm afraid, we can't count on the version numbers. If anybody accidently change and check in a file (just put in a blank), than you have an increased version number. We can't always revert those changes to get a clean version nubering. So we have to work with tags, releases and branches, I think.

to PS:I also though about to start over, but I think its quite OK now. If we get some trouble again the next days, we still can do this.

to PS2: why?

SimCutie
May 07, 2006, 05:13 PM
I'm afraid, we can't count on the version numbers. If anybody accidently change and check in a file (just put in a blank), than you have an increased version number. We can't always revert those changes to get a clean version nubering. So we have to work with tags, releases and branches, I think.

to PS:I also though about to start over, but I think its quite OK now. If we get some trouble again the next days, we still can do this.

to PS2: why?
Version number is OK. Then put tag named "Firaxis" or "Base" on Firaxis version. When we modify the Assets file, first check out latest version of the file first. If nothing comes out, then it means that the file was not modified from Firaxis version. Then you check out "Base" version. then original firaxis file will come out. then modify it and commit as latest version (minor version number will be increased here).
If a file come out when you check out latest version, it mean the file was modified by someone else. so you should modify that version, not Firaxis original version.
Before we officially release the file, we increase major version number of all release file and put a symbolic name tag like "2006May17" or "Beta-1", then it doesn't matter what the minor verion number is or how many times we have modified/commited it....

I think that binary DLL should not be included in source file package and no C++ source file in DLL package.
Most user will download DLL package only. Only small number of MOD developer will need to download C++ SDK source.
But the Assets file should be included in all DLL package. Because new DLL will not work properly without modified Assets files. i.e. DLL package should include subset of Assets folders tree with modified assets files AND the binary DLL.

SimCutie
May 07, 2006, 06:03 PM
@12m:
If you finished the CVS setup, then please, try to make a release version of project and check it works as you intended. (kind of dry run) Two complete ZIP (one for binary release, one for source only release) file should be made and made available to general public to download.
Please test and check out our CVS configuartion whether it will be OK throughout upto final release stage before we actually start to use it.

12monkeys
May 08, 2006, 02:57 AM
@12m:
If you finished the CVS setup, then please, try to make a release version of project and check it works as you intended. (kind of dry run) Two complete ZIP (one for binary release, one for source only release) file should be made and made available to general public to download.
Please test and check out our CVS configuartion whether it will be OK throughout upto final release stage before we actually start to use it.

The setup is finished from my side. I'll be able to do your suggestions Tuesday evening earliest, because I'm in the office right now and will leave for a short trip today. If you like you can do that test by your own.

My last action yesterday was to set a tag "Initial_Upload" on all files in the repository. But for any reason I don't see the tag on the files. It may be, that there is still a problem with that CVS.

12m

12m

SimCutie
May 08, 2006, 04:30 AM
I cheked out civ4ccp_v161\CvGameCoreDLL_v161\CvGameCoreDLL files.
It cheked out OK. Thanks for your effort to set up CVS to work...
But, it seems to have some oddity.. file modification date...
All file date are set to 2006 May 08 (Time when you imported the files to CVS), Not original modification date of SDK source ( Mostly before 2006 Apr. 30) CVS system (including WinCVS) has option to set file modification date as time of check-in date when you imports files to CVS.
I can live with changed date but it would be much better if the unmodified file has same file date as that of virgin SDK file.
And version number.. all version number are set to version 1.1
IMHO, starting version number as version 1.1.1.1 would be better and next version as 1.1.1.2 not 1.2.

About the long file path:
I ask you to reconsider the "CvGameCoreDLL_v161" component of path... it seems that bit long and it does not serve any purpose to have folder in folder.
... My Projects\civ4ccp_v161\CvGameCoreDLL seems to be more reasonable than ... My Projects\civ4ccp_v161\CvGameCoreDLL_v161\CvGameCor eDLL.

12monkeys
May 08, 2006, 06:21 AM
I cheked out civ4ccp_v161\CvGameCoreDLL_v161\CvGameCoreDLL files.
It cheked out OK. Thanks for your effort to set up CVS to work...
But, it seems to have some oddity.. file modification date...
All file date are set to 2006 May 08 (Time when you imported the files to CVS), Not original modification date of SDK source ( Mostly before 2006 Apr. 30) CVS system (including WinCVS) has option to set file modification date as time of check-in date when you imports files to CVS.
I can live with changed date but it would be much better if the unmodified file has same file date as that of virgin SDK file.
And version number.. all version number are set to version 1.1
IMHO, starting version number as version 1.1.1.1 would be better and next version as 1.1.1.2 not 1.2.

About the long file path:
I ask you to reconsider the "CvGameCoreDLL_v161" component of path... it seems that bit long and it does not serve any purpose to have folder in folder.
... My Projects\civ4ccp_v161\CvGameCoreDLL seems to be more reasonable than ... My Projects\civ4ccp_v161\CvGameCoreDLL_v161\CvGameCor eDLL.

I don't lnow why sometimes we have versions 1.1 and why 1.1.1.1. I would prefer 1.1.1.1 as well, but I have no clue where I can set this up.
Regarding the file date, I don't see any problems. Next upload we may change it to the original file date and not the upload date.
The folders doesn't really matter for me. If nobody disagree you can change that. In this case we should change the structure again like this :

- civ4ccp_v161/Assets/Python
- civ4ccp_v161/Assets/XML
- civ4ccp_v161/CvGameCoreDLL

As I said, I can't do it untill tomorrow evening. So if you can put some efforts in it, it would be great.

Did you test the tagging and with what result?

12m

SimCutie
May 08, 2006, 08:21 AM
I don't lnow why sometimes we have versions 1.1 and why 1.1.1.1. I would prefer 1.1.1.1 as well, but I have no clue where I can set this up.
Regarding the file date, I don't see any problems. Next upload we may change it to the original file date and not the upload date.
The folders doesn't really matter for me. If nobody disagree you can change that. In this case we should change the structure again like this :

- civ4ccp_v161/Assets/Python
- civ4ccp_v161/Assets/XML
- civ4ccp_v161/CvGameCoreDLL

As I said, I can't do it untill tomorrow evening. So if you can put some efforts in it, it would be great.

Did you test the tagging and with what result?

12m
In my opinion, this seems better than current one...
But if you insist, I am OK with current one, too.

On tagging:
Your version is tagged as "Initial_Upload", and I see no problem in your tag... I can retrieve the version by the tag name.

Impaler[WrG]
May 08, 2006, 04:10 PM
Did someone change the modual name again?, I cant get anything off the CVS but it may just be a SF problem. If someone has changed the moduals please give us the new modual name/s as you cant check out anything without it.