classicdb / database

Classic DB is a content database for CMaNGOS Classic: world, NPCs, objects, quests and so on.
https://github.com/cmangos/mangos-classic
Other
87 stars 59 forks source link

Weaponsmith sub-Specialization quests (Everlook) #877

Open Neotmiren opened 8 years ago

Neotmiren commented 8 years ago

I use the following fix

UPDATE creature_template SET ScriptName='' WHERE entry IN (11192,11191,11193); -- disable NPC trainer SD2 scripts (half-ported from TBC/WotLK)
UPDATE quest_template SET NextQuestId=5306 WHERE entry=5284;
UPDATE quest_template SET NextQuestId=5307 WHERE entry=5302;
UPDATE quest_template SET PrevQuestId=5284, RewSpell=17040, RewSpellCast=17044, RequiredSkillValue=250, CompleteEmote=1 WHERE entry=8869;
UPDATE quest_template SET PrevQuestId=5302, RewSpell=17040, RewSpellCast=17044 WHERE entry=5305;
UPDATE quest_template SET PrevQuestId=5302, RewSpell=17041, RewSpellCast=17043 WHERE entry=5306;
UPDATE quest_template SET PrevQuestId=5284, RewSpell=17039, RewSpellCast=17042 WHERE entry=5307;
-- UPDATE quest_template SET ExclusiveGroup=8869 WHERE entry IN (8869,5305,5306,5307);

About removed "Unlearn specialization" script: SD2 code is half- or even quarter- backported from TBC or WotLK. There was no way to unlearn specializations in Classic. Maybe it would be not bad to have such possibility (it could be scripted correctly), but current SD2 script is now working anyways.

Phatcat commented 8 years ago

single player patch

Sounds very interesting I must say.

There was no way to unlearn specializations in Classic.

You're right. you could always unlearn the profession but you couldn't unlearn the specialization... Well, not so much to do with scripting it properly as unlearning professions is not dealt with by script, but by the core - it's basically just adding a bool in the config settings for vanilla allowing hosters to choose if specializations are unlearnt along with professions and default it to false in the settings. Shouldn't be too much trouble.

Neotmiren commented 8 years ago

@Phatcat, unlearning cannot be performed by the core, because it requires gossip options, texts and the set of specific spell IDs for each specialization. Currently it is performed by SD2, but code uses spell IDs not present in Classic spell.dbc

Maybe it could be performed by dbscripts.

Phatcat commented 8 years ago

Oh, I don't know much about unlearning specializations, but unlearning your profession via the skills menu doesn't require all those things does it? How would one exactly go about unlearning ones specialization in vanilla currently on cmangos?

Phatcat commented 8 years ago

Also, now that I think about it, wasn't there this gnome set up in a small gnome hut somewhere with a crystal ball who would unlearn your specialization for you?

Neotmiren commented 8 years ago

Yes, professions are different thing, they are skills, but specializations are spells shown in spellbook after they are learned. Current CMaNGOS has non-working unlearn options for all specializations, check it ingame (and SD2 code is in npc_professions.cpp).

cala commented 8 years ago

Related to https://github.com/classicdb/database/issues/262