Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(DB/FISHING): Fix "Disarmed!" fishing quest #21310

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

p-tkachuk
Copy link
Contributor

@p-tkachuk p-tkachuk commented Feb 2, 2025

Changes Proposed:

This PR proposes changes to:

  • Core (units, players, creatures, game systems).
  • Scripts (bosses, spell scripts, creature scripts).
  • Database (SAI, creatures, etc).

Issues Addressed:

Quest: https://www.wowhead.com/wotlk/quest=13836/disarmed#comments
The fishing loot should be https://www.wowhead.com/wotlk/item=45328/bloated-slippery-eel (which is already present in table)
This PR removes https://www.wowhead.com/wotlk/item=45323/severed-arm from fishing loot, which should be inside "bloated-slippery-eel"

ALSO: it removes duplicated loot for "Corroded Jewelry" (https://www.wowhead.com/wotlk/item=45903)

SOURCE:

The changes have been validated through:

  • Live research (checked on live servers, e.g Classic WotLK, Retail, etc.)
  • Sniffs (remember to share them with the open source community!)
  • Video evidence, knowledge databases or other public sources (e.g forums, Wowhead, etc.)
  • The changes promoted by this pull request come partially or entirely from another project (cherry-pick). Cherry-picks must be committed using the proper --author tag in order to be accepted, thus crediting the original authors, unless otherwise unable to be found

Tests Performed:

This PR has been:

  • Tested in-game by the author.
  • Tested in-game by other community members/someone else other than the author/has been live on production servers.
  • This pull request requires further testing and may have edge cases to be tested.

How to Test the Changes:

  1. quest add 13836
  2. go and fish for "Bloated Slippery Eel"
  3. open "Bloated Slippery Eel"

Known Issues and TODO List:

  • [ ]
  • [ ]

How to Test AzerothCore PRs

When a PR is ready to be tested, it will be marked as [WAITING TO BE TESTED].

You can help by testing PRs and writing your feedback here on the PR's page on GitHub. Follow the instructions here:

http://www.azerothcore.org/wiki/How-to-test-a-PR

REMEMBER: when testing a PR that changes something generic (i.e. a part of code that handles more than one specific thing), the tester should not only check that the PR does its job (e.g. fixing spell XXX) but especially check that the PR does not cause any regression (i.e. introducing new bugs).

For example: if a PR fixes spell X by changing a part of code that handles spells X, Y, and Z, we should not only test X, but we should test Y and Z as well.

@github-actions github-actions bot added the DB related to the SQL database label Feb 2, 2025
@p-tkachuk p-tkachuk marked this pull request as draft February 2, 2025 14:06
@p-tkachuk p-tkachuk marked this pull request as ready for review February 2, 2025 14:35
@sudlud
Copy link
Member

sudlud commented Feb 4, 2025

Please address the CI errors. Looks like there's existing conditions involved on the items you're changing. Might also want to check those conditions and see how they relate to the issue you're trying to fix.

@TheSCREWEDSoftware
Copy link
Contributor

TheSCREWEDSoftware commented Feb 4, 2025

@p-tkachuk correct me if wrong as you phrased in a way which is hard to understand.

When having the quest Disarmed! 13836 when you fish for the quest item Severed Arm 45323 it shouldn't be fishable but it shoud be part of the item Bloated Slippery Eel 45328 i'm correct?

Currenty in AC if I fish in Dalaran with the quest I get the quest item and not the fish which could contain(?) the quest item?

For those who actually want to be able to test.

  • Make any character and level it to 80 (.level 79)
  • .learn 51294 // Fishing (Grand Master)
  • .setskill 356 450 450 // Fishing 450/450
  • .additem 19970 // Arcanite Fishing Pople
  • .go xyz 5691 543 647 571
  • .quest add 13836 // Disarmed!
  • Fish and see what item you get, currently should get Severed Arm

Edit:
Conditions for the event, quest and reference loot are correct. The only thing I had to do was change the fishing loot.

-- Replaces `Severed Arm` (45323) with `Bloated Slippery Eel` (45328) in the Fishing Loot Entry `4567`
UPDATE `fishing_loot_template` SET `Item` = 45328 WHERE `Entry` = 4567 AND `Item` = 45323;

Also what Corroded Jewelry duplicate it? there's only 1 entry in the fishing loot template.

@p-tkachuk
Copy link
Contributor Author

@TheSCREWEDSoftware sorry for my bad English :)

There is a quest "Disarmed!"
When you fish outside the Dalaran prison you should be able to catch the fish
Then you should be able to open a fish, and find inside of it a quest item: Severed Arm

