Apolyton Archive  |  Preserved copy of the Apolyton Civilization Site and its forums as they stood in September 2005. Read-only; nothing here can be posted to or replied to.  |  Forum index |  About this archive |  The 1998–2001 UBB forums
Today on Apolyton WARDELL INTERVIEW PROMO A.C.S. HISTORY CHAPTER 4 GET CIV4 /w FREE PLUS! A.C.S. PHOTO GALLERY GET A.O.M. V1.1
Apolyton Civilization Forums
main| civ2| civ3| civ4| smac| ctp2| ron| moo3| galciv| galciv2| alt| about|
ApolytonPLUS | register | search | faq | new posts | pm (-/-) | upload | members
hall of fame new! | civgroups | civgroups news | interviews | the column | radio | chat | directory | news | store | PLUS
Apolyton Civilization Forums : Powered by vBulletin version 2.0.3 Apolyton Civilization Forums > Alternative Civs > Clash of Civilizations > Technology Model 7
Show a Printable Version | Email This Page to Someone! | Receive updates to this thread | Report this to Apolyton news!
04.Sep: `FC` 2.0.5 COMPLETED AND RELEASED
27.Jul: `FC` 2.0.4 COMPLETED AND RELEASED
16.Jul: `FC` 2.0.3 COMPLETED AND RELEASED

bottom of page
  
Author
Thread   
Pages (5): [ 1   2   3   4   5   ]
< Last Thread     Next Thread > Post New Thread     Post A Reply
Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 24-01-2003 19:42 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#61 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations: Deluxe Edition

I was playing SiegeWars and saw the Siege Weapons technology, and wondered where it came from since it is not in the tech tree. So I hunted around the .jar file and quickly noticed that the various .xml files for the scenarios all have seperate technology trees. Not only that, they have seperate listings of military units and basically everything else that goes in the game.

What is going on with those? Do they take the place of the default .xml files? If so, what is the point of having a technology.xml or a military.xml file? Will I have to manually update the techs in each and every scenario xml file? Can you have the scenarios read off the default files and only list the things that are differrent?

Mark_Everson is offline Mark_Everson
Clash of Civilizations Project Lead
Canton, MI
Jan 1970
time: 00:24
  Old Post 24-01-2003 22:42 Visit Mark_Everson's homepage!
Edit/Delete Message Reply w/Quote
#62 Report this post to a moderator
Support Apolyton buy from Amazon

Sounds like you guys are making good progress!

quote:
Originally posted by Richard Bruns
Come to think of it, why donīt we release the game with the technology changes now and call it Demo 7.2.2? It sounds like you have already made the required changes. I have two weeks of mostly free time approaching, so it would be a perfect time for me to do some serious playtesting and fine-tuning.


Sounds great to me if Laurent is comfortable with it. As a matter of fact this could go much of the way toward the 7.3 goals, and I'd be inclined to release it as Demo 7.3. What do you guys think? I will certainly help with the tutorial scenario part as needed.

quote:
If I add new units, activities, and technologies, will the econ GUI update automatically so that money can be put into them?


Yes, you'll automatically be able to invest in building new units and any new Activity. The only glitch is I may need to put in any tech feedback into econ effectiveness itself in by hand if I haven't got that part of the xml stuff done when you need it. Gives me more incentive to do that part fast!

[/QUOTE]I would like to be able to do some of this altering and testing myself, but the problem is that while I can use free and easily downloaded software to unpack the .jar file and see the .xml files, I don't know how to repack the .jar so the game plays with the new files. Is there some way to do this that does not involve downloading an immense Java IDE?[/QUOTE]

There is actually a better way than what Laurent suggests. You can leave the jar files unzipped and just run the program from a batch file. That way you can just edit the xml files where they sit, and the changes will automatically take effect. The other advantage is that we can send new code to you to update the program functionality easily.

I don't know if you remember the 'Clash Testbed' for testing graphics, scenarios, and whatever, but that is what the testbed was based on. Once Laurent has the new stuff working to his satisfaction I will put together a version of the testbed that you can use to achieve your aims.

If you want to mess around with things before the new tech code is available, just let me know, and I'll put together a current version for you.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 25-01-2003 03:30
Edit/Delete Message Reply w/Quote
#63 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations

quote:
What is going on with those? Do they take the place of the default .xml files? If so, what is the point of having a technology.xml or a military.xml file? Will I have to manually update the techs in each and every scenario xml file? Can you have the scenarios read off the default files and only list the things that are differrent?

Each scenario can define absolutely everything, like a mod in civ or CtP...
I added the siege weapons tech because I thought it would be good for a siege dedicated scenario.
We must remember however that there are two things: the game and scenarios. The game will feature a tech "tree" and units etc. which scenarios can use or ignore.
For example, delenda uses technology.xml and military.xml. Attila does the same but adds a unit.
You need only concern yourself with the game techs, leaving scenario-specifics to whoever is silly enough to design a scenario.
To answer the most concrete question, I am going to update everything by hand. I must try them, test them and adjust them a bit. I wish I could have finished this weel-end, but considering my daughter is sick, I may not be able to do all I'd like to. I'll send the code when I have finished and tested it anyway.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 25-01-2003 14:56 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#64 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations: Deluxe Edition

