#1 Re: Серия GTA » Grand Theft Auto V » 14-04-2015 20:26

XEPOMAHT007 wrote:

Интересно вообще, когда пираты выпустят лечение гта5 от интернет-зависимости - долго ли продержится гта5 на лицензионном поприще.

Судя по отзывам, вышедшая версия на PC изобилует багами. Скорее всего повториться история с IV - куча патчей, поддерживать которые мало кому захочется.

listener wrote:

Надеяться не вредно, вредно не надеяться.
Там все плохо. Даже если расшифровать exe-шник, не становится ни капли легче.
Ключи-то я достал за пять минут. Проблема в том, что они используются для двух .rpf (из, примерно, полутора тысяч).
Что делать с остальными - пока нет ни малейших идей.

Мб в таком ряде сию сверхпроизводительность направить в более благородное русло? Инди-разработка вроде как нонче в моде.

PS: Кто-нибудь уже заценил на PC? Требования по производительности относительно IV сильно поменялись, стоит брать?

#2 Re: Вопросы по скриптингу » Один вопрос » 09-04-2015 22:29

Ну я собственно периодически заглядываю, просто поводов проявлять активность не особо много. И это еще мягко сказано, коли месячная периодичность событий вызывает такую реакцию. wow
А по самому важному, привет, конечно. blush

#3 Re: Вопросы по скриптингу » Один вопрос » 08-04-2015 06:26

huppoFF, если я еще хоть что-то помню, как-то так. Активация/деактивация по чит-коду WHATEVER.

{$CLEO}

// save state
0A8D: 0@ = read_memory 0x005E2009  size 4 virtual_protect 0
0A8D: 1@ = read_memory 0x005E200D  size 1 virtual_protect 0

0A8D: 2@ = read_memory 0x006A8C52  size 4 virtual_protect 0
0A8D: 3@ = read_memory 0x006A8C52  size 1 virtual_protect 0

gosub @activate

while true
    if
        0ADC:   test_cheat "WHATEVER"
    then
        if
            4@ <> 0
        then
            gosub @deactivate
        else
            gosub @activate
        end
    end 
    wait 0
end

:activate
0A8C: write_memory 0x005E2009 size 4 value 0xC483C031 virtual_protect 0
0A8C: write_memory 0x005E200D size 1 value 0x10 virtual_protect 0
 
0A8C: write_memory 0x006A8C52 size 4 value 0xC483C031 virtual_protect 0
0A8C: write_memory 0x006A8C56 size 1 value 0x10 virtual_protect 0

4@ = 1
return

:deactivate
0A8C: write_memory 0x005E2009 size 4 value 0@ virtual_protect 0
0A8C: write_memory 0x005E200D size 1 value 1@ virtual_protect 0
 
0A8C: write_memory 0x006A8C52 size 4 value 2@ virtual_protect 0
0A8C: write_memory 0x006A8C56 size 1 value 3@ virtual_protect 0

4@ = 0
return

#4 Re: Работа с памятью, EXE » GTA V PPC executable » 08-11-2013 15:45

@all - понял. Тупых вопросов больше задавать не буду:crazy:

#5 Re: Работа с памятью, EXE » GTA V PPC executable » 07-11-2013 03:59

спасибо, покопаюсь.
По поводу гугления. Опыт работы в линукс начисто отучает от ползания по всяческим варезным сайтам с кучей выскакивающей рекламы.;-)
PS: чем правильно распаковывать этот файлик? Тупое выбрасывание SCE-хедера не дает работающего ELF. Насколько я понимаю, там указатель на phdr битый получается.

#6 Работа с памятью, EXE » GTA V PPC executable » 05-11-2013 16:47

Alien
Replies: 10

Всем доброго времени суток.
Насколько я понимаю, некоторые уже разжились исполняемыми файлами от консольных версий GTA V. Может поделитесь? Хочется покопаться в новом для себя ассемблере. Обязуюсь никому не передавать.;-)

#7 Re: Справочная информация » Адреса и функции gta_vc.exe 1.0 » 27-10-2013 14:03

@Seemann - Спасибо. Только имейте в виду, что там в базе много мусора, тупо скопированного с базы для PC. Хотя многое там совпадает вплоть до смещений.
На случай, если кто-то заинтересуется, таки выложу еще APK (он самоподписанный, кажется там надо включить Developer mode на девайсе) и пример asi-плагина. Линкуясь против libGTA.so, можно динамически релоцировать любые экспортированные символы. Извращаться в сишнике таким образом больше не требуется:

*(DWORD *)(0x123456)

[You must login to view hidden text.]

#8 Re: Справочная информация » Адреса и функции gta_vc.exe 1.0 » 27-10-2013 04:08

@Seemann - У меня открывает. Но я извращенец- иду запускаю под вайном.

