#2776 08-12-2010 02:33

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

thread 'CSALST' 
wait 1000 
0A95: enable_thread_saving 
014B: 0@ = init_parked_car_generator #NRG500 color 0 17 1 alarm 0 door_lock 0 0 10000 at -1667.8 1208.7 7.3 angle 270.0 
014C: set_parked_car_generator 0@ cars_to_generate_to 101 
0570: 1@ = create_asset_radar_marker_with_icon 35 at -1663.334 1208.753 7.1 
018B: set_marker 1@ radar_mode 2 
5@ = Pickup.Create(1277, 3, -1663.334, 1208.753, 7.3)

Похоже, вот он, злобный кусок кода, который вызывает ошибку "SCM object limit breached". Я уже говорил, что все скрипты, которые используют генератор и маркеры у меня убраны, однако вот этот я пропустил как то. Чтож, осталось только протестировать оставшиеся скрипты на предмет отсутствия этой ошибки, и больше серьёзных багов у меня не будет. Скрипт этот - CarSaloon.

А вобще у кого-нибудь есть идеи почему так происходит? Вроде ж 0A95 должен предотвращать появление такой ошибки...

Offline

#2777 08-12-2010 06:12

d88
Registered: 15-12-2009
Posts: 254
Website

Re: Один вопрос

Den_spb wrote:

К сожалению я не могу здесь использовать  Interceptor, он плоховлияет на цикл.

Чем он влияет?.

Ну я там в цикле создаю корону, и если использоваю  Interceptor, то корону не видно.


Den_spb wrote:

А снять флаг уникальности - как это сделать если код его записывает?

Не понял вопрос.

Там должно было быть «Не записывает».
Ну как я сниму флаг уникальности, ведь для этого сначала нужно записать актёра в переменную. Но как раз это и не получается.

Offline

#2778 08-12-2010 20:23

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

Sergey81 wrote:
thread 'CSALST' 
wait 1000 
0A95: enable_thread_saving 
014B: 0@ = init_parked_car_generator #NRG500 color 0 17 1 alarm 0 door_lock 0 0 10000 at -1667.8 1208.7 7.3 angle 270.0 
014C: set_parked_car_generator 0@ cars_to_generate_to 101 
0570: 1@ = create_asset_radar_marker_with_icon 35 at -1663.334 1208.753 7.1 
018B: set_marker 1@ radar_mode 2 
5@ = Pickup.Create(1277, 3, -1663.334, 1208.753, 7.3)

Похоже, вот он, злобный кусок кода, который вызывает ошибку "SCM object limit breached". Я уже говорил, что все скрипты, которые используют генератор и маркеры у меня убраны, однако вот этот я пропустил как то. Чтож, осталось только протестировать оставшиеся скрипты на предмет отсутствия этой ошибки, и больше серьёзных багов у меня не будет. Скрипт этот - CarSaloon.

А вобще у кого-нибудь есть идеи почему так происходит? Вроде ж 0A95 должен предотвращать появление такой ошибки...

модель 3 для пикапа не загружена


GIMS developer

Offline

#2779 08-12-2010 22:21

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

3Doomer wrote:

модель 3 для пикапа не загружена

Убрал я этот код совсем. Однако, что странно, ошибка осталась.:rolleyes:
Нашёл ещё один скрипт с 0a95, убрал его, тестирую. клео миссии случайно не грузятся в память, даже если их не запускать? А то в папке с клео лежат несколько штук, но не используются пока. А ещё я заметил, что скриптов с 0a95 у меня нет, но клео сейвы продолжают появляться. Почему?

Offline

#2780 09-12-2010 00:48

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Один вопрос

В клео-сейве (3 версии) записывались не только 0a95, но и блок клео-переменных (т.е. эти сейвы создаются всегда). миссии сами по себе не грузятся.
Не думаешь, что проблема из-за самого SALA, а не скриптов?

Offline

#2781 09-12-2010 03:03

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

Seemann wrote:

В клео-сейве (3 версии) записывались не только 0a95, но и блок клео-переменных (т.е. эти сейвы создаются всегда). миссии сами по себе не грузятся.
Не думаешь, что проблема из-за самого SALA, а не скриптов?

Хм, я раньше использовал штук 30-40 скриптов, SALA + streammemoryfix.asi. Работало всё железно. Потом фикс я убрал за ненадобностью, т.к. в SALA есть такая функция. Сейчас у меня около 60 скриптов, игра полностью проходима, вылеты если и есть, то редко. Но из за этой SCM-object ошибки нужно после каждой трети игры менять сейв на чистый. Так что не думаю что проблема в SALA(но если других вариантов не останется, проверю и его).
На данный момент убрал все сомнительные правки в память и скрипт автосейва, если и в этом ошибки нет - тогда придётся отключать клео совсем и смотреть, точно ли ошибка в клео-скриптах.
ЗЫ. Если кто в сейвах разбирается, в аттаче проблемный. Начинаем миссию, и практически сразу вылет. Причём даже на чистой игре.
UPD. Проверил лимит аджастер. Взял сейв чистый до миссии Are you going to San Fierro. Через mission starter запускаю - вылет(ошибка unknown, не SCM). Убираю SALA, вылета нет, но текстуры не подружаются нормально. Ставлю александровский меморификс, краш при запуске sad Попробую через cleo загружать.
UPD2.

0000: NOP 
0A95: enable_thread_saving
0AA2: 0@ = load_library "radio.dll" // IF and SET 
0AA2: 1@ = load_library "StreamMemFix.dll" // IF and SET 
wait 1000 
0AA3: free_library 0@ 
0AA3: free_library 1@
0A93: end_custom_thread

Вот так работает, это хорошо(а нужен тут 0a95?). Вылета в миссии нет, буду тестить ещё. Но всё равно спасибо Seemann'у за то, что обратил внимание на SALA )

Last edited by Sergey81 (09-12-2010 04:20)

Offline

#2782 09-12-2010 16:50

Seemann
Registered: 07-08-2006
Posts: 2,155

Re: Один вопрос

Если 0A95 оставить, то после сохранения скрипт больше не будет запускаться при загрузке игры. Если 0A95 не будет, скрипт будет стартовать вместе с игрой (новой или сохраненной).

Offline

#2783 09-12-2010 18:24

Sergey81
Registered: 19-12-2008
Posts: 654

Re: Один вопрос

Seemann wrote:

Если 0A95 оставить, то после сохранения скрипт больше не будет запускаться при загрузке игры. Если 0A95 не будет, скрипт будет стартовать вместе с игрой (новой или сохраненной).

Понятно. Но как оказалось, проблема из поста выше не та же самая. Дошёл до миссии Are you going to San Fierro - вылет. Ставлю SALA посмотреть лог, ошибка та же, Exception At Address: 0x00544BC8, Error: SCM Object Limit Breached sad

Offline

#2784 11-12-2010 04:36

GTASA
Registered: 13-09-2008
Posts: 476

Re: Один вопрос

Как в Вайсе сделать игрока невидимым? 0337: set_actor $PLAYER_ACTOR visibility 0 не помогает.

Offline

#2785 11-12-2010 13:06

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

по ходу игрока невидимым нельзя сделать...


Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

#2786 11-12-2010 15:42

mfisto
From: Russia Perm
Registered: 01-02-2008
Posts: 558
Website

Re: Один вопрос

И в трешке и Васе и Сане игрока невидимым таким опкодом сделать нельзя.
Я делал очень просто, брал любого педа, называл его по новому, обрабатывал в 3d max, делал текстуру с прозрачной альфой. Все актер невидимый, а потом просто менял скин у игрока на вот этот и все работает.=)


I know everything and nothing...

Offline

#2787 12-12-2010 01:18

Deniska
Registered: 23-08-2009
Posts: 18

Re: Один вопрос

Игра вылетает - вот лог.
Я так понял, что если запись заканчивается Waitом , то вылет, возможно не из за мэйна ?
Причем игра вылетает не на конкретном месте. А в любое время выполнения
одного из потоков. (кстати в лог этот поток почемто не записался)...

********************************************
 thread main
 Local variables dump:
 354189 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
********************************************

00048040: 00D6
  get numeric params: 1
    param 1 = 0

00048044: 0256
  get numeric params: 1
    param 1 = 0

