-
Постов
289 -
Зарегистрирован
-
Победитель дней
22
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные srg91
-
-
Интересно
А можешь записать видео (вместе с инкогнито)? И если возможно скажи версию браузера, попробую повторить.
-
1 minute ago, Garik66 said:
Не работает.
А ты можешь попробовать залогиниться в режиме Incognito (обычно Ctrl+Shift+N) и попробовать еще раз?
Чтобы посмотреть, что кеш или куки не влияют.
-
Всем привет.
Мы возвренули догожданную кнопку "Offtop".
Теперь она находится на панели, между знаком "Спойлер" и "Codesnippet":
Выглядит оно следующим образом (как и раньше может содержать другие контейнеры):
QuoteТебе нужно сделать следующее:
Ребята, вы крутые!!!!
Если данная кнопка у вас не отображается или панель выглядит по другому, то почистите кеш и куки браузера.
Конструктивная критика приветствуется.
-
7 minutes ago, keng said:
Или кто-нибудь, у кого прав нет, попробует это сделать раньше меня.
Мне не удалось (если я всё правильно сделал):
Spoiler> git push origin develop repository access denied. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.repository access denied. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. > git st ## develop...origin/develop [ahead 1] > git remote show origin * remote origin Fetch URL: git@bitbucket.org:MasterGH/lua-plugin-ce-aa-maker.git Push URL: git@bitbucket.org:MasterGH/lua-plugin-ce-aa-maker.git HEAD branch: master Remote branches: develop tracked master tracked Local branches configured for 'git pull': develop merges with remote develop master merges with remote master Local refs configured for 'git push': develop pushes to develop (fast-forwardable) master pushes to master (up to date)
-
49 minutes ago, MasterGH said:
C# я учил для работы с базами данных.
Спасибо большое за развернутый ответ, очень интересно.
21 minutes ago, Razi said:То есть для Python
Да, есть PyCharm Community Edition от JetBrains. Есть конечно еще и всякие PyScripter, но я отдаю предпочтение PyCharm )
Ну а вообще "тру посоны" пишут на vim / emacs
-
13 minutes ago, MasterGH said:
То-то я смотрю Lua скрипты пишешь
ага, скриптовые языки, в чем-то схожи, удобно )
к слову о регулярках, есть хорошая книжка - Джеффри Фридл - Регулярные выражения (Mastering Regular Expressions).
Она небольшая, в целом о теории регулярок, но не слишком углуб ляясь. После нее понимаешь как ими мыслить, становится попроще
К слову, @MasterGH, если можно задать нескромный вопрос - а как ты изучал C#? Особенно в разрезе с Unity?
-
6 hours ago, what228 said:
COBOL
SpoilerИ чтобы не оффтопить - я пишу на Python, он действительно довольно прост (устроился на работу прочитав небольшой гайд по языку :D). Самостоятельно в детстве изучал Delphi, очень удобно рисовать формочки, возможно он тоже подойдет как некое начало. Хотя особой разницы в рисовании формочек между Borland C++ и Borland Delphi (тогда еще Borland) не заметил, без понимания "просто в коде точки сменились на ->" (только потом узнаешь про указатели, разименование и т.д.). Сейчас понемного штрудирую C#.
Мне кажется нужно начинать с того, что даст вообще понимание процесса, так сказать направит процесс мышления в нужную сторону. Но это конечно просто мысли, я сам не особо разбираюсь в процессе обучения.
Just now, Razi said:НА языке Python можно писать приложения с GUI
Можно, есть библиотеки, но мне кажется он под это всё таки не очень заточен, чаще вижу связку Web-морда + бекенд.
-
Я только предположу, но в целом, если там вся игра на Lua, то скорее всего тебе нужен следующий урок Garik66:
SpoilerЕще я думаю есть вариант взять LuaState и дальше через lua красиво воздействовать на все объекты игры.
Ну и можно просто скомпилить добавив нужные себе функции
- 1
-
6 minutes ago, uhx said:
Ибо 9A требует адрес в операнде
ну ptr же, точно еще раз поправил. моя тоже не уметь читать справочники, судя по всему ))
-
8 minutes ago, uhx said:
Хрень в том что
Благодарю, посмотрел внимательнее, действительно Похоже тут нужен 9A, подправил сообщение выше.
Либо да, вычислять относительно
-
1 hour ago, Trix said:
ли это делается?
Мне кажется, что слегка не так. Возможно тут лучше подскажет @uhx.
У тебя точно функция находится по адресу 0xff5de8e6?
Я предполагаю, что тебе нужно через какой-нибудь EnumProcessModules (никогда не писал такого, поэтому просто предполагаю) найти адрес модуля gta-vc.exe, после к этому числу прибавить 0xAE8F0 и получившееся число записывать после call (0xFF XX XX XX XX).
Либо найдя точно местоположение функции (только если ты делаешь для себя и тебе хочется удостовериться в результате) через CE найти правильный адрес (будет что-то типа 0x12345678 и записать его как ты и делаешь - 0xFF 0x78 0x56 0x34 0x12.
- 1
-
7 minutes ago, partoftheworlD said:
Плюс в статье уже все есть
спасибо, как раз об этом писал )
42 minutes ago, Trix said:Найти функцию, как у вас
Похоже и правда нет. Это не сравнение, а запись пробела вместо конечного символа. Похоже действительно недавно появилась. В целом да, по другому наверное только мотать до кода, в GTA3 я кажется только так и делал.
43 minutes ago, Trix said:В общем, а если есть сам адрес функции, могу ли я обратно узнать кто его вызывает?
Можешь, как написали выше. Но я так понимаю в твоем случае тебе это не нужно же? Я так понимаю ты хочешь просто вызвать эту функцию из своего проекта?
Если так - в своем проекте ты можешь искать функцию через маску байтов по типу aobscan или, если сложно, то ты можешь просто взять смещение модуля 'gta-vc.exe', прибавить к нему смещение функции (те самые +AE7C0 в моем случае) и делать call по этому адресу. Но смещение не будет работать на других версиях игры.
Поправьте, пожалуйста, если не прав.
-
1 hour ago, Trix said:
Автор, почему именно такой адрес?
Привет. Если внимать читательнее - мы выходим на адрес функции через ввод чит-кода.Как только введеный чит-код совпадает с одним из списка - в строку ввода чит-кода записывается завершающий символ и вызывается нужная нам функция (её можно определить по передаваемому параметру A2).
Собственно тебе нужно выйти на следующие инструкции, там же ты и найдешь адрес функции:
SpoilerЕсли тебе нужно найти саму функцию в игре, но ты не хочешь ориентироваться на адрес модуля - провались внутрь самой функции (ПКМ на call - далее Follow) и через aobscan найди её в игре, после так же вызывай через call.
1 hour ago, Trix said:Почему номер машины кладется в стек
Увы, под руками сейчас нет игры, но если ты провалишься в функцию, что увидишь, что она берет данные из стека и записывает их в esi.
По типу mov esi, [esp+4]
-
29 minutes ago, partoftheworlD said:
Ага, нарежь видео по кадрам и выложи эти сотни тысяч скринов сюда.
Одну минуту...
ffmpeg -i moy_urok_nomer_2.mp4 -f image2 kadr-%07d.png
-
Привет. А почему не вызов функции через call?
Я в целом писал недавно про спавн машин в GTA Vice City через вызов чит-функции, возможно это поможет:
-
On 4/30/2017 at 9:27 PM, Xipho said:
ВАЖНО
Из всех Activity пропали операции по типу "Подписался", "Лайкнул", и т.д.
Это так и задумано и у всех ли так?
зы: еще напомню про то, что у подписи "Город" не хватает пробела
-
6 hours ago, uhx said:
Согласен
А вот за этим это всё и пишется, чтобы продвигаться дальше. Понятно, что это всё известно, но это же еще нужно знать куда копать, тут ваши комментарии и помогают Заодно тоже могли бы топик с основными ссылками создать, их бы и закрепили )
1 hour ago, MasterGH said:Пользователи
Спасибо, но в целом критика то к месту, да и выхлоп есть - правильные слова звучат, теперь еще и знаем куда смотреть ) Осталось только еще где-то время на это взять Но никто и не обещал, что будет быстро ))
1 hour ago, partoftheworlD said:Видимо
Угум-с
-
15 minutes ago, Garik66 said:
какие параметры нужно передавать
ты про вызов любых функций из createthread? или про саму createthread?
-
1 minute ago, SergBrNord said:
Данный конкретный случай - инструкция работает по 5 адресам.
Довольно забавно, у меня только ГГ и изредко появляющийся адрес, который использовался 2 раза.
В любом случае я не спорю, что нужны фильтры, я вообще начал описывать что за fstp, просто решил попробовать побегать с простой записью и отписал по результатам.
-
Just now, Garik66 said:
Так поплывут характеристики, они могут быть и в 4 байта, а ты везде пишешь 50 во float.
Никто же не спорит.
Я сразу и написал, что возможно понадобятся фильтры, но в целом по игре побегал и значимых изменений не вижу.
-
6 minutes ago, Garik66 said:
так же нельзя
Ну, если есть возможность или делаешь не для себя, то конечно.
Но если чисто игру пройти, то мне кажется можно и так.
-
58 minutes ago, SergBrNord said:
Есть, там, где в теплицу чешешь, это сразу после Пивза
Да, слушай, можешь без фильтров - гномы умирают, улитки засыпают, хп не уменьшается.Просто записывай в [eax] после fstp 50 во флоате и будет отлично:Да, через следующую запись хп не уменьшается, но нужно использовать фильтры, чтобы выйти на хп игрока, а не на иную характеристику:
fstp dword ptr [eax] // записываем всегда 50, ничего не вычитаем push (float)50 pop [eax]
-
4 minutes ago, SergBrNord said:
При попытке запустить в окошке эта собака крашится.
Норм, на всяких Пивзах и Волан-де-Мортах работает без фильтрации.
А есть уровни с мобами? У меня какой-то супер дебаг режим включен, он и в окне запускается и могу по уровням прыгать.
Попробую поискать еще отдельных мобов, не боссов.
-
Эти инструкции работают со стеком FPU, стеком хранящим и оперирующим значениями с плавающей точкой.
В CE его можно увидеть во время дебаггинга - справа в окне регистров будет кнопка со стрелкой ">":
Собственно значения в этом окне и будут st(0), st(1) и т.д. Подебажив увидишь как они изменяются.
Инструкция fstp dword ptr [eax] которую ты нашел - это запись здоровья из регистра st(0) в Health структуры игрока.
Причем можно заметить, что попадает он в st(0) буквально на инструкцию выше - из fld dword ptr [esp+08] - эта инструкция берет значение из стека и пушит его в стек FPU.
Из этого следует, что где-то раньше взяли твое текущее здоровье, отняли его и записали в [esp+08].
Можно попытаться найти это место, а можно просто после fstp (в целом я думаю можно даже не делать fstp) сделать push [MAX_HEALTH] и pop [eax]. Увы mov [eax],[MAX_HEALTH] сделать нельзя, поэтому приходится через push. Но ты можешь сделать и fld [MAX_HEALTH] и fstp [eax].
Возможно фильтры будут нужны, но у меня есть сохранение только уже на Волан де Морте, поэтому проверить быстро не могу
Быстроскрипт без aobscan и фильтров:
Spoiler[ENABLE] //code from here to '[DISABLE]' will be used to enable the cheat alloc(newmem,64) label(returnhere) label(originalcode) label(exit) label(max_health) newmem: //this is allocated memory, you have read,write,execute access //place your code here originalcode: fstp dword ptr [eax] // записываем всегда 50, ничего не вычитаем push [max_health] pop [eax] pop ecx ret 0008 exit: jmp returnhere max_health: dd (float)50 "Core.dll"+39709: jmp newmem nop returnhere: [DISABLE] //code from here till the end of the code will be used to disable the cheat dealloc(newmem) "Core.dll"+39709: fstp dword ptr [eax] pop ecx ret 0008 //Alt: db D9 18 59 C2 08 00
- 2
Обсуждение работы сайта и форума
in О работе сайта и форума
Опубликовано
Спасибо. Я попробую повторить вечером.
Если вдруг будешь записывать видео, включи еще пожалуйста консоль - Ctrl+Shift+J, посмотрим, может что-то не выполняется.