Настройка бота для Battle.net , Garena и PvPGN сервера.
1. Первый шаг Скачать GHostOne и распаковать
2. Настройка конфигов Конфиг для GHostOne (скопировать в свой):
Код
########################################################### # PLEASE EDIT CONFIG IN GHOST ONE UNDER GHOST OPTIONS TAB # ########################################################### ### Управление банами по ip: 0 = ничего не делать, 1 = кик, 2 = только оповещение(не кикать). bot_ipbanning = 1
### оповещение о бане в одну строку( = 0) (если возможно) или в две строки ( = 1) bot_twolinesbanannouncement = 1
### текст, который добавляется к версии bot_customversiontext =
### автоматически банить игроков, которые выходят во время отсчета начала игры bot_autobancountdown = 0
### автоматически банить игроков, которые выходят во время загрузки игры bot_autobangameloading = 1
### запрещенные страны при использовании автохоста bot_autohostdeniedcountries =
### разрешенные страны при использовании автохоста bot_autohostallowedcountries =
### UDP порт, по которому консоль общается с оболчкой GHost One GUI, по умолчанию 5868 udp_guiport = 5868
# в LAN/GArena показывать реальное количество игроков (текущее/общее) в игре, при использовании команды !pubg он автоматически включается lan_showrealslotcount = 1
# LIST OF SETTINGS NOT IN GHOST OPTIONS TAB #bot_language #bot_mapcfgpath #bot_savegamepath #bot_spoofchecks #bot_refreshmessages #bot_autolock #bot_autosave #bot_allowdownloads #bot_pingduringdownloads #bot_lcpings #bot_autokickping #bot_latency #bot_synclimit #bot_votekickallowed #bot_votekickpercentage #bot_udpconsole #bot_virtualhostname #udp_cmdbindip #udp_cmdspooftarget #admingame_password #db_sqlite3_file #bnet_holdfriends #bnet_holdclan
######################## # Actual Config Below # ########################
# путь к файлу логов и его название bot_log = log.txt
# показывать сообщение когда safe/admin/rootadmin/chieftain/shaman заходят на канал bot_channeljoingreets = 1
# админы могут удалять только те баны, которые сделали они bot_adminslimitedunban = 0
# Оповещение +1 и +2 (игроков осталось до фулла) в лобби (не используется при автохосте) bot_lobbyannounceunoccupied = 1
# автоматическая установка режима HCL(бот будет сам прописывать игровой мод) , основанная на названии игры(пример: -arso EU pros установит мод -arso)(только если определен параметр map_defaulthcl, пример: map_defaulthcl=ar). Установит пустой режим HCL если в названии игры не обнаружит мод bot_autohclfromgamename = 1
# включить молчанку игроку, который использовал запрещенные слова, на X секунд bot_censormute = 3 # также автоматически ставить молчанку админам bot_censormuteadmins = 0 # молчанка игроку на X секунд при первом нарушении bot_censormutefirstseconds = 60 # молчанка игроку на X секунд при втором нарушении bot_censormutesecondseconds = 180 # молчанка игроку на X секунд при 3 и более нарушениях bot_censormuteexcessiveseconds = 360
lan_war3version = 24
# Отключить алгоритм nagle (алгоритмы TCPIP могут снижать скорость и вызывать лаги в игре) - может улучшить latency tcp_nodelay = 1
# путь к вашему WC3TVRecorder, пример: c:\Program Files\waaaghTV Recorder\ wtv_path = C:\Program Files\WaaaghTV Recorder\ # использование WC3TVRecorder, "1", чтобы включить wtv_enabled = 0 # WaaaghTV Observer Name wtv_playername = Waaagh!TV
# для примера: RO, только этим странам разрешено подсоединяться к игре bot_allowedcountries = # для примера: RO, этим странам запрещено подсоединяться к игре bot_deniedcountries =
# ждать Х мс до отправки пакета среднего размера бнету, когда используется PVPGN bot_bnetpacketdelaymediumpvpgn = 2000 # ждать Х мс до отправки пакета большого размера бнету, когда используется PVPGN bot_bnetpacketdelaybigpvpgn = 2500 # ждать Х мс до отправки пакета среднего размера бнету(офф) bot_bnetpacketdelaymedium = 3200 # ждать Х мс до отправки пакета большого размера бнету(офф) bot_bnetpacketdelaybig = 4000
# Формула для расчета статистики # Разрешенные переменные: totgames, kills, deaths, assists, creepkills, creepdenies, neutralkills, # towerkills, raxkills, courierkills, wins, losses, killstotal, deathstotal, creepkillstotal, # creepdeniestotal,assiststotal, neutralkillstotal, towerkillstotal, raxkillstotal, courierkillstotal # Формула по умолчанию: # (((wins-losses)/totgames)+(kills-deaths+assists/2)+(creepkills/100+creepdenies/10+neutralkills/50)+(raxkills/6)+(towerkills/11)) # Альтернативная формула: # (((kills-deaths+assists*0.7)*0.6+towerkills*0.8+raxkills+creepkills*0.02+creepdenies*0.08+neutralkills*0.03+courierkills*0.04)*0.5+(wins/totgames*2)+(totgames*0.002))
# Счет будет высчитываться только для тех игроков, которые сыграли Х игр bot_scoremingames = 1
# Доступ владельца игры по умолчанию (используйте панель доступа чтобы сменить уровень доступа админов на ваше усмотрение и посмотреть коды доступа для этих команд) bot_owneraccess = 3965
# Доступ админов по умолчанию bot_adminaccess = 1903
# состояние игры для домашних игр bot_gamestateinhouse = 999
# автоматически банить только тех игроков, которые нарушают баланс команд(пример: игра 5-5. при 5-4 банить ливера, при 4-4 не банить, если этот параметр равен 1) bot_autobanteamdiffmax = 1
# Банить игроков, которые покинули игру за Х минут до конца игры bot_autobangameendmins = 0
# Банить игроков до Х минут игры bot_autobantimer = 0
# Банить всех ливеров вне зависимости от карты bot_autobanall = 0
# Автоматически банить первых Х ливеров bot_autobanfirstxleavers = 0
# бот автоматически пересоздаст игру с названием [название#номер] если прошло Х секунд с момента присоединения последнего игрока, 0=отключить bot_autorehostdelay = 120
# бот автоматически пересоздаст игру с названием [название#номер] если имя занято bot_rehostifnametaken = 1
# если счетчик игр превысит этот предел, то автоматически сбросится до 1. 0=отключить bot_maxhostcounter = 30
# эти слова будут запрещены в игре bot_censorwords = fuck idiot retarded dick cunt pussy asshole suck shit penis vagina
# load in game feature will be enabled for every map (if set to 1) bot_forceloadingame = 1
# после окончания игры при использовании мускула бот запустит update_dota_elo.exe (НЕ ИСПОЛЬЗОВАТЬ ВМЕСТЕ) bot_updatedotaeloaftergame = 0
# после окончания игры при использовании мускула бот пересчитает очки (score) (НЕ ИСПОЛЬЗОВАТЬ ВМЕСТЕ) bot_updatedotascoreaftergame = 0
# "1", если вы используете патч версии 1.23 или выше bot_patch23ornewer = 1
# "1", если используется патч 1.21 bot_patch21 = 0
# показывать счет каждого вошедшего игрока и игравшего на этом боте раньше bot_showscoresonjoin = 0
# установка значения bot_autohostmaximumgames > 0 приведет к автозапуску автохоста(извиняюсь за тавтологию) bot_autohostmaximumgames = 0 bot_autohostautostartplayers = 10 bot_autohostallowstart = 0 bot_autohostlocal = 0 bot_autohostowner = one bot_autohostmapcfg = map.cfg bot_autohostgamename = auto -sd EU pros
# при автохосте включает автобан игрокам нарушившим равновесие игры в картах с 2 командами. Не банит админов и главных админов. # 0 = off 1 = on bot_autoban = 0
# делать ли всех игроков, заходящих с локальной сети, алминами? bot_lanadmins = 0
# делать ли локальных игроков админами автоматически (например игроков с гарены) bot_localadmins = 0
# языковой файл
bot_language = language.cfg
### укажите путь к папке warcraft ### эта папка должна содержать следующие файлы: war3.exe, storm.dll и game.dll ### для того, чтобы бот автоматически высчитывал значения для карт, в этой папке также должен находиться файл War3Patch.mpq, из которого бот попытается вытащить "Scripts\common.j" and "Scripts\blizzard.j" при загрузке, и положит их в bot_mapcfgpath (который определен в этом конфиге ниже)
bot_war3path =
### порт, на котором GHost++ будет хостить игры в battle.net (должен отличаться от стандартного порта warcraft и порта админ игры(прописан ниже))
bot_hostport = 6113
### максимальное количество игр, которые могут хоститься одновременно
bot_maxgames = 5
### триггер, используемый в игре (триггер battle.net определен ниже в этом конфиге) ### Триггер - специальный символ, который позволяет боту определять, что данное предложение после триггера должно обработаться как команда(если такая существует)
bot_commandtrigger = !
### путь к директории, в которой лежат ваш конфиги для карт ### эта папка также может содержать файлы common.j и blizzard.j (извленченные из War3Patch.mpq) ### Файлы common.j and blizzard.j требуются только для автоматического расчета map_crc ваших карт
bot_mapcfgpath = mapcfgs\
### путь к директории, в которой лежат ваши сохраненные игры
bot_savegamepath = savegames\
### путь к директории, в которой лежат ваши карты ### GHost++ не требует наличия карт, но если он имеет доступ к ним, то может отправить их игрокам и автоматически расчитать значения большинства карт ### GHost++ ищет карту в директориях, прописанных в следующих параметрах [bot_mappath + map_localpath] (map_localpath определено в каждом конфиге карты)
bot_mappath =
### сохранять реплеи или нет
bot_savereplays = 0
### директория для сохранения реплеев
bot_replaypath = replays\
### версия Warcraft 3, для которой бот будет сохранять реплеи
replay_war3version = 24
### номер билда Warcraft 3 для сохранения реплеев ### patch 1.23: war3version 23, buildnumber 6058 ### patch 1.24: war3version 24, buildnumber 6059 ### patch 1.24b: war3version 24, buildnumber 6059
replay_buildnumber = 6059
### проводить автоматическую проверку на подмену ника или нет ### 0 отключает проверку ### 1 производит проверку автоматически для всех игроков ### 2 производит проверку только для потенциальных администраторов.
bot_spoofchecks = 2
### Требуется ли для игры автоматическая проверка ника или нет ? ### Данная настройка контролируется нужно-ли перед началом игры игрокам пройти проверку на подмену ника ### если данная настройка включена (1) то для начала игры, если не включена автоматическая проверка игроки должны будут отправить боту команду вида /r !spoofcheck ### иначе игрок не прошедший проверку через 20 секунд будет выкинут. ### Если же автоматическая проверка включена, то бот автоматически проверит и толлько после проверки всех игроков начнет игру.
bot_requirespoofchecks = 0
### Отображать ли сообщение об обновлении игры
bot_refreshmessages = 0
### блокировать ли автоматически игру когда подключился владелец игры (только админ и владелец смогут вводить команды боту)
bot_autolock = 0
### проводить ли автоматическое сохранение игры при отключении игры
bot_autosave = 0
### разрешить скачивание карты или нет ### 0 запрещает скачивание карты ### 1 разрешает скачивание карты ### 2 разрешает скачивание карты по указке администратора (администратор должен прописать !download или !dl )
bot_allowdownloads = 1
### Пинговать ли игроков при закачке игроком карты ? ### если да то при скачивании игроки пинговатся не будут
bot_pingduringdownloads = 0
# кикать забаненных игроков с канала bot_kickbannedfromchannel = 0
# банить на канале забаненных игроков bot_banbannedfromchannel = 0
# ### использовать ли стиль пинга LC? (делит актуальный пинг на 2)
bot_lcpings = 1
### Автоматический кик игроков пинг которых выше
bot_autokickping = 200
### игровая задержка ( у Battle.net по умолчанию стоит 250 в LAN играх 100) ### также может быть установлена для каждой игры через !latency команду (в пределах от 50 до максимума в 500)
bot_latency = 110
### максимальное число пакетов которое не дошло до игрока прежде чем появится лагскрин ( экран после которого игрока выкинет из игры) ### ниже 8.0 версии GHost++ не имел лагскрина и эта опция имела максимальное значения ### также значение можно изменить во время игры используя !synclimit команду (в пределах от 10 до максимума в 10000)
bot_synclimit = 90
# whether votekicks are allowed or not
bot_votekickallowed = 1
### процент голосов нужный для срабатывания votekick ### предпологается что игрок стартовавший Голосование проголосовал ДА и если он стартовал Голосование опять то предпологается что он проголосовал НЕТ ### формула для расчета количества необходимых голосов votes_needed = ceil( ( num_players - 1 ) * bot_votekickpercentage / 100 ) ### это значит что он будет округлять нужное число голосов в высшую сторону ### если вы установите 100 это требует 2/3, 3/4, 4/5, 5/6, 6/7, 7/8, 8/9, 9/10, 10/11, и 11/12 голосов для результата ### если вы установите 90 это требует 2/3, 3/4, 4/5, 5/6, 6/7, 7/8, 8/9, 9/10, 9/11, и 10/12 голосов для результата ### если вы установите 80 это требует 2/3, 3/4, 4/5, 4/6, 5/7, 6/8, 7/9, 8/10, 8/11, и 9/12 голосов для результата ### если вы установите 70 это требует 2/3, 3/4, 3/5, 4/6, 5/7, 5/8, 6/9, 7/10, 7/11, и 8/12 голосов для результата ### если вы установите 60 это требует 2/3, 2/4, 3/5, 3/6, 4/7, 5/8, 5/9, 6/10, 6/11, и 7/12 голосов для результата
bot_votekickpercentage = 100
# "1" - на время игры бот добавляет создателя в друзья и удаляет его после окончания игры bot_addcreatorasfriendonhost = 0
# показывать команды, направленные боту, в лобби/игре или нет bot_relaychatcommands = 1
# показывать информацию о текущих загрузках карт или нет(скорость, процент загрузки) bot_showdownloadsinfo = 0
# интервал между сообщениями о загрузках bot_showdownloadsinfotime = 5
# общая максимальная скорость загрузки bot_totaldownloadspeed = 1024
# макс скорость загрузки дял каждого игрока bot_clientdownloadspeed = 512
# иницировать таймер завершения игры если количество игроков меньше указанного - 0 выключить завершение игры bot_gameoverminplayers = 0
# иницировать таймер завершения игры если процент оставшихся игроков составляет меньше указанного - 0 выключить завершение игры bot_gameoverminpercent = 0
# иницировать таймер завершения игры если разница между количеством игроков разных команд больше указанного - 0 выключить завершение игры bot_gameovermaxteamdifference = 0
# перенаправление вывода консоли на порт UDP bot_udpconsole = 1
# резервировать ли игроков из прошлой игры? bot_holdplayersforrmk = 1
# включить ли не админ комманды? 1 включить, 0 отключить bot_nonadmincommands = 1
# требовать ли от рутадминов проверку ника или нет bot_rootadminsspoofcheck = 0
# требовать ли от рутадминов проверку ника или нет bot_adminsspoofcheck = 0
# если 1, забаненные игроки будут оповещены о бане bot_notifybannedplayers = 0
# бот будет искать внешний ip при загрузке. отключите если хотите играть только по сети bot_findexternalip = 1
# впишите свой внешний IP если не хотите, чтобы бот его искал при загрузке bot_externalip =
# использовать ли альтернативный сайт для поиска внешнего IP? (при наличии > 30 сек задержки при запуске бота) bot_altfindip = 0
# Рутадмины(вписывать через пробел: userone usertwo userthree) bot_rootadmins =
# UDP пароль бота bot_udppassword =
# показывать ли сообщения автоматического удаления игроков забаненных или из запрещенных стран bot_verbose = 0
# виртуальное имя бота bot_virtualhostname = |cFF483D8BHost
# игнорировать лаг скрин в первые X секунд игры bot_dropvotetime = 30
# автоматически закрывает игровую прихожую если не подключается необходимое количество игроков или админ за указаное кол. минут bot_lobbytimelimit = 10
# udp ip udp_cmdbindip = 0.0.0.0
# udp port udp_cmdport = 6969
# udp spoof target udp_cmdspooftarget =
############################### # ADMIN GAME CONFIGURATION # ###############################
### Синоним сервера для отображения в логах и на консоли бота
bnet_serveralias =
### ваш Warcraft III: Reign of Chaos CD key ### внимание если вы играете на оффициальном сервере, то вы не сможете одновременно с ботом подключатся к сервреру по одному и тому-же ключу.
bnet_cdkeyroc = FFFFFFFFFFFFFFFFFFFFFFFFFF
### ваш Warcraft III: The Frozen Throne CD key ### внимание если вы играете на оффициальном сервере, то вы не сможете одновременно с ботом подключатся к сервреру по одному и тому-же ключу.
bnet_cdkeytft = FFFFFFFFFFFFFFFFFFFFFFFFFF
### Ваш логин подключения к батл нет
bnet_username =
### пароль для входа на батл нет
bnet_password =
### исходный канал на который подключится ваш бот после входа на сервер ### в данном месте убедительно хотелось бы , чтобы не указывали общие каналы, ибо срачь получается страшный, смотреть тошно(Comment by Tsukasa-mixer)
bnet_firstchannel =
### Ник Самого главного админа )
bnet_rootadmin =
### тригер распознавания команд для данного battle.net сервера
bnet_commandtrigger = !
### добавлять ли ваших друзей в сейф лист(даст вашим друзьям заходить, даже если в лобби набран фул) ?
bnet_holdfriends = 1
### добавлять ли ваших соклановцев в сейф лист(даст вашим друзьям заходить, даже если в лобби набран фул) ?
bnet_holdclan = 1
### позволить ли игрокам(не админам) использовать некоторые команды, такие как !stats and !statsdota в этом соединении батл нет?
bnet_publiccommands = 1
### BNLS сервер (подробности в readme.txt) ### вам необходим реальный BNLS сервер еслы вы хотите подключится к оффициальному battle.net серверу , в противном случае вас выкинут через 2 минуты
### вы должны отредактировать данную секцию для подключения к PvPGN сервреру ### спрашивайте информацию у администрации =) PvPGN сервера =) - если не забанят раньше.(comment by Tsukasa-mixer)
2.1. Настраиваем Зайдите в папку languages. Найдите файл russian.cfg и скопируйте его в папку с ботом. Откройте свой ghost.cfg. Находим в своем конфиге и пишем свои значения:
Код
- bot_language = russian.cfg
- bot_war3path = <здесь пишем путь к папке с игрой Warcraft ; Только латиницей(!) >
- bot_mappath = <здесь пишем путь к папке с картами. Обычно это Maps/Download, Только латиницей(!) >
- bot_rootadmins = <ники главных админов, которые будут иметь исключительные права, для всех серверов батлы. И свой ник на гарене, чтобы бот признавал вас админом >
Остальные значения можно оставить по умолчанию.
2.2. Настраиваем GHostOne для Battle.NET и PvPGN Вновь открываем конфиг :
Обратить внимание: Если вы играете не на Гарене, то нужно указывать не свой логин-пароль, а создать новый, иначе бота будет выкидывать, когда вы заходите и наоборот.
bnet_firstchannel = <канал, на который бот будет заходить после входа на сервер>
bnet_rootadmin = <ник рут админа, у которого будут исключительные права, для этого сервера>
При такой настройке , при игре на Гарене бот не будет спамить в комнате.
2.3. Заканчиваем настройку Запускаем GHostOne. Идем во вкладку Options(не GHost Options). Находим поле для пути к гарене. Прописываем там путь к гарене. (например: C:\Program Files\Garena\ ). Ставим галочку Hook GArena on GHost StartUp. Запускаем гарену. Запускаем бота.
Если все настроено правильно, бот подключится к батле, затем бот подключится к гарене с сообщением :
Код
[ GHost One 12:32] Attempting to hook GArena... [ GHost One 12:32] GArena hooked!
Подпись: Если надо перезалить мои файлы пишите в комментарии файла или в ЛС