The testbed idea sounds good. Maybe that can be 7.2.2 and once we have fine-tuned it we can release 7.3 Iīll need some help with the batch file, though. We canīt put anything on the desktop on these machines and they have a funny drive numbering, so youīll have to teach me how to alter the batch file so that it runs the game if the game files are located in a folder with a name like D:\FTP\ClashDemo

Is it as simple as opening the file in Notepad and changing it to:

code:
d: cd \FTP\ClashDemo java -jar CLASHD721.JAR -ef -seed


Laurent, I think it is great that you are adding techs. I will know that I have designed a good system when you no longer need me to make it work. But I have no problems with updating all the stuff myself; your project time is more valuable than mine since you are a coder.

I do want to concern myself with scenario-specifics, since I am silly enough to want to design scenarios. I didnīt even know you even had such a well-defined scenario xml file built into the game already. It looks like I can already start experimenting with scenarios, once I know how things work with those files.

I see that units can be added individually, but if I add a single technology or element to a scenario, will it use that one thing in addition to all the other stuff the normal file, or does the entire file have to be copy-pasted and the new stuff aded to it?

Does the scenario file have a way to start the civilizations at a higher knowledge, so that, for example, the Romans can use the standard tech tree but start at knowledge 4 in most techs? If not, I would like to request that it be added in the next demo. That is very important functionality both for scenario design and game balance.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 25-01-2003 18:28
Edit/Delete Message Reply w/Quote
#65 Report this post to a moderator
Support Apolyton or Terrorists Win

Richard, I updated all the xml files and sent them to the coders because vovan added things for the diplomacy and it was better to merge them as soon as possible.
The reason why I want to merge the changes is that, this way, I think of updating the doc (dataformat.html, if it is not in the jar, we must send it to you), and I can make sure all files work with the game, so I may need to update the code.
Right now for instance, having removed the startlevel tags, we have to find out a way to specify starting knowledge, and this should be per civ, so you can have knowledges of 4 in Delenda for Carthage and Rome but maybe one of the civ is more advanced than the other. Well, that's just what you want anyway. This means both xml and code issues, and it's better if I discuss a format (or get an idea from you) and then adapt it so it fits the code correctly.
Anyway, it is done.

To answer other scenario issues:
Adding elements doesn't require to copy all the stuff. Look at Attila.xml for an example (the horse archer unit).

As for running from the ftp your guess seems likely to work.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 25-01-2003 18:50 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#66 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations: Deluxe Edition

quote:
Originally posted by LDiCesare
Right now for instance, having removed the startlevel tags, we have to find out a way to specify starting knowledge, and this should be per civ, so you can have knowledges of 4 in Delenda for Carthage and Rome but maybe one of the civ is more advanced than the other.


Startlevel was the tech level at which knowledge equals one. Knowledge always is and was is always assumed to be equal to one at the start of the game. I would assume that the most logical place to put a civilizationīs knowledge would be somewhere in the civilization tag in the scenario xml. The game would read that data and store it as the civīs knowledge.

I found the dataformat.html, but it wasnīt too helpful. I know what the tags mean, and it doesnīt say much about how the game reads the data. It is also in an absolutely enormous font that hurts my eyes and makes reading it a challenge.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 26-01-2003 00:15
Edit/Delete Message Reply w/Quote
#67 Report this post to a moderator
Support Apolyton, buy Call to Power 2

I did something like this in delenda: This is inside Rome and Carthage's civilization tag:
lt;/civilization>
(...)
<technology>
<name>Biology</name>
<knowledge>3.0</knowledge>
</technology>
<technology>
<name>Farming</name>
<knowledge>3.0</knowledge>
</technology>
<technology>
<name>horses</name>
<knowledge>3.0</knowledge>
</technology>
<technology>
<name>Production</name>
<knowledge>3.0</knowledge>
</technology>
<technology>
<name>Military Tactics</name>
<knowledge>3.0</knowledge>
</technology>
</civilization>

Vovan changed the dataformat.html so it is easier to read. The next version should be more useful.

Mark_Everson is offline Mark_Everson
Clash of Civilizations Project Lead
Canton, MI
Jan 1970
time: 00:24
  Old Post 27-01-2003 04:04 Visit Mark_Everson's homepage!
Edit/Delete Message Reply w/Quote
#68 Report this post to a moderator
Suffering from ads?

Hi guys, sounds like you're heading in the right direction. Only a few comments. . .

quote:
Originally posted by Richard Bruns
The testbed idea sounds good. (snip)

Is it as simple as opening the file in Notepad and changing it to:
code:
d: cd \FTP\ClashDemo java -jar CLASHD721.JAR -ef -seed


Yes, its as Laurent said.

[QUOTE]I do want to concern myself with scenario-specifics, since I am silly enough to want to design scenarios. I didnīt even know you even had such a well-defined scenario xml file built into the game already. It looks like I can already start experimenting with scenarios, once I know how things work with those files.


Thats Great, Richard. We really need someone who isn't a coder to create new scenarios and also make suggestions for refining the scenario capabilities we have so far. That certainly couples very well with the tech-scenario goal for D7.3 also.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 27-01-2003 23:43 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#69 Report this post to a moderator
Technology GUI Request Support Apolyton, buy Civilization 2