00048049: 004D (&IFresult = True)
  get numeric params: 1
    param 1 = 48064 (&label: 00BF)

00048056: 09E8
  get numeric params: 1
    param 1 = 1

00048064: 00BF

00048072: 01BD

00048077: 008D

00048085: 008D

00048093: 0086

00048101: 0011
  get numeric params: 1
    param 1 = 30.00

00048111: 0011
  get numeric params: 1
    param 1 = 6.00

00048121: 0011
  get numeric params: 1
    param 1 = 0.50

00048131: 0059

00048139: 0002
  get numeric params: 1
    param 1 = 48036 (&label: 0001)

00048036: 0001
  get numeric params: 1
    param 1 = 0

*********************************
> Total opcodes: 24983560
> Logging finished: 1:01:59
  Powered by SCMLog v1.04
*********************************

Offline

#2788 12-12-2010 02:10

Den_spb
From: Ленинград
Registered: 23-11-2008
Posts: 941
Website

Re: Один вопрос

Если последний в логе - wait, то значит в момент вылета ни один скрипт (или поток мейна) не выполнялся. Скрипт в данном случае может быть косвенной причиной вылета (например, если написать и установить скрипт, удаляющий ближайшие к игроку объекты, а затем попытаться выстрелить из ракетницы, то игра вылетит, т.к. скрипт удалит ракету и возникнет ошибка в процессе, управляющем ракетами).

Offline

#2789 12-12-2010 05:44

Deniska
Registered: 23-08-2009
Posts: 18

Re: Один вопрос

Если последний в логе - wait, то значит в момент вылета ни один скрипт (или поток мейна) не выполнялся. Скрипт в данном случае может быть косвенной причиной вылета (например, если написать и установить скрипт, удаляющий ближайшие к игроку объекты, а затем попытаться выстрелить из ракетницы, то игра вылетит, т.к. скрипт удалит ракету и возникнет ошибка в процессе, управляющем ракетами).

Да уж, косвенные причины тяжелее найти...
Ну ты прям ясновидящий на тему ракет. Как раз в этом месте они обильно юзаются акторами...
Спасибки - будем искать.

Offline

#2790 12-12-2010 15:48

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

Здраствуйте. У меня вопросик) (GTA SA)

Я создал машину. У нее есть свой хэндл. Потом я применил опкод, который выбирает случайную машину, рядом с созданной мной. Так вот как проверить, была ли выбрана машина, которую создал я? а не из проезжающих мимо.)

Offline

#2791 12-12-2010 16:26

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

Ruzel wrote:

Я создал машину. У нее есть свой хэндл. Потом я применил опкод, который выбирает случайную машину, рядом с созданной мной. Так вот как проверить, была ли выбрана машина, которую создал я? а не из проезжающих мимо.)

сравнивай эти 2 переменные, они кажется типа integer.

if
003B:   $car1 == $car2 // (int) 
jf @CAR_NE_RAVNO
jump @CAR_RAVNO

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


Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

#2792 12-12-2010 19:00

~AquaZ~
Registered: 01-03-2010
Posts: 726

Re: Один вопрос

Да, стОит. А что такое set_camera_before_player?

Offline

#2793 12-12-2010 21:58

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

Voron295 wrote:
Ruzel wrote:

Я создал машину. У нее есть свой хэндл. Потом я применил опкод, который выбирает случайную машину, рядом с созданной мной. Так вот как проверить, была ли выбрана машина, которую создал я? а не из проезжающих мимо.)

сравнивай эти 2 переменные, они кажется типа integer.

if
003B:   $car1 == $car2 // (int) 
jf @CAR_NE_RAVNO
jump @CAR_RAVNO

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

это было первым, что я попробовал когда-то на тему ФПС))))
минусы очевидны - тряска камеры(анимация же) и видно части внутренностей головы(глаза, рот)

и ещё, поворачиваться нельзя, или же назад идти нельзя при этом...короче, тупо)


GIMS developer

Offline

#2794 13-12-2010 10:39

Sw[ee]t
From: Нижний Новгород
Registered: 16-02-2009
Posts: 686
Website

Re: Один вопрос

сравнивай эти 2 переменные, они кажется типа integer.

