#251 Re: Справочная информация » Новые описания для опкодов » 26-05-2007 13:20

Открылся смысл опкода

03E3: unknown_texture_stuff 1

Он используется в паре с опкодами, которые создают текстуры на экране(типа стрелки в танцах) и улучшает качество текстур.
например:

03E3: unknown_texture_stuff 1 
038D: create_texture 2 position 550.0 360.0 size 191.25 170.0 RGBA 255 255 255 255

Объяснить довольно трудно, это легче увидеть, поэтому я сделал два скрина. "с этим опкодом" и без.
"Без"
gtasa2007052615540954qk6.th.jpg
"С"
gtasa2007052616054503ud7.th.jpg

З.Ы. и вроде этот опкод надо применять перед каждым созданием текстуры

03E3: unknown_texture_stuff 1 
038D: create_texture 2 position 550.0 360.0 size 191.25 170.0 RGBA 255 255 255 255
03E3: unknown_texture_stuff 1 
038D: create_texture 3 position 550.0 360.0 size 191.25 170.0 RGBA 255 255 255 255

#252 Re: Вопросы по скриптингу » Один вопрос » 04-03-2007 18:29

Seemann wrote:

Радио - это CODE, через скм не правится.

как же так? а радио мод? через скм, когда надо войти-выйти и прочее? ведь включается. а как же тема "Выполняем ассемблерный код из main.scm" ? если это только для памяти, то зачем асм-код, года можно без него память менять с патчем? Seemann, просвети тёмную душу, пожалуйсто

#253 Re: Вопросы по скриптингу » Один вопрос » 28-02-2007 00:53

Seemann, раскажи, пожалуйсто, как через .скм менять ЕХЕ? я тут хотел попробовать через мэйн включить на полиц. ранчере радио, но что-то никак не получается... если можно, раскажи как это сделать? сколько ни читал статьи и форум - ничего не понял... надо начинать с малого, чтоб вникнуть в суть...

еще хотел спросить - есть в СА опкод заставляющий спавнится актёрам одного ID'а? тоесть как в вайс-сити -

03DF: all_random_peds $1510

#254 Re: Вопросы по скриптингу » Один вопрос » 25-02-2007 00:26

Seemann wrote:

Если тебе (или кому-то еще) действительно интересно, могу дать стартовую точку для распутывания цепочки: процедура загрузки файла carmods.dat по адресу 005B65A0. Вот от нее и нужно искать, где в ехе блокируется возможность наложения нитро на байк.

Спасибо, попробую порыть.

вот еще вопрос(опять связаный с байками grin ) можно-ли с мотоцикла вести нормальную, прицельную, стрельбу? Вот есть опкод, который разрешает "крутиться" на байке, но камера так и норовит всё время вернуться на исходную позицию. Нормально работает этот опкод только если глав-героя посадить на посажирское сидение sad ...

0713: actor $PLAYER_ACTOR driveby_actor -1 car -1 point 0.0 0.0 0.0 radius 5000.0 8 1 firing_rate 60

ну и вопрос - можноли как то прицеливаться с "рулевого" места?

дааа, вот совсем мне мотоциклы голову забили.. опкод то не только для байков.. grin

#255 Re: Вопросы по скриптингу » Один вопрос » 24-02-2007 13:51

Seemann wrote:

скорее всего дело в модели, не хватает специальных думмисов

есть у меня байк с думисом, непомогает. Да и не причем он, думмис. Вот на квадроцикл, стандартный, нитро можно поставить(скриптом), а на нём нет думиса ug_nitro. Также. поэксперементировав, было установлено, что нитро можно ставить на самолеты(из сопл будет идти соответственый сине-желтый "огонь", хотя ускорения не будет). Seemann, раскажи как в ЕХЕ найти код, соответствующий какой-либо модели(как с установкой радио), и как определить границы одной модели, от другой. Я сам попытаюсь "разрешить" установку нитро на байки rolleyes

#256 Re: Вопросы по скриптингу » Один вопрос » 23-02-2007 09:51

Seemann wrote:

это делается путем правки файла carmods.dat. Добавь туда модель мотоцикла и возможные модификации для него (nto_* - нитро)

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

#257 Re: Вопросы по скриптингу » Один вопрос » 22-02-2007 23:13

