Board logo

标题: [原理] 暗黑破坏神2物品四部曲之补遗篇 [打印本页]

作者: 很有粪量的人    时间: 2009-4-10 21:26     标题: 暗黑破坏神2物品四部曲之补遗篇

Items——D2x物品全解三部曲之补遗篇

在按照原计划整理D2x物品全解三部曲的过程中,又收集到了一些新的资料,因为不好归类到前三部曲中,只好另外做成补遗篇。基本上还是以cata (傻冒黑骑)的帖子为主,其中有些是国外资料,由cata翻译转述过来(少数几处经我编辑过)。另外还附上一篇onlyer(不用多介绍了吧,国内外著名的免CD补丁d2loader的作者,清华zixia战网的网管,好像也是创始人之一,目前仍是清华的学生)的《有关D2X的随机系统》,不知道有多少玩家能看得懂这篇文章,呵呵。 :laugh:

Shopping原理--序

一个char能在NPC哪里买到什么东西,决定于NPC的种类和char的级别.
当NPC和char都固定时,第一个与NPC交谈的char将决定NPC的item list.
这个item list只有在城里的player全都走掉或所有player不再与之交谈
维持5分钟,才能被新的交谈所刷新.

叙述NPC生成其物品的过程前先介绍几个基本关系:
1.买到物品的ilvl = clvl + 5(clvl为人物级别)
2.在normal难度物品ilvl还要受到场景的限制(by Jarulf):
Act 1: max_ilvl=12
Act 2: 20
Act 3: 28
Act 4: 36
Act 5: 45
即用90级的char到normal act1买到的东西其ilvl也只能是12而非95.
3.在nightmare和hell物品ilvl无上述限制,但ilvl始终不能超过99,这
是游戏的限制,即用98级的人物买到的东西也只是99而非103.
4.以上(以及本篇所有原理)都只针对NPC生成的物品,别的char卖给他们
的物品不在考虑中.

[Shopping原理(2)]
Shopping原理--1st,选择Normal Items

在char与之交谈后,NPC第一步选择各种基础类型物品,即非
exceptional或elite的Normal Item,如pike,light plate等.
而只有满足qlvl≤ilvl的Normal Item才会最终出现.如前所述,NPC
shop list中的生成物品ilvl=clvl+5,即只有qlvl≤clvl+5的Normal物品
可以出现.例如light plate qlvl=35,则char的级别要至少35-5=30才能
看到light plate出售.
如果是在normal,ilvl还有封顶.如Act3 max_ilvl=28,则NPC不可能
在这一步选择light plate;而Act max_ilvl=36,则可能出现light plate.
总之,这一步就是NPC根据物品的ilvl来选择一定qlvl的Normal Items.

当然每个NPC所能卖的物品还有固有设定,不是说只要满足条件就什么
都能卖.而是在所能卖的物品中选择满足条件的来生成到shop list中.


[Shopping原理(3)]
Shopping原理--2nd,Normal Item升级

选择完符合条件的Normal Items之后,如果是在normal难度,则这些
物品就为最终出售的物品类型,在此基础上直接跳到第4步(详见后).
如果是在nightmare或hell难度,则这些Normal Item将有机会升级为
exceptional或elite物品,具体几率如下(by Jarulf):
●nightmare难度
chance of a normal item to be exceptional:
( 64 × (clvl+5) / 1000 + 4 )%
never Elite

●hell难度
chance of a normal item to be elite:
( 16 × (clvl+5) / 1000 + 1 )%
if it fails,chance of this item to be exceptional:
( 128 × (clvl+5) / 1000 + 5 )%

注:之所以用"clvl+5"而不用"ilvl"是因为在此几率运算中"clvl+5"没有
上限99的限制,而物品的ilvl则最大99.即"clvl+5"可取值到104.
同时可以看出选定后的normal item升级为高级物品的几率只和人物和难度
有关,如此简单罗列一些级别的char在Hell看到某normal item升级为elite
的几率:
--------------------------
clvl chance_to_be_elite
--------------------------
99 2.66 %
95 2.60 %
90 2.52 %
85 2.44 %
80 2.36 %
70 2.20 %
60 2.04 %
50 1.88 %
40 1.72 %
30 1.56 %
26 1.50 %
25 0.00 %
--------------------------

