Scocl
#1
Отправлено 11 November 2011 - 02:52
#2
Отправлено 11 November 2011 - 03:35
Сообщение отредактировал SILENT_Pavel: 11 November 2011 - 05:52
#4
Отправлено 11 November 2011 - 07:03
Проблема в том что в консольных версиях IV и EfLC используется тот же метод что и в оригинальной ПК версии и старых патчах.Скриптовые функции :
Скриптам доступны около ~3000 игровых функций , именуемых нейтивами . Если взять scm-движок всех предыдущих 3D серий GTA , то там было по опкоду на нейтив , а в случае с RAGE опкодов стало менее сотни и они стали похожи на самый настоящий ассемблер , в свою очередь на вызов нейтива был выдан лишь один опкод . Для определения нейтива , который должен вызываться , у данного опкода есть параметр , в который записывается хеш имени нейтива . До какого-то из средних патчей на GTA IV использовался один хеш , после - уже другой . Жалкие и безуспешные попытки R* бороться с читерством вылились моддерам в такую кашу . Компилятор настроен под последние патчи , следовательно scocl использует новый хеш нейтивов . Скрипты , скомпилированные с новым хешом не возможно запустить на оригинале или старых патчах без дополнительных утилит . Все нейтивы GTA IV и EFLC описаны и содержатся в файле inc\natives.h .
RAGE research project, public side: OpenIV (Журнал изменений • План развития) | openFormats
#5
Отправлено 11 November 2011 - 07:19
#6
Отправлено 13 November 2011 - 06:02
Как запустить новый скрипт без начала новой игры?А с чего бы?То есть замена скриптов не приводит к невозможности загрузки сохранения? Можно ли будет самим добавлять скрипты так, чтобы не начинать новую игру?То есть получается, R* заменили еще и img-архивы со скриптами?
В боксовой версии так делается в каждом апдейте.
Вернее, там заменяется часть скриптов, через update.img.
Есть сегмент .globals, который фиксирован. Пока порядок/типы/количество переменных в нем не меняется - ничего плохого с сэйвами происходить не должно.
Локальные переменные скрипта - это внутреннее дело самого скрипта.
Заменил в initial.sco через hex-редактор ambDebug на свой jstarter. Игра успешно загрузилась с сохранения, но скрипт не запустился. Когда я начал новую игру, скрипт загрузился и заработал.
-----
Добавлено:
Попробовал переименовать ambDebug на ambDebug_hooked, а свой скрипт вставить под именем ambDebug. То же: сохранения загружаются, но скрипт работает только после старта новой игры.
Сообщение отредактировал VcSaJen: 13 November 2011 - 06:25
#7
Отправлено 13 November 2011 - 07:42
RAGE research project, public side: OpenIV (Журнал изменений • План развития) | openFormats
#8
Отправлено 13 November 2011 - 07:46
Сообщение отредактировал VcSaJen: 13 November 2011 - 07:47
#9
Отправлено 06 January 2012 - 04:50
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных
















