Page 1 of 2 12 LastLast
  1. Click here to go to the next staff post in this thread. #1

    Default Elite: Dangerous - Background Simulation

    GOALS
    The goals of the background simulation are as follows:
    • Politics
      • Create a dynamic, evolving galaxy
      • Generate interesting events
      • These can then be used to create missions
      • Respond to player activities
      • Player activities should have greater impact
      • Respond to injected events
      • Respond to generated events (chain effect)
    • Economy
      • Create a dynamic economy
      • Populate markets (quantities and prices)
      • Be relatively predictable (to aid player understanding)
      • Generate interesting events
      • These events can be used to create missions
      • Respond to player activities
      • Player activities should have greater impact
      • Respond to injected events
      • Respond to generated effects (chain effects)


    The requirements for both the political and economic simulations are similar, potentially similar enough that they can be driven by the same system, which is something we will explore with this design
    The simulation also provides data for NPC traffic generation, modified by local conditions.

    From a technical perspective the following goals are also required:
    • Low overhead for processing
    • Low overhead for data storage
    • Low data access requirements


    WHAT THE SIMULATION IS NOT
    • It does not provide faction command; this will be done by designers by injecting events.
      • Although the system should provide aggregated data to help guide these events.
    • It does not provide a fine detailed simulation of human space in the galaxy.
      • Note that it does provide the framework for a living galaxy as required in the goals.


    WHAT DEFINES A SIMULATION ENTITY
    A simulation entity is the lowest unit to which the simulation applies, this will typically mean a system or a world within a system. Note that an entity can support multiple markets.

    A system can include multiple entities

    New entities can be added or destroyed at any time via events.
    All of the simulation needs to be instrumented, so that we can track such events and override them if appropriate.

    An entity has a number of variables. Each of those variables defines what events the simulation creates.
    • Government type
      • The government type is one of a list of predetermined types. The types apply a range of modifiers to the base values for system. For example communism, or democracy.
      • Government types provide inherent modifiers for issues like corruption and distribution of wealth..
      • The list of government types is listed below:
        • None (There is not a significant population to require governance)
        • Anarchy
        • Corporate State
        • Religious Cult
        • Independent Democracy
        • Federal Democracy (ie Federal State)
        • Theocratic Dictatorship
        • Autocratic Dictatorship
        • Communist Dictatorship
        • Feudal
        • Imperial Colony
        • Imperial Protectorate
    • State
      • The entity’s state applies special modifiers, depending on the state.
      • Changes in state are created via events – usually injected events.
      • An entity’s state will sometimes modify events and associated missions that are generated.
      • This needs to be data-driven and the list below is non-exhaustive
      • We may want the extreme category to be only triggered by human moderation
      • A list of states and their effects are shown below (the magnitude of the effects can be varied on a case by case basis):
        • Peace – this is the default state, there are no modifiers.
        • Economy (Positive) – there has been an upsurge in the economy
          • Has a positive effect on Standard of Living, Production and Wealth
        • Economy (Negative) – there is a downturn in the economy
          • Has a negative effect on Production, Standard of Living and Wealth
        • Unrest – this state indicates internal conflict with no other named entity involvement
          • Has a negative effect on Standard of Living, Security and Wealth
        • Civil war – this state indicates internal civil war without an external named entity (note that civil war with named entities is simply a war)
          • Has a negative effect on Standard of Living, Security and Wealth
          • Development level is frozen while in civil war.
        • Threat of War – Entities prepare for a possible conflict with other entities
          • Markets require weapons and medical items even if not normally stocked
        • War – the entity is at war with another entity
          • Has a negative effect on Standard of Living, Security and Wealth
          • Markets require weapons and medical items even if not normally stocked
        • War (Losing) – Entity is losing a war against another entity
          • Has a negative effect on Standard of Living, Security, Population, Development Level and Wealth
          • Markets require weapons and medical items even if not normally stocked
        • War (Winning) – The entity is winning a war against another entity.
          • Has a negative effect on Security and Wealth
          • Markets require weapons and medical items even if not normally stocked
        • Famine – The entity is not able to support its own population through normal means – typically only affects agricultural worlds, although other worlds that are not importing enough food can slip into this state
          • All food production is removed
          • Market requirements for food increased
          • Has a negative effect on Standard of Living, Wealth and Population
        • Drought – The entity is not able to support its own population through normal means – typically only affects desert worlds, although other worlds that are not importing enough food can slip into this state
          • All water production is removed
          • Market requirements for water increased
          • Has a negative effect on Standard of Living, Wealth and Population
        • Outbreak (Minor) – A minor pandemic has broken out in the entity’s environment.
          • Markets cannot export food or medical items (except machinery if applicable)
          • Has a negative influence on Standard of Living and Wealth.
        • Outbreak (Major) – major and lethal pandemic breaks out in the entity’s location.
          • Markets cannot export food or medical items (except machinery if applicable)
          • Markets demand for medical items increased
          • Has a negative influence on Standard of Living, Population and Wealth.
          • Development level is frozen
          • Entity will be quarantined
        • Outbreak (Apocalyptic) – extremely lethal and contagious disease widespread in entity’s location.
          • Markets cannot export anything
          • Markets demand for medical items increased
          • Has a negative influence on Standard of Living, Population, Development Level and Wealth.
          • Development level is frozen
        • Weather (Severe) – Severe weather (includes earthquakes, stellar flare events and other natural disasters)
          • Has a negative influence on Standard of Living and Wealth.
        • Elections – The entity is in the process of elections.
        • Special events – these are determined on a case by case basis, for example space weather)
    • Economy type
      • The economy type is a broad indication of the primary income generation for the system. This usually reflects what the main exports are. They also determine what items are generally available in the markets.
        • Agricultural
        • Industrial (Civilian)
        • Industrial (Military)
        • Government
        • Mineral
        • Service
        • Tourist
        • Criminal
    • Population
      • The population size of a planet is used to measure the effects of changes or player activities. It is also used to modify the availability of items in associated markets.
      • Population size can be affected by events.
    • Development Level
      • This a broad indicator for how advanced the colony is. It provides modifiers for the various variables of the entity. In a broad sense it is an indicator of how well the entity can absorb change, shortfalls and so forth. It also represents the entities ability to support itself through contact via other entities.
    • Standard of Living (SOL)
      • The standard of living variable indicates how good life is for the average member of the entity’s population. A high standard of living requires adequate essentials (such as food) as well as luxury items. This will also affect the availability (and demand) for such items in the markets.
      • A low SOL indicates a poor standard of living for the population, in situations with low stocks of essentials like food this indicates an event like a famine.
      • Manipulation of the markets either directly through trade or indirectly by blockade will change the SOL appropriately.
    • Security
      • The security value represents the security situation for the entity. The higher the value, the more secure the population feels and vice versa.
      • The security value can be modified by direct player action, acts of piracy will lower the security while bounty hunting will increase it.
    • Wealth
      • The wealth variable indicates the accumulated wealth of the entity. The entity can use its wealth to generate events to boost its other values and as such acts as a cushion for negative changes. It also indicates the strength of the economy and feeds into prices.
      • Note the while SOL and wealth are connected, they are not the same thing.
      • Players can influence wealth in a number of ways, generous trading will increase wealth, while reducing profit margins for the locals will reduce wealth. Destroying entity assets will impact on wealth, and influencing security and SOL will also have a knock on effect.


    BI-MODAL SIMULATION TICK
    The simulation runs in two distinct modes (although the evaluation of each mode generates the same events). The first is based on player activities, once an activity type reaches a threshold for the entity, the impact is applied and any events generated

    As well as player effects we also want periodic change driven by the simulation itself.

    PLAYER ACTIVITY THRESHOLDS
    Player activities within the associated volume for the entity are tallied into various influences. These influences have a direct effect on the entity’s stats. The tracked activities are as follows:
    • Development level
      • Negative impact
        • Failed development missions
      • Positive impact
        • Completed development missions
    • Standard of Living
      • Negative impact
        • Failed standard of living missions
      • Positive impact
        • Completed standard of living missions
        • Completed trades that add to the entity’s essential goods
    • Security
      • Negative impact
        • Piracy
        • Murder
        • Failed security missions
      • Positive impact
        • Bounties collected
        • Completed security missions
    • Wealth
      • Negative impact
        • Issuing missions
        • Losses made on trade by entity
      • Positive impact
        • Profits made by entity


    Thresholds for the activities are set depending on the entity’s population, development level and modifiers from government types as applicable. A count for each activity is maintained; note that it is the net between positive and negative actions that is used to determine any change. Missions are weighted more heavily in the count than general actions. Once the net effect reaches the threshold value then an event is generated. The activity counts are reset and the threshold value recalculated based on the new statistics if needed.

    Note that wealth is not a triggered threshold, but is included as it does change depending on circumstances and is required for generating remedial missions.

    GENERATED EVENTS
    When a threshold has been triggered then the entity creates an event, this is typically a mission designed to address the problem, although this will cost the entity some of its wealth. If the entity has no wealth then an event cannot be created, however a message will be generated for the monitoring developers (see intervention triggers).

    Periodic change can also create events.

    The government type determines whether an event should be generated for the triggered threshold.

    If the government type allows it then an event (and associated mission) is generated. These will follow the same pattern as the activity thresholds list, so for example a bounty hunter mission will be generated if the security variable is reduced.

    PERIODIC CHANGE
    The periodic development of entities is handled by a periodic scan of each entity. The entity’s variables are analysed and adjustments made. If any changes change a value across a given minimum then an event is created in the same way as if an activity threshold was crossed.

    Currently the frequency will be set at a daily (real time) tick. However this may require altering once in place.

  2. This is the last staff post in this thread. #2

    Default Part 2

    FACTION SUPPORT
    For entities that belong to a faction (the Alliance, Federation and Empire) there is a safety net provided by those factions. When an entity attempts to generate an event and lacks the wealth to do so it uses its faction’s lookup table to generate a faction event for the event type.

    For example an Imperial system has been plagued with pirates; it has issued missions which no player has completed. This cycle continues, with more player pirates pushing the entity into a downward spiral. Eventually it is no longer able to generate missions and so receives a faction support event. This is an Imperial task force of a cruiser with several squadrons of fighters. These suppress the pirates and order is restored.

    GOVERNMENT COLLAPSE
    When an entity attempts to issue an event and cannot (and it doesn’t have faction support) then the entity’s government collapses and is set to none. To guard against exploitation and unwanted background simulation states, human moderators are alerted to significant system changes and can manually change states as necessary.

    INJECTED EVENTS AND INTERVENTION
    Events that affect entities can be injected into the game that can directly change an entity’s statistics. This mechanism can be used to add specific events to the game, like civil wars, economic collapse and major story items.

    Intervention messages are a failsafe in the system. When an entity’s stats reach set levels (a minimum and a maximum) a message is sent to whoever is monitoring the galaxy highlighting possible collapse or expansion opportunities. They can then be used to manually add events as desired.

    MARKETS AND TRADING
    Each entity can have one or more markets. A market is defined as a place where the player trades with NPC’s. Typically this will be at space stations, ship yards, pirate and smuggler bases. The entity defines what commodities are available and their prices, although the markets will also modify these.

    As with the political events, economic events occur in a bi-modal tick. The periodic method is a check of the entity’s markets and any adjustments made. The other method is the threshold system of players trades that works in a similar fashion to the player activity thresholds
    Events can change what entity owns a particular market. They can also destroy and create markets.

    CALCULATING BASE PRICES
    Base prices are initially calculated as a function of economy type, government type, development level and population.

    For example a largely populated agricultural world with a high development level would have cheaper food prices than an equivalent industrial world.

    Prices have a universal minimum and maximum price cap to prevent catastrophic price failures and exploits.

    RARE GOODS
    Entities which have a sufficiently high development level may start creating rare goods based on their primary economic output (with oversight by moderator action), e.g. an agri-world could generate a rare foodstuff.

    Rare goods can be anything that the market produces, so this can include ships and ship modules.

    PERIODIC MARKET ANALYSIS
    On a periodic basis (daily) the market for each entity is analysed and updated depending upon the analysis. This analysis is performed before the political simulation so that any economic changes are taken into account.
    The major components of that analysis are as follows:

    • Restock markets
      • The markets for the entity are restocked according to the type of market, the commodities that the entity produces (these are also affected by the development level, government, entity state and economy types).
      • There are caps to the maximum capacity for each commodity determined by the market type. Larger stations can hold more goods for sale. These caps also limit player sales, so if a market is already full of food, no more food can sold to that market.
      • Note that the restock quantities are representative (scaled by population size and development level). We do not have an agricultural world producing a million tons of food per day.
    • Calculate wealth adjustment
      • The current trade for the system is calculated and the net effect is applied to the entity’s wealth.
    • Standard of Living (SOL)
      • The entities standard of living is processed, quantities of essential goods are removed from the markets. The removed quantities are representative values scaled by population and development level, we are not modelling planetary scale use of commodities.
      • Commodities are grouped for essentials and luxuries. If there is a shortfall then the SOL is reduced appropriately. Surpluses of essentials will increase SOL, but only to a maximum of 50%. Shortfalls of luxury items reduce SOL, but to a minimum of 50%. Surpluses of luxury items increase the SOL, but only if the SOL is at 50% or higher.
    • Recalculate prices
      • For the remaining quantities of each commodity a new price is calculated, based on a ratio determined by a lookup table from the price at the beginning of the analysis process. For example if the commodity now has a stock level of 50% higher, the price per unit will drop by 25%.
      • Prices are also changed according to any variance for component commodities. For example if a market sells food and the price of fertilizer increases then so will the unit price of food.
    • Reset trace counters
      • The accumulated counters for the trade thresholds are all reset.
    • Reset thresholds
      • The thresholds for each commodity are reset depending on the updated stock levels.


    MARKET THRESHOLDS
    In the same way the political events are triggered by player activity thresholds, price and stock changes are triggered by player trades.

    For stock availability this correlation is direct to the trade, so purchasing 100 units reduces the stock level by 100 units and vice versa.

    Prices are not quite as volatile as stock levels, they require accumulated trades to trigger price changes.

    For each commodity the entity creates a threshold level for price increases and drops. The threshold is determined using the entity’s economy type, government type and development level. The unit quantity for each trade is applied to the relevant counter for each commodity, when the counter reaches the threshold for a change the change is triggered.

    INFLATION
    The economy is not a balanced system of checks and balances, but a system of causes being used to generate effects. As such there is a danger of inflation (where players accumulate so much money that it is effectively devalued).

    This issue can only be completely eradicated if money is destroyed in the same quantity that is being created. As the game is focused on positive effects (from the player’s perspective), with only some negative effects, this is not an achievable goals.

    To combat inflation there needs to be suitable money sinks that the player spends money on reducing the cash in the player economy.

    It should be noted that players getting richer is not the same as inflation and is desirable. However we should ensure that at all times there are interesting spend choices.

  3. #3

  4. #4
    Is this the revised or final one for the background simulation?

    A thought just popped into my head when I was re reading about faction support events. I think that capital ship fleets should be fixed in number and always somewhere in game, so that instead of "an imperial cruiser turns up" - a specific imperial cruiser turns up, which means it had to leave from somewhere else (somewhere that now feels less secure or even still needed support, but it was a lower priority)

    This means that as well as potentially taking travel time, if there are more places requiring support than there is support, sometimes it won't arrive - with maybe interesting consequences?

    It also allows you to make a big in game fuss over capital ships being destroyed and new ones being built at shipyards, and all the potential missions that could generate. Obviously creation/destruction of massive assets like this would be uncommon and driven mainly by developer injection. I assume capital ships take a long time to build and enter service just like naval ships today.

    It could add an interesting dynamic to the Cold War, as temporarily weakened factions lose influence where they can't respond to the other factions being present.
    Cmdr S. Kipper, Elite Anthology Organiser, Author and overworked web developer.
    Visit us: Elite-Anthology.co.uk | @EliteAnthology on Twitter | Elite Anthology on Facebook

  5. #5
    Regarding the civil war state, it doesn't show that weapons are needed, but wouldn't there be some faction in the civil war that is in dire need of weapons perhaps and would pay hansomly for anyone who can smuggle weapons to them?

    Maybe the risk would be that one of the factions could attack you if they found out about your smuggling operation

  6. #6
    Quote Originally Posted by Kipper View Post
    Is this the revised or final one for the background simulation?

    A thought just popped into my head when I was re reading about faction support events. I think that capital ship fleets should be fixed in number and always somewhere in game, so that instead of "an imperial cruiser turns up" - a specific imperial cruiser turns up, which means it had to leave from somewhere else (somewhere that now feels less secure or even still needed support, but it was a lower priority)

    This means that as well as potentially taking travel time, if there are more places requiring support than there is support, sometimes it won't arrive - with maybe interesting consequences?

    It also allows you to make a big in game fuss over capital ships being destroyed and new ones being built at shipyards, and all the potential missions that could generate. Obviously creation/destruction of massive assets like this would be uncommon and driven mainly by developer injection. I assume capital ships take a long time to build and enter service just like naval ships today.

    It could add an interesting dynamic to the Cold War, as temporarily weakened factions lose influence where they can't respond to the other factions being present.
    Great idea
    Trust me, I'm a Space Doctor. And a free science consultant. And the daddy of the Orange Sidewinder!
    ALPHA VIDEOS
    The FIRST rule of Elite
    E3 Ambassador

  7. #7
    PERIODIC MARKET ANALYSIS
    On a periodic basis (daily) the market for each entity is analysed and updated depending upon the analysis.
    You'll likely need to update the market more frequently than daily. Given the game will be accessible from anywhere on the planet, one update per day isn't going to do it.

    That frequency is unlikely to be useful for low restock commodities either. If the universe can be quickly sold out of an important commodity, it may be necessary to restock that commodity more frequently.

    Ticks should also not be predictable (i.e. occurs every day around 1500Z) otherwise players will exploit the movements.

    And prices should trend over time - by all means, determine the high/low of a price at the tick, but then move the price fractionally towards the high/low over the next few hours - obviously, it's undesirable to have commodity prices suddenly move en-masse by a percentage (i.e. the 25% mentioned) as a result of the tick.

    I would have thought you'd need to be running the economy cycle at least 4 or 5 times a day to account for player activity, and have a sub-cycle on a more frequent (30 mins?) basis to trend prices towards their new levels.
    C:\> Cannot find Reality.sys. Universe Halted.
    Slopey's Elite: Dangerous Best Profit Calculators!:
    (note that the BPC is currently unavailable to comply with FD's data access policy)

    Market Tool/General Elite Dangerous Chat Room: Here!. Pop in and say hi!
    If you liked the MarketTool please consider donating to MND via my wife's Kilimanjaro Challenge!

  8. #8
    To guard against exploitation and unwanted background simulation states, human moderators are alerted to significant system changes and can manually change states as necessary.
    I think this is a bad idea for the reasons listed below.

    In ten years lets assume a sequel has been released, but I prefer to play Elite Dangerous. There will be nothing to prevent players from utterly abusing this, and collapsing entire systems. It also makes it so SP is exploitable (although not as easily as MP)

    I think this is a bit short sighted, and instead have hard lines drawn around certain things. In my opinion players should NOT be able to destabalize a system's government. I understand that FD wants the player to have a greater impact on the game, but I feel that it should be less of an impact in certain areas. Otherwise we lose the sense of 'just a pilot in the universe' and more of a 'I am a god among insects!' Feeling.

  9. #9
    I like this idea, it means (to me at least, if I have understood it correctly) that the game will always be changing. This will ensure a longer life for E: D, and give us players a heck of a lot more options for play. I love the idea of being to destabilize governments (How cool would that be for a player or a group of players to achieve!!)

    Yes it will make the game a bit more complicated for traders, or group/faction leaders etc. But if done right you could take over whole clusters!

    Mind you I may be saying all this, but only wish to become a simple explorer so hopefully wont have to get too involved in all this, but the fact that it's there gives me even more interest in the game. As we discover more resources for systems, would this also be taken into account?

    I think that I'm going to have to pop in a bit more money for the Alpha tests, because Elite Dangerous just keeps getting better and better!!

    Brian

  10. #10
    Test this should not post . Thought this thread was locked.
    Last edited by Drkanukie; 21/11/2013 at 10:10 PM. Reason: Explaining dumb post

  11. #11
    Wouldn't it be awesome if we got a mission where we would hook up to a space rock / asteroid and guide it in an elliptical orbit around some planet. That could yield doomsday theories and conspiracy theories about their equivalent of Elenin and aliens on said planet? Would be ultimate comet DooM believer "trolling". Just had to put it out there with all the recent comet hype we have been having.

  12. #12
    I like how this game dynamic of background simulation offers a very different approach to events within the game universe. Different as in reactive versus the direct interactive approach that EVE seems to sport with its large player guilds and monopolization of space.

    I had my doubts about this at first, because I was quite enamored with the possibility of investing in a far flung colony or buying a space station on the outskirts of human settled space. However my understanding now of this evolving universe is that we can influence certain conditions much like playing a game of simcity but on a galactic scale. We can affect markets, which in turn affect government stability and prosperity indirectly, which in fact can influence the probability of a world going into famine, or prospering so much that it may raise its tech level and afford it the ability to populate a nearby star system. Offering the prospects of its might one day rivalling the dizzying heights of the Empire of Federation itself! It might even cause wars or territorial conflicts among its neighbours or swallow up smaller powers.

    I hope Elite Dangerous allow certain independent worlds to have some aspirations for galactic domination. Building its fleets slowly but surely from an armada of corvettes, to frigates, and destroyers until it owns several dozen worlds and capital ships. With a fly-by-wire Freespace-inspired combat engine, this is what will leave players salivating for more epic battles. As much is hinted by David Brabens videos on politicking in space.
    Last edited by MarcusAurelius; 11/12/2013 at 7:35 AM.

  13. #13
    There will be politics of that nature, not necessarily directly from the background simulation but likely form direct dev input, as time goes on. And there will be (global - in a way that is personally neutral) DDF consultations that should enhance this further.

    If you like what I post, please rep it, if not then don't bother


  14. #14
    It would be really awesome, complex and deep system if all the details described could be implemented into game. I am afraid that it will be much much less complex and very simple background AI simulation.

  15. #15
    How about Plutocracy, or corrupted democracy? Where politics and news media and advertisement are indirectly influenced by the needs of those that control 90% of the wealth? It represents itself as a democracy, but you only have 2 or 3 choices to vote for that are all corrupt. The difference from a corporate state would be that there is the illusion of freedom and no hard oppression is used to control the population.

    Elite Dangerous could also be realistic in the political representation of the universe. Since 1984, many of us have become far less naive (pun intended). From what I've read, the Federation sounds like a bit like a plutocracy. Certainly such a system of government could evolve in the far future, giving the illusion of democracy, and even granting personal freedom and free speech as long as you don't break some libel law and get sued for millions of credits. Where even people in power are forced by law to act in the interest of their corporation even if it has disastrous consequences for the common good. Where the population is kept happy with goods and consumption and distracted by endless streams of entertainment, focused on ideological issues like whether cooked eggs should be opened on the little end or the big end. Ok ok enough political ranting
    Last edited by Dejay; 14/01/2014 at 9:35 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not edit your posts
  • You may not post attachments
  •