[10:56 AM] Tagban: Anyone else seeing crashes after most recent pull related to char utils and additem?
[10:56 AM] Tagban: [28/Jan] [10:56:16][Warning] charplugin::AddItem: Item <23733> is not found in a database
[10:57 AM] Tagban: Anything not in the database crashes the server now
[10:57 AM] Tagban: Including item 0 when a player steals
[11:01 AM] Alucard: its always been the case for as long as I can remember
[11:01 AM] Alucard: I even use it to trigger server restarts from within the game 😄
[11:02 AM] Alucard: additem or even a nonexistent itemid in a shop will do it
[11:10 AM] Tagban: So
[11:11 AM] Tagban: How is it happening on steal? or does the monster simply not have item ids?
[11:11 AM] Tagban: Its saying on item id 0
[11:12 AM] Tagban: So maybe I can just make an ID 0 as a generic piece of crap
[11:12 AM] Tagban: And tweak additem to not allow after x ID.
[11:14 AM] Derahine: why not just check if getStealItem() ~= 0 ? That's what our steal and despoil scripts do--verify that the ID before trying to call addItem(stolen).
[11:15 AM] Tagban: I dunno, seems like that should be built into core.
[11:15 AM] Tagban: To avoid crashes
[11:16 AM] Derahine: the crash catch, yes, though you'd want to handle the 0 item stolen as well as you wouldn't want to fire those messages and such.
[11:16 AM] Derahine: Ours doesn't crash when you add item with an invalid item id... I remember wrapping something with it a while back.
[11:21 AM] TeoTwawki: if the mob has no item to steal it should have been nil i would think, not zero
[11:22 AM] TeoTwawki: and I'd agree with tags to have it done right in core. if its not a valid number, stop it right there. still woudl be probs if people "added" stealable items that weren't even in item basic yet, but that shouldn't be our concern here
[11:23 AM] Derahine: getStealItem returns either an int of the item id stolen, or zero.
[11:23 AM] Tagban: I see one under mob_droplist with an itemId of 0
[11:23 AM] Tagban: 2801
[11:23 AM] TeoTwawki: well better if !0 the core then
[11:24 AM] TeoTwawki: git blame it tags!
[11:24 AM] Tagban: Who did it xD
[11:24 AM] TeoTwawki: see who we needa lynch
[11:24 AM] TeoTwawki: opens a cart selling torches and pitchforks
[11:24 AM] TeoTwawki: only $19.95!
[11:25 AM] TeoTwawki: by two torches, get a 3rd abosulutely free!
[11:25 AM] TeoTwawki: pitchforks made of high grade steel, gauranteed to crit at least 5%
[11:26 AM] Tagban: Weird in the SQL file it shows 14807
[11:26 AM] Tagban: I'll fix it manually.. but that's odd.
[11:26 AM] TeoTwawki: 🤔 soo.....tagban did it?
[11:27 AM] Tagban: Ah nevermind
[11:27 AM] Tagban: I found the line
[11:27 AM] Tagban: INSERT INTO mob_droplist VALUES (2801,2,0,1000,0,150);
[11:27 AM] Tagban: wrenffxi
[11:27 AM] TeoTwawki: GASPSES
[11:28 AM] Tagban: Replacing 0 with 1
[11:28 AM] Tagban: lol
[11:28 AM] Tagban: #lazy
[11:28 AM] Tagban: You get a gil!
[11:28 AM] TeoTwawki: wut
[11:28 AM] TeoTwawki: 65535 is gil
[11:28 AM] Tagban: Whatever
[11:28 AM] TeoTwawki: 1 is choco bedding I think
[11:28 AM] Tagban: they get something shitty then
[11:28 AM] Tagban: They can fuck off.
[11:28 AM] Tagban: ;p;
[11:28 AM] Tagban: lol
[11:50 AM] Tagban: So before when an itemid was wrong/fake it would just say added item in chatlog but not spam the server log.
[11:50 AM] Tagban: I don't update frequently, but this seems to be when it changed: DarkstarProject/darkstar#6361
[11:51 AM] TeoTwawki: so that drop id with the zero item belongs to a bunny in abyssea latheine
[11:52 AM] Tagban: Yea its weird. the error is happening when stealing from a Bark Tarantula in Boyhada
[11:52 AM] Tagban: It gives a 0 item ID
[11:52 AM] TeoTwawki: hmm
[11:52 AM] Tagban: And just spams the game server
[11:52 AM] Tagban: [28/Jan] [10:56:16][Warning] charplugin::AddItem: Item <23733> is not found in a database
[11:52 AM] Tagban: basically just spams it and 'crashes' the server for players.
[11:53 AM] Tagban: It happened after I updated 3-4 days ago.
[11:53 AM] Tagban: So within the last 30 days I even did a clean pull and confirmed its still happening there
[11:54 AM] TeoTwawki: not seeing that zero item in dropid 2801 in my copy
[11:54 AM] TeoTwawki:
INSERT INTO `mob_droplist` VALUES (2801,0,0,1000,856,150);
INSERT INTO `mob_droplist` VALUES (2801,0,0,1000,2490,100);
INSERT INTO `mob_droplist` VALUES (2801,0,0,1000,4358,120);
[11:54 AM] Tagban: I duno
[11:54 AM] Tagban: I tried clean pulls, etc.
[11:54 AM] Tagban: Still found it
[11:54 AM] Tagban: But just changed it to some other random number
[11:54 AM] Tagban: lol
[11:54 AM] Tagban: That isn't my biggest concern
[11:55 AM] TeoTwawki:
Item <23733> is not found in a database
weeeellll thats not item 0
[11:55 AM] TeoTwawki: so
[11:55 AM] TeoTwawki: wtf is 23733
[11:55 AM] Tagban: It was trying to add an item not found in DB
[11:55 AM] TeoTwawki: and why's it in a drop but not in item basic
[11:55 AM] Tagban: But it just spams the game server forever.
[11:56 AM] TeoTwawki: prolly typo
[11:56 AM] Tagban: ANd the same spam happened when trying to steal from bark tarantula just with item ID 0
[11:56 AM] Epictaru: remove the spider, remove the spam, feexed!
[11:56 AM] Tagban: lol
[11:56 AM] TeoTwawki: kind of expected behavior - its the db thats worng somewhere, eitehr in dsp or your fork
[11:56 AM] Tagban: My answer was deleting all chars/accounts/etc.
[11:56 AM] Tagban: ANd starting clean
[11:56 AM] Tagban: Still having issues
[11:57 AM] TeoTwawki: Autkasts's change was to make additem do looks so that it coudl do multiple stacks without multiple calls
[11:59 AM] TeoTwawki: someone shoudl prolly let him know and have it stop the loop if the item is invalid
[11:59 AM] TeoTwawki: or just pr it
[11:59 AM] TeoTwawki: I ain't got time to go fix it
[12:02 PM] Tagban: Commented.
[12:02 PM] Tagban: I don't have much time either.
[12:05 PM] TeoTwawki: https://www.ffxiah.com/item/23733/malignance-tabard
FFXI Auction House Online
[12:05 PM] TeoTwawki: def should not be on spidey xD
[12:05 PM] Tagban: Yea I know
[12:06 PM] Tagban: THat wasn't what I was reporting the spider is doing 0 for steal
[2:52 PM] Tagban: They fixed it with a break; to stop the loop.
[2:52 PM] Tagban: w00t.
[3:04 PM] Tagban: Nevermind, still broken.
[3:05 PM] TeoTwawki: break should have taken care of said infinite loop. should get one error message and then stops. its still infity printing that message?
[3:05 PM] TeoTwawki: infinity even
[3:06 PM] Tagban: Yep
[3:06 PM] Tagban: Goes forever
[3:09 PM] Tagban: Like, I agree its few and far between more than likely, not sure how the hell bark tarantula has a steel item id of 0 (in the database it doesn't show 0), but currently anyone with access to additem can crash the server and because it doesn't (crash) the program, so auto-rebooter won't kick in since its still doing stuff, just the same thing forever.
[3:10 PM] Tagban: THe break; might still be the right answer, but maybe its missing somewhere else.
[3:13 PM] TeoTwawki: i'l bet steal loops seperately
[3:15 PM] Tagban: I'd need to dig into charplugin::additem
[3:15 PM] Tagban: Since I'm guessing that's used for anything adding an item to a char's inventory.
[3:15 PM] Tagban: And I'm not sure if charutils = charplugin
[3:19 PM] Tagban: Looking at it myself the break; appears to be in the right spot, so it SHOULD stop it.. but I'm not an expert.
[3:19 PM] Tagban: Hm found an additem on 3559 in lua_baseentity that isn't break'd
[3:21 PM] Tagban: lol Great minds, Autkast responded via Github at the same time xD
[3:30 PM] Tagban: Yep that line fixed it. w00t.