How it works on AC: When you fish outside the Dalaran prison you will catch Severed Arm, which is not correct.

Due to the changes in patch 3.3.3 the quest was modified. The quest item before the changes should be fished outside Dalaran. That is why my PR do next changes:

-- Delete Severed Arm from fish loot
DELETE FROM fishing_loot_template WHERE Entry=4567 AND Item=45323;

-- Delete Bloated Slippery Eel from fish loot (water outside of Dalaran, where Quest Item was before patch 3.3.3)
DELETE FROM fishing_loot_template WHERE Entry=3979 AND Item=45328;

-- Delete Bloated Slippery Eel from gameobject loot (fishing holes outside of Dalaran, where Quest Item was before patch 3.3.3)
DELETE FROM gameobject_loot_template WHERE Entry=25671 AND Item=45328;

-- Update Bloated Slippery Eel Entry in reference loot (the quest fish already exist in loot table, but it is in "wrong" water. Right now it in the sewers. So I'm moving it to outside the prison)
UPDATE reference_loot_template SET Entry=11024 WHERE Entry=11026 AND Item=45328;

-- Delete Corroded Jewelry from fish loot (That is another fishing quest, and we have duplicated drop in DB. One in fishing_loot_template and another in "reference_loot_template")
DELETE FROM fishing_loot_template WHERE Entry=4560 AND Item=45903;

@sudlud yep, seems like I haven't clear everything. I'll take a look.

@p-tkachuk
Copy link
Contributor Author

Please address the CI errors. Looks like there's existing conditions involved on the items you're changing. Might also want to check those conditions and see how they relate to the issue you're trying to fix.

Fixed

Copy link
Contributor

@TheSCREWEDSoftware TheSCREWEDSoftware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conditions for the event, quest and reference loot are correct. The only thing I had to do was change the fishing loot.

-- Replaces `Severed Arm` (45323) with `Bloated Slippery Eel` (45328) in the Fishing Loot Entry `4567`
UPDATE `fishing_loot_template` SET `Item` = 45328 WHERE `Entry` = 4567 AND `Item` = 45323;

Also what Corroded Jewelry duplicate it? there's only 1 entry in the fishing loot template.

As I said before, making all the changes you've submitted not intended changes.

@p-tkachuk
Copy link
Contributor Author

Conditions for the event, quest and reference loot are correct. The only thing I had to do was change the fishing loot.

-- Replaces `Severed Arm` (45323) with `Bloated Slippery Eel` (45328) in the Fishing Loot Entry `4567`
UPDATE `fishing_loot_template` SET `Item` = 45328 WHERE `Entry` = 4567 AND `Item` = 45323;

Also what Corroded Jewelry duplicate it? there's only 1 entry in the fishing loot template.

As I said before, making all the changes you've submitted not intended changes.

I do not understand what you are saying, but I'll try to address each line of changes and comments.

Conditions for the event, quest and reference loot are correct. The only thing I had to do was change the fishing loot.

-- Replaces Severed Arm (45323) with Bloated Slippery Eel (45328) in the Fishing Loot Entry 4567
UPDATE fishing_loot_template SET Item = 45328 WHERE Entry = 4567 AND Item = 45323;

If only this change will be made, then next things will happen:

  • It will be possible to catch Bloated Slippery Eel (45328) in "The Frozen Sea" (3979) WHICH IS NOT CORRECT
  • It will be possible to catch Bloated Slippery Eel (45328) in "Deep Sea Monsterbelly School" (25671) WHICH IS NOT CORRECT
  • It will be possible to catch Bloated Slippery Eel (45328) in "The Underbelly" (4560) WHICH IS NOT CORRECT

Changes, which you proposed, technically will fix the quest, BUT it will keep all the garbage in DB, causing incorrect quest behavior: it would be possible to catch quest item in invalid zones.

Also what Corroded Jewelry duplicate it? there's only 1 entry in the fishing loot template.

Please, do next to see dupluicates:

SELECT * FROM fishing_loot_template WHERE entry=4560;

image

SELECT * FROM reference_loot_template WHERE entry=11026;

image

I do hope it will clear things out.

@TheSCREWEDSoftware
Copy link
Contributor

I'm not home to validate or check related to the zones.

@TheSCREWEDSoftware
Copy link
Contributor

I only had a quick time to glance over the code and check the database the 2 places were they get removed make sensed, haven't tested. And i need to look into more for the corrupted one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DB related to the SQL database
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants