Перейти к содержимому

Добро пожаловать к нам на сайт! Про Ваш статус и права можно прочитать в Этой теме

Для просмотра картинок и скачивания файлов с форума - пройдите регистрацию!   Проблемы с регистрацией - вам сюда




Фотография

Ковыряемся в файлах S.T.A.L.K.E.R.


  • Авторизуйтесь для відповіді у темі
Повідомлень у темі: 1630

#39
Черный_Сталкер

Черный_Сталкер

    Пушистая Химера

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    08-грудень 08
  • 77 Cообщений
  • Пропуск №: 5

0 баллов предупреждения
Репутация: 1 799

Репутация: 1799 Постов: 77
  • Пол:Мужчина
  • Город:Москва, Россия

Редактирование файлов ТЧ и Народной Солянки.

 

Ну, думаю, все знают про что эта тема. wink.gif Спрашиваем..

Шпаргалки по "ковырянию" файлов "АМК" и модов на его основе (Солянка и т.д..)
Версия 5: Скaчать Shpargalka_AMK_v5.rar
Версия 6: Скaчать Shpargalka_AMK_v6.rar
Правка параметров Сталкера: Скaчать Pravka_st.rar
 
Уважаемые Господа пользователи!
Все вопросы по прописке "квестовых" (и не только) предметов в продажу,
а так же другие способы их получения, обсуждаются здесь:  
Альтернативные способы получения предметов в игре.  !!!

Вопросы про то, как отключить выпадение вещей из рюкзака НЕ принимаются !!!
Посты с вопросами и ответами будут тереться немедленно!


Нарушителей ждет неотвратимое наказание в соответствии с Правилами форума! :sm22:

 

Если задаёте вопрос - указывайте игровой набор.

 

П.С.: Прошу не путать данную тему с чатом.


Мерцающий (19 березень 2019 - 09:32):
До выхода официальной версии ОП-2.1 для разработчиков обсуждение в данной теме изменения файлов ОП-2.1 запрещено.
К нарушителям данного правила темы будут налагаться санкции в соответствии с пунктом 2.16 Правил форума.

Повідомлення відредагував Fаgot: 08 листопад 2016 - 02:20


#13857
RUS_D

RUS_D

    Главный АДМИН

  • Не в сети
  • Тех. Админ
  •  Администратор
  • Старожил сайта
<- Информация ->
  • PipPipPipPip
  • Регистрация:
    08-грудень 08
  • 5 004 Cообщений
  • Пропуск №: 2

0 баллов предупреждения
Репутация: 8 120

Репутация: 8120 Постов: 5004
  • Skype:rus_did
  • Страна проживания:Украина
  • Реальное имя:Руслан
  • Пол:Мужчина
  • Город:Полтавская обл.

Можете выложить фикс, который увеличивает время лежания трупа, а то не успел убить всех наемов на фабрике переработки, а труп в экзе с КПК уже исчез, раздражает это.

В release_body_manager.script строку:
self.body_max_count = 15 количество тел которое одновременно может находится в игре Я поставил 35 трупы вродь на месте
Изменить время уборки трупа DLE_AFTER_DEATH = 40000 с 40 секунд на как у меня 600000 что равняется 10 минут.


По умолчанию в игре трупы исчезают слишком быстро, лишая возможности обшманать их...
Нашел два способа, чтобы трупы не исчезали:
1)Отключение уборщка трупов.
Если у вас машина мощная то для реализма будет самое то...Горы трупов по всей Зоне...
Путь:
папка "gamedata"-> "scripts"-> "xr_motivator.SCRIPT":
Строка:
release_body_manager.get_release_body_manager():moving_dead_body(self.object) --' Distemper 11.02.2008
Её надо закомментировать, чтобы выглядело так:
--release_body_manager.get_release_body_manager():moving_dead_body(self.object) --' Distemper 11.02.2008
Теперь трупы не исчезают совсем, даже после перезагрузки игры...
2)Настройка уборщика трупов.
Способ:
Путь: папка-"gamedata">папка-"skripts">файл-"release_body_manager.SKRIPT"
Строка:
self.body_max_count = 10 -- количество тел которое одновременно может находится в игре
Меняем число на более весомое...и вуаля:
self.body_max_count = 60 -- количество тел которое одновременно может находится в игре
Теперь хабар никуда от вас не денется!