#9 Re: Справочная информация » Адреса и функции gta_vc.exe 1.0 » 26-10-2013 13:28

libGTA.idb
@Seemann - на паблик было бы замечательно.
@Sergey81 - как сделать на iOS не знаю, т.к. не обладаю сим девайсом. А на андроиде все делается стандартными методами с использованием android-ndk и правкой оргинального R* кода с последующей перепаковкой apktool.

#10 Re: Справочная информация » Адреса и функции gta_vc.exe 1.0 » 25-10-2013 16:29

Отлично. Добавил ссылку в первый пост.
Еси есть интересующиеся, могу еще выложить версию GTA Vice City 10 Years Anniversary для Android. Она отличается тем, что в ней присутствуют оригинальный R*-кие имена функций и статических переменных. Разобрано там совсем немного, но кое-что перенесно из PC-шной версии, также выведены имена и описания опкодов.
Для проверки своих идей есть самопальная сборка apk упомянутой VC для Android с встроенным asi loader-ом (подгружает при старте нативные библиотеки из директории asi).

#11 Re: Вопросы по скриптингу » Про hex вставки » 20-08-2013 17:41

Информация по 35 параметрам в справке устарела - это ограничение было в первых версиях. Сейчас его нет.

#12 Re: Программирование » RwV3D_Normalize - вопрос. » 20-08-2013 17:37

В базе SA все функции на Rw, Rp, Rs - часть Renderware SDK. Можно сверятся ней, какая-то версия лежит на паблике. Сама SDK написана в Carmack style C - так что, ванильный RwV3d методов не имеет.
В коде R* также присутсвует метод CVector::Normalise(void).

Ваш кусок кода - это именно CVector::Normalise, т.к. RwV3dNormalise принимает 2 параметра - in и out, в то время как CVector::Normalise выполняет inplace преобразование.

#13 Re: Программирование » Exception handler? » 05-08-2013 15:27

@listener's PS - учитывая Ваш огромный опыт на этом поприще, было бы очень интересно почитать.
PS. Если "стол заказов" еще работает, то хотелось бы еще что-нибудь про ABI "альтернативных" платформ (PPC, ARM).:blush:

#14 Re: Программирование » Exception handler? » 05-08-2013 14:50

Из разряда грязных хаков, fastcall можно использовать для более или менее компиляторо-независимого вызова MSVC методов:

void __fastcall a_method(void *obj, int dummy, int param1, ...)

Могу ошибаться, т.к. говорю на память, но в этом случае первый параметр передается в ecx, второй в eax - а он все равно clobbered для метода...

#15 Re: Sanny Builder и CLEO » Sanny Builder v3.xx » 26-07-2013 04:38

Может тогда уж сразу сделать компиляцию в zip-архив? Обеспечить возможность подключения ресурсов, всяких пользовательских текстов итп. Само собой это применимо только на пользовательские скрипты и разработка должна быть совместной с CLEO-разработкой. В самом билдере это дело сразу организовать в виде некого дерева-проекта.

#16 Re: Программирование » Структура с фиксированным размером » 19-07-2012 18:04

Можно и так:

struct A{
    struct B *pB;
};

struct B{
    struct A *pA;
};

В документации это назывется forward declaration. Перед использованием компилятор все равно должен иметь полные объявления этих классов. В противном случае получите invalid use of incomplete type.

#17 Re: Вопросы по скриптингу » Один вопрос » 29-10-2011 18:09

@Den_spb - В серии III зависит. Там все - и обновление игровой логики и рендеринг - все выполняется в одном потоке.
Если не помогает Frame limiter, можно попробовать сбросить настройки видео на минимум. Насколько мне помнится, такая же проблема с этой миссией у меня была на старой конфигурации (на которой даже SA немного притормаживала). То есть нужно не сбросить fps, а наоборот немного повысить.

#18 Re: Sanny Builder и CLEO » CLEO 4 для GTA San Andreas » 29-10-2011 18:01

Ну, вообще-то я никаких вылетов в приведенном коде не наблюдал и не наблюдаю. Что касается опкодов вызова нативного кода, то с ними надо работать очень осторожно и четко понимать, что делаешь. Вполне возможно, что в вызываемой функции не сохраняется какой-нибудь регистр (меняться могут только eax, ecx, edx) или неверно указан stack_align.
Единственный баг, который, признаю, есть - это баг со звуком (на машинах с аппаратным ускорением 3d audio positioning ломается внутриигровая звуковая подсистема). Баг остается.
Ах да, еще был баг с тем, что скриптовая музыка продолжает играть, когда окно сворачивают. Этот баг должен быть исправлен, но я не проверял.))

#19 Re: Вопросы по скриптингу » Один вопрос » 29-10-2011 17:35

в миссии stowaway кажется надо было отключать лимит кадров. на 20-25 fps еще успеть можно, а на 60 уже не выходит.:D

