Nomic a rule changing game

avsaavsa Member Posts: 68 ✭✭
Nomic ( is a very fun pen and paper game to play with friends. I've done it with friends to kill time on long bus trips a few years back: you write down a pad of paper a couple of basic rules of the game, including a few rules on how to add and vote for rules, and you keep playing in turn until the rules change enough for someone to be declared the winner or that the game becomes unplayable.

Ethereum would be a great platform for an online version of Nomic, with real stake. First you use some way to know that all players are different people (no sock puppets) and then everyone puts down some amount of money that can't be moved by the initial contract. Then the players vote on changes to the contract until someone is able to withdraw the money. Since some money will always be spent playing, if the money is distributed equally, everyone will have lost money.

Has anyone ever played Nomic?


  • aatkinaatkin Member Posts: 75 ✭✭
    edited April 2014
    I've read about it before and funnily enough I was thinking about this walking to work this morning. There's no easy way to programatically determine if an address is a sock puppet or even another contract, but it shouldn't matter. Just use proof of stake, if you pay to play it's all good, sock puppets or no. Alternatively we'd have to come up with a registration mechanism that somehow proves you're an individual human. That'd be important for the Basic Income guys as well.

    My understanding is that as of PoC4 the code is stored basically the contract is immutable. You can't overwrite beginning storage to overwrite contract code.

    So the way I'd implement this would be to have a voting mechanism for contract changes. Store the Serpent or LLL of the proposed change (full new contract) in contract storage as well as the bytecode. People can inspect the code and determine that it does in fact match the bytecode and it does what they expect (on the testchain or simulators).

    Then if the vote passes a call is made to create the new contract with the new bytecode and to suicide the old contract.

    Maybe there's a cleaner way to do this. Any ideas?
  • avsaavsa Member Posts: 68 ✭✭
    I'm pretty sure it's possible to change contracts, there's more than one example online.

    I don't think the sock puppet is a hard thing: it's a game, you should play with friends you already know (online or offline). It's even better to play stab-your-back games with old time friends. Resentment just adds to the fun.
  • aatkinaatkin Member Posts: 75 ✭✭
    Any chance we could try this using Andy's DAO/People's Republic of DAO?
  • avsaavsa Member Posts: 68 ✭✭
    This would be perfect using Andy's DAO. All it needs is a group of players to divide up a reward.
Sign In or Register to comment.