Время уборки трупов изменяется в основном так.
Папка: gamedata\config\creatures
Файлы: monsters.ltx; stalkers.ltx

:pinch: ВНИМАНИЕ: СПОЙЛЕР!
В конце файлов находим:

Для сталкеров:

[stalkers_common]
corpse_remove_game_time_interval = ХХ ; in hours
stay_after_death_time_interval = ХХ ; in hours

Для монстров:

[monsters_common]
corpse_remove_game_time_interval = ХХ ; in hours
stay_after_death_time_interval = ХХ ; in hours

Вместо ХХ ставим любое нужное число, сколько в часах будет валятся труп.
Для квестовых трупов не действует.

В большинстве модов радиус, вроде бы, не имеет значения. Вплоть до того, что ты можешь выйти на другую локацию и вернуться. Если время "жизни" трупа еще не истекло то он так и будет валяться и его можно будет еще раз обыскать, даже нужно. Лута на нем не будет, но вполне может выпасть наводка на тайник.

Повідомлення відредагував RUS_D: 07 вересень 2017 - 11:53


#561
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

Привет!

Делаю квест, в котором надо передать заказчику, например: 2 щупальща кровососа и 2 сандалии снорка. Проблемма в следующем: когда приношу сдавать барахло, диалог на приём появляется (т.е.проверка на наличие данных предметов работает), я предметы передаю (якобы) и получаю за них награду, однако, заглянув в инвентарь вижу, что они у меня остались.

Делал квест с передачей одного предмета - все работает идеально... Использовал функцию:

--забираем предмет у ГГ:
function Fagot_medusu_peredal(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "af_medusa", "out")
end

 

А передачу нескольких предметов делал и так:

 
--забираем предмет у ГГ:
function chasti_mutantov_peredal(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "mutant_dog_tail", "out", 3)
end

и так:

 
--забираем предмет у ГГ:
function chasti_mutantov_peredal(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "mutant_dog_tail", "out")
dialogs.relocate_item_section(second_speaker, "mutant_dog_tail", "out")
dialogs.relocate_item_section(second_speaker, "mutant_dog_tail", "out")
end

 

и эдак:

 
function chasti_mutantov_peredal(npc, actor)
dialogs.relocate_item_section(npc, "mutant_dog_tail", "out")
dialogs.relocate_item_section(npc, "mutant_dog_tail", "out")
dialogs.relocate_item_section(npc, "mutant_dog_tail", "out")
end

и по разному, в разных вариациях, - проблема остаётся.

Если кто знает подскажите, пожалуйста, рабочую функцию передачи нескольких предметов от ГГ к НПС, или функцию их уничтожения.



#562
volazar

volazar

    Сталкер

  • Не в сети
  • Проверенные
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-лютий 10
  • 793 Cообщений
  • Пропуск №: 847

0 баллов предупреждения
Репутация: 3 671

Репутация: 3671 Постов: 793
  • Страна проживания:Russia
  • Реальное имя:V
  • Пол:Мужчина
  • Город:Мурманск, Россия

Fagot, Пробуйте так (пример из НС):

Для изымания предметов из инвентаря ГГ:

-- Забираем предметы
function chasti_mutantov_peredal(first_speaker, second_speaker)
relocate.out_item_namber("mutant_dog_tail",3)
end

В папке скриптс создайте файл relocate.script и туда напишите следующее:

function out_item_namber(itm_section,need_number)
  reloc_params.itm_section=itm_section
  reloc_params.itm_cnt=need_number
  reloc_params.itm_cnt_found=0
  db.actor:iterate_inventory(checkout_items_count,db.actor)
  reloc_params.itm_cnt_found=0
  if reloc_params.itm_cnt_found<=reloc_params.itm_cnt then
   db.actor:iterate_inventory(out_items_count,db.actor)
  end
  news_manager.relocate_item(db.actor, "out", itm_section)
  reloc_params={}
