Run multiple bots from the same .exe — различия между версиями

Материал из Руководство по OpenKore
Перейти к: навигация, поиск
м (промежуточный результат)
м
Строка 74: Строка 74:
 
==Выбор интерфейса==
 
==Выбор интерфейса==
  
This command line allows you to specify which interface to use at startup:
+
Следующий аргумент позволяет выбрать желаемый интерфейс, внешний вид:
  
*--interface=module
+
*--interface=модуль
module is the name of the Perl module for the interface. Check your src\Interface folder for available interface modules.
+
где модуль - это название модуля на языке Perl, который отвечает за интерфейс пользователя. Загляните в папку src\Interface, лежащие там подпапки - это и есть модули, название которых нужно указывать в данном аргументе.
Example: if you want to use the console interface when you run wxstart.exe, put
 
  
*--interface=Console
+
Предположим, что вы запускаете бота при помощи файла wxstart.exe, но вам бы хотелось увидеть обычную текстовую консоль. Тогда надо отдать следующую команду:
Note: If you are using the compiled Perl interpreter (e.g. start.exe) you must ensure that the application supports the interface you want to use. For example, wxstart.exe is for Wx, vxstart.exe for Vx, and so on. You can use the "Console" interface using any interpreter.
+
wxstart.exe --interface=Console
  
Usage:
+
Обратите внимание, что если вы используете интерпретатор языка Perl как скомпилированный exe-файл (например start.exe, wxstart.exe vxstart.exe и т.п.), то надо сначала убедиться, что данное приложение может отображать выбранный интерфейс. Например wxstart.exe - для Wx, vxstart.exe - для Vx и так далее. Консольный интерфейс "Console" можно вызвать из любого интерпретатора.
  
So to use the options just put them into your shortcut. Example:
+
=== Пример ===
 +
 
 +
Итак, предположим, что у вас есть три персонажа, которые должны работать из одной единственной копии OpenKore. Путь это будут мечник, лучник и ако. Тогда вам потребуется три ярлыка или cmd-файла со следующими командами:
  
 
  D:\Kore\start.exe --control=swordsman\control --logs=swordsman\logs
 
  D:\Kore\start.exe --control=swordsman\control --logs=swordsman\logs
 +
D:\Kore\start.exe --control=archer\control --logs=archer\logs
 +
D:\Kore\start.exe --control=aco\control --logs=aco\logs
  