上表中最后的部分正是我这里要说明的:在nm和hell的这种"升级"只发生
在clvl≥26时,即clvl≤25的char永远也买不到exceptional或elite物品.

另一方面,只要clvl达到26,所有在第一步被选择出来的Normal Item就都
有机会变成exceptional或elite形式,几率如前公式计算.
如果人物只有26级,则在第一步所选择出的Normal Item将是qlvl≤31的,
所以他买不到archon plate或mage plate,因为它们的原形light plate
qlvl=35.同理其他qlvl≥32的Normal Item的升级形式他也买不到.
如果想买到Sacred Armor(ancient armor的elite形式,ancient armor
qlvl=40)则clvl要至少40-5=35.


[Shopping原理(4)]
Shopping原理--3rd,Normal Item类型转变

NPC的第三步检验即对物品的"类型转变"
什么叫"Normal Item的类型转变"?简单说就是full helm变成了
great helm,buckler变成了tower shield.听起来好象有点搞笑,不过
Blizzard就是这么设计的,而且只对于NPC卖的部分的Normal Items
有这样的转变,转变也仅发生在同类的Normal Items之间,仅发生在
nm和hell难度.

举个例子,发生类型转变时所有被出售的Small Shield在nm会变成
Large Shield,在hell会变成Kite Shield,这就是在大多数情况下在
nm和hell见不到NPC那里卖Small Shield的原因.相似的物品还有很多.

类型转变的几率如何?在clvl≥26时转变几率是100%,在clvl≤25
时转变几率为0%..如前所述,第一步选择时34级的char是
不会使NPC选择ancient armor的,因为ancient armor qlvl=40>34+5,
但此char在nm,hell的许多npc处都可看到ancient armor出售,就是因
为这些ancient armor全部是由其他低级armor通过类型转变而生成的.

类型转变的作用就是使相当一部分exceptional和elite物品永远
无法被shop,因为类型转变对第二步已经升级到exceptional
或elite的物品仍然有效,它会使已经升级成Luna的Small Shield也变
成Kite Shield(它变为了luna,当然是在hell).同时由于升级已经
在第二步发生,所以这个Kite Shield就没有机会再变成Dragon
Shield或Monarch了.
同理还有许多物品是这样,例如只有Act2和Act3有Giant Sword卖
但是Giant Sword在Nm会变成Bastard Sword,在Hell会变成Flamberge
由于类型转变发生在clvl≥26,即25级或更低的char在Nm/Hell还是能
看到Giant Sword,但不幸的是物品升级为Exceptional和Elite的最小
clvl也是26即Giant Sword永远变不成Tusk Sword或Balrog Blade.


所以,clvl≤25时买到的总是未发生升级和物品类型转变的Normal
Item,clvl≥26时,只有那部分被设定为不发生物品类型转变的Normal
Item才能使它们的exceptional或elite形式保留下来(如pike).
这些物品就是我们有可能shop到的elite物品,并不很多,列表见后.

Act1由于没有上述不发生类型转变的物品出售,这就是Act1怎样也
买不到任何elite物品的原因,这不是bug.

[Shopping原理(5)]
Shopping原理--4th,物品属性

到了第四步,所有shop list中的物品类型(qlvl)和ilvl
已经被确定.那么就该生成它们的颜色和属性了.
部分物品可以是白色的 ,而且可以带sockets,可以是superior.
但这些物品最大ilvl是24,即char的级别在≤19时才可以买到白色物品.
当clvl≥20时,所有见到的物品都是蓝色的,系统将根据物品的qlvl
和ilvl来决定其最大alvl,从而随机地赋予物品相应的前后缀.(具体如何
决定词缀参见x-3-9-1-10).
最后根据物品的基础属性和魔法属性计算出物品的价格,标出物品的
前后缀名称及使用等级.

到此为止这个物品就成型了,也就是我们最终在NPC的物品栏里看到的
物品.


[Shopping原理(6)]
可Shop的Elite Items

Elite物品只有能在Hell难度才能买到.但如前所说,只有部分基础物品在
Hell有机会转变为其Elite形式.现列举如下:
●Act I
所有NPC(Charsi,Gheed,Akara)都不能出售Elite物品.
●Other Acts
===================================================
Weapons Act2 Act3 Act4 Act5
---------------------------------------------------
War Spike Fara Hralti Halbu ×
Berserker Axe × Hralti Halbu Larzuk
Decapitator Fara Hralti × ×
Champion Axe × Hralti × ×
Glorious Axe × Hralti Halbu Larzuk
,Ormus

Lich Wand Drognan Ormus Jamella Malah
Unearthed Wand × Ormus Jamella Malah
Caduceus × Ormus Jamella Malah

Thunder Maul × × Halbu Larzuk

Phase Blade Drognan Ormus Jamella Larzuk
Mythical Sword × Hralti Halbu Larzuk,Malah
Champion Sword × Hralti Halbu Larzuk
Colossal Sword × Hralti Halbu Larzuk
Colossal Blade × × Halbu Larzuk

Fanged Knife Fara Hralti Halbu Malah
,Jamella
Legend Spike × Hralti Halbu Malah
,Jamella

Ghost Spear Fara Asheara Halbu ×
War Pike Fara Asheara Halbu Larzuk

Cryptic Axe × Hralti Halbu ×
Great Poleaxe × Hralti Halbu Larzuk
Giant Thresher × × Halbu Larzuk

Shillelah Drognan Ormus Jamella Malah
Archon Staff × Ormus Jamella Malah

Ward Bow × Asheara Jamella Larzuk
Hydra Bow × × Jamella Larzuk
Colossus Crossbow × Asheara Jamella Larzuk
Demon Crossbow × × Jamella Larzuk

Feral Claws × Hralti × ×
,Asheara
Runic Talons × Hralti ×* Anya
,Asheara
Scissors Suwayyah × × Halbu Larzuk,Anya
,Jamella

Winged Knife Fara Asheara Halbu Malah
Winged Axe Fara Asheara Halbu Malah
Ghost Glaive Fara Asheara Jamella Anya,Malah
Winged Harpoon × × Halbu Anya,Malah
,Jamella
=====================================================
* * *
* * *
===================================================
Armor Act2 Act3 Act4 Act5
---------------------------------------------------
Giant Conch F A
Spired Helm H,A H L
Corona H H,J L
Demonhead O J

Hellforged Plate H H,J L
Lacquered Plate O H L
Shadow Plate H L
Sacred Armor H L,A
Archon Plate H L,A

Aegis F H H,J L
Ward H H L,A

Crusader GauntletsF A H L,A
Ogre Gauntlets A H L,A
Mirrored Boots F A H L,A
Myrmidon Greaves A H L,A

Bone Visage Dro O A
Troll Nest Dro O A
Blade Barrier Dro A
★注:Dro=Drognan
=======================================================
各NPC除Jamella外都没什么问题,J应该能卖的一些物品实际却买不到.
不过也无上大雅,其他NPC也有得卖.
--


[Shopping原理(7)]
Shopping Elite Item的人物等级

Clvl=26时(不能再低,否则将买不到任何elite item)就可以
shop到绝大多数可shop的elite items.剩下的几个elite item要
求的最小级别如下:
-------------------------------------
Name min_clvl
-------------------------------------
Lacquered Plate 27
Archon Plate 30
Shadow Plate 32
Sacred Armor 35

Thunder Maul 27
Colossus Blade 28
Giant Thresher 29
Demon Crossbow 28
--------------------------------------
而且对大多elite武器而言,用最小clvl就可以shop到Cruel词头.
只有Cruel Phase Blade和Cruel Decapitator除外,需要的最小
clvl是70.

当然,为了提高elite物品的出现几率,clvl还是越高越好.

Gamble(LoDv1.09)----Listed Items

【Gamble的过程】:系统首先根据进行gamble的char的等级(clvl)来loading
相应的基础物品(Normal Item),同时确定了此物品的ilvl;然后判断此基础物
品是否升级为Exceptional或Elite物品(几率决定于Normal Item的qlvl和其
ilvl);而后按固定几率判断物品是否为Unique/Set/Rare/Magic;最后如果是
Rare/Magic物品,则按ilvl和最后物品的qlvl决定词缀.

[你会在Gamble窗口里看到的物品]

Gamble List的物品外貌和名字都是Normal Item的,虽然在你看到这些物品时
每个物品是不是Exceptional或Elite的就已经确定了(当然不能让你看出来).
能看到的物品是由去gamble的character的clvl决定的,当clvl≥qlvl时就可以
看到具此qlvl的物品.

例如Ancient Armor qlvl=40,clvl≤39的char在gamble list里是永远无法看
到的.而ring.amulet qlvl=1,所以1级的人就可以看到它们.
(◆注:有关qlvl的意义和各物品的qlvl请参阅本精华区"Item生成"部分)


◆物品的ilvl在gamble中为:
ilvl = clvl -5 + Rnd(10)
上述ilvl上限99,下限5.
其中clvl为char的level,Rnd(10)为0~9中的随机一数,即ilvl和clvl的关系为
ilvl = (clvl-5)~(clvl+4)

注:monster drop中物品ilvl=mlvl;shopping中物品ilvl=clvl+5
*引自http://www.lurkerlouge.com

[看到的Normal Item会有多少几率变成Exceptional或Elite item?]

Elite几率:
( [100*(ilvl-qlvl)/4 + 1]/100 ) %

Exceptional几率:
( [100*(ilvl-qlvl)/2 + 1]/100 ) %

◆其中ilvl即为clvl -5/+4范围内的一随机整数
而qlvl是为Normal Item的要升级为Exceptional/Elite的目标物品
的qlvl,如circlet(qlvl=24)升级为diadem(qlvl=86)的几率为
(100*(ilvl-86)/4+1)%
◆(ilvl-qlvl)<0时按0计算

*引自http://www.lurkerlounge.com
[转]from http://www.lurkerlounge.com

Gamble出物品的品质判断:
Unique: 1/100000
Set: 1/10000
Rare: 7.989%
Magic: 92%

一些Normal Item在升级到Elite Item时
由于mpq代码输入错误,使升级失败,即这些物品永远得
不到其Elite形式(仅限gamble中):
Sash
Heavy Belt
Belt
Plated Belt

Bardiche
Great Sword


以下是所有Normal Item出现在gamble list中时所要求的clvl:
参看:http://www.battle.net/diablo2exp/basics/gambling.shtml
(◆注:Normal Item能否出现只决定于clvl,与场景和游戏难度无关)
Level 1:
Amulet/Ring
Club/Short Sword/Short Bow
Cap/Quilted Armor/Buckler
Javelin/Katar

Level 2
Throwing Knife

Level 3
Hand Axe/Dagger
Leather Armor/Gloves/Boots/Sash

Level 4
Spiked Club

Level 5
Scimitar/Spear/Bardiche/Hunter's Bow
Skull Cap/Hard Leather Armor/Small Shield

Level 6
Large Axe/Light Crossbow

Level 7
Axe/Throwing Axe
Heavy Gloves/Heavy Boots/Light Belt

Level 8
Mace/Sabre/Long Bow
Studded Leather

Level 9
Dirk/Trident/Wrist Blade

Level 10
Pilum/Two-Handed Sword

Level 11
Falchion/Crystal Sword/Voulge
Helm/Ring Mail/Large Shield/Spiked Shield

Level 12
Broad Axe/Composite Bow
Chain Gloves/Chain Boots/Belt
Hatchet Hands

Level 13
Balanced Knife/Double Axe/Morning Star
Scale Mail

Level 15
Broad Sword/Scythe/Crossbow/Short Spear
Full Helm/Chain Mail/Kite Shield
Cestus

Level 16
Balanced Axe/Brandistock

Level 17
Battle Axe/Claymore/Kris

Level 18
Short Battle Bow
Breast Plate

Level 19
Military Pick/Flail
Mask/Bone Shield

Level 20
Long Sword/Spetum
Splint Mail/Light Gauntlets/Light Plated Boots/Heavy Belt

Level 21
Maul/Giant Sword/Poleaxe
Blade Talons

Level 22
Tower Shield/Bone Helm

Level 23
Great Axe/Blade/Long Battle Bow/Glaive
Great Helm

Level 24
Bastard Sword/Pike/Heavy Crossbow
Plate Mail
Scissors Katar
Circlet

Level 25
War Axe/War Hammer

Level 27
Giant Axe/War Sword/Flamberge/Short War Bow
Gauntlets/Greaves/Plated Belt

Level 28
Field Plate

Level 29
Halberd
Crown
Throwing Spear

Level 30
Gothic Shield

Level 31
Long War Bow

Level 32
Great Maul
Gothic Plate

Level 33
Great Sword/Repeating Crossbow

Level 34
War Scythe

Level 35
Light Plate

Level 37
Full Plate Mail

Level 40
Ancient Armor

Level 52
Coronet
(◆注:coronet和circlet是qlvl不同的两个头环类Normal Item,他们的Exceptional
都是Tiara,Elite都是Diadem).

Imbue
Imbue用的物品不管原始ilvl如何,在由一个char(clvl)imbue后
ilvl = clvl + 4,且1≤ilvl≤99.

而后新的rare物品根据此ilvl,magic lvl(如果有),qlvl(始终不变)
决定最大词缀级别(alvl),见x-3-9-1-10公式.
最后在≤alvl的词缀中随即选取3+Rnd(4)个词缀.

可见,对于qlvl足够高的物品,用8级的人去imbue都没有关系.

关于和和NPC买卖物品的价格
这里只简要说一下
1.各物品都有其base价格,即满durability时白色normal物品的价格.
2.带有魔法修饰属性时会影响价格,一般是在base基础上倍增,也有倍减
的(如req-xx%).属性修饰后的价格为value.属性越多,value越高.
注意:autoaffix,socket(空),indestructable,mana恢复,耐力恢复等
属性不影响base.未鉴定物品也是按base算.
3.如果物品dur不满,则上述value乘dur/max_dur.
4.如果物品为ethereal的,再×1/4
5.如果物品为low quality的,则×1/2
6.如果物品镶了gem或rune,value再增加相应gem/rune的base的1/2.
7.如果物品镶了jew,value通常再增加500.
如上7步(按次序)确定了一个物品的value.

此物品如果被NPC出售,则售价为value×M×Q,对不同NPC其M不同:
Act1 Gheed为1.0625,Charsi为0.9375,Act5各NPC为2,其余都为1.
Q为任务相关系数,涉及游戏中4个任务:
1.The Search for Cain (Act 1)
2.Radament's Lair (Act 2)
3.Lam Esen's Tome (Act 3)
4.Siege on Harrogath (Act 5)
完成1后Act1所有NPC的Q由1变为0.9
完成2后Act2所有NPC的Q由1变为0.9
完成3后Act3所有NPC的Q由1变为0.9
Act4 NPC Q≡1
完成4后Act5所有NPC的Q由1变为0.5


此物品如果卖给NPC,则卖价为value×0.5,但如果是角色专用物品,
卖价为上述售价/4.


此物品如果给NPC修理,则修理费为value×0.125×(1-dur/max_dur)

Item上charge技能的级别和释放次数
物品上有charged skill后缀时,charged skill的技能等
级(slvl)和可释放次数(N)由如下公式决定(所用公式由
Hammerman(diabloii.net)给出):

●slvl = ( ilvl-rlvl )/( -(99-rlvl)/max )

其中ilvl为物品ilvl.rlvl即require level为某charged
后缀的使用等级.如手套上带的FreezingArrow,对应后缀
alvl=94(词缀等级),rlvl=86,给amazon看的话rlvl=33,上
式中的rlvl是取前者(86).当(ilvl-rlvl)<1时按1算.
式中的max为对应后缀的参数,同时还有min.如上例手套上
的FreezingArrow,min=-20,max=-2(所有min,max参数都是
负的).由上式计算出可charge技能的等级(slvl)后可以进
而计算出最大释放次数(slvl也最小为1):

●Nm = -( min×slvl/8 + min )

以ilvl=99的手套带FreezingArrow为例,可得slvl=2,Nm=25.
即可释放25次的2级的FreezingArrow.Nm最大255.

上述计算每个括号内的计算结果都要做舍尾取整.

可见带释放技能的物品其技能等级和可释放次数是和ilvl
有关的,ilvl越高,slvl和Nm就越大.如下列举出所有charged
后缀的rlvl和min,max等信息,有兴趣可以自己算:
======================================================================
(suffixes of amazon skills):
Name alvl rlvl min max itemtype
of Magic Arrows 12 11 -30 -10 除glove外(默认)
of Fire Arrows 40 32 -20 -6 glove
of Inner Sight 18 14 -30 -6
of Inner Sight 50 42 -20 -4 glove
of Cold Arrows 15 16 -30 -8
of Cold Arrows 47 39 -20 -5 glove
of Multiple Shot 18 19 -30 -8
of Multiple Shot 63 55 -20 -4 glove
of Power Strike 12 13 -60 -6
of Power Strike 55 47 -20 -4 glove
of Exploding Arrows 30 26 -30 -6
of Exploding Arrows 69 61 -20 -4 glove
of Ice Arrows 36 28 -30 -5
of Ice Arrows 72 64 -20 -3 glove
of Charged Strike 33 25 -60 -5
of Charged Strike 68 60 -20 -3 glove
of Freezing Arrows 50 42 -30 -4
of Freezing Arrows 94 86 -20 -2 glove
of Lightning Strike 47 39 -60 -4
of Lightning Strike 90 82 -20 -2 glove

(Suffixes of sor skills):
Name alvl rlvl min max itemtype
of Fire Bolts 7 7 -30 -10 staff,orb
of Fire Bolts 14 14 -20 -6 除staff,orb外(默认)
of Charged Bolts 7 7 -30 -10 staff,orb
of Charged Bolts 14 14 -20 -6
of Ice Bolts 7 7 -30 -10 staff,orb
of Ice Bolts 14 14 -20 -6
of Telekinesis 12 12 -30 -8 staff,orb
of Telekinesis 24 24 -20 -5
of Frost Novas 12 12 -30 -8 staff,orb
of Frost Novas 24 24 -20 -5
of Ice Blasts 12 12 -30 -8 staff,orb
of Ice Blasts 24 24 -20 -5
of Fire Balls 18 18 -30 -7 staff,orb
of Fire Balls 36 36 -20 -4
of Novas 18 18 -30 -7 staff,orb
of Novas 36 36 -20 -4
of Lightning 18 18 -30 -7 staff,orb
of Lightning 36 36 -20 -4
of Enchantment 24 24 -20 -3 staff,orb
of Enchantment 48 48 -10 -1
of Chain Lightning 24 24 -30 -6 staff,orb
of Chain Lightning 48 48 -20 -3
of Teleportation 24 24 -30 -6 staff,orb
of Teleportation 48 48 -20 -3
of Glacial Spikes 24 24 -30 -6 staff,orb
of Glacial Spikes 48 48 -20 -3
of Meteors 30 30 -30 -5 staff,orb
of Meteors 60 60 -20 -2
of Blizzards 30 30 -30 -5 staff,orb
of Blizzards 60 60 -20 -2
of Frozen Orbs 36 36 -30 -3 staff,orb
of Frozen Orbs 72 72 -20 -1

(Suffixes of nec skills):
Name alvl rlvl min max itemtype
of Teeth 7 7 -60 -10 wand knif head
of Teeth 14 14 -20 -6 swor
of Dim Vision 12 12 -60 -8 wand knif head
of Dim Vision 24 24 -20 -5 ring circ
of Weaken 12 12 -60 -8 wand knif head
of Weaken 24 24 -20 -5 glov
of Poison Dagger 12 12 -60 -8 knif head
of Poison Dagger 24 24 -20 -5 glov ring circ
of Terror 18 18 -60 -7 wand knif head
of Terror 36 36 -20 -4 shld
of Confusion 24 24 -60 -6 wand knif head
of Confusion 48 48 -20 -3 ring circ
of Life Tap 24 24 -60 -6 wand knif head
of Life Tap 48 48 -20 -3 axe
of Bone Spears 24 24 -60 -6 wand knif head
of Bone Spears 48 48 -20 -3 spea
of Attraction 30 30 -60 -5 wand knif head
of Attraction 60 60 -20 -2 ring amul circ
of Lower Resistance 36 36 -60 -3 wand knif head
of Lower Resistance 72 72 -20 -1 staf
of Poison Novas 36 36 -60 -3 wand knif head
of Poison Novas 72 72 -20 -1 glov
of Bone Spirits 36 36 -60 -3 wand knif head
of Bone Spirits 72 72 -20 -1 amul circ

(Suffixes of paladin skills):
Name alvl rlvl min max itemtype
of Sacrifice 7 7 -30 -10 scep ashd
of Sacrifice 14 14 -20 -6 mele(除scep外)
of Holy Bolts 12 12 -30 -8 scep ashd
of Holy Bolts 24 24 -20 -5 amul circ
of Zeal 18 18 -30 -7 scep ashd
of Zeal 36 36 -20 -4 mele(除scep外)
of Vengeance 24 24 -30 -6 scep ashd
of Vengeance 48 48 -20 -3 swor axe
of Blessed Hammers 24 24 -30 -6 scep ashd
of Blessed Hammers 48 48 -20 -3 hamm
注:ashd指所有shield

(suffixes of barbarian skills):
Name alvl rlvl min max itemtype
of Bashing 7 7 -60 -10 phlm(bb专用帽)
of Bashing 14 14 -20 -6 mele*
of Stunning 18 18 -60 -7 phlm
of Stunning 36 36 -20 -4 mele
of Concentration 24 24 -60 -6 phlm
of Concentration 48 48 -20 -3 mele*
of Grim Ward 30 30 -60 -5 phlm
of Grim Ward 60 60 -20 -2 amul
注:"mele*"指除staff,orb,wand外的melee weapons

(Suffixes of druid skills):
Name alvl rlvl min max itemtype
of Firestorms 7 7 -30 -10 club
of Firestorms 14 14 -20 -6 staf
of Eruption 18 18 -30 -7 club
of Eruption 36 36 -20 -4 staf
of Twister 24 24 -30 -6 club
of Twister 48 48 -20 -3 amul circ
of Volcano 30 30 -30 -6 club
of Volcano 60 60 -20 -3 hamm
of Tornado 30 30 -30 -5 club
of Tornado 60 60 -20 -2 amul circ
========================================================================

alvl用来确定某个词缀是否能出现在(ilvl,qlvl)的某个物品上,
rlvl,min,max和ilvl再决定这个词缀对应的charge skill的级别
和释放次数.


所以
bow&crossbow上的ms最高为level=8,60 charges
glove上的ms最高为level=4,30 charges

staff,orb上的teleport最高为level=6,52 charges
amulet,circlet上的teleport最高为level=3,27 charges

wand上的lower resistance最高为level=3,82 charges

wand上的Life Tap最高为level=6,105 charges

关于物品消失
物品扔到地上(不论外面还是城里),如果被置之不理一定
时间则会被清掉,不同品质的物品此时限不同:
15 min: Superior/Normal/Lowquality Items
Potions,Keys,Runes,Gems
Scrolls/Books
30 min: Magic Items
60 min: Unique/Set/Rare Items

我不知道Quest Items算哪一类,maybe never vanish.

Craft Item:Rnd(5)即0~4个随机词缀,其中最小值还受ilvl
影响

Rare Jewel: 3+Rnd(2) 即3~4个随即词缀,个数无ilvl影响
Other Rare Items: 3+Rnd(4) 即3~6个随机词缀,个数无ilvl影响

有关D2X的随机系统
D2X中大量使用到了随机数, 各个Game都一个独立的随机数序列,
序列中的每个成员都为一个LARGE_INTEGER(即LONGLONG)数值,对于每个
Game的建立最初将按照如下方式建立初始随机数:
(对于Game的随机数我们称为该Game的全局随机数)

LARGE_INTEGER InitRand;
LARGE_INTEGER pc;