In order to fine-tune the technology numbers for each scenario as I playtest them, I will need more information than a simple list of tech knowledge. Knowing where the RPīs are coming from and what effect they are having would be a big help in the debugging process, and a detailed knowledge about tech growth is important for helping players make good decisions about technology.

So when the Tech button is pressed, something like this should come up:

Technology DataKnowledgeRP InputRP ModifiersKnowledge
Name:Last TurnGovernmentEconomyEventsTotalHelperUpkeep FactorThis Turn
Biology:2050112.05
Farming:40150234.1
Military Tactics:3505113.1
Horses:00050211


With this information and a knowledge of the growthrate numbers for the technologies, I can track the entire tech growth equations and know what is going on with the system. Implementing it should IMO be a fairly high priority, although it isnīt worth delayingthe testbed over.

I am sorry if I have been demanding lately. I am just throwing out a lot of ideas, as they come to me. Most of what I have said are just idle suggestions, but this is an actual request, because it is quite important for doing my job.

Mark_Everson is offline Mark_Everson
Clash of Civilizations Project Lead
Canton, MI
Jan 1970
time: 00:24
  Old Post 28-01-2003 07:16 Visit Mark_Everson's homepage!
Edit/Delete Message Reply w/Quote
#70 Report this post to a moderator
Remove this text

Hi Richard, definitely Demand what you need

Rather than a gui element I think we should just have the info you're looking for be put into the tech.txt log file. Laurent should be able to do that with relatively modest effort. I think all the info is there, or can be gotten ahold of in the program.

How about it Laurent, are you game? If the tech file starts getting too big we can put in command line switches to allow it to be turned on or off. Probably need to do the same for econ and combat since those files can also get huge!

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 28-01-2003 13:36 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#71 Report this post to a moderator
Inflate your Upload Space

A log file sounds like a good first step. It won't be too much trouble to open it anew every time I need to see the data, and having a file saved on disk to track everything over the game would be good.

I seriously doubt that the tech log file would get as big as the military or economy log file, at least until the tech tree gets a lot bigger. It will only need about a dozen lines per turn, while a single battle generates a much greater amount of data.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 29-01-2003 00:22 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#72 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations: Deluxe Edition

I was looking through the old economy thread and found some stuff that needs to be addressed.

First, there is the issue of resource or specials finding being based on technology. I believe that this can be handled rather easily with the current Applications spec, conbined with an additional number assigned to each resource. This number would list the difficulty of finding the resource. Consider the following application:

code:
<Special Discovery> <Name>Iron</Name> <requirement> <name>Metallurgy</name> <knowledge>3</knowledge> </requirement> <Effect> <value>10</value> <technology> <name>Metallurgy</name> <baseknowledge>3</baseknowledge> <knowledgeeffect>0.2</knowledgeeffect> </technology> </Effect> </Special Discovery>

When the Metallurgy tech reaches 3, the civ can see all iron deposits with a finding difficulty of 10 or less. As the tech advances, the value of the application increases, meaning that the civ can find more deposits. So when metallurgy knowledge hits 4, the knowledgeeffect multiplier will be 1.2 and civ will be able to see all iron deposits with a finding difficulty of 12 or less.

Unlike most applications, this one would work automatically without the player needing to activate it. Does that sound reasonable?



A more difficult problem is the matter of activities and active/inactive techs. Each Activity feeds RPīs into many techs, based on a percentage. The problem is that, as new techs become active, the Activity will also need to feed them RPīs. For example, The Military Activity will certainly fund research into Gunpowder and Horses after these techs is discovered, but not if they are inactive. This addition of techs causes a problem with the percentage distribution system. There are two possible solutions I can think of:

The first is to set up seperate Activities, each with a percentage setting, and make them replace each other. So there would be the activities Military I, which is replaced by Military II after Horses are discovered, which is replaced by Military III after Gunpowder is discovered. In each activity, all recipient techs are given a percent and the percentages add up to 100. I donīt like this at all. There are so many possible combinations that all need to be considered. For example, what happens if Gunpowder is discovered before Horses? Planning for all contingencies would be a mess.

The alternative I like much more is to replace the percentages with a weight, and calculate the RP allocation based on a weighted average of the active techs. So the Military activity might have the following techs and weights:

Military Tactics 5
Metallurgy 1
Production 1
Horses 2
Gunpowder 4

Before horses are discovered, Tactics gets 5/7ths of the pie and the others get 1/7th. Then Horses gets 2/9ths, Tactics gets 5/9ths, and the rest get 1/9th. This system is flexible enough to handle unexpected things like Gunbpowder being discovered without horses, and I think we should switch to it. What do you think?

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 29-01-2003 01:36
Edit/Delete Message Reply w/Quote
#73 Report this post to a moderator
Support Apolyton, buy Civilization III: Complete

I am not game for a tech UI overhaul now, because I want to look at military problems that have crept up. Making a log should be easier, so I will try to do that. I may have to make a todo list...
As a side note, the effects of tech and RPs on the Siegewars scenarios were important because the tech increases defense values, and the ai, losing lots of fights on its own territory, gained a lot of points, thus their units became far more powerful than the player's without them actively doing anything.

I like the replacement of Activities percentage to weights to handle inactive techs.

The application to find ore/resources sounds good too, though you would have to have units there or control the square in order to be able to prospect, or be able to send merchants there to do some prospection for you.

Mark_Everson is offline Mark_Everson
Clash of Civilizations Project Lead
Canton, MI
Jan 1970
time: 00:24
  Old Post 29-01-2003 07:07 Visit Mark_Everson's homepage!
Edit/Delete Message Reply w/Quote
#74 Report this post to a moderator
Enter the AD-FREE zone

I'm really pressed for time tonight, so I'll just say I think the things the two of you have mentioned are good. Thanks for being willing to do the tech info output Laurent! We can do what you want for specials Richard, but I"m not sure about the timing. Should be fairly easy though. I expect we can get it into the next demo.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 29-01-2003 13:00 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#75 Report this post to a moderator
Support Apolyton, buy Civilization 2

I didnīt say that I wanted the specials applications now. I was reading the econ model thread and someone said in there that we needed a way to link tech to specials. For now, it will be fine to only allow special discovery in squares that the civ owns, but later on it would be cool to discover them in enemy territory, especially if they donīt yet have the tech to know what they have.

quote:
As a side note, the effects of tech and RPs on the Siegewars scenarios were important because the tech increases defense values, and the ai, losing lots of fights on its own territory, gained a lot of points, thus their units became far more powerful than the player's without them actively doing anything.


I think that this is very good. It is exactly the behavior we want in the tech and military models. A civ that is on the defensive like this should get better. In this case they got too good, but we should be able to fix that by changing a few numbers.

One potential problem is that the scenario designer has no way to change the weight of RP generation from the economy, the military, and government spending, since the RP generation is not handled in the tech model. This can be a problem. If battles produce far more RPīs than government investment, then there is very little that I can currently do to balance it, since I do not have access to the military or economy models that generate the RPīs. Either I lower the growthrate, in which case government investment becomes worthless, or I raise it and allow battles to raise tech a lot. I can do a partial fix by altering the growthrate of individual techs, for example making Tactics harder to advance than Production. But that doesnīt help if battles and government spending are both spent on the same technology.

Iīll use the testbed to see if this will be a serious problem. This is one reason I needed the detailed log, to see where the RPīs are coming from. We may eventually need to add some more global values (BattleRPMultiplier, EconRPMultiplier, SpyingRPMultiplier) to the tech model to balance things out. This could also be useful of a scenario designer wanted to do something like a dedicated espionage scenario, and boost the tech rewards of spying beyond what they normally are.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 30-01-2003 01:38
Edit/Delete Message Reply w/Quote
#76 Report this post to a moderator
Support Apolyton, pre-order Civilization IV

There is actually a way to change the military RP output, which is to artificially enhance the upkeep of the tech, thus making it harder to get.
Now, since that tech grows thru both combat and military research (2 activities), it does affect both of them. Putting a dummy tech which would drain excess RPs would allow a designer to make some activities not very interesting and others more so (but it would probably never be interesting to put RPs into activities that enhance the dummy tech).
I can also in theory get the divider which computes the number of RPs earned from a fight into a resource file. I may very well forget to do it, however, unless you feel it will really help you tweaking stuff.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 30-01-2003 18:02 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#77 Report this post to a moderator
Support Apolyton, buy Galactic Civilizations: Deluxe Edition

quote:
Originally posted by LDiCesare
There is actually a way to change the military RP output, which is to artificially enhance the upkeep of the tech, thus making it harder to get.


I think that lowering the growthrate is more appropriate than raising the upkeep, since upkeep is multiplied by the knowledge level. Raising upkeep means that earlier fights could still produce a lot, but later fights, when the civīs knowledge has increased, produce less and less, until by modern times a fight provides very little.

The dummy tech is a good idea for a temporary fix, since combat and investment go into different activities. I would not like those kinds of things in the final design, though.

quote:
I can also in theory get the divider which computes the number of RPs earned from a fight into a resource file. I may very well forget to do it, however, unless you feel it will really help you tweaking stuff.


Iīll see if I need it. Eventially, of course, every single number in the game should be read from a resource file. See my post in the military thread for an idea of what I would like military RP generation to be like in the long term.

Lord God Jinnai is offline Lord God Jinnai
Prince
St. Louis
Sep 1999
time: 23:24
  Old Post 01-02-2003 01:38 Visit Lord God Jinnai's homepage!
Edit/Delete Message Reply w/Quote
#78 Report this post to a moderator
Cross-post from Economy Thread II Get a bigger avatar today!

quote:
Originally posted by Mark_Everson
Its correct that these things aren't in there yet. I am not convinced yet that we need them, although there are certainly individual items where strong cases can be made for requiring particular specials. A particular compelling case is in weaponry, where bronze is a Lot better than stone/wood/copper, and iron a lot better than bronze. I guess my position is that for flexibility purposes the system should include limitations on building things if a special isn't available in the civ. Whether these restrictions should be used extensively in the base game, I'm not so sure of. I believe that if aluminum didn't exist we'd still have satellites. Other, admittedly inferior, materials would be used out of necessity where Al is now the material of choice. People are generally very good about working around lacking resources, although there is a certain cost to the workarounds. We can figure out exactly how this is done in the game as things move forward.

Horses or other pack animals also. In every civilization that didn't have them or ignored them, the wheel was never devloped for anything beyond a novelty.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 01-02-2003 15:18
Edit/Delete Message Reply w/Quote
#79 Report this post to a moderator
Support Apolyton, buy Alpha Centauri

