Transaction Details
SMART CONTRACT
Transaction Hash
dfac56eedb48a6e53d14ed7cb3adb47e056a795ac7325caa6946e00ed04d3ad4
Block Status
Smart Contract State
SCID Reserves
| SCID | Amount (Atomic Units) |
|---|---|
| 0000000000000000000000000000000000000000000000000000000000000000 | 0 |
String Variables
| Key | Value |
|---|---|
| C | 2f2f2020436f7079726967687420323032342e20436976696c776172652e20416c6c207269676874732072657365727665642e0a2f2f202054454c4120446563656e7472616c697a65642057656220446f63756d656e74202854454c412d444f432d31290a46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226e616d65486472222c202267616d65706c61792e6a7322290a33312053544f524528226465736372486472222c202247616d65706c6179204a532066696c6522290a33322053544f5245282269636f6e55524c486472222c202222290a33332053544f524528226455524c222c202267616d65706c61792e6a7322290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c202222290a33362053544f5245282266696c65436865636b43222c202239333564643737376262366630343935313737356566366435336331306464363934333032386230653632656565666364313965346137323463336264303522290a33372053544f5245282266696c65436865636b53222c202264316565363661653733396638353762363761646239623237633163393639313964323338393538333066623766396435393764636536393861383531353722290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a2f2f2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a2f2f2047616d65206d656368616e6963730a0a66756e6374696f6e206669726528297b0a09636f6e737420706c61796572203d2067616d652e706c617965723b0a0969662028706c617965722e636f6f6c646f776e203e2030292072657475726e3b0a09706c617965722e636f6f6c646f776e203d203130303b202f2f2072656c6f61642074696d650a09636f6e737420616e676c65203d20706c617965722e616e676c653b0a09636f6e737420636f73203d204d6174682e636f7328616e676c65293b0a09636f6e73742073696e203d204d6174682e73696e28616e676c65293b0a0a09636f6e7374206278203d20706c617965722e78202b20636f73202a2034303b0a09636f6e7374206279203d20706c617965722e79202b2073696e202a2034303b0a0a0967616d652e70726f6a656374696c65732e70757368287b0a0909747970653a2022706c61796572222c0a0909783a2062782c0a0909793a2062792c0a0909616e676c653a20706c617965722e616e676c652c0a090973706565643a20312e322c0a202020202020202064783a20636f73202a2031322c0a090964793a2073696e202a2031322c0a09096c6966653a20313030302c2f2f206d7309090a090964616d6167653a20342c0a20202020202020207374617274583a2062782c0a20202020202020207374617274593a2062790a097d293b0a090a0973667847756e28293b0a7d0a0a66756e6374696f6e206669726554757272657442756c6c65742829207b0a09636f6e73742074203d2067616d652e706c617965722e7475727265743b0a0969662028742e636f6f6c646f776e203e2030292072657475726e3b0a096966202867616d652e706c617965722e616d6d6f2d2d203c203020292072657475726e3b200a09742e636f6f6c646f776e203d203630303b202f2f2072656c6f61642074696d650a0a09636f6e737420616e676c65203d2067616d652e706c617965722e616e676c65202b20742e6f66667365743b0a09636f6e737420636f73203d204d6174682e636f7328616e676c65293b0a09636f6e73742073696e203d204d6174682e73696e28616e676c65293b0a0a09636f6e7374206278203d2067616d652e706c617965722e78202b20636f73202a2032353b0a09636f6e7374206279203d2067616d652e706c617965722e79202b2073696e202a2032353b0a0a0967616d652e70726f6a656374696c65732e70757368287b0a0909747970653a2022747572726574222c0a0909783a2062782c0a0909793a2062792c0a0909616e676c653a20616e676c652c0a090973706565643a20312e322c0a090964783a20636f73202a2031322c0a090964793a2073696e202a2031322c0a09096c6966653a203830302c0a090964616d6167653a2035302c0a09097374617274583a2062782c0a09097374617274593a2062790a09090a097d293b0a0a0973667847756e28293b0a7d0a0a0a0a66756e6374696f6e20737061776e456e656d7942756c6c657428782c20792c20616e676c6529207b0a09636f6e737420636f73203d204d6174682e636f7328616e676c65293b0a09636f6e73742073696e203d204d6174682e73696e28616e676c65293b0a0a09636f6e7374206278203d2078202b20636f73202a2034303b0a09636f6e7374206279203d2079202b2073696e202a2034303b0a0a0967616d652e70726f6a656374696c65732e70757368287b0a0909782c0a0909792c0a0909616e676c652c0a090973706565643a20312c0a090964783a20636f73202a2031322c0a090964793a2073696e202a2031322c0a09096c6966653a203930302c0a0909747970653a2022656e656d79222c0a090964616d6167653a20342c0a09097374617274583a2062782c0a09097374617274593a2062790a097d293b0a7d090a0a66756e6374696f6e20737061776e426967456e656d7942756c6c657428782c20792c20616e676c6529207b0a09636f6e737420636f73203d204d6174682e636f7328616e676c65293b0a09636f6e73742073696e203d204d6174682e73696e28616e676c65293b0a0a09636f6e7374206278203d2078202b20636f73202a2034303b0a09636f6e7374206279203d2079202b2073696e202a2034303b0a0a0967616d652e70726f6a656374696c65732e70757368287b0a0909782c0a0909792c0a0909616e676c652c0a090973706565643a20302e362c0a090964783a20636f73202a2031322c0a090964793a2073696e202a2031322c0a09096c6966653a203830302c0a0909747970653a202274616e6b222c0a090964616d6167653a2031302c0a09097374617274583a2062782c0a09097374617274593a2062790a097d293b0a7d090a0a66756e6374696f6e2067657452616e646f6d496e7465676572286d696e2c206d617829207b0a0972657475726e204d6174682e666c6f6f72284d6174682e72616e646f6d2829202a20286d6178202d206d696e202b20312929202b206d696e3b0a7d0a0a66756e6374696f6e20737061776e456e656d7946726f6d42617365286261736529207b0a09636f6e7374207665727473203d20626173652e706f6c793b0a09636f6e737420636f756e74203d2076657274732e6c656e6774683b0a0a092f2f207069636b20612072616e646f6d20656467650a09636f6e73742069203d204d6174682e666c6f6f72284d6174682e72616e646f6d2829202a20636f756e74293b0a09636f6e7374206a203d202869202b203129202520636f756e743b0a0a092f2f206564676520656e64706f696e747320696e20776f726c642073706163650a09636f6e7374207831203d20626173652e78202b2076657274735b695d2e783b0a09636f6e7374207931203d20626173652e79202b2076657274735b695d2e793b0a09636f6e7374207832203d20626173652e78202b2076657274735b6a5d2e783b0a09636f6e7374207932203d20626173652e79202b2076657274735b6a5d2e793b0a0a092f2f207069636b2072616e646f6d20706f696e7420616c6f6e672074686520656467650a09636f6e73742074203d204d6174682e72616e646f6d28293b0a09636f6e7374206578203d207831202b20287832202d20783129202a20743b0a09636f6e7374206579203d207931202b20287932202d20793129202a20743b0a0a092f2f20636f6d70757465206f757477617264206e6f726d616c0a09636f6e7374206478203d207832202d2078313b0a09636f6e7374206479203d207932202d2079313b0a09636f6e7374206c656e203d204d6174682e6879706f742864782c206479293b0a0a092f2f206e6f726d616c697a65642070657270656e646963756c617220286e6f726d616c290a09636f6e7374206e78203d202d6479202f206c656e3b0a09636f6e7374206e79203d206478202f206c656e3b0a0a092f2f20737061776e20656e656d7920736c696768746c79206f7574736964652074686520626173650a09636f6e737420737061776e44697374203d2032303b0a09636f6e7374207378203d206578202b206e78202a20737061776e446973743b0a09636f6e7374207379203d206579202b206e79202a20737061776e446973743b0a0a0a0a096c657420747970654e616d65203d20626173652e656e656d7954797065735b0a090967657452616e646f6d496e746567657228302c626173652e656e656d7954797065732e6c656e677468202d31290a095d3b0a09696628747970654e616d65203d3d202274616e6b22297b0a090967616d652e656e656d6965732e70757368287b0a090909747970653a20747970654e616d652c0a090909783a2073782c0a090909793a2073792c0a090909616e676c653a204d6174682e72616e646f6d2829202a204d6174682e5049202a20322c0a09090973706565643a20656e656d7954797065735b747970654e616d655d2e73706565642c0a09090968703a20656e656d7954797065735b747970654e616d655d2e68702c0a09090961693a20656e656d7954797065735b747970654e616d655d2c0a090909706f6c793a20656e656d7954797065735b747970654e616d655d2e706f6c792c0a09090966697265436f6f6c646f776e3a20302c0a09090966697265526174653a20656e656d7954797065735b747970654e616d655d2e66697265526174652c0a0909097765696768743a20656e656d7954797065735b747970654e616d655d2e7765696768742c0a090909696465616c52616e67653a20656e656d7954797065735b747970654e616d655d2e696465616c52616e67652c0a09090968756c6c5475726e53706565643a20656e656d7954797065735b747970654e616d655d2e68756c6c5475726e53706565642c0a0909097265706f736974696f6e696e673a2066616c73652c0a0909097475727265743a207b0a09090909616e676c653a204d6174682e72616e646f6d2829202a204d6174682e5049202a20322c0a090909097475726e53706565643a20656e656d7954797065735b747970654e616d655d2e7475727265745475726e53706565642c0a09090909706f6c793a20656e656d7954797065735b747970654e616d655d2e747572726574506f6c790a0909097d0a09097d293b0a097d656c73657b0a090967616d652e656e656d6965732e70757368287b0a090909747970653a20747970654e616d652c0a090909783a2073782c0a090909793a2073792c0a090909616e676c653a204d6174682e72616e646f6d2829202a204d6174682e5049202a20322c0a09090973706565643a20656e656d7954797065735b747970654e616d655d2e73706565642c0a09090968703a20656e656d7954797065735b747970654e616d655d2e68702c0a09090961693a20656e656d7954797065735b747970654e616d655d2c0a090909706f6c793a20656e656d7954797065735b747970654e616d655d2e706f6c792c0a09090966697265436f6f6c646f776e3a20302c0a09090966697265526174653a20656e656d7954797065735b747970654e616d655d2e66697265526174652c0a0909097765696768743a20656e656d7954797065735b747970654e616d655d2e7765696768742c202f2f205075736820706f7765720a09090977696e64736869656c643a656e656d7954797065735b747970654e616d655d2e77696e64736869656c640a09097d293b0a097d0a202020200a7d0a0a2f2f206e6f742075736564207965740a0a66756e6374696f6e20737061776e456e656d7952616e646f6d2829207b0a0967616d652e656e656d6965732e70757368287b0a0909783a204d6174682e72616e646f6d2829202a20574f524c445f572c0a0909793a204d6174682e72616e646f6d2829202a20574f524c445f482c0a0909616e676c653a20302c0a090973706565643a20302e312c0a090968703a20330a097d293b0a7d0a66756e6374696f6e20737061776e456e656d794f666673637265656e2829207b0a0a09636f6e7374207669657757203d207377202a207a6f6f6d3b0a09636f6e7374207669657748203d207368202a207a6f6f6d3b0a0a09636f6e73742063616d58203d2063616d43656e7465722e783b0a09636f6e73742063616d59203d2063616d43656e7465722e793b0a0a092f2f207069636b206120736964650a09636f6e73742073696465203d204d6174682e666c6f6f72284d6174682e72616e646f6d2829202a2034293b0a0a096c657420782c20793b0a0a096966202873696465203d3d3d203029207b202f2f206c6566740a090978203d2063616d58202d2076696577572f32202d203230303b0a090979203d2063616d59202b20284d6174682e72616e646f6d2829202d20302e3529202a2076696577483b0a097d0a096966202873696465203d3d3d203129207b202f2f2072696768740a090978203d2063616d58202b2076696577572f32202b203230303b0a090979203d2063616d59202b20284d6174682e72616e646f6d2829202d20302e3529202a2076696577483b0a097d0a096966202873696465203d3d3d203229207b202f2f20746f700a090978203d2063616d58202b20284d6174682e72616e646f6d2829202d20302e3529202a2076696577573b0a090979203d2063616d59202d2076696577482f32202d203230303b0a097d0a096966202873696465203d3d3d203329207b202f2f20626f74746f6d0a090978203d2063616d58202b20284d6174682e72616e646f6d2829202d20302e3529202a2076696577573b0a090979203d2063616d59202b2076696577482f32202b203230303b0a097d0a0a0967616d652e656e656d6965732e70757368287b20782c20792c20616e676c653a302c2073706565643a302e312c2068703a33207d293b0a7d0a2a2f |
| dURL | 67616d65706c61792e6a73 |
| descrHdr | 47616d65706c6179204a532066696c65 |
| dislikes | 0 |
| docType | 54454c412d4a532d31 |
| docVersion | 312e302e30 |
| fileCheckC | 393335646437373762623666303439353137373565663664353363313064643639343330323862306536326565656663643139653461373234633362643035 |
| fileCheckS | 643165653636616537333966383537623637616462396232376331633936393139643233383935383330666237663964353937646365363938613835313537 |
| hash | 64666163353665656462343861366535336431346564376362336164623437653035366137393561633733323563616136393436653030656430346433616434 |
| iconURLHdr | |
| likes | 0 |
| nameHdr | 67616d65706c61792e6a73 |
| owner | 6465726f317179347966376335373777717a767a7134347833306c7967686135776a7a377772687736646e76356e337071346634643761716c75717133306d37616b |
| subDir |
Transaction Information
Root Hash
Built Height
7138351
Block
Timestamp
1780511337438
Timestamp (UTC)
2026-06-03 18:28:57
Block Age
4h 17m ago
Fee
0.09126
TX Size
7.532 kB
Version
1
Confirmations
840
Signature Type
DERO_HOMOMORPHIC
DERO Asset
2
Ring Size
0.09126
Fees
0.00000
Deposited
Sender
dero1qy4yf7c577wqzvzq44x30lygha5wjz7wrhw6dnv5n3pq4f4d7aqluqq30m7ak
Ring Members (2)
Smart Contract Details
SC Balance
0.00000 DERO
Smart Contract Code
Smart Contract Arguments
| Name | Type | Value |
|---|---|---|
| SC_ACTION | uint64 | 1 |
| SC_CODE | string | "// Copyright 2024. Civilware. All rights reserved. // TELA Decentralized Web Document (TELA-DOC-1) Function InitializePrivate() Uint64 10 IF init() == 0 THEN GOTO 30 20 RETURN 1 30 STORE("nameHdr", "gameplay.js") 31 STORE("descrHdr", "Gameplay JS file") 32 STORE("iconURLHdr", "") 33 STORE("dURL", "gameplay.js") 34 STORE("docType", "TELA-JS-1") 35 STORE("subDir", "") 36 STORE("fileCheckC", "935dd777bb6f04951775ef6d53c10dd6943028b0e62eeefcd19e4a724c3bd05") 37 STORE("fileCheckS", "d1ee66ae739f857b67adb9b27c1c96919d23895830fb7f9d597dce698a85157") 100 RETURN 0 End Function Function init() Uint64 10 IF EXISTS("owner") == 0 THEN GOTO 30 20 RETURN 1 30 STORE("owner", address()) 50 STORE("docVersion", "1.0.0") 60 STORE("hash", HEX(TXID())) 70 STORE("likes", 0) 80 STORE("dislikes", 0) 100 RETURN 0 End Function Function address() String 10 DIM s as String 20 LET s = SIGNER() 30 IF IS_ADDRESS_VALID(s) THEN GOTO 50 40 RETURN "anon" 50 RETURN ADDRESS_STRING(s) End Function Function Rate(r Uint64) Uint64 10 DIM addr as String 15 LET addr = address() 16 IF r < 100 && EXISTS(addr) == 0 && addr != "anon" THEN GOTO 30 20 RETURN 1 30 STORE(addr, ""+r+"_"+BLOCK_HEIGHT()) 40 IF r < 50 THEN GOTO 70 50 STORE("likes", LOAD("likes")+1) 60 RETURN 0 70 STORE("dislikes", LOAD("dislikes")+1) 100 RETURN 0 End Function /*//--------------- // Game mechanics function fire(){ const player = game.player; if (player.cooldown > 0) return; player.cooldown = 100; // reload time const angle = player.angle; const cos = Math.cos(angle); const sin = Math.sin(angle); const bx = player.x + cos * 40; const by = player.y + sin * 40; game.projectiles.push({ type: "player", x: bx, y: by, angle: player.angle, speed: 1.2, dx: cos * 12, dy: sin * 12, life: 1000,// ms damage: 4, startX: bx, startY: by }); sfxGun(); } function fireTurretBullet() { const t = game.player.turret; if (t.cooldown > 0) return; if (game.player.ammo-- < 0 ) return; t.cooldown = 600; // reload time const angle = game.player.angle + t.offset; const cos = Math.cos(angle); const sin = Math.sin(angle); const bx = game.player.x + cos * 25; const by = game.player.y + sin * 25; game.projectiles.push({ type: "turret", x: bx, y: by, angle: angle, speed: 1.2, dx: cos * 12, dy: sin * 12, life: 800, damage: 50, startX: bx, startY: by }); sfxGun(); } function spawnEnemyBullet(x, y, angle) { const cos = Math.cos(angle); const sin = Math.sin(angle); const bx = x + cos * 40; const by = y + sin * 40; game.projectiles.push({ x, y, angle, speed: 1, dx: cos * 12, dy: sin * 12, life: 900, type: "enemy", damage: 4, startX: bx, startY: by }); } function spawnBigEnemyBullet(x, y, angle) { const cos = Math.cos(angle); const sin = Math.sin(angle); const bx = x + cos * 40; const by = y + sin * 40; game.projectiles.push({ x, y, angle, speed: 0.6, dx: cos * 12, dy: sin * 12, life: 800, type: "tank", damage: 10, startX: bx, startY: by }); } function getRandomInteger(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } function spawnEnemyFromBase(base) { const verts = base.poly; const count = verts.length; // pick a random edge const i = Math.floor(Math.random() * count); const j = (i + 1) % count; // edge endpoints in world space const x1 = base.x + verts[i].x; const y1 = base.y + verts[i].y; const x2 = base.x + verts[j].x; const y2 = base.y + verts[j].y; // pick random point along the edge const t = Math.random(); const ex = x1 + (x2 - x1) * t; const ey = y1 + (y2 - y1) * t; // compute outward normal const dx = x2 - x1; const dy = y2 - y1; const len = Math.hypot(dx, dy); // normalized perpendicular (normal) const nx = -dy / len; const ny = dx / len; // spawn enemy slightly outside the base const spawnDist = 20; const sx = ex + nx * spawnDist; const sy = ey + ny * spawnDist; let typeName = base.enemyTypes[ getRandomInteger(0,base.enemyTypes.length -1) ]; if(typeName == "tank"){ game.enemies.push({ type: typeName, x: sx, y: sy, angle: Math.random() * Math.PI * 2, speed: enemyTypes[typeName].speed, hp: enemyTypes[typeName].hp, ai: enemyTypes[typeName], poly: enemyTypes[typeName].poly, fireCooldown: 0, fireRate: enemyTypes[typeName].fireRate, weight: enemyTypes[typeName].weight, idealRange: enemyTypes[typeName].idealRange, hullTurnSpeed: enemyTypes[typeName].hullTurnSpeed, repositioning: false, turret: { angle: Math.random() * Math.PI * 2, turnSpeed: enemyTypes[typeName].turretTurnSpeed, poly: enemyTypes[typeName].turretPoly } }); }else{ game.enemies.push({ type: typeName, x: sx, y: sy, angle: Math.random() * Math.PI * 2, speed: enemyTypes[typeName].speed, hp: enemyTypes[typeName].hp, ai: enemyTypes[typeName], poly: enemyTypes[typeName].poly, fireCooldown: 0, fireRate: enemyTypes[typeName].fireRate, weight: enemyTypes[typeName].weight, // Push power windshield:enemyTypes[typeName].windshield }); } } // not used yet function spawnEnemyRandom() { game.enemies.push({ x: Math.random() * WORLD_W, y: Math.random() * WORLD_H, angle: 0, speed: 0.1, hp: 3 }); } function spawnEnemyOffscreen() { const viewW = sw * zoom; const viewH = sh * zoom; const camX = camCenter.x; const camY = camCenter.y; // pick a side const side = Math.floor(Math.random() * 4); let x, y; if (side === 0) { // left x = camX - viewW/2 - 200; y = camY + (Math.random() - 0.5) * viewH; } if (side === 1) { // right x = camX + viewW/2 + 200; y = camY + (Math.random() - 0.5) * viewH; } if (side === 2) { // top x = camX + (Math.random() - 0.5) * viewW; y = camY - viewH/2 - 200; } if (side === 3) { // bottom x = camX + (Math.random() - 0.5) * viewW; y = camY + viewH/2 + 200; } game.enemies.push({ x, y, angle:0, speed:0.1, hp:3 }); } */" |
Prove Transaction
Prove that you sent DERO in this transaction. Obtain proof using the dero-wallet-cli command or from your wallet statement.
Note: The proof is sent to the server for verification calculations.
Payload proofs are user-provided display proofs; for the strongest verification, confirm with the receiving wallet.