找回密码
 点一下
查看: 4580|回复: 0

修改超越极限 鱼的模型-浅谈slk文件的修改

  [复制链接]
发表于 2009-4-19 16:11:23 | 显示全部楼层 |阅读模式
玩过超越极限的都知道,鱼太难点到了。因为鱼太小,而且还会动。
网上找资料,自己研究,总算把鱼的模型改掉了。
恩。。。
效果图
Snap50.jpg

Snap51.jpg

超越极限用slk优化过,因此地图中没有w3i和w3u,只有slk和txt。
slk文件用excel就能打开,里面的内容就是单位和物品的定义。修改保存就可以。

总结起来,步骤是这样。
1 用hke提取war3map.j触发文件
寻找关于鱼的触发,找到了这个
//if(not(GetItemCharges(GetItemOfTypeFromUnitBJ(GetEnteringUnit(),'I01W'))>=5))then
call DisplayTimedTextToForce(GetPlayersAll(),5.00,(GetPlayerName(GetOwningPlayer(GetEnteringUnit()))+"这是鱼中王者啊,上次吃的时候已经是#¥(—*·年了吧,谢谢你冒险者,这个不知道那里捡来的宝石就送给你吧。"))
call SetItemCharges(GetItemOfTypeFromUnitBJ(GetEnteringUnit(),'I01W'),(GetItemCharges(GetItemOfTypeFromUnitBJ(GetEnteringUnit(),'I01W'))-5))
//if( return(GetItemCharges(GetItemOfTypeFromUnitBJ(GetEnteringUnit(),'I01V'))==0)
//call RemoveItem(GetItemOfTypeFromUnitBJ(GetEnteringUnit(),'I01W'))
call DisplayTextToPlayer(GetOwningPlayer(GetEnteringUnit()),0,0,"|c00fffc01获得了魔法宝石。|r")
call UnitAddItemByIdSwapped('I03E',GetEnteringUnit())

知道了鱼王的代码是 I01W

因为鱼实际上是物品,因为英雄可以捡起来。所以提取units\itemdata.slk 。
打开后,找到代码 I01W的那行。这就是鱼王的定义部分。
向后找到file项,这里是 war3mapimported\benmend.mdl 。这个文件就是鱼王的模型文件

改成什么模型好呢?
打开World editor,找个自己喜欢的单位吧。记下来这个单位的 file信息。(比如普通盒子就是 Objects\InventoryItems\TreasureChest\treasurechest.mdl
替换后,保存退出excel。

再用hke把地图中的itemdata.slk替换为我们修改好的。
重压缩之后,进游戏就可以看见效果了~~



由此,感觉现在所谓的地图加密其实是不存在的。
真正的加密,应该是用密码或算法处理数据。

评分

参与人数 1威望 +5 收起 理由
masker0925 + 5

查看全部评分

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-21 20:03 , Processed in 0.369575 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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