Announcement

Collapse
No announcement yet.

Technology Model 7

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    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?

    Comment


    • #62
      Sounds like you guys are making good progress!

      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.

      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.
      Project Lead for The Clash of Civilizations
      A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
      Check it out at the Clash Web Site and Forum right here at Apolyton!

      Comment


      • #63
        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.
        Clash of Civilization team member
        (a civ-like game whose goal is low micromanagement and good AI)
        web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

        Comment


        • #64
          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.

          Comment


          • #65
            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.
            Clash of Civilization team member
            (a civ-like game whose goal is low micromanagement and good AI)
            web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

            Comment


            • #66
              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.

              Comment


              • #67
                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.
                Clash of Civilization team member
                (a civ-like game whose goal is low micromanagement and good AI)
                web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

                Comment


                • #68
                  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.

                  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.
                  Project Lead for The Clash of Civilizations
                  A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                  Check it out at the Clash Web Site and Forum right here at Apolyton!

                  Comment


                  • #69
                    Technology GUI Request

                    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.

                    Comment


                    • #70
                      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!
                      Project Lead for The Clash of Civilizations
                      A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                      Check it out at the Clash Web Site and Forum right here at Apolyton!

                      Comment


                      • #71
                        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.

                        Comment


                        • #72
                          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?

                          Comment


                          • #73
                            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.
                            Clash of Civilization team member
                            (a civ-like game whose goal is low micromanagement and good AI)
                            web site http://clash.apolyton.net/frame/index.shtml and forum here on apolyton)

                            Comment


                            • #74
                              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.
                              Project Lead for The Clash of Civilizations
                              A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                              Check it out at the Clash Web Site and Forum right here at Apolyton!

                              Comment


                              • #75
                                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.

                                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.

                                Comment

                                Working...
                                X