Tutorial Diablo 2 Item Set: Changing Tooltips and Effects

mr-death

Acolyte
Reaction score
51
This will remind you about [System] Diablo II Item Set Triggers

Fortunately, I found the way to improve it, with tooltips modification and effects. Please read the link above before you continue reading this Tutorial.

This Tutorial's Difficulty is Average with the triggers in GUI.

Diablo II Item Set Tutorial V 1.3
by mr-death

I won't give you anymore word, as fastest I can. Cause it's taking a part of my brain. :nuts:

Steps:

1. Check and test this map
Cause Telling you more means nothing, so you must see it yourself: This is yet a well-efficient example of Set Items.
View attachment Item Set for Diablo II.w3x (Updated on version 1.3)
Please Download this map before you continue further, it's needed to understand the tutorial.

2. Creating Custom Items, and Abilities for your Items
After Seeing that map, now how to create it. Firstly think for your item set, how much items will complete the set? For now, we'll see only the number of items which is need to be created.

2 items for 1 set: 2(no set) + 2(complete set) = 4 items
3 items for 1 set: 3(no set) + 6(half complete) + 3(complete set) = 12 items
4 items for 1 set: 4(no set) + 12(2/4 complete) + 12(3/4 complete) + 4(complete set) = 32 items

So think which is the best deal for you. (All items are needed since we're manipulating tooltips)

For this example map I use 3 items for 1 set.

Barbarian's Set:
Barb's Coral Axe, for next we'll know this as "#1 Item"
Barb's Mithril Axe, for next we'll know this as "#2 Item"
Barb's Spirit, for next we'll know this as "#3 Item"

In total you'll have
4 Coral Axes : 1 no set(default), 1 setted with mithril, 1 setted with spirit, 1 complete set
4 Mithril Axes : 1 no set, 1 setted with corall, 1 setted with spirit, 1 complete set
4 Spirits : 1 no set, 1 setted with mithril, 1 setted with coral, 1 complete set

Second is to give the names after it (As shown in the object editor of map above) as

Coral Axe 1 (default)
Coral Axe 12 (for collection with mithril)
Coral Axe 13 (for collection with spirit)
Coral Axe 123 (for complete set)
Mithril Axe 2 (default)
Mithril Axe 12 (for collection with coral)
Mithril Axe 23 (for collection with spirit)
Mithril Axe 123 (for complete set)
Spirit 3 (default)
Spirit 13 (for collection with coral)
Spirit 23 (for collection with mithril)
Spirit 123 (for complete set)

and edit them as shown in brackets:
Edit what you want the tooltip for the item be when it is collected with another.
______________________________

3. Triggers (Updated on V1.3)
Now is how to connect one item with another, firstly set them all into variables,

Actually, we only have 3 items, but this blueish things are for the loop's flexibility, as shown on ItemSet[4,8,12,16,17]
Code:
Setting
    Events
        Time - Elapsed game time is 0.00 seconds
    Conditions
    Actions
        Set ItemSet[1] = |cff00ff00Barb's Coral Axe|r 1
        Set ItemSet[2] = |cff00ff00Barb's Mithril Axe|r 2
        Set ItemSet[3] = |cff00ff00Barb's Spirit|r 3
        [COLOR="Blue"]Set ItemSet[4] = |cff00ff00Barb's Coral Axe|r 1 [/COLOR]
        -------- - --------
        Set ItemSet[5] = |cff00ff00Barb's Coral Axe|r 12
        Set ItemSet[6] = |cff00ff00Barb's Mithril Axe|r 23
        Set ItemSet[7] = |cff00ff00Barb's Spirit|r 13
        [COLOR="blue"]Set ItemSet[8] = |cff00ff00Barb's Coral Axe|r 12[/COLOR]
        -------- - --------
        Set ItemSet[9] = |cff00ff00Barb's Mithril Axe|r 12
        Set ItemSet[10] = |cff00ff00Barb's Spirit|r 23
        Set ItemSet[11] = |cff00ff00Barb's Coral Axe|r 13
        [COLOR="blue"]Set ItemSet[12] = |cff00ff00Barb's Mithril Axe|r 12[/COLOR]
        -------- - --------
        Set ItemSet[13] = |cff00ff00Barb's Coral Axe|r 123
        Set ItemSet[14] = |cff00ff00Barb's Mithril Axe|r 123
        Set ItemSet[15] = |cff00ff00Barb's Spirit|r 123
        [COLOR="blue"]Set ItemSet[16] = |cff00ff00Barb's Coral Axe|r 123
        Set ItemSet[17] = |cff00ff00Barb's Mithril Axe|r 123[/COLOR]

Good News: Now, In v1.3 Triggers, you can change Coral Axe to your first item, Mithril Axe to your second item, and Spirit to your third item when you want to make 3-items set. Remember to set the variables above to your items. There is the step of Importing on the 4th step of the Tutorial

For Next trigger, see the comments tag (-------- --------)

Code:
For each (Integer A) from 1 to 3, do (Actions)
    Loop - Actions
        [B]-------- For set 1-2, 2-3, 1-3 --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[(Integer A)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 1)]) Equal to True
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[(Integer A)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 1)])
                Hero - Create ItemSet[((Integer A) + 4)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 8)] and give it to (Picked unit)
            Else - Actions
                Do nothing
        [B]-------- For set 1-2-3 --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[(Integer A)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 5)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 9)]) Equal to True
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[(Integer A)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 5)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 9)])
                Hero - Create ItemSet[((Integer A) + 12)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 13)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 14)] and give it to (Picked unit)
            Else - Actions
                Do nothing
        [B]-------- For set broker 1-2-3 -> 1-2/1-3/2-3 --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to True
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 13)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 14)])
                Hero - Create ItemSet[((Integer A) + 5)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 9)] and give it to (Picked unit)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to True
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 12)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 14)])
                Hero - Create ItemSet[((Integer A) + 6)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 10)] and give it to (Picked unit)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to False
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 12)])
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 13)])
                Hero - Create ItemSet[((Integer A) + 4)] and give it to (Picked unit)
                Hero - Create ItemSet[((Integer A) + 8)] and give it to (Picked unit)
            Else - Actions
        [B]-------- For set broker 1-2-3 -> 1/2/3 --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to True
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 14)])
                Hero - Create ItemSet[((Integer A) + 2)] and give it to (Picked unit)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to False
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 12)])
                Hero - Create ItemSet[(Integer A)] and give it to (Picked unit)
            Else - Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to False
            Then - Actions
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 13)])
                Hero - Create ItemSet[((Integer A) + 1)] and give it to (Picked unit)
            Else - Actions
        [B]-------- For set broker 1-2, 2-3, 1-3 -> 1/2/3 --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 4)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 8)]) Equal to False
            Then - Actions
                Unit - Remove Item Attack Speed Bonus (Gloves of Haste) from (Picked unit)
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 4)])
                Hero - Create ItemSet[(Integer A)] and give it to (Picked unit)
            Else - Actions
                Do nothing
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 4)]) Equal to False
                ((Picked unit) has an item of type ItemSet[((Integer A) + 8)]) Equal to True
            Then - Actions
                Unit - Remove Item Attack Speed Bonus (Gloves of Haste) from (Picked unit)
                Item - Remove (Item carried by (Picked unit) of type ItemSet[((Integer A) + 8)])
                Hero - Create ItemSet[((Integer A) + 1)] and give it to (Picked unit)
            Else - Actions
                Do nothing
        [B]-------- Effects 2 items --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 4)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 8)]) Equal to True
            Then - Actions
                Unit - Add Item Attack Speed Bonus (Gloves of Haste) to (Picked unit)
            Else - Actions
                [COLOR="Blue"]The Else Actions (Ability Removement) Is replaced on the set broker.[/COLOR]
        [B]-------- Effects 3 items --------[/B]
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                ((Picked unit) has an item of type ItemSet[((Integer A) + 12)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 13)]) Equal to True
                ((Picked unit) has an item of type ItemSet[((Integer A) + 14)]) Equal to True
            Then - Actions
                Animation - Change (Picked unit)'s vertex coloring to (100.00%, 75.00%, 75.00%) with 0.00% transparency
                Animation - Change (Picked unit)'s size to (110.00%, 110.00%, 110.00%) of its original size
            Else - Actions
                Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
                Animation - Change (Picked unit)'s size to (100.00%, 100.00%, 100.00%) of its original size

Important: For Abilities Improvements on Set Bonus (Aspd, Evasion, etc.), set the Ability Removal on the Set Broker.
_____________________________

4. Importing?
Given a variable name "ItemSet", change the name into another name, f.e. "Barb", and make sure there's no other variable with the same name on your target map.

Open File, Preferences, tab General: Check the box: "Automatically create unknown variables while pasting trigger data" so the var is copiable.

Then, copy all the items to the new map.
Then, the triggers (Setting and Item Set in v1 3)

Open your target map, then reset all the "Barb" variables again with the copied Items.

Your importing has done!
_____________________________

5. Miscellaneous

Do all you want with the item on the map you're dealing with. ALL, and is really ALL. Cause there's no turnin back. :p

After all the very-very little of business with the items are done, do the next step.
_____________________________

Last, and very-very lastly (this step cannot be undone, so make sure there's nothing left back there), Recheck all the items' tooltips
I told you to put 1, 12, 13, and such of those after the names (as on my map),

the next step that is not in my map, now that you have done all triggers, you can remove the numbers, so it will look flawless.
______________________________

Edit 29 Sep 07 : Updated to 1.1 (More Trigger Explanations)
Edit 30 Sep 07 : Updated to 1.2 (Better Example Map)
Edit 03 Oct 07 : Updated to 1.3 (More Efficient and Modify-able Triggers on map: View attachment Item Set for Diablo II.w3x)
 

~GaLs~

† Ғσſ ŧħə ѕαĸε Φƒ ~Ğ䣚~ †
Reaction score
180
Actually, what do this tutorial does?
 

mr-death

Acolyte
Reaction score
51
As the system does. Now it's just with tooltips modification.

The tutorial simply explains the triggers :banghead:.

I will upgrade it, cause now seems none's going to understand.

Edit: Upgraded it, hope it makes sense now.
Note that if you play Diablo II clearly, you must have known this type of items.
 

mr-death

Acolyte
Reaction score
51
bump. seems none really understand what this tutorial stands for.

It's just how to make reaction between items, as recipe, but with extra effect and without combining it into 1 item. So it's simply become 2 items + spc effect when you got 2 items.
 

Blackveiled

Formerly, Ban-Lord
Reaction score
157
We do understand what it stands for, your basically trying to give us a Recipe tutorial, which has already been done.
 

FireEffect

Gasp!
Reaction score
98
No this is like when you get 2 items they form into one, they have an effect on you but a greater effect than if you had them both seprately. Like a axe gives you 10 damage and a ring adds 10 damage. If you are carrying them both at the same time you get 25 damage. Things like that. So its a little different from a recipe system.
 

darkRae

Ueki Fan (Ueki is watching you)
Reaction score
173
FireEffect is right, and no one has ever thought of this before, so mr-death did a good job.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Monovertex Monovertex:
    How are you all? :D
    +1
  • Ghan Ghan:
    Howdy
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top