近期下了个游戏叫木石世纪(Timber and Stone),沙盒游戏类,看着还不错.

搜了下游戏资料,有人求汉化可是因为是小众游戏,没人出汉化.看了眼是Unity3d的,既然是.Net的,仅仅要资源不是在资源包里,应该都还是蛮简单的.

刚開始做了个字符串替换,发现有些地方还是比較麻烦,还不如拿UnityEngine里面的GUI函数开刀,也就是有了这么一次简单的哦汉化过程.

首先写个简单的类用于注入

    public class TxtInjection
{
public static string DoInjection(string txt)
{
return txt + "X";
}
}

注入成功后,全部的被注入的字符串后面都应该出现一个X;

然后写个小的演示样例,用于IL參考:

        public static void Label(object position, string text, object style)
{
text = DoInjection(text);
LabelA(position, text, style);
} public static void LabelA(object position, string text, object style)
{ }

text = DoInjection(text);

就是我们改动字符串的地方了.

反编译看下IL

	0	nop
1 ldarg.1
2 call System.String UintyEngineGUIPatch.TxtInjection::DoInjection(System.String)
7 starg.s -> (1) text (System.String)

4行,然后查找Unity3d的GUI绘制函数,找了2个..

GUI.Box,GUI.Lable 用Reflector的IL注入插件直接手动写入IL.

执行看效果...

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvSWNlU3VuOTYz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvSWNlU3VuOTYz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

(眼下中文部分直接调用的百度在线翻译,勿拍砖...)

后面就简单了,输出全部文本到一个txt,然后使用

英文|中文

这种格式,自己主动或手动翻译...

晚点程序丢上来...

UnityEngine.dll
unitEngineGUipatch.dll
丢入 Timber and Stone v1.4\Timber and Stone_Data\Managed
以防万一,请备份源文件
strmap.txt 放入根文件夹...
启动游戏就可以 执行过程中strmap.txt 会产生界面上绘制过的新的字符串
编辑strmap.txt 保存后,切换下界面就可以看到效果
假设遇到新的未出如今strmap.txt,又一次打开就可以. 临时没时间进行翻译...愿意參加的小伙伴报名..
理论上支持未来随意版本号..
或者使用unity3d gui的其它游戏

点我下载:http://pan.baidu.com/s/1mgLuKUc

Unity3d 游戏汉化之IL注入文本替换--木石世纪的更多相关文章

  1. 2009年末最强梅麻呂3D动画游戏大作 汉化补丁

    [游戏名称]:Yin荡游戯Ω(前编)-闇の眷族vs女ドラゴン- (名字请自己补) [游戏厂商]:梅麻吕3D [发售日期]:2010年04月16日 游戏评价: 梅麻呂的3D作品能够说是如今3D动画中最好 ...

  2. 真正菜鸟用教程之WQSG Scrip Export WQSG (脚本导出导入工具,PSP、NDS汉化必备 )

    先扫盲WQSG是干什么用的 一些掌机类游戏汉化比方PSP NDS 汉化必备之物 它能够依据字典转换文本 假设你不知道这是啥玩意,快去充电染成茜色的坂道 文本提取(导出)方法 (下文称导出文章) 在导出 ...

  3. .net core swagger汉化

    基本swagger使用不再详解,具体百度其它帖子 1.将汉化的swagger js文件复制到项目根目录中 js代码如下 'use strict'; /** * Translator for docum ...

  4. unity2021游戏引擎安装激活并汉化

    今天重新搭建了下unity的开发环境,也踩了不少坑,还有就是看了一些unity3d的教程,越看越不可思议,unity居然能做这么多好玩的东西,像枪战类,模拟类,角色扮演,动作冒险都很震撼. 但是震撼归 ...

  5. 轻量级Lua IDE ZeroBrane Studio 的使用技巧和汉化

    快捷键 : alt + shift +鼠标 ,可以块选中文本. F12 折叠/展开 所有 F5 调试运行 点击第二次 将跳转到第一个断点处 F10 单步执行 shift +F10 单步执行,不进入函数 ...

  6. 不需要了解任何底层知识,就可以汉化!Let`s go!!!

    汉化?莫要被这两个字吓到. 其实你也可以汉化,跟着我的步骤来,你也可以进行汉化,Let`s go!!!(大鸟飘过) 这里汉化的是微软企业类库的配置管理工具EntLibConfig.exe.当然,这里的 ...

  7. [saiku] 简化/汉化/设置默认页

    上一篇分析了schema文件 [ http://www.cnblogs.com/avivaye/p/4877832.html] 在安装完毕Saiku后,由于是社区版本,所以界面上存在很多升级为商业版的 ...

  8. psp开发------汉化插件

    近期略微研究了下psp汉化,写了个汉化插件,在这记录下.聊以慰藉. 传统的汉化流程找码表,字库,破解什么这里不多讲,网上有教程.以下说下一种另类汉化方法.特别对于难以破解字库的游戏,当然这样的方法也有 ...

  9. C#反编译工具 ILSPY-x64可动态调试-君临汉化版

    程序基于著名的ILSpy version 2.1.0.1603 汉化,并增加x64下debugging功能;初衷是网上只有一版是原作者留下的x86版本,实在不想在虚拟机里调试,只有自己动手弄一份x64 ...

随机推荐

  1. 这些年,我收集的JavaScript代码(一)

    一.取URL中的参数 function getParameterByName(name) { var match = RegExp('[?&]' + name + '=([^&]*)' ...

  2. 4x4矩阵键盘扫描

    4x4矩阵键盘扫描 Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架 ...

  3. python--执行文件的绝对路径

    1.__file__属性对应文件名. 2.os.path.realpath(__file__)这样就可以得到文件的绝对路径.

  4. linux查看网卡个数及速度

    # lspci | grep Ethernet03:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5708 Gigabi ...

  5. Keil MDK中使用pc-lint的详细方法

    keil MDK版本:V4.03 PC-lint版本:  V8.0 关于pc-lint的强大作用,网上有很多,这里不想再复述,只说一句:能通过pc-lint检验的程序不一定没有问题,但通过了pc-li ...

  6. delphi 对TThread扩充TSimpleThread

    对线程的使用,是每个开发者都应该熟练掌握的,也是进阶的重要一环. 可以这样说,没有线程,连界面假死的问题都解决不了,就更别谈并行处理来提高效率了. 本例对线程进行改进,打造一个基础的线程,以后线程应用 ...

  7. 设置高级的Logstash 管道

    设置高级的Logstash 管道: 一个Logstash 管道在很多实用例子有一个或者多个输入,filter,和output 插件. 本节中 创建Logstash 配置文件来指定那些插件和讨论每个插件 ...

  8. poj3673---双重for循环

    #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 15 int main ...

  9. JQuery(下)

    26.jQuery 中的 DOM 操作 )DOM(Document Object Model—文档对象模型):一种与浏览器, 平台, 语言无关的接口, 使用该接口可以轻松地访问页面中所有的标准组件 ) ...

  10. MFC网页

    写网页, 选择MFC,MFC应用程序,其他默认,单击确定 项目类型,选Offce,其他默认,单击下一步 默认,单击下一步 文件拓展名,输入html,其他默认,单击下一步 数据库支持,默认,单击下一步 ...