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

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


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

Всем привет, у меня вопрос: возможно ли с некоторым редактированием скриптов, НО без редактирования движка восстановить в ЗП тайники из ТЧ/ЧН?

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Перенес из ЧН "treasure_manager.script", отредактировал следующие скрипты:

bind_stalker

se_item

se_zones

xr_effects

xr_motivator

 

Из каких то удалил ссылки на несуществующие в новом-старом "treasure_manager.script" функции, в какие то добавил ссылки на функции из "treasure_manager.script"(из ЧН), на своей локации добавил "invertory_box" с названием "esc_treasure_1"...

Из ЧН взял следующие файлы, удалив кое-что лишнее:

treasure_manager.ltx

treasure_escape.ltx

 

В логику одного из спейс рестрикторов вписал следующее:

[logic]
active = sr_idle@start

[sr_idle@start]
on_actor_inside = sr_idle@nil %=give_treasure(esc_treasure_1)%

[sr_idle@nil]

 

Итак, игра запускается нормально, но при попытке сейва ловлю вылет

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ...\gamedata\scripts\treasure_manager.script:185: bad argument #1 to 'pairs' (table expected, got nil)

 

При попытке обыскать труп

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ...\gamedata\scripts\treasure_manager.script:111: bad argument #1 to 'pairs' (table expected, got nil)

И при входе в рестриктор

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ...\gamedata\scripts\treasure_manager.script:205: attempt to index global 'treasures' (a nil value)

 

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Как понимаю - что-то не правильно или чего то не хватает :(

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Там не только перенос, я ещё получение id объекта по его story_id делал под ЗП, у меня так не работало.

	local obj_id = get_story_object_id(self.target)
	if obj_id ~= nil then
		local obj = alife():object(obj_id)
		if obj ~= nil then
			...

 

Добавлено Overfirst,

В ЗП вырезано получение объекта по имени, приходится добавлять боксам стори айди и получать объект через него.

  • Полезно 1

Ранее был известен под ником BoBaH_671.

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

В ЗП вырезано получение объекта по имени, приходится добавлять боксам стори айди и получать объект через него.

Инвертори боксу нужно прописать стори айди - я правильно понимаю?

  • Согласен 1

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

хах, у меня есть с этим делом успехи - отредактировал _g.script

в функцию "start_game_callback"

добавил отсылку:     treasure_manager.load_treasures()
 

Вылеты при сейвах прекратились :)

 

И новая проблема: в СДК своему инвертори боксу прописал стори айди, при входе в рестриктор вылет - самый обычный stacke trace :( с которым НЕ понятно в чем дело и что делать?

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

что делать?

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

  • Спасибо 1
  • Смешно 1
Ссылка на комментарий
8 часов назад, Rietmon сказал:

Обычно, такие вылеты бывают при сбои скриптов

отредактировал news_manager.script

Заменил функцию send_treasure на ЧНовский вариант

было

function send_treasure(param)
	local news_caption = ""
	if(param==0) then
		news_caption = game.translate_string("st_found_new_treasure")
	elseif(param==1) then
		news_caption = game.translate_string("st_got_treasure")
	elseif(param==2) then
		news_caption = game.translate_string("st_found_old_treasure")
	end

	if db.actor:is_talking() then
		db.actor:give_talk_message2(news_caption, "", "ui_inGame2_Polucheni_koordinaty_taynika", "iconed_answer_item")
	else
		db.actor:give_game_news(news_caption, "", "ui_inGame2_Polucheni_koordinaty_taynika", 0, 3000)
	end
end

стало

function send_treasure(name)
	local news_caption = game.translate_string("st_found_new_treasure")
	local news_text = game.translate_string(name)

	db.actor:give_game_news(news_caption, news_text, "ui_iconsTotal_found_thing", 0, 3000)
end

 

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Но все же осталась проблема - тайник не выдается :(

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Доброго времени суток господа.

Играю с модом "магазинное питание оружия" , при этом военные и другие сталкеры, обладающие потенциальным оружием - делают 1 выстрел и убегают.

Нормально работают только нпс у коих этих магазинов отродясь не планировалось, (неписи что сидят на дроби т.е ) .

Как поправить это? Могу предположить что прописав в профили на локации , им эти магазины , они будут работать нормально?

 Правильно ли я понимаю - что дописав одну строку , у нпс вновь будет работать как должное ? 

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

т.е вот оригинальный профиль обычного военного с кордона

<!-------------------------------------soldier_regular----------------------------------------------------->    
    <specific_character id="esc_soldier_regular_default1" team_default = "1">
        <name>GENERATE_NAME_private</name>
        <icon>ui_npc_u_soldier_obichniy</icon>
        <bio>esc_soldier_regular_bio</bio>

        <class>esc_soldier_regular</class>
        <community>military</community> <terrain_sect>stalker_military_terrain</terrain_sect>
        
        <rank>223</rank>
        <reputation>6</reputation>
        
        <snd_config>characters_voice\human_01\military\</snd_config>
        <crouch_type>0</crouch_type>

        <visual>actors\soldier\soldier_obichniy</visual>        
        <supplies>
            [spawn] \n
            wpn_pm \n
            ammo_9x18_fmj = 1 \n
            wpn_ak74u \n
            ammo_5.45x39_fmj = 1 \n

          mag_45_5.45x39_fmj = 1 \n - тут собственно магазин, который существует  (я проверял это , когда прописал что бы волк выдавал его.) 
#include "gameplay\character_items.xml" \n
#include "gameplay\character_food.xml"
        </supplies>

 

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

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

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

Подскажите , что поправить что бы восстановить привычную логику стрельбы по 30 патрон.

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

[Eger.Overkill] // Ⓐ // Eкьюалити / Uнити // 

 "Burn the rich // eat the rich"

О себе : Какой-то Ноунэйм с олд форума , заядлый нарушитель общественного порядка и правил , рецидивист.

Egor4ikModMaker.gif

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

@Metro_Rus вообще всё что ЧНовское лучше называть treasure_manages_cs или же напрочь удалять ЗП варианты во всех местах и делать уже как ты изначально делал.

Изменено пользователем BoBaH_671
  • Согласен 1

Ранее был известен под ником BoBaH_671.

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

BoBaH_671, 

Цитата

или же напрочь удалять ЗП варианты во всех местах

 Я так и делал - к чертям удалял ЗП варианты функций или заменял их ЧНовскими вариантами

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Всем привет!

Может кто подскажет - в каком файле находится описание текстуры при загрузке локаций (ui_actor_loadgame_screen)? Не смог найти.

s_1515951296_2224241_2dbf689e7c.jpg

С#Н#Т#Р# (CoP 1.6.02)

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

@Jeka81 

Если не ошибаюсь, файл ui_actor_loadgame_screen не имеет конфига или описания textures_descr и читается напрямую из движка.

  • Спасибо 1

S.T.A.L.K.E.R. CoP Objects (upd 15.11.24)

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

Измени параметры в скрипте на эти:

local START_MIN_SURGE_TIME     = 2*60*60
local START_MAX_SURGE_TIME     = 4*60*60
local MIN_SURGE_TIME         = 24*60*60
local MAX_SURGE_TIME         = 24*60*60

 

Первые две строки отвечают за случайное наступление выброса после начала игры - от 2 до 4 часов, вторые две строки за периодичность выброса (в оригинале от 12 до 24 часов).

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

Создал новый предмет в configs\misc\quests_items.ltx

[pre_pda_marauder]:device_pda
$spawn 				= "quest_items\pre_pda_marauder"
inv_weight			= 0.05
description			= pre_pda_marauder_desc
inv_name			= pre_pda_marauder
inv_name_short			= pre_pda_marauder
cost 				= 0
quest_item     			= true

И прописал его НПС в character_desk

		<specific_character id="pre_marauder_corpse" team_default="1">
		<name>GENERATE_NAME_stalker</name>
		<icon>ui_inGame2_No_data</icon>
		<map_icon x="1" y="0">
		</map_icon>
		<bio>ќпытный сталкер. ƒетальна¤ информаци¤ отсутствует.</bio>
		<class>pre_marauder_corpse</class>
		<community>marauder</community>
		<terrain_sect>stalker_terrain</terrain_sect>
		<snd_config>characters_voice\human_02\stalker\</snd_config>
		<rank>60</rank>
		<reputation>0</reputation>
		<money min="2217" max="5000" infinitive="1" />
		<visual>actors\marauder\marauder_1_1</visual>

		<supplies>
      [spawn] \n
	  pre_pda_marauder = 1 \n
	  
#include "gameplay\character_criticals_4.xml"
#include "gameplay\character_drugs.xml"
    </supplies>

 

С этим же принципом создал еще несколько предметов и роздал их неписям, но вот проблема:

Новые предметы почему-то не появляются у этих НПС, почему?

Платформа: ЗП

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

"Люди — животные, не имеющие ни страха, ни уважения, ни сочувствия. Лишь только блеск выгоды в глазах" © Алексей Шевцов

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

OC: Windows 10 Home, Видеокарта: NVIDIA GeForce GTX 1050 TI 4ГБ, Процессор: Intel Core i3 7100 3900 МГц 2 ядра, RAM(ОЗУ): 8ГБ DDR4, ROM(ПЗУ): 1ТБ

 

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

Новые предметы почему-то не появляются у этих НПС

Нужно внести эти предметы в секцию [keep_items] в файле configs\misc\death_generic.ltx, иначе они удаляются при заполнении трупа лутом.

  • Спасибо 1
  • Согласен 1

S.T.A.L.K.E.R. CoP Objects (upd 15.11.24)

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

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

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

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

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

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

Войти

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

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

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