avatar_RadeoN

Таблица OffExp для MU Online и SQL Server - настройка для MU online

Автор RadeoN, 2015 Янв. 11, 00:55

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] mu onlinesql serveroffexp

RadeoN

Привет, какая таблица показывает какие игроки находится в OffExp ?

типа как таблица MEMB_STAT > ConnectStat "1"

SaneaMD

нету такой, эта фишка в гс'е только.

wizik

#2
чево? при оффексп MEMB_STAT > ConnectStat "1" всегда будет. отдельно чтобы была таблица оффексперов надо кодить dataserver + gameserver.


хотя нет! в stored процедурах есть функция WZ_CONNECT_MEMB или типо того, но надо бы при уходе в оффексп она срабатывала и писало в столбец MEMB_STAT > offexp '1'.  а при процедуре WZ_DISCONNECT_MEMB писало в этот столбец 0 дополнительно к MEMB_STAT > ConnectStat "0".


вопрос в том, что говорит (JoinServer или GS) ДатаСерверу запустить процедуру WZ_CONNECT_MEMB.

WZ_CONNECT_MEMB вот ее начало:




проще всего, это добавлять к имени сервера напимер. Скажем у вас имя сервера: MoyServSuperKrut. Добавить туда символы + '+ O' -  то есть будет MoyServSuperKrut + O.

далее найти в коде ГСа ( если там есть  ) обращение к дата серву, чтобы он выполнил процедуру WZ_CONNECT_MEMB. Скопировать это обращение в функцию инициализации оффекспа в ГСе добавить к названию сервера  '+ O'.

То есть в итоге будет у вас процедура WZ_CONNECT_MEMB в переменную @ServerName:
1) получать 'MoyServSuperKrut' если игрок просто присоединился.
2) получать 'MoyServSuperKrut + O'

Далее редактируем процедуру:

IF в названии серва нету '+ O' то выполнять WZ_CONNECT_MEMB как раньше

ELSE выполнять новый кусок WZ_CONNECT_MEMB, в котором в колонку MEMB_STAT > offexp пишется '1'.

Напоминаю при работе WZ_DISCONNECT_MEMB надо изменить строку:

UPDATE MEMB_STAT set ConnectStat = @ConnectStat, DisConnectTM = getdate(), Offexp = 0
WHERE memb___id = @memb___id


ЗЫ это конечно кастыль, но там не придется менять ничего, а только добавить чтобы при уходе в оффексп срабатывала функция WZ_CONNECT_MEMB и в эту ф-и скармливалось нужно название серва.

ЗЫ2 Знак + можно заменить на тот который не будете использовать в названии и на который sql не ругается

3577679

можете  выложить скрипт для сорцов - офф ехп 3.1 реед

wizik

3577679 надо сорцы смотреть. Прежде всего найдите как запускается процедура WZ_DISCONNECT_MEMB . и что происходит в ГСе, по идее он должен чтото отправлять из кода, файл DSProtocol.cpp или похожий.


3577679

джоин сервер я вилел с авто дистоконектом , если ты это имеешь ввиду

Похожие темы (5)