Пример работы межсервера:
Итак у нас есть 2 сервера и мы хотим объединить их для проведения межсерверных ивентов или просто для развлечения игроков между разных серверов
Мы имеем:
Далее нужно поставить на всех сервер разные Zoneid, допустим поставим так:
Список файлов в которых нужно поменять Zoneid на всех 3х серверах:
У игровых серверов:
У центрального:
И не забудьте поменять ключи!
Еще у центрального нужно поменять в /home/gamedbd/gamesys.conf 2 параметра:
Осталось только поменять serverlist.txt в клиенте и можно заходить:
Вся соль тут в &2 который и указывает что это межсервер и делает этот пункт невидимым в клиенте при выборе сервера, соответственно нужно указать правильные Zoneid серверов которые там указаны.
Есть 2 способа входа на межсервера:
Итак у нас есть 2 сервера и мы хотим объединить их для проведения межсерверных ивентов или просто для развлечения игроков между разных серверов
Мы имеем:
- Сервер #1 192.168.0.99
- Сервер #2 192.168.0.11
- Да, для межсерва нужен отдельный третий сервер, по факту весь межсервер состоит в том, что вас перекидывает на отдельный сервер на который просто так зайти нельзя. У него адрес будет 192.168.0.18
Далее нужно поставить на всех сервер разные Zoneid, допустим поставим так:
- 192.168.0.99 Zoneid = 2
- 192.168.0.11 Zoneid = 3
- 192.168.0.18 Zoneid = 4
Список файлов в которых нужно поменять Zoneid на всех 3х серверах:
- /home/gamedbd/gamesys.conf
- /home/gdeliveryd/gamesys.conf
- /home/gamedbd/gamesys.conf is_central_db
- /home/gdeliveryd/gamesys.conf is_central_ds
- /home/gfactiond/gamesys.conf is_central_faction
У игровых серверов:
Код:
[CentralDeliveryClient]
type = tcp
port = 29101
address = 192.168.0.18
so_sndbuf = 16384
so_rcvbuf = 16384
ibuffermax = 1048576
obuffermax = 1048576
tcp_nodelay = 0
accumulate = 268435456
isec = 2
iseckey = 05LHIMfOML0zWUb4avEqKdlWgx85XF
osec = 2
oseckey = Nx7Qibjs0L6mGm29Vsfc0LGCtku4fV
Код:
[CentralDeliveryServer]
type = tcp
port = 29101
address = 0.0.0.0
so_sndbuf = 16384
so_rcvbuf = 16384
ibuffermax = 1048576
obuffermax = 1048576
tcp_nodelay = 0
listen_backlog = 10
accumulate = 268435456
isec = 2
iseckey = Nx7Qibjs0L6mGm29Vsfc0LGCtku4fV
osec = 2
oseckey = 05LHIMfOML0zWUb4avEqKdlWgx85XF
accepted_zone_list = 2:3
Еще у центрального нужно поменять в /home/gamedbd/gamesys.conf 2 параметра:
Код:
accepted_zone_list=2:3
cross_zone_pos=-476:337:609,548:337:609,-476:337:-415,548:337:-415
- accepted_zone_list - это список Zoneid серверов который будут объеденные, пишутся через двоеточие
- cross_zone_pos - это координаты места где вы появитесь в локации is42, по дефолту все сервера появляются в разных кусках карты (по факту эта карта разделена горой на 4 одинаковые части)
Осталось только поменять serverlist.txt в клиенте и можно заходить:
Код:
RUPW
Server1 29000:192.168.0.99 2
Server2 29000:192.168.0.11 3
Cross 29000:192.168.0.18 4 &2
Есть 2 способа входа на межсервера:
- Через гм панель, но по неизвестной мне причине ставится таймер и тебя кидает назад через 5 сек
- Через нпс входа в битву династий "Командир Хэлянь", только для этого надо иметь 100 лвл и ад или рай.
- Всегда запускайте сначала межсервер и ждите его полной прогрузки, а потом остальные сервера
- Если вы в первый раз запустили централ сервер и после изменения конфигов у вас жалуется на игровую базу то сделайте вайп
- На межсервере обязательно должна быть запущена is42!
- Что бы работал гм нужно в phpmyadmin дать его командой call addGM(ID, Zoneid сервера), то же самое и с голдой нужно поменять в запросе на Zoneid сервера
- На 1.5.3 npcgen is42 пустой, во вложениях есть нормальный
- Если на межсервере остануться персы и вы его выключите то на них больше нельзя будет зайти, пока вы не исправите их xml)
- Межсерверный чат
- В межсервере можно запустить любую локу и делать в ней что угодно, по сути это отдельный сервер только в нем есть ряд ограничний, но вы можете запустить на нем мир и перейти в него через d 8888.
- Префиксы у ников, если вы заметили то в префиксах написан Zoneid сервера с которого пришел человек. Можно поменять на слово, поддерживаются даже русские буквы, но только 2 символа. Для этого нужно отредактировать файл /home/gamedbd/serverlist.sev , редактор можно найти нажав на этот текст