locales Gossip #12546

Closed
Magnifikator opened this Issue Jul 18, 2014 · 14 comments

Comments

Projects
None yet
7 participants
Contributor

Magnifikator commented Jul 18, 2014

The gossip menu option 'I wish to know about Dual Talent Specialization.' is never shown in a localized language.

Even not if there is a valid record in the locales_gossip_menu_option table.

Examples: Horde npc 3042 / Alli npc 912

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Magnifikator changed the title from Gossip Dual Talent Spec to [3.3.5a]Gossip Dual Talent Spec Jul 18, 2014

Contributor

Magnifikator commented Jul 18, 2014

Is it possible that the table locales_gossip_menu_option is not supported by TC ? In my table there are only German translations and may I have them from another source.

Now I found different other NPCs also without working local language.

Aokromes added the Comp-Core label Jul 24, 2014

XJIOP commented Sep 5, 2014

same issue, some NPCs no translation gossip_menu but in db data exists
http://pastebin.com/SE3R27s5
what is wrong?

Member

tkrokli commented Sep 5, 2014

same issue, some NPCs no translation gossip_menu but in db data exists http://pastebin.com/SE3R27s5 - that is wrong?

Hmm, I think I remember something about the actual localized text being stored in a different table and that the table gossip_menu_option only handles the default window options. Hang on a sec.
Edit: Could it be caused by the fact that the locales_gossip_menu_option table is completely empty?

Edit2: sorry, I just noticed that it has been discussed already. Broken link somewhere, perhaps?

XJIOP commented Sep 5, 2014

you can see my link http://pastebin.com/SE3R27s5 for this npc has locales_gossip_menu_option, for my language is option_text_loc8, and such NPC is a lot...

Member

tkrokli commented Sep 28, 2014

I have been trying to get my head around this localization, but it is not my forte since I have never used any other client than the enGB game client. While looking at @hakyp's script, I noticed there are a lot of 'NULL' values. Should they look like that and not be '' (2 apostrophes with no space)? In TC source, most of those fields should ideally contain the other languages, but they are currently empty. All I can find to compare with, is @Kinzcool's Traduction FR 4.3.4 - Rev 1.sql , but I don't know if the 4.3.4 DB is too different to be useful in this context. If the difference was negligible or non-existent, I would have tried replacing all occurrences of 'loc2' with your 'loc8' in that DB source, just to see if it would work, but it may not work at all. I just don't know.

@hakyp's script:

INSERT INTO `creature_template` (`entry`, `difficulty_entry_1`, `difficulty_entry_2`, `difficulty_entry_3`, `KillCredit1`, `KillCredit2`, `modelid1`, `modelid2`, `modelid3`, `modelid4`, `name`, `subname`, `IconName`, `gossip_menu_id`, `minlevel`, `maxlevel`, `exp`, `faction`, `npcflag`, `speed_walk`, `speed_run`, `scale`, `rank`, `dmgschool`, `BaseAttackTime`, `RangeAttackTime`, `BaseVariance`, `RangeVariance`, `unit_class`, `unit_flags`, `unit_flags2`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `spell5`, `spell6`, `spell7`, `spell8`, `PetSpellDataId`, `VehicleId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `HoverHeight`, `HealthModifier`, `ManaModifier`, `ArmorModifier`, `DamageModifier`, `ExperienceModifier`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `questItem5`, `questItem6`, `movementId`, `RegenHealth`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`, `VerifiedBuild`) VALUES
(31557, 0, 0, 0, 0, 0, 27616, 0, 0, 0, 'Uda the Beast', 'Innkeeper', '', 10139, 75, 75, 2, 2123, 66177, 1, 1.14286, 1, 0, 0, 2000, 0, 1, 1, 1, 33536, 2048, 8, 0, 0, 0, 0, 0, 7, 4096, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 'npc_innkeeper', 12340);

INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`) VALUES
(10139, 1, 5, 'Make this inn your home.', 2822, 8, 65536, 0, 0, 0, 0, '', 0),
(10139, 2, 1, 'Let me browse your goods.', 8097, 3, 128, 0, 0, 0, 0, '', 0);

INSERT INTO `locales_gossip_menu_option` (`menu_id`, `id`, `option_text_loc1`, `option_text_loc2`, `option_text_loc3`, `option_text_loc4`, `option_text_loc5`, `option_text_loc6`, `option_text_loc7`, `option_text_loc8`, `box_text_loc1`, `box_text_loc2`, `box_text_loc3`, `box_text_loc4`, `box_text_loc5`, `box_text_loc6`, `box_text_loc7`, `box_text_loc8`) VALUES
(10139, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'ß õî÷ó îñòàíîâèòüñÿ çäåñü.', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
(10139, 2, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Ïîçâîëüòå âçãëÿíóòü íà âàø òîâàð.', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
Member

Kinzcool commented Sep 29, 2014

You don't even have to add it in locales_gossip_menu_option because the whole purpose of broadcast_text is containing those texts and there's locales_broadcast_text for them.

TL;DR: If there's an OptionBroadcastTextID set for a given gossip, it will automatically have a translation (and the same applies for creature_text and npc_text).

Kinzcool closed this in 8983fbb Sep 29, 2014

Member

tkrokli commented Sep 29, 2014

😏 For a few seconds, I read the reply as a closing comment saying that nothing will be done about it...

Thanks for closing this issue with a commit & solution! 👍

XJIOP commented Sep 29, 2014

same problem but does not work with locales_broadcast_text

INSERT INTO `gossip_menu_option` (`menu_id`, `id`, `option_icon`, `option_text`, `OptionBroadcastTextID`, `option_id`, `npc_option_npcflag`, `action_menu_id`, `action_poi_id`, `box_coded`, `box_money`, `box_text`, `BoxBroadcastTextID`) VALUES
(4783, 0, 0, 'How do I train my pet?', 29625, 1, 1, 9789, 0, 0, 0, '', 0),
(4783, 1, 0, 'I wish to untrain my pet.', 10621, 1, 1, 6520, 0, 0, 0, '', 0);

INSERT INTO `locales_gossip_menu_option` (`menu_id`, `id`, `option_text_loc1`, `option_text_loc2`, `option_text_loc3`, `option_text_loc4`, `option_text_loc5`, `option_text_loc6`, `option_text_loc7`, `option_text_loc8`, `box_text_loc1`, `box_text_loc2`, `box_text_loc3`, `box_text_loc4`, `box_text_loc5`, `box_text_loc6`, `box_text_loc7`, `box_text_loc8`) VALUES
(4783, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Как мне воспитывать моего питомца?', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL),
(4783, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Я хочу, чтобы мой питомец забыл кое-какие навыки.', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);

INSERT INTO `broadcast_text` (`ID`, `Language`, `MaleText`, `FemaleText`, `EmoteID0`, `EmoteID1`, `EmoteID2`, `EmoteDelay0`, `EmoteDelay1`, `EmoteDelay2`, `SoundId`, `Unk1`, `Unk2`, `VerifiedBuild`) VALUES
(29625, 0, 'How do I train my pet?', 'How do I train my pet?', 0, 0, 0, 0, 0, 0, 0, 0, 1, 18019);
INSERT INTO `broadcast_text` (`ID`, `Language`, `MaleText`, `FemaleText`, `EmoteID0`, `EmoteID1`, `EmoteID2`, `EmoteDelay0`, `EmoteDelay1`, `EmoteDelay2`, `SoundId`, `Unk1`, `Unk2`, `VerifiedBuild`) VALUES
(10621, 0, 'I wish to untrain my pet.', 'I wish to untrain my pet.', 0, 0, 0, 0, 0, 0, 0, 0, 1, 18019);

INSERT INTO `locales_broadcast_text` (`ID`, `MaleText_loc1`, `MaleText_loc2`, `MaleText_loc3`, `MaleText_loc4`, `MaleText_loc5`, `MaleText_loc6`, `MaleText_loc7`, `MaleText_loc8`, `FemaleText_loc1`, `FemaleText_loc2`, `FemaleText_loc3`, `FemaleText_loc4`, `FemaleText_loc5`, `FemaleText_loc6`, `FemaleText_loc7`, `FemaleText_loc8`, `VerifiedBuild`) VALUES
(29625, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Как мне воспитать моего питомца?', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Как мне воспитать моего питомца?', 18019);
INSERT INTO `locales_broadcast_text` (`ID`, `MaleText_loc1`, `MaleText_loc2`, `MaleText_loc3`, `MaleText_loc4`, `MaleText_loc5`, `MaleText_loc6`, `MaleText_loc7`, `MaleText_loc8`, `FemaleText_loc1`, `FemaleText_loc2`, `FemaleText_loc3`, `FemaleText_loc4`, `FemaleText_loc5`, `FemaleText_loc6`, `FemaleText_loc7`, `FemaleText_loc8`, `VerifiedBuild`) VALUES
(10621, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Я хочу, чтобы мой питомец забыл кое-какие навыки.', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'Я хочу, чтобы мой питомец забыл кое-какие навыки.', 18019);

Aokromes reopened this Sep 29, 2014

Aokromes changed the title from [3.3.5a]Gossip Dual Talent Spec to locales Gossip Oct 6, 2014

Member

Killyana commented Oct 7, 2014

Pet trainers from the 3.3.5 have the script "npc_pet_trainer" gossip texts are hard coded there.
https://github.com/TrinityCore/TrinityCore/blob/7d1d55124c1e289748d2afefae896c97f710e57b/src/server/scripts/World/npcs_special.cpp#L1685 (For example npc=17484)
For the new ones (Example npc=44251) they don't have the script and the broadcast text is used in this case.
The cpp script can be converted to SAI but I can't find the spell for: player->ResetPetTalents();

Contributor

danlapps commented Mar 17, 2015

Is this an "issue" of TC or just localization strings missing ?

Member

tkrokli commented Mar 17, 2015

@danlapps : notice that Aokromes correctly renamed the issue like this:

Aokromes changed the title from [3.3.5a]Gossip Dual Talent Spec to locales Gossip on 6 Oct 2014

As I understand it, this should mean that the issue is still valid because it has to do with the locales_gossip_menu_option for the npc_pet_trainer like Killyana also commented above.

Member

Killyana commented May 17, 2015

UPDATE `gossip_menu_option` SET `optionBroadcastTextId`=33762 WHERE `menu_id` IN (4007, 4534, 4092, 4621, 4694, 4826, 4674) AND  `id`=2;
Member

Killyana commented May 20, 2015

Moved to #14716 as related.

Killyana closed this May 20, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment