【转贴】打造你自己的D2 MapHack配置
原贴链接:
http://www.hfchome.com/bbs/showthread.php?s=&threadid=2568作者:
strongc@163.netsina id:strongc
大米id:radius
hfc战队成员 hfc_radius
时间:2003/1/18
特别感谢:韬光晦影,乌柒麽黑,大懒猫等,本文中的很多内容来自他们的作品。感谢sina 憎恨火墙的老墨,提供patch_d2解包文件。
D2MapHack恐怕是我们D2 Fans的标配之一,功能强大,目前最新版本4.7D
其主页http://
www.btinternet.com/~mousepad/ 现在已经打不开,不知道是不是暴雪威胁作者了。
在主页上作者公布了4.7C的源代码。
MapHack功能强大,但是配置也相对复杂。
很多人图省事,就直接采用了大懒猫,韬光晦影,乌柒麽黑等LR做的配置。
大懒猫的配置中物品小地图显示最有特色,我的配置中很多都是学他的。
韬光晦影的配置属于简洁明快型,我的配置中一般配置和怪物定义是学他的。
乌柒麽黑的配置跟他的其他文章一样,全。但是我觉得很难再定制,因为他利用MHC这个配置工具来做。我的配置中很多中文说明是学他的。
我在学习了大懒猫,韬光晦影,乌柒麽黑等LR的文章和配置之后,自己做了一个配置,做得过程中有一些心得,跟大家分享一下。
要配置MapHack,最好的教材就是自带的 Rademe.html
下面这段,说明了MapHack的相关文件组成。
========================Rademe.html==========================================
D2MAPHACK.EXE - Maphack dll loader, run this.
D2MAPHACK.DLL - Maphack dll.
D2MAPHACK.CFG - Configuration file (editable).
D2MAPHACK.VCB - Vocabulary file for configuration (editable).
README.HTML - This file.
SHRINES.TXT - List of shrine numbers.
BLOB*.BMP - Automap blob images (editable).
SHRINE*.BMP - Automap shrine images (editable).
MINISHRINE*.BMP - Automap minishrine images (editable).
=============================================================================
我们可以看到:
D2MAPHACK.EXE,是主运行程序,不过我们一般都同时用另一个著名的工具,Onlyer的免CD,我们不用关心它。
D2MAPHACK.DLL,这才是真正的工具,免CD程序会调用它,实际上D2MAPHACK.EXE也是调用它。我们不能对它做什么,除非你打算修改源代码^^。
D2MAPHACK.CFG,这个是配置文件,说明说了,我们可以编辑它,它是个文本程序,用任何文本编辑器都可以打开编辑
D2MAPHACK.VCB,这是个词汇表,因为程序只认识数字,而我们看数字代码太费劲,所以需要个翻译,可以编辑这个文件
BLOB*.BMP,小地图上的图像文件,我们也可以编辑它,也许,我们喜欢让怪物变成个笑脸^^。
其他的文件是定义神殿的,也可以修改,但是我觉得就没必要了,原来的挺漂亮。
接下来我们看看安装和默认键定义
========================Rademe.html==========================================
Installation :-
1. Extract all files from D2MAPHACK.ZIP to any folder (you only have to do this once).
2. Run Diablo II.
3. Alt+tab out of Diablo II.
4. Run D2MAPHACK.EXE.
5. Click on "Install/update".
6. Alt+tab back to Diablo II and play.
Default keys in game (on numpad) :-
"-" - Reveal automap for whole act.
"*" - Toggle full screen light radius, full infravision and sunny weather.
"/" - Toggle show monsters on automap.
"+" - Toggle show hidden items.
Scroll lock - Toggle virtual map scrolling.
Pause/Break - Center virtual map.
=============================================================================
跟着是上面内容的翻译和补充,来自韬光晦影。
一般用户安装步骤:
1. 把压缩包里的所有文件展开到任意一个文件夹;
2. 运行Diablo II,启动游戏;
3. 用Alt+tab切换到桌面;
4. 运行D2MAPHACK.EXE;
5. 按下"Install/update";
6. 再用Alt+tab切换回游戏即可。
D2LOADER用户安装步骤:
1. 把压缩包里的所有文件展开到D2LOADER附属的PLUGIN文件夹里(这个文件夹一般在游戏所在文件夹里);
2. 直接启动游戏,D2LOADER将自动加载MAPHACK。
默认的功能键:
"-" - 获取当前act的地图;
"*" - 光线开关;
"/" - 是否在地图上显示怪兽的开关;
"+" - 物品隐藏开关(默认隐藏GOLD);
Scroll lock - 地图卷动开关;
Pause/Break - 地图置中开关。
跳过FAQ段,我们来到实质性的配置说明看看
========================Rademe.html==========================================
CONFIGURATION
Basic variable format :-
Variable Name[1st array indexes][2nd array indexes][etc]: values
Notes :-
Any part of line can be replaced with an appropriate "word" from D2MAPHACK.VCB (vocabulary file).
Variables have 0 to 3 array dimensions, omiting an array is same as specifying 1+ (all).
Array indexes = a comma seperated list of either a single number, a range seperated by a dash or a number followed by a plus (to limit of array).
Values = a comma seperated list of 1 to 2 numbers (hex or decimal) or strings, missing values are unchanged.
Variables can be used more than once, with the last overiding (if array indexes permit).
=============================================================================
这段是说变量如何定义。
变量的格式是:
变量名[第一维][第二维][其他]:值
注释说,每一部分都可以用一个适当的“词”替换,来源就是D2MAPHACK.VCB。
变量是0-3维的,如果省略了,相当于此维为 1+ 或者是 all
维索引是单一数列表,一个范围,或者是一个数字跟着个"+"。
值是逗号分割的1到2个数(10进制或16进制),或者是个字符串。缺少的值就是不变的。
变量在配置中可以多次出现,最后定义的会覆盖前面的定义中索引范围重合的部分。
呵呵,有点专业,可能对于学过编译原理的人很容易。
还是举几个例子吧,这样就不抽象了。
========================D2MapHack.CFG========================================
Reveal Act Automap
Key: VK_SUBTRACT // 获取整个ACT地图 "-"
=============================================================================
这行定义了展开地图的键
Reveal Act Automap Key 就是变量名
VK_SUBTRACT就是值,它的定义在D2MAPHACK.VCB中定义如下:
========================D2MapHack.VCB========================================
VK_SUBTRACT: 0x6D
=============================================================================
这是最简单的一种形式。
后面是注释,学过C++的LR一定感觉非常亲切
========================D2MapHack.CFG========================================
Game Time Toggle: 1, -1 // 游戏时间显示 开
=============================================================================
这行复杂一些,有两个值
定义游戏时间显示,开,没有开关的键。
再看几个复杂的定义
========================D2MapHack.CFG========================================
Item Colours[1+][1-4,6]: -1,-2
Item Colours[Act2_Pet_Weapons][2,3][ETHEREAL]: 5,0xa4
Item Colours[2014,2017,2018,2024-2035,2037-2048,2137-2139][2]: 4,0x1f // 金色显示特殊过关物品和任务物品 ;
=============================================================================
第一行定义了所有的除了set和unique的物品地面不显示,地图不显示。
有人说了,我想捡superior
eth war pike,不显示怎么行?
别紧张,后面的定义会覆盖前面的。
第二行定义了对act2的pet来说非常有价值的Normal和Superior eth武器,地面上灰色显示,地图上高量浅蓝色显示。
第三行定义了全部的过关和任务物品显示方法,地面上用暗金显示,地图上浅棕色(也许是吧,不好形容)
对于第二行,我使用了一个技巧,使得定义很简单,就是利用D2MapHack.VCB。
========================D2MapHack.VCB========================================
* Pet Weapons*
Elite_Polearm: Ogre Axe-Giant Thresher // Elite_Polearm
Elite_Spears: Hyperion Spear-War Pike // Elite_Spear
Act2_Pet_Weapons: Elite_Polearm,Elite_Spears
=============================================================================
大家自己看看,不难吧,自己可以修改这些定义的,也许你不喜欢pet用Ogre Axe,那么改掉它。
我们接着往下学习变量说明,这里我直接用D2MapHack.CFG来说明,次序与Readme.html一致。
为了方便,下面的内容中的说明文字都加了注释前导,可以直接拷贝到D2MapHack.CFG中。
// 首先定义一些键,格式为: 名字:键代码
Reveal Act Automap Key: VK_SUBTRACT // 获取整个ACT地图 "-"
Reveal Level Automap Key: -1 // 不知道什么意思^^,也许是全部5个act地图?
Center Map Scroll Key: VK_PAUSE // 卷动置中 "Pause/Break"
Quick Exit Game Key: -1 // 快速退出,没有使用
View Inventory Key: VK_K // 按K键偷窥别人的装备
// 接下来是开关键,格式都是: 开关名:默认值,键代码,1表示开,0表示关。具体开关含义见注释,有些我也不很理解。
Full Visuals Toggle: 1, VK_MULTIPLY // 光线开关 "*"
// Weather Toggle: 1, VK_MULTIPLY // 4.7D新增天气,热键开关 "*",未启用
// Infravision Toggle: 1, VK_MULTIPLY // 4.7D新增透视,热键开关 "*",未启用
// Light Radius Toggle: 1, VK_MULTIPLY // 4.7D新增可视度,热键开关 "*",未启用
// Screen Shake Toggle: 1, VK_MULTIPLY // 4.7D新增屏幕抖动,热键开关 "*",未启用
// Corpses Toggle: 1, VK_MULTIPLY // 4.7D新增尸体的显示,热键开关 "*",未启用
Automap Monsters Toggle: 1, VK_DIVIDE // 怪物小地图显示,热键开关 "/"
Automap Level Names Toggle: 1,-1 // 洞穴的层数标示,,默认为打开,未设置热键
Automap Chests Toggle: 1, VK_DIVIDE // 箱子开关 "/"
Automap Items Toggle: 1, VK_DIVIDE // 地图物品隐藏开关 "/"
Automap Missiles Toggle: 1, VK_DIVIDE // 地图上显示敌人的发射物攻击(向导箭、骨精灵等) "/",形状后面可以定义
Automap Active Rooms Toggle: 0, -1 // 4.6c新增功能,地图上活动房间的开关,默认为关闭,未设置热键
Hidden Items Toggle: 0, VK_ADD // 地面物品隐藏开关 "+",默认隐藏
Scroll Map Toggle: 0, VK_SCROLL // 区域卷动锁定中心,默认为关,热键开关Scroll Lock?推胀ǖ木矶?赝贾皇且贫?〉赝级?桓谋淠闶导实目墒忧?虿煌??斯δ芸?艉螅?嵋砸环娇蛩??阍谛〉赝嫉奈恢茫?缓蟮髡?较蚣?贫?闶酉咄獾氖导是?蚯榭觯ń巧?旧聿⒉灰贫?恢茫??鼓憧梢钥吹讲⑶乙允蟊甑慊鞯匠?泳嗤獾墓治锒?治锶炊阅阋晃匏???媸羌捌浔涮?墓δ埽?绕涫屎吓?壮?泳嗍┓ǎ?比灰?胍?┣绞┓ɑ褂兴?荒堋I厦娴腃enter Map Scroll Key:VK_PAUSE键可以使你恢复到原初的角色站立位置
Automap Screen Area Toggle: 0, VK_SCROLL // 4.7D新增功能,当前实际可见区域标识颜色,热键开关Scroll Lock,默认为关
Monster TC Toggle: 1, -1 // TC财宝阶层显示,默认为打开,未设置热键
Monster Levels Toggle: 1, -1 // 4.7D新增功能,怪物等级显示,注意和TC财宝阶层显示不同,默认为打开,未设置热键
Perm Show Items Toggle: 0, -1 // Alt键锁定。默认为关,未设置热键
Game Time Toggle: 1, -1 // 4.7c新增功能,进入游戏时间显示,默认为打开,未设置热键
Drop Protect Toggle: 1, -1 // 4.7c新增功能,ITEM DROP Hack保护,默认为打开,未设置热键
Input Line Toggle: 1, -1 // 4.7c新增功能,可以在GAME内(不是频道内)ctrl+a,ctrl+c,ctrl+v,复制拈贴文字,默认为打开,未设置热键
Out Town Select Toggle: 1, -1 // 4.7D新增功能,城外选择功能。默认为打开,未设置热键,不理解
Mini Shrines Toggle: 1, -1 // 小地图上显示祭坛位置,默认为打开,未设置热键
Diagonal Scroll Toggle: 1, -1 // 斜向卷轴开关
Chicken Life Toggle: 1, -1 // PVC时血过低自动退出开关,默认为打开,未设置热键
Chicken Hostile Toggle: 1, -1 // 其他玩家敌对自动退出开关,默认为打开,未设置热键
Chicken Hostile Nearby Toggle: 1, -1 // 敌对玩家接近则自动退出开关,默认为打开,未设置热键
Socket Protect Toggle: 0, -1 // SOCKET保护,防止不小心把DD镶到不应该镶的地方,默认为不保护。
Rune Numbers Toggle: 1, -1 // RUNE编号显示,默认为打开,未设置热键
Socket Numbers Toggle: 1, -1 // 孔数显示,默认为打开,未设置热键
Item Levels Toggle: 1, -1 // 4.7c新增功能,ilvl物品等级显示,默认为开,未设置热键
Item Unitids Toggle: 0, -1 // 4.7c新增功能,物品ID编码显示,默认为关闭,未设置热键
// 定义小地图中其他玩家默认状态,名字和同盟显示
Automap Party Default: 1
Automap Names Default: 1
// 一些全局颜色定义
Level Name Colour: White // 难度名显示,白色
Quest Item Colour: -1 // 任务物品颜色,我们会用其他方式定义
Monster Desc Colour: Red // 怪物颜色,红
//
Staff Tomb Level Desc: "%2*" // ACT2 TOMB的标示,真正的古墓位置,绿色星号
// 特殊属性怪物的显示的如下(很多定义来自韬光晦影,很多说明来自乌柒麽黑):
// 其中的1-9、a-c表示颜色代码,分别是0-White;1-Red; 2-Set Green; 3-Blue; 4-Unique; 5-Eth; 6-Black; 7- Yellow; 8-Craft; 9-Rare; a-Green; b-pupler; c-Green“(颜色代码说明参照大懒猫版本)
Extra Strong Desc: "S" // 特别强壮。怪物最小和最大伤害度各×3,命中率+25%
Extra Fast Desc: "F" // 特别快速;Unique and Minions 怪物获得移动速度上升,Unique 怪物攻击频率×2
Cursed Desc: "%2C" // 特别诅咒;如果被拥有这个能力的怪物击中,有50%的概率会中Amplify Damage(傷害加深)诅咒,而这个诅咒的级别为怪物级别的1/4
Magic Resistant Desc: "%8m" // 魔法抵抗;火系,雷系,冷系的魔防+40%
Fire Enchanted Desc: "%1f" // 火焰增强;怪物增加火系攻击,其伤害度等同于物理攻击伤害度,命中率×2,火系魔防+75%。怪物死亡时,尸体会爆炸,其伤害度为怪物生命的75%~100%,伤害属性和男巫的corpse explosion一样一半为物理伤害,一半为火系伤害,范围为4 yards
Lightning Enchanted Desc: "%9L" // 闪电强化;怪物增加闪电攻击,其伤害度等同于物理攻击伤害度,命中率×2,雷系魔防+75%。怪物受到攻击时,会放出Charged Bolt,该魔法级别与怪物级别相同(大家知道为什么会死了吧……)
Cold Enchanted Desc: "%3c" // 冰冻增强;拥有这个能力的怪物获得以下能力:增加冷系攻击,其伤害度等同于物理攻击伤害度,冷冻时间+20秒,命中率×2,冷系魔防+75%。怪物死亡时,会放出一个Frost Nova(冰环)魔法,该魔法级别和怪物级别相同(LV7X的冰环,怕了吧)
Thief Desc: 0 // 偷取,命中目标时使目标腰带上的瓶子落下,这个没什么可怕的
Mana Burn Desc: "M" // 法力燃烧;拥有这个能力的怪物获得以下能力:击中目标时减少目标的Mana,减少量为其伤害度的4倍,命中率×2,对无属性魔法(骨系,光系等)抵抗+75%
Teleportation Desc: "T" // 传送;当拥有该能力的怪物生命低于33%或远程攻击的怪物被近身时,会使用Teleport(瞬间移动)魔法传送到附件的任何地方。如果怪物的生命低于33%,那么在每次瞬间移动时回复25%的生命。(1.09中大大减弱了怪物在瞬间移动时回复生命的能力)
Spectral Hit Desc: "h" // 特别一击。拥有这个能力的怪物获得以下能力:火系,雷系,冷系的魔防+20%,命中率×2,随机使用火、雷、冷、毒属性攻击,其伤害度等同于物理攻击伤害度
Stone Skin Desc: "%4k" // 石头皮肤;拥有这个能力的怪物获得以下能力:物理抵抗(DR)80%,防御力×3
Multiple Shots Desc: "w" // 多重射击;能同时发射2个以上(通常是3~4个)的同类飞行道具
Ghostly Desc: 0 // 幽灵的;速度减半,20%的冰冻伤害,50%物免(HELL 通常就是100%了)
Fanatic Desc: "%bF" // 狂热的;速度+100%,-70% To Attack Rating
Possessed Desc: 0 // 着魔的、疯狂的;生命x12(怀疑官方资料有误,可能是x1.2),无法被诅咒
Berserker Desc: "%3B" // 伤害x4,命中率ARx4,生命x1.5
// Auras Enhanted:光环附着
Might Aura Desc: "%3a" // 力量光环,其技能级别为怪物级别的1/4
Holy Fire Aura Desc: "%1a" // 圣火光环,其技能级别为怪物级别的l/2
Blessed Aim Aura Desc: "%0a" // 瞄准光环,其技能级别与怪物级别相同
Holy Freeze Aura Desc: "%3a" // 圣冰光环,其技能级别为怪物级别的l/2
Holy Shock Aura Desc: "%9a" // 圣光,其技能级别为怪物级别的l/2
Conviction Aura Desc: "%11a" // 审判光环,其技能级别为怪物级别的1/4,如果配合闪电增强+多重攻击,哼哼~~~~
Fanaticism Aura Desc: "%5a" // 狂热光环,其技能级别为怪物级别的1/4
// 这段似乎所有人配置都差不多^^
// Immunities:免疫属性
Physical Immunity Desc: "%4i" // 物理免疫
Magic Immunity Desc: "%8i" // 魔法免疫
Fire Immunity Desc: "%1i" // 火免疫
Lightning Immunity Desc: "%9i" // 电免疫
Cold Immunity Desc: "%3i" // 冰免疫
Poison Immunity Desc: "%2i" // 毒免疫
// 一些数字定义
Map Scroll Speed: 16 // 小地图卷动速度设定
Life
Bar Transparency: 2 // Life Bar透明度设定
// 一些关于如何保命的数字定义
Chicken Life: 0 // 0表示不检查Life值,PVC时到死也不退出。如果设置了数字如400,则PVC时低于400点Life值,自动退出。检测次序是优先检测PVC Life设置,其后检测Hostile Life,再次检测Hostile Nearby Life
Chicken Hostile Life: 0 // 0表示不检查Life值,Hostile到死也不退出。如果你希望无论何时,只要一有玩家敌对就立即退出,那么就Life值设为譬如10000,那么自然一有玩家敌对就立即退出,当然如果在城内还是不会自动退出的。如果PVC Life设置高于Hostile Life设置值,譬如500,那么你一出城和敌对玩家厮杀,只要Life低于500就退出,而不会到400才退
Chicken Hostile Nearby Life: 0 // 0表示不检查Life值,Hostile到死也不退出。如果设置了数字如400,则敌对玩家接近时低于400点Life值,自动退出,如果PVC Life或Hostile Life设置值高于Hostile Nearby Life,譬如450,如果有敌对时,只要Life低于450就退出,而不会到敌对玩家接近才退
// 可以配合这几个开关
// Chicken Life Toggle: 1, -1 // PVC时血过低自动退出开关,默认为打开,未设置热键
// Chicken Hostile Toggle: 1, -1 // 其他玩家敌对自动退出开关,默认为打开,未设置热键
// Chicken Hostile Nearby Toggle:1, -1 // 敌对玩家接近则自动退出开关,默认为打开,未设置热键
Good Gold Number: 3000 // 太少的钱可以不显示,这是显示下限,免得人家扔满地钱造成lag
Life Bar Colour: 0x08 // Life Bar 颜色定义,颜色由调色板定义
// 地图上各种图标显示。这里是我们DIY的一个好地方,可以自己定义bmp文件。用画笔就可以,2色文件。
Player Blob File: "blobdiamond" // 游戏者,方块
Monster Blob File: "blobcross1" // 怪物,十字
Object Blob File: "blobcircle" // 箱子等,圆环
Missile Blob File: "blobdot" // 发射物,点
Item Blob File: "blobsanjiao" // 物品,三角。此处是我的配置不同于其他人的地方,自定义了一个bmp文件
// 接下来是一些地图上的颜色定义
Automap Active Rooms Color: 0x19 // 地图上活动房间的颜色,我不太理解什么叫活动房间
Automap Screen Area Colour: 0x19 // 在说明中不存在,但是原版的示例中有
Closed Chest Colour: 0x09 // 箱子颜色
Locked Chest Colour: 0x0e // 带锁箱子的颜色
Hostile Missile Colour: 0x62 // 敌人发射物的颜色
Guided Missile Colour: 0x5b // 制导型发射物的颜色
Tracer Missile Colour: 0x97 // 跟踪型发射物的颜色(这和制导型有什么不同?)
Other Missile Colour: 0x20 // 其他发射物颜色
// 这里提前定义一些全局变量,不能放后面,会覆盖后面的定义
Monster Colours[?]: ?
Monster Death Anims[?]: ?
// 玩家和怪物颜色,定义跟韬光晦影一样
Neutral Player Colour: 0x79 // 一般玩家的颜色 暗绿
Hostile Player Colour: 0x5b // 敌对玩家的颜色 颜色棕红
Normal Monster Colour: 0x62 // 一般怪兽的颜色 红
Boss Monster Colour: 0x48 // 金怪的颜色 暗红
Minion Monster Colour: 0x1e // 金怪周围的小弟MINOR的颜色 白
Champion Monster Colour: 0x6d // 蓝怪的颜色 黄
Act5 Barbarian Colour: 0x9f // ACT5 BAR的颜色 暗绿
// 下面是一些其他版本的定义
// 乌柒麽黑版怪物的颜色设定(版本名称前的"//"可不要去除了哦)
// Normal Monster Colour: 80 //普通怪物以大红色显示
// Boss Monster Colour: 75 //boss级怪物以紫色显示
// Minion Monster Colour: 97 //Minion级以土黄色显示
// Champion Monster Colour: 77 //Champion级以唇红色显示
// Act5 Barbarian Colour: 121 //ACT5 3
古代人以紫红色显示
// Neutral Player Colour: 223 //中立玩家以白色显示
// Hostile Player Colour: 10 //敌对玩家以红色显示
// 原版Maphack4.7d怪物的颜色设定(版本名称前的"//"可不要去除了哦)
// Normal Monster Colour: 0x62
// Boss Monster Colour: 0x5b
// Minion Monster Colour: 0x5b
// Champion Monster Colour: 0x5b
// Act5 Barbarian Colour: 0xcb
// Neutral Player Colour: 0x62
// Hostile Player Colour: 0x5b
// 韬光晦影版怪物的颜色设定(版本名称前的"//"可不要去除了哦)
// Neutral Player Colour: 0x79 // 一般玩家的颜色 暗绿
// Hostile Player Colour: 0x5b // 敌对玩家的颜色 颜色忘了
// Normal Monster Colour: 0x62 // 一般怪兽的颜色 红
// Boss Monster Colour: 0x48 // 金怪的颜色 暗红
// Minion Monster Colour: 0x1e // 金怪周围的小弟MINOR的颜色 白
// Champion Monster Colour: 0x6d // 蓝怪的颜色 黄
// Act5 Barbarian Colour: 0x9f // ACT5 BAR的颜色 暗绿
// 大懒猫版怪物的颜色设定(版本名称前的"//"可不要去除了哦)
// Normal Monster Colour: 0x45
// Boss Monster Colour: 0x5b
// Minion Monster Colour: 0x45
// Champion Monster Colour: 0x5b
// Act5 Barbarian Colour: 0xcb
// Neutral Player Colour: 0x79
// Hostile Player Colour: 0x5b
// 有关发射物的一些定义,-1 在地图上隐藏,-2 显示
// 这里纠正普遍流行的几个版本中文注释错误, 对于发射物来说,-2 是地图上显示!!
// 原文注释:
// (missiles) -1 hide on automap, -2 show tracer/hostile/guided on automap
Missile Colours[All Arrows]: -2 // 4.7c新增功能,地图上显示发射物(-1不显示)
//Missile Colours[Firewall, FireSmall, FireMedium]: -2 // 地图上显示FIREWALL等(-1不显示)
//Missile Colours[FrozenOrbBolt, FrozenOrbNova]: -2 // 地图上显示ORB(-1不显示)
Missile Corpses[Vine Beast Death]: 0 // 地图上显示临死发射的怪物(比如ACT2地洞里的甲虫)的颜色(0正常显示)
// 接下来是一些物品颜色,地面,地图显示定义,我们先跳过去
// 特别的怪物颜色定义 [] 里面直接可以写怪物名,或者是代码。代码可以在D2MapHack.VCB中查找
// 下面这行要提前
// Monster Colours[?]: -1 // 默认颜色显示怪物
// 防PK,一些陷阱,
刺客的和女巫的火龙
Monster Colours[411]: 0x20 // Wake of Fire
Monster Colours[413]: 0x20 // lighting Sentry
Monster Colours[416]: 0x20 // Inferno Sentry
Monster Colours[248]: 0x20 // Hydra
Monster Corpses[Wake of Fire-Death Sentry]: 0
Monster Death Anims[?]: ? // 怪物临死的动画? 0 为关
Monster Death Anims[Shenk]: 0
Monster Corpses[Wake of Fire-Death Sentry]: 0
//原版中的一些例子
//Examples :-
//Monster Colours[?]: -1 //show monster in default colour
//Monster Colours[?]: -2 //dont show monster on automap
//Monster Colours[Undead Stygian Doll]: 0x20 //show undead stygiandoll's white on automap
//Monster Colours[Wake of Fire-Death Sentry]: 0x20 //show traps on automap
//Monster Death Anims[1+]: 0 //dont show any monster death anims
//Monster Death Anims[Andariel]: 0 //dont show andariel death anim
//回到物品颜色定义
Rare Item Colour: -1
Unique Item Colour: -1
Good Gold Colour: 0 //大量金钱,白色
Poor Gold Colour: -1,-2 //少量的钱,不显示
到这里就不要拷贝了,我们来看看最复杂的 Item Colours 配置
格式为:Item Colours[物品][质量][无形?]:地面颜色,地图颜色
原版说明中的几个例子
Item Colours[Ear]: -1, -2
Item Colours[Shako][Unique]: 11, 0x20
Item Colours[Sabre][Set][Ethereal]: -1, -2
再次看几个复杂的定义:
========================D2MapHack.CFG========================================
Item Colours[1+][1-4,6]: -1,-2
Item Colours[Act2_Pet_Weapons][2,3][ETHEREAL]: 5,0xa4
Item Colours[2014,2017,2018,2024-2035,2037-2048,2137-2139][2]: 4,0x1f // 金色显示特殊过关物品和任务物品 ;
=============================================================================
注意,由于后面的相同定义可以覆盖前面的定义,所以在前面的定义范围要大。
接下来有一些分类物品的显示定义,包括
Charm Colours
Rune Colours
Rejuv Pot Colours
Healing Pot Colours
Mana Pot Colours
Gem Colours
Amethyst Colours
Topaz Colours
Sapphire Colours
Emerald Colours
Ruby Colours
Diamond Colours
Skull Colours
格式都是:变量名[数字]:地面颜色,地图颜色
原版说明中的一些例子:
Rune Colours[10+]: 11, 0x80
Gem Colours[Chipped]: Orange
在说明中有个调色板/自动地图颜色表,颜色的定义是:
Number = 0x<row><column> or
(monsters) -1 show on automap, -2 hide on automap
(items) -1 hide on automap, -2 hide on automap and ground
(missiles) -1 hide on automap, -2 show tracer/hostile/guided on automap
数字=0x<行><列> 或者
对于怪物: -1 在地图上显示,-2 在地图上不显示
对于物品: -1 在地图上不显示,-2 在地图上和地面都不显示
对于发射物:-1 在地图上隐藏,-2 在地图上显示 (为什么跟怪物颜色定义是反的???)
文字颜色: -1 为默认色,0 为白色
其他颜色定义如下:
1 Red
2 Green 1
3 Blue
4 Gold 1
5 Grey
6 Black
7 Gold 2
8 Orange
9 Yellow
10 Green 2
11 Purple
12 Green 3
最后,我们看看如何定义D2MapHack.VCB。
这个文件是做翻译的,可以定义一些兼容的词,比如
Not Ethereal, Not Ethreal, Real: 1 // 都是一个意思,非Eth的,翻译为 1
Ethereal, Ethreal: 2 // 怕拼写错误^^
这个是定义一类物品:
Normal Armor: Cap-Spiked Shield, Wolf Head-Coronet
注意,我们可以利用 "-" 做一个范围。
已经定义的词,可以继续被利用,定义更大的范围:
Elite Armor: Diadem-Blade Barrier, Blood Spirit-Bloodlord Skull
Elite Weapons: Suwayyah-Demon Crossbow, Heavenly Stone-Matriarchal Javelin
Elites, Elite Items: Elite Armor, Elite Weapons
高亮显示Elite物品就方便了,这么写:
Item Colours[Elites]: -1,0xa4 //默认颜色,地图上高亮
关心Eth的Elite,这么写:
Item Colours[Elites][1+][Ethreal]:-1,0xa4
其中的1+也可以写成all,因为,有这么一行定义:
All, Everything: 1+
下面是我写个一段定义,关于拣东西卖钱的
========================D2MapHack.VCB========================================
//*35000 item*
Gold_Armor: Ancient Armor,Tigulated Mail-Mage Plate,Dusk Shroud-Archon Plate
Gold_Helm: Winged Helm,Grand Crown,Grim Helm,Tiara-Demonhead 2,Bone Visage
Gold_Shield: Heater-Ward,Troll Nest,Blade Barrier
Gold_Belt: Spiderweb Sash-Colossus Girdle
Gold_Boots: Scarabshell Boots-Myrmidon Greaves
Gold_Gloves: Vambraces-Ogre Gauntlets
Gold_Class: Totemic Mask,Savage Helmet,Slayer Guard,Guilded Shield,Royal Shield,Heirophant Trophy,Blood Spirt-Bloodlord Skull
Gold_Items: Gold_Armor,Gold_Helm,Gold_Shield,Gold_Belt,Gold_Boots,Gold_Gloves,Gold_Class
=============================================================================
相应的,在D2MapHack.CFG中定义:
========================D2MapHack.CFG========================================
/////////////////////////////////////////////////
// //
// 可以卖钱的物品 //
// //
/////////////////////////////////////////////////
Item Colours[Gold_Items][2,3]: 0,0xa0
Item Colours[Gold_Items][4]: 3,0xa1
Item Colours[Gold_Items][6]: 9,0xa2
=============================================================================
有个D2MapHack.CFG配置工具,叫做MHC。
但是我不喜欢用MHC,生成的东西实在太繁琐,举个例子,关于耳朵的定义:
Item Colours[Ear][1][NOT ETHEREAL]: 0,-2
Item Colours[Ear][1][ETHEREAL]: 0,-2
Item Colours[Ear][2][NOT ETHEREAL]: 0,-2
Item Colours[Ear][2][ETHEREAL]: 0,-2
Item Colours[Ear][3][NOT ETHEREAL]: 0,-2
Item Colours[Ear][3][ETHEREAL]: 0,-2
Item Colours[Ear][4][NOT ETHEREAL]: 0,-2
Item Colours[Ear][4][ETHEREAL]: 0,-2
Item Colours[Ear][5][NOT ETHEREAL]: 0,-2
Item Colours[Ear][5][ETHEREAL]: 0,-2
Item Colours[Ear][6][NOT ETHEREAL]: 0,-2
Item Colours[Ear][6][ETHEREAL]: 0,-2
Item Colours[Ear][7][NOT ETHEREAL]: 0,-2
Item Colours[Ear][7][ETHEREAL]: 0,-2
Item Colours[Ear][8][NOT ETHEREAL]: 0,-2
Item Colours[Ear][8][ETHEREAL]: 0,-2
看看吧,耳朵也有Eth的?!
实在啰嗦,其实一行就够了:
Item Colours[Ear]:0,-2
最后总结一些提示:
***后面的变量会覆盖前面的,所以前面要这样:
Item Colours[1+][1-4,6]: -1,-2
随后,一些特别的显示:
Item Colours[Gold_Items][2,3]: 0,0xa0
Item Colours[Gold_Items][4]: 3,0xa1
Item Colours[Gold_Items][6]: 9,0xa2
***可以自己定义vcb,方便定义一类物品,例如我自己定义了所谓35000 items。
***可以自己定义bmp文件,显示特别的形状
***看着颜色代码,给wf之类的东西一个与众不同的颜色