SRL Archive - MSI Bugs

Al-Kharid Cooking


Smidqe

2011-05-28 03:24:32

Just encountered this. Character is trying to cook but it somehow finds ground item altough there isn't one in sight, then it tries to relocate and just loops, constantly saying that there is a ground item.

Edit: It worked like charm yesterday.

Here's the debug log
[  ] -- MSI_SetupPlayer
[ ] ---- Player is not logged in
[ ] ------ Scanning for randoms...
[ ] ---- MSI_SetSkillLevels
[ ] ------ [HOOKED] CharacterStats_FunctionCall: CharacterStats
[ ] ---------- Bobzilla_GetData: Getting skill levels
[ ] ---------- Player Found in XML, Updating
[ ] ------ [HOOKED] CharacterStats_FunctionCall: CharacterStats: 1
[ ] ------ Cooking Level: 78
[ ] ---- MSI_SetSkillLevels: Finished
[ ] ------ Materials found in inventory
[ ] -- MSI_SetupPlayer: True
[ ] -- MSI_Walk
[ ] ------ MSI_WaitWhileResting
[ ] ---- Player's Location = Al Kharid Bank
[ ] ---- MSI_AtLocation
[ ] ------ Checking Point: (3273, 3179)
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Distance from player to Al Kharid Cooking Range: 5
[ ] ------ Player is at Al Kharid Cooking Range
[ ] ---- MSI_AtLocation: True
[ ] -- MSI_Walk: True
[ ] -- MSI_AutoObjects
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] ------ 4 objects found!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] ------ 5 objects found!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] -------- Own character!
[ ] -------- Not enough points: 1
[ ] ------ 5 objects found!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] ------ 4 objects found!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] -------- Not enough points: 3
[ ] ------ 5 objects found!
[ ] -------- Scanning for randoms...
[ ] ------ Uptext didn't match!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]
[ ] ------ MSI_ClickItemSlot: Succesfully clicked item slot
[ ] ------ MSI_ClickItem: Succesfully clicked Raw trout
[ ] ---- MSI_FindObjectsIn [61]
[ ] -------- Not enough points: 3
[ ] ------ 4 objects found!
[ ] ------ Found ground item
[ ] ---- MSI_FindObjectsIn: False
[ ] ---- MSI_Relocate
[ ] -------- MSI_PointOnMM(3273, 3179): True
[ ] ------ Already at Al Kharid Cooking Range Point(0)
[ ] ---- MSI_Relocate: True
[ ] ---- MSI_FindItemSlots: Found 28 Raw trout in inventory slot(s) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,

13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]

NCDS

2011-05-28 07:26:28

Where was the char standing?

Smidqe

2011-05-28 07:32:05

Just beside the range. It found the range okay and used raw trout on it then it finds the ground item.

NCDS

2011-05-28 08:02:38

Ok, for now add Result := True; after "wait(randomRange(1000, 2000)); " on line 1814 in Objects.simba.


it registers as a ground item because the range is not set to right click only. I'll commit a permanent fix later but I have to be getting to work now.

Smidqe

2011-05-28 09:33:11

That worked. Thanks ;)

Coh3n

2011-05-28 14:58:37

NCDS, any ideas for a permanent fix? The only thing I can think of is adding an attribute to TMSObject (PickGroundItem).

@Smidge, glad it's working. :)

NCDS

2011-05-28 15:02:20

From: Coh3n
NCDS, any ideas for a permanent fix? The only thing I can think of is adding an attribute to TMSObject (PickGroundItem).

@Smidge, glad it's working. :)


Something along those lines would certainly work, just a simple boolean. I have to go back to work in about 20 mins (double shift today :/) but I'll see if I can think of something else while I'm there. Otherwise, I'll add the attribute when I get home.

i luffs yeww

2011-05-28 15:12:30

Well something to break an infinte loop in general would be nice. What if you had an array of TBox for each major thing (banking, walking, and cooking) with bounds for where you can and can't go. If you go out, something's messed up, and needs to be fixed. Could also check if you're in a random then.

Typing that, I was also thinking of having a "step counter," because sometimes you can be stuck going in circles or something somehow, and that wouldn't always make you go out of bounds. I'd do that by adding something to your walking/clicking that gets your tile before doing anything and then after clicking gets your tiles and increases your counter accordingly. Then if you walk too much, it's messing up.

Could also help with walking, possibly.

Coh3n

2011-05-28 17:28:55

From: i luffs yeww
Well something to break an infinte loop in general would be nice. What if you had an array of TBox for each major thing (banking, walking, and cooking) with bounds for where you can and can't go. If you go out, something's messed up, and needs to be fixed. Could also check if you're in a random then.

We don't have any infinite loops. It would have done what he posted for ~5 minutes or so before logging out. I'm not sure how long the timer is set to go. But 99% of MSI is in timer loops. The TBox this isn't a bad idea if I understand it correctly, but that could potentially run in to problems because you're never going to know exactly where the player is on the mainscreen. It would work beautifully if it was just reflection.


Typing that, I was also thinking of having a "step counter," because sometimes you can be stuck going in circles or something somehow, and that wouldn't always make you go out of bounds. I'd do that by adding something to your walking/clicking that gets your tile before doing anything and then after clicking gets your tiles and increases your counter accordingly. Then if you walk too much, it's messing up.

Could also help with walking, possibly.
I don't really understand. :o

Coh3n

2011-05-30 17:00:31

So I'm not really sure why this started happening. Nothing was changed in object finding and it was working before…

E: This should now be fixed. There was a whole section in MSI_FindObjectsIn that was unnecessary, not even sure why it was there. Details.