forked from azerothcore/mod-npc-talent-template
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update gossip handling to store data in database and add new features (…
- Loading branch information
Showing
11 changed files
with
4,791 additions
and
3,967 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,44 @@ | ||
# ![logo](https://raw.githubusercontent.com/azerothcore/azerothcore.github.io/master/images/logo-github.png) AzerothCore | ||
|
||
## TemplateNPC-azerothcore | ||
## mod-npc-talent-template | ||
|
||
- Latest build status with azerothcore: | ||
|
||
[![Build Status](https://github.com/azerothcore/mod-npc-talent-template/workflows/core-build/badge.svg?branch=master&event=push)](https://github.com/azerothcore/mod-npc-talent-template) | ||
|
||
Template NPC for AzerothCore 3.3.5 | ||
## Description | ||
This mod introduces an NPC that allows players to instantly apply pre-configured character templates that gear up, gem, set talents, and apply glyphs for any class. Ideal for quick character optimization for various roles and scenarios. | ||
|
||
* templates for level 80 PvP S6 and level 70 PvE T6 | ||
* race-specific gear options (e.g., humans receive no PvP trinket) | ||
* administrator command for creating custom templates. Templates are managed directly through the database and config. No C++ edits needed | ||
|
||
![](https://i.ibb.co/27WPR5j/Wo-WScrn-Shot-021219-000220.jpg) | ||
|
||
Video Showcase: | ||
https://streamable.com/yxv1m | ||
|
||
## Creating custom gear sets | ||
This process can only be done by an administrator and is error-prone. Creating gear sets should be done on a local development server and exporting sets from the DB to a `.sql` is recommended. | ||
|
||
1. Setup a character with the desired gear set, gems, enchants, talents and glyphs. | ||
2. `.templatenpc create [TemplateName]` creates database entries for gear, talents, glyphs and an entry in the index table for your class. A template name needs to be unique for that class and is case-sensitive. For example, when creating a PvP set for a lvl80 Restoration Druid `.templatenpc create Restoration80PvPS8`. | ||
3. export to `.sql` | ||
4. some manual changes are needed | ||
|
||
The following entries are created in the `acore_characters` db: | ||
a. `mod_npc_talent_template_gear`: gear for your class, spec and race. When exporting, modify the raceMask as needed. When creating spec set for multiple races, create a template for one race, export to sql then create template for a new race. Modify the raceMask as needed | ||
b. `mod_npc_talent_template_talents`: no modifying needed | ||
c. `mod_npc_talent_template_glyphs`: no modifying needed | ||
d. `mod_npc_talent_template_index`: modify gossipText, actionId needs to be unique per spec. Gossip options are displayed according to their ID with the lowest ID at the top. You can override a column to re-use talents or glyphs or gear from another template. For example, talents and glyphs from `Restoration80PvP` can be re-used | ||
|
||
`.templatenpc reload` to reload changes. Test with dropping `acore_characters.mod_npc_talent_template*` tables and updates from character db as needed | ||
```sql | ||
DELETE FROM acore_characters.updates WHERE name='npc_talent_template_data_1_80_pvp_s6.sql'; | ||
DELETE FROM acore_characters.updates WHERE name='npc_talent_template_data_2_70_pve_t6.sql'; | ||
DELETE FROM acore_characters.updates WHERE name='npc_talent_template.sql'; | ||
DROP TABLE IF EXISTS acore_characters.mod_npc_talent_template_gear; | ||
DROP TABLE IF EXISTS acore_characters.mod_npc_talent_template_glyphs; | ||
DROP TABLE IF EXISTS acore_characters.mod_npc_talent_template_index; | ||
DROP TABLE IF EXISTS acore_characters.mod_npc_talent_template_talents; | ||
``` |
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
2,473 changes: 30 additions & 2,443 deletions
2,473
data/sql/db-characters/base/npc_talent_template.sql
Large diffs are not rendered by default.
Oops, something went wrong.
2,465 changes: 2,465 additions & 0 deletions
2,465
data/sql/db-characters/base/npc_talent_template_data_1_80_pvp_s6.sql
Large diffs are not rendered by default.
Oops, something went wrong.
1,473 changes: 1,473 additions & 0 deletions
1,473
data/sql/db-characters/base/npc_talent_template_data_2_70_pve_t6.sql
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 |
---|---|---|
@@ -1,4 +1,5 @@ | ||
-- COMMAND | ||
DELETE FROM `command` WHERE `name`='templatenpc reload'; | ||
DELETE FROM `command` WHERE `name` IN ('templatenpc reload', 'templatenpc create'); | ||
INSERT INTO `command` (`name`, `security`, `help`) VALUES | ||
('templatenpc reload', 3, 'Syntax: .templatenpc reload\nType .templatenpc reload to reload Template NPC database changes'); | ||
('templatenpc reload', 3, 'Syntax: .templatenpc reload\nType .templatenpc reload to reload Template NPC database changes'), | ||
('templatenpc create', 3, 'Syntax: .templatenpc create\nType .templatenpc create [name] to create a Template for your class with the desired name. This name is case-sensitive'); |
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
Oops, something went wrong.