Announcement

Collapse
No announcement yet.

Demo 5 Interface

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

  • Demo 5 Interface

    I'll be posting a proper demo & grabs to show current state of play for model interfaces in Demo 5 a little later this weekend...

    In the meantime:

    Call for artists!
    Although not strictly necessary for a functional Interface, appropriate pictures, backgrounds & icons would spice them up nicely!

    Anyone up for it?

    Specifics of what's needed will hopefully become apparent as model coders make it known what their interface will consist of...

    To model coders!
    If you could give me a very quick rundown of what kind of interaction you see the user having with your model, I'll check if the current Image, List, Button, Slider and Text ClashComponents are sufficient to do it!

    Also, how will we work model-specific interface coding? If I just make it clear what ClashComponents can do and post a demo & source (for DiplomacyUI), can I leave it up to specific coders to go ahead & do their own thang?

    Would some kind of gneric template code come in handy?

  • #2
    Darren:

    I think your only responsibility is to produce enough containers and widgets to Allow implementation by others. After that, it's their problem... I do think that templates and examples would be very handy. If we can figure out what we want on diplomacy early, perhaps that can be a good example for the other coders.
    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


    • #3
      For Demo 5 we need two tech interfaces: The normal game interface and a "debug mode" that shows all tech data so we can diagnose problems. The debug mode will basically be a huge list of detailed numbers, so I'll concentrate on the player interface.

      For the normal game interface we will limit player interaction to the historical abilities of the rulers. We are assuming an ancient civilization, so I think the following data would be appropriate:

      Tier 1 techs are simply not shown.
      Tier 2 techs are sometimes shown if asked for.
      Tier 3 techs and applications are presented if asked for.
      Tech Tags are always presented, and are the main focus of the presentation.

      There should be a quick overview of tech in the main civ status screen. This would have a basic summation of tech prowess, with quick descriptions for anything really unusual or important. This way the player should see any problems or advantages quickly. If no quotes appeared and the overall analysis was fine, the player would know they could ignore the tech system for a while.

      For more detail, the player clicks on this box to go to the tech overview screen. Here, info is displayed as follows:

      If no standard of comparison exists, the topic is not shown. For example, if you don't know about the infrastructure of any other civ, you won't have any standard or ability to analyze things and your people wouldn't even think to analyze them.

      After a while, changes will be reported for some topics. For example, the advisor might say, "Our water systems are better than they were in our fathers' generation.

      If you know enough about another civ, you are given comparisons. For example, "The Parthians have much better cavalry than we do."

      To present this data, I think that we should also use the "advisor" approach where all data is presented as communications from some official. This could be pictographic when presenting overviews, and quotes when giving details. The pictographic could be something as simple as thumbs up or thumbs down. (Are the forum icons public domain? They would be a good temporary measure until we get an artist to do something better.)

      So when you looked at a list you'd see something like this:

      Farming:
      Government:
      Infrastructure:
      Military:

      Clicking on a part of the list would bring up a more detailed message and possibly a recommendation, like:
      • Our ability to grow food is atrocious! The barbarians feed themselves better! We should capture barbarian slaves and make them grow food for us.
      • Our government systems do not seem to be working very efficiently. Our allies are doing better with their government, so we should ask them what to do.
      • Our methods for building infrastructure are about the same as everyone else's.
      • Our military units are the best in the known world! We should exploit this advantage while keeping our secrets to ourselves.


      So how does that sound? Obviously it's a rough draft, and if anyone else has any other ideas feel free to post them.

      Comment


      • #4
        I think we should also work on the interface as we fix the model structure. Working with the interface forces the designers to think in terms of what the player will want to do, and they can analyze the system in that context. The player should be the main focus, but if we are not thinking about interface the player can get forgotten. The interface goals can give a new perspective.

        After posting the tech interface plan, I realized that the tech system did not have all of the fuctionality I described. There were no plans for the voluntary trading of knowledge between civs. While that is easy enough to add, it is inexcusable that I did not have it in there before.

        Comment


        • #5
          Great Point! I'll include this in the "Big Issues" thread, or you can add it yourself...
          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


          • #6
            I have an idea for the interface that could do a lot to help the micromanagement:

            Most games like this have rather primitive interfaces. It is often very hard or time consuming to get basic data about your civ. So I propose that we take advantage of something that is proven to be an effective way of managing complex things: A database.

            I think a database would be a good way to deal with a big, complex civ. We should be able to make a QBE interface that allows players to quickly and easily discover important info about their civ. They could sort mapsquares by population, infraclass quality, research generation, garrison troops, or any other game feature. This could be used by both the player and AI to spot potential problems. For example, sorting the squares by unhappiness and police presence would quickly make a list of the places most likely to riot. Or the player could use the database to sort the squares by population density and quality of medical infrastructure to see what places are at the biggest risk for disease. With a good database, the possibilities are almost endless. I think the player's ability to query almost any information would make the game superior.

            I think it could also help the AI. This kind of sorting could quickly alert the computer to potential problems, and it should take less computations than checking squares individually. It could also allow the player to define custom AI governors. The player would order the governor to do certain database queries and act based on the lists generated.

            Obviously it would take a bit of work to set up this database structure, but I think the interface rewards would be well worth it. The player would have a quick and easy way to obtain virtually any data about the civ.

            Now all we need to do is find someone with experience programming databases, preferably databases used by business or management. I wonder where we could find someone like that

            So what do you think? Would this work, or am I comparing apples and oranges?
            [This message has been edited by Richard Bruns (edited October 22, 2000).]

            Comment


            • #7
              I like this database idea. The only problem is that a database can be very large (and consume alot of diskspace) but it's surely a good way if you want fast reliable computations.

              Since i have some experience of programming database i'm just qurious if you are thinking reding in 'the database' when opening a game or having it saved in the file all the time. Considering how much space it will need on the disk versus how long it will take to read in.

              I would say that it's smarter to read it in every time (why have the same information twice in every file). But you could also do it the other way around. Have the database first and 'create' the world from the database. I think this is even better.

              Also, are you going to do this database with some of the usual tools like Visual Basic or Oracle?

              One important thing with this kind of database is limitations. If you have a limited number of posts, it will be easy for the computer to adress the posts, (it will go faster since the computer knows where to look).
              stuff

              Comment


              • #8
                Thanks for the input, Stuff2. Right now this is just another of my wild ideas and hasn't been discussed ny the team. F_Smith also programs databases, so we would need his input. He's been really busy for the past few days, however.

                I think that the basic save file could be the database. If it contains all of the data, the game could use it to load the world and there would be no need for a seperate ".sav" file. A big advantage of this would be that scenario designers could edit the save file directly if they needed to.

                Of course, we would have to figure out a way to prevent cheating like this. Multiplayer games would probably have to be saved in a more secure format. (People might still be able to hex-edit things, but that's a different problem.)

                I'm not a database programmer so I don't know about how the guts of the system would work. We might want an object oriented database so we could include the methods in there as well. It would be great if we could use some tool that allowed non-programmers like myself to do the repetitive work of building the world.

                Would it be possible and useful to base the editing tools like the technology editor or ecology editor on this database? It seems like that would be a powerful, unified system for non-programmers to build the world directly.

                Just tossing out ideas. Perhaps this could be a good architecture for the game data.

                Comment


                • #9
                  I think the sorting functions etc. are a good idea. But IMO we need to be exceptionally careful with the interface for it, since we don't want Clash to seem like a business application. But making it feel right is far in the future...

                  BTW the sorting routine is something I already am using in the primitive miliary AI from demo 4. The AIs look for squares they can attack whose ratio of economic value to military defense (plus some other stuff) is highest, and then do a calculation to see if there are enough 'spare' troops to make the attack. Of course that's not near sophisticated enough for the mil AI as development goes forward.
                  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


                  • #10
                    Hi, Ya'll:

                    I'm baaaaack.

                    Sorry to be out of pocket for the last week. Darned work keeps interfering with the really important things in life . . .

                    I agree with ya'll both. In fact, that is the architecture we're using for the final product. All the game data will be stored in a database. A serialized object named 'GameData' will store all the gamedata at runtime.

                    So, for practical purposes, the GUI interface can access any and all game info thru the 'GameData' object via simple 'getters' -- methods like getGameDate(), getAllMapSquares(), that kind of thing. This will make game tools like the tech builder a snap to make, as you point out.

                    Altho I would disagree about the 'saved game' -- I would rather save that runtime 'GameData' object out as a binary, serialized file, for a variety of reasons.

                    Good thinking, guys!

                    Comment


                    • #11
                      I have an idea for the search functions that could enhance the game and prevent excessive micromanagement. For most of history, information has been hard to come by. When the king of England wanted to survey the land, it took a lot of money and manpower to produce the Domesday Book.

                      So perhaps some of the search functions could cost the player money. The player would order the search, and then an advisor would say something like "Finding that information will take the royal staff three years and cost 50 gold." Then the player could select "Send out Agents" or "Never Mind" The information would arrive at the beginning of the next turn, assuming five year turns.

                      The cost would be based on the complexity of the search, the size and abilities of the government bureaucracy, and the technology level. A big, advanced government staff could take a certain number of surveys per turn without additional cost. Of course, they would require a large annual salary.

                      After the information is gathered, it is stored and you can access it for no cost. But the information will grow out of date, often requiring a new survey.

                      I think this would enhance historical flavor, making the game seem like a business application. It would also be a poweful disincentive for micromanagement. If it costs the player to do detailed searches, then there will be no advantage to endlessly tweaking minor things. It would cost more than it helps.

                      It also prevents endless tweaks to find the perfect set of numbers. If it takes a turn for information to arrive, it isn't possible to indulge in excessive fine tuning of the numbers.

                      So the search function would allow the player to get information easily and the cost would prevent overuse of the feature.

                      Comment


                      • #12
                        I like this idea very much.

                        It'll have to be an 'advanced' option, I'd guess. I don't know if your casual player would like it.

                        But for hard-core players like myself, what a great idea!

                        Comment


                        • #13
                          quote:

                          Originally posted by Richard Bruns on 10-30-2000 01:17 PM
                          I have an idea for the search functions that could enhance the game and prevent excessive micromanagement. For most of history, information has been hard to come by. When the king of England wanted to survey the land, it took a lot of money and manpower to produce the Domesday Book.


                          Here's a radical idea...

                          Rather than using this idea for just searches, how about we use it for all economic, demographic, and governmental info? So endless tweaking is pointless since you are tweaking something that may have little to do with the game 'reality'. To get reasonably good info it would, as you say above, cost money or dedicated governemental resources. There would also be free updates available occasionally that wouldn't give the right values, but would at least report obvious changes. Like that Rome has grown from something like 100k people to more like a million.

                          This idea would also be an advantage for bandwidth of the client-server operations in multiplayer since the server need only report new econ/govt/etc. info when a survey is conducted. (Surveys of broad nature will only be common getting into the modern era.) That means relatively little info (mostly player orders for econ etc. and things like troop movements) will be needed each turn.

                          This idea might have some downside to it that hasn't occurred to me yet... What's everyone think?

                          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


                          • #14
                            I like it. But as F_Smith pointed out, some players might not like having to pay for basic info. This would be a good avdanced option, however. It makes sense that the accuracy and thoroughness of the basic info you get depends of the quality of the bureaucracy.

                            Comment


                            • #15
                              Bump.

                              Basically, my view of interface is as follows:

                              If the object at hand is something that the rulers cannot know, like raw technology or ecology data, is is simply not displayed. Data for these models comes in through an advisor-based interpreter that displays comparisons and simple status reports. See the tech model above. This would be more realistic, and a lot easier on the player. Instead of wading through a sea of numbers, the player scans a list of small pictographic icons. In the example above, the player would scan for the red faces that represent where the civ's technology has fallen far behind the neighbors. In the ecology model, the player might toggle a map layer that displayed similar icons: exclamation marks where there is a problem, checks where things are fine, etc.

                              For things that governments can be are expected to know, like economic or populaton data, the ruler must commission searches like real governments. They pay to do surveys of the civ, and the surveys arrive after an amount of time. The cost and time of the survey are based on the level of the civ's government and bureaucracy. The actual searching is done using a database loaded with all the relevant game data.

                              After the survey arrives, presumably in the form of raw data, the player should be able to do database-type searches on the data: For example: "List all tiles in descending order of the tax revenue they generate, and display the cost of maintaining the military units in those tiles." That way, the player could easily see data comparisons in a single list.

                              So basically, I'd like to hide numbers as much as possible, and where numbers are really needed, the player should be able to see and sort them all in a single screen.

                              Comment

                              Working...
                              X