#20 Re: Sanny Builder и CLEO » CLEO 4 для GTA San Andreas » 29-10-2011 14:04

А разве есть разница между компиляторами одного и того же языка?

Ну этот вопрос явно не мне надо задавать, ибо я сам являюсь может быть хоть и не "начинающим программистом", но программистом-любителем то уж точно... Ну, попробую ответить.
Да, разница есть...
Во-первых, язык кучу раз перестандартизировался (в последний раз это произошло в августе этого года, и на данный момент не существует ни одного компилятора, который бы полностью имплементировал все нововведения этого стандарта. А я все равно уже начал использовать эти нововведения в CLEO - не удержался grin ). По этому поводу мне вообще кажется, что нет такого языка C++, есть только языки, определяемые соответствующими ANSI/ISO стандартами C++.
Во-вторых, разработчики коммерческих компиляторов часто кладут болт на обеспечение совместимости со стандартами. GCC тут старается более или менее им следовать, но это не всегда удается.
В-третьих, у большинства компиляторов имеются некоторые специфические только для них (или для целевой платформы) расширения языка. Например, описанные тут или тут). Когда имеешь дело с низкоуровневыми хаками, без них просто не обойтись (без того же inline-ассемблера, например). Поэтому приходится писать код, специфический для какого-то конкретного компилера...

PS: чего-то мы нафлудили много. Вы лучше попробуйте решить проблему с Error loading plugin. Вопрос к другим скачавшим - у вас есть такая же ошибка?

#21 Re: Sanny Builder и CLEO » CLEO 4 для GTA San Andreas » 29-10-2011 10:19

Может быть и проще, но у меня лично с каких-то пор имеется предпочтение к GNU toolchain. Кроме того, код является специфичным к GCC, компилятор Microsoft его не соберет.
make.exe брать в интернете (нужна сборка под винду).

Вообще, удобно будет использовать этот toolchain (там уже есть GNU make).
Еще понадобится Cygwin, с его поиском и установкой проблем быть не должно.

#22 Re: Sanny Builder и CLEO » CLEO 4 для GTA San Andreas » 29-10-2011 10:08

UPD. Блин, что-то игра ошибку выбивает в самом начале - Error loading plugin cleo.asi

Хм. Интересно, попробуйте пересобрать из исходников. Посмотрите, создался ли в корне файл cleo.log и выложите его содержимое (если игра установлена в Program Files, переустановите куда-нибудь, куда разрешена запись без админ-прав).

#23 Re: Sanny Builder и CLEO » CLEO 4 для GTA San Andreas » 29-10-2011 09:25

Выкладываю первую публичную версию 4.2a. Буковка 'a' обозначает 'alpha', то есть версия не является стабильной и не предназначена для публичного использования.
Новых "фич" нет, из нововведений - открытие исходного кода. Теперь любой желающий может с ним ознакомиться. Никаких лицензий не прикрепляю, поскольку то, чем мы тут занимаемся, все равно "не вполне законно".

PS: Если появится группа людей, заинтересованная в разработке, возможно имеет смысл переехать на sourceforge или google code. А может быть Deji возьмется за разработку и выпустит что-то вроде CLEO 5 (это обсуждалось в английской ветке, если кто-то не в курсе). В общем, поживем - увидим.
[You must login to view hidden text.]

#25 Re: GTA Modding » CLEO 4. Questions and bug reports. » 21-10-2011 14:25

все равно не так мало людей будет что-то дорабатывать в библиотеке. скорее всего, все ограничится снятием копирайтов и желтой надписи в меню

Про мало людей согласен. Я думаю, скриптерам в любом случае будет полезно иметь под рукой исходный код - он может заменить недостаток документированности. На самом деле, мне кажется, что здесь более вероятен другой вариант развития событий - CLEO (да и весь III-series моддинг) окажутся никому не нужными и все о них забудут (если еще не забыли).

скорее всего, все ограничится снятием копирайтов и желтой надписи в меню

ИМХО ну и пусть. Хотя я сомневаюсь в возможности такого. Для модификации кода будет существовать достаточно высокий входной порог на "качество программиста". Короче говоря, Cleo Hacker из Нижнего Тагила на это явно не способен. Ну а люди других качеств на такие подлые вещи вряд ли пойдут.

я бы на твоем месте передал исходники лично Deji, поскольку он, во-первых, разбирается в устройстве CLEO, во-вторых, знает слабые места (баги), в-третьих, он разбирается в программировании и реально может что-то сделать. а если он посчитает нужным привлечь в проект еще людей, это будет зависеть от него.

Ну что ж, если открыть исходники CLEO и дать права на модификацию, то Deji в принципе получит все те же возможности наравне с другими...

Board footer

Powered by FluxBB