[Статья] GHost++

Форум технической поддержки игроков и решения проблем, возникающих в процессе игры.

Сообщение Flame » 28 мар 2009, 23:40

Обновление сборки бота! Изображение

ЧИТАЕМ ВСЕ ДО КОНЦА!

В этом боте есть custome и autoconfig (заходим вот сюда GHost++ configurator.exe). Грамотно настроить сможет даже обычный юзер. Изображение
Манюал, как всегда, в папке с ботом и на английском.

Чуток команд, самых необходимых:

Во второй вкладе (надеюсь вы разберетесь):
!map (cfg карты которую хотим хостануть. Указывать просто name конфига мапы) потом !pub (имя игры) чтоб захостить публичную игру; для клоза !priv (game name). Без скобок (:

Цфг-шки к картам можно создавать через бота автоматически во вкладке maps.

Можно так же проделать все выше описанное через вкладки в боте.

Исследуйте все вкладки бота, но изменяйте только то, в чем уверены.

Основное положение:

Это приложение так же поможет вам хостить игры для машин подключенных локально.

Данная версия имеет графический интерфейс, что в свою очередь ОЧЕНЬ сильно облегчает работу с ботом.
В боте на самом деле может разобраться обычный юзер, НО без английского вы не сделаете и одного нормального шага. Не забудьте только rootadmin`a (себя, свой основной ник на сервере лолкара).
Так же в данной версии улучшена работа с бд и мускулем. Все описывать не буду. Тот человек, которому надо, сам разберется что и как. Но могу и помочь(если буду в хорошем духе Изображение ).
На крики о помощи в варике не реагирую, даже не старайтесь. Изображение

Для нормальной, совместной работы бота и варика проверьте порты. Если они будут одинаковы хоть где-то, то бот будет всех кикать.


Если хотите создать игру через бота, и потом зайти через варик в нее, то придется устанавливать loopback adapter.

P.S. После каждого изменения в настройках бота настоятельно рекомендую его перезапускать (exit, alt+f4, "закрыть приложение").

Просить о помощи можно тут, но при условии, что вы потратили больше часа на фикс своей проблемы с ботом. Обязательно предоставляйте логи бота (первая вкладка).
Good luck! Изображение

Q) Иногда я хочу хостить игры, чтобы играть одному, и когда я создаю вторую игру, я не могу не присоединиться! Я должен пробовать несколько раз, чтобы он начал работать. В чем дело?
А) Вы должны попробовать эти настройки:
bot_hostport = 6112
Порт админ игры(если вы используете его) = 6113
Wc3 порт = 6114

Q) Как я могу настроить Loopback адаптер?
А) Вы не должны его настраивать, если ваш маршрутизатор поддерживает NAT перенаправление и не блокирует NAT. Нужно проверить эти параметры в первую очередь. Для настройки Loopback адаптера, вам нужно установить Microsoft Loopback Adapter.
Руководство по настройке Loopback адаптера:

1) Найти соответствующий IP адрес
А) Если вы хотите присоединиться к игре, созданной вашим Ghost ботом. Записать свой IP адрес.
Б) Если вы хотите присоединиться к игре, хостящейся на компьютере в вашей локальной сети, узнайте IP адрес компьютера хоста
2) Перейдите на вновь созданный адаптер и нажмите правой кнопкой мыши на нем и выберите "Свойства".
3) Нажмите на Интернет-протокол (TCP / IP) и нажмите кнопку "Свойства".
4) Выберите Использовать следующий IP-адрес, и заполните IP адрес, который вы отметили в шаге 1.
Примечание: Если маска 255.0.0.0 не работает, попробуйте использовать 255.255.255.0
5) Нажмите кнопку ОК два раза.
Детальнее тут

Q) Unable to create game[ gamename ]. The currently loaded map config file is invalid.(Невозможно создать игру. Загруженный конфиг файл карты неверен).
А) Эта ошибка может возникнуть в следующих ситуациях:
Ghost не смог найти карту, и поэтому не смог создать значения конфиг файла. Ошибка может быть исправлена правкой имени файла в конфиге карты(map_path & map_localpath) или правкой пути к папке с картами в ghost.cfg(bot_mappath).
или
GHost не смог сгенерировать значения всех необходимых параметров. Возможно, что у вас нет всей необходимой информации в конфиге карты, либо значения некоторых параметров неверные и GHost не смог прочитать их правильно.
Просмотрите консоль или логи, когда пытаетесь загрузить карту, там должна быть указана проблема. На офф форуме есть гайды по правильному созданию конфигов карт.

Q) Ошибки "[TCPSOCKET] Closed By Remote Host" или "[GAME: gamename ] deleting player [ username ]: has lost the connection (connection closed by remote host)" показываются, когда я пытаюсь использовать Ghost++. Почему?
А) Эти ошибки могут всплывать в силу различных причин, так что во-первых нужно проверить, когда это произошло, и прочитать описание возможных причин.

1. Может быть временно запрещено battle.net сервером. Если вы можете войти в battle.net из Warcraft III на этом же реалме, то вы не забанены battle.net.
a. Убедитесь в том, чо вы не забанены на viewforum.php?f=105. Если вы забанены, то вам придется изменить свой внешний IP-адрес или подождать, пока этот запрет истечет. Запреты дляться от нескольких минут до нескольких дней.
2. Вы хостите карту, но другие игроки не могут зайти в игру:
a. Рекомендую Вам еще раз проверить настройки ghost.cfg, вероятно, что ваша проблема находится там. Дважды проверьте ваши значения bot_mappath и bnet_customexe(если таковые имеются).
b. Проверьте конфиг вашей карты, если она сделана в домашних условиях. Возможно ошибка там.
c. Проверьте порты, отключите файрвол или добавьте исключения. ТАкже настройте WC3 порт отличным от портов гхоста и админ игры.

Q) "[TCPSOCKET] error (recv) – ECONNABORTED"
А) Я предлагаю вам проверить ваш маршрутизатор, брандмауэр и/или программное обеспечение. Это также может произойти, если вы используете тот же аккаунт для Wc3, как и для бота.

Q) "[TCPSOCKET] error (send) - ECONNABORTED"
А) Я предлагаю вам почитать этот пост: http://forum.codelain.com/index.php?topic=3136.0

Q) Ошибка "lang_ ####", когда я использую команду. Что мне теперь делать?
А) Бот печатает эти Lang коды, когда существует проблема загрузки файла language.cfg, убедитесь, что ваш language.cfg правильный и находится в нужном месте(обычно корень GHost).

Q) "[TCPSOCKET] error (recv) - ECONNRESET"
А) Вы были отключены от сервера. Как правило, эта ошибка возникает в следующих случаях:
1. Если подключение к серверу battle.net безуспешно, ваш IP забанен (временно).
2. Если вы подключаетесь к серверу battle.net и вас отключает, то у вас неправильно настроен варден сервер, или он не обновлен. You should have received error code 3 before being disconnected if this were the case. Вы должны получить код ошибки 3 до отсоединения, если проблема в этом.
Последний раз редактировалось Flame 07 июл 2011, 22:36, всего редактировалось 10 раз(а).
Причина: Updated.
ИзображениеИзображение
Ex-Undigested

For this post the author Flame thanked: 2
at0m1k (16 ноя 2011, 17:53) • lovelove (01 янв 2012, 10:38)
Аватара пользователя
Flame
Просветитель
Просветитель
 
Автор темы
Сообщения: 3313
Зарегистрирован:
09 июл 2008, 13:44
Has thanked: 33 times
Have thanks: 40 times

Сообщение ____ROB____ » 29 янв 2011, 18:34

Скачивание

Скачиваем по ссылке бота (версия GHostOne1.7.266)
Изображение

Теперь нужно разархивировать, смотрим что получилось...
Изображение


Настройка

Перед тем как запустить бота нужно его настроить, ищем в папке Ghost.cfg, нашли?
Изображение

Здесь я укажу девять наиболее важных строк, без которых вы не зайдёте на сервер Alkar.net (все они находятся в ghost.cfg)

1. bot_war3path = (указываем место хранения самого WarCraft'a, или етих трёх файлов war3.exe, storm.dll, game.dll)
Пример: bot_war3path = C:\Program Files\Warcraft III\

2. bot_mapcfgpath = (место хранения файлок конфигурацый карт .cfg)
Пример: bot_mapcfgpath = mapcfgs\

3. bot_mappath = (указываем место хранения самих карт .w3g)
Пример: bot_mappath = c:\program files\Warcraft III\Maps\Download\

4. bnet_server = (вписываем сервер Alkar.net)
Пример: bnet_server = war3.alkar.net

5. bnet_username = (указываем акаунт вашего бота, заранее зарегистрированый на Alkar'e)
Пример: bnet_username = OMG-StatS

6. bnet_password = (пароль акаунта вашего бота)
Пример: bnet_password = **** (только маленькие буквы латиницей или цифры)

7. bnet_firstchannel = (указываем канал на котором бот будет размещатся при запуске)
Пример: bnet_firstchannel = ghost

8. bnet_rootadmin = (указываем Вашь игровой акаунт, или акаунт человека который будет иметь все права над ботом)
Пример: bnet_rootadmin = ____ROB____

9. Находим ети строки -
bnet_custom_war3version =
bnet_custom_exeversion =
bnet_custom_exeversionhash =
bnet_custom_passwordhashtype =


и просто заменяем на ниже указанные -
bnet_custom_war3version = 26
bnet_custom_exeversion = 1 0 26 1
bnet_custom_exeversionhash = 194 206 231 242
bnet_custom_passwordhashtype = pvpgn

+
lan_war3version = 25
replay_war3version = 25
buildnumber 6060







Запуск

Имеется два способа запуска бота

Первый:
C помощью графической оболочки, ищём значок с названием GHostOne.exe
Изображение

При удачной настройке бота, в первой вклдке Ghost Вы увидите такую надпись
Изображение


Второй
Без графической оболочки, ищем значок с названием GHost.exе
Изображение

При удачной настройке бота, Вы увидите такое черное окошко
Изображение

Изображение









Создаём конфиги для карт ( map.Cfg )
1. В папке с ботом находим значок GhostOne.exe.
Изображение


2. Теперь выбираем вкладку Maps
Изображение


3. Такс, теперь указываем путь к картам для которых мы будем делать конфиги (я указал путь к картам из папки Downloads)
Изображение


4. Во втором столбике у нас появился список с картами, выбираем карту, и нажимаем "Create map config"
Изображение

5. Создание конфига прошло успешно.
Изображение


ПС:
При создании конфига, бот должен находится на канале.

Конфиги для карт находятся в папке mapcfgs.


Если вы хотите создать доту с зрителями или судьями, заходим в конфиг карты и ещём вот ету строку:
Изображение

Автомод, в конфиге дописывем строку:
map_defaulthcl =
Пример: map_defaulthcl = sdsoul


В battle.net (локальный чат или в лс боту):
!acc [имя] [команда] [акк] доступ к админ коммандам, !acc список доступных комманд, !acc имя 1/0 - доступ ко всем/никаким коммандам
!addadmin <имя> добавить нового админа в базу для данного сервера
!addban <имя> [причина] добавить бан в базу для данного сервера
!announce <сек> <сообщение> установить сообщение обьявления (бот будет писать <сообщение> каждые <сек> секунд в лобби), используйте "off" для отключения
!autohostxx <m> <p> <n> аналог autohost но только для xxxx стран
!autohost <m> <p> <n> автоматически создавать <m> игр, автоматически стартовать когда наберётся <p> игроков , установить имя игры <n>, используйте "off" для отключения
!autohostg <m> <p> <n> автохост доступен только для garena + админы
!autostart <игроки> автоматически стартовать игру, когда наберётся определённое число игрков, используйте "off" для отключения
!ban псевдоним для !addban
!channel <имя> изменить battle.net канал
!checkadmin <имя> проверить является ли пользователь админом для данного сервера
!checkban <имя> проверить является ли пользователь забаненым для данного сервера
!close <число> ... закрыть слот
!closeall закрыть все открытые слоты
!countadmins отобразить число текущих админов для данного сервера
!countbans показать текущее число банов для данного сервера
!deladmin <имя> удалить админа с базы для данного сервера
!delban <имя> удалить бан с базы для всех серверов
!delfriend <name> удалить друга
!dlinfo [on/off] информация о текущих закачках
!dlinfotime <value> интервал в секундах перед сообщениями
!dlmax <value> максимальное число загрузок одновременно
!dltspeed <value> установить скорость загрузки (KB/s) доступную для игроков одновременно, если поставить 1024, 4 игрока по 256 каждый
!dlspeed <value> установить максимальную скорость загрузки (KB/s) доступную для одного игрока
!downloads включить/выключить загрузку карты
!dmaps динамический лист карт
!dload <nr> динамическая загрузка карты
!disable отключить создание новых игр
!enable включить создание новых игр
!end <число> окончить текущую игру (отключает каждого)
!endn закончить текущую игру, без счётчика
!ends остановить счётчик
!exit [force] выключить ghost++, опционально пишим [force] для пропуска проверок
!fadd <name> добавить друга
!fdel <name> удалить друга
!getclan обновить текущий лист клана
!getfriends обновить текущий лист друзей
!getgame <число> отобразить информацию о игре в процессе
!getgames отобразить информацию о всех играх в процессе
!hold <имя> ... зарезервировать слот для кого либо
!holds <name> <nr> ... зарезервировать определённый слот для кого либо
!hostsg <имя> создать сохранённую игру
!load <filename> загрузить фаил конфигурации (для изменения карты), оставьте пустым для просмотра текущей карты, ".cfg" автоматически добавляется в конец файла, писать его не нужно
!language перегрузить language.cfg
!loadsg <filename> загрузить сохранённую игру
!map <filename> псевдоним для !load
!loadl <filename> загрузить фаил конфигурации (для изменения карты), оставьте пустым для просмотра текущей карты, ".cfg" автоматически добавляется в конец файла, писать его не нужно
!mapl <filename> псевдоним для !load
!open <число> ... открыть слот
!openall открыть все закрытые слоты
!priv <имя> создать приватную игру
!privby <владелец> <имя> создать приватную игру для другого игрока (даёт <владелец> доступ админа к лобби и в самой игре)
!pub <имя> создать публичную игру
!pubby <владелец> <имя> создать публичную игру для другого игрока (даёт <владелец> доступ админа к лобби и в самой игре)
!pubdl <name> создать публичную игру только для скачивания карты, кикает игроков кто имеет карту, нету лимита лобби.
!quit [force] псевдоним для !exit
!reloadcfg перегрузить ghost.cfg
!say <текст> отправить <текст> на battle.net как чат комманду
!saygame <число> <текст> отправить <текст> для определённой игры в процессе
!saygames <текст> отправить <текст> во все игры
!sp разбросать игроков (принцип работы такой же как и у мода -sp в DotA картах)
!start [force] стартовать игру, опционально добавьте [force] для пропуска проверок
!startn стартовать игру сейчас! (без счётчика)
!stats [имя] отобразить базовую статистику игрока, опционально добавльте [имя] для отображения статистики другого игрока (может быть использовано НЕ админами)
!statsdota [имя] отобразить DotA статистику игрока, опционально добавьте [имя] для отображения статистики другого игрока (может быть использовано НЕ админами)
!swap <n1> <n2> поменять слоты
!top top10, просчитать в GHost One сначала
!top10 top10, просчитать в GHost One сначала
!unban псевдоним для !delban
!unhost завершить игру в лобби
!version отобразить информацию о версии ( может использовться НЕ админами)
!pubnxxxx [имя игры] для примера: !pubnbrru dota - запретить br ru страны
!pubxxxxxx [имя игры] для примера: !pubroes dota - только ro es страны
!verbose отобразить информацию о игрока который зашёл в игру и сразу же был кикнут




В лобби (Перед игрой):
!a псевдоним для !abort
!abort отменить счётчик
!acc [имя] [команда] [акк] доступ к админ коммандам, !acc список доступных комманд, !acc имя 1/0 - доступ ко всем/никаким коммандам
!addban <имя> <причина> добавить новый бан в базу (он пытается сделать частичное соответствие)
!announce <сек> <сообщение> установить анонс (бот будет отображать <сообщение> каждые <сек> ), оставьте пустым или "off" для отключения
!autostart <игроки> auto start the game when the specified number of players have joined, оставьте пустым или "off" для отключения auto start
!autosave <on/off> включить или выключить autosaving
!ban псевдоним для !addban
!проверить <имя> проверить a user's status (оставьте пустым to проверить your own status)
!checkban <имя> проверить является ли пользователь banned on any realm
!checkme проверить your own status (может быть использованно НЕ админами, отправляет приватное сообщение видимое только игроку)
!close <число> ... закрыть слот
!closeall закрыть все открытые слоты
!comp <слот> <скилл> создать компьютера в слоте <слот> со скилом <скилл> (скил - 0 для лёгкого, 1 нормальный, 2 сложный)
!compcolour <s> <c> изменить цвет компьютера в слоте <s> на <c> (c начинается с 1 до 12)
!comphandicap <s> <h> изменить хандикап компьютера в слоте <s> to <h> (h это 50, 60, 70, 80, 90, или 100)
!comprace <s> <r> изменить расу компьютера в слоте <s> to <r> (r это "human", "orc", "night elf", "undead", или "random")
!compteam <s> <t> изменить команду компьютера в слоте <s> to <t> (t начинается с 1 до # команд)
!dl <имя> псевдоним для !download
!download <имя> разрешить игроку начать загрузку карты (используется только для опциональной загрузки карты, ищет по частичному соответствию)
!from отобразит страну игрока
!hold <имя> ... зарезервировать место для когонибудь
!kick <имя> кикнуть игрока (ищет по частичному соответствию)
!latency <число> установить задержку (50-500), оставьте пустым to see current latency
!lock заблокировать игру, только владелец может использовать команды
!mute <имя> заблокировать чат игрока (ищет по частичному соответствию)
!open <число> ... открыть слот
!openall открыть все закрытые слоты
!owner [имя] зделать себя владельцом, опционально добавляем [имя] чтобы дать владельца комунибудь другому
!ping [число] пропинговать игроков, опционально добавляем [число] чтобы кикнуть игроков с пингом выше [число]
!priv <имя> пересоздать как приватная игра
!pub <имя> пересоздать как публичная игра
!refresh <on/off> включить или выключить refresh сообщения
!sendlan <ip> [port] отправить LAN пакет на IP адрес <ip> и порт [port], по умолчанию порт 6112 если не определён
!sp разбросать игроков
!start [force] начать игру, опционально добавляем [force] для пропуска проверок
!stats [имя] отобразить Базовую статистику игрока, опционально добавляем [имя] чтобы отобразить статистику для другого игрока (может быть использованно НЕ админами)
!statsdota [имя] отобразить DotA статистику игрока, опционально добавляем [имя] чтобы отобразить статистику для другого игрока (может быть использованно НЕ админами)
!swap <n1> <n2> поменять слоты
!synclimit <число> установить лимит синхронизации пакетов (10-10000), оставьте пустым для просмотра текущего лимита синхронизации
!unhost завершить игру
!unlock разблокировать игру
!unmute <имя> разблокировать чат игрока (ищет по частичному соответствию)
!version отобразить информацию о версии (может быть использованно НЕ админами, отправляет приватное сообщение видимое только игроку)
!virtualhost <имя> изменить виртуальное имя хоста
!votecancel отменить голосование
!votekick <имя> начать голосование за кик игрока (ищет по частичному соответствию, может быть использованно НЕ админами)
!yes зарегистрировать голос (может быть использованно НЕ админами)




В игре:
!addban <имя> <причина> добавить бан в базу (ищет по частичному соответствию)
!autosave <on/off> включить или выключить автосохранение
!ban псевдоним для !addban
!banlast <причина> забанить последнего ливера
!проверить <имя> проверить статус пользователя (оставьте пустым чтобы проверить ваш собственный статус)
!checkban <имя> проверить является ли пользователь забаненым на этом сервере
!checkme проверить проверить ваш статус (может быть использованно НЕ админами, отправляет приватное сообщение видимое только игроку)
!drop выкинуть всех лагающих игроков
!end заверщить игру (дисконект всех)
!from отобразить страну игрока
!kick <имя> кикнуть игрока (ищет по частичному соответствию)
!latency <число> установить задержку (50-500), оставьте пустым для просмотра текущей задержки
!lock заблокировать игру, только владелец может использовать команды
!mute <имя> заблокировать чат игрока (ищет по частичному соответствию)
!muteall заблокировать глобальный чат (дружеский и приватный чат будет работать)
!owner [имя] зделать себя владельцом игры, опционально добавляем [имя] to set game owner to someone else
!ping пропинговать игроков
!stats [имя] отобразить basic статистику игрока, опционально добавляем [имя] to отобразить статистику для другого игрока (может быть использованно НЕ админами)
!statsdota [имя] отобразить DotA статистику игрока, опционально добавляем [имя] to отобразить статистику для другого игрока (может быть использованно НЕ админами)
!synclimit <число> set sync limit for the lag screen (10-10000), оставьте пустым to see current sync limit
!unlock разблокировать игру
!unmute <имя> разблокировать чат игрока (ищет по частичному соответствию)
!unmuteall разблокировать глобальный чат
!version отобразить version information (может быть использованно НЕ админами, отправляет приватное сообщение видимое только игроку)
!votecancel отменить голосование
!votekick <имя> стартовать голосование за кик игрока (ищет по частичному соответствию, может быть использованно НЕ админами)
!yes зарегистрировать голос (может быть использованно НЕ админами)




В Лобби Админ игры:
!addadmin <имя> <realm> добавить админа в базу для определённого сервера (если определён в конфиге только один, использует его)
!autohost <m> <p> <n> автоматически создать <m> игр, авто старт когда <p> игроков присоединится, с именем <n>, используйте "off" для отключения auto hosting
!checkadmin <имя> <realm> проверить является ли пользователь админом для определённого сервера (if only one realm is defined in ghost.cfg it uses that realm instead)
!countadmins <realm> отобразить общее количество админов для определённого сервера (если определён в конфиге только один, использует егоstead)
!deladmin <имя> <realm> удалить админа из базы для определённого сервера (если определён в конфиге только один, использует егоstead)
!disable выключить создание новых игр
!enable включить создание новых игр
!end <число> завершить игру в процессе (дисконект всех)
!exit [force] закрыть ghost++, опционально добавляем [force] для пропуска проверок
!getgame <число> отобразить информацию о игре в процессе
!getgames отобразить информацию о всех играх
!hostsg <имя> создать сохранённую игру
!load <filename> загрузить фаил конфигурации карты , оставьте пустым для просмотра текущей карты - ".cfg" автоматически подставляется в конец файла
!loadsg <filename> загрузить сохранённую игру
!map <filename> псевдоним для !load
!password <p> логин (пароль установленный в ghost.cfg с admingame_password)
!priv <имя> создать приватную игру
!privby <владелец> <имя> создать приватную игру для другого игрока (даёт доступ <владелец> к админ коммандам в лобби и в игре )
!pub <имя> host публичная игра
!pubby <владелец> <имя> создать публичную игра для другого игрока (даёт доступ <владелец> к админ коммандам в лобби и в игре)
!quit [force] псевдоним для !exit
!saygame <число> <текст> отправить <текст> для определённой игры в процессе
!saygames <текст> отправить <текст> во все игры
!unhost завершить игру
Последний раз редактировалось ____ROB____ 04 дек 2011, 12:41, всего редактировалось 11 раз(а).
Причина: Updated.
www.xephu.net

For this post the author ____ROB____ thanked: 3
at0m1k (16 ноя 2011, 17:53) • lovelove (01 янв 2012, 10:38) • Yastreb.cn (18 ноя 2011, 10:04)
Аватара пользователя
____ROB____
Местный
Местный
 
Сообщения: 1349
Зарегистрирован:
07 окт 2010, 19:47
Has thanked: 95 times
Have thanks: 37 times


Вернуться в WC3: Техподдержка

Кто сейчас на конференции

Посетителей: 1, из них зарегистрированных: 0, скрытых: 0 и гостей: 1 (находятся на конференции)
Этот раздел просматривают: нет зарегистрированных пользователей и гости: 1