另类Unity热更新大法:代码注入式补丁热更新
文章目录[点击展开](?)[+] 对老项目进行热更新 项目用纯C#开发的? 眼看Unity引擎热火朝天,无数程序猿加入到了Unity开发的大本营。 一些老项目,在当时ulua/slua还不如今天那样的成熟,因此他们选择了全c#开发;也有一些出于性能考虑,全c#开发;也有一些没有太丰富运营经验的开发团队,没有想太多,用全c#爽爽地开发。 策划和运营要热更新? 用C#开发爽爽的日子一天一天的过去了,直到突然有一天,策划老大说:“我们得做个热更新模块!”; 突然有一天,老板说:“别人游戏用Lua热更新,为什么我们不行?”; 突然有一天,运营说:“线上游戏出了个bug,重新编译出包审核得几天啊!”——嗯,这时候,受伤的总是程序猿。 打补丁方法 有没有亡羊补牢,临危受命的折衷方法?可以不用把C#改成Lua,可以不用区分平台(AndroidDLL重载IOS却不行),可以对任何代码做修复的方法? 有的,并且用很笨的一句代码来概括: class Fucker { void Fucking() { if (PatchScript.HasPatchScript("Fucker.Fucking")) { /...