Just make shortcuts like these, each for a different bot settings folder, and you're done. All you really need is control and logs, so I use this with my own bots.
+
Таким образом у вас одна папка с OpenKore и три папки с конфигами под трёх персонажей. Не смотря на то, что мы выше разобрали множество аргументов командной строки, в реальности достаточно лишь двух: <code>--control</code> и <code>--logs</code>.
 
 
Original Post by hakore [http://bibian.ath.cx/openkore/viewtopic.php?t=10329]. which is based on a post by Joseph
 
  
If you have any problems, please post in the forums.
+
Данная статья восходит к посту от hakore, см. [http://bibian.ath.cx/openkore/viewtopic.php?t=10329 ссылку], который сам основан на посте Joseph.

Версия 16:23, 16 августа 2023

Информация на этой странице относится только к MSWin32 платформам.

Введение

Если вы запускаете несколько ботов, то было бы неплохо иметь всего одну папку с OpenKore, а не отдельную копию программы для каждого персонажа. Таким образом можно будет уделить больше времени ботоводству, а не заниматься обновлениями и настройкой каждого экземпляра OpenKore.

Для этого придётся запускать OpenKore с аргументами командной строки. Как один из вариантов - можно насоздавать ярлыков на OpenKore, а потом зайти в их свойства и прописать там нужные аргументы, о которых мы поговорим ниже.

Командная строка

Командная строка - это текстовое поле в приведённом ниже снимке. В нём записан путь к исполняемому файлу, после которого можно написать несколько аргументов. Таким образом можно на старте программы передать ей некие данные.

Command Line

В данном случае OpenKore будет загружать настроечные файлы из указанной папки или файла.

Папки целиком

Давайте рассмотрим аргументы, которые занимаются перенаправлением папок. Все аргументы можно посмотреть запустив OpenKore с параметром --help.

  • --control=папка

путь до новой папки control. Допустим, что настройки лежат в папке D:\Kore\swordsman\control, тогда:

D:\Kore\start.exe --control=swordsman\control
  • --tables=папка

путь до новой папки с таблицами. Допустим, что они лежат в папке D:\Kore\swordsman\tables, тогда:

D:\Kore\start.exe --control=swordsman\tables
  • --logs=папка

путь до папки с логами. Допустим, что они лежат в папке D:\Kore\swordsman\logs, тогда:

D:\Kore\start.exe --control=swordsman\logs
  • --plugins=папка

путь до папки с плагинами. Допустим, что они лежат D:\Kore\swordsman\plugins, тогда:

D:\Kore\start.exe --control=swordsman\plugins
  • --fields=папка

путь до папки с локациями. Допустим, что они лежат в папке D:\Kore\swordsman\fields, тогда:

D:\Kore\start.exe --control=swordsman\fields

Отдельные файлы

Кроме того есть аргументы для отдельных файлов:

  • --config=path\file

путь до файла config.txt, например D:\Kore\control\config_1.txt:

D:\Kore\start.exe --config=control\config_1.txt
  • --mon_control=path\file

путь до файла mon_control.txt, например D:\Kore\control\mon_control_2.txt:

D:\Kore\start.exe --mon_control=control\mon_control_2.txt
  • --items_control=path\file

путь до файла items_control.txt, например D:\Kore\control\items_control_0.txt:

D:\Kore\start.exe --items_control=control\items_control_0.txt
  • --pickupitems=path\file

путь до файла pickupitems.txt, например D:\Kore\control\pickupitems_all.txt:

D:\Kore\start.exe --pickupitems=control\pickupitems_all.txt
  • --chat=path\file

путь до файла chat.txt, например D:\Kore\control\chat_7_25.txt:

D:\Kore\start.exe --chat=control\chat_7_25.txt
  • --shop=path\file

путь до файла shop.txt, например D:\Kore\control\shop_merch1.txt:

D:\Kore\start.exe --shop=control\shop_merch1.txt
  • --monsters=path\file

путь до файла monsters.txt, например D:\Kore\control\monsters_iz_dun.txt:

D:\Kore\start.exe --monsters=control\monsters_iz_dun.txt
  • --items=path\file

путь до файла items.txt, например D:\Kore\control\items_in_sphinx.txt:

 D:\Kore\start.exe --items=control\items_in_sphinx.txt

Выбор интерфейса

Следующий аргумент позволяет выбрать желаемый интерфейс, внешний вид:

  • --interface=модуль

где модуль - это название модуля на языке Perl, который отвечает за интерфейс пользователя. Загляните в папку src\Interface, лежащие там подпапки - это и есть модули, название которых нужно указывать в данном аргументе.

Предположим, что вы запускаете бота при помощи файла wxstart.exe, но вам бы хотелось увидеть обычную текстовую консоль. Тогда надо отдать следующую команду:

wxstart.exe --interface=Console

Обратите внимание, что если вы используете интерпретатор языка Perl как скомпилированный exe-файл (например start.exe, wxstart.exe vxstart.exe и т.п.), то надо сначала убедиться, что данное приложение может отображать выбранный интерфейс. Например wxstart.exe - для Wx, vxstart.exe - для Vx и так далее. Консольный интерфейс "Console" можно вызвать из любого интерпретатора.

Пример

Итак, предположим, что у вас есть три персонажа, которые должны работать из одной единственной копии OpenKore. Путь это будут мечник, лучник и ако. Тогда вам потребуется три ярлыка или cmd-файла со следующими командами:

D:\Kore\start.exe --control=swordsman\control --logs=swordsman\logs
D:\Kore\start.exe --control=archer\control --logs=archer\logs
D:\Kore\start.exe --control=aco\control --logs=aco\logs

Таким образом у вас одна папка с OpenKore и три папки с конфигами под трёх персонажей. Не смотря на то, что мы выше разобрали множество аргументов командной строки, в реальности достаточно лишь двух: --control и --logs.

Данная статья восходит к посту от hakore, см. ссылку, который сам основан на посте Joseph.