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

[SoC] Ковыряемся в файлах


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

@Снайпер56, нет в движке такого состояния для задания как "отменился". Есть "в прогрессе", "сдал" и "провалил". Так что никак не сделать.
@Старлей, извиняюсь, но где искать этот профиль? Не нашел. И в месте с этим, если добавить эту строчку в свд, что то изменится?

JohnWaine, эту строчку нужно прописывать не в конфиге оружия, а в профиле НПС - то есть в файлах типа character_desc_""""""""".

@Malandrinus, то, что нет доступного скриптового метода сброса задания - согласен, но... (мысли вслух) объект(ы) таска  (SGameTaskObjective/SGameTask) в общем-то доступны в игре и сохраняются в сэйвы и можно попытаться помудрить с нет-пакетами иль даже с подменой на "чистый" таск. Но это конечно только предполагалка... и проверка возможности изменения требует и времени и навыков. ;-)

@Artos, я не знаю точно, где именно сохраняются задачи. Если "где-то" в сейве, то нетпакеты не помогут. Если у актора, то тоже не помогут, поскольку актора не перевести в оффлайн.

 

Судя по алгоритмам выдачи и контроля заданий, факт выдачи хранится у актора. Как минимум индекс (иль иная метка) выданного таска движок где-то у него запоминает ( db.actor:give_task(obj_task, ms, false) ). Вот еще бы проверить назначение 3-го аргумента (boolean) - не позволит ли он анулировать...

Сами объекты тасков и их составляющие (SGameTaskObjective) как минимум должны сохраняться в сэйвах, а значит от этих клиентских объектов сервер получает некие нет-пакеты при записи сэйва и восстанавливает при загрузке игры. Если получить доступ к этим передачам - то может и можно будет подменять на некое подобие заглушек иль даже удалять... Но, конечно же, это все умозаключения и, если будет время и настроение, попробую копнуть в эту сторону.

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

Какое на сегодняшний день наиболее удачное решение проблемы конца игрового месяца? Кто поделится? Поиском старые темы не находятся чего-то.

Изменено пользователем Капрал Хикс

@Капрал Хикс, решение проблемы: забыть про метод game.time() и все что имеется на нем - перевести на game.get_game_time().

@-AZOT-,Попробовать на основе статьи "Спавн тайника через скрипт" радио замутить.Ето предложение и предположение, так как сам радио спавню через all.spawn с отводом логики во внешний скрипт, а со скриптовым спавно дела никогда не имел.

ТЧ 1.0004. в пда на карте стоит метка ГГ, если на нее навести выводится надпись "меченый". как можно сделать чтобы она не выводилась?

   sanjaaa

попробуй в файле ui_st_pda,                                                                                                                                                              

<string id="st_map_actor">

<text>Меченый</text>
</string>

 

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

Изменено пользователем WERTOix
  • Нравится 1

Не знаю в той ли теме задаю вопрос, но всё же. Есть такая схема логики для НПС как [karavan]. А вот как подключить её в мод не нашёл. Помогите.

Привет всем! Подскажите пожалуйста такую проблему. В узком проходе стоит рестриктор (по размеру этого прохода) на выдачу инфопоршня, ГГ обязательно должен пройти этот рестриктор при подходе к переходу на другую локацию. Как только ГГ попадает на нужную локацию тут его должен встречать НПС, который спавнится по инфопоршню данного рестриктора. Вопрос, почему этот НПС не появляется? Всё прописано правильно. Я спавню ГГ возле рестриктора, перехожу на другую локацию - НПС стоит. А другие играют в мод с самого начала (т.е. от кордона) и у них при проходе через рестриктор НПС не появляется. Мод у всех одинаковый (в частности all.spawn). Подскажите кто знает в чём может быть дело?

Вот секция рестриктора

 


[17002]
; cse_abstract properties
section_name = space_restrictor
name = x8_spawn_jeep_restrictor
position = 92,-0.600000023841858,472
direction = 0,0,0
 
; cse_alife_object properties
game_vertex_id = 2158
distance = 0
level_vertex_id = 203271
object_flags = 0xffffff3e
custom_data = <<END
[logic]
active = sr_idle
 
[sr_idle]
on_actor_inside = nil %+prip_spawn_pokemon_iko%
END
 
; cse_shape properties
shapes = shape0
shape0:type = box
shape0:axis_x = 2,0,0
shape0:axis_y = 0,3,0
shape0:axis_z = 0,0,65
shape0:offset = 0,0,0
 
; cse_alife_space_restrictor properties
restrictor_type = 3

 

 

 


Вот секция НПС

 


[21346]
; cse_abstract properties
section_name = stalker
name = pokemon
position = -15,-0.300000011920929,377
direction = 0,0,0
 
; cse_alife_trader_abstract properties
money = 1000
character_profile = pokemon
 
; cse_alife_object properties
game_vertex_id = 3760
distance = 5.5
level_vertex_id = 177219
object_flags = 0xffffffbf
custom_data = <<END
[spawner]
cond = {+prip_spawn_pokemon_iko -pokemon_pomosh_ok}
 
[logic]
active = walker
 
[walker]
path_look = prip_pokemon_proriv10_look
path_walk = prip_pokemon_proriv10_walk
on_info = {+pokemon_helo_dialig_start} walker1
meet = default_meet
 
[walker1]
path_look = prip_pokemon_shtab_look
path_walk = prip_pokemon_shtab_walk
meet = default_meet
END
 
; cse_visual properties
visual_name = actors\my_freedom\unic\pokemon_res
 
; cse_alife_creature_abstract properties
g_team = 0
g_squad = 1
g_group = 2
health = 3
dynamic_out_restrictions = 
dynamic_in_restrictions = 
 
upd:health = 3
upd:timestamp = 0
upd:creature_flags = 0
upd:position = -15,-0.300000011920929,377
upd:o_model = 0
upd:o_torso = 0,0,0
upd:g_team = 0
upd:g_squad = 1
upd:g_group = 2
 
; 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,2,2,1,2
predicate4 = 0,1,1,1
 
; cse_ph_skeleton properties
 
upd:start_dialog = 
 
; se_stalker properties

 

 

 


@riddik121,Может во время прохождения гдето етот поршень хватают -

pokemon_pomosh_ok что в spawner прописан.

Нет, этот рестриктор (с поршнем pokemon_pomosh_ok)  ГГ не может пройти до рестриктора с поршнем prip_spawn_pokemon_iko

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

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

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

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

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

Войти

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

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

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