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

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

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


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

 
 

Stalkerin. Там есть много хороших статей касательно данной темы.
Уроки по модостроению. Есть рабочие примеры готовых скриптов различного назначения.

 

Справочное руководство по языку Lua 5.1
https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual/ru
Справочник по функциям и классам. Собрано много информации по функциям и классам, не всем, но по основные сведения предоставлены.

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

 

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

 

Задавайте вопросы, которые касаются непосредственно скриптов и их работы, т.е. Вы что-то делаете, а у Вас что-то не получается, при этом у Вас на руках должен быть хотя бы какой-то код, свидетельствующий о Вашей причастности к вопросу.

 

Вопросы которые будут удалятся, следовательно их задавать не нужно:
-- Где находится та или иная функция?
Для ответа используем поиск по словам среди файлов оригинальной игры или мода, если объект поиска относится к нему, при помощью программы, которая Вам наиболее симпатизирует;
-- Как сделать что-то/то-то?
С подобными вопросами, либо в "ковырялки", где Вам вероятнее всего так же не ответят, либо выдвигаем мысли, подкреплённые теорией, практикой (идеальный вариант) и здравым рассудком;
-- Вопросы со смыслом: "сделайте", "совместите" и подобными глаголами повелительного наклонения.
-- К тому же удалению будут подвергаться вопросы, в которых масштабно не используются теги, для отделения кода и цитат от основного текста, а также не вписан в спойлер код размером превышающие семь строк.
Ответ на возможно возникший вопрос: В какую тему можно обратиться по поводу логики и спавна объектов?
В тему "ковырялок" соответствующей версии игры, для которой Вы задаёте вопрос.

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


  • Спасибо 1
  • Полезно 2
Ссылка на комментарий
5 минут назад, Graff46 сказал:

Как предметы указывать будите? (ид, имя секции, .... ?)

Имя секции.

Важнейшая задача цивилизации - научить человека мыслить.

Ссылка на комментарий
7 часов назад, dPlayer сказал:

как выдать поршень при подборе предмета в чистом поле без задания

Создай предмет на классе II_DOC и в его свойстве Info portion можешь указать нужный поршень.

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

@Charsi, а это на тч работает? Не нашел примера в оригинале. Вот так что-то нет, хотя предмет спавнится в трупе:

class = II_DOC

info_portion = info_1

 

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

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

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

@dPlayer, ну конечно. Вот сюда: actor_binder:on_item_take (obj). А дальше через секцию объекта или по другим нужным критериям.

Возможно, метод @Charsi более оптимален, но это я подтвердить или опровергнуть не могу.

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

@stalkergoshawk

function set_dir(id, dir) -- установка дирекции (поворота) объекта через нэт-пакет (нужны правки скриптов с типами объектов)
local sobj = alife2:object(id) 
	if sobj then 
		local pk = get_netpk(sobj, 0) 
		if pk:isOk() then 
			return pk:setCallback( { direction = dir } )
		end
	end
	return false
end

Нужно подключить модуль m_netpk.script

 

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

@Fenrir02

Скрытый текст

function release_random_item(num)
	local Tabl = {["section"] = true, ["section2"] = true} -- таблица необрабатываемых предметов по их секциям
	
	local actor = db.actor
	local cnt = actor:object_count()
	if cnt < num then return end
	for i=1, num do
		local item = actor:object(math.random(0, cnt-1))
		local sobj = alife():object(item:id()) 
		if sobj and not Tabl[sobj:section_name()] then
			alife():release(sobj,true)
			cnt = actor:object_count()
		end
	end
end

 

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

@Kirgudu, да метод @Charsi как-то оптимальнее, чем ещё одна проверка в бинд_сталкер, но он что-то не работает или я что-то туплю( Придется делать по твоему.

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

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

@dPlayer, в оригинальном движке этот класс умеет выдавать поршень, только если он есть в нетпакете. Т.е., например, если объект на этом классе будет в all.spawn. Ну или спаунить и через нетпакет прописывать ему поршень. Притом, даже этот вариант имеет свои подводные грабли. Например, лежит ПДА на этом классе и через all.spawn или нетпакет ты указал ему поршень. Если этот ПДА подберет какой-нибудь непись, то он получит указанный поршень. Если после этого ты откроешь диалог с этим неписем или обыщешь его труп, то актор тоже получит этот поршень, не смотря на то, что ПДА он не брал.

 

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

Всем привет. Кто может помочь по одному вопросу. Как можно (если можно) восстановить пинание тушек мутантами (кровососами) как на этом видео ? https://www.youtube.com/watch?v=vCo9zwMHv6s 1:54  Или подскажите, мод, если такой есть, где есть это 

jpwsa5byp73nyaufrbis15dcci1y.png
 

Ссылка на комментарий
1 час назад, DoberBull сказал:

@I am Dead да я в курсе. Потому и спрашиваю, может быть кто-то знает как восстановить.

Глянь в oblivion lost,может там это востановленно.

 

 

Ссылка на комментарий
В 30.11.2018 в 14:51, DoberBull сказал:

Как можно (если можно) восстановить пинание тушек мутантами (кровососами) Или подскажите, мод, если такой есть, где есть это .

Насчёт мутантов не скажу, но для НПСов такое сделал Сапсан в НС2016. Что делают НПСы :

- делают контрольный выстрел в труп мутанта, перед тем как отрезать часть монстра. Для верности.

- пинают трупы ногой. Так же для проверки и убеждения, что моб мёртв.

- смотрят в ПДА у костров.

- рассматривают найденные или купленные артефакты у костров.

- оттаскивают трупы от костров.

- не обыскивают моба, если видят, что это сделал ГГ.

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

- не светят фонариком в морду ГГ, когда начинают разговор.

 

....и + куча мелких фишек, которые щас уже и не вспомню, но постепенно вводил Сапсан в НС2016 или совершенствовал уже введённые из совмещённого соляночного АИ-аддона Бака+Монороха+Xstream.

Всё сделано скриптово, без правок движка.

 

Думаю можно пинание НПС заменить на монстров. Если знаешь скрипты.

 

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

"Кругом зомби.....у меня кончаются патроны...."

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

@BFG спасибо конечно, правда я уже сделал эту фишку, поправив анимку через СДК у кровососа. Заодно добавил ему анимацию испуга, и пару билдовских анимок контролеру

  • Нравится 1

jpwsa5byp73nyaufrbis15dcci1y.png
 

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

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

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

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

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

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

Войти

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

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

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