XLua学习 热更新步骤整理

本文详细介绍了使用XLua进行热更新的步骤,包括:设置HotFix标记、资源打包成AB包、放置于服务器、下载新AB资源、检查并执行更新的Lua文件,以及在下个版本中替换Lua为修正后的CS代码。在执行过程中,强调了Lua文本的错误检查和测试方法,以及版本管理的重要性。
摘要由CSDN通过智能技术生成
前言

使用Xlua可以用lua语言覆盖CS脚本的内容。
这里贴出官方的热更新教程~
https://github.com/Tencent/xLua/blob/master/Assets/XLua/Doc/hotfix.md
然后以下是本文大致的实现步骤:
1. 这里使用AB包把需要修改的物体对象资源、要覆盖CS脚本的lua文件打包
2. 客户端从服务器下载ab包,然后把新ab包缓存在本地,直到服务器下一次更新ab包
3. 然后客户端用以前写好的CS脚本来从ab包获取lua文本,放到本地沙盒路径,然后再执行lua文本内容
4. lua文本里可以继续从ab包缓存里获取其他资源,并对原CS脚本进行覆盖来修改bug

准备

准备阶段,也就是正常的用C#编码阶段,也可以说是作预处理阶段,发布游戏之前,下次客户端更新之前。
设置HotFix
设置[LuaCallSharp]
1. 在需要更新的类上加上[Hotfix] ,这个类需要提前预判,一般来说只更新UI部分,一般不更新物体,数据类
2. 在可能更新的类方法中前[LuaCallCsharp]
如:

[Hotfix]
public class BeHotFixA : MonoBehaviour {
    public int num1 = 100;
    private int num2 = 200;
    [LuaCallCSharp]
    void Update () {
        if (Input.GetMouseButtonDown (0)) {
            GameObject go =
  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值