Добро пожаловать, Гость
Пожалуйста Вход или Регистрация.    Забыли пароль?

Multiclient Custom Algorithms
(0 чел.) 
ВнизСтраница: 123
Сообщения темы: Multiclient Custom Algorithms
#48323
Multiclient Custom Algorithms 7 г., 7 мес. назад Репутация: 16
Hey Slav,

Would you be willing to explain how multiclient functionality works? I'm working on a bot that requires very little activity on the part of the bot, and it would be a much smaller resource drain on my host to be able to run multiples inside a single VM and have them rotate between one another.

As I understand it, when a return value has "+" in front of it, that means it's a priority function and that client should not give control to the next client. Otherwise, I'm not sure how you manage the flow between multiple clients in the algorithm itself. My ultimate goal is to have each client log in, and then each one take a turn running through a loop that only takes a couple seconds before ceding control to the next client.

I would be grateful for your help! Thanks
AbbadonDespoiler
Expert Boarder
Постов: 375
graphgraph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
 
#48348
Re: Multiclient Custom Algorithms 7 г., 7 мес. назад Репутация: 833
There is a special function "Barrier" to collect all clients in the same position in algorithm and exit together. This may take time to execute algorithms normally. You may switch label of algorithm from another client (while sitting in barrier and waiting others). Use "SwitchLabel" function. '+' is used when fast functions are executed in a row to speed up whole process
Slav2
Администратор
Постов: 16971
graph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
Send logs to my mail slav2@list.ru with subject 'log files' to pass spam filter.
How to record logs in knowledge base
Contact me in telegram
 
#48391
Re: Multiclient Custom Algorithms 7 г., 7 мес. назад Репутация: 16
Hm, ok, so could you give an example of what that would look like, or show me where that's implemented in the Miner already?

If I'm understanding correctly, SwitchLabel is what lets you transition from one client to the next? I'm not sure I understand the purpose of the label switching.
AbbadonDespoiler
Expert Boarder
Постов: 375
graphgraph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
 
#48397
Re: Multiclient Custom Algorithms 7 г., 7 мес. назад Репутация: 833
SwitchLabel replaces the next algorithm label in different client to predefined label. Client will ignore its own algorithm setting:

If you need to assign label 200 as next in client 2 and call this from client 1 you should write:

Код:

00:  SwitchLabel(2;false;200)[10]
10:  "something to continue"

Slav2
Администратор
Постов: 16971
graph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
Send logs to my mail slav2@list.ru with subject 'log files' to pass spam filter.
How to record logs in knowledge base
Contact me in telegram
 
#48400
Re: Multiclient Custom Algorithms 7 г., 6 мес. назад Репутация: 16
Slav2 wrote:
SwitchLabel replaces the next algorithm label in different client to predefined label. Client will ignore its own algorithm setting:

If you need to assign label 200 as next in client 2 and call this from client 1 you should write:

Код:

00:  SwitchLabel(2;false;200)[10]
10:  "something to continue"



Ok, just so I understand the sequence of events: this will run Label 200 in Client 2, then come back and do Label 10 in Client 1? If I wanted Client 2 to execute several functions and THEN return to Client 1, how would I achieve that? Here's my sample algorithm:

;SampleBot
00: Goto()[10+]
01: StopClient(;true;true)[01]
02: CloseEveWindow()[01;01]
03: CloseEveWindow()[01;05]
05: StartEveAndLogin(true)[01;20;20;05]
10: StartEveAndLogin(true)[01;20;20;10]
20: StationSpaceCheck()[90;90;45;40+;90]
35: WarpingToStation()[90;45;35;40;38]
38: Unstuck()[90;38;03+;35]
40: DockingToStation(;[90;35+;40;40;45]
45: UnloadCargo()[90+;40;02+;46]
46: AFKLogOffTimers()[90+;46c+;10;47;47]
46c: Sleep(60000)[46c;46]
47: AutoHotkey(Script.ahk;30;False;False;EPVars.ini|EPSection|EPResult)[47a;46;48;48;48]
47a: AutoHotkey(Script.ahk;30;False;False;EPVars.ini|EPSection|EPResult)[03;46;48;48;48]
48: CheckLocal(;[03+;46+;46+]
90: ErrorHandler()[03+;03+;03+]
CL: Goto()[03]
EC: Goto()[10]
FM: Goto()[35+]
LO: Goto()[03]
WO: Goto()[35+]

What I would want this bot to do is to start up, run to 48 (CheckLocal) then pass it off to Client 2, run that up through 48, repeat for the total number of clients (3-5 total), then pass back to Client 1 at 46 so that it checks logoff timers and then loops through 47/47a and then to 48 (ideally), pass off to the next client at 46 to run through 48, pass off to next client to run 46 through 48, back to Client 1, repeat etc. Where would the SwitchLabel and Barrier be? Will I need an Ini file to keep track of current client number?
AbbadonDespoiler
Expert Boarder
Постов: 375
graphgraph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
 
#48405
Re: Multiclient Custom Algorithms 7 г., 6 мес. назад Репутация: 833
If you want to pass local state you may enable "Local Check Grouping". One bot may be a scout in adjacent system.

Slav2
Администратор
Постов: 16971
graph
Пользователь в оффлайне Кликните здесь, чтобы посмотреть профиль этого пользователя
Для добавления сообщений Вы должны зарегистрироваться или авторизоваться
Send logs to my mail slav2@list.ru with subject 'log files' to pass spam filter.
How to record logs in knowledge base
Contact me in telegram
 
ВверхСтраница: 123
Модераторы: Slav2
© Macro Laboratory 2025
Все права защищены!
Design by Ivan Kozyrin