1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

New resource system, unit attrition and more

Discussion in 'Civ4 - Creation & Customization' started by NikG, Apr 19, 2006.

  1. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Read the bottom of this post, to get new updates about ideas, work etc.

    Right now I am beginning to get a really good grasp on the SDK, at first it really looks messy, but now (after approx. 20 hours of work) the SDK don’t seem that difficult.
    And oh my …. The SDK allows for massive changes, uooohhhh I like it.

    My first intention is to change more or less the resource system, because it is very simplistic right now, mainly inspired by a thread name supply and demand, and also modelling the importance of oil in our modern societies.

    For example, it is unrealistic that 1 luxury resource will make 10 population points equally happy as 1 population point.

    And it is also unrealistic that 1 resource of oil give the ability to field an (theoretically) infinite army of panzers. If the Germans under the second world war didn’t have the oil shortage it the late months of the war the war could have lasted longer. Etc.

    Oil in our modern societies is so important that any else have ever been (of course there is exceptions, but without oil we don’t have cars, could you imagine a car which run on coal?)

    Anyway what do you all think?

    I have a few question about the design (if anyone is interested):

    • Should units have a base oil cost which is deducted from the “oil treasury” each turn
    • Should the oil only be deducted if the unit moves
    • A combination
    • Should units disband if there aint enough oil
    • Should they just be unable to move… etc.

    The AI will be no problem to understand this, it just needs a bit refinement.

    Come with more, I am really excited about the possibilities, because they are nearly infinite.


    (Lastest) Update to clarify the ideas right now, I have:

    An oil treasury like the gold treasury, we have right now.
    The oil bonus resource, will give oil units and each turn , and it will be put into the oil treasury. For example if you have 3 oil wells which yield 100 oil/turn each, you get 300 oil units each turn.
    Each unit have a oil capacity and an OilCostPerMovementPoint.
    Each movement point costs OilCostPerMovementPoint which is deducted from its oil capacity.
    Each turn every unit which needs oil will automatically get oil, which will be added to the oil capacity of the unit. Depending on various factors, such as the distance from the borders of the units owner, in enemy territory etc., the amount which will be added vary.
    If a unit runs out of oil, because of the owner runs about of oil in the oil treasury or the unit get so deep into enemy territory that the amount it get is 0, the units will only be able to move 1 point at a time, and the units combat score is reduced to half.


    Local pools is added. However there is no really such thing as supply lines (which everyone seems to be very intrested in), everything is handled behind the screens, but yes it adds a new thing to check, but not more than you check the hitpoints status of a unit. Like you don't attack with an unit with low hitpoints, unless it is really needed or very beneficial, you shouldn't move an unit to far away into enemy territory or whatever. It should not be something to consider when at peace or moving within own territory, unless you are stupid enough to loss your oil wells.
     
  2. woodelf

    woodelf Bard

    Joined:
    Jun 12, 2003
    Messages:
    15,036
    Location:
    Gallery
    The consumable resource pool is something that has always been needed in this series. I don't think units should get disbanded if there is no oil and it should be used only if they move if possible.

    Also, what about iron, copper, ect? Will you do the same with them? Should 1 iron resource last all game and build hundreds of units? What about concentrations of veins?
     
  3. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Concentration of various resource can be added, but as a true programmer, you first make it work and the add all the nice stuff (which varying concentration of resource really is :) )
    Anyway oil is the first and foremost important of them all, so that will be added as the first. My thought was original making all resources consumer able, then again it maybe overkill. Maybe iron because it is very important, and has been, way through history, but something like cobber is important now in computer etc., but there is really no shortage.
    But I think making that only if they move oil will be deducted. BUT should something as a power plant also cost something? And what about the just having a modern civ requires oil? Making a calculation on economics and population size and then deduct this also? What do you think?
     
  4. Chalid

    Chalid Black Dragon

    Joined:
    Nov 24, 2005
    Messages:
    1,742
    Location:
    Munich, Germany
    Actually Yes it was done during WWII in Germany. Not coal exactly but with some chemical processes they generated fuel out of coal.
     
  5. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    No they made synthetic oil out of coal, which by the way is extremely expensive, and whatever they did it has nothing to do with this so please give me something constructive to work with.
     
  6. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Okay just read the first words of you post, we agree, but it is expensive and not worthwhile, unless you really need it. But please come with ideas I can work with.
     
  7. The Great Apple

    The Great Apple Big Cheese

    Joined:
    Mar 24, 2002
    Messages:
    3,361
    Location:
    Oxford, England
    I presume you are thinking that every resource will have a certain extraction rate and it will be added to the global pool when it is extracted, right?

    IMO, oil should be required for a modern day unit (non-nuclear) to move. Each movement point used up should use 1 point of oil. When a unit runs of out of oil it should lose all it's movement points, and it's combat value should be halved.

    Supply lines could be incorperated by giving each unit a certain fuel capacity, which is automatically topped-up fully from the global pool if they are in friendly/neutral land, but is topped up at a lesser rate based on possible supply lines if they are in enemy lines.

    As for other resources, I think you could just make it so that the resource is removed from the global pool when the unit is built, and maybe some removed when it repairs.
     
  8. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Okay nice ideas great apple. The only problem I see with the supply lines is if a unit get stuck inside unfriendly land, the we should add a supply unit, which my complicate the entire game, and increase micromanagement, but I will look into it. Thanks.
     
  9. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Anyway I just add a global pool, no local unit pool yet, will be easy to implement when the main functions work as they should.
     
  10. The Great Apple

    The Great Apple Big Cheese

    Joined:
    Mar 24, 2002
    Messages:
    3,361
    Location:
    Oxford, England
    If a unit get's stuck in unfriendly land then surely it should run out of fuel? The algorithm shouldn't make it that easy to get stuck - the rate of refueling should be based on the distance to the nearest border, avoiding enemy units/cities.

    I was thinking supply lines would be passive and internal. Supply units would just overcomplicate things.
     
  11. Chalid

    Chalid Black Dragon

    Joined:
    Nov 24, 2005
    Messages:
    1,742
    Location:
    Munich, Germany
    When oil is used up per movement point this very much increases micromanagement. I'd make it like someone else (http://forums.civfanatics.com/showpost.php?p=3931370&postcount=5) has proposed and give a negative modifier to all units using oil, based on the amount of available and used oil.

    A option should be added to temporary retire Units. Those loose their ability to move, and their combat strength for the next turns but do not count to the oil consumtion.

    EDIT: Added Quote
     
  12. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Great Apple -> True enough, making it a passiv thing is nice, and I see some potential
    And Chalid -> can see the point, however I think it will overcomplicate things, so I am think merge yours and Great Apple ideas, into something like this:

    First and foremost there will be no local unit pools, but I like the idea and will implement it. So when a unit runs out of oil, it can move only 1 point, and not attack, and a unit is resupplied slowy, based how long there is to the nearst city. So a unit close to own borders is quickly resupply and a unit a long way from home is very slowly resupplied. This gives combat a whole new aspect.

    More ideas please... Not only about units and attrition, but also other resources etc.
     
  13. Jouda

    Jouda .

    Joined:
    Jul 10, 2005
    Messages:
    101
    Location:
    Prague, Czech Republic
    I don't think that the system proposed by NikG will increase micromanagement. Your only business would be to take care that you don't run out of fuel and to be connected to the supply chain (despite i can not tell you yet how a good supply chain model could work).
     
  14. Jouda

    Jouda .

    Joined:
    Jul 10, 2005
    Messages:
    101
    Location:
    Prague, Czech Republic
    My only concern is that AI won't know how to use the whole refuelling thing so that their units will get stuck in the enemy territory when leaving supply lines.
     
  15. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    Both yes and no...
    Really the AI needs a bit tweaking, but overall, it wouldnt be a problem for the AI.
     
  16. pap1723

    pap1723 Chieftain

    Joined:
    Apr 19, 2001
    Messages:
    507
    Location:
    Chicago, IL
    I absolutely LOVE the idea. The major drawback I see is that not every country in the world has access to oil, yet almost every country in the world uses oil in some capacity. How will you get the trading of oil to work now? Say I am America and I need oil from Saudi Arabia, I am willing to trade them gold per turn for their oil. Can you make it so that the oil is traded similar to gold per turn trading?

    -----
    Example:
    America gives:
    (100) Gold Per Turn

    Saudi Arabia gives:
    (50) Oil Per Turn

    Essentially saying that Oil costs 2 gold per turn.
    -----

    It would make it important for nations to be VERY friendly to nations with a lot of oil to get better prices and to ensure the flow of oil. It could also start more wars over oil (like most of nowadays wars).

    The major problem I see is figuring out numbers and how much each resource should convert to the overall pool, and how much it deteriorates by each turn, etc, etc
     
  17. Watiggi

    Watiggi Chieftain

    Joined:
    Feb 27, 2006
    Messages:
    2,107
    OK. First of all, I have only skim read these posts. If I am repeating someone elses comments, I appoligise.

    Why not have it so that a resources make x number of units period. If you have 2 lots of the resources, you can build 2 times the amount. Once the amout is made, that's it. More of the resource would be needed in order to make more.

    I haven't really given it much thought though. I just thought I would jot the idea down and you can do what you want with it. Problems like the AI being able to handle the extra competition, etc immediately come to mind.

    Watiggi
     
  18. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    First Watiggi -> I have thought on that to, but that is only some extension of how the system works now, and much more easier to implement, I don't fell that this is realistic. Well I am going for more realism, but not realism over playablity, and in the real world you could make 1000 panzers without much oil (only to the machinery). If you dont have much only, the panzers cannot move far, but they are still (some sort of) able to use their guns, and you can continue to make more as long as you have the needed iron.
    Whatever, I dismissed that idea, because it was to simplistic, and the current system (as yours) dont favor either defender or attacker. In this system the attack have a disadvantage, becuase when he moves his units it costs oil, and without enough oil... Back luck
    Hope it did any meaning :)


    Onto pap1723 ->
    That is actually what I have in mind, threating oil just like gold. However I have not explored the possiblity for diplomacy changes, and it might be possible or it might not. If not, then it is to bad, and the then current system will just be used.
     
  19. Padmewan

    Padmewan Chieftain

    Joined:
    Nov 26, 2003
    Messages:
    748
    Location:
    Planet
    I would second pap1723's version of this, which is essentially that we use certain resources as currency. (If you think about it, gold supposedly in the game as both a resource and a currency, but not connected).

    Tanks could use up 1 oil maintenance just as generic units use up 1 gold maintenance. (It would be important for civic choices NOT to affect this, unless Environmentalism reduced oil maintenance or something like that).

    Given that such mechanisms are already in the game, this would probably be a lot easier to implement, model, and have the AI "understand" than more radical changes like supply lines. To truly model this, I think you would have to treat each of these resources as a "yield," like food, hammers, commerce. This would also provide you with the concept of a "proven reserve," which I might model as follows:

    Terrain: Desert
    Improvement: Oil Well
    Yield: 0 food, 0 hammer, 1 commerce, 10 oil

    To borrow a concept from my "strip mine" mod (forthcoming :) ), the Oil Well behaves like a reverse cottage: it "upgrades" to 8 oil, 6 oil, 4 oil, etc. To prevent exploitation of this (pillage the well and rebuild it), (a) when pillaged, the well goes UP (down in value), and (b) the first time you build the well, you "terraform" the tile into a tile on which you CAN'T build more wells. This is a hack, of course; I'm sure using the SDK or even just Python you can simply keep a variable on each tile that tells you how "old" each well is so you can set the correct amount when you rebuild after a pillage.

    (I don't know if the AI stops working farms and mines and works cottages when it runs low on cash; I think it only pulls down the research slider. Maybe there could be an "oil" slider too).

    I might pull together developments from these two threads: Supply and Demand for Luxuries and 4th yield: magic for ideas.

    Now the real question is: If properly modeled can we start using Civ4 for educational purposes?
     
  20. NikG

    NikG SDK Lover

    Joined:
    Nov 30, 2005
    Messages:
    170
    Location:
    Glorious state of Denmark
    It should be noted that this is intended as a major overhaul. Already I have implemented the main function for the above oil using units. Now it only details left, ie. how the algorithm for resupplying units should work (okay it is not details, but when this is finished, it will be close to functioning)
     

Share This Page