The Problem with Contracts

bnainz shared this feedback 20 days ago
Not Enough Votes

A brief discussion on the three main types of contract systems in games, examples from popular works, and how they relates to SE2. Advantages, disadvantage, and different mitigation ideas to use.


-- 1. Linear


Examples: RPGs, Action games, Adventure games. Think of any storyline scripted for players.


SE2 impact: What is being used now, hand crafted static contracts for players to work through.


Advantages: Easier to code, can be balanced and bug-free. Can be independent from other game-world systems. Can be used to create/build a narrative for players to experience as they work through them.


Disadvantages: Static. Repeated times gets stale. Must create new contracts to create new content, each time. Repeated attempts break immersion, player realizes they have no real impact on the actual game world, just the illusion of accomplishment.


Mitigation Strategies: Create a really good story that connects the different contracts that players will enjoy multiple completions. Introduce an illusion of accomplishment and world impact. Make main storyline able to be optional to accomplish on repeated starts, like Skyrim's main questline vs it's side quests.


-- 2. Randomly Procedurally Generated


Example: ElderScrolls Radiant AI quests, rpg random quests, X4 'missions'.


SE2 Impact: When SE2 will generate random static contracts for a sector.


Advantages: Lots of content for players that will never end. A way to get resources or farm credits. You have optional choices based on what type you like or want to do. Can be a wide variety with enough content.


Disadvantages: Illusion of accomplishment in the game world or impact inside the overarching world. Only builds up the player's personal goods, divorced from a wider goal or need. Means players won't care about actually accomplishing it, just getting what they can out if it as quickly as possible.


Mitigation Strategies: Players to generate contracts for the NPCs to follow, in their faction. Players will then be able to create their own meaning for the different contracts they can create.


-- 3. Real-Time generation


Examples: Rimworld, any 4X game with random AI locational beginnings, where they are forced to create a strategy to win. Dynamic campaigns on any military RTS.


SE2 impact: maybe in the main storyline? Multiplayer will try for it.


Advantages: Life. Player choices have impact on the game world, accomplishing contracts have greater meaning.


Disadvantages: Balance and bugs are challenging to achieve. Can end up in a no-win situation. Much harder to develop for designers. Resource intensive on computer.


Mitigation Strategies: Create a 2d system to control the game world's entities, along with the AI behavior tools that players can script and mod, with all their appropriate hooks, for NPC, Faction, Sector, and System-wide.


--any other ideas or mitigations strategies, add your thoughts below!

Replies (5)

photo
1

The reason I created this, is that I think contracts are the most important thing for SE2 development. It is the 'key' to the future builds of players. Art style team is already 'prime' inspired, everything they design up is great. The physics is amazing, and will continue to be increased better. The block-building design is that perfect 'medium' of complexity and achieve-ability for players, and has much more plans in the works from the team.


But...contracts are the future. Just as blocks enable players to create innovative things and scenarios, I think contracts will be the blocks that create a living world, when npc and multiplayer are brought into them. That is the inspiration for the future ideas in this.


Anyway, some extra thoughts on the points:


On Point 2: disadvantage of using Radiant AI method of generating random contracts, is that...'What if a player doesn't do them?'. Possible mitigation strategy: Make contracts on a timer, that re-populate new ones over time. Doesn't fix any overarching accomplishment goals (unless CA progress level is tied to a 'total' amount of contracts accomplished), but it does equip the player with the ability to pick and choose what type they 'want' to do for their individual character progression (credits/resources). The harder method, but more impactful in the long run, would be to include a set of 'failure conditions' or 'non-completion flags' to the contracts, meaning there is a cost to not completing them.


But that would be more appropriate to Point 3. As a rule of thumb, every contract will need double the amount of coding for Point 3, half for success, half for failure, since each contract would be in response to a goal/need (push/pull) from the AI...meaning if you don't have failure conditions built in, the AI goes 'dumb'. They need to be able to re-create another goal/need based on failures, all the way through the different tiers they have their scope in. (contracts for npcs, factions, etc). Nested.


Money: fits in with the 3 types listed above, with the same type of advantages and draw-backs. Trade is, fundamentally, a beneficial transaction between two parties. With Point 1 or 2, the benefit is just to you, the benefit to the AI is none. With a dynamic economy, the AI will flourish or starve based on trading, which again is challenging to create. Right now credits just go into a black-hole, but to include a real economy...a push-pull generation system of contracts? Adam Smith's 'Wealth of Nations' raised an interesting point, nations at the time were obsessed with the amount of gold they had, and it's value to currency. He rightly surmised those values fluctuated, but economics currency is 'really' based on something that doesn't fluctuate...the time is took a farmer to grow a crop. At the time, it was fixed. Which meant, -that- was the real dollar, money was just a 'reflection' of that time.


