[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 87 из 125«128586878889124125»
Форум » Игры серии GTA » GTA San Andreas » Вопросы по скриптингу Sanny Builder и заказы (Вы можете получить ответы на вопросы по SB и сделать заказ)
Вопросы по скриптингу Sanny Builder и заказы
wmysterio
Администраторы
Скриптер
22.11.11 21:52
Offline
Если у вас возник вопрос по скриптингу Sanny Builder, обращайтесь! Мы постараемся решить вашу проблему wink Это ещё не значит, что все прям бросятся решать во чтобы то не стало, но ответ вы сможете вы получить как вариант решения или как невозможность или сложность решения.
УВАЖАЕМЫЕ ПОЛЬЗОВАТЕЛИ! ПРОСЬБА КОД СКРИПТОВ ПОМЕЩАТЬ В КОНСТРУКЦИЮ КОДА:

или

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

Внимание! От этого момента тема предназначена ещё и для заказов скриптов и миссий. Я это сделал по одной причине - пользователи постоянно путают/или не ищут темы и приводят заказ здесь. Теперь этой путаницы не будет. Здесь можно проводить заказы, но Вы должны указать в начале поста текст "НА ЗАКАЗ". Постарайтесь как можно детальнее объяснить суть скрипта.
Прикрепления: 0248203.png(1Kb) · 9085525.png(0Kb)

wmysterio
Администраторы
Скриптер
20.01.14 21:00
Offline
SINGER, раз просишь, то посмотрю, что можно сделать. Возьму очищенный мейн за основу, а там будет видно.

А чем тебе не угодил очищенный мейн???там же все возможности открыты, вырезаны все сюжетные миссии.
if( robots->EvilFlag = true ) {
robots->KillHumans();
}

SINGER
Проверенные
20.01.14 21:28
Offline
Цитата wmysterio ()
вырезаны все сюжетные миссии.

Вот этим он мне и не угодил...

Добавлено (20.01.14, 20:28)
---------------------------------------------
Кстати спасибо, что ответил на мою просьбу.


wmysterio
Администраторы
Скриптер
20.01.14 22:08
Offline
Цитата SINGER ()
Вот этим он мне и не угодил...
Оставить возможности не затронув миссий не получится, так как после прохождения миссий они открываются используя глобальные переменные. Возможно может получится, путём подмены в возможностях этих переменных, но это будет долго.
if( robots->EvilFlag = true ) {
robots->KillHumans();
}

SINGER
Проверенные
20.01.14 22:22
Offline
Ладно, я уверен у тебя и так дел полно. Дай пожалуйста ссылку на чистый МАИН.
Кстати идею об игре на гитаре придержи. Я попытаюсь найти ребят которые смогут сделать нужную нам анимацию.

wmysterio
Администраторы
Скриптер
20.01.14 22:31
Offline
Цитата SINGER ()
Дай пожалуйста ссылку на чистый МАИН.
Вот ссылка.
У меня времени и правда маловато, но окончательно не отказываюсь. Когда смогу, то конечно попробую сделать.
Цитата SINGER ()
Кстати идею об игре на гитаре придержи. Я попытаюсь найти ребят которые смогут сделать нужную нам анимацию.
Если анимацию будет, то это намного облегчит задачу
if( robots->EvilFlag = true ) {
robots->KillHumans();
}

SINGER
Проверенные
21.01.14 01:36
Offline
Цитата wmysterio ()
У меня времени и правда маловато, но окончательно не отказываюсь. Когда смогу, то конечно попробую сделать.

Спасибо огромное.

Добавлено (21.01.14, 00:25)
---------------------------------------------

Цитата wmysterio ()
Если анимацию будет, то это намного облегчит задачу

Буду как-то решать эту проблему.

Добавлено (21.01.14, 00:36)
---------------------------------------------

Цитата wmysterio ()
конечно попробую сделать.

Слушай, может быть это поможет. есть такая игра Цивилизация 5, ты наверняка о ней знаешь. Так вот. Я хотел сделать так, чтобы развитие технологий не превышало средневековье. И сделал! просто последняя миссия повторяется бесконечно. Я перенес параметр этой технологии, на ту, что мне нужна. Эта технология начала изучаться бесконечно. Далее я закрыл все не нужные технологии и у меня получилась цивилизация исключительно в средневековье!
Может быть здесь нужно сделать тоже самое. Перенести параметры открытия городов в самое начало или поставить после первой миссии, а этот же параметр, удалить там, где он был раньше. То есть выполнив миссию после которой откроется второй город не произойдет ничего, потому что параметр открытия города стоит вначале или после первой миссии, а здесь он удален.
В общем черт его знает, как сделать.
Но сразу говорю. Когда я создавал учебник по моддингу игры СТАЛКЕР, я спрашивал у многих иминитых модмейкеров как сделать так, чтобы один предмет (к примеру аптечка) можно было использовать несколько раз. Мне говорили не майся дурью, это нужно прописать кучу скриптов. Или движок не поддерживает. Они оказались не правы. Я поменял всего лишь одну цифру и аптечка использовалась столько раз сколько я хотел.
Я клоню к тому, что здесь должен быть какой-то выход. Я бы сам с удовольствием занялся бы поиском решения этой проблемы, но мне придется изучать скриптинг МАИН с нуля. Поэтому проще попросить помощи у профессионалов. Хитро, не правда ли? happy

HYPERMUV
Проверенные
22.01.14 18:28
Offline
Мне помогли на офф.форуме сб
Сделали по матрицам
Решение:
Код
0AB1: @SetCarRotationFromCamera 1 car 0@ //Вызов функции 0@ = в данном случае машина

//Функция
:SetCarRotationFromCamera
0A97: 1@ = car 0@ struct // Можно использовать для объекта, object struct
1@ += 0x14
0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0
2@ = 0xB6F99C // Адрес матрицы камеры

// Первые три значения инвертируем, т.к. матрица камеры немного не такая, как у машины
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
3@ *= -1.0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
3@ *= -1.0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
3@ *= -1.0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 8
2@ += 8
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 8
2@ += 8
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
1@ += 4
2@ += 4
0A8D: 3@ = read_memory 2@ size 4 virtual_protect 0
0A8C: write_memory 1@ size 4 value 3@ virtual_protect 0
0AB2: ret 0
//by Voron295
Отредактировал HYPERMUV - Среда, 22.01.14, 18:31

Drs36
Проверенные
23.01.14 15:42
Offline
Вопрос по скрипту в vice city ?

Сделал скрипт на охрану,но есть проблема надо убрать эту длинную полосу в строке guard health и сделать нормальную.

Код
thread '1GUARD'         
       
    :1GUARD_10
    Model.Load(#RUGER)
    Model.Load(#ARMY)
       
    :1GUARD_19
    wait 0         
    if         
    05EE:  key_pressed 51 //VK_...         
    jf @1GUARD_19         
    04C4: create_coordinate 1@ 2@ 3@ from_actor $PLAYER_ACTOR offset 1.0 0.0 0.0         
    $4647 = Actor.Create(CivMale, #ARMY, 1@, 2@, 3@)
    01B2: give_actor $4647 weapon 27 ammo 9999 // Load the weapon model before using this         
    011A: set_actor $4647 flags 64         
    actor.Health($4647)= 500
                  
    03C4: set_status_text_to $4647 1 'TEXT4'          
       
    01DF: tie_actor $4647 to_player $PLAYER_CHAR         
    02E2: set_actor $4647 weapon_accuracy_to 100         
       
    :1GUARD_142
    wait 0         
    if         
           Actor.Dead($4647)
    jf @1GUARD_142         
    Actor.DestroyWithFade($4647)
    wait 10         
    jump @1GUARD_10


Добавлено (23.01.14, 14:42)
---------------------------------------------
Вопрос по gta3 ?

Есть ли опкод который делает машину тяжелее
Отредактировал Drs36 - Четверг, 23.01.14, 15:38
Прикрепления: Guard.fxt(0Kb) · 4953547.jpg(100Kb)

SanKing
Друзья
23.01.14 19:31
Offline
Drs36, уже был похожий вопрос. Вот ссылка.

Slivkin-Sergey
Модераторы
23.01.14 20:16
Offline
Такой вопрос: почему актёр 3@ не стреляет в актёра 5@ из машины?
Код
Car.PutAt(1@, 2246.4314, -2203.8049, 13.8469)                    
Car.Angle(1@) = 135.6955
wait 3000
05D6: clear_scmpath
05D7: add_point_to_scmpath 2185.5186 -2268.4663 13.4887
06BB: set_actor 2@ drive_car 1@ speed 15.0 along_SCM_path
Car.SetSpeedInstantly(1@, 15.0)
067B: put_camera_on_car 1@ with_offset 4.0 6.0 0.0 point_to_actor 2@ tilt 6.0 2
wait 1000
0687: clear_actor 3@ task
0713: actor 3@ driveby_actor 5@ car -1 point 0.0 0.0 0.0 radius 5000.0 8 1 firing_rate 100
wait 4000

КофеиН
Пользователи
24.01.14 16:06
Offline
1.Ник: КофеиН.
2.Название скрипта: Crime City.
3.Полное описание: 1. Чтобы у игрка автоматически устанавливался скин wbdyg2. 2. Чтобы скрипт вызывал такой же эффект, как и от чит кодов BIFBUZZ - члены банд контролируют улицы и MROEMZH - члены банд повсюду и AJLOJYQY - пешеходы дерутся.(чтобы по всему городу были только члены банд и копы по возможности и ни одного обычного пешехода). И по возможности чтобы в игре было только две погоды 1(обычная) и 8(дождь) и при этом чтобы была ночь, тоесть чтобы постоянно время было (00.00). Заранее благодарю. smile
4.Ник скриптера: -
Отредактировал КофеиН - Пятница, 24.01.14, 16:11

wmysterio
Администраторы
Скриптер
24.01.14 16:34
Offline
Цитата SINGER ()
Может быть здесь нужно сделать тоже самое. Перенести параметры открытия городов в самое начало или поставить после первой миссии, а этот же параметр, удалить там, где он был раньше. То есть выполнив миссию после которой откроется второй город не произойдет ничего, потому что параметр открытия города стоит вначале или после первой миссии, а здесь он удален
Я уже предложил другой вариант - подменить во всех внешних скриптах и стартерах к ним глобальные переменные и всё. В миссиях всё равно будет возврат, по этому нету смысла после первой миссии прописывать изменения.
Цитата SINGER ()
есть такая игра Цивилизация 5, ты наверняка о ней знаешь
Слышал о ней но не играл sad

КофеиН, если у тебя версия гта 1.0, то не проблема. попробую сделать.
if( robots->EvilFlag = true ) {
robots->KillHumans();
}

blackful
Пользователи
26.01.14 00:51
Offline
народ, кто может помочь в написании клео? хочу чтобы при 10-20 хп у машины появлялся как бы сломанный звук, или уже есть такой мод?
Евгений_Сергеевич

HYPERMUV
Проверенные
26.01.14 12:18
Offline
blackful,
Код
{$CLEO}
0000:
:1
wait 0
if
actor.Driving($PLAYER_ACTOR) //если мы в машине
jf @1
03c0: 0@ = $PLAYER_ACTOR // записываем хендл машины
:2
wait 0
if
car.Defined(0@) //если машина существует
jf @1
1@ = car.Health(0@) //записывает хп машины
if //если хп мащины меньше 300
not 1@ >= 300 //300 = 30хп 100 = 10хп 200 = 20хп
jf @2
018C: play_sound 1083 at 0.0 0.0 0.0 // то проигрываем звук, это стандартный звук для примера, потом сам подберешь нужное  
018C: play_sound 1084 at 0.0 0.0 0.0
018C: play_sound 1084 at 0.0 0.0 0.0
018C: play_sound 1083 at 0.0 0.0 0.0
:3
wait 0
1@ = car.Health(0@)  
if or
1@ >= 300 //если хп машины восстановилось, переходим в начало, чтобы звук проигрывался
not actor.Driving($PLAYER_ACTOR) //или если мы вышли с машины, возращаемся обратно чтобы делать те же дествия если ты в другой машине
jf @3
jump @1

ну вот короч объяснил как смог

blackful
Пользователи
27.01.14 01:52
Offline
HYPERMUV, большое спасибо) понятно)

Добавлено (27.01.14, 00:52)
---------------------------------------------
HYPERMUV, у тебя версия Sanny Builder 3 какая? а то у меня пишет "Неизвестная команда car.Defined(0@)"

Евгений_Сергеевич

HYPERMUV
Проверенные
27.01.14 05:56
Offline
blackful, я точно не знаю, но встречался с этой проблемой. Набери в поиске car defined и замени это car.defined на найденный тобю опкод. Это походу баг.

blackful
Пользователи
27.01.14 15:16
Offline
HYPERMUV, спасибо! сработало! а вот где "018C: play_sound 1083 at 0.0 0.0 0.0" >>1083 -ид звука? или есть такая тема на счёт таких звуков?
Евгений_Сергеевич

HYPERMUV
Проверенные
27.01.14 19:59
Offline
blackful, да это ид звука. Я не знаю где найти инфу о идах. Могу предложить следущее.
Код
{$CLEO}
  0000:
  :1
  wait 0
  if and
  8ab0: 82 // R
  8ab0: 72 // H
  jf @RestartCleo
  if
  actor.Driving($PLAYER_ACTOR)
  jf @1
  03c0: 0@ = $PLAYER_ACTOR  
  :2
  wait 0
  if
  car.Defined(0@)  
  jf @1
  1@ = car.Health(0@)  
  if  
  not 1@ >= 300  
  jf @2
  018C: play_sound 1083 at 0.0 0.0 0.0
  :3
  wait 0
  1@ = car.Health(0@)   
  if or
  1@ >= 300  
  not actor.Driving($PLAYER_ACTOR)   
  jf @3
  jump @1
  :RestartCleo
  0acd: "Restart" 1000
  0A92: create_custom_thread "carh.cs"  // carh.cs - название скрипта
  end_thread
  jump @1

Добавил рестарт скрипта. Когда ты не в машине и нажмешь R+H этот скрипт перезапустится. Сделал для того чтобы ты мог подставлять разные значения за место 1083 и подбирать какой звук по душе при этом не выходя с игры.
Есть аналогичный вариант
Код
{$CLEO}
  0000:
  :1
  wait 0
  if
  0aab: "CLEO\sound_test.ini" //проверка на наличие ini-файла
  jf @IniCreate  //если его нет, создадим его
  if
  actor.Driving($PLAYER_ACTOR)
  jf @1
  03c0: 0@ = $PLAYER_ACTOR  
  :2
  wait 0
  if
  car.Defined(0@)  
  jf @1
  1@ = car.Health(0@)  
  if  
  not 1@ >= 300  
  jf @2
  0AF0: 30@ = get_int_from_ini_file "cleo\sound_test.ini" section "set" key "sound_id"
  018C: play_sound 30@ at 0.0 0.0 0.0  //значение которое вписано в ini-Файл, в данном случае 1083
  :3
  wait 0
  1@ = car.Health(0@)   
  if or
  1@ >= 300  
  not actor.Driving($PLAYER_ACTOR)   
  jf @3
  jump @1
  :IniCreate
  0AF1: write_int 1083 to_ini_file "cleo\sound_test.ini" section "set" key "sound_id"
  jump @1

Создаст после первого запуска файл в папке CLEO где будет введён ид звука, стандартно установил 1083. Просто сворачиваешь ГТА изменяешь значение в ini на свой, сохраняешь ini. заходишь в гта и всё кнопки не какие не надо нажимать.

blackful
Пользователи
27.01.14 22:37
Offline
HYPERMUV, огромное спасибо тебе! ты не представляешь как я рад) happy
Евгений_Сергеевич

HYPERMUV
Проверенные
31.01.14 21:11
Offline
Ребят пытаюсь написать скрипт для определенной машины, которая должна по идее стать выше, т.е. поднять подвеску, но не получается, проблема в определение машины и действие над ней.
Код
{$CLEO}
0000:
:1
wait 0
if
actor.Driving($PLAYER_ACTOR)
jf @1
03c0: 0@ = $PLAYER_ACTOR
0@ = 0xC2B9DC
1@ = 1  // по идее для машины Bravura, как мне сказали
1@ *= 224
005A: 0@ += 1@
0@ += 0xBC   
0A8C: write_memory 0@ size 4 value -0.3 virtual_protect 0
jump @1

Помогите пожалуйста
Отредактировал HYPERMUV - Воскресенье, 02.02.14, 16:36

Форум » Игры серии GTA » GTA San Andreas » Вопросы по скриптингу Sanny Builder и заказы (Вы можете получить ответы на вопросы по SB и сделать заказ)
Страница 87 из 125«128586878889124125»
Поиск: