-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
added more item tests, fixed durability display, added some file guides
- Loading branch information
1 parent
e704d4d
commit 9844919
Showing
25 changed files
with
2,501 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
------------------------------------------------------------------------------- | ||
originally extracted from here: | ||
https://d2mods.info/forum/kb/viewarticle?a=285 | ||
------------------------------------------------------------------------------- | ||
|
||
|
||
The Phrozen Keep's | ||
Hireling.txt File Guide | ||
|
||
Written by Draco & Ric Faith | ||
Expanded and Restyled by Ogodei | ||
|
||
for Diablo II Expansion Set v1.10 - 1.114 | ||
|
||
Updated October 24, 2018 | ||
|
||
This document was created based on the excellent guides on the Phrozen Keep | ||
forums regarding the columns in the Diablo II Data files. | ||
|
||
Introduction | ||
|
||
This file handles everything related to hirelings. In here you set what | ||
hirelings that is avaible to hire, what items they are able to use, their stats | ||
and what skills they are using. | ||
|
||
Hireling.txt works in par with | ||
- ItemTypes.txt | ||
- Skills.txt | ||
|
||
Column Descriptions | ||
|
||
Hireling: Description of hireling type, this column has no function, it only | ||
serves as a comment field to make it easier. | ||
|
||
SubType: Description of hireling sub-type, this column has no function, it only | ||
serves as a comment field to make it easier. | ||
|
||
Version: 0 is for Classic, 100 is for Expansion. | ||
|
||
Id: ID number to segregate the hirelings and threshold lvls. | ||
|
||
Class: reference to the column 'hcIdx' in MonStats.txt. This indicates the base | ||
monster of the mercenary. | ||
|
||
Act: Act where merc can be hired. | ||
|
||
Difficulty: it ranges from 1 to 3, respectively for Normal/Nightmare/Hell. | ||
|
||
Level: monster level of the hireling. It also states the required level for | ||
upgrading skills and stats. | ||
|
||
Seller: reference to the column 'hcIdx' in MonStats.txt for the NPC who sells | ||
this mercenary. | ||
|
||
NameFirst - NameLast: Range from which the game looks to get random names for | ||
the hirelings. These indexes are taken from the .TBL files, which you can edit | ||
via specific softwares and are found in Data/local/(your language). | ||
|
||
Gold: The cost of the hireling, compounded by mlvl | ||
|
||
Exp/Lvl: This indicates a factor used in the calcuationof the experience | ||
required to advance to the next mLvl. The threshold for the next level (L+1) | ||
from the current level (L) is (exp/lvl)*L*L*(L+1). | ||
|
||
HP - HP/Lvl - Defence - Def/Lvl - Str - Str/Lvl - Dex - Dex/Lvl - AR - AR/lvl - | ||
Dmg-Min - Dmg-Max - Dmg-Lvl - Resist - Resist/Lvl: It tells how much of these | ||
stats the mercenary has at his\her base lvl and how much of them are gained as | ||
your mercenary advances through mLvls. NOTE: Keep in mind that Dmg-Lvl and | ||
Resist/Lvl must be set in 8ths. | ||
|
||
Share: Used to co-relate between threshold lvls between Normal, NM, Hell | ||
Hirelings. | ||
|
||
WType1 - WType2: Can't be changed, is the itemtype of the items that can be | ||
carried in weapon slots. | ||
|
||
HireDesc: A reference for .tbl files. | ||
|
||
DefaultChance: It is the chance for which your mercenary will use his\her | ||
weapon (a.k.a regular attack) rather than a skill. | ||
|
||
Skill X: Reference to the 'Skill' column in Skills.txt | ||
|
||
Mode X: These modes must contain preset values and defines how your mercenary | ||
will use the skills. | ||
|
||
1 -> Auras | ||
4 -> Attack | ||
5 -> Attack (use for Barbs, works the same way as Mode=4) | ||
7 -> Cast | ||
14-> Seq (use for Jab) | ||
|
||
Chance X - ChancePerLevel X: It is the chance for your mercenary to use the | ||
skill at base mLvl and as he\she progresses through mLvls. NOTE: The chance is | ||
calculated by probability. | ||
|
||
Example: | ||
Normal Fire Rogue: | ||
Default Chance = 75, Inner Sight = 10, Fire Arrow = 25. | ||
By probability, the game does: Chance/TotChance *100% | ||
result: | ||
Default (Attack) = 75/110 *100% = 68.18% | ||
Inner Sight = 10/110 *100% = 9.09% | ||
Fire Arrow = 25/110 *100% = 22.73% | ||
|
||
Level X - LvlPerLvl X: They handle the sLvl of the Skill at Base lvl and the | ||
sLvl increase at level up. | ||
|
||
Head, Torso, Weapon, Shield: References to the anims for monster parts, which | ||
since at least LoD are hardcoded to LIT. |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,235 @@ | ||
------------------------------------------------------------------------------- | ||
originally extracted from here: | ||
https://d2mods.info/forum/kb/viewarticle?a=301 | ||
------------------------------------------------------------------------------- | ||
|
||
|
||
The Phrozen Keep's | ||
Levels.txt File Guide | ||
|
||
Written by Nefarius & Kingpin | ||
Expanded and Restyled by Ogodei | ||
|
||
for Diablo II Expansion Set v1.10 - 1.114 | ||
|
||
Updated October 24, 2018 | ||
|
||
This document was created based on the excellent guides on the Phrozen Keep | ||
forums regarding the columns in the Diablo II Data files. | ||
|
||
Introduction | ||
|
||
This is the file that controls how the game handles links levels, what monsters | ||
and object that are spawned that are placed on the level. | ||
|
||
This file is used in pair with: | ||
- LvlMaze.txt | ||
- LvlPrest | ||
- LvlSub.txt | ||
- LvlTypes.txt | ||
- MonStats.txt | ||
- Automap.txt | ||
- LvlWarp.txt | ||
- Objgroup.txt | ||
|
||
Column Descriptions | ||
|
||
Name: This column has no function, it only serves as a comment field to make it | ||
easier to identify the Level name | ||
|
||
Id: Level ID (used in columns like VIS0-7) | ||
|
||
Pal: Act Palette. Reference only | ||
|
||
Act: The Act the Level is located in (internal enumeration ranges from 0 to 4). | ||
|
||
QuestFlag - QuestFlagEx: Used the first one in Classic games and the latter in | ||
Expansion games , they set a questflag. If this flag is set, a character must | ||
have completed the quest associated with the flag to take a town portal to the | ||
area in question. A character can always use a portal to get back to town. | ||
|
||
Layer: Each layer is an unique ID. This number is used to store each automap on | ||
a character. This is used by the game to remember what level the automap are | ||
for. NOTE: you need to use the extended levels plugin to be able to add | ||
additional layers. | ||
|
||
SizeX (X) - SizeY (X): sizeX - SizeY in each difficuly. If this is a preset | ||
area this sets the X size for the area. Othervise use the same value here that | ||
are used in lvlprest.txt to set the size for the .ds1 file. | ||
|
||
OffsetX - OffsetY: They set the X\Y position in the world space | ||
|
||
Depend: This set what level id's are the Depended level. Example: Monastery | ||
uses this field to place its entrance always at same location. | ||
|
||
Teleport: Controls if teleport is allowed in that level. | ||
|
||
0 = Teleport not allowed | ||
1 = Teleport allowed | ||
2 = Teleport allowed, but not able to use teleport throu walls/objects | ||
(maybe for objects this is controlled by IsDoor column in objects.txt) | ||
|
||
Rain: It sets whether rain or snow (in act 5 only) can fall . Set it to 1 in | ||
order to enable it, 0 to disable it. | ||
|
||
Mud: Unused setting (In pre beta D2 Blizzard planned Rain to generate Mud which | ||
would have slowed your character's speed down, but this never made it into the | ||
final game). the field is read by the code but the return value is never | ||
utilized. | ||
|
||
NoPer: Setting for 3D Enhanced D2 that disables Perspective Mode for a specific | ||
level. A value of 1 enables the users to choose between normal and Perspective | ||
view, while 0 disables that choice. | ||
|
||
LOSDraw: Allows you to look through objects and walls even if they are not in a | ||
wilderness level. 1 enables it, 0 disables it. | ||
|
||
FloorFilter: Unknown. Probably has to do with Tiles and their Placement . 1 | ||
enables it, 0 disables it. | ||
|
||
BlankScreen: Unknown. Probably has to do with tiles and their placement. 1 | ||
enables it, 0 disables it. | ||
|
||
DrawEdges: for levels bordered with mountains or walls, like the act 1 | ||
wildernesses. 1 enables it, 0 disables it. | ||
|
||
IsInside: Setting it to 1 makes the level to be treated as an indoor area, | ||
while 0 makes this level an outdoor. Indoor areas are not affected by day-night | ||
cycles, because they always use the light values specified in Intensity, Red, | ||
Green, Blue. this field also controls whenever sounds will echo if you're | ||
running the game with a sound card capable of it and have enviroment sound | ||
effects set to true. | ||
|
||
DrlgType: Setting for Level Generation: You have 3 possibilities here: | ||
|
||
1 = Random Maze | ||
2 = Preset Area | ||
3 = Wilderness level | ||
|
||
LevelType: The type of the Level (Id from lvltypes.txt) | ||
|
||
Sub Columns IDs from LvlSub.txt, which is used to randomize outdoor areas, such | ||
as spawning ponds in the blood moor and more stones in the Stoney Field. This | ||
is all changeable, the other subcolumns are explained in this post. | ||
|
||
SubType: Setting Regarding the level type. | ||
Example: 6=wilderness, 9=desert etc, -1=no subtype. | ||
|
||
SubTheme: Tells which subtheme a wilderness area should use. Themes ranges from | ||
-1 (no subtheme) to 4. | ||
|
||
SubWaypoint: Setting Regarding Waypoints | ||
NOTE: it does NOT control waypoint placement. | ||
|
||
SubShrine: Setting Regarding Shrines. | ||
NOTE: it does NOT control which Shrine will spawn. | ||
|
||
Vis0 - Vis7: These fields allow linking level serverside, allowing you to | ||
travel through areas. The Vis must be filled in with the LevelID your level is | ||
linked with, but the actuall number of Vis ( 0 - 7 ) is determined by your | ||
actual map (the .ds1 fle). | ||
Example: Normally Cave levels are only using vis 0-3 and wilderness areas 4-7. | ||
|
||
Warp0-7: This controls the visual graphics then you move the mouse pointer over | ||
an entrance. To show the graphics you use an ID from lvlwarp.txt and the | ||
behavior on the graphics is controlled by lvlwarp.txt. Your Warps must match | ||
your Vis. | ||
Example: If your level uses Vis 3-5-7, then you must also use Warp 3-5-7. | ||
|
||
Intensity - Red - Green - Blue: These settings handle the light intensity as | ||
well as its RGB components. | ||
|
||
Portal: This field is required for some levels, entering those levels when | ||
portal field isn't set will often crash the game. This also applies to | ||
duplicates of those levels created with both of the extended level plugins. | ||
|
||
Position: This controls if you can re-position a portal in a level or not. If | ||
it's set to 1 you will be able to reposition the portal by using either map | ||
entry#76 Tp Location #79. If both tiles are in the level it will use Tp | ||
Location #79. If set to 0 the map won't allow repositioning. | ||
|
||
SaveMonster: Setting this field to 1 will make the monsters status saved in the | ||
map. Setting it to 0 will allow some useful things like NPC refreshing their | ||
stores. WARNING: Do not set this to 1 for non-town areas, or the monsters | ||
you'll flee from will simply vanish and never reappear. They won't even be | ||
replaced by new ones | ||
|
||
Quest: What quest is this level related to. This is the quest id (as example | ||
the first quest Den of Evil are set to 1, since its the first quest). | ||
|
||
WarpDist: This sets the minimum distance from a VisX or WarpX location that a | ||
monster, object or tile can be spawned at. (also applies to waypoints and some | ||
preset portals). | ||
|
||
MonLvl1 - 3 MonLvl1Ex - MonLvl3-Ex: Area Level on Normal-Nightmare-Hell in | ||
Classic and Expansion . It controls the item level of items that drop from | ||
chests etc. | ||
|
||
MonDen (X): This is a chance in 100000ths that a monster pack will spawn on a | ||
tile. The maximum chance the game allows is 10% (aka 10000) in v1.10+, | ||
|
||
MonUMin - MonUMax: Minimum - Maximum Unique and Champion Monsters Spawned in | ||
this Level. Whenever any spawn at all however is bound to MonDen. | ||
|
||
MonWndr: [To be updated] | ||
|
||
MonSpcWalk: This setting is hardcoded to certain level Ids, like the River Of | ||
Flame, enabling it in other places can glitch up the game, so leave it alone. | ||
It is not known what exactly it does however. | ||
|
||
NumMon: Number of different Monster Types that will be present in this area, | ||
the maximum is 13. You can have up to 13 different monster types at a time in | ||
Nightmare and Hell difficulties, selected randomly from nmon1-nmon25. In Normal | ||
difficulty you can have up to 13 normal monster types selected randomly from | ||
mon1-mon25, and the same number of champion and unique types selected randomly | ||
from umon1-umon25. | ||
|
||
mon1-mon25, nmon1-nmon25: mon1-mon25 work in Normal difficulty, while | ||
nmon1-nmon25 in Nightmare and Hell. They tell the game which monster ID taken | ||
from MonStats.txt. NOTE: you need to manually add from mon11 to mon25 and from | ||
nmon11 to nmon25 ! | ||
|
||
rangedspawn: Give preference to monsters set to ranged=1 in MonStats.txt on | ||
Nightmare and Hell difficulties when picking something to spawn. | ||
|
||
umon1-umon25: Works only in normal and it tells which ID will be used for | ||
Champion and Random Uniques. The ID is taken from MonStats.txtOnly the first | ||
ten columns appear in the unmodded file. In 1.10 final, beta 1.10s and v1.11+ | ||
you can add the missing umon11-umon25 columns. NOTE: you can allow umon1-25 to | ||
also work in Nightmare and Hell by following this simple ASM edit | ||
|
||
cmon11-4: Critter Species 1-4. Uses the Id from monstats2.txt and only monsters | ||
with critter column set to 1 can spawn here. critter column is also found in | ||
monstats2.txt. Critters are in reality only present clientside. | ||
|
||
cpct1-cpct4: Controls the chance for a critter to spawn. | ||
|
||
camt1-camt4: Unknown. These columns are bugged, as the game overrides the | ||
contents of columns 3-4 with the value from column 1 when it compiles the bin | ||
files. | ||
|
||
Themes: Unknown. It states which theme is used by the area and this field is | ||
accessed by the code but it is not exactly known what it does. | ||
|
||
SoundEnv: Referes to a entry in SoundEnviron.txt (for the Levels Music) | ||
|
||
Waypoint: 255 means no Waipoint for this level, while others state the | ||
Waypoint' ID for the level. NOTE: you can switch waypoint destinations between | ||
areas this way, not between acts however so don't even bother to try. | ||
|
||
LevelName: String Code for the Display name of the Level | ||
|
||
LevelWarp: String Code for the Display name of a entrance to this Level | ||
|
||
EntryFile: Which *.DC6 Title Image is loaded when you enter this area. this | ||
file MUST exist, otherwise you will crash with an exception when you enter the | ||
level (for all levels below the expansion row, the files must be present in the | ||
expension folders) | ||
|
||
ObjGrp0-7: this field uses the ID of the ObjectGroup you want to Spawn in this | ||
Area, taken from Objgroup.txt. | ||
|
||
ObjPrb0-7: These fields indicates the chance for each object group to spawn (if | ||
you use ObjGrp0 then set ObjPrb0 to a value below 100) | ||
|
||
Beta: Reference Only (can be used for comments) |
Oops, something went wrong.