Mahado
Epic Member
Hello! This is something I'm using on my project which I am working on and I thought I would make it my first share here.
It is customized glyph system, I'll show you a screenshots to see what I mean:
To do that, you must edit these files:
http://modcraft.superparanoid.de/viewtopic.php?f=59&t=795 <-- You need this in optional part
Spell.dbc
GlyphProperties.dbc
Optional:
GlobalStrings.lua
Player.cpp
SpellEffects.cpp
ItemClass.dbc
We'll make this easier by replacing current Glyph instead of creating new ones which is possible as well. Lets take "Glyph of Growl" for example, entryID: 40899 and its spellid: 54856. This information can be found from item_template in database. You can rename it to something else, like Glyph of Elephant. NOTE: Don't use word "glyph" if you don't plan on using it, else you will have to rename it later on. Ex. Enchantment of Elephant
Open up Spell.dbc with your preferred dbc editor, like MyDbcEditor 1.2.2 for example. Once it is open, you make search for the spelllid of growl, which was: 54856. Then we will column 137, put your item name there and then description at column 171. Do not close your Spell.dbc yet.
Keep Spell.dbc open still and go to column 111 <-- This points to GlyphProperties.dbc. Open up your GlyphProperties.dbc and go to the ID of which the column 111 in spell dbc pointed to. Now, find any passive/talent or any spellid that you would prefer to use and place it in column 2. Use 14477 for example, which is +30 Stamina. Save GlyphProperties.dbc and close it.
In Spell.dbc you can now go to modify the "+30 Stamina" spell or whatever you chose, search for the id of the spell and go to column 81 <-- this is the value for many passive spells, like the stamina. If I change it to 49, it would give me 50 stamina in-game. (NOTE: Changing values for every spell doesn't always go the sameway)Change it or keep it, then go to column 137 and place your item name there again and description at column 171. Save spell.dbc and close it.
Your glyph is ready for testing if you want. Place your .dbc files in your dbc folder and also pack them into patch-x.mpq with program like Ladik's MPQ editor for example. Add the patch-x.mpq to data folder in WoW directory. Refer to other tutorials how to do this step if you don't know how to pack mpqs. I may add it later.
Optional Part:
This part is for those who wish to remove glyph level requirements and rename glyph from the game "totally".
If we are going to do custom system of our own, we may want to classify it with something else than "Glyph". Of course, if you do this I recommend to rename your items in item_template and spell.dbc.
Open your ItemClass.dbc, go to ID 16 which is glyph and rename column 4 to your liking.
Open up Player.cpp in core and search for line: void Player::InitGlyphsForLevel() , below that you will see these lines:
Change those values to your liking. In my version they are all at 5 Level, because I want them all to be available at that level.
Next, open up your SpellEffects.cpp and search for line: void Spell::EffectApplyGlyph(SpellEffIndex effIndex) , below that you will see these lines:
Change thos values to your liking as well.
Then you just recompile your source.
Open up Ladik's MPQ Editor, "Open Mpq" in filemenu and then go to enUS folder in your directory and open locale-enus.mpq. Go to -> interface -> FrameXML and extract GlobalString.lua.
Open up GlobalString.lua with notepad and search for "glyph", replace every string that contains word glyph with the classification you chose in ItemClass.dbc for example.
Save it.
Make sure you have placed your dbc files in your server's dbc folder and that your patch-x.mpq looks like this:
Then place it in your WoW\Data\
Next you just,
1. Start up your server
2. Delete cache folder (If you renamed anything in database)
3. Go in-game and enjoy.
Hopefully this tutorial was useful for some of you. Glyphs can be used in many creative ways, you just gotta think about it. Ex. if your character was android, you could imagine planting "Data Chips" into his "Database" which gives him new powers, haha.
Ps. I don't know if this is in wrong section, but this is mainly for Trinity Core.
- Mahado
It is customized glyph system, I'll show you a screenshots to see what I mean:
To do that, you must edit these files:
http://modcraft.superparanoid.de/viewtopic.php?f=59&t=795 <-- You need this in optional part
Spell.dbc
// This is for the bonus which appears in the glyph
GlyphProperties.dbc
// This links the bonus to the Glyph Spell/Item
Optional:
GlobalStrings.lua
// This modifies messages and textlines that you see in the game regarding the Glyphs
Player.cpp
// Modifies level requirements for Glyphs (in this tutorial)
SpellEffects.cpp
// Modifies level requirements for Glyphs (in this tutorial)
ItemClass.dbc
// This changes "Glyph" classification into something else
Step - 1 Selecting Glyph to Modify/Make
We'll make this easier by replacing current Glyph instead of creating new ones which is possible as well. Lets take "Glyph of Growl" for example, entryID: 40899 and its spellid: 54856. This information can be found from item_template in database. You can rename it to something else, like Glyph of Elephant. NOTE: Don't use word "glyph" if you don't plan on using it, else you will have to rename it later on. Ex. Enchantment of Elephant
Step - 2 Renaming the Glyph Spell and Description
Open up Spell.dbc with your preferred dbc editor, like MyDbcEditor 1.2.2 for example. Once it is open, you make search for the spelllid of growl, which was: 54856. Then we will column 137, put your item name there and then description at column 171. Do not close your Spell.dbc yet.
Step - 3 Changing spell for the Glyph
Keep Spell.dbc open still and go to column 111 <-- This points to GlyphProperties.dbc. Open up your GlyphProperties.dbc and go to the ID of which the column 111 in spell dbc pointed to. Now, find any passive/talent or any spellid that you would prefer to use and place it in column 2. Use 14477 for example, which is +30 Stamina. Save GlyphProperties.dbc and close it.
Step - 4 Modifying the +30 Stamina Spell or whatever you chose
In Spell.dbc you can now go to modify the "+30 Stamina" spell or whatever you chose, search for the id of the spell and go to column 81 <-- this is the value for many passive spells, like the stamina. If I change it to 49, it would give me 50 stamina in-game. (NOTE: Changing values for every spell doesn't always go the sameway)Change it or keep it, then go to column 137 and place your item name there again and description at column 171. Save spell.dbc and close it.
Your glyph is ready for testing if you want. Place your .dbc files in your dbc folder and also pack them into patch-x.mpq with program like Ladik's MPQ editor for example. Add the patch-x.mpq to data folder in WoW directory. Refer to other tutorials how to do this step if you don't know how to pack mpqs. I may add it later.
Optional Part:
This part is for those who wish to remove glyph level requirements and rename glyph from the game "totally".
ItemClass.dbc
If we are going to do custom system of our own, we may want to classify it with something else than "Glyph". Of course, if you do this I recommend to rename your items in item_template and spell.dbc.
Open your ItemClass.dbc, go to ID 16 which is glyph and rename column 4 to your liking.
Removing Glyph level requirements
Open up Player.cpp in core and search for line: void Player::InitGlyphsForLevel() , below that you will see these lines:
Code:
// 0x3F = 0x01 | 0x02 | 0x04 | 0x08 | 0x10 | 0x20 for 80 level
if (level >= 15)
value |= (0x01 | 0x02);
if (level >= 30)
value |= 0x08;
if (level >= 50)
value |= 0x04;
if (level >= 70)
value |= 0x10;
if (level >= 80)
value |= 0x20;
Change those values to your liking. In my version they are all at 5 Level, because I want them all to be available at that level.
Next, open up your SpellEffects.cpp and search for line: void Spell::EffectApplyGlyph(SpellEffIndex effIndex) , below that you will see these lines:
Code:
// glyph sockets level requirement
uint8 minLevel = 0;
switch (m_glyphIndex)
{
case 0:
case 1: minLevel = 15; break;
case 2: minLevel = 50; break;
case 3: minLevel = 30; break;
case 4: minLevel = 70; break;
case 5: minLevel = 80; break;
}
Change thos values to your liking as well.
Then you just recompile your source.
Renaming messages/texts in-game
Open up Ladik's MPQ Editor, "Open Mpq" in filemenu and then go to enUS folder in your directory and open locale-enus.mpq. Go to -> interface -> FrameXML and extract GlobalString.lua.
Open up GlobalString.lua with notepad and search for "glyph", replace every string that contains word glyph with the classification you chose in ItemClass.dbc for example.
Save it.
Final Touches
Make sure you have placed your dbc files in your server's dbc folder and that your patch-x.mpq looks like this:
Then place it in your WoW\Data\
Next you just,
1. Start up your server
2. Delete cache folder (If you renamed anything in database)
3. Go in-game and enjoy.
Hopefully this tutorial was useful for some of you. Glyphs can be used in many creative ways, you just gotta think about it. Ex. if your character was android, you could imagine planting "Data Chips" into his "Database" which gives him new powers, haha.
Ps. I don't know if this is in wrong section, but this is mainly for Trinity Core.
- Mahado
Last edited: