 |
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
Starting the thread referred to in Demo6 http://apolyton.net/forums/showthre...4036#post954036"> Technology model
The goal of this thread is to express:
1)What techs do we want/need in the demo for what reasons.
2)What prereq techs are needed for these.
3)What additional code, if any, needs be done in order to have the thing working.
4)What we need in which xml file.
5)What activities (as defined in the tech model) feed the research in these areas. In effect, what do we give research to in order to improve the tech.
The whole thing getting priority stamps.
I imagine model leads/coders will ask for point 1 and tell what they need in point 3/4, and Rodrigo will provide answers to point 2.
Here is my go for military model:
(High priority)
1- Military tactics tech (or application?).
2- Probably no requirement.
3- My problem is to be able to pump research points to Military tactics.
4- Get it into the technology.xml file
5- Related to 3: What activity is there/can I use?
1- Warhorses
2- ?
3- Code done.
4- Just need the tech in the technology.xml.
5- ?
(Lower priority)
1- Techs to increase particular units, like metallurgy for spears (phalanxes, legions) or ranged fire tactics for archers.
2- ?
3- No new code needed.
4- I just need to have these techs in the technology.xml file and know them so I can reference them in the military file. I could reference them right now, but it's no use cluttering xml files with unused stuff.
5- ?
(Edited to add in at the beginning of the Thread point 5)
Last edited by LDiCesare on 17-05-2002 at 11:35
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
By particular unit, I mean a unit type (actually element), like:
Warhorses => bonus for chargers and cavalry elements
Ranged fire tactics => Bonus for Archers, maybe war chariots.
Metallurgy => bonus for heavy spear elements and any element using armour.
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
Gary, I edited the top post to include your 5th point.
As to horses, I think we can do a lot of bickering here. The problem comes from the fact that warhorse is a word in English, but it might be better to say war horse or horses for war or horse warfare. That includes breeding horses, using saddles, stirrups and so forth. So we can rename to horse warfare? Or simply horses, but then ploughing and warfare don't breed the same horses.
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
The existing Simple_Tech_Test.xml seems to come close to fulfilling these requests. There is a military tactics tech, and different levels of it are requirement for various individual unit applications. There is also a "warhorses" tech that I will soon rename to simply "horses." Different unit techs require certain levels of horses or metallurgy, and higer values in these techs should increase their effectiveness.
The current "production" activity feeds into the production tech only. Do you want me to add an additional Manufacturing activity or simply change it so it also feeds the Metallurgy tech as well?
I believe that I have said that the tech model is a tool for other model designers to use as they see fit. That's why I built the online tech xml file builder. It allows any team member to view, modify, and add techs to the tech tree. The only restriction to user functionality is that I haven't figured out how to let the user upload existing xml files, I have to do that with an ftp program. This website has been up since last December, and I am pretty sure that I announced its existence. But I haven't gotten any requests to change it, or seen any indication that it has been used at all. Please feel free to load up the tech file and concoct any changes you desire. The program automatically changes the filename of all modified files by adding "New_", just change that to your name and I can see all the changes that anyone made. I made that web-based GUI for others to use, so you wouldn't have to depend on me to make changes you want.
http://paws.wcu.edu/RB22393/xml/Editor_Start.asp
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
I changed global upkeep to zero and added the metallurgy tech as a recipient to the production activity. It took me about two minutes, and I did it using only the online tech editor. As far as I can tell, the "tech" text file that came with the testbed stuff is the same as the default that loads into the online editor.
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
Hey Richard:
quote: Originally posted by Richard Bruns
I changed global upkeep to zero and added the metallurgy tech as a recipient to the production activity. It took me about two minutes, and I did it using only the online tech editor. As far as I can tell, the "tech" text file that came with the testbed stuff is the same as the default that loads into the online editor. |
Great, thanks, I've downloaded it, but am too fuzzy right now to check it out.
quote: I believe that I have said that the tech model is a tool for other model designers to use as they see fit. That's why I built the online tech xml file builder. It allows any team member to view, modify, and add techs to the tech tree. (snip) I made that web-based GUI for others to use, so you wouldn't have to depend on me to make changes you want. |
I just checked out the Tech_Draft.xml file, pretty cool! The reason I haven't used the xml builder to this point is that the tech model is really complicated and has many interdependencies between the numbers that need to be observed, or things can run away... If I absolutely needed to, I'm sure I could figure those things out, but it would take some serious time. And you're already the resident expert on what you can and can't do with the model! If we do the requests to you, you can balance things as new items are added (FE if one tech becomes a helper for many things it may need to be made more expensive). So I at least am likely to leave it to you, for fear that I would screw things up
Cya,
Mark
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
Hey Richard, something I missed in the last post...
quote: Originally posted by Richard Bruns
The current "production" activity feeds into the production tech only. Do you want me to add an additional Manufacturing activity or simply change it so it also feeds the Metallurgy tech as well?
|
I'd prefer that the current production activity be renamed to Manufacturing (making it easier to tell activities from techs) and that the newly-named Manufacturing put its points into production and metallurgy as outlined above.
Thanks,
Mark
BTW my initial tests are showing that the Farming tech improves very rapidly (when it has enough RPs to improve at all). This is partly because for now Food RPs are generated proportional to population, and as Farming tech grows, so does the population, who become mostly farmers, giving a feedback cycle that explodes.
Part of it is that Food feeds not only Farming, but also Farming's only helper, Biology. If Biology weren't improved along with farming I'd think diminshing returns might set in. It seems that one thing that would help stability is that helpers be not fed by the Activity that a tech passes RPs to. Of course that is somewhat contrary to what would be desired in a number of cases. We'll try to get you a version with the tech stuff hooking up to some military and econ soon. Then you'll be able to play with the parameters yourself, and see what happens, and what can improve undesired behavior.
Cya,
Mark
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
Anyone know... does the upkeep tag on an individual technology override the global upkeep value? If so we have a lot of techs with upkeep = 1.
Any problem with me setting all those to 0.0, or might I cause global destruction I have set them all to 0.0 for the time being.
Richard, there was a change that was required by the parser that I think Gary mentioned a while ago. You need to change your xml generator so that what used to be called activity "effect" tags are instead a "proportion" tag and the proportions have to be on a scale 0-1.0 so what used to be an effect 70 is now a proportion 0.7 .
I have copied over the Military Activity to the xml file with Laurent and my most recent mods. What does the global multiplier tag, and the same one on an activity do? I have commented them out for now, since it is not recognized by the parser. Many of the applications you had , Richard, are not in the current xml. I have not put them in since it might cause Laurent grief. I will email it out when I'm done with the mods, and have a chance to test it a bit.
The Simple_Tech_Test output file was time-consuming to work from since the xml codes are all run together. I remember that you didn't have a good fix for that, Richard, when it came up before. I guess maybe we'll just ask your opinions on values, and add things as we go along by hand. Is there any way to put characters into the file that we could then replace with new-line codes and spaces so that the output is easily formattable like the xml we're currently working from?
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
quote: Anyone know... does the upkeep tag on an individual technology override the global upkeep value? If so we have a lot of techs with upkeep = 1. |
In the code, it does overwrite the default value. (I did that for military tactics and the effect was clear).
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
I vote for a global multiplier in an xml file. Not only is it useful for scenarios, it will help adjusting things without having to recompile. I spent some time changing a factor in order to get the correct number of RPs funnelled to Military Tactics, it'd have been simpler by just changing a resource file.
We also need a way in the technology or scenario file to specify tech levels per-civ. Currently start levels are the same for everyone, but we must be able to change that.
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
Do you mean to add a single box in the menu or one per class? That will get pretty badly cluttered if the econ interface is not reworked. (At least give me a slider then).
Civ-specific tech is not that urgent for D7. I may try to do civ-specific units instead (Roman elephants attacking Carthage??) as it will be needed anyway, but even that should be scenario-dependant.
Mark, what about trying to enhance the diminishing returns for food?
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
Double post. My computer and Apolyton haven't been getting along well recently.
Last edited by Richard Bruns on 22-05-2002 at 21:31
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
I posted an earlier reply and I thought it went up, but I now see that it isn't on the thread. I forgot exactly what I said; it addressed some earlier things. I'll try to repeat it as best I can, and then add replies to newer posts.
quote:
I'd prefer that the current production activity be renamed to Manufacturing (making it easier to tell activities from techs) and that the newly-named Manufacturing put its points into production and metallurgy as outlined above.
|
Done
quote:
BTW my initial tests are showing that the Farming tech improves very rapidly (when it has enough RPs to improve at all). This is partly because for now Food RPs are generated proportional to population, and as Farming tech grows, so does the population, who become mostly farmers, giving a feedback cycle that explodes.
|
This could be a problem. I designed the RP input to be based on labor input and not product output, to prevent this very cycle. But farming seems to be a special case, since product output seems to immediately generate labor input. We may be able to fix this with diminishing returns values and other tweas, or it may require a structural change, perhaps generating RP's a different way in this case.
quote:
Part of it is that Food feeds not only Farming, but also Farming's only helper, Biology. If Biology weren't improved along with farming I'd think diminshing returns might set in.
|
It shouldn't work like that. The upkeep for Biology should be greater than the benefit it provides to Farming. I'll have to look into that.
quote:
The immediate problem I see, and this is a gameplay problem, not necessarily a tech one per se, is the difference between a 1-square civ and a large one. Dawn has an initial population of 5k, and Rome in the other scenario has about 2M. For any number of RP generation that has Rome gaining Farming tech at a reasonable rate (maybe .1/turn) the Dawn scenario does absolutely nothing in tech. Not surprising given the math
|
This isn't really a problem. Later, tech diffusion will even out the differences between civs. For now, all we have to do is start rome at a higher knowledge level, to reflect its later point in history. That means more effort will be required to increase the tech level.
quote:
Of course one issue is that right now both scenarios start with the same tech levels. Fixing this may put things somewhat back on a more reasonable track. Improving stone age tech by 1 should be Much easier than improving that of classical antiquity. Another factor we could emphasize in dawn is that you really need to expand your population by a factor of 10 or so before expecting to see much of any improvement in tech.
|
this is correct.
quote: Originally posted by Mark_Everson
Anyone know... does the upkeep tag on an individual technology override the global upkeep value? If so we have a lot of techs with upkeep = 1.
Any problem with me setting all those to 0.0, or might I cause global destruction I have set them all to 0.0 for the time being.
|
As designed, the upkeep for a tech should be the global value times the tech's upkeep value. All values for an individual tech, be they upkeep, multiplier, or diminishing returns, should be a multiplier of the global value. That's why they are all 1 for now; that means they use the default value. That's the whole point of having a global value, so we only have to change one number for a system-wide change. Changing the default to zero should eliminate all upkeep for all techs, without needing to change the individuals.
quote:
Richard, there was a change that was required by the parser that I think Gary mentioned a while ago. You need to change your xml generator so that what used to be called activity "effect" tags are instead a "proportion" tag and the proportions have to be on a scale 0-1.0 so what used to be an effect 70 is now a proportion 0.7 .
|
Ok, I'll make the necessary changes. Do you have any ides what that "multiplier" value is supposed to do?
quote:
I have copied over the Military Activity to the xml file with Laurent and my most recent mods. What does the global multiplier tag, and the same one on an activity do? I have commented them out for now, since it is not recognized by the parser. Many of the applications you had , Richard, are not in the current xml. I have not put them in since it might cause Laurent grief. I will email it out when I'm done with the mods, and have a chance to test it a bit.
|
The global multiplier value was formerly MV. It and the growth value have to do with the relationship between tech level and knowledge. Each time knowledge is multiplied by the multiplier, tech level rises by the growth value. I don't know what the activity multiplier does; it appesared in the xml file I was given.
I have already eliminated all activities from the xml file. I will change the editor so it doesn't mess with applications anymore.
quote:
The Simple_Tech_Test output file was time-consuming to work from since the xml codes are all run together. I remember that you didn't have a good fix for that, Richard, when it came up before. I guess maybe we'll just ask your opinions on values, and add things as we go along by hand. Is there any way to put characters into the file that we could then replace with new-line codes and spaces so that the output is easily formattable like the xml we're currently working from? |
I don't know how to do that. But since the editor changes most everything in the file, it hasn't been a problem for me. You should be able to make all the changes online and then download the xml file from the link on the "View with XSL Sheets" page.
quote:
In the code, it [upkeep] does overwrite the default value. (I did that for military tactics and the effect was clear).
|
That would be a bug.
quote:
I think the easiest way to deal with the 5k vs 5M population issue for now would be to add a number like the old civ "tech paradigm"
|
I responded to this in the post that was lost, and above in this post. All we have to do is start at different knowledge values.
quote:
I vote for a global multiplier in an xml file.
|
The tech xml file already has every global multiplier that can affect the tech system. All we have to do is change the global growth rate and global upkeep.
I am noticing an issue that needs to be worked out. When I designed the tech system, I didn't know that there would be so many scenarios. I thought it would be like the civ games, where there is one tech file designed for the whole game that gets used for all of history. Any new scenario would require a new tech tree, like the civ modpacks.
But now I realize that we want lots of little scenarios to form a "campaign" like those in RTS games. That's a cool idea, but we need to make sure the tech tree can deal with it.
What I have been working on is the main tech tree, one that defines how all civs use tech. But (I assume) somewhere in the code you have a listing of what each civ's tech position is. This keeps track of the fact that Rome now has X farming knowledge and Carthage has Y metallurgy knowledge.
For the scenario files, we should edit these listings, and not the basic tech tree. The basic tech tree is supposed to be a set fo rules for how tech acts, and remain unchanged throughout history. All of the scenarios should be able to use it, since they represent the same world at different points in time.
But this leads to the fact that I have no way of editing the civ-specific listings. I have been saying "give Rome more knowledge to start with" but my tech editor and xml file can't do that because they aren't designed to. Can someone explain how the civ's levels are tracked over time? Is it a text file or some variable in the code? If we want to be able to make scenarios, it has to be a text file that can be loaded in at the beginning. Otherwise the program seems to assume that all knowledge equals one, like you are starting a new game with nothing there. This text file is what we would have to use to set the tech levels for scenarios.
---
Wow, the server is messed up. I would have lost this too if I hadn't copied it to another program before trying to send it.
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
quote: Originally posted by LDiCesare
Do you mean to add a single box in the menu or one per class? That will get pretty badly cluttered if the econ interface is not reworked. (At least give me a slider then). |
Hi Laurent, its one per Activity, which would be maybe five or six total for the forseeable future. Do you really need a slider, there is the Reorder button that allows you to flip the choices so that the ones that run off the bottom are now on top. I just don't want to rework the econ thing too much, since it'll be scrapped soon anyway. And I am not that familiar with adding things like that, although I have done it before. But there always seem to be complications... If you can put in a slider quickly and efficiently, I have no trouble with you doing it 
Can you add the bug Richard speculated on to the prioritized list? It is the statement you made
quote: In the code, it [upkeep] does overwrite the default value. (I did that for military tactics and the effect was clear). |
The desired behavior is for the upkeep value for a tech to be determined by the global upkeep value multiplied by the tech's upkeep value. Can you check first for sure that it is not done correctly? Thanks! 
Hey Richard, sorry to hear the server is messing with you...
Thanks for all the detailed responses.
I really don't like the RP = Labor thing. I think it needs to be more complicated, involving education, access to capital, labor availablility in the economy, social climate, and market character of economy. But that is a discussion for a bit later I also would need to reread all the things we said about it a while ago...
I'm hoping we can fix the farming problem with a tweak for now. Any Biology upkeep tweak that was enough to fix the problem would unfortunately kill the Dawn scenario Biology level. So I don't think that's the answer.
quote: The tech xml file already has every global multiplier that can affect the tech system. All we have to do is change the global growth rate and global upkeep. |
Disagree. AFAIK Nothing in there will fix the 5k vs 5M population problem. Am I wrong? If we don't need the multiplier later then we can take it out. As you say tech diffusion may take care of the issue in the long run, but I think we need it for now, or the tech in one of those two scenarios will be Very dissatisfying to players.
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
quote: Originally posted by Mark_Everson
I really don't like the RP = Labor thing. I think it needs to be more complicated, involving education, access to capital, labor availablility in the economy, social climate, and market character of economy.
|
That is what E and I represented in the tech equations. Putting these factors into RP generation is certainly an option.
quote:
I'm hoping we can fix the farming problem with a tweak for now.
|
It could be a good way to experiment with the diminsihing returns in teh equation.
quote:
Disagree. AFAIK Nothing in there will fix the 5k vs 5M population problem. Am I wrong? |
In a word, yes. Changing the global growth rate value and/or the farming growth rate value to a lower level (0.0001) for the Rome scenario and a higher level (0.1) for the Dawn scenario will enable the tech tree to function the way we want it to do, growing at about the same rate in each scenario. This is of course a knudge; a more permanent solution, as I discussed, is to start Rome with a higher knowledge level.
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
I have concerns with the xml file I got in the mail:
First, the global multiplier value is missing. This is the number that, along with growthfactor, determines the tech levels based on knowledge. If we plan on using tech levels again, that is important.
The individual tech upkeeps shouldn't have to be changed to zero. They should have their own values, determined by playtesting. Setting global upkeep to zero should eliminate all upkeep, since they should multiply.
Why do we still have a "Warhorses" technology? I thought that was changed to simply "Horses".
Why are applications still in there? I thought we got rid of all of those from the tech xml file.
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
Hiya Richard, on the post two above, I'd figured out about an hour after I posted that your approach would solve the 5k / 5M problem... c'est la vie.
On E and I, if they do the same job, or can after tweaking then that's fine. I will have to reread all that stuff when I get a chance, to remember where the model is!
quote: Originally posted by Richard Bruns
I have concerns with the xml file I got in the mail:
First, the global multiplier value is missing. This is the number that, along with growthfactor, determines the tech levels based on knowledge. If we plan on using tech levels again, that is important. |
Yeah, I took out the global multiplier by accident. But it seems the default is 2 anyways. I've put it back.
quote: The individual tech upkeeps shouldn't have to be changed to zero. They should have their own values, determined by playtesting. Setting global upkeep to zero should eliminate all upkeep, since they should multiply. |
I've verified it works as it should and have reset all the upkeeps other than the global one to 1.0
quote: Why do we still have a "Warhorses" technology? I thought that was changed to simply "Horses". |
Forgot that one. I tried to do it, but I got a crash. At a guess, there is name matching with the military.xml file required. Laurent, can you update Warhorses to horses the next time you change any of the xml files?
quote: Why are applications still in there? I thought we got rid of all of those from the tech xml file. |
I've removed them. Laurent, if its not ok for me to take those out, just put 'em back... Will mail the new version out soon.
Thanks for the corrections,
Mark
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
Mark, I got your xml file in the mail. I'll put it up on the website and make the editor default to it.
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
The editor chokes a little on the new xml file because there is no description for the technologies. Did you intend this? Can I add tech descriptions to help the formatting?
|
|
|  |
 |
|
LDiCesare
|
|
La Ferté sous Jouarre France
Jan 2001 time: 05:19
|
|
quote: All values for an individual tech, be they upkeep, multiplier, or diminishing returns, should be a multiplier of the global value. That's why they are all 1 for now; that means they use the default value. That's the whole point of having a global value, so we only have to change one number for a system-wide change. Changing the default to zero should eliminate all upkeep for all techs, without needing to change the individuals. |
That is why my "overriding" test worked: 0 * anything = 0. Thus there is no bug, as I used 0 to override. btw I like this global values a lot, but I think it should be written in plain in the xml file as a comment, so that modders who edit the file know and understand it. Even though we will provide separate explanations for all the xml files, tags and whatnots.
quote: But this leads to the fact that I have no way of editing the civ-specific listings. I have been saying "give Rome more knowledge to start with" but my tech editor and xml file can't do that because they aren't designed to. Can someone explain how the civ's levels are tracked over time? Is it a text file or some variable in the code? If we want to be able to make scenarios, it has to be a text file that can be loaded in at the beginning. Otherwise the program seems to assume that all knowledge equals one, like you are starting a new game with nothing there. This text file is what we would have to use to set the tech levels for scenarios. |
We need to put that in some xml files, probably the scenario file. The variables (all of them) are in memory when the program runs, but they may have been read from an xml file. Note for better modability we probably need several technology.xml and military.xml files, which bith have the same problem of being designed "once and for all". This is less of a problem for tech as you can keep it the same and just change applications (unless someone wants to add fantasy stuff in it or change a few values for a scenario). Better discussed elsewhere though.
Horses:
I'll change it when I next send my file.
|
|
|  |
 |