if
003B:   $car1 == $car2 // (int) 
jf @CAR_NE_RAVNO
jump @CAR_RAVNO

Ещё можно проверять на соответствие модели машины.

0441: $car2m = car $car2 model 
if
0137:   car $car1 model == $car2m
jf @CAR_NE_RAVNO
jump @CAR_RAVNO

Получилось более громоздко, да и вообще, лучше использовать сравнение хендлов wink

Offline

#2795 13-12-2010 14:47

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

я нашёл кое-какой способ уменьшить тряску, но здесь есть свои проблемы...насчёт того, что видны глаза и всё остальное - если поставить правильный оффсет, то всё нормально, правда если быстро бежать, то машина не успевает так быстро перемещаться, и приходится брать оффсет почти полметра...а это довольно много, всё-таки было бы намного лучше, если бы можно было прикрепить камеру к объекту...ещё не могу найти номер самой верхней кости головы, нашёл только кость брови...вобщем, сейчас создам тему...
кстати, как использовать опкод 0834: set_player_head_temporary_turn_rotation_Z -2.2 rotation_Y 1.7 а то что-то он у меня не работает

Last edited by Voron295 (13-12-2010 14:56)


Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

#2796 13-12-2010 15:23

Ruzel
Registered: 03-06-2010
Posts: 61

Re: Один вопрос

0327: $TEMPVAR_ACTOR_CAR = get_random_car_with_model -1 in_rectangle_cornerA $111 $112 cornerB $114 $115

Этот опкод выбирает случайную машину в зоне из прямоугольника? $111 и $112 — это координаты левого нижнего угла? или правого верхнего?

Offline

#2797 13-12-2010 15:59

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

Ruzel wrote:
0327: $TEMPVAR_ACTOR_CAR = get_random_car_with_model -1 in_rectangle_cornerA $111 $112 cornerB $114 $115

Этот опкод выбирает случайную машину в зоне из прямоугольника?

да

Ruzel wrote:

$111 и $112 — это координаты левого нижнего угла? или правого верхнего?

2 координаты одного угла, и 2 координаты другого угла, разницы нет, какой из них нижний левый, а какой правый верхний...

вот создал тему - http://sannybuilder.com/forums/viewtopi … 433#p13433

Last edited by Voron295 (13-12-2010 16:11)


Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

#2798 14-12-2010 01:04

Deniska
Registered: 23-08-2009
Posts: 18

Re: Один вопрос

Когда то задавал этот вопрос.
Есть пед из трафика. Как промыть ему мозг ? Что бы он встал как вкопаный, как после
actor.create() и пустого DM.
Дело в том, что после любого задания, которое ему даётся (типа пойти туда-сюда,
проиграть аниму...) он всё равно прёт по своим делам. Вроде как к нему применили
05DE: AS_actor 54@ walk_around_ped_path
Как то можно закрыть ему все TASKи, которые он получил при генерации ?
Пробовал следующее:
1. Нашел нужного педа в трафике
2. Присвоил ему флаг уникальности
3. поставил ему EMPTY_DM (0) - нифига не помогло, он просто перестал реагировать
на плеера и остальных педов, но как пёр по своим педовским делам - так и пёр.
4. Пробовал 0687: clear_actor 0@ task = ессно тоже не помогло (я так понял этот
опкод отбивает у него желание исполнять только скриптовые TASKи)

Просто в некоторых ситуациях приходится создавать нового актора, причем чтоб он не был
виден в момент создания, т.к. это сильно бросается в глаза т.е. в 90% случаев за спиной плеера.
А по идее это должен быть пед из трафика.

Offline

#2799 15-12-2010 19:22

Voron295
From: Каушаны
Registered: 06-12-2010
Posts: 425
Website

Re: Один вопрос

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


Добро всегда побеждает зло. Кто победил, тот и добрый!
userbar.png

Offline

#2800 15-12-2010 19:26

3Doomer
From: КаZан
Registered: 14-05-2008
Posts: 659
Website

Re: Один вопрос

камера привязана к Root кости, которая находится в области жопы...ответ на свой вопрос додумай сам (:


GIMS developer

Offline

Board footer

Powered by FluxBB