end


#563
frankenshtayn

frankenshtayn

    Бывалый

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    29-лютий 12
  • 65 Cообщений
  • Пропуск №: 6106


Репутация: 6 Постов: 65
  • Пол:Мужчина
  • Город:Валуйки, Россия

Fagot,
Вот рабочая функция:

function bla_bla(first_speaker, second_speaker)
flamethrower.relocate_n_items_section(second_speaker, "la_la", "out", 3)--отдаём 3 предмета
dialogs.relocate_item_section(second_speaker, "la_la_la", "in")--получаем награду  
end

Проверено.



#564
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

volozar, Попробовал, вот что получилось:

Expression : fatal error
Function : CScriptEngine::lua_error
File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line : 73
Description : <no expression>
Arguments : LUA error: ...shadow of chernobyl\gamedata\scripts\relocate.script:3: attempt to index global 'reloc_params' (a nil value)


Добавлено (04.04.2012, 14:12)
---------------------------------------------
Quote (Alter_Ego)
Вот рабочая функция: ...

Нужен скрипт flamethrower ? У меня его нет.
Alter_Ego, взял скрипт из НС, опробовал функцию - работает! Но маленький косячок есть: при передаче 3-х хвостов пишет "потерян предмет: хвост собаки", а не что-нибудь вроде: "потерянЫ предметЫ: хвостЫ собак".

Но это мелочи, спасибо за помощь.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:04


#565
volazar

volazar

    Сталкер

  • Не в сети
  • Проверенные
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-лютий 10
  • 793 Cообщений
  • Пропуск №: 847

0 баллов предупреждения
Репутация: 3 671

Репутация: 3671 Постов: 793
  • Страна проживания:Russia
  • Реальное имя:V
  • Пол:Мужчина
  • Город:Мурманск, Россия
Quote (Fagot)
вот что получилось:

 

Мой косяк, будет вылетать - так как неизвестные переменные reloc_params .
Можно содрать с Соли Сяк.скрипт, почистить его и применять для ваших нужд. Или по 2 скрипту, выложенному уважаемым Alter_Ego.

 

saymongray, Качаем шпору из шапки темы и читаем. Там все описано.
---------------------
Fagot, Раз ругается на синтаксис, значит там ошибка. Пробуйте прописывать ручками. Может быть там р русская вообще стоит. Мододелы, также как и ПЫС не застрахованы от ошибок.
ЗЫ: Надеюсь ваш диалог написан до тега </game_dialogs> ?
ЗЗЫ: После <next>8</next> у вас не стоит закрывающий тег.
ЗЗЗЫ: Юзайте Notepad++, там есть подсветка синтаксиса, и любую свою ошибку вы заметите.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:06


#566
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

Подскажите, что не так в этом диалоге:

<dialog id="giruk_krovososj">
<phrase_list>
<phrase id="0">
<text>giruk_krovososj_0</text>
<next>1</next>
</phrase>
<phrase id="1">
<text>giruk_krovososj_1</text>
<next>2</next>
</phrase>
<phrase id="2">
<text>giruk_krovososj_2</text>
<next>3</next>
</phrase>
<phrase id="3">
<text>giruk_krovososj_3</text>
<next>4</next>
</phrase>
<phrase id="4">
<text>giruk_krovososj_4</text>
<next>5</next>
</phrase>
<phrase id="5">
<text>giruk_krovososj_5</text>
<next>6</next>
<next>7</next>
</phrase>
<phrase id="6">
<text>giruk_krovososj_6</text>
</phrase>
<phrase id="7">
<text>giruk_krovososj_7</text>
<next>8</next>
<phrase id="8">
<text>giruk_krovososj_8</text>
</phrase>
</phrase_list>
</dialog>

