What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Collectability

fifidong

Member
Joined
May 31, 2012
Messages
124
Any way to grab Collectability information?
Also, how can I see the all available window handles to call RaptureAtkUnitManager.GetWindowByName ?

jQzLZYC.png
 
It is "SelectYesNoItem"
It would be useful if RB can read the number "115"
 
Quick additional question.

How do I find the arguments for the SelectYesNoItem to SendAction to?
 
Oh just saw your other question,
for all available windows, run this in console

Code:
ClearLog();
foreach(var item in RaptureAtkUnitManager.Controls)
{
Log(item);
}

For SendAction, I have no idea too.

Currently you cannot read the collectability rating number afaik
 
To read the value out of the window is a very important feature right now in my opinion, should be implemented pretty soon.
 
It's on my to do list, but like everything else its like 3 pointers deep.
 
Thanks mastahg, excellent addition and before I had expected.

I have started building out a Fishing tag for Order Bot and I have incorporated this into it, however there is only one feature I feel is missing, the name of the item to be collected. When fishing, you don't know which fish you are getting in the window so I can't just set a single collectability value.

Looking forward to an update on this.

EDIT:

This is how i plan to use it

Code:
    [XmlRoot(IsNullable = true, Namespace = "")]
    [XmlElement("Collectable")]
    [XmlType(AnonymousType = true)]
    [Serializable]
    public class Collectable
    {
        [XmlAttribute("Name")]
        public string Name { get; set; }

        [XmlAttribute("Value")]
        public int UValue { get; set; }
        public uint Value { get { return Convert.ToUInt32(UValue); } }
    }

    [XmlElement("Fish")]
    public class FishTag : ProfileBehavior
    {
        [XmlElement("Collectables")]
        public List<Collectable> Collectables { get; set; }

....

    }


Code:
<Fish>
  <Collectables>
    <Collectable Name="Whilom Catfish" Value="459" />
    <Collectable Name="Warmwater Bichir" Value="683" />
  </Collectables>
</Fish>
 
Last edited:
I was thinking of something along the same lines. Its amazing to have it accept it but fills the inventory quick. Would be awesome to have it decline and take it as a normal item if its below the turnin threshold.
 
My fishing script does that, but currently can only use a single threshold instead of a threshold per fish.
 
Would it be possible to have a plugin that simply auto-accepts all of them?
You could put the Collectability value at 1 if you really wanted all the fish...but you would end up with plenty you can't turn in.
 
You could put the Collectability value at 1 if you really wanted all the fish...but you would end up with plenty you can't turn in.
I'm more thinking of ephemeral node accepting and crafting collectability accepting.
 
I'm sure I would find that more beneficial if I ever had more than 15 open inventory spaces. Maybe time to get SE $2 more per month again....
 
How would you go about adding the same functionality to crafting? I just need a codechunk that can click Yes/No for crafting collectables.
 
How would you go about adding the same functionality to crafting? I just need a codechunk that can click Yes/No for crafting collectables.

I haven't actually done any crafting with orderbot yet, but I plan to and I believe that this should do the trick.


Code:
await Coroutine.Wait(3000, () => SelectYesNoItem.CollectabilityValue > 0);
uint value = SelectYesNoItem.CollectabilityValue;

if (value >= 4000) // Change this number to the min collectability value.
{
    SelectYesNoItem.Yes();
}
else
{
    SelectYesNoItem.No();
}
 
I haven't actually done any crafting with orderbot yet, but I plan to and I believe that this should do the trick.


Code:
await Coroutine.Wait(3000, () => SelectYesNoItem.CollectabilityValue > 0);
uint value = SelectYesNoItem.CollectabilityValue;

if (value >= 4000) // Change this number to the min collectability value.
{
    SelectYesNoItem.Yes();
}
else
{
    SelectYesNoItem.No();
}


Nice, I'll give this a try when I start crafting for red scrips again.
 
Anyone any idea what could be causing this?

https://www.thebuddyforum.com/rebor...ectable-cockatrice-meatballs.html#post2026087

When at the end of the craft and the YesNo window opens it seem's when running the code to accept it doesn't hit yes. Nothing is shown in the log apart from the last craft action.

Edit -

Update

https://www.thebuddyforum.com/rebor...atrice-meatballs-post2026184.html#post2026184

Oh, I noticed that CraftingManager.AnimationLocked wasn't returning false when selectyesnoitem is open causing craftaction to wait forever for animationlocked to be false.

Either animationlocked needs to return false when selectyesnoitem is open or craftaction will have to properly finish when selectyesnoitem is open. That's something you'll have to bring up with mastahg.

In the meantime, try this in place of the last careful synthesis II:

Code:
<CodeChunk Name="CSIIAndAcceptCollectable">
    <=!=[=C=D=A=T=A=[
            if (await Buddy.Coroutines.Coroutine.Wait(5000, () => ff14bot.Managers.Actionmanager.CanCast(100069, null))) {
                ff14bot.Managers.Actionmanager.DoAction(100069, null);
                await Buddy.Coroutines.Coroutine.Wait(10000, () => CraftingManager.AnimationLocked);
                await Buddy.Coroutines.Coroutine.Wait(Timeout.Infinite, () => !CraftingManager.AnimationLocked || ff14bot.RemoteWindows.SelectYesNoItem.IsOpen);
                if (ff14bot.RemoteWindows.SelectYesNoItem.IsOpen) {
                    ff14bot.RemoteWindows.SelectYesNoItem.Yes();
                    await Buddy.Coroutines.Coroutine.Wait(10000, () => !ff14bot.RemoteWindows.SelectYesNoItem.IsOpen);
                    await Buddy.Coroutines.Coroutine.Wait(Timeout.Infinite, () => !CraftingManager.AnimationLocked);
                }
            }
]=]=>
</CodeChunk>

Looks like its one for Mastahg.
 
Last edited:
Back
Top