Очень круто, очень дешёво. Может даже когда-нибудь обращусь :)
Инт, можно и дальше ковырять и ковырять ПВ клиент. Но уже проще самому написать. В ПВ нет кросплатформенности. Даже пв на мобилке (которая в открытом доступе в плей маркете) изменён движок. И там уже не Аngelica 3.0, это можно сказать новая игра. А тут сам кузнец. Можно ковырять PW, а можно заниматься чем-то другим - каждому своё. Мой посыл был в другом - те, кто приходит в геймдев (да и опытные люди тоже), не умеют грамотно рассчитывать необходимое для разработки время, из-за чего предполагают, что со всеми этими навороченными движками (Unity/UE/CryEngine) они очень быстро запилят супер-крутую игрульку на уровне PW. Мне лишь жаль, что иногда достаточно умные люди тратят безумное количество времени, получая взамен лишь некоторое количество опыта, но ни копейки прибыли, забрасывая идею через пару лет работы. Не мне из раза в раз их переубеждать, но иногда сложно пройти мимо.
[ATTACH]
На сколько я знаю нет вообще ни какой разницы к чему ты подключаешься на серверной части, не знаю как в PW, но в большинстве современных игр ограничение мобильной платформы это графика, т.е. режем полигоны, режем текстуры, чтобы не переполнять графическую память и на выходе получаем уже мобильную версию. Со всем остальным просчетом легко справляются и комп и мобильник. Дело не только в мощностях. "Мобильный игрок" в терминах китайцев имеет некоторые привилегии по сравнению с обычными игроками, но также имеет и ограничения. Это сделано с целью оптимизации и баланса между ПК и телефоном.
К слову про мобилки - серверная часть PW поддерживает подключение мобильных клиентов с ограниченным функционалом как минимум с версии 1.5.1 (ниже не изучал). Легко проверить - запустить ядро с параметром ms01 вместо gs01 и кое-что поправить в конфигах других сервисов.
А в предыдущих версиях вся логика по отображению зашита в elementclient.exe и её корректировка требует затрат времени и сил
Графика и перерисовка существующих окон - это отлично, но что насчёт создания нового? Полноценное окошко с нуля под требования - наличие такой-то кнопки, таких-то лейблов и прочее. что конкретно тебя интересует? Конкретики никакой нет. Есть множество разработок, который можно было бы реализовать, но нет желания пилить интерфейс самому. Сложность - высокая. Например, было бы круто перенести интерфейс подобного окна из WoW, или попроще (с учётом этого). Под созданием окна я имел в виду не тяп-ляп, две кнопки и один чекбокс, а аналоги существующих окон в PW и даже круче. Примеров масса, можно посмотреть на любые другие онлайн игры.
Графика и перерисовка существующих окон - это отлично, но что насчёт создания нового? Полноценное окошко с нуля под требования - наличие такой-то кнопки, таких-то лейблов и прочее.
Первое правило бойцовского клуба - мир сам по себе не падает. Второе правило бойцовского клуба - мир вообще никогда сам по себе не падает. Мой наивный друг
Успехов в новых делах
Скорее всего не найдёшь таких. Ограничение на смайлы - не просто число в клиенте, а скорее статический массив фиксированной длины, изменение максимальной ёмкости которого потребует модификации клиентского кода (не простая замена 30 на 100) в большом количестве мест. А с учетом отсутствия отладочной информации, поиск этих мест может затянуться на месяцы, преподнося новые и новые баги. Это не супер-сложно, скорее долго, нудно, скучно и того не стоит.
осторожно, возможный спойлер После этой фразы ожидал увидеть спойлер к уже вышедшему фильму, поэтому спокойно стал читать дальше. Вот спасибо (angry) --- По теме: реализовать можно всё :)
2^31-1 - максимальная ёмкость. Я бы не стал рисковать и удваивать, зная любовь китайцев к перемешиванию uint32/int32. Короче, бери 2 миллиарда - не ошибёшься. А можно совсем вырезать понижение запаса хирки - будет вечная :)
Причём тут 1.5.1? На 1.4.6 понятия "стиль оружия" ещё не существовало, как и слота для него.
Она есть в ядре, плохо ищешь. Отталкивайся от gplayer_imp::CheckVipService
Не понимаю в чем проблема взять из клиента алгоритм шифрования/дешифрования и использовать его в своем боте. Ни в чём. Об этом и написано курсивом в конце первого поста. Данный фикс как минимум отключает все шаровые разработки, сводя на нет усилия всяких школьников, которые скачали "дудосерку" и выпендриваются. А вообще, это не панацея, нужно прикладывать дополнительные усилия (протекторы, вшивание ключей, изменение алгоритмов шифрования и прочее).
шо це за велосипеди То есть, этот самокат избавляет от головной опухоли всех ОГГ? Да, этот гироскутер спасает от OOG. Но когда злые разработчики с той стороны баррикад подрастут и внедрят шифрование в своих ботов, нужно будет включать мозги. (Ну вот, пока писал пост, Алекс уже ответил за меня)
Смею предположить, что не зайдет на сервер. Всё верно. Без данного файла или с неверными ключами/алгоритмом шифрования в файле зайти на аккаунт будет нельзя. HINT: если скрыть этот файл от глаз пользователя, защита станет ещё лучше!
<Клиент> В папке /element создаём файл dbserver.conf c содержимым: [GameClient] type = tcp isec = 2 iseckey = baxixD0awqydOtrxjxr8uhzaslmnqh osec = 2 oseckey = baxiykbpn3fxLqpsdpiodI4iazqjdl И перезапускаем клиент. <Сервер> В файле glinkd/gamesys.conf в каждой секции GLinkServer* дописываем следующее: isec = 2 iseckey = baxiykbpn3fxLqpsdpiodI4iazqjdl osec = 2 oseckey = baxixD0awqydOtrxjxr8uhzaslmnqh И перезапускаем GLink. *sec + *seckey = тип шифрования + ключ шифрования, где * - это i (input) или o (output) То, что на сервере i, в клиенте - o и наоборот. Ключ можно подкорректировать под себя, я скопипастил откуда-то. Что означает каждая цифра в алгоритмах шифрования - не скажу. Вот когда всех OOG ботов перепишут под этот фикс, тогда и узнаете. Выражаю благодарности: Китайцам (隨機漢字), которые скомпилировали клиент с поддержкой шифрования. Гоше (deadraky), за предположение о наличии шифрования. Себе (int 3), за умение пользоваться IDA. Всем лучи добра! P.S. Использование "в лоб" спасает лишь от шарового софта, не поддерживающего шифрование. Для надежности советую изменить ключи шифрования и упаковать файл с ними получше. И помните - не бывает идеальной защиты.
А есть описание как самому ручками делать ? См. мою подпись
Имена участников (разделяйте запятой).