Updated 12/22/2015 08:09 AM ET. If upgrading from version 1.12 or lower, the notetags have changed!
Introduction
Implements an equipment socket system similar to the one found in Diablo II. You can create pieces of armor that can be socketed into another item that has sockets. All stat bonuses and traits are copied from the socketable item into the item it is socketed into. You can also remove these items from the sockets at a later time. You can also hide socketable items from the standard inventory view via parameters.
Features
Specify the number of sockets a piece of equipment has!
Create socketable items that relay all stat and trait changes, including skills, double attack, etc!
Restrict a socketable item to only work on everything, only on weapons or armors, or specific weapon and armor types.
Name sockets for each weapon or armor type, so a Sword can have sockets named Blade, Hilt, etc!
Restrict the type of socketable (gem) that each socket will accept, so a Blade socket will only accept Blade items!
Add additional sockets to a rare weapon or armor with a special name and item requirement!
Hide socketable (gem) items from your inventory list and give them their own category that you name!
How to Use
Add the plugin in your game and view the help information. It describes the parameters, notetags, and how to use it.
Screenshots
Below screenshots were taken with all plugins from the dependencies section enabled with all settings from the compatibility section in-place.
------------------------------
Socketing a 'blade' item into a Sword's 'blade' slot
Socketing a 'Magic' item into a specal sword that has a unique socket:
Socketed weapons on equipment selection screen:
Socketed equipment on the equipment screen:
Parameters
Socket Menu Name - Name of the item in the main menu.
Socket Equip Type - The Equip Type (From database types screen) that socketables (gems) are.
Hide Socket Items - Hide socketable items from the standard inventory view. 1 to hide, 0 to show.
Socket Category - Name of the category to list socketable items in.
Socket Category Order - The position the Socketable (gem) item category appears in the inventory.
Empty Socket Icon - The icon to draw for empty sockets.
Empty Socket Text - The text to display if a socket is empty.
Owner Display - How to display who owns a piece of equipment in the socket scene. Face draws the actor's face, Name writes their name.
Notetags - Basic Weapons & Armor
Socket Gems can be any armor type. For generic gems, set the type to 'None'.
Next, make sure the Equip Type matches what you set for the Socket Equip Type
parameter.
Once those are set, add the following to make it a socketable item:
<SocketEx>
Optionally, you can restrict it to be only for weapons or armor:
<SocketEx Weapon>
<SocketEx Armor>
You can drill down even further and restrict it to a limited number
of weapon and armor types:
<SocketEx Weapon: wtypeId, wtypeId, etc>
<SocketEx Armor: atypeId, atypeId, etc>
To give a weapon or armor sockets, use the following notetag:
<Sockets: X>
Where X is the number of sockets the item has.
For more customization options based on weapon and armor types,
see the next section.
Notetags - Weapon & Armor Types
You can configure weapon and armor types to have special sockets.
For example, a sword could have a blade, hilt, and pommel socket and
only accept gems that are the correct armor type.
For the desired effect, you'll need to set the socketable gems to
be restricted to the specific weapon or armor types that they apply
to, and you'll also want to make sure that you define all of your
sockets under the SocketInfo notetag.
To use this functionality, find an Actor (I recommend using a blank actor)
and add the following notetags. They will be applied globally.
<SocketInfo OType: X>
SocketIndex(Name,Icon): ArmorType, ArmorType, etc
</SocketInfo>
In the above example, OType is either WType for Weapon Type or
AType for Armor Type. X is the ID of the weapon or armor type
you wish to apply these options to.
SocketIndex is the number of the socket. (Name) is the text used
when the socket is empty, and (Icon) is the icon used if the socket
is empty. If nothing is set, it will use the parameter values.
ArmorType, ArmorType, etc is the armor type ID that can be placed
into these sockets.
In the below example, we are changing Weapon Type 1's socket info:
<SocketInfo WType: 1>
1(Blade,30): 15, 23
</SocketInfo>
Now, socket one will be called 'Blade' and show icon 30 when empty.
Armor types 15 and 23 can be socketed into this slot.
Here is a fleshed-out weapon and armor example:
<SocketInfo WType: 1>
1(Blade,30): 15, 23
2(Hilt, 31): 16
3(Pommel, 32): 24, 25
</SocketInfo>
<SocketInfo AType: 1>
1(Shoulders,101): 18
2(Lining, 102): 19, 20
3(Hood, 103): 21, 22
</SocketInfo>
If you fail to specify SocketInfo for a socket, then any item can be
placed into that socket, including items you want reserved for other
sockets. Using the above example, if you had a fourth socket for AType 1
and didn't place it inside of the SocketInfo tag, it would use the default
socket settings. Best practice is to include all sockets in a socket info
notetag.
You can also give specific weapons and armors additional named slots
by specifying a SocketInfo command on the weapon or armor level. See
the below example for more information.
Notetags - Advanced Weapons & Armor
What if you had a magical sword that had unique sockets? You can also
apply the <SocketInfo> tag to specific weapons and armors. Below is
an example of a sword that has 4 slots, matching our SocketInfo WType: 1
example from the prior section, but with unique settings:
<SocketInfo>
1(Holy Blade, 43): 30
4(Pommel Gem, 44): 31
</SocketInfo>
In the above example, it takes the default settings from WType: 1, which give
it three named sockets: Blade, Hilt, and Pommel. It then overwrites the Blade
socket with a 'Holy Blade' socket that takes different armor types. It also
adds a fourth socket named 'Pommel Gem' that takes another armor type.
If a piece of equipment has more sockets than the SocketInfo tag has
defined, they will be set take 'generic' gems.
Plugin Get it here - File name is CASE SENSITIVE: BOB_SocketsEx.js
Dependencies Yanfly's Item Core - Strongly recommended. Without it, your items will not be unique/individual. This means that socketing a gem into a sword will give the benefits of that gem to all swords in the game.
Yanfly's Equip Core - Strongly recommended. Helps restrict/hide equipment slots for Gems from the equip scene.
Any Main Menu Manager - Strongly recommended. Allows you to reorder menu commands without me overwriting the core menu feature.
Yanfly's Engine Plugins - Strongly recommended.
Compatibility
General Yanfly Plugins- Add this plugin below all others.
YEP_MainMenuManager - Add the below settings to your desired Menu item, leave other settings blank:
Name - Bobstah.SocketsEx.commandName()
Symbol - Bobstah.SocketsEx.commandSymbol()
Show - this.needsCommand('sockets')
Enabled - true
Main Bind - this.commandSocketsEx.bind(this)
FAQ
1. How do have socketable items teach skills over time?
Added the ability to reorder the Socket Category in the inventory screen without overwriting the method.
Added new SocketInfo notetag.
You can now name sockets for each weapon and armor type.
You can overwrite these settings on specific weapons and armors, including adding extra slots.
Added support for Yanfly's Auto Passive States.
1.12 (11/19/2015) - Fixed a bug where equipment items weren't displaying properly in the equipment menu with this plugin enabled.
1.11 (11/19/2015) - Fixed a crash bug that occurred when opening the equipment menu. Fixed a bug that allowed you to socket a null item under certain conditions.
1.1 (11/19/2015) - Fixed numerous bugs. Added new socketable item view. Added new functions other plugins can alias for modding.
1.0 (11/11/2015) - Initial release.
Legal
Free to use in commercial and non-commercial projects with credit. A free copy of the finished game would be nice, but is not required.
Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.