离线挂机系统设计——最初设计

本文介绍了离线挂机系统的初步设计,包括离线收益的需求分析,如技能书升级、精神消耗等。针对离线收益,探讨了三种解决方案:抽象公式法、服务器保持在线法和上线后加速模拟法,最终选择了上线加速模拟法进行实施,通过修改buff系统实现逻辑的独立运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

离线系统设计

本文为此系列第一章,是作者最初的简陋设计,后续整改慢慢补上。
觉得有用的大佬可以支持一波。
有其他问题可以留言。

离线收益

一些游戏中离线获得收益是非常常见的,一般的离线收益都是一个属性,比如是经验;都是按照离线时间*速度来计算的,并且这个速度一般为固定值,即:离线过程中速度不会变化。这个需求就很简单,不在赘述。

我们的需求

比如练一本技能书的等级:

① 1s涨一点经验,6s消耗一点精神,精神为0自动停止。

② 经验到一定值会升级技能书,技能书到一定等级会领悟技能或者提升其他属性。

③ 消耗精神的总值到达一定值,会提升属性x,属性x每提升一点会增加10点精神,且精神会恢复至最大值。

④ 其他buff会影响提升经验的速度。

⑤ 加入自动服药功能(精神少于一定数值会自动恢复一定的数值)

等等。。

在线解决方案

直接当做buff一把梭,即可;

为了维护方便,这里拆分为2个buff

① 技能书涨经验升级

② 精神总消耗

buff②的生命周期和buff①绑定。

buff系统驱动每个buff,具体buff内部怎么实现就不赘述了。

//驱动Buff的是系统的时间轴
BuffManger.Update()->Buff.Update()

离线收益解决方案

① 抽象公式法:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值