Here is a tech output from what I coded. It is not as nice as an array, but I can't format it well in a string.
Richard, is it OK in terms of reports?
I set Military spending to 20% in Carthago scenario, and spent some cash on food production (not research).
There were a few fights with 3 units losing in Roman lands on the turn when they gave the RPs.
We clearly need some tuning. I'll set the amount of RPs provided by fight in an xml file.

-----------------------------------------
Running 1
Economic sector provides 0.09119316 Research points to Manufacturing
Economic sector provides 4.202441 Research points to Food
Economy provides 0.13843131 Research points to Military

Biology Level = 3.0, New level = 3.008405, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Farming, inactive,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5
Production Level = 3.0, New level = 3.0007296, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Military Tactics Level = 3.0, New level = 3.0006921, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
horses, inactive,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5
Metallurgy, inactive,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5

-----------------------------------------
Running 2
Economic sector provides 0.018240914 Research points to Manufacturing
Economic sector provides 0.2801896 Research points to Food
Economy provides 0.06886797 Research points to Military

Biology Level = 3.008405, New level = 3.0089653, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Farming Level = 3.0, New level = 3.0022452, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5042024
Production Level = 3.0007296, New level = 3.0008755, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Military Tactics Level = 3.0006921, New level = 3.0010364, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
horses Level = 3.0, New level = 3.0001724, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5042024
Metallurgy Level = 0.0, New level = 5.217056E-4, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5003648

-----------------------------------------
Running 3
Economic sector provides 0.017021438 Research points to Manufacturing
Economic sector provides 0.2600643 Research points to Food
Economy provides 0.064524874 Research points to Military

Biology Level = 3.0089653, New level = 3.0094855, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Farming Level = 3.0022452, New level = 3.0043285, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5044827
Production Level = 3.0008755, New level = 3.0010116, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Military Tactics Level = 3.0010364, New level = 3.001359, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
horses Level = 3.0001724, New level = 3.000334, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5044827
Metallurgy Level = 5.217056E-4, New level = 0.0010100515, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5004377

-----------------------------------------
Running 4
Economic sector provides 0.015992679 Research points to Manufacturing
Economic sector provides 0.24277046 Research points to Food
Economy provides 0.0034487224 Research points to Military
Combat provides 56.201187 Research points to Combat

Biology Level = 3.0094855, New level = 3.0099711, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Farming Level = 3.0043285, New level = 3.0062726, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5047426
Production Level = 3.0010116, New level = 3.0011396, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
Military Tactics Level = 3.001359, New level = 3.563388, RPs = 0.0,Growth rate 0.01,Upkeep 0.0,Helper effect 1.0
horses Level = 3.000334, New level = 3.0003426, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5047426
Metallurgy Level = 0.0010100515, New level = 0.0011115386, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.500506

Mark_Everson is offline Mark_Everson
Clash of Civilizations Project Lead
Canton, MI
Jan 1970
time: 00:24
Question  Old Post 02-02-2003 20:04 Visit Mark_Everson's homepage!
Edit/Delete Message Reply w/Quote
#80 Report this post to a moderator
Inflate your Upload Space

Hi Laurent, I'm working on the update you sent recently, trying to get the testbed out to Richard and Martin. I hope to have that shortly. Unfortunately my new comp chokes on my old IDE (VisualCafe) so I need to bounce back and forth between the new and old computers to do work.

There was a problem with the econ not producing enough RPs that I think I've fixed by just changing the RP scaling for econ activities. But while I was at it I noticed something odd about your tech diagnostic.

quote:
Originally posted by LDiCesare
Running 4

Economic sector provides 0.24277046 Research points to Food

Farming Level = 3.0043285, New level = 3.0062726, RPs = 0.0,Growth rate 0.01,Upkeep 0.5,Helper effect 2.5047426


How come RPs = 0.0 for Farming in the Farming Level diagnostic? That's where most of the Food RPs go so I'd expect to see somthing like 0.20 there for RPs. It looks like all of them always say 0.0. Am I missing something?

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 03-02-2003 01:25
Edit/Delete Message Reply w/Quote
#81 Report this post to a moderator
Support Apolyton, buy Alpha Centauri


Sounds like I should look at the results before I send stuff.
Yes, there is a slight problem with the number of RPs shown. I guess that is the number after they have been consumed. I'll correct that soon.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 03-02-2003 15:43 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#82 Report this post to a moderator
Support Apolyton, buy Civilization 2

That log helped me a lot as I was fine-tuning Dawn. One thing I would like to point out is the Upkeep numbers. Since the RPīs are divided by one plus the upkeep total, I think it would be good to add one to these numbers in the output too, to make it display like the helper number. I can add one in my head, but other people might get confused. It should be clear that RPīs are multiplied by the Helper number and divided by the Upkeep number.

The only other problem is the zero RP bug that Mark already pointed out.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 04-02-2003 21:33 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#83 Report this post to a moderator
Proposal Got spare money?

We need a good system for dealing with the activation and inactivation of technologies, and the displaying of Activities on the Econ GUI.

Currently, all techs and activities defined in the file start the game active, even when there is a requirement in a helper tag that has not yet been met. As the tech tree gets bigger and starts to include more advanced technologies, this could become a problem. I think that fixing this should be a fairly high priority. Hereīs my inital proposal:

Definitions:

