SuperAPI AI 工具集

yoink

通用与其它

查看项目

更新于 10-15 20:05

技能介绍

用途:Yoink 是一个运行在 Base(链 ID 8453)上的链上夺旗(capture-the-flag)游戏技能。玩家通过调用合约的 yoink() 从当前持有者手中夺取旗帜,开始累积自己的时间分数;总夺旗次数最多的玩家持有奖杯(token ID 2)。

主要能力:支持夺旗操作、查询游戏状态与排行榜、查看玩家分数。合约地址为 0x4bBFD120d9f352A0BEd7a014bd67913a2007a878。

游戏规则:调用 yoink() 夺取旗帜;两次夺旗之间需等待 10 分钟(600 秒)冷却;不能从自己手中夺旗;持有旗帜期间时间分数持续增加;总夺旗次数单独统计,最多者持有奖杯。

使用方式:可通过 RPC 调用读取状态,模板为 curl -s -X POST https://mainnet.base.org -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0x4bBFD120d9f352A0BEd7a014bd67913a2007a878","data":"SELECTOR+PARAMS"},"latest"],"id":1}' | jq -r '.result'。夺旗使用 Bankr 的任意交易功能,提交 {"to":"0x4bBFD120d9f352A0BEd7a014bd67913a2007a878","data":"0x9846cd9e","value":"0","chainId":8453}。

常用函数选择器:yoink() 为 0x9846cd9e;lastYoinkedBy() 为 0xd4dbf9f4;lastYoinkedAt() 为 0x6a99616f;totalYoinks() 为 0xa5d0dadd;topYoinker() 为 0x6a974e6e;mostYoinks() 为 0xd2d7774a;COOLDOWN() 为 0xa2724a4d;score(address) 为 0x776f3843;balanceOf(address,uint256) 为 0x00fdd58e。地址需零填充至 32 字节,score() 返回 96 字节(3 个 uint256)。

错误:SlowDown(uint256) 选择器 0x58d6f4c6 表示冷却未结束,参数为剩余秒数;Unauthorized() 选择器 0x82b42900 表示已持有旗帜。冷却判断为 current_time - lastYoinkedAt() >= 600。

工作流:先查询 lastYoinkedBy() 与 lastYoinkedAt() 检查状态和冷却,确认冷却已过且自己非当前持有者,再通过 Bankr 提交夺旗交易,最后用 lastYoinkedBy() 或 score(address) 验证。

限制:需在 Base 链上操作并具备 Bankr 交易能力;受 600 秒冷却与不可自夺限制。其余收费、价格等信息暂未提供。