EXP Ratio API

Hey,

I’m currently playing around with measurements for the fatigue system.
I know you can use EXP ratio in the condition feature, but I was wondering if it’s possible to use it in the python API, so I could write a plugin, that handles the stuff.

If it’s not currently available in the API, any chance to make it available?

1 Like

@stylo455

How’s it going? :call_me_hand:

First, I wish to ask you what u meant about “measurements for the fatigue system” and “…handles the stuff” what kind stuff are there to handle?

I’m currently playing around with measurements for the fatigue system.
I know you can use EXP ratio in the condition feature, but I was wondering if it’s possible to use it in the python API, so I could write a plugin, that handles the stuff.

You can try make a function on your own plugin to set local variable like vExpRatio. Then use conditions to trigger that function that changes vExpRatio to able you do your “stuff”.

It’s interesting. Explain more about the measurements you’re talking about.

Best regards

Baby Dancing GIF

Hey man,

thanks for your response.

Regarding the measurements for the fatigue system, I was mainly talking about the options “Return/disconnect” in the Protection->Return tab and about various combinations in the Conditions tab such as “if Botting && Exp Ratio < 100 then Return & Disconnect”, something like this.

But these options are far from perfect.

For the first option (Return/Disconnect), when you get a random DC, your timer for the minutes until the forced DC, will reset, and you’ll continue botting even with purple/grey (50%/0% Exp) fatigue bar (unless you stop it with the option in Protection->Misc. This will also not take into consideration the daily reset from the server itself. Let’s say reset is at 5 pm you started botting at 2pm and set the timer to 200min, your bot will force a DC, despite having nearly full blue bar (100% Exp).

For the second option, it’s a nuisance to create the “perfect” condition, especially, if you have to consider the daily reset, varying timezones of devices and with varying queue times of the servers you have to weigh if it’s worth forcing a DC now, rather than just waiting for the reset, i.e. you have 1h until reset and have purple bar, but the queue times on your particular server are 1,5h, so you would essentially lose 1,5h of botting time for no merit, when compared to a server with 10min queue time where you just lose 10min.

I hope my intentions are now clear.

And regarding handling the stuff, essentially, writing a script that takes various stuff into consideration such as:

  • botting status (tracing/botting)
  • current EXP ratio (need API for it)
  • time left with current EXP ratio (need API for it)
  • online time (this affects the how much is refilled AFAIK, maybe someone can clarify)
  • reset time (not sure how often, or if it was ever changed, if so, need API, otherwise can be hardcoded)

Btw. I’m not asking anyone to do the plugin, I will do it myself and publish it, just need the APIs.

@Ryan Any chance there will be an API for Exp ratio?

Sure, I’ll add it to the get_character_data API as exp_ratio.

1 Like

@Ryan tested the API, what I’m getting is long numbers, not sure how to use them.

Account 1: 4124778590896128000
Account 2: 5276355418552008704

Is it also possible to get the remaining fatigue timer, as well, as this estimated queue waiting time (see here Silkroad Online Server Capacity - M3 Stats). Based on these 2 information, it would be possible to measure if it’s worth for reconnecting or not :slight_smile:

They should be floats but maybe it’s not being sent to Python correctly so I’ll have to fix it.

@Ryan Yea, I imagined them being floats, tried to parse it, but the result also was weird, a really long number with exponent