You are not logged in.
А изменить в игре тип колёс (160 - 89) ?
Насчёт headlight.asi - прямоугольник света у фары всё-таки немного виден и корона "слегка" просвечивает через крыло машины - это, наверно, вряд ли можно исправить(с таким движком)?
Большое спасибо!
Насчёт карспаунера - scm_func вызываются из текстового файла, лежащего в папке Cleo ?!
Кто знает, почему Xbox-mod не загружает сейв/новую игру с пустым txd.img - там же дублирующие текстуры, на 8 штук даже меньше, чем в gta3.img !?
to DK22Pac
На гтафорумс в ветке мода Хбокс автор говорил, что у тебя есть скрипт, чтоб фары светили пореалистичнее - можешь поделиться? А то в трёшке это один из самых стрёмных моментов...
"Выдернул" из мода Ultimate гостаун, чтоб побыстрее проверять, адаптировал старый, но хороший майн Timetwister by Demarest v1, но в начале(Клод появляется уже в гостауне) появляется лод, что-ли (часть неба закрывает), исчезающая когда проедешь сотню метров к океану и мелькнет заставка, как между островами
есть такие опкоды
03F7: load_island_data 2
0395: clear_area 1 at -180.0 1020.0 range 14.75 30.0
они нужны(не понял как работают тогда) или другие?
_Ну и заодно вопрос - у воды стоит док (скорее всего, он из Вайса
- хотел катер поставить - невозможно - встаёт торчком, если ГГ сажать - летит, взрывается, вроде координаты непредельные (х 160, у 1600 мах) - map.zon ковырять, а какие зоны, какие цифры?
_Вобщем, в В Gta-LC поставил в майн status_text для спидометра...
Делал для Вайса клео-скрипт спидометра
{$CLEO}
0000: // и тут комментил
wait 100
while true
wait 0
if
0256: player $player_char defined
then
if
00E0: player $PLAYER_CHAR driving
then
03C1: 0@ = player $PLAYER_CHAR car
02E3: 1@ = car 0@ speed
1@ *= 3.6 // floating-point values
008C: 1@ = float_to_integer 1@
0227: 3@ = car 0@ health
0017: 3@ /= 7.81
0085: 4@ = 3@
000E: 4@ -= 128 // integer values
0012: 4@ *= 3
0095: make 4@ absolute_integer
0093: 3@ = integer 3@ to_float //0092: 2@ = float 2@ to_integer
0087: 5@ = 3@ // floating-point values only
0015: 5@ /= 2.0 // floating-point values
000B: 5@ += 76.0 //000F: 5@ -= 64.0 // floating-point values
if
0029: 4@ >= 255 // integer values
then
0006: 4@ = 255 // integer values
end
//03F0: enable_text_draw 1 // и так делал, без text_draw_toggle
//0340: set_text_draw_color 200 0 0 255
//033F: set_text_draw_letter_width_height 0.4 1.5
045A: text_draw_1number 3.0 414.0 'SPEEDX' 1@ // ~1~
038E: draw_box_position 5@ 1015.0 size 3@ 24.0 4@ 50 130 250//0-255 50 150
038E: draw_box_position 140.0 1015.0 size 128.0 24.0 20 0 90 100
0001: wait 250 ms
03F0: text_draw_toggle 0 // и enable_text_draw 0 делал
end
end
endЧё ни так? Иногда, только в машину сядешь, зависает(полоска и значение скорости показывает), иногда едешь некоторое время - снова зависает. Новую игру начинаешь, садишься, едешь и вот тут(через несколько метров, там у меня наверху все "божки"
зависает...
http://i30.fastpic.ru/big/2012/0104/5b/ … 336a5b.jpg
С центрированием разобрался. Пытался запустить клео-скрипт, поменяв CHAR на ACTOR (вместо 00E0 - 00DF: actor $PLAYER_ACTOR driving и т.д.) - игра запустилась(а то сразу вылетала), но полоска не прорисовывалась, подумал что мешает mp3control (d3d8.dll - пишет верху номер текущего трека из всего количества) - снова стала сразу вылетать...
Вставил в майн:
____сначала создаю трейд
:LabelMAINTHREADCONT
0417: start_mission 0
004F: create_thread @LabelLCPORTLANDSAVE
004F: create_thread @LabelLCSTAUNTONSAVE
004F: create_thread @LabelLCSSVSAVE
004F: create_thread @LabelLCPORTLANDRESTART
004F: create_thread @LabelLCSTAUNTONRESTART
004F: create_thread @LabelLCSSVRESTART
004F: create_thread @LabelLCWastedHelpMonitor
004F: create_thread @LabelLCBustedHelpMonitor
004F: create_thread @LabelBistroWarp
004F: create_thread @LabelRandomAudio
004F: create_thread @LabelSpeed // и в других местах создавал, после create_thread @Label100REWARD
00D6: if 0
0256: player $PLAYER_CHAR defined
004D: jump_if_false @LabelMAINTHREADDEADEND
04BB: select_interiour 0 // select render area - VC has this, maybe will help load the city at startup
01B4: set_player $PLAYER_CHAR frozen_state 1 (unfrozen)
____________________затем сам код
:LabelSpeed
03A4: name_thread 'SPEEDO'
//0000:
:SPEED_10
wait 0
if
0256: player $PLAYER_CHAR defined
//056D: actor $PLAYER_ACTOR defined
else_jump @SPEED_10
if
00E0: player $PLAYER_CHAR driving
//00DF: actor $PLAYER_ACTOR driving
else_jump @SPEED_15
03C1: 0@ = player $PLAYER_CHAR car // 03C0: 0@ = actor $PLAYER_ACTOR car
//00D9: 0@ = actor $PLAYER_ACTOR car
02E3: 1@ = car 0@ speed
1@ *= 3.6 // floating-point values
008C: 1@ = float_to_integer 1@
0227: 3@ = car 0@ health
0017: 3@ /= 7.81
0085: 4@ = 3@
000E: 4@ -= 128 // integer values
0012: 4@ *= 3
0095: make 4@ absolute_integer
0093: 3@ = integer 3@ to_float //0092: 2@ = float 2@ to_integer
0087: 5@ = 3@ // floating-point values only
0015: 5@ /= 2.0 // floating-point values
000B: 5@ += 76.0 //000F: 5@ -= 64.0 // floating-point values
if
0029: 4@ >= 255 // integer values
then
0006: 4@ = 255 // integer values
end
0340: set_text_draw_color 200 0 0 255
033F: set_text_draw_letter_width_height 0.4 1.5
045A: text_draw_1number 3.0 414.0 'SPEEDX' 1@ // ~1~
0342: set_text_draw_centered 0
03E4: set_text_draw_align_right 1
0345: set_text_draw_in_box 1
038E: draw_box_position 5@ 1015.0 size 3@ 24.0 4@ 50 130 250//0-255 50 150
038E: draw_box_position 140.0 1015.0 size 128.0 24.0 20 0 90 100
:SPEED_15 // и без этой метки делал
0001: wait 250 ms
03F0: text_draw_toggle 0
jump @SPEED_10
//#####################################################################################
// END SPACE'S 041C WORKAROUND / BEGIN MISSIONS
//#####################################################################################
//-------------Mission 0---------------
после выезда с моста(новая игра, естессно) и повороте налево - зависает, еле через диспетчер процессов снимаю(на русском языке вобще после выхода из меню виснет), вот здесь, через несколько метров, я объезжал через доки, но при подъезде к чайнатаун висяк:![]()
В Gta-LC в dbug.scm делаю полоску повреждения машины draw_box_position (клео-скрипт в этот мод никакой не могу поставить, вылетает и почти всегда пишет последний исполняемый код 0003FD80: is_actor_near_point_3d_in_car 16777472, "", "", "", "", "", "", "" - это из отладчика мода, а до этой последней строки nop, nop, nop, хоть с 03A4: name_thread 'SPEEDO', хоть с wait 100, while true), она центрируется![]()
пробывал такие опкоды
0342: set_text_draw_centered 0
03E4: set_text_draw_align_right 1
0345: set_text_draw_in_box 1
___пофиг...
Всех с Новым Годом!
Да я перевёл, хоть и "немец" по образованию 
Считывание координат частей тела... - трансформеры, подспорье в создании анимаций?!
Э-э-э, а что такое ActorBodypart... с номерами ?
И чего там с ".ini с Дежи-ного сайта" ? - на всякий случай
Спасибо большое, попробую!
Но ведь тут есть работа с памятью, значит, не на все ехе пойдёт?!
(я сначала пробую на Snow City, а уж потом на оригинальном 
Так как repair в трёшке не работает, решил сделать, как один раз обсуждали - нажал две кнопки, удаляется машина, на её месте создаётся с тем же ID`ом, в неё помещается ГГ:
:UNFLIP_10
wait 250
if
Player.Defined($PLAYER_CHAR)
else_jump @UNFLIP_10
if
Actor.Driving($PLAYER_ACTOR)
else_jump @UNFLIP_10
03C0: 0@ = actor $PLAYER_ACTOR car
if and
05EE: key_pressed 17 // Ctrl
05EE: key_pressed 81 // Q
else_jump @UNFLIP_10
Car.StorePos(0@, 1@, 2@, 3@)
3@ += 2 // integer values
4@ = Car.Angle(0@)
Model.Destroy(0@)
Model.Load(0@)
038B: load_requested_models
while not Model.Available(0@) //8248: not model 6@ available
wait 10
end
00A5: 5@ = create_car 0@ at 1@ 2@ 3@
Car.Angle(5@) = 4@
0224: set_car 5@ health_to 900
Model.Destroy(0@)
01C3: remove_references_to_car 5@ // 0@
0369: put_player $PLAYER_CHAR in_car 0@
wait 200
jump @UNFLIP_10
но чё-то не то (зависает игра)?
Надо сначала ID машины взять, опкод помещения ГГ в машину не там поставил?
Спасиб за перевод(хотя кое-что и уточнено) !
__Вобщем, repair_car не удалось "внедрить"
, 01f4 работает, а вот после замены его на опкод 020d уже при посадке ГГ в гараже скрипт стал срабатывать(смотрелось это - машина подпрыгивает и еле двигается), а garage $PORTLAND_PAYNSPRAY_GARAGE respray_done просто, как я понял - ставит "метку" покрашено!?
Как проверить, перевернулась ли машинf, так понимаю ключевое слово flipped, но есть два проверочных опкода 01f4 и 020d (чем отличаются?), а ещё есть опкод flipped_for_2_seconds - кто может занимался этим?
И чем отличается опкод wrecked?
_Щас попробую в трёшку впихнуть repair car 
Не очень понял, "разрешение экрана" 1920 - делить на 640 = 3 ?!
0390: load_txd_dictionary 'KARTA'
038F: load_texture 'KARTA1' as 1
038D: draw_texture 1 position 10.0 10.0 size 1024.0 1024.0 RGBA 255 255 255 210
Actor.StorePos($PLAYER_ACTOR, 0@, 1@, 2@)
0@ /= 11.87 // floating-point values
1@ /= 9.2 // floating-point values
3@ = 172.0 // floating-point values
4@ = 205.0 // floating-point values
005B: 3@ += 0@ // floating-point values
0063: 4@ -= 1@ // floating-point values
033F: set_text_draw_letter_width_height 0.2 1.5
033E: text_draw 3@ 4@ 'MAP_00'
Вобщем, вывел текстуру(эти, блин, двойные-одинарные кавычки). Оттолкнулся от одного скрипта, но там использовался опкод 044D: load_splash 'MAP' со всеми его "фичами" (зато "старая" структура кода, с прыжками позволяет использовать одну и ту же кнопку для вкл/выкл режима без дополн конструкций - для меня, но тогда обновление позиции метки на карте только при включении режима...) - я решил с текстурой, типа real-time карта
- Клод может ходить, правда позиции метки не меняется(не буду усложнять скрипт, наверно).
"Откалибровал" абсолютное смещение по Х и Y, ставя ГГ в центр карты игры(на стадионе), а вот коэфиц-нты подбирал "опытным" путём, что ни есть хорошо, да и ещё надо поточнее сделать...
___На гтафорумс нашёл это:
The GTA3 game world stretches from roughly -2048 to 2048
The Vice City game world stretches from roughly -2300 to 1600 on the X axis, and -1900 to 1900 on the Y axis. Again, there is no Z limit.
____Как я делал: половина карты игры 2048, половина экрана 320 - для draw_text(да хоть 4096/640), делю, получаю - 6.4 и 8.53 (для Y - 2048/240) - хрена лысого, в скрипте-источнике коэф 6.875 и 7.375, но там текстура растягивается на экран, хотя, х.з.
0390: load_txd_dictionary 'KARTA'
038F: load_texture "karta1" as 1
{wait 250
fade 0 1500}
//03F0: enable_text_draw 1
038D: draw_texture 1 position 10.0 10.0 size 512.0 512.0 RGBA 255 255 255 100
Где должен находиться txd-файл ?
Без первых двух строчек загружается белая, т.е. не находит, но игра работает, а при load_txd - зависает...
в папке txd/ стояло, models/txd/ - тоже, блин - ч0 ни так?
Щас хочу заняться выводом карты на экран(есть скрипт, но буду по-другому) - если б можно было маштабировать 2048х2048 вывел бы! Но...
Какие пределы карты в трёшке и Вайсе, в единицах и координатах(в трёшке, как я понял -2000*2000) ?
Можно ссылку!
С суперпрыжком всё получилось, щас решил поставить маркеры над спрят.пакетами (02A8: 17@ = create_marke 0 at ), заодно узнал что в трёшке и Вайсе максимум 18 локальных переменных.
Вопрос такой, как мне эти переменные перебрать в цикле for...end чтоб, например, изменить размер, цвет, дизаблить(0168, 0164) ?
__Вроде, там указатели нужны, а как это выглядит?...
PS Нашёл один пост Den_spb, как перебрать переменные в цикле, но тут другая закавыка - не могу убрать маркер с радара:
02A8: 1@ = create_marker 0 at 849.875 -788.625 27.0
if
05EE: key_pressed 0x49 // I
then
018C: play_sound 94 at 0.0 0.0 0.0
//0168: show_on_radar 1@ 0
0164: disable_marker 1@
В смысле, мне (ГГ, он же Клод, он же немой, он же...) надо не внутрь здания (си равно там интерьеров нету
, а наверх, на крышу!
_Помню, вроде такое название мода - glimb, что ле?
to Den_spb
Спасибо, как раз что-то такое было, хорошо что подсказал!
Скоро проверю, а то думал, что код может быть намного больше, а я минималист! 
Решил сделать скрипт-суперпрыжок для "залезания" на крыши - этот скрипт мелькал во многих модах, в частности Neo, посмотрел там код, тяжеловато, вроде основная мысль понятна - вперёд ГГ продвинуть, на метр, а вот с высотой как?
У меня Клод просто вперёд продвигается, сквозь стены, а не на крышу:
{$CLEO}
wait 100
while true
wait 0
if
Player.Defined($PLAYER_CHAR)
then
if
80DF: not actor $PLAYER_ACTOR driving //00E0: player $PLAYER_CHAR driving
05EE: key_pressed 0x52 // R
then
018C: play_sound 94 at 0.0 0.0 0.0
0054: store_player $PLAYER_CHAR position_to 0@ 1@ 2@
0170: 3@ = player $PLAYER_CHAR z_angle
02F6: 7@ = cosine 3@
02F7: 8@ = sinus 3@
7@ *= -1.0 // floating-point values
8@ *= 1.0 // floating-point values
005B: 0@ += 7@ // floating-point values
005B: 1@ += 8@ // floating-point values
02CE: 2@ = ground_z 0@ 1@ 2@
00A1: put_actor $PLAYER_ACTOR at 0@ 1@ 2@
end
end
end
При уборке 1го wait (ставлю 0000:, т.к. игра ругается "переход на нулевой оффсет") то же самое миганье,
при уборки то 2го, то 3го wait, не мигает(а при выходе из игры при нажатии Yes игра зависает), но отображаются только 2 первых или 2 последних текста(при посадке в машину со скриптом спидометра остаётся уже четверть нужного текста)
http://zalil.ru/32206724
Бьюсь с координатами(наверно, придётся делать с метками и прыжками, как в моде Gta-LC) -забубенил новый опкод с выводом 7 цифр (чтоб и угол был!), но как и 6ю цифрами вылетает - чо ни так?
__И есть ли отладка для трёшки и санибилдера?
045C: draw_text_7numbers 3.0 35.0 GXT 'COORDF' number 1@ 0@ 4@ 3@ 7@ 6@ 9@
045C=10,text_draw_7numbers %1d% %2d% %3g% %4d% %5d% %6d% %7d% %8d% %9d% %10d%
Как здесь много народу! Спасибо, хоть DK'22 кратко ответил
Вобщем, все координаты удалось вывести только с их миганьем (wait 5 + enable_text_draw 0 - не понимаю я механизма прорисовки), причём при подключении спидометра половина цифр отрубается...
Текст выводится, как положено - с относит координатами экрана 640х480, а вот draw_box_position исходит из реального разрешения кадра, т.е. либо нужен опкод нахождения кол-ва пикселей по вертикали(а если через память, то будет проблема с версиями ехе), либо играть только с размерами 1920х1080 или 1680х1050(но при 1050 показатели скорости и повреждения будут разъезжаться), хотя можно скомпилить и для меньших размеров(но каких?! щас многие играют на ноутбуках)
_Цвет надписей, мне кажется, легче менять в fxt файле - правда, мало знаю спецбукв/управляющих символов ~r~
__ И с опкодами, даже с text_draw_3 и 4numbers не получилось...
{$CLEO}
wait 100
while true
wait 0
if
Player.Defined($PLAYER_CHAR)
then
0054: store_player $PLAYER_CHAR position_to 0@ 3@ 6@
0170: 9@ = player $PLAYER_CHAR z_angle
008C: 9@ = float_to_integer 9@
008C: 1@ = float_to_integer 0@
008D: 2@ = integer_to_float 1@
0061: 0@ -= 2@ // floating-point values
0@ *= 100.0 // floating-point values
008C: 0@ = float_to_integer 0@
008C: 4@ = float_to_integer 3@
008D: 5@ = integer_to_float 4@
0061: 3@ -= 5@ // floating-point values
3@ *= 100.0 // floating-point values
008C: 3@ = float_to_integer 3@
008C: 7@ = float_to_integer 6@
008D: 8@ = integer_to_float 7@
0061: 6@ -= 8@ // floating-point values
6@ *= 100.0 // floating-point values
008C: 6@ = float_to_integer 6@
0095: make 0@ absolute_integer
0095: make 3@ absolute_integer
0095: make 6@ absolute_integer
//0308: text_6numbers 'COORDS' 1@ 0@ 4@ 3@ 7@ 6@ 10 ms 5
03F0: enable_text_draw 1
//0340: set_text_draw_color 200 0 0 250 // color 200 0 0 255
033F: set_text_draw_letter_width_height 0.4 1.2
045B: draw_text_2numbers 3.0 2.0 GXT 'COORDX' number 1@ 0@
033F: set_text_draw_letter_width_height 0.4 1.2
045B: draw_text_2numbers 80.0 2.0 GXT 'COORDY' number 4@ 3@
wait 5
03F0: enable_text_draw 0
//wait 500
//03F0: enable_text_draw 1
033F: set_text_draw_letter_width_height 0.4 1.2
045B: draw_text_2numbers 3.0 15.0 GXT 'COORDZ' number 7@ 6@
045A: draw_text_1number 70.0 15.0 GXT 'UGOL1' number 9@
end
//03F0: enable_text_draw 0
end{$CLEO}
wait 100
while true
wait 0
if
Player.Defined($PLAYER_CHAR)
then
if
00DF: actor $PLAYER_ACTOR driving //00E0: player $PLAYER_CHAR driving
then
03C0: 0@ = actor $PLAYER_ACTOR car//00DA: 0@ = player $PLAYER_CHAR car
02E3: 1@ = car 0@ speed
0013: 1@ *= 3.6 // floating-point values
0092: 1@ = float 1@ to_integer
0227: 2@ = car 0@ health
0017: 2@ /= 7.81
0085: 3@ = 2@
000E: 3@ -= 128 // integer values
0012: 3@ *= 3
0095: make 3@ absolute_integer
0093: 2@ = integer 2@ to_float //0092: 2@ = float 2@ to_integer
if
0029: 3@ >= 255 // integer values
then
0006: 3@ = 255 // integer values
end
03F0: enable_text_draw 1
0340: set_text_draw_color 255 190 0 230 // color 200 0 0 255
033F: set_text_draw_letter_width_height 0.4 1.2
045A: draw_text_1number 3.0 421.0 GXT 'SPEEDQ' number 1@
038E: draw_box_position 80.0 1015.0 size 2@ 24.0 3@ 50 130 250//0-255 50 150
038E: draw_box_position 80.0 1015.0 size 128.0 24.0 20 0 90 100
end
//03F0: enable_text_draw 0
end
//03F0: enable_text_draw 0
end
Player.Defined - вобще считается, лучше отдельно ставить
_потом условие not Actor.Driving + key_pressed
__И уж после jf @NONAME_11 пойдёт создание машины (Model.Available и т.д.) - даже в справке СаниБилдера вроде пример есть!