InitRand.HighPart = 0x29A;
QueryPerformanceCounter(&pc);
InitRand.LowPart = pc.LowPart + time(NULL) + GetTickCount();
InitRand.LowPart *= 0x2F490A95;
InitRand.LowPart -= 0x2E330917;
InitRand.LowPart &= 0x7FFFFFFF;
ptGame->HRand = InitRand;


之后,对于该Game中的任何Unit, 在其创建时都将更新该随机数,
方式如下:

DWORD __fastcall update_random(LARGE_INTEGER * ptr)
{
ptr->QuadPart = (LONGLONG)((LONGLONG)ptr->LowPart * 0x6AC690C5L)
+ ptr->HighPart;
return ptr->LowPart;
}


NewGameUnit(...)
{
....
update_random(&ptGame->hRand);
if (ptUnit->dwUnitType == UNIT_ITEM) {
ptUnit->HInitRand.LowPart = update_random(&ptGame->hRand);
ptUnit->hInitRand.HighPart = 0x29A;
ptUnit->hRand = ptUnit->hInitRand;
}
....
}
这里所提到的Unit包括了Game中的几乎任何东西, 比如Player, Chest, Monster,
NPC,Shrine, Missile, Item等等. Unit的创建与摧毁更新是相当频繁的,举个简单的例
子, Sor的一次Frozen Orb就将生成上十个Missile Unit, 一次Fire wall也与之类似.
同时, 对于新建立的任何Item Unit, 其本身也包含了一个随机数序列,这个随
机数序列将以该Item创建时当前的Game随机数进行初始化, 之后在任何对Item进行
属性修改时都将利用该Item的随机数参与运算并且以类似Game随机数序列的方式
进行更新. 比如Item的种类,包含的属性等等. 这里举一个比较简单而且结果可见的
例子:
Act5 Quest1的Socket任务, 其操作过程如下:
1. 首先对当前需要Socket的Item进行备份(这也是以前一些相关Dupe漏洞的出处之一),
然后对新生成的Item进行Socket尝试, 这里既然是新生成的Item, 其初始随机数就
只与当前Game中的当前全局随机数有关, 且HighPart必定为0x29A.

2. 对于Magic item其应该Socket一孔或者两孔的判断依据是
ptUnit->hRand.LowPart * 0x6AC690C5 + ptUnit->hRand.HighPart的运算结果.
如果该结果为偶数,则1 Socket, 否则为2 Sockets.
由1可以得知, HighPart必定为0x29A(偶数), 所以2 Socket则必须是
ptUnit->hRand.LowPart为奇数.

3. 同样的由1可以得知, 因为Socket时当前Game的全局随机数将决定该Item的初始随机
数.(两次更新后的结果), ptUnit->HRand.LowPart实际上将由该Game的当前全局随机数
决定.而Game的全局随机数只要能够获得其随机序列中的任何一个, 按照其更新法则,
则理论上是可以得出整个序列并且加以控制的. (不过我想这种内部关键数据应该是
不会发给客户端的, 而且里面的关联因素相当复杂,以前的一些MF工具基本上都
是在随意猜测)

4. 角色的RP之类的, 也都是谣传而已, 不过Game创建的初始随机数的确能够决定该
Game的整个随机数序列,不过仍然都是一个随机关系, 控制的决定性仍然在于你的MF
率等相关因素.在对象趋向无穷时,如果随机系统设计无误的话, 应该是能满足所设
定的关系的.

5. 同时其他的一些相关测试结果也表明Monster或者Chest Drop Item的种类不是在其
创建最初决定的,而是Drop时候进行判断决定. 这里的种类包括基本种类以及属性
等所有因子. :p
作者: sz_rambo    时间: 2013-2-14 13:36

有点深啊
作者: CALLME    时间: 2018-3-16 12:50

这年头每个大学文凭,都玩不了游戏了
作者: djq    时间: 2020-2-26 13:24

:lolff :lolff :lolff :lolff :lolff :lolff
作者: 13579172177    时间: 2020-4-10 12:11

好东西啊




欢迎光临 anhei3战网 (http://test.anhei2.com/) Powered by Discuz! 6.0.0