Автор Тема: Группы педов и скрипт пляжа  (Прочитано 2440 раз)

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 598
  • Репутация: +92/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Группы педов и скрипт пляжа
« : Август 29, 2017, 05:19:34 pm »
Тут обнаружилось, что на очищенном main.scm перестает работать разделение на группы пешеходов, по всем зонам гуляют одинаковые педы. Я раньше думал, что группы зависят от info.zon, где разделение карты на зоны, и pedgrp.dat, где настройки педов для этих зон. Отсюда вопрос, что в мэйне влияет на активацию групп педов.

Второй вопрос, мне хотелось бы вытащить отдельно зону пляж и события для нее, такие как загорающие люди, заметил, что они начинают это делать с 10 утра. Если это тоже в скрипте, то подскажите, где искать это место. Уточнил - загорающие люди проявляются и без скрипта, если поставить пляжников по дефолту для всех зон, значит надо копать в exe, второй вопрос снимается.
« Последнее редактирование: Август 29, 2017, 05:52:19 pm от xanser »

Оффлайн Shagg_E

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 705
  • Репутация: +24/-4
  • Изобретательный Рукожопъ
    • Просмотр профиля
    • NewRockstar
Re: Группы педов и скрипт пляжа
« Ответ #1 : Август 30, 2017, 01:55:49 pm »
Где-то на каком-то сайте уже писал об этом, но мне проще повторить, чем искать, где...

navig.zon, map.zon и info.zon работают независимо друг от друга и могут не совпадать.

navig.zon - зоны для отображения названий зон на экране
map.zon - зоны для определения принадлежности к одному из двух островов(эту фичу я не использовал в своей глобалке и очистил файл, т.к. сейчас не 2002 год, чтобы пекарни не справлялись со всей картой сразу)

info.zon - зоны для пешеходов, банд и прочего. Это самое интересное.
Например, прописываешь ты такую зону(скорее всего назвать можно как угодно, но я не помню уже, почему оставил дефолтное street1):
zone
Street1, 2, -330.809, -1932.62, 0.0, -796.809, -1566.62, 200.0, 1  //Sideville
end
далее в pedgrp.dat выбираешь любые 2 строчки кроме нулевой(первой - той, что default), и "заселяешь" её пешеходами(я взял 1 и 2 строчки):
BFOST, HMYST, HMOST, HFYBU, HFYRI, BFYST, BMYST, BMYRI, WFYSH, WMOBU, WMYBU, WFYBU, WMORI, WMYRI, WFYRI, WMYCR // default
BFOST, HMYST, HMOST, HFYBU, HFYRI, BFYST, BMYST, BMYRI, WFYSH, WMOBU, WMYBU, WFYBU, WMORI, WMYRI, WFYRI, WMYCR //1 street1 (new Sideville)
HFOST, HMYST, HMOTR, BMYCR, BFYPR, BMOTR, BMYPI, WFYST, WMOBU, WFYPR, WFOTR, WMOTR, WFYG1, WFYG2, WMYPI, BMYBB // street1 night (new Sideville)


Далее - работа в scm:
Код: Text
  1. 0324: set_zone_pedgroup_info 'STREET1' 1 1   // 1=Day,0=Night !! Number in pedgrp.dat
  2. 0324: set_zone_pedgroup_info 'STREET1' 0 2   // 1=Day,0=Night !! Number in pedgrp.dat
- где первый параметр - название строчки в info.zon, второй - время работы зоны(1 - день, 0 - ночь), третий - номер строки из pedgrp.dat

Игра определяет "день" вроде с 8 утра до 8 вечера, но не уверен на счет этого...

Код: Text
  1. 04EC: set_zone_car_class_info 'STREET1' 1 250 200 0 0 300 0 100 0 150 500 500      // 1=Day,0=Night !! normal+poor+rich+executive+worker+big+taxi+moped+motorbike=1000 !! leisureboat+workerboat=1000
  2. 04EC: set_zone_car_class_info 'STREET1' 0 50 300 0 0 400 0 200 0 50 500 500      // 1=Day,0=Night !! normal+poor+rich+executive+worker+big+taxi+moped+motorbike=1000 !! leisureboat+workerboat=1000
- снова первый параметр - название строчки в info.zon, второй - время работы зоны(1 - день, 0 - ночь), следующие 9 параметров - вероятность появления определенных типов транспорта(в сумме должно быть 1000. Можно меньше, но не больше!), а последние 2 параметра - вероятность появления лодок(тоже в сумме должно быть 1000). Типы подписаны в комментарии к опкоду выше.

Код: Text
  1. 015C: set_zone_gang_info 'STREET1' 1 10 0 0 0 0 0 0 0 0 0 5   // 1=Day,0=Night !! Civil+Gang0+Gang1+Gang2+Gang3+Gang4+Gang5+Gang6+Gang7+Gang8+COPS<=1000
  2. 015C: set_zone_gang_info 'STREET1' 0 10 0 0 0 0 0 0 0 5 0 10   // 1=Day,0=Night !! Civil+Gang0+Gang1+Gang2+Gang3+Gang4+Gang5+Gang6+Gang7+Gang8+COPS<=1000
- снова первый параметр - название строчки в info.zon, второй - время работы зоны(1 - день, 0 - ночь), следующие 11 параметров - вероятность появления определенных типов пешеходов: мирных жителей, банд и копов(в сумме должно быть 1000. Можно меньше, но не больше!). Типы подписаны в комментарии к опкоду выше.

Код: Text
  1. set_zone_car_info 'STREET1' 1 270 0 0 0 0 0 300 0 5 0 10   // 1=Day,0=Night !! Civil+Gang0+Gang1+Gang2+Gang3+Gang4+Gang5+Gang6+Gang7+Gang8+COPS<=1000
  2. set_zone_car_info 'STREET1' 0 80 0 0 0 0 0 40 0 10 0 20   // 1=Day,0=Night !! Civil+Gang0+Gang1+Gang2+Gang3+Gang4+Gang5+Gang6+Gang7+Gang8+COPS<=1000
- то же самое, что и выше.

Код: Text
  1. 0236: set_gang 5 car_to #ANGEL
  2. 0236: set_gang 7 car_to #WALTON
  3. 0235: set_gang 5 models_to #BKA #BKB
  4. 0235: set_gang 7 models_to #WMYGO #WMOGO
  5. 0237: set_gang 5 primary_weapon_to 6 secondary_weapon_to 21
  6. 0237: set_gang 7 primary_weapon_to 3 secondary_weapon_to 3
- тут я думаю - всё очевидно)
« Последнее редактирование: Август 30, 2017, 02:24:53 pm от Shagg_E »

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 598
  • Репутация: +92/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Группы педов и скрипт пляжа
« Ответ #2 : Август 30, 2017, 06:10:23 pm »
Спасибо за подробный ответ, значит мне не хватало 0324: set_zone_pedgroup_info для запуска деления на зоны, из остального я часть уже переписал через функции.