Здравствуйте, в процессе ничегонеделанья у меня возникла "гениальная" мысль поэксперементировать не с байтами в файле, а со значениями аж в памяти процесса. Исходные данные: - некий процесс (не будем ходить далеко да около, процесс, естественно, связан с одним из игровых демонов PW) - желание получить (вывести на экран) значение по определенному BaseAdress из процесса - желание заменить это значение на какое-либо свое - ОС Ubuntu 12.04/Ubuntu 10.04 Мои наработки: - неким чудом я смог прочитать значение из памяти [IMG] - не меньшим чудом мне удалось заместо прочитанного записать другое значение [IMG] Проблемы, которые возникли по ходу дела: - имелись 2 сервера: 1. грубо говоря "рабочий" сервер с онлайном, состоящим из меня и меня (Ubuntu 12.04) 2. "теоретический" сервер, который существует только для создания нужного мне процесса (Ubuntu 10.04) - проблем с чтением данных из процесса особо не возникало (gdb - хороший помощник) - началось веселье, когда я менял значение на свое: процесс (на "рабочем" сервере) через некоторый период времени отправлял меня в долгое путешествие в гуголЪ, чтобы я искал ответ, почему процесс не выходит из состояния трассировки, хотя команда продолжать нормальное выполнение была ему дана - на "теоретическом" сервере такой проблемы не возникло, все хорошо читается и записывается, не вызывая проблем Мои предположения по поводу "зависания" процесса: - в PW как-то хитропопо реализована проверка на изменение данных в процессе (при чем данные проверяются тогда, когда процесс заставляют выполнять какие-либо действия извне - игроки), что после этого он крашится - естественно, радиус кривизны моих рук Ах да, всю эту байду я накалякал с помощью системного вызова ptrace() Прошу направить меня в нужное русло, дабы я мог продолжать терроризировать гуголЪ в поисках ответов, потому что на данный момент у меня кончились даже вопросы.
Здрасте, хочу предоставить к Вашему вниманию следующее чудо моего говнокодинга. Программист (да и человек) я еще не опытный, поэтому с удовольствием выслушаю критику с вашей стороны. Для чего: предназначена для смены значений разного типа (на данный момент int32 & float) по заданным в конфиге смещениям (оффсетам/offsets). Что делает: 1. Создает в директории с самой программой текстовый файлик с конфигурацией следующего вида: [IMG] 2. Далее этот конфиг в самой программе можно открыть и, не пользуясь другими программами, сменить значение в файле по выбранному смещению. Скриншоты: [IMG] [IMG] До новых встреч(party) Downoload: https://www.dropbox.com/s/hsj2768vp8ye6gw/OffsetChanger.EXE
Еще раз здравствуйте, уважаемые форумчане. На сей раз я подготовил вам более занимательный вопрос: никоим образом не хочет коннектиться читать персонажей из базы в ЛК от MorzE. Суть вот в чем - не выводит список персонажей на аккаунте, хотя сам аккаунт читает правильно. Соответственно ничего не отправляет на почту, не читает xml, и т.д. Как я пытался вывернуться: В файлах самого ЛК данные пути к персонажам прописаны так, как это выглядело бы, если на сервере установлен iWeb, но заместо iWeb'a имеется в наличии pwAdmin by Ronny1982. При моих тщетных попытках заменить эти пути на аналогичные пути pwAdmin'a мне выдавалась все та же дуля.
Здравствуйте, уважаемые форумчане. Возникла следующая проблема с ТВ (сборка от MorzE, файлы ТВ не менял): ставки запускаются и срабатывают так, как надо, но когда дело доходит до самого ТВ, то оно не срабатывает. Не запускаются сами территории ТВ, также не выдается сообщение о начале того или иного ТВ в сист. чате. Думал, что если запустить территории вручную, то ТВ сработает, но как оказалось - факир был пьян, и фокус не удался. Прошу разъяснения/пояснения как и где копать для исправления данной проблемы. (Гугл не предлагать. Искал, видел много чего сомнительного, поэтому не стал пробовать.) И если не сложно, не откажусь от рабочих файлов ТВ (gdeliveryd, domain.sev, domain.data).
Имена участников (разделяйте запятой).