» 您尚未 登录   注册 | 社区银行 | 社区婚姻 | 社区成就 | 帮助 | 社区 | 无图版


火花天龙剑 -> 火炎之纹章 -> 火花学园 -> 老外的火纹战斗动画修改教程
 XML   RSS 2.0   WAP 

本页主题: 老外的火纹战斗动画修改教程 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
Lawliet

头衔:很zuo的男人很zuo的男人
该用户目前不在线
级别: 火花会员
编号: 93177
精华: 7
发帖: 1091
威望: 35 点
配偶: 单身
火 花 币: 21955 HHB
注册时间:2008-08-30
最后登陆:2012-09-29
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子
老外的火纹战斗动画修改教程

本人常年游走各中外游戏网站,找到不少外国高手的好东西,先拿出一点给大家分享一下,作为新人见面礼

GBA三作火纹的动画导出,修改,导入
原帖地址:http://forums.grandbell.net/index.php/topic,887.0.html
用到的软件WinHex(16进制编辑器), Unlz-gba(图片引导修改),Nightmare(火纹系列专用修改器,上面给出的网站就有下载)。以上软件网上都很容易搜到,不会用的到YouTube上找视频教程

教程主要内容:
Search for the animation table. It uses plain-text to designate each animation (for example "magm" is the male mage class designation in the animation table) so you can just use your hex editor's ascii search for that. After it is a bunch of pointers. You'll have to copy everything that the pointers point to plus everything that the pointers in the copied data points to
So, in the table, it'd be:
plain-text designation (16 bytes, I think, maybe 8)
pointer 1 (4 bytes)
pointer 2 (4 bytes)
...etc.

You'd find the block that pointer 1 points to, and find all pointers within the block. You'll have to copy all of that (all of the blocks that you'll eventually copy are adjacent to one another in the end), insert it somewhere in the game you're importing it to, find the new game's animation table and append a new set of pointers at the end. Then you'll have to change all the pointers within the copied block to point to the new position of the blocks.

Note, though, that one mistake will screw up the entire animation, and some animations don't work completely properly (Lilina uses the Sage casting rune as a Mage when ported to FE8, probably due to different indices for the effects; Rath's Nomad animation glitched horribly when I tried his).

The safest way is probably just to make a second instance of an existing animation (same method, just within one game), adjust the tile sheet, and repoint the pointer necessary to load said sheet.

Well, the way I'm approaching it thanks to Ice Dragon's advice is to get hold of the images from one game (obviously you've done this) and make sure the tiles align up with the animation you're intending to mimic (fortunately for me the two cavalier sheets aligned perfectly). Then either replace a different animation that won't be used or add it into some unused space (I expanded the file using my hex editor to make sure I wouldn't interefere with any Nightmare additions and added it there).

Next step is to make a copy of the animation pointers you'll mimic. Let's us the shaman as an example. Look for data with ASCII starting as sham mgl. Include the hex values that makes up that ascii and copy up until the next ascii marker that isn't sham (it'll be drum). Now go to the end of this pointer list (where there should be a bunch of zeros). Put in the hex values you copied at the end of the last item. I'm not sure if it's required to change sham to shaf, but I changed it for cavalier without anything screwing up so might as well.

OK, now you have a copied list of pointers. You want the lowest pointer value as well as the lowest pointer value from the data that follows the original set (the one in drum in this case). This gives you where the animation data is. Take the sham pointer you got, drop the 08 from the end and reverse the order of the pairs, then go to that offset (not sure you needed to know how to get offsets from pointers, but I thought to play it safe).

