Да ладно. Вот мне, как человеку, который не шарит в графике, понравилось.
Красиво , post: 155930, member: 12202"]Сильвану Ветрокрылую зачем?) Чтобы ты спросил
До просмотра видео искренне надеялся на красивую реализацию. Алгоритм: Клиент: 1) функция отправки какого-то из пакетов (на видео - медитация) изменена под функцию считывания текста из чата и отправки 4х байт на сервер. 2) Функция получения цвета ника персонажа заменена на получение цвета из определённого массива (заранее сохранено) 3) Сам цвет получается не сразу, а при первой попытке считать цвет определённого игрока (если нет, обращение к серверу) - реализация или игровым трафиком, или стандартным. Сервер: 1) Хранит где-то массив игроков и соответствующих каждому из них цветов и отправляет по требованию. Бонус: 1) проверка существования итема с большой вероятностью идёт в клиенте, что обходится обычной подменой айди. 2) с такой реализацией можно даже не трогать ядро, а затронуть всего 2 клиентских функции. P.S. Кто купит, сообщите в лс. Зайду, гляну
Чтобы эмулятор стал актуален, нужно реализовать как минимум скиллы, а это очень и очень долгая работа, ибо их более 1к штук. Чтобы добиться успехов, нужна целая команда. Судя по тому, сколько раз предпринимались попытки написания эмулятора, мало шансов набрать людей сейчас, а работать поодиночке - глупо. Только если побаловаться. P.S. И еще, вопрос такой: а зачем эмулятор? Сделать свои плюшки не получится, ибо 95% проблем в клиенте. Сделать эмуль 1.5.2 (благо клиент есть) не получится (точнее за это время успеют создать 1.5.5 и слить до 1.5.3). Была бы гарантия, что сборки не сольют, тогда был бы смысл в эмуляторе
Ведь успех любого успешного сервера зависит именно не от рекламы (скажем есть проект с мощной рекламой, но защита у проекта на нуле, есть дыры и ошибки, отсутствие новых наработок, нет никакой качественной и стабильной игры у людей.) Решили создать сервер PW, чисто классика (1.3.6-1.4.4) Не сходится. Кстати, а в чем выражается "оптимизация"? На другой движок игру переписываете? И я бы на вашем месте подробнее описал уникальные нововведения, чтобы заинтересовать потенциального спонсора
Лог обрезан, ничего не ясно
Кому торг передавал тоже палит? Хорошая штука Только действия из ГМ-панели, забыл написать
[IMG] Многие не знают, что все действия, которые совершает GM пишутся в отдельный лог GMCommandLog.db по пути Server\element\userdata\GMLog\%GM_ID%\%DATE%. Но пишутся логи не прямым текстом, а в бинарном виде. GMLogParser - софтина, которая преобразует бинарный файл в текстовое красивое описание. [IMG] [IMG] Использование: 1) перетащить лог-файл на программу или 2) запустить её через консоль с первым параметром - именем лог-файла. Язык: C++/C Скачать: исходники во вложениях, программа в /Release/ UPDATE: Прошло два года с создания темы, но тут я внезапно нашёл свои сорцы и ужаснулся. Решил переписать. Язык: C++ Исходники: https://github.com/Smertig/GMLogParser2 Скачать: 32-bit, 64-bit P.S. Первая шара на плюсах, с удовольствием выслушаю замечания. P.S.S. Спасибо @DesmondHume за разбор даты
Александр Сергеевич, Вы заколебали флудить на всех порталах, которые так или иначе связаны по тематике с пв.
Писал когда-то парсер, позже поищу софт и/или структуру
Мигание - одно из свойств контрола. Если нет в XML, значит в ехешнике прописано. Ваш кэп.
Для начала, надо менять стат пения, а не крита. Но по-моему там ещё много проблем возникнет, не помню
Почему отсчитывать? Если ты знаешь точное время действия бафа, неужели нельзя какой нибудь таймер прицепить? это есть в аддонах для вов Для самых умных повторяю - время бафов и дебафов НЕ хранится в клиенте. Хранится только id.
Если не в клиенте, то выходит можно реализовать сохранения бафов - когда выходишь из игры персонажем?) Ну да. А как это относится к теме?
Время бафов и дебафов не хранится в клиенте. Отсчитывать после получения - большая погрешность (около секунды). Передавать в клиент инфу с сервера - лишние заморочки. Писать таймер поверх клиентского рендера на асме - долго и неудобно. Внедряться в рендер A3D-движка - извращение
[IMG]
При продаже дело не только в цене, но и в покупателе. Я бы не стал кому попало продавать защиту/разработки даже с привязкой
Копать дамп клиента бессмысленно, отладочной информации нет.
Подскажу с бинарными операциями: если привязка - это какая-то маска (но не её отсутствие), к примеру mask = 0x80, то ставится она с помощью proc_type |= mask; // C or ..., mask // asm Чтобы сделать отключение привязки, нужно поменять соответственно на proc_type &= N; // C and ..., N // asm где N = 0xFFFFFFFF - mask = ~mask - битовая инверсия N для 0x80 = 0xFFFFFF7F
Причем тут 65536? В функции дропа вещи при смерти явно видно: [IMG] UPDATE: ошибся, наоборот, 0х400 отвечает за возможность дропа итема
Имена участников (разделяйте запятой).