Announcement

Collapse
No announcement yet.

I want to help... both in development and suggestions (if they are welcome)

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

  • I want to help... both in development and suggestions (if they are welcome)

    Hi... I have been wanting to make a new civ game for a very long time. Of all the civ games... I like CTP2 the best because of the many different options for colonizing (and expansion) there are.

    However... I have seen previews of Civ3 and I like the graphic realism of that game....(but still prefer CTP2... mainly because you can colonize the oceans... how cool is that? )

    But none of them actually play on a globe... a living, breathing, changing, real world. That is the objective I want to accomplish with a new civ game. I mentioned this goal on a CTP2 modding forum recently: (to paraphrase)

    I have had it in mind to redo the game with a unprecedented touch of realism... I want the player to be able to immerse himself in a real, true to life, living, breathing, world... so that the person can learn about what makes our world what it is, and experience what it is to live in our world from a whole new perspective!

    Anyway... some people (even one of your own) have directed me here. I have taken a look at Clash... and may want to get involved. But I have a few questions (and sorry if some of them seem ... well ... pointed)

    Why the heck are we using JAVA? I realize the advantage of being multi-platform... but a game needs to be as quick as technology will allow.... JAVA isnt a native lanquage for ANY home computer!!!!! Which means it will seriously slow game time... especially if major calculating has to be done (as it would in a Geology/Weather simulator for the creation of a map).

    Are the developers open to taking the game in new (mostly additional instead of changing) directions?

    To introduce a bit of my background and what I would like to add...

    I am a 9th grade physical science teacher from TX with a background in Geology, Geography, Chemistry, and psychology. I have been an "amateur" programmer since I was 12... but I do not have much professional experience except some classes in college (including one on software engineering). I don't have a lot of spare time during the school year... but during the summer I could potentially work on this full time.

    I REALLY want to work on the map creator... for a long time, I have been wanting to make a geology/weather simulator that will take a world through the entirety of "creation" so that we end up with a real world. I would really also like to have the world generator create a real globe and I am hoping you guys are open to this idea... (I have put some thought into how this could be done...)

    I also would like to participate in making suggestions for many existing and even potentially new aspects of the game.

    SO... let me know what you all think.
    "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes.
    I set the clouds in motion, turn up light and sound, activate the window, and watch the world go round."


    - from Prime Mover by Rush

  • #2
    Re: I want to help... both in development and suggestions (if they are welcome)

    Hi primemover, welcome to Clash!

    Originally posted by primemover
    But none of them actually play on a globe... a living, breathing, changing, real world. That is the objective I want to accomplish with a new civ game. I mentioned this goal on a CTP2 modding forum recently: (to paraphrase)

    I have had it in mind to redo the game with a unprecedented touch of realism... I want the player to be able to immerse himself in a real, true to life, living, breathing, world... so that the person can learn about what makes our world what it is, and experience what it is to live in our world from a whole new perspective!
    Much more realism than what's available in the genre is one of the aims of Clash also. But we have to achieve balance in not killing the fun and use of computer resources also. So there are clear limits to the realism we can achieve.

    Anyway... some people (even one of your own) have directed me here. I have taken a look at Clash... and may want to get involved. But I have a few questions (and sorry if some of them seem ... well ... pointed)
    Pointed questions are standard here .

    Why the heck are we using JAVA? I realize the advantage of being multi-platform... but a game needs to be as quick as technology will allow.... JAVA isnt a native lanquage for ANY home computer!!!!! Which means it will seriously slow game time... especially if major calculating has to be done (as it would in a Geology/Weather simulator for the creation of a map).
    This issue comes up frequently. I'll direct you to theJava Game Programming thread. At any rate, we now have tens of thousands of lines of Java code, so that's what we're using. . .

    Are the developers open to taking the game in new (mostly additional instead of changing) directions?
    Well, I've got nothing against radically new approaches or I wouldn't have started Clash in the first place. But realities of programming and other resources mean that we need to be careful about what we add, and when we add it. For now the design is significantly ahead of the code in many areas. So I'm not really interested in adding large new things until we have things like the government model and diplomacy implemented. But that is my personal opinion. Gary has interest in doing things like map generation earlier than me.

    If the team buys into the specifics of what you want to do, there is plenty of room for you to do innovative things in Clash. But the models may lie fallow for a while depending on what we decide is most important. If you can pick up enough java to program your pet areas of design yourself, then its a bit more.

    I am a 9th grade physical science teacher from TX with a background in Geology, Geography, Chemistry, and psychology. I have been an "amateur" programmer since I was 12... but I do not have much professional experience except some classes in college (including one on software engineering). I don't have a lot of spare time during the school year... but during the summer I could potentially work on this full time.
    Certainly that summer block'o'time is enticing

    I REALLY want to work on the map creator... for a long time, I have been wanting to make a geology/weather simulator that will take a world through the entirety of "creation" so that we end up with a real world. I would really also like to have the world generator create a real globe and I am hoping you guys are open to this idea... (I have put some thought into how this could be done...)
    Please check out the Map generator model II thread to see where the state of play stands. Some more info is available on the web site.

    I also would like to participate in making suggestions for many existing and even potentially new aspects of the game.

    SO... let me know what you all think.
    Suggestions and criticisms we're always open for, whether you decide to officially join or not. Check out the existing designs on the web site and forum, and give us your ideas! And of course play the demo. Also let us know more of what additional things you'd want to include so we can together figure out if your desires match reasonably well with the rest of the team.

    -Mark
    Last edited by Mark_Everson; December 14, 2002, 14:19.
    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
      What I had in mind...

      A little history first

      The first strategy game I fell completely in love with was Master of Orion (The original). Although it was not the first strategy game I played, it was the one that got me the most hooked.

      After playing MOO2 for a while, I came across a roommate with CTP. What I liked most that helped me prefer CTP to The original Civ was the ability to colonize the ocean bottom... that just got my imagination running. When CTP2 came out, especially with all the MODS they make, I became at least as enthusiastic about Civ type game as I had the MOO type game.

      But I soon I became annoyed by the innacurate details of the game. Goods, maps, land distribution, time scale, and many such items annoyed my desire for a sense of realism. At the same time I saw the educational potential for a more realistic game. Over time, along with the eye candy glimpses of Civ3, and the new innovation of MOO3 (in that it can be micro and macro managed) I envisioned a new game:

      These were the general goals for the game I envisioned:

      1. FUN: To provide a realistic, but customizable world civilization game that is fun, creative, enjoyable, and satisfies the adventurous mind.
      2. EYE CANDY: The game will be graphically appealing, utilizing the cutting edge technology that is needed to provide the best interface needed.
      3. MANAGEABILITY: The game will provide an interface that allows both ends of the manageability spectrum: from streamlining based on set parameters down to intricately manipulating the individual aspects of the game.
      4. EDUCATION: As in previous games, to provide the historical background behind the units, wonders, concepts in the civilization. To expand on the basic information in the library, the interface will provide links to web content and web pages that exist to teach more about the history provided in the game
      5. EDUCATION: A new educational aspect I would like to provide is an interface that introduces/teaches about each of the different aspects of the world/game on which they live. An example would be what goes into the “creation” of their world and the processes involved. Why is the world the way it is? What are they actually manipulating when they set the specifications by which the world is created? Again, I would like to provide links to web content that provide more details about the concepts involved.
      6. SUMMARY: To provide the player with a complete world with an unprecedented touch of realism... I want the player to be able to immerse himself in a real, true to life, living, breathing, world... so that the person can learn about what makes our world what it is, and experience what it is to live in our world from a whole new perspective!

      Ideas that I have added:

      Education: To teach players not only about the past, but realistic future ideas to inspire younger players to investigate possibilities and think of possible carreers. (This could be done with links in the tech tree to current research in a futuristic technology. Ocean floor methane harvesting for example. Other links could be put into other educational aspects of the game).

      Gameplay: I would like if possible, to add a real-time element to the game. Decisions are turn based, but carrying them out would unfold as they would in real life... if this is possible. I have some ideas on how it could be done.

      Additional comments
      The map realism I envisioned will require a global map (not a flat map). It will probably also require a 3d engine to render the map in a way that will help reduce the complexity of illustrating a globe with mixed 5 sided and 6 sided coordinate blocks (made of triangles), as well as to increase the realism.

      This is what I have had in mind for a good two years now. I don't know how well it fits into the Clash scheme but it is the basic idea behind the innovations I would propose. Are we considering a 3D look? There were comments about the interface in the demo I downloaded. I hope the final version of the game will consider it's presentation an important part of it's appeal.

      Specifics can be spelled out if it is believed that these goals are in line with your own.
      "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes.
      I set the clouds in motion, turn up light and sound, activate the window, and watch the world go round."


      - from Prime Mover by Rush

      Comment


      • #4
        Re: What I had in mind...

        Hi primemover, here's a quick summary as to where we stand vis a vis your aims. For things in which your goals are already supported by the current Clash concept I won't say much.

        Originally posted by primemover
        But I soon I became annoyed by the innacurate details of the game. Goods, maps, land distribution, time scale, and many such items annoyed my desire for a sense of realism.
        Most I agree on. I think that goes for the rest of the team too. Time scale is actually Very difficult to get right. You can do a search on "time scale" if you want to find all our discussions on this topic.

        These were the general goals for the game I envisioned:
        1. FUN (snip)
        2. EYE CANDY: The game will be graphically appealing, utilizing the cutting edge technology that is needed to provide the best interface needed.
        3. MANAGEABILITY
        4. EDUCATION
        Of this set, fun and manageability are already high on our list. Our detailed scenario support and event-driven popups would enable 5 and 6. I think an option to have the education stuff would be a definite plus to the game although it is not high on my personal priorities.

        The biggest disconnect is on eye candy. I, and I think most of the team rate more detailed world modeling and AI quality above graphics. You must realize that games that have cutting-edge graphics usually have them at the expense of other things like AI and depth of modeling the world. Cutting-edge eye candy also requires a higher level of skills than anyone we have been able to recruit in the art area to date. . . The professional companies take about a year with a team of full-time artists to get what they do. I just don't think your goal is practical in conjunction with everything else you want to do.

        That said, we do want to make Clash as attractive as possible so long as it doesn't compromise our other goals. If the team doesn't want to go in the eye candy direction as far as you, you would still have the option to do an eye-candy codebase and art set yourself and with whatever others you could recruit with the same vision. You would just replace the standard map with whatever you can code up, and whatever new art. It would be a Lot less work than doing a whole game from scratch. I would need to make sure that the rest of the team would be comfortable with that, but I am, provided you also put in a fair amount of work on things that everyone wants too, like the map generator, etc.

        Gameplay: I would like if possible, to add a real-time element to the game. Decisions are turn based, but carrying them out would unfold as they would in real life... if this is possible. I have some ideas on how it could be done.
        We've talked about this. I think it would not be too difficult in terms of modifications to the code.

        The map realism I envisioned will require a global map (not a flat map). It will probably also require a 3d engine to render the map in a way that will help reduce the complexity of illustrating a globe with mixed 5 sided and 6 sided coordinate blocks (made of triangles), as well as to increase the realism.
        Basically apply what I said about eye candy above. If you have sufficient programmers and artists committed to do it, could be done. There has been some support for a spherical map before. I just don't think its worth the trip, at least for the first release of Clash. And certainly not before the basic game engine is done for things like diplomacy. In the far future I've nothing against a spherical world with continuous coordinates. But we are being so radically different in so many ways I think its valuable to stick with tried and true approaches in at least some areas. The true limit for a project like Clash is programming time. It is a truely precious resource, and any idea that requires serious programming time to implement has a non-trivial chance of killing the project. . . That's because if you try to do too many things with limited resources, you'll never get there.

        There were comments about the interface in the demo I downloaded. I hope the final version of the game will consider it's presentation an important part of it's appeal.
        Yes, we consider functional well-thought-out interfaces very important. We know we aren't there yet.

        Specifics can be spelled out if it is believed that these goals are in line with your own.
        So, primemover, I've given you my take on all your issues. Its basically for you to decide if we are close enough to your goals or not. It seems to me that we have at least 90% of what you want, and you can get the extra 10% if you can assemble a sub-team that thinks the eye-candy goals are worth pursuing. But that stretch goal should wait until the base game features are there IMO.

        I had a similar conversation with the group that became the Guns Germs and Steel (GGS) project about a year and a half ago. As in your case it looked to me like the goals of the two groups were at least 80% common with some differences, such as their wanting a 3D map. Also, the several dedicated programmers they thought they had all coded in C++. I suggested we join forces, but they thought the 20% of differences in scope, and the coder issue, made it worth setting out on their own. They talked for about a year on design, got a little programming done, and never produced even a first crude demo. Please don't underestimate the immense difficulty of starting out on your own to do a project like this.

        Sorry to be preachy, but I think it represents reality. With Clash I think you have a very good chance (maybe 70%, who knows, we might fold before finishing) of getting 90% of what you want. With a new project I think you might have a 5% chance of getting 100% of what you want. When you multiply out the probabilities it looks like about 60% on the Clash side to 5% for a new project to me, YMMV

        I'm largely done discussing this unless you have a few more questions I can answer briefly. I try not to discuss things at length with potential project members because a very substantial fraction never contribute anything even if I satisfactorily answer all their questions You need to look around the project, try out the demos, and make a decision. I hope you are interested enough to join forces with us, we can use all the fresh ideas and constructive criticism we can get! And of course you can start contributing without any big committment, and wait until later to make your final decision. Working on the map generator seems a reasonable way to do that. Just let me know what you're planning on doing.

        Regards,

        Mark
        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


        • #5
          Re: Re: What I had in mind...

          Originally posted by Mark_Everson
          I had a similar conversation with the group that became the Guns Germs and Steel (GGS) project about a year and a half ago. As in your case it looked to me like the goals of the two groups were at least 80% common with some differences, such as their wanting a 3D map. Also, the several dedicated programmers they thought they had all coded in C++. I suggested we join forces, but they thought the 20% of differences in scope, and the coder issue, made it worth setting out on their own. They talked for about a year on design, got a little programming done, and never produced even a first crude demo. Please don't underestimate the immense difficulty of starting out on your own to do a project like this.
          Funny, I was thinking exactly the same thing when reading primemover's posts above, except from old GGS coder/designer's point of view. His ideas reminded me of the vision I had about Guns, Germs and Steel (though I guess I cannot talk on behalf of the rest of the team, one of the major problems of that project was that we couldn't agree on basic outline), but the reality is that GGS is dead or in deep coma whereas Clash looks like it actually has a shot of being completed one day.

          Comment


          • #6
            I think my goals are for the most part in line with your own as well... (at least ideally).

            And of course, priorities are a part of my picture too. It's just that I personally believe that if your are going to do the project, you might as well go all the way. But I am not talking about at the expense of other features, especially if they are priorities. I would much prefer a geologically accurate world to eye candy. I am just saying I don't want to give up on making "eye candy" a part of the game. I think prioritized, my ideals go like this (but keep in mind, I don't want to give up until they are all accomplished... basically I want to do for civ what MOO3 has done for the interstellar civilization game... sure they didn't do EVERYTHING they wanted... but their basic goals were met)

            1. realism: (from a map, goods, diplomacy, empire evolution, look, and other points of view)

            2. manageability/playability/fun

            3. educational value (may be interchangeable with #4)

            4. graphical/sound quality (not necessarily how 3d or 2d it is)

            5. moddability

            6. graphics/movie extras/pov.

            Comments...
            I, and I think most of the team rate more detailed world modeling and AI quality above graphics.
            These are higher on my list of "things to accomplish" as well.

            In the far future I've nothing against a spherical world with continuous coordinates. But we are being so radically different in so many ways I think its valuable to stick with tried and true approaches in at least some areas.
            I am hoping that some freely available code I have found that generates a spherical map can help us with this...though I have yet to look at it.

            The only possible place we may part company is the globe issue. I really want to insist on a globe... especially because I think the freely available algorithm will help us with this issue. Too many things become unrealistic if we don't use a globe (location of polar areas for example, and certain climate types are a REAL problem; another example is that continental plates have rotational velocities... though this is the other extreme, a trivial problem; but what about the coriolis force and its affect on weather patterns and climate?)

            I will maintain that if it cannot be done practically... then maybe we should abandon it. But since it has been done (to some extent) already... I want to give it a try.

            In spite of this insistance... I did not start out on a globe either (as you may see on my own start on a map generator... I wanted to get the basic idea down first, make sure it worked, then apply it to a global coordinate system). I don't expect to get to the globe overnight... I just really want it to be there in the end.
            "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes.
            I set the clouds in motion, turn up light and sound, activate the window, and watch the world go round."


            - from Prime Mover by Rush

            Comment


            • #7
              LOL

              after posting my comments above, I checked out your (Marks) previous comments on the map making discussion . I realized that the fractal map generator discussion you were discussing is basically the place that I got the global map generator.

              I don't really like the patterns either... The reason is is because they are no better than a flat map generator in their realism (except that they look a bit more irregular) but I DO like the fact that they are on a globe.

              What I have in mind is to use his (the developers) global/coordinate system to create a similar fractal pattern (on a much smaller elevation multiplier (scale) and with plate boundaries) and putting it through the process of plate tectonics to come up with the real map.
              "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes.
              I set the clouds in motion, turn up light and sound, activate the window, and watch the world go round."


              - from Prime Mover by Rush

              Comment


              • #8
                Hey Leland, good to see you 'round these parts! Funny about our 'synchronicity' moment there flashing back to the past. . .

                Originally posted by primemover
                I think my goals are for the most part in line with your own as well... (at least ideally).

                (snip)

                The only possible place we may part company is the globe issue. I really want to insist on a globe... especially because I think the freely available algorithm will help us with this issue. Too many things become unrealistic if we don't use a globe (location of polar areas for example, and certain climate types are a REAL problem; another example is that continental plates have rotational velocities... though this is the other extreme, a trivial problem; but what about the coriolis force and its affect on weather patterns and climate?)

                I will maintain that if it cannot be done practically... then maybe we should abandon it. But since it has been done (to some extent) already... I want to give it a try.

                In spite of this insistance... I did not start out on a globe either (as you may see on my own start on a map generator... I wanted to get the basic idea down first, make sure it worked, then apply it to a global coordinate system). I don't expect to get to the globe overnight... I just really want it to be there in the end.
                Glad it seems we're provisionally on the same wavelength. Like I said about the sphere, its your task to convince people or provide resources for an alternate version of the standard code. As something far in the future I have no fundamental position against it, provided its shown to be practical. Personally I don't think it gets you very much for all the extra work, but I can live with being shown to be wrong.

                The main point where I draw the line is I'm adamantly against any big map modifications for the next several demos, aside from potential use of polygons, and implementation of a map generator, both of which Gary has been pushing on for quite some time. Until we have tech fully working government/social reasonably implemented and a diplomacy system, I think a 3-d world would be polishing a cannon ball. So if you are comfortable leaving a full 3-d implementation as a TBD event in the nebulous future I think we can proceed.

                The map generator can be made 3-d if you want, and then converted to the current 2-d format for now. That works for me, and hopefully for you too.
                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


                • #9
                  Hi primemover,

                  I mostly agree with Mark, just want to point out a few things:
                  Java:
                  Java is indeed slow for eye-candy stuff. It is slow because the VM has no clue as to what optimisations need to be done for a specific hardware. However, I suggest you bench java against C++ for computation-intensive programs. With a jit (any modern VM has that thing in), java will not run worse than C++ by more than 4 or 5%. That is if the code is the same. Java code being produced faster and more reliably than C++ code, it can be tuned much more, so you can actually be faster with a java program than with a C++ program, because you spend less time chasing crashes.
                  I also tend not to like 3D too much because
                  1)I do 3D-computer stuff all the day at work so for me a 3D game looks more like work than an accounting sheet does, which means it does not look fun to me.
                  2)I'd rather have the computer spend clock cycles on AI than on rendering. I think if Moo3 manages to get a nice combat screen (3d with low res and low requirements), then 3d could be done in an affordable way. Till I see that, I think it is too heavy to do. I agree it would certainly need to be done in a language more efficient than java if it was to be done.

                  Maps:
                  Having recently corrected a bug due to the use of x/y coordinates in maps, I am inclined to replace all the x/y-based iteration code by the use of an iterator pattern. That would help if we want to change maps somewhere (polygons, squares inside squares for cities), and can only reduce the probability of new bugs appearing. The biggest impact of map changes won't be in the model but in the user interface (looks of the map, displaying it, and some accesses to the x/y which will need to be changed). But again, I think things are more important now than getting map format changes. Look for a thread called polygons something to get some ideas of what Gary had in mind.
                  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


                  • #10
                    i really don't think java should be used for this kind of stuff..., graphical output isn't so hot for me with this game. What are the minimum requirements for this game? I can't even play one turn of demo 7 without waiting a while to select a new window or a place on the map (and I have a 1.5Mhz Athlon Processor and a GeForce 2)... (what kind of culling are you using to render the graphics and speed it up???) Converting this game to C/C++ would take a while, but not hard or impossible since, I hope, you have all the design docs and stuff-- I'm sure I'd be worth it. I must say, Java has some nice features, I like coding in it, hehe, I even managed to fool around in college this semester and make my own java 3D api. Using the native 3D api would probably (most likely) be faster, I was just experimenting with turning 2D points to 3D points hehe. Still, for games on this magnitude, C/C++ i'm sure would be a better solution.

                    About this 3D game, sounds really interesting. I found this game http://www.microids.com/english/Gameswar.html 'War and Peace' a good game to model after, battles happening everywhere and borders ever changing... not really sure if that's what you're going at though. Right now I'm just trying to get my own 3D Game Engine ready for making games with:



                    (runs really fast since I've done the morrowind approach and optimized it with a quadtree and frustum culling as well as fog)

                    It's almost there, but still some more work I'm doing. It's C/C++ and OpenGL... I'm not much of a DirectX fan.

                    BTW, Demo 7 is still a reall nice demo, speed might be a bit bad but game concepts are what matters in the end!

                    Comment


                    • #11
                      Do you have the slow problem with all scenarios, or only with Attila?
                      I ran the game decently on a 4-year old mid-range laptop, so it should run (except Attila, which crawls) on most systems.

                      As for "design docs and stuff", I never saw design docs that were in phase with the code. The code exists and is commented, which is really the design spec, as in any system I could see except maybe real-time embarked systems. Recoding it in C/C++ would be a real hassle. Parts of the game could be coded in order to gain performance, but only those parts which are identified as being slow. Check the link Mark pointed to to see what I mean. In a prototype/demo phase, we would lose more time than it would be worth to try to optimize a big part by rewriting in another language.
                      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


                      • #12
                        The tutorial one I have tried as well and was pretty slow, Jericho runs nicely!

                        Comment


                        • #13
                          wrong direction?

                          ok... some of this is going in a direction i didn't intend.

                          I'm not talking about RTS full blown 3-d battles at all... as the matter of fact, I am not really considering battles at the moment.

                          Heck, if I think it can be done, I am all for 2-d. The only reason for 3-d is as follows (and I am going to talk about my ideal map first to bring in the 3-d)

                          Keep in mind, that I am not saying that these changes be made over night. It's fine by me to have a flat map for a while... as the matter of fact, that is the way I intended on doing things from the beginning so that I could get an idea on how it needs to work. Once I get it working on a flat map, then I intend on bringing in the globe (but keeping the globe in mind the whole time so that we don't make it too difficult for ourselves in the end).

                          That being said, here is my take (and I am addressing polygons and other map styles as well). (Addressing a relevant comment first)

                          I am inclined to replace all the x/y-based iteration code by the use of an iterator pattern.
                          1. I am not familiar with this type of method so I am assuming either a point or a polygon system (with coordinates). You will need to briefly (if possible) explain any other approaches.

                          2. For a flat map system, 2-d is perfectly fine.

                          3. The issue that brings up 3-d is with a globe.

                          4. A global coordinate system is based on a dodecahedron (just like a soccer ball).

                          5. Starting with a simple dodecahrdron, the sides can be split into smaller and smaller triangles.

                          6. Where sides come together to a point, you will have a five sided polygon (a pentagon).

                          7. In each triangle that forms a side, the triangle is divided into smaller triangles. These triangles each form a 6-sided polygon (a hexagon). At a relatively low amount of divisions you get a soccerball globe. Smaller and smaller, and you will eventually get something that resembles a perfect sphere (keep in mind on a soccerball, the tiles are rounded so with so few divisions on a map, the world will NOT look like a sphere.

                          8. The reason we would need SOME 3-D rendering is because with a mix of 5 sided and 6 sided polygons, it is not possible (in a way I can think) to know what angle the polygons are going to be oriented (in any standard way) as you move around the globe. So you use 3-D modeling to take care of this problem (beause it takes the ANGLE of the "terrain" object into account when rendering). Units and other such things don't need to be rendered in 3-D necessarily... especially if they are stationary. The only time speed becomes a factor in this type of setup is when someone is scrolling their map.

                          9. I AM NOT talking about a 3-D civ game... at least not in terms of making it like a RTS game.

                          As far as delaying implementation of this type of setup... I have no problems, I just really want it to be in direction we are headed (if its at all possible) I planned on waiting till later to render the globe after we got the basic idea working anyway.

                          One comment about tech... tech and all parts of the game need to work interchangably. I cannot call a tech tree finished that hasn't been developed along with everything else (especially the map). Here is why: not only is tech a part of being able to use what resources are available are on the map, but it is part of what can be seen on the map as well.

                          I have fully envisioned having a ocean terrain as well as a land one (like in Call To Power 2). But in CTP2, the ocean bottom is seen from the very beginning. Until the tech is available, the player should not be able to see what the ocean bottom looks like (BTW, I hope we plan on implementing an ocean terrain as well as the ability to build under-water cities-- this is the main reason I like CTP over other civ games).
                          "I set the wheels in motion, turn up all the machines, activate the programs, and run behind the scenes.
                          I set the clouds in motion, turn up light and sound, activate the window, and watch the world go round."


                          - from Prime Mover by Rush

                          Comment


                          • #14
                            Re: wrong direction?

                            Hey DJ.

                            I don't know what the issue is, but with that comp it should run a lot faster. We have had some problems with celerons, maybe athalons and Java don't get along well either. How much memory do you have? Does the program hit the disk all the time while its running? Anyway, this conversation should really be in the D7 thread. . . can we move it there?


                            Originally posted by primemover
                            ok... some of this is going in a direction i didn't intend.

                            I'm not talking about RTS full blown 3-d battles at all... as the matter of fact, I am not really considering battles at the moment.
                            glad to hear it.

                            2. For a flat map system, 2-d is perfectly fine.

                            3. The issue that brings up 3-d is with a globe.

                            4. A global coordinate system is based on a dodecahedron (just like a soccer ball).

                            5. Starting with a simple dodecahrdron, the sides can be split into smaller and smaller triangles.

                            6. Where sides come together to a point, you will have a five sided polygon (a pentagon).

                            7. In each triangle that forms a side, the triangle is divided into smaller triangles. These triangles each form a 6-sided polygon (a hexagon). At a relatively low amount of divisions you get a soccerball globe. Smaller and smaller, and you will eventually get something that resembles a perfect sphere (keep in mind on a soccerball, the tiles are rounded so with so few divisions on a map, the world will NOT look like a sphere.

                            8. The reason we would need SOME 3-D rendering is because with a mix of 5 sided and 6 sided polygons, it is not possible (in a way I can think) to know what angle the polygons are going to be oriented (in any standard way) as you move around the globe. So you use 3-D modeling to take care of this problem (beause it takes the ANGLE of the "terrain" object into account when rendering). Units and other such things don't need to be rendered in 3-D necessarily... especially if they are stationary. The only time speed becomes a factor in this type of setup is when someone is scrolling their map.
                            Frankly UGH, I don't like it at all. It sounds like a mind-numbing, bug-prone catastrophe to program. If we MUST go 3D then lets just do it right with continuous coordinates, and a sphere. Polygons of irregular size and shape on a 2d surface is the way we have been going. Those can be superimposed on a globe if necessary. That's where I thought your 3D came in.

                            But anyway this should probably be discussed in the Polygons thread, and also when Gary is around, because he cares a fair amount about this sort of thing, and is in charge of the map coding. Gary has been on sabbatical for quite some time now, and who knows when he will become active again. If its not soon, we'll just have to go on without his input. So I suggest you go ahead and put down your thoughts in the relevant thread, and then we can discuss it.

                            9. I AM NOT talking about a 3-D civ game... at least not in terms of making it like a RTS game.

                            As far as delaying implementation of this type of setup... I have no problems, I just really want it to be in direction we are headed (if its at all possible) I planned on waiting till later to render the globe after we got the basic idea working anyway.
                            Well, I can promise you we'll look into a globe in a serious fashion in the future. That's all I can say at this point for sure.

                            One comment about tech... tech and all parts of the game need to work interchangably. I cannot call a tech tree finished that hasn't been developed along with everything else (especially the map). Here is why: not only is tech a part of being able to use what resources are available are on the map, but it is part of what can be seen on the map as well.
                            Yeah, this is basically where we've been heading also.

                            I have fully envisioned having a ocean terrain as well as a land one (like in Call To Power 2). But in CTP2, the ocean bottom is seen from the very beginning. Until the tech is available, the player should not be able to see what the ocean bottom looks like (BTW, I hope we plan on implementing an ocean terrain as well as the ability to build under-water cities-- this is the main reason I like CTP over other civ games).
                            We had previously decided to cut off the core game with current-ish technology. However there has been some support for farther-future techs. I don't see it as a big issue to make a few changes like the water colonization that you want. Others may object strenously, have to see what people say. Again it would be later rather than sooner that we'd do it if at all, but it seems that doesn't inordinately bother 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


                            • #15
                              Two points:
                              x-y/iterator: Coordinates are fine in a continuum or if all polygons we use (squares now) are regularly placed and have the same size. If we have smaller polygons, polygons inside others (like a city in a square), when I want to list all the polygons to draw the map, I "iterate" on a list, but I cannot iterate on coordinates if one square is indie another one. This is actually implementation details.

                              3D:
                              Why do you want a dodecahedron instead of an icosahedron? Icosahedron is only made of triangles, is as spherical as a dodecahedron can be. Try to purchase a 20-sided die in a RPG store to see what they look like. Icosahedron is way more interesting than dodecahdron because it looks the same from everywhere and you don't have to figure out strange projection angles. Furthermore, you can refine triangles by splitting them in 3 triangles, and all the angles still remain the same.

                              My opinion about sphere is: Is it needed to show the world as a whole (and as a sphere)? If we really want to see all the world, for operational reasons, I'd rather see it all, included the "hidden face", than half of it, with the borders totally fuzzy, thus use a Mercator or other projection, and show a flat map of a non-flat world.
                              To me, what is important about the spherical world is not the rendering but the topology. I hate it on Mercator maps when it takes forever to move from Norway to Quebec. It should be faster than going from Africa to South America, yet the 2D projection has to distort distances (I made a polar projection Earth map in CtP2 to prevent that, but you still have distorsions, so you cannot have a nice north-pole area and a nice southern hemisphere on the same map).
                              So my point of view is: I'd be happy with a spherical map model, and a flat view where we draw the polygons visible from the center of the map. Thus at max zoom, the map would look like a disk, with every border of the map touching the opposite border, and with distance distortion near the edges, but I'd rather have some distortion than a sphere I'd have to rotate everytime I want to compare the size of my Pacific and Atlantic fleets.
                              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

                              Working...
                              X