Перейти к контенту

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

Тема для обсуждения скриптов всего и всех в серии игр STALKER.


Задавая вопрос (!):
1. Внимательно изучите суть вопроса. Вопрос должен соответствовать выбранной Вами темы. Это поможет сохранить порядок и читабельность темы, а также облегчит поиск и понимание сего;
2. Изучите то, что уже есть в теме (пролистайте "руками", воспользуйтесь поиском на форуме);
3. Изучите информацию которая может вам помочь:

  Информация (Показать)

4. Дабы не превращать обсуждение в "кашу" разной информативной направленности, задавайте несколько вопросов по порядку (в разных постах) после того, как получите ответ на предыдущий вопрос;
5. "Спасибо" и тому подобное - будьте так любезны в ПМ. Если не любите писать в ПМ, в конце вопроса напишите фразу: "Заранее спасибо!" - или что-то в этом духе;
6. ПОЖАЛУЙСТА! Указывайте, для какой игры Вам необходима информация (ТЧ, ЧН, ЗП), если стоит мод - укажите название мода;
7. Если Вы что-то сделали и результат не такой, какой Вами задумывался, то, пожалуйста, приводите коды которые Вы изменяли/писали целиком! Это поможет другим правильно ответить на Ваш вопрос, а также оградит Вас от лишней писанины.
8. Оформляйте сообщение. Пользуйтесь тегами для того, чтобы отделить код от текста. Пишите грамотно - ПОЛЬЗУЙТЕСЬ ЗНАКАМИ ПРЕПИНАНИЯ.
9. И помните: «Правильно заданный вопрос – половина ответа».

 

Какие вопросы следует задавать, а какие нет...

  Читать рекомендуется. (Показать)

И последнее: очень рекомендовано к прочтению Правила форума
 


  • Спасибо 1
  • Полезно 2
Ссылка на комментарий

Совсем обленились...

Ну для начала можно было тут прочитать

Если мало, вот пример...

function Custom_Caption(cap, st, use_icon)
--вызов дополнительного сообщения
    local icon_tip = use_icon or "ui_iconsTotal_esc_blockpost_case_to_trader"
    local task_texture, task_rect = get_texture_info(icon_tip)
    local stl = "iconed_trade_info"
    if st then stl = st end
    db.actor:give_talk_message(cap, task_texture, task_rect, stl)
end

Вот такая функция принимает на входе 3 аргумента.

1) текст, что написать

2) (необязательно) шаблон вывода из XML файла "config\ui\talk.xml" или "config\ui\talk_16.xml". Если не указан, ставит iconed_trade_info по умолчанию.

3) (необязательно) выводимая текстура. Если не указано, то берет текстуру ui_iconsTotal_esc_blockpost_case_to_trader
 

  • Спасибо 1
  • Нравится 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

Как получить текущий параметр итема в слоте в виде числа? Сравнивать этот параметр с числом получается без проблем:

function s1_precondition()
	local item_in_slot_1 = db.actor:item_in_slot(1)
	if item_in_slot_1:condition() < 0.3 then 
		return true
	else 
		return false
	end	
end

А попытка его получить приводить к вылету:

function s1_precondition()
    local item_in_slot_1 = db.actor:item_in_slot(1)
    if item_in_slot_1:condition() ~= nil then
        local item_in_slot_cond = item_in_slot_1:condition
    else
        return false
    end
end
Изменено пользователем dPlayer

Самый некомпетентный на форуме.

Ссылка на комментарий

Добавил спальный мешок в Тень Чернобыля 1.0004 ( добавлял так, как написано в этой статье). но теперь ГГ сам по себе время от времени засыпает. Иногда даже во время боя. Как это исправить, подскажите пожалуйста. 

 

SoC. Спальный мешок.txtДанные загружаются...

Pir%40t%40s.gif

Ссылка на комментарий
@KURT2013, урок вполне рабочий. Если все сделать по нему, то ГГ в принципе не сможет сам по себе или случайно засыпать, т.к. сон включается только через GUI.
  • Согласен 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

@dPlayer

local item_in_slot_cond = item_in_slot_1:condition 

