Announcement

Collapse
No announcement yet.

Demo 6 Technology Model

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Hi Richard:

    Sorry, the mismatch between the xml and the current specification had eluded me. Thanks for doing it, and a least we now have the xml in the bag if you aren't available when Gary can shift gears back to tech. I can hand-edit it if necessary when the xml spec changes.
    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


    • #32
      For later ease of use, we should probably find-replace the {effect} tags with something like {PercentageRP} I didn't do that now since it would mess up your code.

      We will probably want to give a lot more subtags to the Activity tags in the future as we add more functionality to them. Can this be done easily?

      Comment


      • #33
        Technology model

        Hello. I'm new to this site, so please excuse me if this post is in the wrong section, but it was the most appropriate thread I could find.
        Reading the info on the implementation in Clash is very exciting, I especialy like the cumulative and interrelated aspects of it. That said, here is my tuppence worth:

        One thing I find inaccurate in all Civ-type games, is the way all technologies are researched by default i.e. they are all uniformly 'good' and produce few negative effects on those who research them, bar the odd increase in pollution or somesuch. What would be more interesting is if some techologies had a more significant negative effect, so the player would have to make a real choice about whether to lead their civilization along such a path. A few examples:

        Fascism - surely you would not be able to acquire such knowledge without significant risks.

        Communism - the benefits of advances like a better wellfare state, production and employment should be countered by a big increase in the chance of revolution amongst your citizens, once they have knowledge of this system.

        Religion - I have yet to see a game fully implement the serious effects of making reasearches into religious fields. The decrease in science and toleration in your civilization should be modelled, as well as the power you as the ruler would lose to the heads of religion the more religious your civ becomes (Alpha Centauri touched on this when the Fundamentalism social engineering choice decreased research)

        In relation to the cumulative effects in the reasarch fields in the Clash tech model, I would like to see certain penalties for reaching high levels in certain areas. So the better you become at nuclear weapons, the greater the unhappiness amongst your citizens, as your ever larger weapons of mass destruction pose a threat to the whole planet.
        Similarly, and depending on whether 'future techs' are implemented, when advances in Cybernetics produce increases in production and research, it would be an interesting twist if the better you became at this, the greater the chance that the machines would achieve consciousness and maybe fight back ala Terminator. It would certainly make the endgame more interesting if you were suddenly faced with a massive new foe who originated in your own cities. Again, it would lead to a choice - do I place restrictions on technology and possibly fall behind other civs, or press on and perhaps risk total destruction by my own technology?

        Anyway, that's me done.
        Keep up the good work.

        Comment


        • #34
          Col, I believe most of what you said will be implemented. Check out the social model for more info on religions' side effects, and the modeling of philosophies such as fascism.

          On the other hand I don't think Clash will dwelve into the future, that doesn't seem to be a priority. It is first and foremost intended to model history. And even if it does, I don't think it'll go as far as you suggest.

          Comment


          • #35
            Hi Col, and welcome to Clash!

            Thanks for the comments. Thanks for trying to find the right thread. The right one was down a few pages, so I can see how you didn't find it. The best way to find the right thread if its not near the top is to look on the page for that model on the web page. They aren't all current, but usually the end of a thread will tell you where the next one in the chain is. If you want to discuss your ideas further, you should post them here .

            Some negative consequences of tech will certainly be there. How far we go is TBD. I have some qualms about your specific suggestions. FE Communism isn't necessary to have a socialist-leaning state, or a modern mixed economy. I don't see the connection you posit.

            Mikael didn't know it because we have been focusing on ancient stuff for quite a bit, but there is a decent chance that at player option we will have future techs. I think the Terminator endgame is fairly interesting. We are only implementing the ancient world for now, so I won't discuss it until we get at least into the modern age.
            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


            • #36
              Richard:
              Now that Demo 5.1 is in its closing stages I am ready to start fixing up the data editor.

              Could you send me the list of things you want changed or fixed or improved in the data editor. I do not at present have access to the emails you sent me before. You can either send them to me at gthomasnz@hotmail.com or post them here in this thread.

              Cheers

              Comment


              • #37
                A question on military applications:
                The military model has elements and units. Elements contain actual data, units are groupings of elements. Only units are presented to the player.
                A breakthrough in metallurgy would allow a better element to be available, and increase an existing one. Units are more difficult to handle, since they are groupings of elements. They automatically get better if their elements do, but when do they become available? There are 2 reasons why they should:
                1) New elements are available, so corresponding units can be nuilt,
                2) New tactics are discovered, so one understands it is interesting to have a mixed elements-unit, (like using scouts with infantry, or engineers with infantry to build field defence).
                The code is ready to take into account the element-effect, which means xml files provide the figures and are read by the program.
                Note that it makes things a little bit more complicated at element-level than at unit-level.
                However, how would one say that new units are available? Is it a direct consequence of new element available, or do we also provide starter tech for some units (knowing these tech breakthroughs are only organisational in nature)?
                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


                • #38
                  Oops

                  I keep checking this forum, but somehow I missed the fact that this thread had new posts.

                  Col, what you say is certainly possible in our model. However, we don't yet have the details for tech-social interactions nailed down. If you research both the tech and social model and come up with a plan for linking them, you will be able to help us fix up the game.

                  For example, we might add a "hidden" application to the Nuclear Weapons technology. Rather than being something that the player builds, it could generate the civ-wide social effects you mentioned.

                  Gary, making a tech editor seems to be something I can do myself, so you can work on something else instead. But I do have some requests regarding the structure of the XML file. For my editor, I tried to generate a file that is just like the one we use now. But as I mentioned earlier in the thread, this is a bit outdated.

                  The {multiplier} tag in the CivilizationActivity objects doesn't do anything, and a {description} tag would be nice. Also,the {effect} tag should probably have its name changed to {percentRP} So the file would look like this:

                  {activity}
                  ..{name}
                  ....{Food}
                  ..{/name}
                  ..{description}
                  ....{Put cash here to make farming more effective.}
                  ..{/description}
                  ..{recipient}
                  ....{name}Biology{/name}
                  ....{percentRP}20{/percentRP}
                  ..{/recipient}
                  ..{recipient}
                  ....{name}Farming{/name}
                  ....{percentRP}80{/percentRP}
                  ..{/recipient}
                  {/activity}

                  Also, as LDiCesare and I agreed on earlier, the application tags need to be changed to look like this:

                  {application}
                  ..{name}Light Cavalry{/name}
                  ..{type}Element{/type}
                  ..{description}Improvements in horse breeds allowed soldiers to ride on the animals instead of relying on chariots, resulting in more mobile and powerful troops.{/description}
                  ..{attributes}
                  ....{attack}480{/attack}
                  ....{health}9{/health}
                  ....{defense}33{/defense}
                  ....{movement}3{/movement}
                  ..{/attributes}

                  ..{requirement}
                  ....{name}Warhorses{/name}
                  ....{startlevel}10.0{/startlevel}
                  ....{effect}
                  ......{type}Movement{/type}
                  ......{addPerLevel}0.1{/addPerLevel}
                  ......{subtractPerLevel}0.3{/subtractPerLevel}
                  ....{/effect}
                  ....{effect}
                  ......{type}Attack{/type}
                  ......{addPerLevel}1{/addPerLevel}
                  ......{subtractPerLevel}10{/subtractPerLevel}
                  ....{/effect}
                  ..{/requirement}

                  ..{requirement}
                  ....{name}Military Tactics{/name}
                  ....{startlevel}5.0{/startlevel}
                  ....{effect}
                  ......{type}Attack{/type}
                  ......{addPerLevel}10{/addPerLevel}
                  ......{factorPerLevels}0.3 10{/factorPerLevels}
                  ......{subtractPerLevel}48{/subtractPerLevel}
                  ....{/effect}
                  ....{effect}
                  ......{type}Defense{/type}
                  ......{addPerLevel}2{/addPerLevel}
                  ....{/effect}
                  ..{/requirement}

                  {/application}


                  I can change the editor to deal with this (I hope); can you change the Tech code? Basically the RP's put into the activity object would be split among the listed techs in the percentage listed. The CivilizationActivity objects will get a lot more functionality later, but that should do for 6.2

                  LDiCesare, the current xml file is old, and does not include any of the changes we discussed. Either you or Gary has to change the code. You said you were already changing some military code; is what I posted above correct? Did you want the attributes like attack and defense to be defined in the tech file or somewhere else?

                  I assumed that the applications currently in the tech file are elements. Once you get a certain level of tactics and warhorses, you can make a light cavalry element. I assumed that the military model would use those elements to make units as soon as they became available, the #1 option that you listed.

                  We could add units as new applications. It would be trivial to make such an application that becomes available at a higher tech level than the elements in the unit. Something like:

                  {application}
                  ..{name}Cavalry Raiding Band{/name}
                  ..{type}Military Unit{/type}
                  ..{description}Generals soon learned how to use cavalry to their full potential, abandoning the old shock-based chariot tactics in favor of a hit-and-run style that increased mobility.{/description}
                  ..{icon}ltcav02.gif{/icon}
                  ..{sound}horse02.wav{/sound}

                  ..{requirement}
                  ....{name}Military Tactics{/name}
                  ....{startlevel}10.0{/startlevel}
                  ..{/requirement}

                  With proper design, the unit application will never come before the element application, since it has a higher requirement in the same tech.

                  Am I correct in assuming that units have graphics and sound files attached while elements do not? Also, where do you want the effects of the units to be coded, the tech XML file or somewhere else?
                  Last edited by Richard Bruns; December 12, 2001, 12:06.

                  Comment


                  • #39
                    Richard, I have already coded the parse of the xml military/tech link in the military xml file which contains the definition of units and elements. Instead of application I have element, and I have unit elsewhere. Try to get the unitbuilder.xml file out of the demo 5, and you will see what this file looks like: Just imagine inside the {element}LightCavalry{/element} additional tags like {element}LightCavalry{requirement}(what we said before){/requirement}{/element} In 5.1 you'll have some (unused) tech stuff along in the file, but I cannot attach it from here (I am not at home).

                    The question unit/element was mainly because you use unit names, so I was afraid there was a confusion. Elements have their image, and units and commands (or TFs) use the image of the most numerous element (or the most numerous image, rather). To make things simple, I agree that having units available as soon as elements are available is good at least to start with. If we realize some units (element combos) are stronger than others, then we can try the other approach.
                    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


                    • #40
                      The next code release (which I want to call D6) is imminent. Right after that I want to rationalize the whole XML data scene so that everything is coherent and read in in a consistent way. The Java code to do this is now available. In doing that, I would extend it to include scenario specifications and saved/loaded games.

                      Richard: I will go over your post carefully a little later today, and let you know any comments when I get home from work tonight.

                      Cheers

                      Comment


                      • #41
                        Hi Richard:

                        I think the next big push should be on Tech. To make that work, we need some test cases out of you. One involves the XML spec Gary is talking about. Another test case we need is to make sure all the plumbing is hooked up right in the code. It would be something like this:

                        Using the abbreviated test tech tree (once Acitivities are read in right) Given a set of initial tech levels, Put X points into Y Activity. Crank a turn. Tech change should be Z in Metallurgy, Z1 in ... etc.

                        Once Gary has that he will know what is supposed to happen, and can get the Tech turn hanler working right. Then Laurent and I can do our respective hookups to Tech. At that point you can test, and we should be close to ready for a 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


                        • #42
                          The more I consider it, the more it seems to me that an application (as described in the technology model) should be an interface rather than an object. That way any "client" of the technology model can define their own actual application object as long as it implements the application interface. In that way, a military application could, in other regards, have a quite different structure from a planning application (mass production for example), say, but still use the same interface to the tech module.

                          How do you feel about that, Laurent?

                          It may be that activities should be approached in the same fashion. I am not sure about that.

                          My original interface design allowed technologies, activities and applications to be requested using the same method. I now feel that that approach was incorrect and am recasting it.

                          Cheers

                          Comment


                          • #43
                            Originally posted by Gary Thomas
                            The more I consider it, the more it seems to me that an application (as described in the technology model) should be an interface rather than an object. That way any "client" of the technology model can define their own actual application object as long as it implements the application interface. In that way, a military application could, in other regards, have a quite different structure from a planning application (mass production for example), say, but still use the same interface to the tech module.

                            It may be that activities should be approached in the same fashion. I am not sure about that.
                            So long as the tech model also provides a base object for Application and Activity that implements the interface, and is reasonably functional, I've got no gripes with either of these. I think that in many cases in the econ model I can just use the base functionality as-is. At least for the near future.
                            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


                            • #44
                              If application was an interface, the various ElementArchetype could adhere to it, which could make things a little simpler, but I must check since I currently have only one ElementArchetype for all civs but don't know whether I can make do with one application object for all civs.
                              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


                              • #45
                                With the interface approach, you don't have to worry about an application object. As long as the element archetype implements the application interface that is all that is needed.

                                Then, when a civ tries to build a unit, it just checks the application methods of the archetype against its technology level to see if it can build the unit, and how effective it will be.

                                Cheers

                                Comment

                                Working...
                                X