Relation to SE2? The time it takes for a player to create a base from scratch, that is your measurement of 'wealth'. Meaning, how much you buy iron for at a trade station will be 'based' on how long it takes a player to mine out that same amount. That is your initial pricing, for Point 3. The other two money is just a time saver, or a benchmark for progression. (edit- And balance will be impossible, anyway, as Ayn Rand 'Atlas Shrugged' so eloquently showed how certain people will create new technologies, and reset the 'board' on the game. Flexibility, not perfection, is preferred in long-term stability.)

photo
1

Ayn Rand's whole thrust of her book was shadowing certain driven people, who have an outstanding good new idea that can change things, and the push-back from what came before...fascinating illustrations of the social processes. Meaning an economy will always change, with new thoughts introduced.

photo
photo
1

One thing I dislike about the current contract system, aside it's repetitive nature, is they are just props we can dismantle afterwards. We can do the contract, claim our reward and then come back and undo the work we just did with no consequence. I hope they won't allow us to grind down every structure we encounter once they add NPCs to the game.

But yeah, we do need some level of procedurally generated contracts, or at the very least some random element in them. I like that they added missions where we have the freedom to build as we see fit or gather resources any way we chose, but we still have too many that just play out the very same each time we do them, just in a different place. They need to find some way to at least make variances in the contract, like vary the objectives, add random structures and obstacles and not always give us all the stuff we need at arm reach. The rewards also need to be adjusted as well, they often seem stupidly pitiful compared to what we have to provide to complete the mission.

photo
1

Yeah, for the 'Radiant' System, the logical solution would be to treat each Unknown Encounter as a 'set-piece', and then have a list of additions you can add or remove to the encounter, which generates the contract objectives. Like other systems games have created, have a list of enemy encounters, equipment repair, loot retrieval, npc takedown, npc rescue, npc retrieval, etc, that you can 'slot' into the set-piece, randomly. Endless Encounters for players. If you could chain set-pieces together, as well, to make some 'raid' type encounters, to enable an increased difficulty for groups of players.


Works for a while, and has the advantage of a small creation from the dev team can be added into the matrix to enable a ton of new variances in the set-pieces when producing encounters.


Disadvantages, being the illusion of impact on the world, the illusion of actually helping the mission giver. What if you never take the mission to rescue a npc? Mitigations: For Single Player...dunno. Maybe have dynamic missions on a timer, and they will raise or lower your Sector Level. A bit harsh, but do-able. The other methods of giving a purpose to your contracts all lead to Point 3, where contracts are generated dynamically, again, but in response to some sort of over-arching goal/need for the AI. They could still be set-pieces, with a list of tweaks to generate, but the 'list' is limited depending on what 'type' of goal/need is in charge of generating the contract. Contracts would be building blocks to the AI's motivational generation for deciding them.

photo
photo
2

We are still missing a lot in the game. There is no faction logic yet, nor any real consequences for grinding down NPC grids. What we have is a rough, basic contracts system that will probably still change a lot. So don't expect a finished system anytime soon.

I know many people want to jump in and play this game, but I think this comes from some miscommunication from the developers. They promised us a "vertical slice", and you might expect things to be playable once they release features, but they are still far from being finished. Some features can only work properly in combination with several other systems that are simply not in the game yet.

In the last update, we don't even have a mention of "vertical slice" anymore. And IMO that's a good thing. They can keep the term for internal use, but it is better not to confuse customers with the idea of "fully developed features", because they are not, especially when it comes to gameplay features.

Some base game systems, like terrain or weather, can be developed and released as part of a vertical slice, to some extent. Even those, however, can and probably will be modified later to better integrate with the gameplay.

For example, I want water to have a real impact on gameplay. Use it to cool down reactors or make concrete. For the latter, the most immersive way would be pouring water directly on top of certain voxel types. The voxel and water systems might be considered fully developed, but in order to allow for this kind of immersive gameplay feature, they might still require some modifications.

So there can never really be "fully developed" features at this stage.

And tbh, I don't care if it takes a long time to make contracts good enough, as long as we eventually get there. It is better to take longer than to end up with something boring.

It is a tough situation for the devs now. They released the game in EA in an alpha stage. On one hand, there are players impatiently waiting for new features, while on the other hand, some basic systems are still unfinished. This has already led to bad reviews on Steam.

I personally don't mind all of those early alpha issues, as long as I like the "promise" of the finished game. And there are many things that concern me about that.

For example, putting contracts, as you say, to be the focusr of the sequel often seems at odds with the original game's sandbox freedom and balance. I genuinely believe that the sandbox basics have to come first, and contracts should be built on top of them.

Otherwise, we will continue having this frustrating situation where I am not happy with the core sandbox gameplay, while others are not happy with the contracts.

Personally, I am all about generated contracts based on the player's current progression level and other parameters, like faction relations and the overall "world development level". Static contracts make sense to me for the campaign and tutorials, but not for the standard survival mode.

photo
1