тут тоже скобки нужны, т.е. так:

local item_in_slot_cond = item_in_slot_1:condition()

Изменено пользователем UnLoaded
  • Спасибо 1
Ссылка на комментарий

Всем привет. Нужна помощь в таком вопросе: -  Есть нпс заспавненный через альспавн, его здоровье равно - (upd:health = 0.100000001490116). Есть ли способ его вылечить, не давая ему аптечку через диалог! Например с помощью какой нибудь функции... Игра тч 04 чистая. За ранее благодарен.

Изменено пользователем Х_и_м_и_к
Ссылка на комментарий

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

Ссылка на комментарий

Народ может все таки кто нибудь ответит, на пост выше? Как нпс(у) закинуть в рюкзак аптечку(с дальнейшим его исцелением), именно без диалога и выдачи( <action>dialogs.transfer_medkit</action>).. 

Изменено пользователем Х_и_м_и_к
Ссылка на комментарий

@HellRatz, из X-Ray Extensions:

level.send_event_key_press(dik) - нажатие

level.send_event_key_release(dik) - отпускание

level.send_event_key_hold(dik) - удержание

dik - код клавиши из DIK_keys.

 

@Х_и_м_и_к, если надо просто прибавить здоровья, то нужно сначала получить game_object непися, а потом добавить ему хп. Например, по story_id.

local npc = level_object_by_sid(12345)
if npc then npc.health = 1 end
Изменено пользователем naxac
  • Спасибо 2
  • Согласен 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий
 naxac

А если не по СИДу, по профильному имени непися возможно произвести какие то действия с ним??? Или только СИД?

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

Ссылка на комментарий
@losiara, можно по имени в алл.спавне найти. Если по профилю, то перебирать всех онлайновых нпс и проверять у каждого character_name. Изменено пользователем naxac

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

naxacбез all.spawn, с использованием скриптового НПС.

через "spawn_sections.ltx" по типу:

[aes_monolit_1]:stalker
$spawn		=  "respawn\aes_monolit_1"
character_profile	= aes_monolit_1_master ; профиль сделан именно под этого НПС
spec_rank = master
community = monolith
custom_data = scripts\moy_logic\aes_monolit_1.ltx 

aes_monolit_1 - получаем его имя, спавним через него скриптом непися с отдельным профилем "aes_monolit_1_master

Вот как то так можно по имени с ним работать???

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

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

Ссылка на комментарий

Спасайте! Скриптов вообще не знаю, но хочу адаптировать к моду CoC схему дин.аномалий из мода АМК. Вопрос - надо ли мне создавать отдельный скриптовый файл и копировать в него связанную с аномалиями байду из файла amk.scripts(как я понял, отвечающие за спавн аномалий функции)? И есть ли у кого-то в наличии схема из того же АМК, с помощью которой контроллер превращает нормальных сталкеров в зомбированных? Буду очень благодарен, если скинете ее. Ну и напоследок - ходят по всему интернету слухи, будто в АМК научили сталкеров обходить аномалии. Если скинете мне ее и объясните примерно, как с ней ведут себя сталкеры - век не забуду.

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

Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда...

Ссылка на комментарий

@losiara, У тебя же написано

  Цитата
character_profile    = aes_monolit_1_master ; профиль сделан именно под этого НПС

 

Значит, можем делать так:

  тык (Показать)
  • Спасибо 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

@Zander_driver, я нашел в этом файле что-то, отвечающее за установление неписю группировки зомбированные, но ничего не понял в коде ни до этого, ни после. Можешь вкратце объяснить, за что отвечает код в указанном тобой файле?

 

Стоп, я кажется слегка разобрался. Вот, видимо, функция, которая отвечает за зомбирование.

 

  Функция (Показать)
Изменено пользователем MegaStalker

Все зовут меня Пришедший из Ниоткуда...Почему?Потому что я пришел из ниоткуда и иду в никуда...

Ссылка на комментарий

@MegaStalker,

self.chtime=time_global()+2000

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

Данные о зомбированных хранятся в таблице "zombies", в псторе актера.

amk.mylog() - это просто вывод в лог для отладки.

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

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

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

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

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...