Technologies are either active or inactive, and Activities are either visible or invisible.

An inactive technology cannot recieve RPīs from any source, including economic activity, government investment, or events. It still retains it knowledge amount and can serve as a helper for other technologies and applications. Inactive technologies do not appear on the GUI, and so are hidden from the player.

An invisible Activity does not appear on the GUI and cannot be funded directly, but it may still recieve RPīs from the economy or events. The Food activity may remain invisible for most of the game, even though the economy gives it RPīs every turn and it distributes those RPīs to various technologies. However, direct investment only comes when the civ knows enough to take an active role in research.

Behavior:

All techs are inactive by default and all activities are invisible by default. They must be turned on by certain conditions described in xml tags. If these tags are absent, they can only be turned on by events. Once turned on, they may be turned off again with similar tags.

Tags:

Technologies may have <active> and <inactive> tags, and Activities may have <visible> and <invisible> tags. These tags may contain the following inner xml tags, which change the state of the thing they are placed in:

The turn tag: <turn>1</turn> changes the state at a certain time.

The technology tag:
<technology>
<name>Production</name>
<knowledge>2</knowledge>
</technology>
changes the state at the specified knowledge of the specified technology. Note that this replaces the <requirement> tag of the helper technology, which does not appear to be working anyway.

The special tag: <special>Horses</special> changes the state when the civ acquires that special through discovery or trade.

The unit tag: <unit>Chariot</unit> changes the state when the specified unit can be built by the civ.

The diplomaticstatus tag:
<diplomaticstatus>
<civilization>any</civilization>
<status>contact</status>
</diplomaticstatus>
changes the state when the specified status is achieved with the secified civ.

And finally, the condition tag: <condition>Nomads destroyed</condition> allows any named condition in the events model to change the state of the technology or activity.

Examples:

To help clarify the possible behavior, consider the following:

code:
<technology> <name>Woodworking</name> <active><turn>1</turn><active> <inactive> <technology> <name>Woodworking</name> <knowledge>20</knowledge> </technology> </inactive> <!-- ==snip== --> </technology>

This technology is available from the beginning of the game. It is a helper for various early production technologies. However, there is only so much Woodworking a civ needs. Once it reaches a Knowledge of 20, there is no more improvement possible, so the technology becomes inactive again. It will recieve no RPīs and will never rise any higher, but it still provides the same helper benefit it did before. The player can ignore it.
code:
<technology> <name>Elephants</name> <active><special>Elephants</special><active> <inactive><unit>Knight</unit></inactive> <!-- ==snip== --> </technology>

This technology may exist in a scenario for beefing up the civīs Elephant units. To get these units, the civ has to find a special, and then research the Elephants tech until it reaches a certain knowledge. If the Knight unit is what makes the Elephant unit obsolete, then that unit should also shut off the tech that improves elephants, since it is no longer needed.

Tag Logic:

If two conditions are in the same tag, then both must be met for the change to take place. If there are two different tags, than either tag alone is sufficient to change. For example:
code:
<activity> <name>Military</name> <visible> <diplomaticstatus> <civilization>any</civilization> <status>war</status> </diplomaticstatus> </visible> <visible> <condition>barbarian attack</condition> <technology> <name>Organization</name> <knowledge>2</knowledge> </technology> </visible> <!-- ==snip== --> </activity>

This activity will become visible if there is a state of war with any other civilization. It will also turn on if the civ has an Organization knowledge of 2 and the "barbarian attack" condition has been activated.

Does this sound good? I tried to make it work like the other things described in the dataformat guide, and I think that it would provide a lot of flexibility and functionality.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 05-02-2003 03:03
Edit/Delete Message Reply w/Quote
#84 Report this post to a moderator
Support Apolyton, buy Civilization: The Boardgame

quote:
Currently, all techs and activities defined in the file start the game active, even when there is a requirement in a helper tag that has not yet been met.

No they don't start the game active.
In fact, with the last code, you can check it before hitting the end turn button in Delenda. You will see that all techs that have prerequisites start inactive. They become active after the first turn. It is a bug, because in that case they should be active on turn 1, but it works, and the bug is really minor IMO.

Now to your proposal:
I certainly want to be able to push the Elephant tech forward if I have an army of 10000 elephants and no knight yet. I may want to have the elephant tech updated until I get dragoons and skip knights altogether. So I don't want, under any condition, a tech to become obsolete when it could still be useful.
I also don't like being able to do research of a tech only if certain conditions are met, like being at war. I want to build up my military tech while at peace and only then should I strike.
I'd rather have a <maxKnowledge> tag to show maximum knowledge. Any other limitation which prevents me from researching something will frustrate me, unless I don't have the prerequisites.
The only prerequisites I think are OK are:
other techs, specials, and condition events. I think conditional events can be made of almost anything, anyway. I can understand the lack of a special would inactivate a tech (no more horses, no more horesback riding tech).
So all in all, I think your suggestion is OK although I don't think the tags will look like that when it gets coded. I don't like your examples, however.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 05-02-2003 15:21 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#85 Report this post to a moderator
Remove this text

quote:
Originally posted by LDiCesare
No they don't start the game active.
In fact, with the last code, you can check it before hitting the end turn button in Delenda. You will see that all techs that have prerequisites start inactive. They become active after the first turn. It is a bug, because in that case they should be active on turn 1, but it works, and the bug is really minor IMO.

