ทำให้ลูปเกมบนเชนเป็นอัตโนมัติ
Games for Pennies
ทุกสิ่งที่คุณต้องการสำหรับระบบอัตโนมัติบนเชน
โปรโตคอลที่สมบูรณ์สำหรับระบบอัตโนมัติของสมาร์ทคอนแทรคแบบกระจายศูนย์ มีการอนุญาต และประหยัดต้นทุน
การดำเนินการลูปแบบกระจายศูนย์
Worker นอกเชนตรวจจับอัตโนมัติเมื่อสัญญาของคุณพร้อมและดำเนินการลูปเกม ไม่มีเซิร์ฟเวอร์ส่วนกลาง ไม่มีจุดล้มเหลวเดียว
ความสุ่มที่ตรวจสอบได้ในตัว
การสร้างหลักฐาน ECVRF ดั้งเดิมและการตรวจสอบบนเชน ความสุ่มที่พิสูจน์ได้ว่ายุติธรรมในทุก tick สำหรับการทอยลูกเต๋า การดรอปไอเทม และอื่นๆ — โดยไม่ต้องใช้ Oracle ภายนอก
Hybrid VRF — ความสุ่มเมื่อคุณต้องการ
Tick ต้นทุนมาตรฐานพร้อม VRF เฉพาะเมื่อสัญญาของคุณร้องขอ เกมของคุณเป็นผู้ตัดสินว่าเมื่อไหร่ความสุ่มมีความสำคัญ — การดรอปไอเทม การโจมตีคริติคอล การเกิดมอนสเตอร์ — และจ่ายค่า Gas VRF เฉพาะใน tick เหล่านั้น ~$0.009/tick แบบผสมที่ 10% VRF
โมเดลจ่ายตามการดำเนินการ
จ่ายเฉพาะเมื่อลูปทำงานจริง การคืนเงิน Gas บวกค่าธรรมเนียมพื้นฐานเล็กน้อยที่แบ่งระหว่างโปรโตคอลและตัวควบคุม โปร่งใสและคาดเดาได้
เป็นมิตรกับนักพัฒนา
ฟังก์ชันเรียบง่าย hook โดยตรง มีสัญญาตัวอย่างให้พร้อมใช้
รองรับหลายเครือข่าย
Deploy บน Ethereum mainnet, Sepolia testnet หรือ Anvil ในเครื่องสำหรับการพัฒนา กำหนดค่าได้ต่อเครือข่ายพร้อมเครื่องมือ Deploy อัตโนมัติ
มีการอนุญาตและปลอดภัย
การควบคุมการเข้าถึงตามบทบาทรับประกันว่าเฉพาะตัวควบคุมที่ลงทะเบียนเท่านั้นที่สามารถเรียกใช้ลูป การตรวจสอบ VRF บนเชนป้องกันการปลอมแปลง
Every Loop Here Fails the Self-Trigger Test
Games, agents, DeFi, AI — each for a different structural reason. Not design choices. Proofs.
Inverted self-interest
Every VRF tick picks a random floor and damages it. No floor owner will ever trigger the loop — it might hit their own asset. A neutral keeper is the only viable operator.
Nobody should hold the trigger
A dead man's switch that transfers your vault to a beneficiary if you miss a check-in window. The whole point is that no human should control when it fires.
Front-running attack surface
VRF selects winners from a registered pool on schedule. If player-controlled, the trigger holder knows who wins before calling. AutoLoop fires first, asks questions never.
Timing as attack surface
The high bidder wants the auction closed now. Counter-bidders want an extension. No player-controlled trigger is fair — proving the problem extends far beyond randomness.
4-way coordination failure
Third hop in KaijuLeague → KaijuOracle → ForecasterLeaderboard. Adversarial timing, cross-contract dependency, free-rider gas, prize-pool timing attack — no single player resolves all four.
Neutral on-chain schedule
An LLM agent that runs off-chain and acts on-chain every N blocks. The agent itself shouldn't decide when it fires — its operator, users, and rivals all have conflicting interests.
เริ่มใช้งานใน 4 ขั้นตอน
จากสัญญาสู่ลูปเกมอัตโนมัติในไม่กี่นาที ไม่ใช่หลายเดือน
สืบทอด
สืบทอดหนึ่งในสามสัญญาฐาน:
- •AutoLoopCompatible — ระบบอัตโนมัติล้วน
- •AutoLoopHybridVRFCompatible — ความสุ่มแบบเลือกใช้ (ดรอปไอเทม, คริติคอล, การเกิดมอนสเตอร์)
- •AutoLoopVRFCompatible — ความสุ่มในทุก tick
พัฒนา
เพิ่ม shouldProgressLoop() เพื่อส่งสัญญาณความพร้อม และ progressLoop() เพื่อดำเนินการลอจิกเกมของคุณ
ลงทะเบียนและเติมเงิน
ลงทะเบียนสัญญาของคุณบนเชนและฝาก ETH เพื่อครอบคลุมค่า Gas และค่าธรรมเนียม
ปล่อยให้ทำงาน
Worker ตรวจจับและดำเนินการลูปของคุณโดยอัตโนมัติ นั่งรอและดูเกมของคุณมีชีวิตขึ้นมา
เกมในราคาไม่กี่เซ็นต์
สามระดับของระบบอัตโนมัติบนเชน — ตั้งแต่การดำเนินการล้วนจนถึง Full VRF ในทุก tick นี่คือต้นทุนของแต่ละระดับที่ราคา Gas ปัจจุบัน
รายละเอียดค่าธรรมเนียม
เรียบง่ายโดยการออกแบบ
เชื่อมต่อ Autoloop ด้วยแค่สองฟังก์ชัน นี่คือสัญญาที่ใช้งานได้จริงอย่างสมบูรณ์
1// SPDX-License-Identifier: MIT2pragma solidity ^0.8.13;34// Import the base contract that makes any5// contract compatible with AutoLoop workers6import {AutoLoopCompatible} from7 "autoloop/AutoLoopCompatible.sol";89// A simple demo: number goes up every interval10contract NumberGoUp is AutoLoopCompatible {11 uint256 public number;12 uint256 public interval;13 uint256 public lastTimeStamp;14 uint256 private _loopID;1516 constructor(uint256 _interval) {17 interval = _interval;18 lastTimeStamp = block.timestamp;19 }2021 // Workers call this every block to check22 // if the contract is ready for an update23 function shouldProgressLoop()24 external view override25 returns (26 bool loopIsReady,27 bytes memory progressWithData28 )29 {30 // Ready when enough time has passed31 loopIsReady =32 (block.timestamp - lastTimeStamp) > interval;33 // Pass loop ID to prevent duplicate runs34 progressWithData = abi.encode(_loopID);35 }3637 // Called by AutoLoop when shouldProgressLoop38 // returns true — this is your update logic39 function progressLoop(40 bytes calldata progressWithData41 ) external override {42 uint256 loopID =43 abi.decode(progressWithData, (uint256));44 // Guard against stale or replayed calls45 require(loopID == _loopID, "stale loop");46 lastTimeStamp = block.timestamp;47 ++number;48 ++_loopID;49 }50}ดูว่าเราเปรียบเทียบกับ Chainlink อย่างไร
สามโหมดอัตโนมัติ — Standard, Hybrid VRF และ Full VRF — ทั้งหมดในโปรโตคอลเดียว ไม่ต้องสมัครสมาชิกแยก ถูกกว่า Chainlink ในทุกระดับ