Announcement

Collapse
No announcement yet.

Openciv3 - design philosophy

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

  • Openciv3 - design philosophy

    Just so we're all on the same train of thought (don't want anyone on another train)
    I open this thread so that anyone who doesn't already know what we're going for knows...
    This is OUR game, it is an origional game. This is NOT a Civ clone, and in no way needs to resemble any prior Civ game. Granted, some things work and we will be using them but for the most part it is ours. I concern myself with play realism and quality. I don't think we need to focus on keeping anythign simple, especially since today's computers are as capable as they are at handling complexity.

    I say all this because I tried to go in a venture with a friend of mine and what turned out was he was changing this and that for this reason or another and the end product was nothing what it was supposed to be. We didn't share a philosophy and there was nothing original about our thing. So let's get our philosophy straight and make sure everyone is on the same page as far as that goes ok?
    He's spreading funk throughout the nations
    And for you he will play
    Electronic Super-Soul vibrations
    He's come to save the day
    - Lenny Kravitz

  • #2
    I agree. Originality, Realism, Complexity are the key ideas, with some reason of course. Also I'd like to notice that in spite of the two latter ideas, it has to remain a Game; playability and gameplay are important, they must not be sacrified for any cool features.
    [This message has been edited by amjayee (edited August 03, 2000).]

    Comment


    • #3
      Ok before i turn in for the night i just wanted to add some thoughts on the state of the game, the status of the team, and the creation of the master plan...

      As i have been thinking things over i have great hope for this game. For a group composed of less than 20 volunteers who have never met and who live on different continants i think we have made a great deal of progress. After having been away from the project for a long time and coming back to see that progress is being made really encourages me. Now i don't know about the rest of you but here is what i see that we need to focus on.

      Addictive replayability: the greatest honor this game could have would be years, perhaps decades down the road this game would still be played by a loyal fan base. If we could achieve that then this would be a stunning achievement.

      Accesability to everybody: this game should be like the best games of all time and be simple enough to start playing almost instantly. The player should be able to get things cooking in less than an hours, but should always be striving to achieve the elusive quest of greatness. A good user interface is of paramount importance. We need to strive for economy of clicks...by this i mean we should try to offer more fun per click than any game out there. If possible every action should be less than five clicks away (three would be even better) if it takes more than five clicks to get from one feature to another then we have a definante problem on our hands.

      Honed to perfection: we should maybe scale down the scope of our project and really focus intensly on only one or two areas at a time and then hone them to perfection. each area of our game should sparkle because of all of the refinement we put into it.

      Unique features: at each and every turn we should try to incorporate things that no other game has but once you play with that feature it becomes a must have. kinda like call waiting...you did just fine before you got it but once it was installed you couldn't live without it. Maybe each and every turn means three unique features maybe it means thirty but we should still try to offer players alternative game play tools that they can't find anywhere else.

      that's what i hope we can do with our game...

      one question, who is still active and what is the status of a demo/alpha build/research model?

      korn469

      Comment


      • #4
        Design Doc

        Many things in our game will be radically different from other Civ games.

        - We will be using a map with hexes in stead of squares.

        - We will not use the pop or the city model of Civ2. We will have a real population, and we will have population on every hex. Therefor we will be using provinces as the basic economic and political entity of the game. The province in our game will be what the city was in Civ2.

        - We will have an entirely new economy model in our game. Not only will people demand goods as consumers, they will also act on their own, via a private sector which works independantly from the player, and can build up industry, trade with other civ, employ workers and much more. The player will actually be hands off in economy questions. But the player will get new things to do. In stead of moving around heads to maximize production the player can make embargoes, tariffs, change the size of the public sector and much more. The player will actally get many of the jobs of the public sector in the real world. The economy model will work like a real economy, which means that an economic recession can emerge if a war starts or the price on oil goes up.

        - We will also implement other new features, such as a disease model, a new and advanced combat model and much more.

        Besides these features we will try to make the game better in many other, more advanced ways. Around the Civ3 Forum there are many posts that describes excelently what we are trying to do.

        One is by Matthew back on September 26 1999:

        quote:


        First of all, what major civ did not start out as a minor civ? At the time the small city of Rome liberated itself from Eutruscan rule around 500 BC I would say that it was a pretty minor entity compared to China, the Persian empire, or even some of the Greek confederations.

        Want realism? Make it possible for a small, insignificant city state to become a major power in 200 years and the greatest economic power in history, up to that point, in another 200. Make it possible for a few tiny cities on a far off continent to revolt from their mother country and then in 150 years time dwarf that mother country in population and industrial might, all without conquering any major population centers. Make it possible for a minor civ confined to an island chain the size of California with few natural resources, still in the iron age when the major powers are for the most part quite industrialized, to in 50 years be able to compete with those industrialized civs militarily (Russo Japanese war, Japanese won), 50 years later conquer half the pacific, get throttled and bombed back into the stone age, and in another 40 years have the 2nd largest economy on earth and be #2 in industrial output, all without (succesfully, anyway) expanding beyond its original borders or skyrocketing in population.

        Actually the story of a minor civ becoming a great power, sometimes even overshadowing older civilizations, is the rule, not the exception. Of course this degree of realism would be hard to impliment, so for practical purposes we should probably content ourselves with the myriad of China type eternal civs that we have gotten so far.



        This was the first sign of the rise and fall of great powers idea. Might I add that it should also be possible for Rome to fall back to nothing just 400 years after being the most powerful civ on the planet.

        Another great post is Raingoons Playing and early build of Civ3 thread from February 3, 2000:

        quote:


        From an early build of Civ 3 -- World News Report (the following popped up when I clicked on a hyperlink in the News Ticker that runs on the bottom of the screen, about half way through the game, note that despite the SC3K-like news ticker, the screen that popped up was similar to the newspaper in Civ 1!):

        quote:

        WASHINGTON D.C.: The Polynesian Ambassador announced that the Hawaiian Security Enhancement Act would encourage separatism in Hawaii, which Polynesia sees as a renegade province.


        Here's what happened. Five turns ago my Foreign Adviser informed me that Hawaii was asking to join with me as a full-fledged American province. The majority of its population shares the same culture (religious affiliation) as mine. This seems to trump the fact that it's geographically closer to Polynesia. Also I'm a much freer society than Polynesia. My problem is that, while I have more energy stockpiled and production resources available, Polynesia has a greater population and currently more military might. So I answered by negotiating a secret treaty with Hawaii that I labeled "The Hawaiian Security Enhancement Act" whereby I agreed to protect it from attack, but fell short of annexation and declaring war on the Empire of Polynesia. This allowed me to test how much Polynesia respected American military/economic might. Apparently they do respect my strength, or their amabassador's announcement would've been more threatening. He didn't say they wouldn't declare war, however, if I go all the way and do what Hawaii is asking me to do. Clearly, if I move my First Pacific Fleet into position to defend Hawaii (1 battleship, 1 sub, 2 destroyers), I had better be prepared for some fancy diplomacy, or else some or all of my fleet is going to have to lean into the strike zone and take one for the team.

        So that's an example of a diplomatic event unfolding half way through Civ 3. Here's another report that popped up from the World News Report ticker ten turns later in the same game, this time regarding a military event I had precipitated the turn before:


        quote:

        MOSCOW, THE UNITED NATIONS: The French Ambassador demanded the French tanker boarded by American naval forces in the Gulf of Mexico be released immediately. The Americans, acting as part of a multinational force, boarded the French ship in the Gulf of Mexico because it suspected the ship was smuggling Mexican uranium, violating a United Nations trade embargo against Mexico. The French Ambassador denied that the tanker was carrying Mexican uranium. Developing.


        Okay, so the tanker wasn't carrying anything. I have the choice of revealing what I found on the tanker to the High Council, or I can lie and say it was uranium. Which will piss off France,
        causing them to drop out of the coalition I put together for a trade embargo against the dreaded Mexicans. But if I let France get away with cheating -- and why else would the French send an empty tanker to Mexico but to pick up some of its overflowing supply of uranium? -- then I'm letting France have it both ways and the embargo is a joke.

        It's possible to go back to The Negotiating Table and arrange a "food-for-uranium" treaty between France and Mexico, whereby both parties agree to minimal trade amounting to humanitarian aid for the Mexicans, who have a very low food supply. But until I have an intelligence network established in Mexico, I've no way of knowing whether the French are giving them food or tanks, unless I board another French ship. And that'll REALLY piss them off...

        Alright, this is all a bunch of mad ravings on my part. But today I thought it would be fun to suggest ideas to the Civ 3 design team by actually, well, playing the game a little. So to speak. I tried to include a lot of the ideas -- like the detailed News Ticker, the ability to negotiate very detailed treaties and label them yourself, and the ability to reference specific events by their geography (i.e., "...which happened in the Gulf of Mexico" or "near the Boseephus Mountains.").



        If we manage to make a game situation like the one described here possible, we will know that we have truly succeeded!

        The last of the great post I can think of at the moment is a really old post from the time I first became a Civ3 poster. It was propably from the Firaxis forum, so it is lost now. But the guy who posted it describes how he want a REASON to do things. In Civ2 there are no real reason to go to war. Not apart from getting more cities. But when looking at history that is not so at all. We have got to give people a reason to go to war. Imagine having the technology to start the industrial revolution, but you don't have any coal. And unfortunately noone wants to sell it to you. You would be forced to attack someone simply to get their coal. Imagine another scenario where the nobility suddently DEMAND that you go to war with another civ. Either you obey them and go to war, or you send your civ into a civil war.

        The 3 essential features for our game should be economy, domestic politics and international diplomacy. The other features, like population, are not really anything by themselves, but will support these by adding realism and gameplay. Perhabs economy could also be described as a tool rather than a feature. But then it would certaintly be the most important tool.


        Korn,

        The current members, as far as I know, are:

        Designers:
        Amjayee, Guildmaster, Victor Galis (although he is a bit inactive right not), Heardie, you and me. Many more have posted ideas for us, including S.Kroeze, Maniac and Phunny Pharmer. But these are the current active members.

        Programmers:
        Dan Ward, Vetlegion and Amjayee.

        Webmasters:
        Heardie and ElmoTheElk.

        I do not really know about the state of the alpha version. I guess that since we have agreed on no design (sort of) it would be hard to create an alpha version.

        But when this is said I think that we should get some work done in the map section. All we need right now is a way to store map hexes, and from what I know we're really close to that. So let's get it done and start focusing on the tricky parts: pop and economy!

        ------------------
        "It is only when we have lost everything
        that we are free to do anything."
        - Fight Club
        "It is not enough to be alive. Sunshine, freedom and a little flower you have got to have."
        - Hans Christian Andersen

        GGS Website

        Comment


        • #5
          Joker's list sounded quite exhaustive. If we make that happen, we already have a unique, great game; if we manage to implement also most of the other ideas presemted in these forums, our game will kick ass. About alpha status, programming things are a little quiet, but things are proceeding.It makes no harm if we get a little further in our design tasks before trying to make a alpha version. I think we have quite good possibilities of having the first alpha until next spring. But let's see what happens.

          What we will be doing in near future; since we haven't heard of Jacob, we have to assume he has left our team. He was responsible for the UI of the game, which is the most basic part of the program,so we need to take care of that before proceeding. He managed to produce some code before leaving, though, so we are not completely empty-handed. So; our intention is to make the UI working, then attach the final map into it, then create the population, disease and disaster systems, and make a "world" where people born and die quite like in the final game. After that, we would start adding economics and politics. But before the alpha version,we would propably make some prototypes of the basic models, so we cat test them. This autumn I will be mostly busy with the programming tasks, but I will try to take part to the design discussion as much as I can.

          Comment


          • #6
            My list, especcially Raingoon's game, was of cause meant as a goal that we could work against. But it is all far into the future. We should not worry about getting the game close to these ideas at the moment.

            Also, here is the list Raingoon made to show what game features were required to make his fictional game possible:

            quote:


            1. Regional provinces within civs. That's doable. The AI can simply consider provinces as having complete alliances. There just has to be a decision as to what defines them -- be it the player, geographical features, cultural similarities, or, most likely of all, distance from capital city. After cities reach a certain distance from your capital city the next city built is a "provincial capitol," and so forth.

            2. Citizens having a cultural or religious "brand" as opposed to being generic. See the Religion thread.

            3. Civil war/breakaway provinces. This was accomplished in Civ 1. Surely it can be done with some sophistication in Civ 3.

            4. Secret treaties? Please. If not this, than I quit. See Harel's master diplomacy list.

            5. Labeling treaties with my own names. Ibid.

            6. Grouping units into "fleets" and labeling them, or "armies" and labeling them. Is this too much to ask?

            7. A cargo ship carrying uranium. See my Energy Barrels thread. Suffice to say cargo ships are next-generation transports. Not a problem.

            8. Seizure of cargo ships. Diplomats currently have multiple options when moving against certain unit types. Thanks to Firaxis for giving naval units a multiple option "attack/seize" against cargo ships.

            9. Labeling geographical features -- like Gulfs. They did it in Conquest of the World, Firaxis surely can outdo anything we've seen before. See my post above.

            10. Multi-national forces. Also known as multiple alliances. See Harel's diplomacy options.

            11. Trade Embargo. Ibid advanced diplomacy options.

            12. UN High Council. See SMAC already.

            13. The "World News Ticker" a la SimCity 3000. Last I heard this was being debated over at Firaxis already.



            Several of these features are ones that we are working towards already!

            ------------------
            "It is only when we have lost everything
            that we are free to do anything."
            - Fight Club
            "It is not enough to be alive. Sunshine, freedom and a little flower you have got to have."
            - Hans Christian Andersen

            GGS Website

            Comment


            • #7
              Forgive my unsocilited advice, but sometimes I just have to comment. I can't help it, it's my nature

              quote:


              it could take a very long time for it to get to 1.0 status,



              You have no idea Here's the rule (and I didn't make this up, this is an actual programming idiom). Come up with a time frame. Make it your worst case scenario for how long you think it will take to program the whole thing. Now double it. Then make that your best case. You probably won't even make that. You think I'm kidding. No, I'm actually very serious (MD has now taken about 2.5x the amount of time we originally thought it would, and we're still not done) . I don't mean to be discouraging. Just getting you prepared for what you're getting into, heh.

              quote:


              however we might be suprised at the development times (who knows maybe like 1000 of the best programers ever will take some time off and help speed this up a little ) however if we do not know where we are going not only will we probably never get there we wouldn't know it even if we did pass it up



              I think you guys are doing quite well at this point. You have the outline of what you want pretty well set up. IOW, you about have enough of a design doc put together to start thinking about object design.

              You may know this already, but just in case you don't, I'm going to say it. Use Object Oriented techniques to do your game. With a game as complex as you are designing, if you try to do it with the old style procedural programming, I can pretty much guarantee you are going to fail, and I don't want to see that happen (I'm pulling for you guys!). MD was originally programmed procedurally, but as time went on (and I became a better programmer) it has gradually shifted to objects, and is now almost entirely OO based. What few procedural style routines we have left I'm now working on integrating into the existing classes (or creating new objects for them). This is one of the reasons MD has taken longer than expected. We lost tons of time just in debugging when it was procedural based. Trust me, it was turning into a nightmare to debug and maintain (and *forget* trying to add new stuff), and it was not nearly as advanced as it is now. We'd never have gotten this far without using OOP.

              If you use OO style programming, everything will remain relatively easy. This is especially good for a game designed across the internet, because someone can design and implement an object without having to worry about how they will affect other's routines. An object's internal implementation should only affect that object, unless there is a specific reason for it to affect another object (in which case this will be obvious from the design doc. For example, if the player orders a stack of units to split, this is probably a command to the stack object(Stack[i].Split(...)), but will affect the unit objects in that stack as well (presumably each unit object will have some sort of internal representation of what stack it belongs to, and the stack object function Split() will need to modify these variables).

              Another great thing about OOP, you can start implementation almost right away, which will give you a much needed sense of progress. Come up with a couple of easy and obvious objects to start on. The UI objects are often good to start with. You probably ought to make each major screen it's own object. They will generally be a class with one instance (a single object class). Then think about what this object needs to be able to do. For a UI, you will have lots of public UpdateDisplay() routines. Keep all implementation details in the Private section! You only want to expose those routines to the client that make sense for the object itself. For instance, a client of your main screen object would probably want to be able to call UpdateMap(), but wouldn't care about CalculateMapCoordinates(), so the latter should be Private. (BTW, the client for the MainScreen object will probably be your WinMain() function itself, or Main() if your in DOS, or whatever the main loop is called in other OS's).

              From there, you will notice your UI objects are very dependent on other objects. For instance, if your main screen has stats that need to come up if the user clicks on a stack of units, you will find you need to create a new class for stacks. And perhaps another for individual units. A stack object will need to be able to display itself on the map, have orders, move, show it's stats (ie pass them to the UI object, who's job it is to display them), etc. Hopefully you get the idea.

              Don't be afraid to experiment with objects. Just keep in mind, bad objects do not break good ones (that's another great advantage of OOP). Try to keep your object interfaces (the Public functions and variables)simple and to the point, so a client of that object can navigate it very easily. If you have more than ten or twelve public functions in a class, your design probably needs to be broken down into two or more new classes (not always, but very often).

              You probably knew all that already

              Ron
              Manifest Destiny - The Race For World Domination
              -Playable Alpha now available!
              http://www.rjcyberware.com

              Comment


              • #8
                ok for some amazing reason we all seem to be fairly close to a consensus on what we want to work on but i do think that it would be a good idea for us to come together and make a feature list and give each feature a priority

                i think that this feature list should include everything we hope to include into the final game, this would help us in giving us a clear set of objectives that we could work on. we will know that we have guns, germs, and steel: tools of conquest version 1.0 when everything on the feature list has a check beside of it. (a check means its implemented, working and at least fairly balanced)

                it could take a very long time for it to get to 1.0 status, however we might be suprised at the development times (who knows maybe like 1000 of the best programers ever will take some time off and help speed this up a little ) however if we do not know where we are going not only will we probably never get there we wouldn't know it even if we did pass it up

                also if at a later date we come to a consenus that we need to change our goals and assign new priorities we can, i'm not saying that we should totally develop this rigid structure that we can't escape from i am just saying that i am positive that a list of clearly defined objectives would help us out

                plus a feature set would be easier to use to increase awareness of our game and to give us some publicity

                i mean if you had just heard of this game today and you wanted to find out more about what this game project had to offer in a simple quick way you would be disapointed

                hmmm maybe markG would give us a sticky thread in this forum for our game and we could use it to promote our game and to keep everyone informed of important news

                a design thesis (mission statement), a feature set with their status (anyone know how to make tables, it's been a while since i have) and a FAQ section would make it very easy for new comers to quickly get up to speed on the game, and i think that most people when they find out where we going with this will want to participate

                raingoon's feature list looks like a good place to start

                korn469

                Comment


                • #9
                  That sounds quite reasonable, Korn.

                  BTW: Wouldn't it make sence for us to get a website? I mean, not any sourceforge.net/source/guns.html, but a real website - www.gunsgermsandsteel.com! It would help us promote the game, and add some look of professionality and seriousity to our project.

                  ------------------
                  "It is only when we have lost everything
                  that we are free to do anything."
                  - Fight Club
                  "It is not enough to be alive. Sunshine, freedom and a little flower you have got to have."
                  - Hans Christian Andersen

                  GGS Website

                  Comment


                  • #10
                    ok here is what i have came up with for creating a feature list.

                    we should create some broad topic headings like economy for example and then add in the features we want to see under that heading

                    the next person should just copy+paste the list and add in what features they want...after we all do this for a while we should get everything we want...if we disagree with a posted feature lets talk it over and reach a consenus then move on

                    ok i'll take what raingoon had and try to set it up into a workable form
                    • Diplomacy
                    • Secret treaties
                    • Allowing the player to name treaties.
                    • Seizure of cargo ships. Naval units have multiple option including "board and capture" and "blockade port".
                    • Trade Embargos.
                    • UN High Council.

                    • Economy
                    • A cargo ship carrying uranium. Suffice to say cargo ships are next-generation transports.

                    • Government
                    • Regional provinces within civs. The AI can simply consider provinces as having complete alliances. There just has to be a decision as to what defines them -- be it the player, geographical features, cultural similarities, or, most likely of all, distance from capital city. After cities reach a certain distance from your capital city the next city built is a "provincial capitol," and so forth.

                    • Military
                    • Grouping units into "fleets" and labeling them, or "armies" and labeling them.
                    • Multi-national forces. Also known as multiple alliances.

                    • Population
                    • Citizens having a cultural or religious "brand" as opposed to being generic.

                    • Rise and fall
                    • Civil wars/breakaway provinces.

                    • User Interface
                    • Labeling geographical features -- like Gulfs.
                    • The "World News Ticker" a la SimCity 3000.


                    these are just the begining meaning we can change them but i think we needed an example. as always more to come later...

                    korn469
                    [This message has been edited by korn469 (edited August 31, 2000).]

                    Comment


                    • #11
                      Korn:

                      I agree with all of those features. Many of them are ones that we already are thinking about how to implement.

                      Diplomacy:
                      This is all great. I think that we should just use Harel's Master Diplomacy list for the diplomatic options we should have in the game - it includes virtually everything we could imagine. But first I must say that I don't think we should spend too much time on diplomacy right now. It is great to have it as a goal, but right now we should focus on getting the basics - map, population and economy - settled, and then add diplomacy as an add on. Second I don't really think the difficult thing about diplomacy has to do with making the different features possible. What is difficult is getting an AI that understands and works with these features. And that will propably prove to be a really tricky job!

                      Economy:
                      Well, I don't think we should have caravans such as in the ancient civ games. If we are to have loads of trade routes caravans moving around would be a pain. In stead there would be an economy map, in which you could see all trade routes, and then you could make blockades with your units to stop them. That would not only make sence, it would also require less micromanagement.

                      Government:
                      Well, we have that already. We have actually decided to replace cities with regions. Since there should be population on all sqares the city concept would not work. We will still have cities, of cause, but the province will be the basic economic and political entity.

                      Military:
                      The first one we have already. The second one is something we are going to have eventually. So basically I agree on this one.

                      Population:
                      We have that too!

                      Rise and fall:
                      Ditto.

                      User Interface:
                      We haven't really discussed this. But I agree. I don't really think those 2 features would be hard to implement. We need a killer interface, or all the features we want for the game will be pointless. Let's hope some interface guru helps us out when we get to that point!


                      Ron:

                      Thanks a lot for your advice! It is great that you help us out.

                      About the object oriented techniques, I am not a programmer, so I don't really know what it means. Should I, as a designer, do anything different to make that object oriented technique possible? Or is it just something for the programmers to know?

                      ------------------
                      "It is only when we have lost everything
                      that we are free to do anything."
                      - Fight Club
                      "It is not enough to be alive. Sunshine, freedom and a little flower you have got to have."
                      - Hans Christian Andersen

                      GGS Website

                      Comment


                      • #12
                        Ron: Thanks for your advice. OC3 has been object-oriented straight from the beginning; we are C++ guys after all! Plus, we have (or have had) several professional programmers, who have given us mostly the same advice you did, and more; this means that you have learned from your experience just the right things!

                        Designers don't need to care about OOP. It just means that program components related to each other are encapsulated into objects, thus making the code more simple, portable, more understandable for outsiders, more elegant, robust, beautiful and all the other good things you can imagine. So, you only need to know that OOP kicks ass seriously, and that it is a miracle why it is not used even more widely than this. That's also partly the reason why I have tried to collect the game features under clear categories, and find out the connections between the different categories. The better the design documentation is organized, the easier it will be for programmers to use.

                        I agree the feature list is important. That's what I have been trying to do for a long time. I will think about the Korn's list and make my own suggestions later. This weekend I'm away.
                        [This message has been edited by amjayee (edited September 01, 2000).]

                        Comment


                        • #13
                          I agree that we need a list of features. Somewhat like the ('official') Civ3 list of features. That would be the next step to do right now, right?

                          Comment


                          • #14
                            Ron thanks for the imput...even though you are not an active participant any advice or commentary is welcome, maybe one single suggestion about actually implementing an idea could save us literally hundred of VERY valuable programming hours, and i'm glad that you are pulling for us, thanks!

                            btw i haven't played the newest version of MD yet but i did download and mess around with the version before that, i spent most of my time playing with the map

                            ok but now on to some ideas i've had...

                            ok about the feature list here is what i have been thinking...

                            besides being just a feature list i had an idea

                            i think that we should turn the feature list into a design outline

                            here is how it would work...

                            first thing we turn it into in interactive document

                            we start out with the main headings, economy, diplomacy, ect.

                            beside of each of those we have a status bar on them

                            if we click on those headings it would open up a list of all of the subheadings...also each of the subheading would have a status bar on them too, some of the subheadings would be just one feature, but for the most part each subheading would be composed of a number of features that are closely related

                            when you clicked on a feature it would pull up a little definition of the feature...for example the feature might be a sentance and it's definition would maybe be a paragraph or two...the definition would be basically a summary of the discussion of the feature and what it is supposed to do. this definition should just describe what we hope to accomplish with the feature.

                            i feel that we need to include the definition for two reasons...one is attracting new participants...the other is so we all know exactly how that feature should work when we implement it

                            then there would be one last level...that would be the gameplay definition of the feature where we would put in formulas (if needed) and describe exactly how the feature would work, how it would interact with the other features, what it could or could not do

                            the gameplay definition would be basically about defining the object for the programers to place into the game...amjayee since you have some experiance with programming and you are one of the designers also maybe you could help us come up with a proceedure of exactly how we need to write up this definition

                            the gameplay definition should be for the programmers, and should help make it easier on them...we should also create a programming style sheet, where we define exactly how we program this game...we could let others look over it to see if we are doing it in the most efficent manner, but this game should be open source to the core...every aspect of this game should be open so anyone could "pop the hood and take a look"

                            my ultimate goal would be for somebody with programming experiance to find out about this game take a look at our feature list, get interested in our game, and start thinking, hmmmm i wonder if i could help out here...they read over the programming style sheet and then look at the gameplay definition of one of the features that sounded good and program it, then submit it, all without ever talking to anyone about it

                            i'm not sure if OOP is that good yet, but that is my goal for the implementation of this game

                            even if new programmers couldn't put in secret treaties for example without ever talking to us, we should hopefully be able to have the programmers who are already working with us look at the gameplay definition and know exactly what is needed, and be able to get it done without having to question people about what this two word vague request means...

                            our number one design goal should be that after we decide on how something is going to get implemented that we are all on the same page!

                            until we make a final decision on how something is going to get implemented i say lets debate it till we all brainstorm every single idea we can think of and see which one of those ideas would work best for our game...and hey we can still change ideas after we decide on how we are going to implement them

                            my main concern about this game is that we are a group of people who in all likelyhood will never meet. we may disagree over certain topics and have to come up with a few different ways of implementing that idea and see which way works best, but and i want to stress this...
                            miscommunication is one of the greatest dangers for the success of this project

                            i feel that miscommunication could waste lots of programming time, that miscommunication could cause animosity in our group, that miscommunication could definantly cause frustration, and that if unchecked that miscommunication could possibly destroy the entire project!

                            so at this stage we must take every step to prevent miscommunication before it even starts (and if i didn't spell miscommunication right please forgive me )

                            as always all comments are welcome

                            korn469

                            p.s. hmmm i wonder if the term Object Oriented Design has been copyrighted yet

                            p.p.s. hi elmo! nice to meet you

                            Comment


                            • #15
                              Amjayee:
                              Cool!

                              Elmo:
                              Great that you're back!

                              Korn:
                              Again I agree with all that. But I think the design doc you described wouldn't be possible to make untill all the design has been completed. And that will take long. Plus, not all features can be described in just a few sentences. Describing the economy feature "demand", for instance, good enough for the programmers to just go ahead and program it, would take several pages in word.

                              But still, such a design doc would rock!

                              ------------------
                              "It is only when we have lost everything
                              that we are free to do anything."
                              - Fight Club
                              "It is not enough to be alive. Sunshine, freedom and a little flower you have got to have."
                              - Hans Christian Andersen

                              GGS Website

                              Comment

                              Working...
                              X