Jump to content
  • Quivers for hunters


    cabfever
    • Status: Completed
      Main Category: Database
      Sub-Category: Item
      Version: 2.0.10 Milestone: 20 Priority: Urgent
      Implemented Version: 0.20

    Quivers for hunters

    Today supposedly all existing hunter quivers have been removed from game and all arrows sent in the mail back to the player. Usage of any other ( vendore etc ) quivers are not possible. Please fix this !

    Note from me: Could be related to this commit? [url]https://github.com/mangoszero/database/commit/34491d44700df486dccc7c3f4ae43577ca1371b8[/url]


    User Feedback

    Recommended Comments

    Ah fiddle stick and Alistair!

    Okay, yep, that commit did cause the issue. In fact 2 things caused that issue

    1) That commit
    2) Me not testing it!!!

    That commit was necessary due to errors on start up of the server. Those errors were found to be caused by invalid entries in the creature_item_template and item_template tables.

    The field in those records that can be used to identify if an item is equipable, is the inventory_type field. Quivers were set as Bag (18), but should be Quiver (27).
    see the following in the Wiki:
    [url]https://www.getmangos.eu/wiki/Reference%20Information/DB/mangos/MaNGOSZero/creature_item_template.md[/url]

    [B]EDIT[/B]: True fault found in the server core. It is not considering the Quiver as an equipable item that can go in a bag slot. In fact it is not considering the Quiver at all.
    Faulty code is at:
    Player.cpp
    function: FindEquipSlot( )
    Line: 7619

    Pre code fix
    case INVTYPE_BAG:
    slots[0] = INVENTORY_SLOT_BAG_START + 0;
    slots[1] = INVENTORY_SLOT_BAG_START + 1;
    slots[2] = INVENTORY_SLOT_BAG_START + 2;
    slots[3] = INVENTORY_SLOT_BAG_START + 3;
    break;


    Code fix applied:
    case INVTYPE_BAG:
    case INVTYPE_QUIVER:
    slots[0] = INVENTORY_SLOT_BAG_START + 0;
    slots[1] = INVENTORY_SLOT_BAG_START + 1;
    slots[2] = INVENTORY_SLOT_BAG_START + 2;
    slots[3] = INVENTORY_SLOT_BAG_START + 3;
    break;


    This time I tested it, and it worked as it should!

    I'll now PR the fix!

    Thinking about it, AMMO POUCH should probably go in there too.
    EDIT: It's ok, AMMO POUCH is classed as QUIVER in the DBC files

    Link to comment
    Share on other sites

    Now it's even worse. A player told me this:

    [13.11.14 19:31:05]xx : If ANY player creates or logins on a hunter
    [13.11.14 19:31:07]xx : the server crashes
    [13.11.14 19:31:11]xx : and crashes and crashes

    Also from another player: Seems like server crashed when I put arrows in the quiver that I could finally equip

    I reverted the Player.cpp change for now... but this needs to get fixed asap since hunters aren't able to use quivers again.

    Link to comment
    Share on other sites

    Nasty! Okay, and damn, I should've tested equipping and firing an arrow.

    EDIT: Just went in, and it killed the server entering as a hunter. This did not happen yesterday. I went in fine as my hunter; just did not use the quiver other than to equip it.

    Interesting, I tried creating a new hunter and that crashed on entering the game world. I was not expecting that, because I had no issue with this after applying the fix myself.

    Hmm... so what's different since yesterday for me???

    May have to revert back to the original set up, even though they were incorrect in the database.

    Link to comment
    Share on other sites

    Just adding this image of the crash:

    [IMG]http://s22.postimg.org/65hrdbne9/Login_Crash_With_Hunter.jpg[/IMG]

    That looks like it's crashing when checking to see what items are in the bag and making sure they can go in the bag. This is occurring as the player character goes into the game world.

    And again, very strange, because I was able to do that yesterday!!!! :(

    Link to comment
    Share on other sites

    I'll have at this and other issues first thing tomorrow. Need to wind down now, or sleep won't happen.

    I'll also liaise with the others on this and the other issues you posted today, cabfever.

    [B][COLOR="#B22222"][SIZE=3]NOTE:[/SIZE][/COLOR][/B] It's got to be due to the quiver being in the bag slot. Yesterday after applying the fix, logging in and successfully equipping the quiver in the bag slot, I then did not log off and log back in, therefore I did not experience the crash.
    Right, after this is fixed, I'm firing myself!

    Link to comment
    Share on other sites

    Right, this WILL fix it:

    [B][SIZE=3]DATABASE[/SIZE][/B]
    UPDATE `creature_item_template` SET `inventory_type`='18' WHERE `class`='11' AND `subclass`='2';

    UPDATE `item_template` SET `InventoryType`='18' WHERE `class`='11' AND `subclass`='2';

    [B][SIZE=3]SERVER[/SIZE][/B]

    Remove the following line

    [COLOR="#B22222"][B]case INVTYPE_QUIVER:[/B][/COLOR]

    from Player.cpp, line 7712

    Yep, I got that code part totally wrong! Misinterpreted the meaning in the database, which led to the supposed code fix!!!!

    I'll PR a fix for the fix that was not a fix :o

    Link to comment
    Share on other sites



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use