Re: Elite: Dangerous - Design Decision Forum
Posted: Wed Aug 28, 2013 1:32 pm
True - and it also rules out having the player act as a double-agent, or as an infiltrator or informer.Diziet Sma wrote:This makes no damn sense..
For information and discussion about Oolite.
https://bb.oolite.space/
True - and it also rules out having the player act as a double-agent, or as an infiltrator or informer.Diziet Sma wrote:This makes no damn sense..
Heh.. something else I was never stupid enough to do..Disembodied wrote:act as a double-agent, or as an infiltrator or informer.
Just did a quick search through the DDF discussion.Diziet Sma wrote:This makes no damn sense..Barry Clark, Designer- Elite: Dangerous wrote:LIMITATIONS
Archetypes will refuse to become a contact with players who have contacts that are opposed to them. For example, a player currently has a pirate lord as a contact; they will not be able to make a contact within a police force or the trading community. The player will be able to raise any NPC’s reputation, but the ability to make a contact will not become available until the opposing contact is removed.
How do they know just who I know? For instance, in my life I've had contacts who included police, magistrates, politicians, lawyers, the rich & famous, fine upstanding citizens, criminals, motorcycle gang members, drug dealers, junkies, and prostitutes. But unless I was stupid enough to open my big mouth, not one of them ever knew who else I might have dealings with..
Barry Clark, Designer- Elite: Dangerous wrote:Hey everybody, hope your weekend was good. Lots of posts to chew over here, few too many to quote, but I'll try to formulate a reply.
Re. opposing NPC's, this artificial limit/automatic knowledge has it's place, but I do agree, it feels a bit weird. The players various reputation levels should naturally make it VERY difficult to cultivate opposing contacts. For example, by doing work for Mr Pirate Lord, you'll be gaining a higher criminal rating, so Ms Police Chief will start putting you at arms length, even removing you as a contact. So each contact would have thresholds for the players reputation, which might be a better solution, and still allows opposing contacts. Also, there's no reason a non-contact police NPC couldn't offer a pirate player a mission to spy on his fellow pirates...
Re. contact life spans, I definitely think we'll have contacts degrading over time, it allows us to create soft limits on numbers. If you want to maintain a large amount of contacts, you should have to work hard to do that.
Re. knowing where contacts are, the idea is to give the player a general location, not the specific station or asteroid field. For instance, you know they are at Sol, but they could be anywhere in our solar system, meaning you'd still have to hunt them down.
Re. Tier 1 NPC's, the idea of making a contact of Tier 1's is still up in the air, I do agree it should be near impossible to get a contact with the President, but I like the idea of having an inside line to his secretary or a presidential aid.
Oh and having an NPC hate you will be possible, but they won't be part of the contact system .
Sandro Sammarco, Lead Designer- Elite: Dangerous wrote:Hello again, lovely DDF'ers!
Timings have got a little out of whack with regards to topics opening, revising and closing - but I won't tell if you don't!
Slavery! It's getting a lot of debate going. Thank you all to everyone who has taken part so far.
Yes, there has been a fair bit of non-game oriented stuff flying around, but that's OK, and understandable considering the topic. It's made for fascinating reading for sure.
But now - back to the gameplay! Our revision isn't massively changed, but it's probably worth a read, as a couple of points here and there have been expanded on.
It's worth noting that there have been some very interesting tangent concepts in this topic. Whilst they aren't appropriate for including here, I'm sure we will be scrutinizing these threads at various points in the future (slave crews, I'm looking at you!)
Let's go!
Slavery legality
Slave commodity rules
- There are two types of slaves: slaves and Imperial slaves
- Imperial slaves are always considered legal commodities in Imperial systems
- Non-Imperial slaves are considered illegal commodities in Imperial systems
- Both types of slaves are considered illegal commodities in Federal and Alliance systems
- Both types of slaves may be considered legal or illegal commodities in independent systems, based on various system parameters (e.g. faction government type, security level, current events)
- Slaves may be traded at black markets in systems where slavery is illegal
- Carrying dead/spoiled slaves regardless of whether a commander killed them via poor transport care or not, is considered as the crime of murder by most systems
- Some black markets will buy stasis canisters containing spoiled slaves as though they were fertilizer commodities
- Some black markets will buy stasis canisters containing dead slaves as though they were medical supplies
- Extreme (read: insane) faction systems and system events such as famine can cause markets to (temporarily) purchase stasis canisters containing dead slaves as though they were meat commodities
- Some black markets will buy stasis canisters containing live slaves as medical supplies
Slaves and Passengers
- Non-Imperial slaves are always transported in stasis canisters
- Stasis canisters induce comas and can additionally supply nutrients when housed in a life-support cargo rack
- when not housed in a life-support cargo rack, stasis canister occupants will reduce in quality over time:
- Healthy
- Ailing
- Dead
- Spoiled
- The quality will affect sale price and commodity type the canister can be sold as (e.g. spoiled slaves cannot be sold as medical supplies)
- Specific types of slaves can be bought and sold (pleasure, brute, domestic etc.)
- Although still sold as slaves they can fetch different prices depending on the economy type (for example, brute slaves are worth more to industrial/extraction economies, pleasure slaves are cheaper at service economies)
- Imperial slaves must be transported via passenger cabins
- NPC escape pods are treated as stasis canisters
Slaves and Events/Missions
- Trading in slaves affects various reputations, such as increasing criminality
- Commanders can purchase fake IDs as data chits
- Using a cockpit interface a commander can apply an ID to a slave filled stasis canister/passenger cabin containing Imperial slaves which converts them into free passengers
- When docked, a commander can offload such passengers to local immigration, for increased humanity reputation and increased reputation with factions that oppose slavery
- Some humanitarian contacts can take delivery of such passengers, for increased humanity reputation (and improved relationship with the contact)
- Imperial slaves do not in general view being freed as a good thing; they can be offloaded when docked, but there is a chance (based on commander reputations) that they will issue an Imperial attempted murder crime against the commander that frees them (the commander still gains increased reputation with factions that oppose slavery, but loses reputation with the Empire)
- For every slave freed there is a chance that a reward encounter can be generated at some point in the future.
- Once applied, a fake ID cannot be removed on ship
- Commanders may use illegal services at various docks to remove an ID from the system, turning a passenger/freed slave into a slave (or make a stasis canister carrying slaves/passengers read like it's carrying another commodity)
- Any canister containing slaves but marked as something other counts as illegal goods in systems where slavery is legal if detected
- Any canister containing slaves but marked as something other counts as attempted murder in systems where slavery is illegal if detected
- Passengers transported by stasis canister can sold as slaves at a market
- The commander's reputations are significantly affected
- There is a chance that a revenge mission/event may be generated for each passenger sold in this manner
- There is a chance that the commander may instantly gain an attempted murder crime for each passenger sold in this manner from a faction that opposes slavery (representing the nationality of the passenger)
- Many passengers refuse to be transported via stasis canister (for pretty much this reason)
- Selling important characters into slavery is possible if they are transported by stasis canister
- Some nefarious contacts allow commander's to sell passengers from cabins (including important characters) into slavery
- Selling important characters into slavery feeds strongly into the missions/events system
[/color]
- Trading and dealing in the slave trade opens up lots of interesting possibilities:
- Sting operations when selling slaves to contacts
- Revenge missions from disgruntled associates
- Imperial slave defectors
- Betraying important passengers for a third party’s benefit
Sandro Sammarco, Lead Designer- Elite: Dangerous wrote:Hello Illustrious members of the DDF!
So, the second round for “Contacts” will be slightly delayed until next Monday/Tuesday. Please accept my apologies for this. Hopefully, today’s new topic will give you some conundrums to puzzle over: ship management.
What do we mean by this then? Basically, it’s the various ship functions that aren’t directly to do with piloting the vessel. They may, of course, have significant impact on piloting though.
I suspect this is going to be a topic that provokes a tsunami response. Why? Because our definition of ship management cannot but imply some of our thoughts on how we envision the core gameplay being; mainly that whilst we are using a skill-based flight model, the pace of the gameplay may not be quite so frantic as shown in the initial videos.
Though it has to be said that to a large degree this will vary by ship type (with smaller ships tending towards twitch and larger towards management) and by the amount of involvement the player puts into ship management; most of these systems can be left to run at default settings if that sort of thing doesn't float your boat.
First a quick summary of interface intent:
The Multi-Function Displays
And now, the systems:
- A ship has multiple multi-function displays
- These displays can show a variety of different interfaces
- The commander can interact with these displays to employ ship management controls and generally decide what each is showing
- The displays can dynamically alter their contents (and dimensions) based on trigger events
- At any time a commander can use these screens to browse to view particular module options
Power Management
Reactor Safety Override
- Each ship has a reactor in a power plant module
- The reactor consumes fuel when active and converts it into energy used by ship modules and fixtures
- The rate of fuel consumption is based on the current power draw
- Some modules have power requirements
- Such modules can be turned off and on manually, but will generally default to on when the ship’s reactor is activated
- When turned on the modules increase the reactor’s power draw
- All reactors are rated for a maximum power draw
- It is not possible to turn on a powered module that would cause the reactor to exceed its maximum power draw
- It is possible for malfunctions and effects to temporarily alter a reactor’s maximum power draw, potentially causing the current draw to exceed it
- In such a case, powered modules are automatically turned off until the current draw does not exceed the maximum
- The ship automatically maintains a priority list of powered modules so it can shut them down in order
- The commander may manually adjust this list whilst docked
The Power Distributer
- Most reactors are set up with a buffer zone of potential draw that is never used, to protect the reactor from damaging itself
- The commander may manually disengage/engage the overrides and run the reactor at over 100%
- Disengaging the override increases the maximum power draw capacity for the reactor at the expense of reactor damage over time and potential ship irradiation (reducing the effect of life support modules – see below)
Cooling Management
- All ships have a power distributer module (PD)
- The PD when active takes a small amount of power for its own use and reserves a large chunk of power which it can call upon to fill four separate capacitors
- The capacitors are:
- Weapons: power available for energy weapon fire
- Shields: power available to reconstruct and replenish shields
- Engines: power available for engine boost capability (also, the higher the ratio here, the higher the ship’s top speed)
- Utilities: power available for utility systems such as the hyperdrive and sensors
- The commander can dynamically adjust the ratio of power fed into each capacitor using a cockpit interface, though the total amount of power available is always the same
- The bigger the ratio for a particular capacitor, the faster it fills
- Various modules draw power from an appropriate capacitor rather than from the reactor directly when they are “activated”
- Activation is not the same as being powered (e.g. a beam laser has a nominal power draw directly from the reactor when it is turned on, but when fired drains the weapons capacitor)
- The higher a ship’s power draw, the bigger its EM signature, making it easier to locate using EM sensors and easier to track with EM–tracking weapon platforms
- Different versions of modules have different power requirements
Atmosphere Management
- Powered modules including the reactor generate heat
- Heat is transferred from a module to the ship’s cooling system when the module’s thermal limit is exceeded
- Heat in the cooling system is radiated from the ship
- If more heat is being generated than radiated the heat transfer may stop or even reverse, overheating modules
- Most ships have articulated heat vanes which can be raised, significantly increasing heat dissipation from the ship
- However, such activity normally affects the flight model of the ship and always increases the ship’s thermal signature whilst active (see below)
- Systems can be fitted to flush the cooling system, instigating chemical reactions to dissipate heat
- Heat sinks may modules can be fitted to hard points
- When activated, a heat sink module flushes the cooling system’s heat into a heat sink which is then ejected from the ship
- Ejected heat sinks can be used as a form of chaff to confuse heat tracking weapons
- Heat stored in a ship’s cooling system generates a thermal signature for the ship
- The higher the thermal signature, the easier it is to locate using heat-based sensors and the easier it is to track using heat-tracking weapon platforms
- When heat levels exceed set thresholds some modules may automatically turn off/begin to suffer fatigue damage
- Excessive heat puts a strain on the ship’s atmosphere control (reducing the capability of life support modules – see below)
- Super excessive heat directly impacts the pilot and crew’s ability to function and will eventually kill them
Crisis Management
- A ship maintains a habitable atmosphere using life support modules
- Each module can support a volume of space – larger ships require multiple life support modules
- A commander can fit redundant life support modules to deal with catastrophes
- To function normally, all of a ship’s internal volume must be supported
- If life support cannot support the ship’s internal volume, the atmosphere begins to degrade over time (the rate is based upon the difference)
- Pilot and crew capability is reduced at set thresholds of atmospheric failure
- Pilot and crew will automatically switch to personal life support if the atmosphere fails completely
- Personal life support is limited but restocked automatically in a habitable atmosphere
- The commander can fit and activate specific modules to remove some causes of atmospheric failure (contamination, irradiation, hull breach)
- Future: when walking around the ship is possible, hermetic doors can be employed to cut off areas of the ship from the atmospheric control, reducing the strain on life support modules
Repair
- Most modules can be directly activated at any time using the cockpit interface – however some actions have a time frame for response which may make such intervention difficult
- Most ships are fitted with a crisis management system which monitors the ship
- When a particular crisis is detected a multifunction display is automatically and temporarily given to the crisis management system
- Such displays show pertinent information about the crisis and offer a contextual quick command to initiate a response
- When more than one crisis is detected the system cycles through them in a priority order
So there it is folks, quite crunchy with information, I think you'll agree. When going through these systems try to keep in mind the following points: we want the player to feel as though they are REALLY in a space ship, in space, but we want to give the feeling of simulation more than actually simulate total complexity; we want ship management to encompass a bit of thought and enable a lot of drama.
- A ship can be fitted with repair modules
- Repair modules are powered and can be activated (using the utilities capacitor)
- Modules can be flagged for repair - they will be repaired at a rate based on the number of modules being repaired at the same time and the numkber of repair modules active
- Repair modules come with a finite amount of resource - once this is used up (when repairing) the module cannot function until restocked at a dock
With a little imagination, I hope you will see the some of the potential we're trying to create here. Are we on course though, well let us know!
Are we going too complex or not complex enough? Are there systems and functions we're missing or do we have too many already? Are we harkening back to the good old days too much (power distributor I'm looking at YOU) or is the right level of options for the long term?
With the scale of stuff to talk about here, post headings will probably be very useful, like:
Power
Safety
Distributor
Cooling
Atmosphere
Repair
Complexity
"New System"
Thanks for reading, now over to you, and as always, whether you love or hate what you see - have a fantastic weekend![/color]
A bit like NASA. Send some astronaughts up into space in something that was constructed by the lowest bidder (on the cheap), using a couple of million pounds of explosives. Squeaky butt time.Diziet Sma wrote:What fun.. we all get to fly around with a nuclear reactor under our arse..
Not DDF, but groups of some sort was definitely in from the original plan: from the bit of the Kickstarter page that wasn't edited all overCody wrote:Could one of you DDF guys, who also followed the KS, answer me this: was FD's original proposal just one all-in group?
Did all these group ideas, and ironman mode (daft), result from KS pledger-pressure and/or DDF pressure?
...and (added 14 November) the FAQ "How does multiplayer work?"Multiplayer: you will be able to control who else you might encounter in your game – perhaps limit it to just your friends? Cooperate on adventures or chase your friends down to get that booty. The game will work in a seamless, lobby-less way, with the ability to rendezvous with friends as you choose. This technology is already working, using a combination of peer-to-peer (to reduce lag) and server connections.
Ironman I don't think turned up until the DDF had been arguing over "player death" for a while, but the groups idea seems reasonably close to what they've ended up with.You simply play the game, and depending on your configuration (your choice) some of the other ships you meet as you travel around are real players as opposed to computer-controlled ships.
[...]
We have the concept of “groups”. They can be private groups just of your friends or open groups (that form part of the game) based on the play styles people prefer, and the rules in each can be different. Players will begin in the group “All” but can change groups at will, though it will be possible to be banned from groups due to antisocial behaviour, and you will only meet others in that group.
Barry Clark, Designer- Elite: Dangerous wrote:Hello again! Right, this is a day or so late, but here we go, an update for Contacts in Elite Dangerous! We've taken on board some of your thoughts and combined them with our own... Not a massive change, but I think this ones been fairly uncontroversial as far as DDF topics go .
NPC CONTACTS
The term ‘contact’ can be added to any NPC within Elite: Dangerous, and allows players to create a group of friendly AI, willing to help them and provide benefits & missions. Any Tier 2 NPC can be made into a contact, with each AI character having a tracked player reputation level that can be increased or decreased.
An NPC’s player rep. can be increased by the following actions (this is not an exhaustive list, more may added later):
An NPC’s player rep. can be decreased by the following actions (this is not an exhaustive list, more may added later):
- Accepting and completing missions successfully for that NPC
- Aiding that NPC’s associated faction in some way.
- Completing successful trades with that NPC.
- Aiding them in combat.
- Rescuing an NPC during a mission.
- Various conversation system interactions
Once the reputation level reaches a high enough threshold, the next time the player communicates with that NPC, they will offer to place the player onto their “contact list” (how this is phrased could vary, but essentially the NPC would be signalling their trust in the player). If the player accepts, then the following will happen:
- Failing missions for that NPC.
- Aiding an opposing faction in some way.
- Attacking that NPC or his associates.
- Committing a crime against that NPC.
- Lack of communication
Contacts and reputations with NPC’s will degrade over time, meaning that if a contact isn’t maintained (through missions & general player interaction) they will eventually disappear from the players contact list. Players will also be able to remove contacts from their list at any time, through their Contacts list UI.
- They will be added to a Contacts list on the player’s communications UI.
- The NPC will be contactable from anywhere, at anytime.
- Which system they are in and approximate location will be known about at all times.
- Whether that contact has work available for the player.
- A small marker will appear over that character on the Contacts list.
There will not be a limit on the number of contacts a player can have, although maintaining a large number will be very difficult due to degradation and the need to balance reputation levels (see Reputations below).
ARCHETYPES AND BENEFITS
Different NPC archetypes will provide different benefits and perks, ranging from a consistent source of missions to unique trading opportunities and removal of bounties. The benefits provided will be based on the archetype of that particular contact. For example:
- Trader:
- Will buy a limited amount of cargo for an inflated price.
- Will always have trade good for ship-to-ship trading.
- Will provide trade missions.
- Will provide trade information on nearby systems (relative to the NPC).
- Police/Authority:
- Will allow the player to get away with certain low level crimes in their controlled systems.
- Can be called on to provide aid to players in combat.
- Can be bribed to remove bounties from the player (limited to local & friendly factions).
- Smuggler:
- Will provide smuggling missions.
- Will trade in illegal goods for ship-to-ship trading.
- Allows access to black market NPC’s at local stations.
- Military:
- Will provide that factions military missions (e.g. mercenary, espionage, assassination).
- Will allow the player access to military installations associated with that faction.
- Can be called on to provide aid to players in combat.
- Bounty Hunter:
- Will provide high level bounties and missions.
- Can be called on to provide aid to players in combat.
- Can be called on to locate other pilots.
- Can be given a bounty by the players (this is limited to pilots with a criminal record).
- Etc.
REPUTATIONS
A player’s reputation levels will determine how fast specific NPC archetypes will begin to trust the player. Each archetype will have a different set of preferred reputations that will adjust the rate at which player reputation with that NPC will rise. For example:
As stated in the above examples, the rate at which a contact’s player rep. degrades will also be affected, determined by much the same factors that affect their trust levels. These thresholds will be set on a per archetype basis.[/color]
- A pirate lord NPC will find it easier to trust a player with higher criminality and piracy reputations, both providing a positive multiplier to player rep. gains. This will also cause the player rep. to degrade at a slower rate.
- On the other hand, a police chief will struggle to trust a player with higher criminality and piracy reputations, both providing a negative multiplier to player rep. gains. This will also cause the player rep. to degrade at a faster rate.
Sandro Sammarco, Lead Designer- Elite: Dangerous wrote:Hello again, wonderful DDF backers!
After the relatively chunky ship management it’s time for a slightly more focused sub set topic: ship damage. We have a few of goals:
Firstly, we want to minimise the positive feedback loop of decreasing ability. Based on player skill, even the most damaged craft should still pose an effect threat and be able to keep on going.
Secondly, we want damage to be – in general – more than just a decreasing health value. When your ship takes damage, we think it’s an opportunity for drama and choice.
Thirdly, we want to avoid the concept of “kill-re-spawn”. Yes, commanders are going to lose their ships, but we think that this is a pretty big deal, and that much of the time we’d prefer to see commanders flee rather than fight to the bitter end against overwhelming odds.
Also, these ships are cool, they are tough (even the smallest Sidewinder is effectively a mix between a warplane and tank) and they can take a pounding. Of course, it will be possible to face massively more powerful weapons and get obliterated, but most of the time a skilful commander should have fighting chance to at least flee and live to fight another day.
So, here’s our take:
Ship Health
Damage
- Every ship has a health value representing its hull integrity
- If a ship receives more damage to its hull than its hull integrity health value it breaks apart and is destroyed
- Larger ships have their hull integrity value split across several hull sections
- Once a section receives more damage than its total, further damage to it is reduced and spread to adjacent sections
- All ship modules have a health value representing their state of repair
- As modules receive damage they increase the probability of malfunctions occurring
- When a module’s health is reduced to zero it is disabled and cannot be used until repaired at an appropriate dock
- Some modules cause chain reaction damage on nearby modules when they are disabled
- Some modules cause catastrophic failure when disabled, destroying the ship in a fiery nova (the power plant, some exotic modules)
- The commander’s escape system (in normal mode) automatically engages when there is no possibility of ship recovery (power plant detonation, ship and personal life support failure)
Maintenance
- There are two types of damage: direct damage and fatigue
- Direct damage occurs as the result of weapon attacks
- Fatigue occurs as the result of hazardous environments, ranging from running reactors past safety limits to damaging environments both inside and outside the ship
- Both types of damage affect the ship’s hull or modules health values
- There is one significant different between the two types of damage: only direct damage can trigger malfunctions in modules
- Normally, direct damage from weapons must break a shield before it can attack the hull
- Both the hull and shields are able to soak an amount of damage before it is applied
- The hull receives an amount of damage that hits it based on its current health (the less damaged the hull is, the more of the incoming damage is applied to it rather than penetrating)
- Any remaining damage penetrates through and hits a module in the vicinity of the hull strike
- If there are no modules in the vicinity of the hull strike, this penetrating damage is wasted
- Some weapons are penetrators, reducing the amount of damage that the hull receives and pushing more through to modules
- Targeting systems dramatically increase the likelihood of targeted modules receiving penetrating damage
Malfunctions
- Both ship hull and modules can be repaired at most docks for appropriate fees
- Repair modules can be fitted in a ship and used to repair modules flagged by the commander in the systems management interface
- Repair modules are loaded with a finite resource, which can be restocked at most docks
- Repair modules cannot repair hull integrity
- Repair drones can be stored in cargo racks and deployed to repair hull damage to a targeted ship within range (including the commander's ship)
- Repair drones have charges which can be restocked at most docks
This then, is what we are currently heading towards. Again, the watchwords for us are interesting events and drama, along with clear meaningful choices. It should be fairly clear that destroying a ship is not going to be a single shot affair – taking into account shields, hull and modules there’s a fair bit of work to be done (as part of this philosophy you can expect to see NPC aggressors sometimes deciding to break off – victory does not necessarily require a grind until total annihilation). As for malfunctions, well, we like them because:
- As a module’s health is reduced there is an increasing chance that it will suffer a temporary malfunction based off the following triggers
- The module suffers direct damage
- The module is powered up
- The module is activated
- Malfunctions are temporary debilitating effects
- The lower the module health the greater the potential severity of malfunction
- Malfunctions are module specific (e.g. an auto cannon might suffer an ammo feed jam, a sensor unit might display corrupted data, an engine might generate excessive heat
- Malfunctions can last for a few seconds to several minutes, based on the effect
- Malfunctions always generate visual/audio feedback so that it is clear abnormal behaviours are active
- Some malfunctions can be ended early by specific action that commanders can learn (such as switching a module off and back on, refraining from module activation, continuous fire etc.)
- Some malfunctions can cause additional fatigue or direct damage to other modules
- A manager oversees malfunctions and weights their occurrences to smooth the pacing of multiple malfunctions (reducing the likelihood of triggering too many malfunctions from minor damage)
- Most malfunctions can be ended early by repair
- Some weapons are specifically designed to increase the chance of malfunction when they deal damage directly to modules
But now it’s time for you to concentrate and tell us what you think! Perhaps you have a great idea for an alternative/additive system, or maybe you just want to tell us that the whole thing sucks and is unnecessarily complex. Whether you like what you read or have worries, let us know, and remember, weekends always go down smooth![/color]
- They can be varied and offer interesting challenges to the commander
- Importantly, a commander can learn what they are and often mitigate their effects or work round them (even choosing different modules in an attempt to control what malfunctions can occur)
- They always trigger based on a legible event
- They are debilitating, keeping the advantage to the better combatant
- Because of their transitory and semi-random nature they keep open the potential for a commander to fight back right to the end
- They are easy for us, as developers to tweak, add and remove