Написал диалог, игра вылетела с "Error reading end tag". Ищу уже чёрт знает сколько, не могу ошибку найти. Использовал для поиска прогу XML_Validator, она говорит, что ошибка в последнем </phrase_list> (выделяет первую букву "р"), но я в упор не вижу тут ни какой ошибки. Первый раз сталкиваюсь с таким бредом. Тем более, что все теги я писал не от руки, а копировал из уже прописаных.

 

Добавлено (05.04.2012, 10:01)
---------------------------------------------

"ЗЗЫ: После <next>8</next> у вас не стоит закрывающий тег."

 

volazar, точно, в этом проблема! Как говорится , глаз замылился, элементарного не увидел.

Ещё и XML_Validator сбил с толку, тупая программа, </phrase_list> тут совсем не при чём ( конечно же я проверил, что "р" английская).

Благодарю за помощь.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:10


#567
rpammon1

rpammon1

    Новичок

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    26-березень 12
  • 21 Cообщений
  • Пропуск №: 6249


Репутация: 0
  • Пол:Мужчина
  • Город:Красноярск, Россия

Можно как-нибудь сделать зверей другом ГГ? Хочу подружится со зверьём Зоны.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:10


#568
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

Подскажите, пожалуйста, функцию проверки на наличие нескольких разных предметов у ГГ в инвентаре.

 

Добавлено (06.04.2012, 09:33)
---------------------------------------------
rpammon1, можно. Файл game_relations.ltx, смотри внизу таблицу [monster_relations], там всё просто.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:11


#569
volazar

volazar

    Сталкер

  • Не в сети
  • Проверенные
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-лютий 10
  • 793 Cообщений
  • Пропуск №: 847

0 баллов предупреждения
Репутация: 3 671

Репутация: 3671 Постов: 793
  • Страна проживания:Russia
  • Реальное имя:V
  • Пол:Мужчина
  • Город:Мурманск, Россия

Fagot, Вот это в таск_название локации, в нужном месте:

<function_complete>bla_bla.bla_bla_bla</function_complete>

ГДЕ: bla_bla - название файла,
bla_bla_bla - название функции в этом же файле,
Потом создаете файл bla_bla.скрипт и туда пишете:

-- Проверим наличие предмета
function bla_bla_bla()
return bla_bla.have_item_namber("af_medusa",1) ~= false
end

И в этот файл (можно и в другой) добавляете чуть ниже (чтобы работала функция проверки) следующее:

local items_count=0
local itemin=nil

function have_item_namber(itm,need_namber)
    local actor=db.actor
    items_count=0
    itemin=itm
    actor:iterate_inventory(cheking_item,actor)
    if items_count>=need_namber then
     return true

ЗЫ: Это для 1 предмета. Другие можно добавить на примере того же отнимания предметов через диалог у ГГ.
ЗЗЫ: Требует проверки. sm7.gif
------------------
Fagot, Создайте еще 1 функцию на нужный предмет и все. В той же НС разрабы так и делали. wink.gif


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:13


#570
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

volazar, да,это работает, но при проверке одного предмета. Мне же надо, чтоб функция проверяла несколько предметов, причём разных. Я пробовал так:

 
function proverka_Topchiev_artefaktj()
return sak.have_item_namber("af_gravi",3) ~= false
return sak.have_item_namber("af_blood",4) ~= false
return sak.have_item_namber("af_mincer_meat",3) ~= false
end

работает частично, т.е.первый пункт - "af_gravi" видит и все, следующие два - нет.



#571
frankenshtayn

frankenshtayn

    Бывалый

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    29-лютий 12
  • 65 Cообщений
  • Пропуск №: 6106


Репутация: 6 Постов: 65
  • Пол:Мужчина
  • Город:Валуйки, Россия

Fagot, Функция из ТТ2:

function graf_first_dialog_have(task, objective)--проверка нескольких разных предметов с разным количеством
      return new_dialog.item_much("doc1",1) ~= false and                    
new_dialog.item_much("wpn_aug_a3",5) ~= false
end

Попробуйте адаптировать для себя.



#572
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

Alter_Ego, у меня нет скрипта new_dialog, пока не найду - смысла нет пробовать.

 

