Перейти к содержанию

Рекомендуемые сообщения

 
 

А вот как сделать выброс по-требованию? Переходим на локацию, входим в триггер, что ему прописать для начала выброса? 


Эх, Самара- городок, ветер северный, отожрал я себе пузо, как беременный.:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Ayden start_surge

  • Жму руку 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

подскажите как сделать что бы отметки на карте в пда (скадовск, лесопилка и т.д) появлялись по условию а не сразу, гуглил, гуглил, ненагуглил.

 

Изменено пользователем Pavel2000

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Pavel2000 посмотри SGM 2.2, там есть, когда гг подходит к ним.

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Найти то я нашёл, только я не понимаю как правильно прописать ту функцию которая там используется в апдейт


Дополнено 14 минуты спустя
Спойлер

function fill_primary_objects()
	for k,v in pairs(primary_objects_tbl) do
		local obj_id = get_story_object_id(v.target)
                --/ SGM in
		if obj_id and has_alife_info(v.target) then
		   level.map_add_object_spot(obj_id, "primary_object", v.hint)
		end
                --/ SGM out
	end
	change_anomalies_names()
	fill_sleep_zones()
end

 

Спойлер

--/ SGM in
function check_and_found_pda_areas()
   for k,v in pairs(primary_objects_tbl) do
      if dont_has_alife_info(v.target) then
         local obj_id = get_story_object_id(v.target)
         if obj_id and db.storage[obj_id] and db.storage[obj_id].object then
            local n_dist=100
            if level.name()=="darkvalley" then
               n_dist=50
            elseif level.name()=="agroprom" then
               n_dist=60
            elseif level.name()=="military" then
               n_dist=70
            elseif level.name()=="escape" then
               n_dist=50
            elseif level.name()=="marsh" then
               n_dist=90
            elseif level.name()=="red_forest" then
               n_dist=65
            end
            if db.storage[obj_id].object:position():distance_to(db.actor:position())<=n_dist then
               give_info(v.target)
               news_manager.send_tip(db.actor,game.translate_string(v.hint),0,"founded_area",5000,nil,game.translate_string("st_revealled_area"))
               fill_primary_objects()
            end
         end
      end
   end
end
--/ SGM out

 

Спойлер

function update_main()
   update_update()
end
function update_update()
   dunin_ammo.on_update()
   ui_mod_elements.allspawn_editor_update()
   if check_seconds(2) then
      ui_mod_elements.mp3_update()
   end
   if check_seconds(4) then
      ui_mod_pda.pda_update()
   end
   if check_seconds(5) then
      if check_ui_worked(true) then
         pda.check_and_found_pda_areas()
      end
   end
  -- отрывок кода --

 

Спойлер

function sigerous_mod_main()
   sigerous_mod_loader()
end
function sigerous_mod_loader()
   save_manager:update()
   battery_manager:update()
   if check_seconds(3) then
      blackday_manager:initialize()
      blackday_manager:update()
   end
   sgm_container.container_main()
   if check_seconds(3) then
      sgm_cleaners.cleaners_main()
   end
   if check_seconds(1) then
      sgm_distance.distance_main()
   end
   sgm_effects.effects_main()
   if check_seconds(2) then
      sgm_reward.reward_main()
   end
   hud_manager:update()
   if check_seconds(4) then
      sgm_utils.utils_main_1()
   end
   if check_seconds(1) then
      sgm_utils.utils_main_2()
   end
   sgm_inventory.inventory_main()
   sgm_options.options_main()
   if check_seconds(1) then
      sgm_message.message_main()
   end
   sgm_queue.queue_main()
   if check_seconds(1) then
      sgm_tasks.task_main()
   end
   if check_seconds(3) then
      sgm_offline.offline_main()
   end
   sgm_variables.variables_main()
   if check_seconds(5) then
      sgm_spawner.spawner_main()
   end
   if check_seconds(30) then
      sgm_utilizator.utilizator_main()
   end
   if check_seconds(3) then
      sgm_respawn.respawn_main()
   end
   sgm_modules.module_actor(db.actor)
   if check_seconds(30) then
      sgm_mechanics.mechanics_main()
   end
   sgm_update.update_main()
   sgm_timers.timers_main()
end

 

Спойлер

        --/ SGM in
        if mod_update() then
           sgm_loader.sigerous_mod_main()
        end
        --/ SGM out

 

Получается такая вот цепочка

check_and_found_pda_areas->update_update->update_main->sigerous_mod_loader->sigerous_mod_main

но тут появляется "mod_update"

Спойлер

function mod_update()
   return sgm_flags.bool_mod_update==nil or sgm_flags.bool_mod_update==true
end

 

помогите сократить эту цепочку пожалуйста. почитал про калбэки но так и не понял. Типо почему в сгм так много нагорожено промежуточных функций

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

как сделать так, чтоб неписи просто ходили туда сюда по заскриптованному кругу, как сторожи

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

sosiska23, на форуме есть поиск, нужна логика walker.


Дополнено 18 минуты спустя

Pavel2000, можно упростить до выдачи инфопоршня при посещении рестриктора игроком, просто выдавая его в `sr_idle` через метод `on_actor_inside`. Особо не шарю по логикам, но суть будет ясна.

Спойлер

image.png.daa93d82a41cc663e746e1e3e0ca7d11.pngimage.png.91f24491014da256a3e43ab1af8ef1b5.png

 

  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Pavel2000 сказал:

я не понимаю как правильно прописать ту функцию которая там используется в апдейт

Так тупо и пропиши ее в апдейт.

1 час назад, Pavel2000 сказал:

Типо почему в сгм так много нагорожено промежуточных функций

Это характерно для кода GeJorge: от гениальности до, как так можно писать - один шаг.

PS: А вообще ровно такую задачу я реализовывал в Поиск укрытий от выброса

  • Мастер! 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Почему так? Я про полоски, где-то есть где-то нет

20241117_150656.jpg

20241117_150632.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Вопрос. Где можно откопать билдовскую лабу X-18?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Народ, кто знает как на карте сделать пометки точек интереса как в оригинальном ЗП? Ну то есть условный кружок на АТП поставить. А то все метки на одних аномалиях, а так и карта кажется пустоватой.
Для справки: мод "Legends Returns" на платформе ЗП.

Изменено пользователем Валера Казак

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Валера Казак ставишь рестриктор там где нужна эта метка, прописываешь ему стори айди,  и в файле pda.script прописываешь этот айди по аналогии как в там в таблице


Дополнено 1 минуту спустя

 

 

  • Жму руку 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Столкнулся с проблемой что НПС не хотят приветствоваться в никакую, хоть кастомная фраза хоть из ориг ЗП, молчат и всё, сталкивался кто-нибудь с такой проблемой?

Спойлер

[meet@main]
close_distance  = 0
close_snd_distance = 3
close_snd_hello = jup_a6_duty_leader_greeting
close_snd_bye     = nil
close_anim         = nil
close_victim     = nil
far_distance  = 0
far_anim         = nil
far_victim         = nil
use = true
snd_on_use = {!dist_to_actor_le(3)} nil
allow_break = false
abuse = false

 


Дополнено 5 минуты спустя

Ремарочка, они всё таки говорят их но с очень большой задержкой по секунд 20-30.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vladvexa188 возможно стоит настройки jup_a6_duty_leader_greeting в script_sound.ltx поменять(но это не точно)


Дополнено 4 минуты спустя

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vladvexa188 НПС видит ГГ? Если нет, никаких приветствий или прощаний не будет.

Изменено пользователем denis2000

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

@denis2000 Конечно видят, они видят и в тупую не приветствуются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
В 17.11.2024 в 18:01, Крим сказал:

Вопрос. Где можно откопать билдовскую лабу X-18?

Если я не ошибаюсь, в Ветре Времени есть (самая последняя лаба), если нужно сразу на ЗП.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Mawrak А как там уровень вообще называется?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
29 минут назад, Крим сказал:

Mawrak А как там уровень вообще называется?

Не смог найти нигде название, лаба там проходится за 5 минут, чисто для галочки вставили в последней версии (для измененной концовки, как я понял), название можно посмотреть в меню сейв-лоада но никто из ютуберов его на этой локе не открывал. Я думаю по списку уровней должно стать понятно, если нет, то всегда можно "заменить" геометрию любой локации в готовом моде на геометрию другой и посмотреть в игре (главное ИИ сетку не трогать).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
В 17.11.2024 в 17:01, Крим сказал:

Вопрос. Где можно откопать билдовскую лабу X-18?

Из билдов, например X-18 есть в 2205 билде.
 

Спойлер

Ссылка на сам билд на S.T.A.L.K.E.R. Wiki: Zone Chronicles: https://stalker.fandom.com/ru/wiki/Build_2205 здесь же сможешь скачать сам билд.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Можно ли указать отдельный файл для текстур иконок артефактов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Pavel2000 Бес правок движка - нет.

  • Лайк 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Внёс изменения в оригинальную локацию CoP через SDK, отдельно локация запускается, но в этом all.spawn нет других оригинальных локаций. Как сделать, чтобы она работала с остальными локами?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Pavel проверьте что:

1) В gamedata (от СДК и от игры) тоже лежат эти локации в своих папках, и что они прописаны в файлах game_levels.ltx в СДК и в игре.

2) В папках всех уровней в gamedata (от СДК) должны быть файлы level.spawn и level.game. Это те файлы, которые потом батником собираются в общий all.spawn, который уже используется самой игрой. Если их нет, то их нужно создать (открываем каждую локацию в СДК и нажимаем Make game), либо перенести из игры ванильные (для локаций, которые вы изменяли, нужно чтобы были те, которые генерирует СДК, естественно).

4) В батнике для компиляции all.spawn прописаны все локации (локации, не прописанные в батнике, будут игнорироваться при сборке all.spawn).

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

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