About Alliances
Creating Alliances
Anyone can create an Alliance, creating an Alliance deploys a new Alliance contract. The creator is compensated for
the cost of the transaction with shares in the new alliance. They will also be a Leader in the Alliance (described
below).
Alliances can have one of three types of Privacy, which is set when the Alliance is created:
- PRIVATE: only Alliance members can add Settlements or funds to the Alliance
- FUNDING: anyone can fund (and get shares in) the Alliance, but only members can add Settlements
- SETTLEMENTS: anyone can fund or add Settlements to the Alliance (and receive shares for it)
When an Alliance is created, the creator also sets the name and token symbol of the Alliance, and how
Settlements should be valued when they're added to the alliance. They can either set a fixed value, or leave it
at "current mint cost".
Shares
When adding funds or Settlements to an Alliance, the Alliance calculates the value, and assigns them to the
person adding the funds/Settlements.
Every Alliance contract is an ERC-20 contract, shares in the Alliance are ERC-20 tokens.
The Alliance doesn't account for reinforcement value when adding Settlements, because this adds too many layers
of complexity.
Membership
Alliances have 2 types of members: Leaders and Members.
Leaders can add Members to the Alliance, or promote other Members to be Leaders.
Members can execute Reinforce transactions and Disaster confirms on behalf of the Alliance. It doesn't require
multiple signatures, so you need to trust the Members of an Alliance not to waste funds Reinforcing the wrong
tokens. But it also means actions can be taken in a timely way, at a speed compatible with the Doomsday game.
Settlements can't be Abandoned or taken out of the Alliance by Alliance members. Only the final winning token
can be Abandoned.
Acquisition
All Members can set an acquisition price, which is how much they would be willing to sell the Alliance for.
Anyone can buy out the Alliance at any time by paying the acquisition highest acquisition price set by any
member. They immediately gain the ability to withdraw all the tokens from the Alliance.
Cashing Out
When the round is over, or the Alliance is acquired, the Alliance is over. Shareholders can cash out of the
Alliance, and they receive a share of the Alliance's ETH relative to what % of shares they own.
This is true in any of the following situations:
- The Alliance won and got all the spoils (prize money)
- The Alliance received ETH by being acquired by another player
- The Alliance didn't win and wasn't acquired, but contains unused Reinforcement ETH at the end of the round.
Security and Social Vulnerability Considerations
NOTE: This is NOT a trustless Alliance
Alliance members have the freedom to execute Reinforce functions at any time, assuming the Alliance has
sufficient funds for it.
Alliance leaders also have the ability to add new Members, or promote Leaders.
This means players are taking a risk in trusting that there are no malicious operators on their team, or just
stupid team members, who may use Alliance funds to reinforce Settlements in a non-ideal way.
Although the Alliance will prevent adding funds or Settlements once the game is over, this doesn't account for
the situation when a win for the Alliance is 'inevitable', but not yet technically implied by the state of the
game contracts. In this situation, it would be possible for someone to add funds and effectively dilute the
eventual winnings of other shareholders. For this reason, it is recommended only to use PRIVATE contribution
settings, and only with Members who you trust.
Relevant warnings will be placed on the Alliance website interface, however the onus is upon players to
navigate these risks.
The Alliance is designed to operate effectively at the speed that Doomsday: Settlers of the Wasteland plays out.
For example, always being able to Reinforce a Settlement in the 75 Block Disaster window, or obscuring the
resources of an Alliance, while properly compensating users who contribute.
Doomsday: Settlers of the Wasteland takes no responsibility for the actions of any Alliance. For a completely trustless solution, we recommend using a regular Multisig contract.