"Создайте еще 1 функцию на нужный предмет и все. В той же НС разрабы так и делали."

 

Да, это вариант, но я уже воспользовался советом Alter_Ego.

Нашёл new_dialog, проверил - всё работает.

Спасибо вам обоим!



#573
saymongray

saymongray

    Пришедший

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    04-квітень 12
  • 6 Cообщений
  • Пропуск №: 6326


Репутация: 0
  • Пол:Мужчина
  • Город:Москва, Россия

Помогите, пожалуйста, где в файлах прописывается отношение к ГГ (друг, враг, нейтрал)? Ни с того ни с сего начал нападать Костя, стал врагом. Если можно, то где изменить его отношение ко мне? В шпорах не нашел, где прописывается. sm10.gif
AMX 1,4,1 Народная Солянка от 19,04,10 + дополнение 14,08,10 + патч 3,09,10 + DMX 1,3,4 ver 1,0004 .


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:18


#574
rpammon1

rpammon1

    Новичок

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    26-березень 12
  • 21 Cообщений
  • Пропуск №: 6249


Репутация: 0
  • Пол:Мужчина
  • Город:Красноярск, Россия
Quote (saymongray)
Помогите пожалуйста где в файлах прописывается отношение к ГГ


В Соли это файл game_relations.lt. В этой теме, предыдущая страница, 1 пост (мой).

У меня проблема с учёными была, но вайла не было, (где менять отношение НПС к ГГ) там скачать можешь. Там не сложно, Костя-сталкер, т.е меняешь первые цифры в строке отношения сталкеров (значение не более 9000).


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:19


#575
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток

Подскажите, пожалуйста, функцию спавна мёртвого сталкера.
Эта у меня не работает:

 
function trup_Dik_Territoriya()
local obj=amk.spawn_item("trup",vector():set(-251.042,-24.799,-134.338),9540,7)
if (_g.IsStalker(obj)) then
local tbl = amk.read_stalker_params(obj)
tbl.health = 0
tbl.updhealth = 0
amk.write_stalker_params(tbl, obj)
end

Или, если заспавнить живого, тогда как должна выглядеть его логика, что бы он сразу загнулся?



#576
volazar

volazar

    Сталкер

  • Не в сети
  • Проверенные
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-лютий 10
  • 793 Cообщений
  • Пропуск №: 847

0 баллов предупреждения
Репутация: 3 671

Репутация: 3671 Постов: 793
  • Страна проживания:Russia
  • Реальное имя:V
  • Пол:Мужчина
  • Город:Мурманск, Россия

Fagot,

Если не ошибаюсь, ваш вариант подходит если спавн происходит через all.spawn .
Попробуйте эту функию:
function dead_spawn()
npc=alife():create("профиль_нпс",vector():set(-243.6, -0.67, 309.62), 366014, 20)
npc:kill(npc)
end

Координаты и профиль поставьте свои.

-----------------
Ну, тогда так попробуйте:

function trup_Dik_Territoriya()
local obj=amk.spawn_item("trup",vector():set(-251.042,-24.799,-134.338),9540,7)
if (_g.IsStalker(obj)) then - это уберите
local tbl = amk.read_stalker_params(obj)
tbl.sid = тут номер сида вашего сталкера вставьте.
tbl.health = 0
tbl.updhealth = 0
amk.write_stalker_params(tbl, obj)
end
ЗЫ: amk.spawn_item("trup") - у вас он прописан там? И главное, зачем он там? Надо ставить профиль вашего НПС-а, которого хотите убить.
ЗЗЫ: Если стоит if (_g.IsStalker(obj)) then - то не хватает одного end-а в конце. Но if (_g.IsStalker(obj)) then вам не нужен. Это проверка об'екта, что он тот, кто нужен (если правильно понял из ф-ии).

------------------------

Fagot, Ну это все равно, что спавнить мертвый воздух sm2.gif.
Как по вашему движок поймет, какой именно об'ект надо убить?
Quote (Fagot)
amk.spawn_item