Yes, they become active after the first turn even if the prerequisites have not yet been met. I checked by making Metallurgy require a Production of 1. It started inactive and immediately activated and started growing even though production was still about zero. It seems that, currently, anything with helpers starts inactive but then becomes active on the second turn.

IIRC Gary said that it was a bad idea to link the helpers and requirements, and it seems that he was right. Linking them seems to cause problems, so it would probably be good to correct my earlier design error by sepreating them comeletely.

quote:
I certainly want to be able to push the Elephant tech forward if I have an army of 10000 elephants and no knight yet. I may want to have the elephant tech updated until I get dragoons and skip knights altogether.[q]

So instead of becoming inactive at Knight, it becomes inactive at Dragoon. I was assuming that the unit in the military model became obsolete at Knight, so once that unit can be built it is impossible to build more elephants. I thought it would be fairly easy to reuse military model obsolescence code to do this as well. Currently we donīt have any spec to inactivate such techs.

What we want to prevent is an industrial age civ exploring a new continent, discovering the special, and having that tech on their screen for the rest of the game unless they throw RP at it just to make it hit the max knowledge and go away. If we donīt handle these kinds of units by a technology, then anybody can build it or it is artificially limited to certain civilizations. I donīt like either.

[q]So I don't want, under any condition, a tech to become obsolete when it could still be useful. I also don't like being able to do research of a tech only if certain conditions are met, like being at war. I want to build up my military tech while at peace and only then should I strike.


I think that these are scenario design considerations, and that problems can be prevented. But IMO it is silly to be able to research, for example, espionage related techs if your civ is not even aware of the existence of other civilizations.

But perhaps I didnīt explain the spec very well. Once a conditon in the active or visible tag has been met, the thing will always be turned on unless something inactivates it. I didnīt want to check the activation every turn, just one time. Once you have been at war with anybody (or you organized to prepare for the barbarians), you will always be able to research the technology, even if currently at peace. But if you have never been in a fight, how will your civ even know how to use government funds to make an army better?

quote:
I'd rather have a <maxKnowledge> tag to show maximum knowledge. Any other limitation which prevents me from researching something will frustrate me, unless I don't have the prerequisites.


We donīt have to use all of those things in the Inactive tag. Some of them, like the turn tag and special tag, are really only meant to activate things. (Although it would be kind of cool to inactivate the Bronze Working technology when your civ discovers an Iron deposit.) From what I know of programming, once you write the code in to check a condition and turn something on, is is fairly easy to reuse that code to turn something off. Checking the knowledge to turn something on is a central part of the system, so why not use that same format instead of inventing a new tag?

quote:
The only prerequisites I think are OK are:
other techs, specials, and condition events.


As mentioned before, I think some tech should depend on diplomatic status. The turn tag could also be useful, especially for scenario designers. It is also IMO the easiest way to make sure a tech starts the game active. Unit tags would also be worthwhile, but I donīt care about them as much.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 06-02-2003 01:38
Edit/Delete Message Reply w/Quote
#86 Report this post to a moderator
Get a bigger avatar today!

If you want an event of some kind (reaching a certain knowledge may be particular, but it can still be seen as an event), like meeting a civ or something else to empower the ability to research a tech, then the tags used would be the events tag.
That doesn't change the functionality, but instead of designing an object which has to check for events, you design events which will change the object tech. The latter is actually far easier and better to design (and more flexible).
Events (condition events) can check a tech knowledge, military things, control of a square, and, the big good thing is, we can add any number of these as we grow the game. That way, we can add diplomatic status events when the diplomacy code is functional, and allow the tech to be affected without touching a line of code.

Overall, I think that the code will allow the flexibility you want, but you may have to write the things in an equivalent of civ2's events.txt instead of rules.txt.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 06-02-2003 14:41 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#87 Report this post to a moderator
Support Apolyton, buy Alpha Centauri

One potential problem is that events are currently only defined in the scenario xml file. This means that if the tech tree depends on such events, then they have to be defined in each and every scenario.

Of course, if we add a default events.xml that all scenarios read from, then the problem goes away. I can work with that. All techs simply would start inactive and all activities start invisible unless some event turns them on. The requirement tag can then be removed form the helper tech tag, since it would then be redundant. So the only thing that needs to be coded is the statuses of active/inactive and visible/invisible, and I can figure out how to make the events model do what I want.

It might be good to have a seperate techevents.xml and events.xml to keep things straight. One more thing is that the events model should run on a "Turn 0" so that the player can start the game with all techs active that should be active.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 07-02-2003 00:56
Edit/Delete Message Reply w/Quote
#88 Report this post to a moderator
Full PM-box? Change here!

I agree with you. An events.xml file would be needed. I think separating into techevents.xml will come afterwards, if there are any events that need be done for another sector. Note the frontier between tech and non tech may be fuzzy, as tech discoveries will probably be one of the most common event trigger. We can break the events.xml file in bits when it gets done.

I know I must run a turn 0 tech round somewhere. Just need to find out where and some time to do it.

Richard Bruns is offline Richard Bruns
King
NC, USA
Nov 1999
time: 06:24
  Old Post 14-02-2003 13:06 Visit Richard Bruns's homepage!
