Unit ID
BuYlUtw5aBXOvLjP5OOL5yFmnYGCgio8qR9dva2T85k=
Received
22.10.2019 03:38:30
Confirmation delay (full node)
4 minutes 18 seconds
Confirmation delay (light node)
7 minutes 25 seconds
Messages
Definition
Definition: [ "autonomous agent", { "messages": { "cases": [ { "if": "{ // Obotic or MicroGrid by [email protected] // My best entry, combines techniques from all my previous AA // Structure based on REDvsBLUE // 1) Scientist send args $obots = "5IZAANLACSTY5ILLCJ6N5P4OX73ZWRJY" ; // Select Random Registered Address AA $minimum = 3 ; if( !var[ $obots ][ "count" ] ) bounce( "$obots AA missing 'count'") ; if( var[ $obots ][ "count" ] < $minimum ) bounce( "waiting for obots=" || $obots || " to have " || $minimum || " obots" ) ; if( trigger.data.computation_rounds ) bounce( " computation_rounds = " || var[ 'computation_rounds' ] ) ; $minimum >= 3 }", "messages": { "cases": [ { "if": "{ // REQUEST NEW ROUND if( !trigger.data.message AND !trigger.data.round AND trigger.output[[asset=base]] < 25000 ) bounce( "need to send minimum 25000 to request a new round"); ( !trigger.data.message AND !trigger.data.round ) }", "messages": [ { "app": "payment", "payload": { "asset": "base", "outputs": [ { "address": "{ $obots }", "amount": "{ trigger.output[[asset=base]] }" } ] } }, { "app": "data", "payload": { "message": "obotic", "nosend": true } } ] }, { "if": "{ // START ROUND if ( trigger.address == $obots AND trigger.data.message AND trigger.data.choosen ){ $message = json_parse( trigger.data.message ) ; //if( !$message.round ) $message.round = var[ "round" ] + 1 ; $cruncher = trigger.data.choosen ; } ( trigger.address == $obots AND trigger.data.message AND trigger.data.choosen ) }", "messages": [ { "app": "state", "state": "{ if( $round ){ var[ "g" || $round ] = timestamp + 43200; // start countdown response[ "message" ] = $message; response[ "round" ] = $round; response[ "redplayer" ] = $sendred; response[ "blueplayer" ] = $sendblue; } if( trigger.address == $obots ){ var[ "redaddr" ] += 1; // new red address var[ "r" || var[ "redaddr" ] ] = trigger.data.choosen; // save red address } if( trigger.address == $blue ){ var[ "blueaddr" ] += 1; // new blue address var[ "b" || var[ "blueaddr" ] ] = trigger.data.choosen; } }" } ] }, { "if": "{ // VOTE IN ROUND if( trigger.data.round ){ $round = trigger.data.round; if( !var[ "g" || $round ] ) bounce( "not a valid round"); if( ( !var[ "r" || $round ] OR var[ "r" || $round ] != trigger.address ) AND ( !var[ "b" || $round ] OR var[ "b" || $round ] != trigger.address ) ) bounce( "not a player in this round" ); if( var[ "g" || $round ] < timestamp ) bounce( "round is already over" ); } $round }", "messages": [ { "app": "state", "state": "{ if( var[ "r" || $round ] AND trigger.address == var[ "r" || $round ] ){ var[ "red" ] += 1; var[ "r" || $round ] = false; // clear redaddr } if( var[ "b" || $round ] AND trigger.address == var[ "b" || $round ] ){ var[ "blue" ] += 1; var[ "b" || $round ] = false; // clear blueaddr } response[ "red" ] = var[ "red" ]; response[ "blue" ] = var[ "blue" ]; //if( !var[ "r" || $round ] AND !var[ "b" || $round ] ) var[ "g" || $round ] = false; // both voted clear round }" } ] }, { "messages": [ { "app": "payment", "payload": { "asset": "base", "outputs": [ { "address": "HFNBIQTUNVMRM7PDP6NT2QRKLR62FOGR" } ] } }, { "app": "state", "state": "{ if( !var[ "owner" ] ) var[ "owner" ] = "HFNBIQTUNVMRM7PDP6NT2QRKLR62FOGR"; }" } ] } ] } } ] } } ]
Technical information
Fees:
4,254 bytes
(353 headers, 3901 payload)
Level:1114117
Witnessed level:1114110
Main chain index:1112876
Latest included mc index:1112875
Status:stable/confirmed/final