Больше похоже на проблемы с gs, это вполне может быть из-за дата файлов, путей, квестов и пр.
С таким подходом научиться чему-то будет сложно. На подобные мелочи гораздо проще найти ответ именно в мануалах.
Остряк :) Как ни странно, это я знаю К чему тут остряк не понимаю, если ты не можешь нагуглить элементарные вещи - я скинул ссылки, на поиск которых ушло секунд 10-15, гайдов очень много, особенно про такие вещи как "unsigned int" http://cppstudio.com/post/271/
1. http://www.php.su/functions/?pack, также советую почитать https://ru.wikipedia.org/wiki/Порядок_байтов т.к. в пвшных пакетах используется один порядок байт, а в октетах вещей - другой 2. Структура пакета GMListOnlineUser приведенная выше правильная 3. В handler ID аккаунта, с которого начинать поиск, что в cond не смотрел (если интересно - копание деливери поможет)
Может он неправильно формируется? Например, меня смущает что идет порядок: 1,1,id вместо id,1,1 Посмотрев на код выше, практически на 100% уверен что неправильно, как минимум потому, что в структуре типы разные, а пакуется все как N*, как я уже писал в другой теме, начинать стоит с разработки класса для работы с бинарными данными, а потом формировать пакет строго по структуре, а не лепить конструкции из того, чего не понимаете в надежде, что это сработает.
Этот пакет не вернет определенного юзера, он вернет 16 или 32 (точно не помню) персонажей онлайн, начиная от ID аккаунта, указанного в параметрах. Если в этом списке будет персонаж из нужного аккаунта - значит он онлайн.
GMListOnlineUser
GetRoleBase
а если он тот же старый который прописан в gs в елике сделает просто под другим ид думаю тоже чудит не чего не должно ,на шмоте будут под 1 ид на камне под другим Так работать не будет, под каждый айди в ядре прописана своя функция, поменяешь в gs айди - все статы со старым id автоматически станут нерабочими и на новых и на существующих вещах.
какая проблема этот же бонус создать под другим ид и не каких переклученей не будет! Проблема всего лишь в добавлении этого бонуса в gs, я думаю для ТС это будет непосильная задача.
Возможно конфиги деливери / геймдб/ гфакшн
Тип параметра Handle (как и всех остальных) известен из структуры - дальше постарайся побольше разбираться сам, а не сразу задавать вопросы.
практически во всех таблицах ключ - это id нужного ресурса (персонаж, клан, аккаунт и т.д.), но т.к. в качестве key пакету нужен октет - формировать его нужно по всем правилам - cuint длинна октета, а дальше сами данные (id). Например: WriteByte(4); - размер инта WriteUInt(FactionID); - тело октета
Ответ содержится в вопросе - достаточно указать ключ в параметрах запроса.
Ранее уже писали структуру type = struct GMember { unsigned int rid; char role; } type = struct GFactionInfo { unsigned int fid; Octets name; char level; GMember master; GetFactionDetail::GMemberVector member; Octets announce; Octets sysinfo; } Octets тоже по сути массив, из байт или символов.
зачем мастер в цикле вектора если он и так один? не понял суть вопроса
Насчет factionname не изучал, я использую таблицу factioninfo, там все что надо есть.
ну на боевом 777 даю только тем файлам или папкам, который точно требуют этих прав. Если честно, подобные права нужны единицам файлов на игровом сервере (и то в большинстве случаев можно обойтись сменой владельца).
Из этого следует, что chown -R www-data /home/gamedbd вместо home - подставь свой путь, команду эту выполнять из консоли под рутом. Потом пробуй получить через веб скрипт нужные данные
Я просто сталкивался с этой проблемой когда делал функцию получения списка кланов для ЛК на 1.3.6. И понял, что эта затея провальная, т.к. стоит запустить геймдб от рута (а это на рабочем сервере в 99,9% случаев будет делаться постоянно), как он тут же меняет все права и владельца файлов базы данных, делая их недоступными для запуска от веб юзера.
Имена участников (разделяйте запятой).