Edit/Delete Message Reply w/Quote
#89 Report this post to a moderator
Support Apolyton buy from Amazon

While balancing tech growth for Testbed 7.5.1, I realized something:

Activities should not necessarily output the same number of RPīs that are input into them. Enforcing this requirement ties the hands of scenario builders. The method I propose to fix this is very simple. Keep the current proportion tags, but remove the requirement that they add up to one. Each active recipient simply recieves a number of RPīs equal to the RPīs input into the activity times the proportion.

This solves several problems. First, there is the issue of the farm sector. Currently, I had to seriously cut the growthrate of farming techs in order to prevent excessive growth, which means that farm investment is next to impossible. Having two activities could solve this easily. If the Food activity was not visible to the GUI and looked like this:

code:
<activity> <name>Food</name> <description>Automatic econ-based improvement</description> <recipient> <name>Biology</name> <proportion>0.02</proportion> </recipient> <recipient> <name>Farming</name> <proportion>0.08</proportion> </recipient> </activity>

and the player could invest in the following activity:
code:
<activity> <name>Farm Technology</name> <description>Government Investment</description> <recipient> <name>Biology</name> <proportion>0.2</proportion> </recipient> <recipient> <name>Farming</name> <proportion>0.8</proportion> </recipient> </activity>

Then the growth problem would be solved.

Then there is the issue of activities and new technologies. Currently, if an Activity has one active recipient, like they all do on the first turn, that one recipient recieves a huge boost of any RP are fed into that activity. While the turn one bug will be fixed, I think this behavior is unbalancing.

An inactive technology should simply not get any RPīs, and this should not affect the RPīs given to the recipients that are active. So if the iv manages to invest in Farm Technology when Farming is inactive, then Biology gets 20% of the RPīs and the rest are wasted. And when a technology becomes active, it should not decrease the amount given to the rest. So if the activity looked like this:
code:
<activity> <name>Farm Technology</name> <description>Government Investment</description> <recipient> <name>Biology</name> <proportion>0.2</proportion> </recipient> <recipient> <name>Farming</name> <proportion>0.8</proportion> </recipient> <recipient> <name>Genetics</name> <proportion>0.1</proportion> </recipient> </activity>

Then when Genetics become active it gets 10% of the RPīs that go into the activity, but research into the other two is not penalized. In this way the player is rewarded for getting new techs, and existing research is not slowed down by the discovery. I do not think this is unbalancing, since it represents the synergy that results when new techs are discovered.

I think these proportions would be much more flexible than a weighted average method, and would be easier for both coders and designers to deal with.



I also noticed another problem with the listed upkeep of the techs in the tech output file. It only shows the base upkeep times tech upkeep from the file, which is not very helpful. It should show (upkeep*tech level) + 1, which is the number that RPīs are divided by.

LDiCesare is offline LDiCesare
King
La Ferté sous Jouarre France
Jan 2001
time: 05:24
  Old Post 14-02-2003 21:15
Edit/Delete Message Reply w/Quote
#90 Report this post to a moderator
Inflate your Upload Space

quote:
I also noticed another problem with the listed upkeep of the techs in the tech output file. It only shows the base upkeep times tech upkeep from the file, which is not very helpful. It should show (upkeep*tech level) + 1, which is the number that RPīs are divided by.
I already fixed that. You'll see "upkeep+1=..." in the file.

About proportion adding up to 1, you (or someone else) asked elsewhere that the figures should be proportions, so that inactive techs wouldn't benefit from it until they are discovered. I implemented that too, but that is incompatible with the fixed figure. Maybe adding a "Wasted" recipient would do the job too. What do you think?

 
Pages (5): [ 1   2   3   4   5   ]
< Last Thread     Next Thread > Post New Thread     Post A Reply
All times are GMT. The time now is 05:24.
Apolyton Time is 00:24.
    top of page
Rate This Thread:
Forum Jump:
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
 




Contact Us - Apolyton Civilization Site - Support Us!

Building a better Apolyton through better information. Click here and take our poll!
Non-US visitors, click here!

Powered by: vBulletin Version 2.0.3
Copyright ©2000, 2001, Jelsoft Enterprises Limited.

Page generated in 0.0895 seconds (95.03% PHP - 4.97% MySQL) with 30 queries
Page Loading Time:

Support Apolyton: Amazon USA | Amazon UK | Amazon DE | Amazon FR |
Support Apolyton and get FREE PLUS, Buy from Chips&Bits: Galactic Civilizations | Galactic Civilizations: Deluxe Edition | Call to Power 2 | Civilization: The Boardgame | GURPS/ Alpha Centauri | Alpha Centauri | Civilization IV | Civilization III: Complete |


Front Page | Civilization IV | Civilization III | Civilization II | Call to Power II | Alpha Centauri | Master of Orion III
Rise of Nations | Galactic Civilizations | Galactic Civilizations II | Misc
Alt.Civs | Civ I | C:CtP I | About | News | Directory | Apolyton Store | Forums | Chat | Columns | Interviews | Newsletter
Scenario League | CSC | Clash of Civs | Spanish Site | CtP Maps | Cradle of Civ | WesW's Ctp1/2 Site | Civ3 Haven

apolyton.net | apolyton.com | civilization2.net | civilization3.net | civilization4.net | civilizationiv.info | calltopower.net | galciv.net | galciv2.net | moo3.net