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

【后端接口】自动拾取:拾取范围与过滤白名单

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

实战应用:用在哪里

挂机打宝的痛点是拾取:掉了一地的金币与药水,手动一格格捡让人崩溃。自动拾取按玩家预设的过滤规则,把范围内的掉落物自动收入背包——捡什么、不捡什么,玩家说了算。

拾取的范围与过滤

lua
---自动拾取:掉落触发时的范围过滤
function addbag(actor, item)
    local player = class(actor)
    if not player then return end
    -- 自动拾取的开关与过滤规则
    if (getplayvar(actor, 2, "AutoPickOn") or "") == "" then
        return
    end
    local filter = getplayvar(actor, 2, "PickFilter") or ""
    local name = item:GetName()
    -- 白名单模式:只捡名单内的物品
    if filter ~= "" and ("|" .. filter .. "|"):find("|" ..
        name .. "|", 1, true) then
        return
    end
end

自动拾取挂在掉落的结算链上:掉落产生时,对开启功能的玩家按 3 格半径与过滤规则逐件判定——白名单内的自动进包,名单外的留在地上。过滤的两种模式:白名单(只捡名单内的)与黑名单(只跳过名单内的),挂机打宝配黑名单(跳过垃圾药水),定向收集配白名单(只捡书页与材料),两模各适其景。

拾取的节流

lua
---拾取的节流:每秒最多 5 件
function Pickup.throttle(actor)
    local now = os.time()
    local secKey = "PickSec_" .. now
    local n = tonumber(getplayvar(actor, 2, secKey)) or 0
    if n >= 5 then
        return false
    end
    setplayvar(actor, 2, secKey, n + 1, 0)
    return true
end

拾取的节流防止秒内的拾取风暴:一地的掉落每秒最多收 5 件,剩余的顺延下秒——拾取的节奏平滑,背包与网络的瞬时压力可控。节流的秒键按时间戳生成天然过期,无需清理。自动拾取与手动拾取的优先级:手动点击的拾取永远即时响应,自动拾取的排队让位于人手,操作的确定性优先。过滤的白名单在界面可视化管理:勾选即加入名单,滑动的操作列表让规则的调整零门槛。

验证与监控

自动拾取的触发量与实际入包量的比对,过滤的拦截分布反映规则的合理性;拾取的秒峰值监控,节流的触发率过高提示玩家需要调整过滤规则。

踩坑记录

自动拾取曾经把垃圾全捡,背包满后重要的掉落反而捡不了,过滤的白名单模式作为默认。节流的计数曾经不随秒过期,计数只增不减拾取停摆,秒键的天然过期修复。拾取的范围曾经从角色中心算错,坐标的基准偏移一格,边界上的掉落捡不到。

上线要点

自动拾取作为 VIP 或月卡的权益投放,功能的价值感与付费点匹配。过滤规则的默认模板按职业预设:法师跳过近战武器、战士跳过法系材料。拾取的动画表现与节流对齐,客户端的捡取动作不因排队而卡顿。

作者履历与出处

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

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

最新技术文章 · 实战干货

LATEST ARTICLES

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

策划架构996引擎数值设计抽奖期望管理

【策划架构】十连期望:单抽与十连的保底差设计

设计初衷 单抽与十连卖的是一个奖池,买的是两种心情:单抽是概率的刺激,十连是确定的体面。数值设计要回答三问:十连的保底值多少…

2026-09-24 06:45 996 技术组
策划架构996引擎数值设计养成线裁决之杖

【策划架构】装备养成线:强化精炼铭刻的主次关系设计

设计初衷 裁决之杖能走三条养成线:强化加攻击、精炼加防御、铭刻加特殊词条。玩家资源有限,三线齐开的结果是每条都浅、战力密度稀…

2026-09-24 06:45 996 技术组
高级技巧996引擎Lua缓存LRU

【高级技巧】LRU淘汰:热身缓存的容量治理

底层原理 缓存的两难:无上限则内存失控,弱引用交给 GC 又没有容量语义(上轮弱表方案的短板正是无法承诺"最多占多少")。L…

2026-09-24 06:45 996 技术组
高级技巧996引擎Lua随机过程祖玛教主

【高级技巧】泊松到达:怪物刷新的随机间隔建模

底层原理 固定周期刷新(祖玛教主每 14400 秒一只)有个致命副作用:全程可预测。蹲点脚本掐着表守在刷新点,普通人永远抢不…

2026-09-24 06:45 996 技术组
策划架构996引擎数值设计疲劳值产能控制

【策划架构】疲劳值:日产能上限与时段定价的数值设计

设计初衷 挂机与副本的产出没有天花板时,肝帝一天刷出普通人一周的产能,经济投放失控、玩家差距撕开。疲劳值的立场不是禁止而是衰…

2026-09-24 06:45 996 技术组
进阶实战996引擎Lua定时器称号

【进阶实战】临时称号:到期回收与续期封装

业务场景 活动发"沙巴克功勋"称号,7 天有效。散装写法只发不收,到期后称号属性一直挂着,白嫖队列越排越长;补收又靠每日扫描…

2026-09-24 06:45 996 技术组