CHUAN2 DEV ENGINE
996 正版授权研发中心 · 360 授权合作教学中心 · 抖音传奇直播合作授权 · 快手推广运营商授权
OFFICIAL LICENSED ACADEMY 查验官方授权证书 →
// 威海旷世互娱教学基地 · 技术文章
框架设计宠物系统

【框架设计】宠物探险:离线探险时长与收益结算

2026-09-23 17:02 作者:996 技术组 0 阅读 996引擎Lua教程传奇脚本

实战应用:用在哪里

离线的宠物也能创造价值:派遣宠物外出探险,设定探险的时长,离线的每分钟都在积累收益。宠物探险的框架要点是时长的档位设计、收益的结算与召回的处理——离线的价值感是留存的隐形推手。

探险的派遣

lua
---宠物探险:派遣与档位选择
local EXPEDITIONS = {
    { hours = 4,  reward = 40 },
    { hours = 8,  reward = 80 },
    { hours = 12, reward = 150 },
}

function Pet.explore(actor, tier)
    local player = class(actor)
    if not player then return false end
    local busy = getplayvar(actor, 2, "PetExploreEnd")
    if busy and busy ~= "" and tonumber(busy) > os.time() then
        sendmsg(actor, 1, "宠物仍在探险中")
        return false
    end
    local cfg = EXPEDITIONS[tier]
    local endAt = os.time() + cfg.hours * 3600
    setplayvar(actor, "HUMAN", "PetExploreEnd", endAt, 1)
    setplayvar(actor, "HUMAN", "PetExploreTier", tier, 1)
    sendmsg(actor, 1, "宠物已出发," .. cfg.hours ..
        " 小时后带回收获")
    return true
end

探险的档位三选:4 小时短途、8 小时中途、12 小时长途,奖励的点数逐档加厚——时长的选择匹配玩家的作息:睡前派 8 小时、上班前派 12 小时,离线的时段被宠物填满。派遣的状态落库:探险的结束时刻与档位记录在案,下线、重启、换设备都不影响探险的推进。宠物在探险期间不可出战,召唤与派遣的互斥让资源的分配有取舍。

收益的结算

lua
---探险归来:按档位结算收获
function Pet.collect(actor)
    local endAt = tonumber(getplayvar(actor, 2, "PetExploreEnd")) or 0
    if os.time() < endAt then
        sendmsg(actor, 1, "宠物尚未归来,还剩 " ..
            math.ceil((endAt - os.time()) / 60) .. " 分钟")
        return false
    end
    local tier = tonumber(getplayvar(actor, 2, "PetExploreTier")) or 1
    local cfg = EXPEDITIONS[tier]
    giveitem(actor, "探险物资箱", 1)
    setplayvar(actor, "HUMAN", "PetExploreEnd", "", 1)
    sendmsg(actor, 1, "探险归来!获得物资箱 x" .. cfg.reward)
    return true
end

归来的结算按档位发放:物资箱开出强化材料、宠物零食与随机的稀有道具——探险的奖励覆盖养成与惊喜的两层需求。结算的召回处理:宠物归来自动结束探险状态,出战的资格恢复,探险与战斗的切换无缝。探险的收益定位是「离线的安慰奖」而非「离线的印钞机」:单位时长的收益约为在线打宝的三成,鼓励在线但补偿离线——比例的设计决定玩家对离线时段的心态。

验证与监控

探险的派遣率与档位分布统计:8 小时档最受欢迎说明玩家在用睡眠时间挂收益;归来的领取率监控,未领取的积压提醒玩家宠物的收获在等待。

踩坑记录

探险的结束时刻曾经存内存,重启后探险凭空消失,落库修复。结算曾经可重复领取,领取的幂等标记补上。探险与出战的互斥曾经单向,探险中不能出战但出战中能派遣,派遣的前置校验加上出战状态。

上线要点

探险的档位与奖励进配置,离线收益的定价随版本校准。探险归来的推送提醒上线,收获的时效让玩家记得回来。探险的时长与月卡、离线经验的叠加规则公示,离线收益的体系不重复计算。

作者履历与出处

本文由 996 技术组基于 996 引擎官方知识库与浮生梦老师课程体系整理。团队长期从事传奇类引擎 Lua 后端逻辑、客户端界面与商业版本交付,内容以官方知识库与真实项目为出处,按版本持续修订。

← 返回文章地图返回研学路径

最新技术文章 · 实战干货

LATEST ARTICLES

全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →

策划架构996引擎数值设计行会准入门槛

【策划架构】行会门槛:分层准入与保底留位设计

设计初衷 行会招人的门槛是双刃剑:无门槛的行会人满为患却乌合之众,高门槛的行会精英云集却关死了普通玩家的归属感。分层准入的目…

2026-09-24 10:43 996 技术组 · 0 阅读
策划架构996引擎数值设计副本钥匙产出消耗

【策划架构】密钥平衡:副本钥匙的产出消耗平衡

设计初衷 副本钥匙是副本经济的闸门:钥匙太贱,副本门口排大队、产出洪水冲垮经济;钥匙太贵,副本冷清、核心玩法没人体验。密钥平…

2026-09-24 10:43 996 技术组 · 0 阅读
策划架构996引擎数值设计峰值预案节日活动

【策划架构】峰值预案:节日活动的承载预案设计

设计初衷 节日活动是在线峰值的引爆点:春节回城烟花一放,比奇主城同屏人数冲上日常的三倍,卡顿、掉线、排队接踵而至。峰值预案的…

2026-09-24 10:43 996 技术组 · 0 阅读
高级技巧996引擎Lua互斥标记重入锁

【高级技巧】互斥标记:同一资源的重入锁设计

底层原理 单线程的 Lua 没有并发,却有"重入":玩家的一次操作还没走完,同一次点击的第二个触发又进来了(双击、连点、宏)…

2026-09-24 10:43 996 技术组 · 0 阅读
高级技巧996引擎Lua上下文调用链

【高级技巧】上下文透传:调用链里的规范传参

底层原理 一条业务链路往往穿越四五个函数:入口触发 → 校验 → 结算 → 通知。玩家对象、来源渠道、事务单号这些"全程都要…

2026-09-24 10:43 996 技术组 · 0 阅读
进阶实战996引擎Lua拜师审核队列

【进阶实战】拜师审核:拜师申请的队列与审核流转

业务场景 拜师系统的人数规则:一师最多三徒,出师空位才可再收。申请侧痛点:师父一次收到十几份申请无从挑起,口头答应后被人抢先…

2026-09-24 10:43 996 技术组 · 0 阅读