功能详细说明文档
<h1>功能详细说明文档</h1>
<h2>📋 概述</h2>
<p>本游戏是一款以砍树获取代币(Coin)为主要玩法的休闲游戏。玩家通过砍伐树木获取代币,并需管理自身的能量(Energy)。游戏包含丰富的升级属性与功能,包括代币获取量、能量恢复速度、能量上限、采矿宠物等。此外,宝箱系统和离线采矿功能增加了游戏的趣味性和粘性。</p>
<hr />
<h2>📌 功能列表</h2>
<h3>🌲 砍树(Chop Tree)</h3>
<ul>
<li>玩家通过滑动屏幕砍伐树木,消耗能量以获取代币。</li>
<li>每次砍树消耗 * 一定 能量**,获得的代币数量可通过升级提升。</li>
<li>能量自动恢复,恢复速度可通过升级提升。</li>
<li>砍树过程中可能会出现 <strong>宝箱</strong>。</li>
</ul>
<h3>⚡ 能量系统(Energy System)</h3>
<ul>
<li>能量限制玩家砍树次数,避免过度游戏。</li>
<li>能量会自动恢复,恢复速度可升级。</li>
<li><strong>能量上限</strong>可升级,增加玩家游戏时间。</li>
<li>每日有 <strong>3 次能量填满机会</strong>,可随时使用将能量恢复至最大值。</li>
</ul>
<h3>🔼 升级系统(Upgrade System)</h3>
<ul>
<li><strong>代币数量升级</strong>:提升砍树获得的代币数量。</li>
<li><strong>恢复速度升级</strong>:提高能量恢复速度。</li>
<li><strong>能量上限升级</strong>:提升能量上限,增加游戏时间。</li>
</ul>
<h3>🎁 宝箱系统(Chest System)</h3>
<ul>
<li>
<p><strong>随机宝箱</strong>:宝箱每次砍完树之后会有小概率生成宝箱,打开宝箱后会随机获得50-100金币。(金币数量会随着“多倍增值”技能等级倍增,2等级=100-200金币,3等级=300-600金币,以此类推)</p>
</li>
<li><strong>每日免费宝箱</strong>:每天可开启 3 个,不需要条件或消耗。</li>
</ul>
<h3>💡 能量填满机会(Energy Refill Chances)</h3>
<ul>
<li>每天 <strong>3 次能量填满机会</strong>,使用后能量恢复至最大值。</li>
</ul>
<h3>🐾 采矿宠物(Mining Pet)</h3>
<ul>
<li>玩家可升级采矿宠物,解锁离线采矿等功能。</li>
</ul>
<h3>⏳ 离线采矿(Offline Mining)</h3>
<ul>
<li>离线状态下,宠物自动采矿。上线时领取奖励。</li>
</ul>
<h3>🤖 自动砍树(Auto Chop)</h3>
<ul>
<li>宠物达到 Lv1 时开启,每秒自动砍树,消耗能量获得代币。</li>
</ul>
<h3>牌位基本上分五到六個段位</h3>
<p>比如青銅,白銀,黃金,白金,鑽石。</p>
<p>根據金幣總獲得數量排,比如10w, 25w 100w, 250w, 500w 具體數量還沒定。</p>
<hr />
<h2>🔍 详细功能描述</h2>
<h3>🌲 砍树功能</h3>
<ul>
<li><strong>操作方式</strong>:滑动屏幕砍树。</li>
<li><strong>能量消耗</strong>:每次砍树消耗 1 点能量。</li>
<li><strong>代币获取</strong>:由 <code>treeCutReward</code> 属性决定。</li>
<li><strong>宝箱出现</strong>:砍树时有概率遇到宝箱,点击可获得奖励。</li>
</ul>
<h3>⚡ 能量系统</h3>
<ul>
<li><strong>能量恢复</strong>:自动恢复速度可升级,初始为 1 点/秒。</li>
<li><strong>能量上限</strong>:初始值为 4000 点,可升级。</li>
<li><strong>能量填满机会</strong>:每天 3 次,使用后立即恢复至最大值。</li>
</ul>
<h3>🔼 升级系统</h3>
<ul>
<li><strong>代币数量升级</strong>:提升 <code>treeCutReward</code> 属性,每级增加代币获取。</li>
<li><strong>恢复速度升级</strong>:提升 <code>energyRecoveryRate</code> 属性。</li>
<li><strong>能量上限升级</strong>:提升 <code>maxEnergy</code> 属性。</li>
</ul>
<h3>🎁 宝箱系统</h3>
<ul>
<li><strong>每日免费宝箱</strong>:每天 3 个,无需条件即可开启。</li>
</ul>
<h3>💡 能量填满机会</h3>
<ul>
<li>每日 <strong>3 次能量填满机会</strong>,使用后立即恢复至最大能量值。</li>
</ul>
<h3>🐾 采矿宠物</h3>
<ul>
<li><strong>升级效果</strong>:
<ul>
<li><strong>Lv1</strong>:自动砍树。</li>
<li><strong>Lv2</strong>:添加 2 小时离线采矿。</li>
<li><strong>Lv3</strong>:离线采矿持续至 12 小时。</li>
<li><strong>Lv4</strong>:离线采矿有额外 30% 奖励,持续 7 天。</li>
<li><strong>Lv5</strong>:离线采矿额外 60% 奖励,持续 7 天。</li>
</ul></li>
</ul>
<h3>⏳ 离线采矿</h3>
<ul>
<li><strong>触发条件</strong>:宠物 Lv2 及以上,离线超过最小阈值。</li>
<li>暂定比如 每小时奖励1000</li>
</ul>
<h3>数据模型设计</h3>
<ul>
<li>宠物等级(chopPetLv):表示宠物的当前等级。</li>
<li>宠物持续时间(petDuration):针对 Lv4 和 Lv5,需要记录额外奖励的持续时间(7天)。</li>
<li>上次下线时间(lastLogoutTime):记录用户上次下线的时间。</li>
<li>未领取的离线奖励(pendingOfflineReward):存储用户未领取的离线采矿奖励。
<h3>🤖 自动砍树</h3></li>
<li><strong>触发条件</strong>:宠物 Lv1 及以上 和 开启自动开关,并且 玩家在线。</li>
</ul>
<hr />
<h2>📊 数据模型</h2>
<h3>用户模型(User)</h3>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">energy</td>
<td style="text-align: left;">sting</td>
<td>当前用户的能量</td>
</tr>
<tr>
<td style="text-align: left;">balance</td>
<td style="text-align: left;">sting</td>
<td>用户剩余币余额</td>
</tr>
<tr>
<td style="text-align: left;">maxEnergy</td>
<td style="text-align: left;">sting</td>
<td>能量上限</td>
</tr>
<tr>
<td style="text-align: left;">energyRecoveryRate</td>
<td style="text-align: left;">sting</td>
<td>能量恢复速率</td>
</tr>
<tr>
<td style="text-align: left;">energyCostPerTree</td>
<td style="text-align: left;">sting</td>
<td>砍树能量消耗</td>
</tr>
<tr>
<td style="text-align: left;">treeCutReward</td>
<td style="text-align: left;">sting</td>
<td>每课树砍树奖励</td>
</tr>
<tr>
<td style="text-align: left;">isMiningPetActive</td>
<td style="text-align: left;">sting</td>
<td>是否启动宠物自动挖矿 0 : 否, 1: 是</td>
</tr>
<tr>
<td style="text-align: left;">tonWalletAddress</td>
<td style="text-align: left;">sting</td>
<td>ton 连接钱包地址</td>
</tr>
<tr>
<td style="text-align: left;">lv</td>
<td style="text-align: left;">sting</td>
<td>用户等级</td>
</tr>
<tr>
<td style="text-align: left;">tokenEarned</td>
<td style="text-align: left;">sting</td>
<td>代币总收益</td>
</tr>
<tr>
<td style="text-align: left;">tokenSpent</td>
<td style="text-align: left;">sting</td>
<td>代币总消耗</td>
</tr>
<tr>
<td style="text-align: left;">multivalueLv</td>
<td style="text-align: left;">sting</td>
<td>当前 multivalue 等级</td>
</tr>
<tr>
<td style="text-align: left;">coinLimitLv</td>
<td style="text-align: left;">sting</td>
<td>当前 coinLimit 等级</td>
</tr>
<tr>
<td style="text-align: left;">fillRateLv</td>
<td style="text-align: left;">sting</td>
<td>当前 fillRate 等级</td>
</tr>
<tr>
<td style="text-align: left;">chopPetLv</td>
<td style="text-align: left;">sting</td>
<td>当前 chopPet 等级</td>
</tr>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">sting</td>
<td>我的邀请码</td>
</tr>
<tr>
<td style="text-align: left;">multivalueNextLvCost</td>
<td style="text-align: left;">sting</td>
<td>multivalue 升级下一等级费用</td>
</tr>
<tr>
<td style="text-align: left;">coinLimitNextLvCost</td>
<td style="text-align: left;">sting</td>
<td>coinLimit 升级下一等级费用</td>
</tr>
<tr>
<td style="text-align: left;">fillRateNextLvCost</td>
<td style="text-align: left;">sting</td>
<td>fillRate 升级下一等级费用</td>
</tr>
<tr>
<td style="text-align: left;">chopPetNextLvCost</td>
<td style="text-align: left;">sting</td>
<td>chopPet 升级下一等级费用</td>
</tr>
</tbody>
</table>