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

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

Люди добрые, помогите пожалуйста.

Переспавниваю Шустрого. Вот код

[1791]

; cse_abstract properties

section_name = stalker

name = esc_shustryi

position = -81.202568,-1.298111,154.848953

direction = 0.977733,0,0.209853

 

; cse_alife_trader_abstract properties

money = 5000

character_profile = esc_shustryi

 

; cse_alife_object properties

game_vertex_id = 163

distance = 8.39999961853027

level_vertex_id = 186909

object_flags = 0xffffffbf

custom_data = <<END

 

[spawner]

cond = {+shustryi_flash_start_info}

 

[logic]

cfg = scripts\new\shustryi_logic.ltx

 

; cse

[smart_terrains]

none = true

END

story_id = 4

 

; cse_visual properties

visual_name = actors\novice\green_stalker_1

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 0

g_group = 0

health = 2

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 2

upd:timestamp = 0x69206669

upd:creature_flags = 0x6e

upd:position = -81.202568,-1.298111,154.848953

upd:o_model = 0

upd:o_torso = 0,0,0

upd:g_team = 0

upd:g_squad = 0

upd:g_group = 0

 

; cse_alife_monster_abstract properties

 

upd:next_game_vertex_id = 65535

upd:prev_game_vertex_id = 65535

upd:distance_from_point = 0

upd:distance_to_point = 0

 

; cse_alife_human_abstract properties

predicate5 = 1,1,0,0,2

predicate4 = 1,1,0,0

 

; cse_ph_skeleton properties

 

upd:start_dialog =

 

; se_stalker properties

 

 

 

Ещё прописываю в

[shustryi_seat]

points = p0

p0:name = name00

position = -81.202568,-1.298111,154.848953

p0:game_vertex_id = 163

p0:level_vertex_id = 186909

 

 

[shustryi_look]

points = p0

p0:name = name00

p0:flags = 0x400

p0:position = -44.3478202819824,-10.9337711334229,-101.592460632324

p0:game_vertex_id = 163

p0:level_vertex_id = 186909

 

 

 

А логика у него, собственно, такая

[logic]

active = walker

 

[walker]

path_walk = shustryi_seat

path_look = shustryi_look

danger = danger_ignore

meet = meet

;;no_move = true

anim = sit_ass

snd = agr_desertir_spam

on_death = death

 

[meet]

use = true

use_wpn = true

 

[danger_ignore]

ignore_distance = 0

 

[death]

on_info = %+shustryi_dead_info%

Но сей гад стоит беззвучным столбом, глядя сторого на север.

Вопрос: в чём ошибка?

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

Ты определись, у тебя НПС работает в секции walker или в секции remark? В схеме walker можно указывать только:

path_walk - основной путь, по которому ходит охранник

path_look [опционально] - путь, куда смотрит охранник

team [опционально] - команда для синхронизации

sound_idle [опционально] - неизвестный параметр. Возможно звук при стоянии без дела. Использовался только на янтаре у зомби (sound_idle = state)

def_state_moving1 [опционально] - состояние, в котором сталкер движется к первой точке пути, если она близко (patrol по умолчанию)

def_state_moving2 [опционально] - состояние, в котором сталкер движется к первой точке пути, если она не слишком далеко (rush по умолчанию)

def_state_moving3 [опционально] - состояние, в котором сталкер движется к первой точке пути, если она далеко (sprint по умолчанию)

def_state_standing [опционально] - дефолтное состояние в котором он стоит и смотрит на точку, если в этой точке не задана другое состояние.

 

Остальные параметры скрипты игры не читают

Freedom

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

Я логику НПС только постигаю, так что не серчайте.

Как я понял, walker - только для движущихся? Что тогда назначать для неподвижных?

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

Вообще можно сделать так:

[logic]

active = walker

 

[walker]

path_walk = shustryi_seat

path_look = shustryi_look

danger = danger_ignore

meet = meet

on_death = death

 

[meet]

use = true

use_wpn = true

 

[danger_ignore]

