算是接续若干年前发的关于onscripter的帖子
viewtopic.php?f=34&t=111502
viewtopic.php?f=34&t=195074
onscripter,一个nscripter的开源实现,用于播放Narcissu,Giniro,月姬等Visual No
vel。本身只支持Shift-JIS字符集,在众多粉丝的努力下最近开始支持latin字符集和uni
code。onscripter凭借SDL实现了向大部分平台的移植,包括windows,linux,psp,andr
oid,ios,wince,solaris等。
国内汉化组在汉化游戏时往往采用GBK而不是Unicode作为翻译后脚本的字符集,因此支持
Shift-JIS和Unicode的onscripter对于汉化过的基于GBK字符集的游戏无能为力。按照下列
步骤可以编译获得一个支持gbk的onscripter可执行文件。以下步骤在Ubuntu 10.04和Win
dows 7下测试通过。
1. 安装编译器工具链
Ubuntu: apt-get install build-essential
Windows: 下载安装Mingw和MSYS,注意安装路径中不能含有空格或非ASCII字符,并将Min
gw和msys的bin目录添加到PATH环境变量
2. 下载源码包
推荐onscripter-en,这个版本的源码包自带依赖库的源码
http://unclemion.com/onscripter/releases/
http://unclemion.com/onscripter/pub/ons ... rc.tar.bz2
3. 解压源码包,路径不含空格或非ASCII字符
4. 执行./configure --with-internal-libs --no-werror
(Windows下使用MSYS的shell,不推荐CMD)
5. 替换Scripthandler.h中的IS_TWO_BYTE宏
#define IS_TWO_BYTE(x) \
( ((unsigned char)(x) > (unsigned char)0x80) && ((unsigned char)(x) !=(unsigne
d char) 0xff) )
6. 替换自带的SJIS->UTF16码表
下载sjis2utf16.cpp并覆盖原文件
7. make
注意windows下如果使用-j参数会出错
onscripter操作指南
1. 拷贝onscripter可执行文件到游戏所在目录,如果是Windows用户,请把源码包中的
SDL.dll也复制到Windows目录下
2. 找个中文ttf字体,重命名为default.ttf扔到游戏目录下
3. 运行onscripter
快捷键:
Text Display
1: slow
2: normal
3: fast
0: toggle slow/normal/fast
F: toggle full screen / windowed mode
O: toggle display each page of text instantly
S(long press): toggle fast forward
CTRL: super-fast forward while held down
ESC/right-click: display in-game menu
A: toggle automode
编译支持中文的osncripter
-
- 帖子: 17
- 注册时间: 2007-10-19 15:14
编译支持中文的osncripter
- 附件
-
- sjis2utf16.cpp.cpp
- (444.62 KiB) 已下载 177 次
- e14711471
- 帖子: 19
- 注册时间: 2010-11-22 23:49
Re: 编译支持中文的osncripter
请问arch可以这样么?
我是arch,make之后出现这样的情况:
应该怎么办? 
我是arch,make之后出现这样的情况:
代码: 全选
$ make
Building internal SDL...
./src/video/SDL_RLEaccel.c: Assembler messages:
./src/video/SDL_RLEaccel.c:831: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:831: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:831: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:831: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:930: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:930: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:930: Error: operand type mismatch for `movq'
./src/video/SDL_RLEaccel.c:930: Error: operand type mismatch for `movq'
make[1]: *** [build/SDL_RLEaccel.lo] 错误 1
make: *** [extlib/bin/sdl-config] 错误 2

- nyfair
- 帖子: 1067
- 注册时间: 2007-12-07 12:49
- 系统: winnux10
- 来自: Tree New Bee
Re: 编译支持中文的osncripter
ls建议爬aur
本人在此论坛仅负责吐槽,问题急需解决请支付宝转账5毛至{我的id@qq.com},将会竭诚为您服务
linux常见多媒体问题处理指南
1. 视频播放有问题->卸载gstreamer
2. 音频播放有问题->卸载pulseaudio
3. 远程播放有问题->卸载avahi
4. 系统全都有问题->卸载systemd,远离Lennart这傻逼让你从此轻松自在
⇩自由网络⇩
https://github.com/nyfair/freeweb
linux常见多媒体问题处理指南
1. 视频播放有问题->卸载gstreamer
2. 音频播放有问题->卸载pulseaudio
3. 远程播放有问题->卸载avahi
4. 系统全都有问题->卸载systemd,远离Lennart这傻逼让你从此轻松自在
⇩自由网络⇩
https://github.com/nyfair/freeweb
- e14711471
- 帖子: 19
- 注册时间: 2010-11-22 23:49
Re: 编译支持中文的osncripter
表示在这之前就爬过了……但是aur上的都不支持中文,游戏文字一片乱码……nyfair 写了:ls建议爬aur


- nyfair
- 帖子: 1067
- 注册时间: 2007-12-07 12:49
- 系统: winnux10
- 来自: Tree New Bee
Re: 编译支持中文的osncripter
我一朋友写了个flash版的nscript解析器,敏那要不看看
code.google.com/p/fnscripter/
code.google.com/p/fnscripter/
本人在此论坛仅负责吐槽,问题急需解决请支付宝转账5毛至{我的id@qq.com},将会竭诚为您服务
linux常见多媒体问题处理指南
1. 视频播放有问题->卸载gstreamer
2. 音频播放有问题->卸载pulseaudio
3. 远程播放有问题->卸载avahi
4. 系统全都有问题->卸载systemd,远离Lennart这傻逼让你从此轻松自在
⇩自由网络⇩
https://github.com/nyfair/freeweb
linux常见多媒体问题处理指南
1. 视频播放有问题->卸载gstreamer
2. 音频播放有问题->卸载pulseaudio
3. 远程播放有问题->卸载avahi
4. 系统全都有问题->卸载systemd,远离Lennart这傻逼让你从此轻松自在
⇩自由网络⇩
https://github.com/nyfair/freeweb