[sr_idle]
on_info = {+new_restriktor} nil %=play_snd(829:characters_voice\scenario\hlextract\ravenholm_1)%
829: - это что такое???
В любом файле инфопоршней:
<info_portion id="new_restriktor">
<action>new_restriktor.gavnico</action>
</info_portion>
В новом скриптовом файле new_restriktor
Код:
function r_shape(packet)
local s
local st = {}
st.count = packet:r_u8()
st.shapes = {}
for i=1, st.count do
s = {}
s.type = packet:r_u8()
if s.type == 0 then
s.center = packet:r_vec3()
s.radius = packet:r_float()
else
s.axis_x = packet:r_vec3()
s.axis_y = packet:r_vec3()
s.axis_z = packet:r_vec3()
s.offset = packet:r_vec3()
end
st.shapes[i] = s
end
return st
end
function w_shape(packet, st)
local s
packet:w_u8(st.count)
for i=1, st.count do
s = st.shapes[i]
packet:w_u8(s.type)
if s.type == 0 then
packet:w_vec3(s.center)
packet:w_float(s.radius)
else
packet:w_vec3(s.axis_x)
packet:w_vec3(s.axis_y)
packet:w_vec3(s.axis_z)
packet:w_vec3(s.offset)
end
end
end
function rewrite_restrictor(se_obj, custom, radius)
local packet = net_packet()
se_obj:STATE_Write(packet)
local game_vertex_id = packet:r_u16()
local distance = packet:r_float()
local direct_control = packet:r_s32()
local level_vertex_id = packet:r_s32()
local object_flags = packet:r_s32()
local custom_data = packet:r_stringZ()
local story_id = packet:r_s32()
local spawn_story_id = packet:r_s32()
local shape = r_shape(packet)
local restrictor_type = packet:r_u8()
function gavnico()
local se_obj = alife():create("space_restrictor",vector():set(-95.587,0.24,148.723),45628,1422) --координаты
local custom = "[logic]\ncfg = [red]scripts\\moy_logic\\new_restr.ltx"[/red] -- путь к папке с логикой
rewrite_restrictor(se_obj, custom, 5.0) --размер рестриктора
end
вот отрывок из мануала по созданию худ модели: Работа с материалом
Для начала - откроем 3DSMax.
Импортируем модель, открываем редактор материалов (по умолчанию - кнопка М). Нажимаем на кнопку Standart, выбираем. STALKER Mtl.-вот про него я говорю и спрашиваю где его взять.
Кликнем по маленькой кнопочке напротив Diffuse, выбираем Bitmap, и находим нашу текстуру. Далее, присвоим её нашей модели. Все, с текстурированием покончено
losiara Скриптовым методом очень удобно без слов, но если сюжет новый, то без ковыряния all.spawn не обойтись. По любому нужно работать 2-мя способами.
xalk2012 когда заходишь в "материал эдитор" , около названия текстуры есть кнопочка STANDART. Кликаешь на нее, вылезет окно, в нем найди кнопку STALKER Mtl и кликни по нему. Потом вместо СТАНДАРТ появится STALKER Mtl . Ну а дальше "Кликнем по маленькой кнопочке напротив Diffuse....."
Конечно, что бы появился сталкер мтл, нужно установить плагины необходимые! тут это не обсуждается.
xalk2012 material editor (шарики справа верхней панели!) там выбираешь материал а лучше битмап просто а уже в СДК делать материал в object (objects\library editor выбираешь обьект и жмешь properties) кажется таГ) потом ставить на локу или гоняешь в OGF и будет те счастие) лучше ставить в СДК так как материал сталка бывает роняют макс (то есть вылет без сохранения)
Привет дружище!!!
Не могу вскрыть zp-2 all.spawn, хотел достать у них секцию зомби гражданский. Чем паковали какой версией х-з... У тебя нет такой секции???
Сообщение было успешно отредактировано losiara (20-12-2011 01:09 GMT3 часа, назад)
Это собака на Кордоне, а зомби гражданский как прописывается???
[109]
; cse_abstract properties
section_name = dog_weak
name = esc_bd__m_dog_e_0008
position = -78.4933471679688,-3.30270385742188,5.619460105896
direction = 1.45121788978577,-0.480897396802902,-1.57079637050629
cse_abstract properties
section_name = zombie_weak --если так, то АСDC не запаковывает, причем никакая версия!!!
name = esc_zombie
position = -78.4933471679688,-3.30270385742188,5.619460105896
direction = 1.45121788978577,-0.480897396802902,-1.57079637050629...
добавлено спустя 3 минут
Dark Scripter
I welcome you!!!
Question why you speak in English? At me very weak knowledge of language. And the second, this file at me is and further what to do, they at me and scripting are registered.
Относительно функции внес некоторые коррективы:
function prov_npc()
local actor = db.actor
local armor = db.actor:item_in_slot(6)
if actor:alive() == true and armor and (armor:section() == "bandit_outfit" or armor:section() == "bandit_master_outfit" or armor:section() == "bandit_veteran_outfit" or armor:section() == "bandit_antigas_outfit_m1")
then
db.actor:set_character_community("bandit", 0, 0)
elseif (armor ~= nil and armor:section() == "specops_outfit")
then
db.actor:set_character_community("military", 0, 0)
elseif (armor ~= nil and armor:section() == "dolg_outfit")
then
db.actor:set_character_community("dolg", 0, 0)
else
db.actor:set_character_community("actor", 0, 0)
end
end
Можешь заценить в тестовом варианте, работает...
добавлено спустя 12 минут
Для того что бы заспавнить живность, необходимо иметь исходные данные по этой живности, например:
m_zombie.ltx, в этом файле находится вся информация по данному монстру (конфигурационная), и игра, берет данные при спавне именно из этого файла, там же прописаны и секции zombi_normal, и т. д.
Я спавню через скрипт и получаю монстра по координатам, юзаемого, злого, агрессивного, с логикой или дефолтного!!! А если есть необходимость спавна через all.spawn, как должна выглядеть там секция вырезанного зомбяка???
Если я добавляю собаку ну или кабана по анологии, проблем нет, а если вырезанных монстров, то не собирается...
Сообщение было успешно отредактировано losiara (20-12-2011 02:32 GMT3 часа, назад)
О том, что ты сделал, я тоже уже думал. К примеру в моде АМК естьтакие зомби, которые взрываются, оставляя за собой скелет либо пол скелета.
Таким же местом добавлял других, чтобы взрывались.
скрипт amk_mod.script
if obj:section()=="zombie_blow" or obj:section()=="gigant_strong" or obj:section()=="bloodsucker_hell" then
amk_particle.amk_particle({
particle="amk\\zomb_explode",
pos=obj:position(),
sound=[[weapons\t_f1_explosion]]
})
local dist = db.actor:position():distance_to(obj:position())
if dist < 30 and db.actor:see(obj) then
local h = hit()
h.impulse = 0
h.draftsman = db.actor
h.direction = vector():set(0,0,0)
h:bone("bip01_spine") -- чтобы учитывалась броня
h.power = 0.2/dist
h.type = hit.strike --chemical_burn
db.actor:hit(h)
h.power = 1/dist
h.type = hit.chemical_burn
db.actor:hit(h)
end
local skel = amk.spawn_item("breakable_object",obj:position(),obj:game_vertex_id(),obj:level_vertex_id())
local t = amk.get_breakable_data(skel)
t.visual = zombi_skeletons[math.random(table.getn(zombi_skeletons))]
t.mass = 1.0
t.physic_type = 3
t.skeleton_flags = 1
amk.set_breakable_data(t,skel)
alife():release(alife():object(obj:id()))
end
end
Зарядил динамитом крутого гиганта и один вид кровососов.
скриптеры, помогите пожалуйста
заделал локацию РЛС дуга и узнал в инете про ее способность создавать помехи
так вот как сделать так чтобы при подходе карта на ПДА и ХУДе, контакты, точки на мини карте, все это пропадало и при включении ПДА издавал каждый раз звук но только все это в зоне ее действия?
и еще чтобы днем объект исчезал а ночью появлялся как заделать можно? (хочу чтобы неписи когда спали ложили матрацы и ложились на них места сна сделал а вот матрацы еще сделать бы!
Сообщение было успешно отредактировано Strchi (20-12-2011 11:17 GMT3 часа, назад)
<dont_has_info>info_dwa</dont_has_info> --условия проверки отсутствия данного инфопоршня у ГГ.
На какой нибудь фразе в диалоге:
<give_info>info_dwa</give_info> --выдача инфопоршня
REKSID1
А ты в диалоге storyline_eliminate_gunslinger, поменял на свое название?
<info_portion id="esc_kill_gunslinger"> -- это название инфопоршня
И вообщекак у тебя с изменениями выглядят оба файла???
dimak
Может ему нужно просто [meet] в логике прописать и все??? Мне кажется, что он только запутался еще больше. Сюжет у него не получится все равно убрать\изменить по серьезному.
Или отдельный квест прописать без изменения сюжетной линии...
losiara Тут нужно быстрей всего видеть, что он делает вообще. Если сменил таски, то с какого перепугу задание выдает на убийство стрелка? Поговорить нужно, то с кем? Может это непись из деревни новисов и он не будет разговаривать пока не поможешь Толику, а т.е. не выдаст инфопоршн
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.