I've sent out the Clash Testbed with Laurent's tech mods to Richard and Martin. If either of you guys didn't get it, please let me know.
If there are specific question on how to create scenarios using the xml files, I think it'd be good to start a "Scenario Design Details" or some such thread. It seems that would be of some utility going forward. BTW the Events and Scenarios thread is still the place for high-level discussions of what kind of characteristics our scenario languages should have. If someone starts the Details thread, pleas put the link above in it also.
[edit] One think I forgot to mention is that you will see errors in the dos window on scenario read-in that say "Uninteresting tag...". This means that the parser found an xml tag it doesn't know how to interpret. In the current case they are mostly tags from the diplomacy model that aren't implemented yet. But watch that space, because if you misspell a tag in your changes of scenarios that is where the only notification of the error will show up.
Good Luck on your respective goals with the testbed!
I am appending the readme that goes with the testbed. The tags for the xml example won't show up right, but I'm too lazy to fix it. . .
------------------------------------------------------------
Clash Testbed 7.5 (post-Demo 7.2.1 code) Feb 2, 2003
Please delete the entire old version of the clash testbed (if applicable) before installing this one.
New info:
v. 7.5 Is the post-Demo 7.2.1 code made available so that Richard, Martin, and others can mess with the
scenario files. A new version that supports the tech model more fully (better econ support) will be made
available as soon as practical.
The manual for the xml resources files is now quite detailed. It is critical if you want to understand what is
going on in the scenario files. It is called dataformat.xml
I put in some tags to allow modifications of tech model RP generation for economic activities. One is for Tech
investments using economic orders (ResearchCost), and the other for RPs generated by labor in economic sectors
(RPsPerLabor). Here is an example from Jericho.xml
0.05
0.1
This reduces research cost to buy RPs (tech activity econ orders) by a factor of 20 from normal, etc. The tags
shown go within government which is within civilization. Although it goes in a specific civilization tag at
the moment, the effect is global.
For the moment econ effectivenesses are handled as follows: effectiveness = 5.1 + knowledge of relevant tech.
This subverts the normal definition that effectiveness should double when knowledge does, but is done this way
to avoid possibly breaking the economy. I will figure a better way to do it when I get a chance.
Known bugs:
1. DON'T use the Ruler button, exept to look at it (it is quite slick). It has preliminary govt stuff in it,
that isn't active yet.
Clash Testbed 7 manual
Hello Everyone:
This is a testbed for Clash demo 7+. There are several purposes for the testbed, including, but not limited
to:
1. A graphics testbed
2. An early-alpha tester for running the system through its paces and giving bug reports.
3. Providing a model designer or manual writer with an early version with which to do their thing.
Before you do anything, please make sure you have installed and run the lastest demo. That will ensure both
that you have the Java program necessary to run the testbed installed properly, and also that you know
basically what's going on in the program.
Running the program, and the command-line switches
IMPORTANT:
Before following these instructions, you should have already unzipped the files to C: Preserving the Directory
Structure.
You run the program by executing the batch file RUN_ClashTestbed. You can also add a number of "command-line
switches" at the end of the last line in the batch file. (Edit the batch file using notepad or another text
editor) The default last line says:
java game.manager.GameMain
By adding the -seed "flag" you can make the random number generator use a fixed seed, which gives the same
sequence of random numbers every time. This is Really useful for giving a path to a programmer that
consistently reproduces a bug. To add this behavior change the last line to:
java game.manager.GameMain -seed
You can add any number of such switches. The switches are also used to change between different xml files in
the class\resources directory. More about that later. A complete list of command-line switches can be found
at the bottom.
Note once you run the batch file, you can just enter the last line by hand in a Dos window with any switches
you prefer if that's easier. Each time you reboot you'll need to use the batch file the first time.
The standard tiles are, oddly enough, in the "tiles" folder. Just put any extra tiles in that folder, and put
their names in an alternate xml images file. More about how to do that below.
Using the xml files (only needed for tile and initialization parameter editing)
The xml files are in the class\resources sub-directory. I think it is pretty self-explanatory what general
category is handled in each file
It generally applies to all Clash xml files that:
1. Forward references are not supported. (You can't give a unit a "Philanderer" element unless that element
was defined Earlier in the file.)
2. Any tag which writes to all fields in an object will over-write any
previously set fields for that object. This is a specific case of the
previous rule.
Bug Reports
To report a bug, please use the format already in use in the current bug report file as shown in the second
post of the D6 thread. When the program crashes, you will get a diagnostic output in the Dos window. Please
copy this, if relevant, and attach it to the bug report. Unfortunately these outputs frequently overflow the
screen buffer. If you have an error message that overflows the DOS window you can redirect the error output to
an "error.txt file that will appear in the ClashTestbed\class directory. To do this you must us the -ef flag.
("ef" for error file) Send the file or its contents as the bug report. It is probably best to by default run
using error logging. To do that you can use the RUN_ClashTestbed_ErrorLog batch file. This file also has the
-seed flag set so that behavior that lead to the bug, if relayed precisely, will duplicate the bug when one of
the coder runs it.
For twitchy but non-fatal behavior where something appears to be wrong, you can check out the various text
diagnostic output files for individual models. FE "economics.txt" has some very detailed output on selected
parts of the economy. (These files all appear in the ClashTestbed\class directory.) Look especially for lines
that begin with "Error". For these non-fatal bugs please give a good a description as possible and email the
model output text file to the coder. Bug reports should be posted on the forum.
Support
Contact Mark at markeverson@comcast.net, or
For support on the images or xml file stuff, Gary at gthomas@takaro.co.nz
Let us know what features you would like for the testbed, and xml file capabilities in general.
Good Luck!
Mark
Command Line Switches
(Must be in command line mode (FE batch file) to use)
-ef = error logging to a file
-no = no AI movement
-seed = random numbers use constant seed for reproducible behavior
-800x600 = start in 800 x 600 res mode to simulate 800x600 screen
-allecon = allows Player access to economic orders/info for non-player civs
-riotsoff = turn off riots model (demo 7 feature, default is riots are on)
Switches allowing ability to replace a resource (xml) file by command line arguments:
-r images c:\clash\somefilename
will completely replace the default images file with the named file.
-e images c:\clash\somefilename
will overwrite the resources file with the named file. Use this to
replace only some of the images.
Note: the file name should NOT have an extension specified, and the actual file MUST have the extension .xml
Also, -e cannot be used to overwrite just some fields in a main element - it overwrites the whole element, so
you can't overwrite just
flat 3
to just change the defense
- you have to have all the other parameters of that terrain as well.
Legal changes are to images, terrain or settings (bizarre but legal).
If there are specific question on how to create scenarios using the xml files, I think it'd be good to start a "Scenario Design Details" or some such thread. It seems that would be of some utility going forward. BTW the Events and Scenarios thread is still the place for high-level discussions of what kind of characteristics our scenario languages should have. If someone starts the Details thread, pleas put the link above in it also.
[edit] One think I forgot to mention is that you will see errors in the dos window on scenario read-in that say "Uninteresting tag...". This means that the parser found an xml tag it doesn't know how to interpret. In the current case they are mostly tags from the diplomacy model that aren't implemented yet. But watch that space, because if you misspell a tag in your changes of scenarios that is where the only notification of the error will show up.
Good Luck on your respective goals with the testbed!
I am appending the readme that goes with the testbed. The tags for the xml example won't show up right, but I'm too lazy to fix it. . .
------------------------------------------------------------
Clash Testbed 7.5 (post-Demo 7.2.1 code) Feb 2, 2003
Please delete the entire old version of the clash testbed (if applicable) before installing this one.
New info:
v. 7.5 Is the post-Demo 7.2.1 code made available so that Richard, Martin, and others can mess with the
scenario files. A new version that supports the tech model more fully (better econ support) will be made
available as soon as practical.
The manual for the xml resources files is now quite detailed. It is critical if you want to understand what is
going on in the scenario files. It is called dataformat.xml
I put in some tags to allow modifications of tech model RP generation for economic activities. One is for Tech
investments using economic orders (ResearchCost), and the other for RPs generated by labor in economic sectors
(RPsPerLabor). Here is an example from Jericho.xml
This reduces research cost to buy RPs (tech activity econ orders) by a factor of 20 from normal, etc. The tags
shown go within government which is within civilization. Although it goes in a specific civilization tag at
the moment, the effect is global.
For the moment econ effectivenesses are handled as follows: effectiveness = 5.1 + knowledge of relevant tech.
This subverts the normal definition that effectiveness should double when knowledge does, but is done this way
to avoid possibly breaking the economy. I will figure a better way to do it when I get a chance.
Known bugs:
1. DON'T use the Ruler button, exept to look at it (it is quite slick). It has preliminary govt stuff in it,
that isn't active yet.
Clash Testbed 7 manual
Hello Everyone:
This is a testbed for Clash demo 7+. There are several purposes for the testbed, including, but not limited
to:
1. A graphics testbed
2. An early-alpha tester for running the system through its paces and giving bug reports.
3. Providing a model designer or manual writer with an early version with which to do their thing.
Before you do anything, please make sure you have installed and run the lastest demo. That will ensure both
that you have the Java program necessary to run the testbed installed properly, and also that you know
basically what's going on in the program.
Running the program, and the command-line switches
IMPORTANT:
Before following these instructions, you should have already unzipped the files to C: Preserving the Directory
Structure.
You run the program by executing the batch file RUN_ClashTestbed. You can also add a number of "command-line
switches" at the end of the last line in the batch file. (Edit the batch file using notepad or another text
editor) The default last line says:
java game.manager.GameMain
By adding the -seed "flag" you can make the random number generator use a fixed seed, which gives the same
sequence of random numbers every time. This is Really useful for giving a path to a programmer that
consistently reproduces a bug. To add this behavior change the last line to:
java game.manager.GameMain -seed
You can add any number of such switches. The switches are also used to change between different xml files in
the class\resources directory. More about that later. A complete list of command-line switches can be found
at the bottom.
Note once you run the batch file, you can just enter the last line by hand in a Dos window with any switches
you prefer if that's easier. Each time you reboot you'll need to use the batch file the first time.
The standard tiles are, oddly enough, in the "tiles" folder. Just put any extra tiles in that folder, and put
their names in an alternate xml images file. More about how to do that below.
Using the xml files (only needed for tile and initialization parameter editing)
The xml files are in the class\resources sub-directory. I think it is pretty self-explanatory what general
category is handled in each file
It generally applies to all Clash xml files that:
1. Forward references are not supported. (You can't give a unit a "Philanderer" element unless that element
was defined Earlier in the file.)
2. Any tag which writes to all fields in an object will over-write any
previously set fields for that object. This is a specific case of the
previous rule.
Bug Reports
To report a bug, please use the format already in use in the current bug report file as shown in the second
post of the D6 thread. When the program crashes, you will get a diagnostic output in the Dos window. Please
copy this, if relevant, and attach it to the bug report. Unfortunately these outputs frequently overflow the
screen buffer. If you have an error message that overflows the DOS window you can redirect the error output to
an "error.txt file that will appear in the ClashTestbed\class directory. To do this you must us the -ef flag.
("ef" for error file) Send the file or its contents as the bug report. It is probably best to by default run
using error logging. To do that you can use the RUN_ClashTestbed_ErrorLog batch file. This file also has the
-seed flag set so that behavior that lead to the bug, if relayed precisely, will duplicate the bug when one of
the coder runs it.
For twitchy but non-fatal behavior where something appears to be wrong, you can check out the various text
diagnostic output files for individual models. FE "economics.txt" has some very detailed output on selected
parts of the economy. (These files all appear in the ClashTestbed\class directory.) Look especially for lines
that begin with "Error". For these non-fatal bugs please give a good a description as possible and email the
model output text file to the coder. Bug reports should be posted on the forum.
Support
Contact Mark at markeverson@comcast.net, or
For support on the images or xml file stuff, Gary at gthomas@takaro.co.nz
Let us know what features you would like for the testbed, and xml file capabilities in general.
Good Luck!
Mark
Command Line Switches
(Must be in command line mode (FE batch file) to use)
-ef = error logging to a file
-no = no AI movement
-seed = random numbers use constant seed for reproducible behavior
-800x600 = start in 800 x 600 res mode to simulate 800x600 screen
-allecon = allows Player access to economic orders/info for non-player civs
-riotsoff = turn off riots model (demo 7 feature, default is riots are on)
Switches allowing ability to replace a resource (xml) file by command line arguments:
-r images c:\clash\somefilename
will completely replace the default images file with the named file.
-e images c:\clash\somefilename
will overwrite the resources file with the named file. Use this to
replace only some of the images.
Note: the file name should NOT have an extension specified, and the actual file MUST have the extension .xml
Also, -e cannot be used to overwrite just some fields in a main element - it overwrites the whole element, so
you can't overwrite just
to just change the defense
- you have to have all the other parameters of that terrain as well.
Legal changes are to images, terrain or settings (bizarre but legal).
Comment