Copy from that offset to 1 before the other offset you got from the drum pointer. Put this into some unused space. Now you have to update the pointers in your copy sham to the copy animation data. The lowest value pointer will just now be whichever offset you put the data at (well, don't forget to add 80000000 and then pair off numbers and reverse order to get your pointer). Now you have to work out the other pointers. What I did (with a calculator) is subtract the original offset value of the pointer I just changed from the new offset value and saved that to the calc's memory. Then for each other pointer I add that stored value to the offset value of each pointer and then convert to pointers.

楼主的回帖总结:
Well, now we need the images, because at the moment the animation data is still using the old images. Go into unLZ-GBA and search for the sprites that belong to the animation data. Most of the time (if not always - haven't checked all of them) will have multiple sheets. Do a deep scan as a normal scan migh miss some (for example, a normal scan in FE8 revealed 2 female cavalier images but a deep scan revealed 4). Fortunately the sprite images are kept together. With each one you should be given the image offset by the program. Turn it into a pointer and look for this within the copied animation data. Replace every instance with a pointer to the relevant inserted image (note that sometimes a 00 might be within the pointer - just before the 08 at the end. I suggest maintaining that 00 when replacing with your new pointer). Do this for each image.

Final thing now is to create a new pointer set that can be assigned to a class. Fortunately this last bit is really easy thanks to Nightmare modules. But first go find a text file called "Animation List.txt" amongst the Nightmare modules and open it. You need to add to this list, but this is easy. Since we're mimicing an existing animation we do more copying. So find what you need to copy (in this example, the male shaman options). There should be at least 2 items for most classes, as there is here. Copy them, go to the end of the list and paste them there. Change the hex values so that the list continues to increment (and maybe change the actual text, although this doesn't affect the game). Now go back to the top of the list and find the number there. It should be 163 unless you've made changes before. Increase this number by however many items were added (if 2 were added, change it to 165). Save and close.

Open Nightmare and open the game file on it. Load the Custom Battle Animations module and find an unused one. You now need to assign an animation for every possible appearance a unit could make. For physical units you need to account for every usable weapon type. Stave users need stave animations. Spell casting animations. Disarmed animations (not sure if this applies to non-healing magic units, but I'd say do so anyway unless someone way more experienced says otherwise). Then take note of the offset listed at the top and apply changes and save. Now open the Class Editor module and scrol through to what class you intend to change. Near the bottom is something for "Battle Animation Pointer". Change the pointer to your custom one, apply changes and save.

Well, this last segment might be possible through editting the original animation pointer but I haven't looked into that quite yet.

目前正在试验中,有兴趣的话帮忙研究一下。此外,请大家用金手指调用一下代码为C9,CA,CB的物品,是隐藏魔法,动画效果为烈火的S级光,S级暗,和老奈的魔法(如果我火星的话不要骂我)

[楼 主] | Posted:2008-08-30 15:03| 顶端
曼珠沙华

该用户目前不在线
级别: 火花会员
编号: 84476
精华: 0
发帖: 5201
威望: 0 点
配偶: 紫罗兰
火 花 币: 0 HHB
注册时间:2007-10-22
最后登陆:2024-03-12
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


最后这个……还真没火星……
[1 楼] | Posted:2008-08-30 15:18| 顶端
xingfuxx



该用户目前不在线
级别: 注册会员
编号: 69325
精华: 0
发帖: 42
威望: 0 点
配偶: 单身
火 花 币: 21922 HHB
注册时间:2007-01-03
最后登陆:2018-03-20
查看作者资料 发送短消息 引用回复这个帖子


能不能翻译成中文,我很爱国的
[2 楼] | Posted:2008-08-30 17:15| 顶端
xbird

该用户目前不在线
级别: 火花会员
编号: 92216
精华: 0
发帖: 112
威望: 0 点
配偶: 单身
火 花 币: 17216 HHB
注册时间:2008-08-08
最后登陆:2010-07-19
查看作者资料 发送短消息 引用回复这个帖子


上面那些工具找不到下载页面啊……

Nightmare是什么?这个关键词在工具站可搜出一大堆不相关的东西~

[3 楼] | Posted:2008-08-30 18:23| 顶端
Lawliet

头衔:很zuo的男人很zuo的男人
该用户目前不在线
级别: 火花会员
编号: 93177
精华: 7
发帖: 1091
威望: 35 点
配偶: 单身
火 花 币: 21955 HHB
注册时间:2008-08-30
最后登陆:2012-09-29
艾雷布的骑士(I)
查看作者资料 发送短消息 引用回复这个帖子


那些软件用百度和中文GOOGLE搜不到,用英文的google搜,Nightmare是火焰纹章的通用修改器,从1代到8代都可修改,但是日版的ROM数据地址和美版不一样,而做软件的人没有做日版组件,所以修改时代码有时对不上,我只用它修改动画。文章很简单不难看懂,但全篇翻译要花很长时间,我把那帖子的前两楼翻了一下,有空的话再翻后面几楼。

**************************************************************************
我不确信或认为这可能,但还是在这问下。

我想要在FE7里添加其他作的战斗动画,如女性巫师。我的想法是用unLZ-GBA从FE8里抓图再导入FE7里的空白处,这就是我能想到的。

我的问题不单单是使用女巫师这个职业,事实上是用其图片。我试着在Nightmare修改器的组件里找关于动画的内容,但坦白地说我还没有任何头绪。

基于我想导入的职业动画有类似的现成材料(我认为男巫师的动画应该和女巫师比较像,我考虑是否可以将动画资料复制出,把需要的部分进行修改,以此做出新图片。然后改变女巫师的动画指针让其指向新的动画数据。问题是我不知道动画数据在哪,是怎样排列的。

如果可能我想试一下,而不是简单的用已有动画替代。任何的建议都可以,非常感谢。

PS:简单地用已有动画去替换不是一个好主意。我希望用FE8的神官替换FE7的,同时我可以用好的图片文件覆盖坏的部分。我猜想我需要修改图片或动画资料。

假设FE7和FE8的基础数据和系统是相似共通的,有可能从FE8里拿出动画资料放进7里空白处并改变指针吗?那就要知道动画数据存在8的哪里,但要是我能知道,我就可以把8的职业一起带出来。

*******************
容易,我已经把莉莉娜的贤者动画和妮妮安的动画导入FE8。但这是项大工程。

查找动画表(*指的是修改器Nightmare),里面用文本标了每一个动画(比如“magm”是男贤者动画的名称)。所以你可以16进制编辑器搜索它。找到的是一串指针。你必须复制指针所指的所有内容以及指针在复制文件里的所指的所有内容。(*应该是指用unLZ-GBA导出)

所以在表内有:
文本的指示(16bytes,也许是8)
指针1(4bytes)
指针2(4bytes)
......etc.

你必须找到指针1所指区域,以及区域内的所有指针。你要复制所有这些(你最终要复制的所有区域是从头到尾相连的),把它插入你要导入的有游戏的某处,找到新游戏的动画表,在最后添加一组新指针。接着你必须改变复制区域的所有指针来指向其新位置。

注意,任何一个错误会破坏整个动画,一些动画无法完整地正确表现(莉莉娜用贤者放暗魔法的形象会变成FE8里魔法师,可能是不同的效果目录索引导致的,拉丝的游牧民动画出现了可怕的故障)。

[4 楼] | Posted:2008-08-30 19:08| 顶端
cyberorg



该用户目前不在线
级别: 注册会员
编号: 56295
精华: 0
发帖: 28
威望: 0 点
配偶: 单身
火 花 币: 23899 HHB
注册时间:2006-06-27
最后登陆:2010-05-29
查看作者资料 发送短消息 引用回复这个帖子


下面是引用Lawliet于2008-08-30 19:08发表的:
那些软件用百度和中文GOOGLE搜不到,用英文的google搜,Nightmare是火焰纹章的通用修改器,从1代到8代都可修改,但是日版的ROM数据地址和美版不一样,而做软件的人没有做日版组件,所以修改时代码有时对不上,我只用它修改动画。文章很简单不难看懂,但全篇翻译要花很长时间,我把那帖子的前两楼翻了一下,有空的话再翻后面几楼。

**************************************************************************
我不确信或认为这可能,但还是在这问下。

.......


组件不难写的。要使Nightmare对应日版,基本只要在nmm文件里把数据地址换成日版的地址就能用了。
常用的数据起始地址置顶也可以查到。

[5 楼] | Posted:2008-08-31 09:31| 顶端
如月影二

头衔:暗黑皇子暗黑皇子
该用户目前不在线
级别: 论坛版主
编号: 35949
精华: 1
发帖: 2603
威望: 5 点
配偶: 花影旋岚
火 花 币: 106230 HHB
注册时间:2005-04-19
最后登陆:2024-11-03
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


如4楼所说 如果目前老外对GBA三部的战斗画面修改只限于如此程度的话
那我想说老外在GBA战斗画面的修改造诣 也不过如此


[6 楼] | Posted:2008-08-31 23:45| 顶端
chs007

该用户目前不在线
级别: 火花会员
编号: 57200
精华: 0
发帖: 194
威望: 0 点
配偶: 单身
火 花 币: 74069 HHB
注册时间:2006-07-16
最后登陆:2022-12-07
查看作者资料 发送短消息 引用回复这个帖子


老8又来砸场子了
[7 楼] | Posted:2008-09-01 20:46| 顶端
如月影二

头衔:暗黑皇子暗黑皇子
该用户目前不在线
级别: 论坛版主
编号: 35949
精华: 1
发帖: 2603
威望: 5 点
配偶: 花影旋岚
火 花 币: 106230 HHB
注册时间:2005-04-19
最后登陆:2024-11-03
朱红之钻(I)
查看作者资料 发送短消息 引用回复这个帖子


喂喂 老七 你还敢来说这些么
如果我的图你赶紧帮我做完的话 我的成品就可以出了 而老外这种东西又算的了什么


[8 楼] | Posted:2008-09-01 22:02| 顶端
草一样的汉子



该用户目前不在线
级别: 注册会员
编号: 84641
精华: 0
发帖: 23
威望: 0 点
配偶: 单身
火 花 币: 47 HHB
注册时间:2007-10-29
最后登陆:2020-09-03
查看作者资料 发送短消息 引用回复这个帖子


我把你的英文翻译过来了.......


教程主要内容:
搜索该动画表。它采用纯文本指定每个动画(例如“ magm ”是男性中MAGE阶层在指定的动画表) ,让您可以只需使用您的十六进制编辑器的ASCII的搜索。之后,这是一群三分球。您必须复制所有项目,该指针指向另加的一切,该指针在复制的数据点,以
因此,在表中,就会:
纯文本称号( 16字节,我认为,也许8 )
指针1 ( 4字节)
指针2 ( 4字节)
...等等。

您想要找到块指针1点,并找到所有的指针,该座。您必须复制所有的(所有的大厦,您最终的副本是毗邻的一另一个在年底) ,它插入某处在游戏中您进口,寻找新游戏的动画表和附加了一套新的指针,在去年底。然后,您就不得不改变所有的指针,内部的复制座以指向新位置的大厦。

请注意,虽然,一个错误将螺杆了整个动画,动画和一些不工作完全正确(利林娜用途圣人铸造如尼作为一个黑色素瘤抗原时,移植到fe8 ,可能是由于不同指数的影响; rath的游牧动画glitched一塌糊涂当我尝试他的) 。

最安全的方式,可能是刚刚作出的第二个实例现有的动画(同样的方法,只是一个游戏) ,调整瓦表, repoint指针要负荷说,资产负债表。

那么,我的方式接近它感谢冰龙的意见,掌握图像从一个游戏(显然您这样做) ,并确保瓷砖对齐与动画您有意模仿(幸好对我来说,两个骑士张不结盟绝对) 。然后更换不同的动画,将不得使用或添加到一些未使用的空间(我扩大了文件,并使用我的十六进制编辑器,以确保我不会与任何interefere恶梦增补和补充,它有) 。

下一步是要令的副本,动画指针,您会模仿。让我们巫师作为一个例子。看看数据与ASCII的开始,作为深水部门指南。包括十六进位值,使这一ASCII的和复制,直到明年的ASCII标记,这不是深水(它会鼓) 。现在到本月底指针名单(其中应该有一群为零) 。提出,在十六进位值,你复制在年底最后一个项目。我不知道,如果它的要求,改变深水,以shaf ,但我改变了它为骑士没有任何拧了,所以倒不如。

确定,现在您有一个复制的名单分。您想要最低的指针值,以及最低的指针值从数据如下原来的设置(一在鼓在这种情况下) 。这使您的地方是动画数据。采取深水指针,你明白,放弃从08月底和扭转秩序的对,然后再以抵消(不知道你需要知道如何获得偏移,从分,但我认为,以发挥它的安全) 。

复制从抵销一前其他抵销你从鼓指针。把这个到一些未使用的空间。现在你有更新的指针,在您的副本,深水,以复制动画数据。最低值指针将只是现在,两者抵消你把数据(好,不要忘记新增8000.0万,然后对小康的数目和扭转为了让您的指针) 。现在您有工作,其他的指针。我所做的(与计算器)是减去原抵销的价值指针,我只是改变了由新抵消的价值和保存,为钙的记忆。然后对方指针,我想补充说,储值,以抵消的价值,每个指针,然后转换为指针。

楼主的回帖总结:
那么,现在我们需要的图像,因为目前的动画数据仍然使用旧的图像。进入unlz -的GBA和搜索Sprite的属于动画数据。大部分的时间(如果不是总是-没有检查所有他们)将有多个工作表。做了深刻的扫描作为一个正常的扫描migh错过一些(例如,一个正常扫描在fe8显示, 2女骑士形象,但深厚的扫描显示, 4 ) 。幸好雪碧图像存放在一起。与每一个你应该得到的形象,抵消了该计划。把它变成一个指针,并寻找这与复制的动画数据。取代的每个实例与一个指针,向有关插入的形象(请注意,有时一00可能是内部的指针-前8月在去年底,我建议要保持0 0时,取代您的新指针) 。为此为每个形象。

最后一件事,现在是要创建一个新的指针设置可以分配到一类。幸好最后这一点,实在是容易,感谢恶梦模块。但首先去找到一个文本文件中所谓的“动画list.txt ” ,其中的噩梦模块和打开它。您需要增列到该名单中,但是这是很容易。由于我们正在mimicing现有的动画我们做更多的复制。因此,找到您所需要的复制(在这个例子中,男性巫师选项) 。至少应有2个项目,大部分班,有在这里。它们复制,去年底,该名单并贴有。改变十六进位值,使清单继续增量(也许改变的实际文本,虽然这并不影响游戏) 。现在回去清单的最上方,并找出有多少。应该163 ,除非你所做的更改之前。增加这个数目,但许多项目增加了(如果2人补充说,将它更改为165 ) 。保存并关闭。

开放的恶梦,并打开游戏文件上。加载自定义战役动画模块和找到一个未使用的1 。你现在需要指定一个动画,每可能出现的一个单位可以作出。物理单位,你需要考虑到每一个可用的武器类型。壁的用户需要壁动画。拼写铸造动画。解除武装的动画(不知道如果这适用于非愈合魔术单位,但我会说这样做,无论如何,除非有人的方式较有经验的说,否则) 。然后注意该抵销列于顶端和应用更改并保存。现在打开一流的编辑模块和scrol通过什么阶层,你打算改变。底部附近,是为“战斗动画指针” 。改变指针到您的自定义1 ,申请更改并保存。

好,最后这部分可能会通过编辑原动画指针,但我没有看过不少,但。

[9 楼] | Posted:2008-09-02 00:12| 顶端
eyee

头衔:EEEE
该用户目前不在线
级别: 禁止发言
编号: 32881
精华: 0
发帖: 1758
威望: 0 点
配偶: 单身
火 花 币: 25784 HHB
注册时间:2005-02-17
最后登陆:2018-11-02
查看作者资料 发送短消息 引用回复这个帖子


下面是引用草一样的汉子于2008-09-02 00:12发表的:
我把你的英文翻译过来了.......


教程主要内容:
搜索该动画表。它采用纯文本指定每个动画(例如“ magm ”是男性中MAGE阶层在指定的动画表) ,让您可以只需使用您的十六进制编辑器的ASCII的搜索。之后,这是一群三分球。您必须复制所有项目,该指针指向另加的一切,该指针在复制的数据点,以
.......

OTZ。。。乃真以为翻译机翻的东西人看不出吗。。。
明显有几处莫名其妙的地方。。
最后一句尤为明显


太阳最红
LOLI最伟大
[10 楼] | Posted:2008-09-02 01:21| 顶端
参谋长



该用户目前不在线
级别: 注册会员
编号: 54076
精华: 0
发帖: 19
威望: 0 点
配偶: 单身
火 花 币: 23894 HHB
注册时间:2006-05-13
最后登陆:2014-09-10
查看作者资料 发送短消息 引用回复这个帖子


好难啊,特别又是英文的。
[11 楼] | Posted:2008-09-02 10:44| 顶端

火花天龙剑 -> 火花学园




Powered by PHPWind v3.0.1 Code © 2003-05 PHPWind
辽ICP备05016763号
Gzip enabled

You can contact us