|
Mark_Everson
|
 |
Canton, MI
Jan 1970 time: 00:19
|
|
quote: Originally posted by Mark_Everson
I had an idea for a quickie way to give the player a way to invest in RPs. That should also accelerate tech testing. What I would do is have an infra class in the econ menu for investing in any tech activity that exists. Then you can put any money resources you have available, generally lots, into activites. (I'd have to work out the price, but that shouldn't be a big deal.) It would also give players something tangible to do with their money. Longer-term of course the tech interface would do this and more, but for the time being it would give some control. At that level, we might be able to even squeeze something more detailed in for tech in D7! |
Hi All:
I've gotten this mostly done. I chose a cost scale such that if the player puts 30-50% of tax revenues into a given Activity you can roughly double the rate of tech progression it its techs.
Richard, did you get the D6 'testbed' to work? If so we can hopefully send you the code this weekend and you can experiment with what tech does so far. The interface stuff mostly isn't there for tech, but the detailed readouts Gary put in that go to tech.txt should let you see a lot of what's goin on.
Last edited by Mark_Everson on 24-05-2002 at 17:09
|
|
|  |
 |
|
Richard Bruns
|
|
NC, USA
Nov 1999 time: 06:19
|
|
The testbed seems to work. Go ahead and send it, but know that I will require at least some operating instructions.
|
|
|  |
All times are GMT. The time now is 05:19. Apolyton Time is 00:19. |
top of page
|
|
|
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
|
|
|
|
|
|