ATTENTION! The process of updating WiKi to version Eco 10.x has begun. Those wishing to participate can find out more Information on our ECO Contribution Wiki Discord.

Contracts

From Eco - English Wiki

When proposing laws and posting contracts at Contract Boards, the game offers a powerful set of clauses and parameters players can use to write the terms of a law or contract.

Clauses

Add/Remove Blocks

This clause is used to define how many of a particular block type must be present on a particular property.

Parameters:

  • Property: Sets which property the clause refers to. Properties are defined by the use of deeds and property claim flags.
  • Surface: Defines whether only the surface of the property is checked for this clause. If this isn't checked, then the game will also examine five blocks deep into the property.
  • Condition: Sets the condition direction relative to the specified block types and quantities. You can choose either to have more or less than the specified number of blocks.
  • Blocks: Defines the block type and quantity that the condition is relative to. You can choose multiple block types, and a quantity for each.

Build Road

This clause requires a road of the specified type to be built between two locations, marked with Construction Posts.

Parameters:

  • From: Sets the starting point for the road.
  • To: Sets the ending point for the road.
  • Width: Sets the minimum width for the road along its length. The road may be wider than the width specified.
  • Type: Sets the type of road that must be built. The road may be made of dirt, stone, or asphalt, but not a combination.

Build Room

This clause requires a room to be built at the specified location.

Parameters:

  • Property: Defines a position, marked with a Construction Post, where the room must be built.
  • Volume: Specifies the minimum interior volume for the room.
  • Materials: Specifies what blocks the room must be built with, at minimum.

Clear Tree Stumps and Debris

This clause requires all tree stumps and felled tree debris to be cleared from a specified property. The contractor will be given partial access rights to the property needed to perform the work.

Parameters:

  • Property: Sets which property the clause refers to. Properties are defined by the use of deeds and property claim flags.
  • To Remove: Calculates the number of stump and debris blocks that must be cleared from the property. This number cannot be specified to allow partial clearing of stumps and debris.

Custom Clause

This clause allows the client to type (in words) what work they would like to have done. Custom clauses disallow automatic acceptance of a contract, and the client must manually confirm that the condition was met. Because of this, the game encourages players to use caution with these clauses and only use them with reputable players.

Parameter:

  • Work: A text box that the client can fill in to define what work needs to be done.

Harvest Field

This clause requires all plants of specified types to be harvested from a property and placed into a specific container. The contractor will be given harvesting rights on the property.

Parameters:

  • Property: Sets which property the clause refers to. Properties are defined by the use of deeds and property claim flags.
  • Deposit In: Specifies the container that the specified products must be placed into.
  • Resource Types: The types of plant products that must be harvested and put into the container.
  • Plants on Property: Calculates how many plants produce the specified resources.
  • Harvested: Provides a running total of how many plants have been harvested since the contract was made.

Mow Lawn

This clause requires all grass on the specified property to be cut with a scythe or other mower. The contractor will be given mowing rights on the property.

Parameter:

  • Property: Sets which property the clause refers to. Properties are defined by the use of deeds and property claim flags.

Nested Clause

This clause is used to define a set of sub-clauses. This clause is useful for specifying more complex requirements than a single clause allows.

Parameters:

  • Condition: Specifies how many of the sub-clauses must be satisfied: all, any, or none.
  • Clauses: Specifies sub-clauses. Any clause may be nested within a Nested Clause.

Payment on Completion

This clause provides a payment from the client to the contractor, held in escrow for the duration of the contract. A deposit from the contractor may also be held in escrow with this clause, in case the contractor fails to complete the contract.

Parameters:

  • Currency: Specifies which currency that the clause is defined in. Any payment or deposit specified must be covered in this currency.
  • Payment: Specifies how much the client will pay the contractor once the contract is complete. Neither the client nor the contractor will have access to the funds while the contract is in force. If the contractor fails to complete the work in time, the funds will be returned to the client.
  • Deposit: Specifies how much the contractor must put down as a deposit in case they fail to complete the contract. If the work is completed, then the contractor will receive the funds back. Otherwise the funds will be paid to the client as penalty for failure. Adding a deposit clause will prevent potential contractors from accepting the job if they don't have the currency available to cover the deposit.

Plow Field

This clause requires the client to plow a certain number of dirt tiles on the client's property for farming. This clause also gives the contractor permissions to plow fields on the property until the contract is completed.

Parameters:

  • Property: Sets which property the clause refers to. Properties are defined by the use of deeds and property claim flags.
  • Field Size: Sets the number of dirt tiles to be plowed on the property.

Put Items in Container

This clause requires specified items to be put into a container of the client's choosing. This clause does not automatically grant the contractor access to the container, but a separate Permissions clause can be used for that purpose.

Parameters:

  • Container: Sets which container, such as a stockpile, storage chest, or cart, the specified items are to be put into. Only containers the client owns can be specified.
  • Items: Defines the item types and quantities that must be placed in the container. Existing items are not counted towards the total.
  • Still To Add: Shows how many items are left to add to the container. Cannot be set directly.

Receive Permissions

This clause grants the contractor permissions to access a particular container.

Parameters:

  • From: Sets which container, such as a stockpile, storage chest, or cart, that permissions are to be granted for. Only containers the client owns can be specified.
  • Contents: As of Beta 7.1.2, this does not show the contents of the container as expected.
  • Gain: Specifies the permissions that are to be given. Either object rights or property rights can be given, and the permissions can be given for the duration of the contract or permanently, either at the start or end of the contract term.

Reputation

This clause limits which players may accept a contract based on that player's reputation on the server.

Parameter:

  • Reputation: Sets the minimum reputation score required to accept the contract. If "Global Reputation" is selected, reputation from all players on the server is considered. If "Relative Reputation" is selected, only opinions from players that the client has rated favorably will count.

Transport

This clause requires the contractor to move items from one container to another. All items in the source container must be deposited into the destination container. The contractor will be given permissions to take the specified items from the source container and put them into the target container, but will not have any other access to the containers.

Parameters:

  • Source: Sets which container, such as a stockpile, storage chest, or cart, the specified items are to be taken from. Only containers the client has permissions for can be specified.
  • To Move: Shows the item types and quantities that must be moved to the destination container. All items from the source container at the time the contract is posted are shown here.
  • Target: Sets which container, such as a stockpile, storage chest, or cart, the specified items are to be put into. Only containers the client has permissions for can be specified.

Example contracts

Contracts fill several economic roles that stores aren't suitable for, such as hiring someone to build a road, or for making a one-time purchase of goods.

One-time purchase

Purchase contract in-game

This contract example allows someone to make a one-time purchase of a Farming Skill Scroll, payable upon receipt. The client designates a particular storage chest for the skill scroll to be placed in, and provides temporary access to the chest so the contractor can perform the work. Generally, the designated chest should be empty until the contractor deposits the item, since access to the chest will allow the contractor to take items out as well.

Road construction

Road construction contract in-game

This contract example allows a client to commission a contractor to build a road that connects two points, designated by construction posts. The client can designate any construction post that they have placed as an endpoint, including posts on unclaimed land.

This type of contract can be used to have a new road built, widen an existing road, or change the road material of an existing road, provided that no road already exists between the two points that meets the conditions specified. This type of contract is the primary means for a player with skill in Road Construction to profit off their skills. In the example to the right, the construction posts are renamed so players can differentiate between them.