铁血丹心

 找回密码
 我要成为铁血侠客
搜索
查看: 7738|回复: 14

[通用] 略谈LUA版修改1

[复制链接]
发表于 2010-2-26 18:31 | 显示全部楼层 |阅读模式
本帖最后由 jy02785317 于 2010-8-18 11:10 编辑

==============================================================================================
前言
==============================================================================================
1,以下内容适用于游泳的鱼制作的金庸群侠传LUA复刻版,部分内容亦适用于金庸群侠传原版(DOS版)以及weyl制作的金庸群侠传passcal复刻版
2,以下所使用的修改工具为游泳的鱼制作的FishEdit_lua版,也有用到黄顺坤制作的sfe
3,以下内容侧重于制作mod,对于工具的使用不详加解释。如需进一步讲解,请参考其他文章或者直接联系工具的作者
4,修改时请注意多多备份,若按照以下内容,使您的作品出现了异常,我也无能为力

==============================================================================================
导入贴图
==============================================================================================
首先需要认识一下贴图文件

  1. hdgpr.grp hdgpr.idx 储存人物头像的贴图文件
  2. mmap.grp mmap.idx 储存大地图显示所用到的贴图文件 有的游戏版本里名为mmp,mdx
  3. smap.grp smap.idx 储存场景地图显示所用到的贴图文件 有的版本里名为smp,sdx
  4. wmap.grp wmap.idx 储存战斗地图显示所用到的贴图文件 有的版本里名为wmp,wdx
  5. eft.grp eft.idx 储存武功效果显示所用到的贴图文件
  6. fight000.grp,fight000.idx 储存编号为0的人物的战斗攻击动作的贴图文件,有的版本名为fmp000,fdx000
  7. 按照上面的命名,还有fight001 fight002 fight003........许多文件,都是对应编号的人物的战斗攻击图
复制代码
以上文件虽然名字不同,大小不同,作用不同,但是其文件格式完全相同。
下面将一下使用FishEdit编辑贴图的方法
打开FishEdit_lua,选择gbk(繁体用户请选择big5),修改器会询问游戏目录,请指向实际游戏目录下的data文件夹
如果你使用sfe,会有如下选择

语言请选择简体(繁体用户请选择繁体)
版本选择dos,如果你修改的是weyl的passcal复刻版,请选择Kys(weyl)
Head_Type请选择grp,嗯目前所知道的任何版本都是选择grp,pic那个我不知道是用在哪的

点击菜单栏地图贴图编辑,选择贴图编辑
如图,点小三角,出现贴图文件列表,点击对应文件,即可编辑
这里暂停一下,有的人可能会点击后出错,提示某某文件不存在
可能1,人物攻击动画图,不是人人都参战,所以有些文件却是不存在。但是修改器不知道,所以也会把此文件列出来
可能2,文件命名不同,比如同样是储存场景显示的贴图文件,可能实际游戏里文件命为smp和sdx而修改器里以为是smap.grp和smap.idx,那么自然就有问题。
如图,在fishedit.ini文件里,此处即设置贴图文件的文件名。请根据游戏实际情况修改

点击任意贴图后,即会有菜单出现
,功能一目了然,这里不祥加解释
需要说明的是菜单最后一项[导入png贴图]
此功能只有FishEdit_lua版才有。导入png后的贴图文件无法被其他版本识别
原金庸群侠传的贴图文件都是用rle压缩储存的,每个贴图都有长宽以及xy便宜等信息
而导入的png图片没有这些信息,在游戏程序中,会自动获取其长宽,并使图片居中显示,至于xy偏移,则无法设置无法获取

总的来说,rle在游戏各处都能使用,但是可能有一定的失真
导入png就颜色而言比较好,但是没有xy偏移信息,使得在游戏地方无法使用
另外,游戏处理png比较耗时
lua显示图片细分来说有三种
显示外部图片
显示贴图文件中的png
显示贴图文件中的rle

第一种最慢,最后一种最快
做泡泡龙时,我已开始是用的第一种方法,当屏幕上的球比较多时,速度就很慢了。我最后采用第二种方法


推荐hdgrp中使用导入png,颜色质量比较好

在以上贴图中,再详细介绍以下几个
[wmp]
编号2553开始,是人物战斗使得四向图
注意和fmpXXX区别,前者是战斗是人物静止不动时以及移动时的贴图,后者是人物攻击时的贴图

从2553开始,每四个为一组,严格按照人物编号排列,如果某人不需要四向图,请留出相应的位置(用空贴图填充)
[fmpXXX]
以张无忌为例