ignore_distance = 0

 

[death]

on_info = %+shustryi_dead_info%

 

 

[shustryi_seat]

points = p0

p0:name = name00

p0:flags = 0x400

p0:position = -81.202568,-1.298111,154.848953

p0:game_vertex_id = 163

p0:level_vertex_id = 186909

 

[shustryi_look]

points = p0|a=sit_ass|s=agr_desertir_spam

p0:name = name00

p0:flags = 0x400

p0:position = -44.3478202819824,-10.9337711334229,-101.592460632324

p0:game_vertex_id = 163

p0:level_vertex_id = 186909

 

Изменено пользователем _Призрак_

Freedom

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

Такая проблема. Использую метод "db.actor:activate_slot(1)". Но он действует только в случае, если у игрока в момент активации никакой слот вообще не активен. Если какой-то активен - действие не срабатывает. Как исправить?

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

_Призрак_

Что-то acdc после компиляции изменяет shustryi_look на это...

[shustryi_look]
points = p0
p0:name = 
p0:position = 0,0,0
p0:game_vertex_id = 0
p0:level_vertex_id = 0

 

Исправил на это

points = p0
p0:name = name00|a=sit_ass|s=agr_desertir_spam
p0:flags = 0x1
p0:position = -44.3478202819824,-10.9337711334229,-101.592460632324
p0:game_vertex_id = 163
p0:level_vertex_id = 186909

Результатов ноль.

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

Disord,

не помогает.

db.actor:hide_weapon() делает полностью недоступными все слоты, пока не будет отменён. если сделать так:

db.actor:hide_weapon()

db.actor:activate_slot(1)

db.actor:restore_weapon()

то в итоге активируется слот, который был изначально.

 

Добавлено через 25 мин.:

Ещё вопрос к предыдущему.

Есть таблица "{a,b,c}". Как скриптом проверить, равно ли значение X хотя бы одному значению из таблицы.

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

speczadanie

По поводу таблицы, у тебя фактически таблица такая:

table = {1 = a, 2 = b, 3 = c}

тут только перебирать всю таблицу и сравнивать значения, что долго и нудно.

 

Если сам вид таблицы не сильно принципиален, лучше переписать ее так:

table = {a = true, b = true, c = true}

(если a,b,c - строки, то в квадратных скобках: ["значение_а"] = true и т.д.)

 

Тогда процесс проверки упрощается до

if table[X] then
...
end

т.е. делаем что-то, если существует элемент таблицы с индексом X, а он существует только тогда, когда X = (a или b или c).

Мои работы:

Ночные прицелы + смена ножевого слота

AI вертолетов + ПЗРК

Soul Cube

 

Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем.

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

Народ как в ЗП сделать логику для патрелей, как в ТЧ и ЧН.

Что бы военные шли до определеного места и разворачивались и обратно шли.

обьясните плз!

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

Руслан, логику тут можно и не писать, это в аллспавне (или в сдк) нужно создать путь для движения и обозвать его как работу для смарта, тогда нпс в смарте автоматически будут становится на эту работу, ходить по пути. Допустим смарт террейн у тебя называется zat_a1, тогда делаешь пути с работами zat_a1_walker_1 walk ( zat_a1_walker_1 look), zat_a1_patrol_1 walk ( zat_a1_patrol_1 look) и так далее, подробней читаем тут - http://stalkerin.gameru.net/wiki/index.php...%80%D0%B5%D0%B9

Только для ЗП некоторые не используются работы, например kamp.

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

Ulman,

Это значит, что нужно, чтобы скриптер искал проблему при наличии у него целого мода.

 

Кто-нибудь знает, как изменить отношение мутантов к ГГ, кроме функции "set_relation", т.к. она у меня не давала никаких результатов?

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

НЕ!Просто нужно,что бы мутант(псевдогигант) при нанесении хита по нпс или по гг,отбрасывал бы их метра на три.Как кровосос в АМК на ЗП.

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

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

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

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

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

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

Войти

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

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

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