Это ссылка на функцию спавна предмета. Вместо trup - вам надо профиль вашего нпс, который вы создавали/взяли.
Непися создавали? Или взяли уже существующего? СИДы прописываются и в файле, который вы указали. И в алл спавне. Вам нужен он.

-------------------------

Quote (Fagot)
xrSpawner-ом ?

Эта прога - зло. Столько косяков потом... Раз сталки гуляют, их СИД и используйте в функции. СИД и название профиля добавьте в ту функцию, которую я цитировал выше.
Quote (Fagot)
значит игра его "знает", правильно?

Игра-то знает. А как при спавне игра узнает кого надо заспавнить и кому нанести хит? Для этого и пишется СИД и имя профиля.
Пробовали еще раз использовать функцию, которую я цитировал и говорил что добавить/убрать из нее?
ЗЫ: Попробуйте еще вызов спавна поставить свой. Т.е из того файла, с которого вы вызываете спавн.

----------------------

Fagot, Я и писал, что СИД добавьте в функцию)

Quote (Fagot)
attempt to call field 'spawn_item'

Ругается на функцию спавна. Вставьте в вашу функцию, другую функцию, вместо этой... Хорошо об'яснил sm6.gif...
Замените: amk.spawn_item на ваш файл, в котором прописан спавн НПС.
Например: ssss.spawn_dead_st
Где: ssss - это имя файла, содержащего в себе функцию.
А spawn_dead_st - имя функции в этом же файле, через которую происходит спавн НПС в мир.


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:24


#577
Фагот.

Фагот.

    Сталкер

  • Не в сети
  • Старожилы
  • Завсегдатай - больше 1 год на сайте
<- Информация ->
  • Регистрация:
    14-листопад 10
  • 691 Cообщений
  • Пропуск №: 3158

0 баллов предупреждения
Репутация: 1 217

Репутация: 1217 Постов: 691
  • Страна проживания:СССР
  • Реальное имя:Александр
  • Пол:Мужчина
  • Город:Владивосток
volazar...
 
volazar,
"Это ссылка на функцию спавна предмета. Вместо trup - вам надо профиль вашего нпс (trup - это и есть профиль), который вы создавали/взяли.
Непися создавали? Или взяли уже существующего? СИДы прописываются и в файле, который вы указали. И в алл спавне. Вам нужен он."

Я создал секции в npc_profile.xml , spawn_sections.ltx и character_desc_....xml , сталкер спавнится, гуляет...
А в алл.спавне прописывать ай-ди только через АСДС или можно xrSpawner-ом ? Дело в том, что у меня первая прога не работает, алл.спавн открываю только второй.

 

volazar,
"Fagot, Ну это все равно что спавнить мертвый воздух
Как по вашему движок поймет, какой именно обьект надо убить?"

 

Вот я сейчас заспавнил живого сталкера, дал ему уникальное имя, значит игра его "знает", правильно?

Этот "объект" в единственном экземпляре распознаётся игрой нормально. Так почему движок не понимает , кого надо убить, если он уже его как-бы обособил от других сталкеров, которые спавнятся автоматом? И я ему указываю - именно этого сталкера надо убить.

Я чего-то недопонимаю, т.к. уже несколько часов с этой ерундой мудохаюсь, наверно, мозги заклинило и пора отдохнуть.

Добавлено (11.04.2012, 18:35)
---------------------------------------------

volazar,

"Раз сталки гуляют, их СИД и используйте в функции. СИД и название профиля добавьте в ту функцию, которую я цитировал выше."
 
Дык , где мне взять сид сталкера, которого я создал? Я ж ему сид прописывал только в game_story_ids.ltx, а в алл.спавне - нет. Одного game_story_ids не достаточно же? Тем не менее, я вписывал этот сид в спавн и ,конечно же, без толку...
 
 
function trup_Dik_Territoriya()       
       local obj=amk.spawn_item("trup",vector():set(-251.042,-24.799,-134.338),9540,7)        
       local tbl = amk.read_stalker_params(obj)       
tbl.sid = 094
       tbl.health = 0       
       tbl.updhealth = 0       
       amk.write_stalker_params(tbl, obj)       