注意到一共有0-95  96张贴图
其中0-55这56张是医疗时的动画,分四组,每组14张,每组分别为不同方向上的动画
56-95同样,为攻击时动画,共40张,分四组,每组10张
说这些,是为了解释人物属性里的攻击动作贞数 这个值
打开r编辑,每个人都有 攻击动作1帧数 攻击动作2帧数-------攻击动作5帧数
分别为 医疗解毒的动画帧数,拳法的帧数,剑法,刀法,特殊
所以张无忌的帧数1应该设为14,帧数2设为10,其他设为0
[eft]
eft即武功效果,编辑起来和其他的贴图没什么两样
但是用于游戏里,有两点需要注意
1偏移,只有正确设置,显示效果才比较好,需要自己去调
2游戏里,只知道某效果的编号,而这个效果对应的武功效果贴图的起始桢和结束桢,则不知,需要用一个文件来记录
在weyl的passcal复课里,是通过eft.bin来记录的,sfe里有专门的功能来修改
这里具体说下lua版的设置方法
打开script'\yconst.lua文件(记事本即可)
找到CC.Effect这一行,以金水的eft为例
  1.                                  
  2.    CC.Effect={[0]=9,14,17,9,13,                    --eft.idx/grp贴图各个武功效果贴图个数
  3.                  17,17,17,18,19,
  4.                  19,15,13,10,10,
  5.                  15,21,16,9,11,
  6.                  8,9,8,8,7,
  7.                  8,8,9,12,19,
  8.                  11,14,12,17,8,
  9.                  11,10,13,10,19,
  10.                  14,17,19,14,21,
  11.                  16,13,18,14,17,
  12.                  17,16,7,12,40,
  13.                  16,9,15,15,31,
  14.                 38,24,26,24,20,
  15.                 12,17,14,14,10,
  16.                  10,18,31,12,7,
  17.                  6,7,28,16,7,
  18.                  16,20,15,13,15,
  19.                  11,11,11,20,20,
  20.                  20,17,17,17,9,
  21.                  8,8,17,10,11,
  22.                  8,29,6,13,31,
  23.                  14,4,13,13,15,};
复制代码
每个数字即响应的武功效果的帧数
如第一行9,14,17,9,13,意为编号为0的武功效果一共9桢,编号1的武功效果一共14桢。。。。。。。
----未完待续

[发帖际遇]: jy02785317发现石破天准备用银票擦屁股,赶紧送上两卷草纸,换回一张银票,兑换银两13。


[ 本帖最后由 jy02785317 于 2010-2-26 19:06 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要成为铁血侠客

x

评分

参与人数 1声望 +14 收起 理由
黄顺坤 + 14 啊~!填补空缺。。甚好甚好

查看全部评分

【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-26 18:46 | 显示全部楼层

回复 总舵主 的帖子

支持,虽然我不懂lua,只懂得调用lua脚本。

[发帖际遇]: 轩辕夏禹发现牛家村曲灵风藏宝,共银两25两。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-26 18:52 | 显示全部楼层
甚好~~期待补完~~

什么时候老衲也写篇pascal版略谈骗骗分好了~~

握手~~

[发帖际遇]: 老衲法号乱来在擂谷山和苏星河下棋,于机缘巧合之下破解“珍珑棋局”,得到无崖子七十年内力,增加声望5。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-26 19:22 | 显示全部楼层

027新作,收益匪浅
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-26 19:39 | 显示全部楼层

关于lua版本是如何分辨png的

关于lua版本是如何分辨png的

既然开了这个帖子。。那我也来捧场吧(啊~~伟大的lua。。)
其实原理很简单。。||= =
我们使用任何一款16进制编辑器打开png文件就会发现,所有png的开头都是
89 50 4E 47 0D 0A 1A 0A

lua版本似乎就是利用了这一点来判断,如果某个贴图前8位符合这串数字,那么将会作为PNG文件读取它,反之即为最初的算法。

所以说在smp里保存的png是不失真的原png图片。。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 05:19 | 显示全部楼层

回复 三当家 的帖子

【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 07:23 | 显示全部楼层
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 09:09 | 显示全部楼层

回复 七当家 的帖子

至少在帖图方面的改法是一样的~
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 09:19 | 显示全部楼层
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 09:23 | 显示全部楼层
如果是基本方面的话
ms除了事件对话其他都是一样的`

[发帖际遇]: killer_zingy协助镇远镖局运送宝物,路上被太岳四侠打劫,损失银两18
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 09:33 | 显示全部楼层
貌似这是乱来大的事,跟咱俩没关系 另外,绿岛那事你还没回复呢

[发帖际遇]: 风吹屁屁凉不自量力,跑去参加华山论剑,结果被五绝打成重伤,花掉医药费银两31。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-27 15:01 | 显示全部楼层
话说pascal的调用lua脚本可真是方便啊,菜单什么的直接把字写上去就行了,连对话也一样。

[发帖际遇]: 轩辕夏禹救治何太冲五姑,被何太冲感激赠送银两15两。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-28 05:40 | 显示全部楼层

回复 十二当家 的帖子

有这么简单?
求教程................

[发帖际遇]: killer_zingy在高昌迷宫中迷路,花费银两1向李文秀问路。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-2-28 13:35 | 显示全部楼层
kz,我们会pascal的只要去研究下kys_script就会了吧?
lua比pascal还要简单。

[发帖际遇]: 轩辕夏禹请陈园园签名,被吴三桂发现,损失银两28。
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。
发表于 2010-4-22 14:26 | 显示全部楼层
【武侠.中国】铁血丹心论坛(大武侠):致力于推广和发展武侠文化,让我们一起努力,做全球最大的武侠社区。
可能是目前为止最好的金庸群侠传MOD游戏交流论坛,各种经典武侠游戏等你来玩,各种开源制作工具等你来实现你的游戏开发之梦。

本版积分规则

小黑屋|手机版|铁血丹心

GMT+8, 2024-12-23 04:47

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表