I think they have no choice about leaning on the contract to find players things to do. The survival aspect is minimal right now, we need other things to keep us busy. Contract give us some reason to build, stockpile and unlock more blocks, but that too get stale quickly. At some point, we have it all and no more need to engineers anything aside from just testing thing out or building things for fun.

photo
1

To clarify, I think contracts are the 'future' of SE2, as a type of building 'block' for players and the devs to use for the gameworld. As far as delaying it to a future expansion with the finished product, I am totally fine with that, I can see what they are building out now and experimenting with, and just fishing for some ideas generating for that future for them, from the people here.

photo
photo
1

As it stands, the random encounters in space are just as repetitive and from a very small set but good for collecting loot. And yet some of the loot is not useful. For example, gravity generators has cores that are impressively valued so I can't sell them and I can't build the block to use them. Reactors are similar. Both are easy to find by scavenging wrecks.

What I would like to see is a tech progression system. The present system of dropping licenses with contracts is forcing both a linear path through the game along with the tedium of 'fly to the target area' with the wait to get there, 'perform some mundane and nonsensical task', perhaps the bonus of hunt the ore and mine it to get materials to build the required blocks, and finally the tedious flight back to place you came from.

NOTE: I meant that about nonsensical. The Survival framing mission is either find the tools and materials to fix the Calypso, or to enhance the colonization effort in the system. Flying off from the Calypso without having a GPS marker is nonsensical. Having conversations with a petulant brother implies some sort of radio communication with ones suit, so one should have a marker of some sort. Taking out renegade base and ships makes some limited sense. Building infrastructure in places that will be erased does not. Allowing us to capture renegade ships only to delete them at some arbitrary point also makes no sense.

So, there are a host of issues to address and it is clear that Keen is focused on upgrading the character of the game and not on the details of playing through it. Thus we should be making suggestion for incremental improvements that can be made quickly rather than asking for a full redesign of the contract system.

1, Leave the results of a contract in the game for the player to use at will. Personally, like to revisit site to harvest known ore bodies rather than meander through the universe looking for new ones. I would also accept being able to drop a 'Recycle Me' beacon when I have finished with a site. This could also be applied to 'Unknown Signal' encounters.

2. The usefulness of provided grids is hampered by the 'No building of additions' feature. It seems especially silly when we can grind the things up for their components. The Barn next to the FTUE station is a primary example. I wanted to use it as shipyard to build my first hydrogen ship. I could and did build out the smelter projection provided. I could not add more power generation. Please consider removing this feature.

3. Accepting a contract should, immediately, unlock the requirements of the contract. I suggest that the Datapad recovered in the initial contract be a special 'Current Contract Terms and Conditions' datapad, automatically updated whenever a contract is ACCEPT'ed or ABANDON'ed. The content would be the content of the pop-up boxes that appear as one progresses through the contract.

This would allow the player to properly prepare for each job, rather than flying to the site only to discover that he is not prepared properly and needs to fly back to resupply, refit or get a different contract to work on.

4, Fix the tech progression. This is much harder and probably not a quick fix. The need is for a way to unlock new blocks.

4a. Learning by grinding. Grinding down a block teaches you how to build a new one. Perhaps it takes more the one instance to teach the lesson. If there is a progression tree, perhaps only allow the unlock of available nodes, i.e. it doesn't unlock unless it is a leaf of the existing tree.

4b, Inheritance. Find a strongbox on a wrecked ship with the ships paper, licenses for all box used in the ship construction. Return the box to a contract terminal to transfer the licenses to the played, and possibly ownership of ship.

4c. Purchase. Stock licenses in the trade terminal. Make them expensive, pay for a college degree kind of expensive, Course for a Batchelor, Masters or Doctorate degree kind of expensive (this is the American college experience I am thinking of here).

photo
1

This is a lot to read... but I will agree that contracts need depth. Maybe the beginning contracts are 'stop and go' contracts, but the later ones get a bit more serious, take out 20 drones to unlock special blocks or lots of cash... repeatable missions in general for that, but also 'extreme' contracts that require you to build a base near another one in order to defend it or something, and then finally attack the other base....

Could even go as far to make PvP contracts where players could offer rewards for attacking and destroying defenses at another base... but that's gonna take some doing.

photo
1

Yeah, was interested in hearing maybe (hopefully) from some server admins, AI modders, or world creation modders, to see what they would like to have -if- contracts were developed into a 'block' style, that you (the player) could interact with. If contracts could be generated for:

1. NPC to Player

2. Player to NPC

3. NPC to NPC

4. Player to Player


A flowchart GUI that players would play with, trying it out. If it could go from a single entity to a single entity, or a faction to a faction, as well, that would be icing on the cake to make them able to be 'nested' within the game world. For multiplayer, players will create their own factions, hence the idea for single vs multiple with their 'scope' for the nesting when creating them. With NPC enroute, create a 'guard' type of contract. With multiple factions, NPC or Player, create a 'trading' type of contract. That's the idea of it.

photo
Leave a Comment
 
Attach a file
You can't vote. Please authorize!