end

Получаю вылет:
Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ...of chernobyl\gamedata\scripts\spawn_stalkerov.script:107: attempt to call field 'spawn_item' (a nil value)

 

 

Нельзя редактировать сообщения администрации.
Всё ясно, ваше рвение исправить как лучше, но, может, для начала стоит почитать Правила?
То, что нужно удалять перед добавлением нового поста я выделил
жёлтым, пост заскриншотен, при рецидиве буду вынужден обратиться к модераторам.

dimasick


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:33


#578
frankenshtayn

frankenshtayn

    Бывалый

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    29-лютий 12
  • 65 Cообщений
  • Пропуск №: 6106


Репутация: 6 Постов: 65
  • Пол:Мужчина
  • Город:Валуйки, Россия

Fagot, попробуйте эту функцию:
 

function [имя функции] ()
local obj= alife():create("имя секции в spawn_sections.ltx",vector():set(x,y,z),level_vertex,game_vertex)
obj:on_death()
end


Пример:

function trupik()
local obj= alife():create("yan_ecolog_respawn_1",vector():set(-38.981,-17.916,355.841),273797,1816)
obj:on_death()
end


#579
Fakesmile

Fakesmile

    Пришедший

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    22-березень 12
  • 3 Cообщений
  • Пропуск №: 6217


Репутация: 0
  • Пол:Мужчина
  • Город:Россошь, Россия

Добрые люди, помогите, пожалуйста! Проблема Вот , мне сказали обратиться сюда. Можно ли как-нибудь убрать "покраснение", удалить файл или исправить как?! smile_anom.gif
 

Попробуй в файле: \gamedata\scripts\monnoroch_options.script
в строках:
blood_enable = 1 -- эффект ранения (1 - вкл , 0 - выкл)
bleed_enable = 1 -- эффект плохого самочувствия (1 - вкл , 0 - выкл)
поменять значения на = 0

Все изменения делать полностью выйдя из игры.

romale


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:35


#580
demis

demis

    Новичок

  • Не в сети
  • Пользователь

<- Информация ->
  • Регистрация:
    14-березень 12
  • 35 Cообщений
  • Пропуск №: 6161


Репутация: 0
  • Пол:Мужчина
  • Город:белгород, Россия

Хочу прописать ячейки для артов (все делаю по Shpargalka АМК). В файле "inventory_sect" у меня установлено 14 штук, в игре СКАТ10, отображается только 6. Подскажите, количество (max) отображаемых ячеек для артов, различное в зависимости от брони, или же по-любому должно отображать макс., т.е. 14 в моем случае?

Во что играем-то? В Солянке и так по умолчанию 14 слотов под арты, или ты старый АМК-ашный худ установил?
От костюмов количество ячеек не зависит.
Если у тебя широкоформат, то установи адаптацию отсюда: http://stalker-worlds.games/forum/3-20-91741-16-1300498298 , там 14 слотов под арты.

romale

Добавлено (13.04.2012, 20:28)
---------------------------------------------
"Народная Солянка 2010 от 19.04.10 + допа с МГ (Мёртвый город)" - видимо под широкоформат адаптацию не установил, или как-то коряво...
Но я писал, что у меня уже прописано по умолчанию 14 ячеек, только они не отображаются в игре...
Я так понял, что это результат отсутствия адаптации?

 

Скорее результат твоих постоянных "ковыряний" в файлах игры sm6.gif ..
Прописано у тебя только в одном месте - в "inventory_sect", а нужно, чтоб еще и в inventory_new.xml или в inventory_new_16.xml (в зависимости от разрешения монитора) было сформировано соответствующее кол-во слотов.
Короче, ставь адаптацию и не парься.. Только вариант установки свой выбери, под 16х9 или 16х10..

romale


Повідомлення відредагував Fagot: 24 лютий 2014 - 15:57




реклама на сайте подключена

Использование материалов сайта только с разрешения Администрации!
Или с указанием прямой ссылки на источник. 2008 - 2017 © Stalker-Worlds