关于如何制作一个单机游戏

1、制作前准备:准备好以下几样东西 刻录机 游戏原盘 空白CDR CDRWIN (3.8x推荐) Echelon的自启教程及hack工具 cdrtools-1.9a03-win32-bin工具包 1.4G左右的硬盘空间 newfile.exe(dummy生成工具) 

在硬盘上做出以下的目录 X:\xxxx\selfboot X:\xxxx\selfboot\data 其中X:任意,xxxx也任意,在根目录也可以把Echelon自启工具及cdrtools-1.9a03-win32-bin工具包及newfile.exe都放在selfboot目录下。另外,先看看游戏源盘有多大的容量,如果容量数+20mb已经超过74分钟的盘,就要用80分钟的盘了。如果超过80分钟的盘,就可能没戏了。

2、ok...准备好了,开始制作

a. 把1ST_READ.BIN和IP.BIN拷到selfboot目录中。 有些时候1ST_READ.BIN有可能是别的名字,如果找不到1ST_READ.BIN,就用hex editor打开IP.BIN看看文件最顶上V.001XXXXXXXX ????.BIN,这个????.BIN就是要找的。不过copy到selfboot目录里都要!保持原名!,为方便起见这里我们统称1ST_READ.BIN。

b. 把游戏盘中!除了!1ST_READ.BIN和IP.BIN以外的所有文件都拷到data目录下。

c. !把以上两个步骤所拷的文件都去掉只读!

d. 运行CDRWIN,选择Record Disc,点右边load tracks。点Add,选择由Echelon工具包中的audio.raw,确定。!选Open New Session!,开始刻录第一轨。

e. !注意,以下操作只需要进行一次! 运行dos命令行,在selfboot目录里运行 cdrecord -scanbus 得出的结果可以找到你的刻录机的代号为x,x,x,如0,1,0 再运行(这时候刚刚刻了音轨的盘要放在刻录机中,否则有可能不能测数值) cdrecord -dev=0,1,0 -msinfo 可以得到0,11700(也有0,11702的) 记住这两组数值,以后再做自启盘时就不需要进行这项操作了。

f. 对1ST_READ.BIN和IP.BIN进行修改运行dos命令,在selfboot目录运行 binhack.exe 第一行输入1ST_READ.BIN !大写! 第二行输入IP.BIN !大写! 第三行输入11700(如果你是11702,就输入11702)

g. 把1ST_READ.BIN拷到data目录里 h. 这时候看看data目录有多大,如果需要加dummy就进行dummy制作 .dummy大小的计算。650mb-data目录大小mb-20mb=dummy大小,其中20mb是第一个音轨已经用掉的大小。但为保险起见再减去20mb左右。..例如dummy需要160mb,在dos下运行newfile 160,000,000 ...把生成的00dummy.dat移到data目录中。

i. ISO生成 制作一个叫isoit.bat的批处理文件 mkisofs -C 0,11700 -V %1 -l -o DATA.ISO DATA !严格按此大小写! 0,11700是cdrecord -dev=x,x,x -msinfo得到的数值 %1内容为卷标变量 在dos下运行isoit %1,如制作街霸3 3rd Strike的ISO,就运行isoit SF3_3 如果不愿意每次另加卷标,把%1换成你自己喜欢的名字。运行后会有一个warning,不要管。

j. 把IP.BIN插入ISO 在dos下运行ipins.exe 第一行输入IP.BIN !大写! 第二行输入DATA.ISO !大写! k. 刻录第二轨 这里本人推存使用工具包中的cdrecord.exe,而不是cdrwin。因为cdrecord.exe是在dos中直接对刻录机进行操作的,不需要其他乱七八糟的链文件,也没有GUI,相对稳定安全许多,而且做成batch文件后要比cdrwin方便。

制作一个叫burn.bat的批处理文件 cdrecord -dev=0,1,0 -xa1 -speed=4 DATA.ISO -dev=后面的参数是在cdrecord -scanbus中得到的数值 -speed=后的数字是指刻录速度,自己根据需要修改。

制作完成后,如果不能马上试,先放到光驱里读一下,如果能列出目录就说明基本成功了。 *文中加!!的文字都是需要特别注意的!

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试