Seemann wrote:

можно. назначь имени переменной ее будущий адрес командой Alloc. Например:

Alloc($new, 12)

это можно добавить в любое место перед использованием переменной.
после этого можешь писать в скрипте переменную $new, но компилироваться она будет именно как $12.

Большое спасибо, Seemann, теперь всё работает smile

еще вопрос grin (извините если не в ту тему) - есть способ устанавливать на мотоциклы нитро, путем правки ЕХЕ-файла, на подобе как с радио на пожарках\коповозках\прочее ? вернее не прям устанавливать, а "разрешать", чтобы через трансфендер или .СКМ можно было устанавливать?

#258 Re: Вопросы по скриптингу » Один вопрос » 22-02-2007 14:17

Seemann wrote:

2flashTrash:
Define memory в Mission Builder'е не имеет никакого отношения к совместимости сейвов, обычным его редактированием ты не добьешься, чтобы сейвы работали.

Насчет этой технологии (Darkpact) скажу, что на гтафорумс публиковали специальную его версию под SB. Посмотри здесь
http://www.gtaforums.com/index.php?show … &p=3881003

Всё, спасибо, с этим разобрался. теперь такой вопрос - сделал я тестовый поток, с установкой одноразового нитро на авто,

:addnitro
0001: wait 0 ms 
00D6: if 
00E1:   player 0 pressed_key 10 
004D: jump_if_false @addnitro 
03C0: $new = actor $PLAYER_ACTOR car 
09E9: car $new add_single_nitro 
0002: jump @addnitro

долго не мог понять почему не работает, тоесть при загрузке сэйва происходит крах, и, поэксперементировав, выявил причину - это метка $new . если метку назвать цифрами, то загрузка происходит нормально и скрипт работает, а если буквами - не работает.

вот тот же поток, только метки названы по другому

:addnitro
0001: wait 0 ms 
00D6: if 
00E1:   player 0 pressed_key 10 
004D: jump_if_false @addnitro 
03C0: $12 = actor $PLAYER_ACTOR car 
09E9: car $12 add_single_nitro 
0002: jump @addnitro

вопрос - можно ли как нибудь использовать в метках буквы? А то цифры не очень удобно...

#259 Re: Вопросы по скриптингу » Один вопрос » 21-02-2007 18:49

Alexander wrote:

Просто:
1) скрипт не качественно переведён под СБ

возможно, но я переводил вручную несколько раз.

Alexander wrote:

Просто:
2) почитай комменты к той статье , изменения можно делать только минорные и чтобы ещё сейв старый грузился

не, почему же? я в SAMB много скриптов проворачивал этим способом. там когда пишет ошибку, что недостаточно define memory(а как известно если её увеличить, то сэйв не загрузится), то надо увеличить её(память), что бы скрипт скомпилировался удачно, а потом вернуть старое значение define memory и снова откомпилировать. САМБ естествено выдаст ошибку о недостачи памяти, но скрипт будет работать с сэйвами. можно сказать это моё ноу-хау.... будет очень обидно, если в Сани Билдере нельзя так хитро сделать(или еще как нибудь)...

#260 Re: Вопросы по скриптингу » Один вопрос » 21-02-2007 16:45

так как я после долгого перерыва в скриптинге снова взялся за него, то решил перейти с SAMB на Sanny Builder. я пользовался вот этим методм http://missions.gtamaps.net/readarticle … cle_id=138 чтоб продолжать игру с сейва с новым скриптом, а не начинать каждый раз новую. попытался я использовать этот способ в Сани Билдере, сделал как написано(с поправками на СБ) - попробовал вставить скрипт спидометра(естественно переписал его на "диалект" СБ), загружаю игру - вылет. написал маленький скрипт с обращением к памяти - работает... такое ощущение, что "длинные" скрипты не работают со способом выше по ссылке... в SAMB проблема решалась с помощью deffine memory, в самом начале мэйна, а в Санни Билдере - я define memory не нашел....

вобщем можно ли как то в СБ сделать так, чтоб не начинать каждый раз новую игру? а то уж очень не хочется возвращаться к SAMB..

надеюсь не очень заумно\занудно всё написал...

Board footer

Powered by FluxBB