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

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


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

А она работает??? :shok: Она ведь закоментирована. Или

--[[ Coment ]]--

это не коментарии?

Такая проблемка. Ни как не могу выдать в сообщении число из таблицы.

local tbl = {}

tbl[1] = cost

function send_msg()

local text = "Стоимость"..tbl[1]"руб." --вот здесь не пойму как вписать цену

db.actor:give_game_news(text, "ui\\ui_iconsTotal",Frect():set(332,376,83,47),0,10000)

end

=============

Локальная cost это сумма нескольких локальных

local cost1 = 100

local cost2 = 200

local cost3 = 300

cost=cost1+cost2+cost3

Может и можно обойтись и без таблицы, я не знаю. А локальная переменная будет хранить свое значение после сэйв/лоад? Может его сразу вписать в месадж, без занесения в таблицу

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

Если переменная 'соst' определена до этого, то :

 

local tbl = {}

tbl[1] = tostring(cost) -- в принципе Luа прекрасно сама преобразовывает числа в строки и наоборот, но от греха подальше пусть лучше будет через tostring

function send_msg()

local text = "Стоимость "..tbl[1].." руб."

 

-- и т.д...

end

 

 

Только зачем таблицу нужно создавать??? Тебе, я думаю, виднее.

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

Куфзук, она закомментирована, следовательно в игре не используется.

 

P.S. Объясни, что тебе от этой проверки надо.

Изменено пользователем Министр

Министр, да все немного банально - глянуть на сие действо и по возможности малость изменить.

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

Изменено пользователем Куфзук

hypercatt, что конкретно тебе нужно!? Спавн мертвого НПС или оживить мертвого НПС?

Про оживление НПС, вот ссылка: Артефакт для воскрешения мертвого НПС , надеюсь разберешься.

А если тебе нужен спавнить мертвого, то в шапке темы есть ссылка на шпаргалку от n6260, там есть. И не только это, очень много полезностей!

 

hypercatt, вот что мне дал Google:

Цитата от banderos, втеме "Скриптование и спаун":

function spawn_trup_npc()
local obj = alife():create("здесь профиль твоего нпс",vector():set(-45.41, 19.18, 5.84), 2340, 1530)
local tbl = amk.read_stalker_params(obj)
tbl.custom="[known_info]\nможно вставить инфопоршен" -- эту строку можно убрать. Она для выдачи инфопоршена при обыске трупа.
tbl.sid = 481543 -- id
tbl.health = 0
tbl.updhealth = 0
amk.write_stalker_params(tbl, obj)
end

Если делаешь через all.spawn, то еще проще, просто пропиши health = 0.

hypercatt

Ты лучше диалоги этого НПС пропиши кому нибудь. Допустим бармену:

Поиском находишь твоего НПС. Поищи по имени в конфигс/геймплай_характер_****

Там ты увидишь его секцию. Что то типа такого:

<specific_character id="start_game_killer" team_default="1">

<name>Командир</name>

<icon>ui_inGame2_Sich</icon>

<map_icon x="1" y="0">

</map_icon>

<bio>Опытный сталкер. Детальная информация отсутствует.</bio>

<class>start_game_killer</class>

<community>stalker</community>

<terrain_sect>stalker_terrain</terrain_sect>

<snd_config>characters_voice\human_02\stalker\</snd_config>

<rank>880</rank>

<reputation>0</reputation>

<money min="480000" max="480000" infinitive="1" />

<visual>actors\stalker_bandit\stalker_bandit_3_face_1</visual>

 

<supplies>

[spawn] \n

wpn_ak74 \n

ammo_5.45x39_fmj = 1 \n

wpn_beretta \n

ammo_9x19_fmj = 1 \n

grenade_rgd5 = 1 \n

 

#include "gameplay\character_items.xml"

#include "gameplay\character_food.xml"

#include "gameplay\character_drugs.xml"

</supplies>

#include "gameplay\character_criticals_4.xml"

<actor_dialog>test</actor_dialog>

<actor_dialog>start_game_killer_dialog</actor_dialog>

<actor_dialog>actor_break_dialog</actor_dialog>

 

</specific_character>

 

Оттуда копируй строки где есть <actor_dialog>*******</actor_dialog>

Потом открываешь character_desc_bar и найди секцию бармена (поищи по слову barman)

У него находишь где написано <actor_dialog>*******</actor_dialog>

и вставляешь туда диалоги твоего помершего НПС

Freedom

Здравствуйте.

Интересует проблема Leviathan на 266 странице http://www.amk-team.ru/forum/index.php?s=&...post&p=5128.

У самого стоит АМК с патчами + nlc 5.08 + графические моды +адаптация под 1.0006 + мои правки.

Правил all.spawn, убирал халяву в виде патронов, артефактов и т.п. в контейнерах. Не люблю, когда проходишь игру в N-й раз и знаешь, что есть патроны или аптечки в определённом месте. После правок компилировал новый all.spawn утилитой acdc. В результате все секции в файле были перенумерованы. Из-за этого не появляются переходы. Стоит заменить all.spawn на nlc-й и загрузить сохранение перед сдачей документов их Х18 бармену, то переход на росток появляется. С переносом спауна переходов из all.spawn, как написано в WiKi не справлюсь, не силён я в этом.

 

Как всё-таки скомпилировать all.spawn, чтобы не менялась нумерация секций? Пробовал разные версии acdc, во всех нумерация меняется.

 

И ещё вопрос, как убрать спавн артефакта, например, батарейки у перехода со свалки в ТД. Секцию нашёл, а что делать?

Изменено пользователем Рудь
Рудь, ну вопервых: при компиляции нового all.spawn, нужно начинать новую игру. Вовторых: при удалении или добавлении новой секции в all.spawn, нумерация хочешь не хочешь поменяется, это делае сам acdc и на сколько мне известно, сдвиг нумирации в ту или иную сторону, не на что не влияет. В третьих: чтобы убрать батарейку, просто убери ее секцию.

Куфзук, с новой игрой понятно, начинал заново. Только почитав пост Leviathan и проверив на деле, убедился, что дело в перенумерации секций. Да и потом в процессе игры, можно запросто менять all.spawn, естественно, только чтобы скрипт спаунинга перехода сработал, в остальных случаях - новая игра. За подсказку с удалением секции -спасибо, что-то я сам не догадался.

 

Вот такой вопрос, в каком скрипте прописаны номера секций спаунинга перехода связанные с секциями all.spawn? Попробую заменить их в соответствии с нумерацией all.spawn. Это как один вариант.

 

Еще думаю попробовать поиграться со значениями в acdc.pl, возможно проблема сбивки нумерации в нём.

Куфзук, не совсем понятно. Если нет вызова по номеру секции из какого-либо скрипта, почему перенумерация не даёт спаниться переходам.

 

Попробовал ещё раз заново начать игру, поставил неуязвимость ГГ, добежал до Агропрома, взял документы по переходу с Агропрома на Кордон со 2-го этажа здания, где вояки сидят. В результате переход не открылся. Т.е. в момент, когда берёшь документ, по идее, выполняется скрипт, этот скрипт ссылается на координаты перехода из соответствующей секции all.spawn. Это верно или я заблуждаюсь?

 

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

Куфзук, к сожалению, на подфоруме NLC убрали все ветки про 5-ю версию, остались только ссылки. А Сяк сюда редко заходит.

Попробую всё-таки покавыряться с acdc, там секция с названием use constant levels_info.

 

 

Всё, разобрался. Перенумерация секций в all.spawn неизбежна, посему нужно править скрипт sak.script, в самом начале файла. Пример:

 

add_new_lc(9100,1462,"На Кордон","info_way100a")

 

правим на add_new_lc(9100,хххх,"На Кордон","info_way100a")

 

Здесь хххх - новый номер секции в скомпилированном all.spawn.

Изменено пользователем Рудь

Рудь, да, в NLC спаун идет по номеру секции в all.spawn.

 

P.S. И да, пожалуйста, если вы не знаете правильного ответа, то лучше не отвечайте, людям только тяжелей от таких советов приходится.

Изменено пользователем Министр

прошу прощения!возможно я пишу не в ту тему но всё же мой вопрос касается музыки в игре.я решил поменять музыку в главном меню взял музыку формата мп3 сконвертировал её с параметрами 44100 в огг переименовал в кредитс и всё как положено.Запускаю игру, и что я слышу??? Стандартную музыку!Просьба если кто - то знает в чём моя погрешность и где я допустил ошибку объясните мне пожалуйста.Администраторам прошу прощения ещё раз если мой пост здесь не в тему.извиняюсь что раскидал данный пост на нескольких темах.просто нужно получить поскорее ответ)

 

Строгое предупреждение от администратора n6260
1. Извинения при нарушении правил не "канают" ;) Так что ловите предупреждение. И не забывай про пробелы и прочие мелочи.

Сообщение от администратора n6260
2. Музыку надо не только сканвертить, но и заменить ею оригинальные файлы, с сохранением пути расположения и имён. И еще в некоторых модах она может иметь другое расположение и имена.

В файле misc\smart_terrain.ltx указывается время задержки сталкеров в гулаге. Подскажите пожалуйста какой файл на него ссылается( откуда идет запрос, с двига или скриптов, если из скриптов просьба ткнуть носом - откуда.)

 

P.S. сорри за формулировку, ниче лучше придумать не смог.

sovok85, в чистом ТЧ версии 1004, в файле smart_terrain_params.script, есть функция, которая использует данные этого файла.

Вопрос про game_relations.ltx. Стоит NLC 5.08

Изменяю пороговые значения для получения статуса ГГ и НПС (опытный, ветеран, мастер).

При изменении

rating = novice, 300, experienced, 600, veteran, 900, master

rating_names = novice, 300, experienced, 600, veteran, 900, master

 

на

rating = novice, 500, experienced, 1200, veteran, 3000, master

rating_names = novice, 500, experienced, 1200, veteran, 3000, master

 

Происходят чудеса: с начало игры в деревне новичков спанятся нпс-ы в экзах, в ТД пасутся сталкеры, которые должны быть в Припяти, Круглов превращается в рядового сталкера и вместо побега на Янтарь устраивает шмон трупов наёмников, бродит по территории Ростока, жалуется на жизнь и т.д.

 

Хочется поднять пороговые значения статуса ГГ и НПС. И что нужно подправить, чтобы ранг у НПС не был таким огромным. Например, у меня рейтинг 2500, ГГ на 18 месте, а у НПС в куртке новичка с ПМ - 8000, при этом он сидит на территории Бара и травит анекдоты. Обидно, выше 13 места не получается подняться. Даже, если грохнуть этого НПС, место в рейтинге смещается вверх. Но стоит после этого записаться и загрузится, как место ГГ опять съезжает вниз из-за вновь появившегося убитого НПС и рейтинг покойника, подозреваю, со временем будет расти.

Решил создать новые аномалии под ТЧ, порылся, нашёл кучу уже существующих интересных, но отключенных аномалий. Попробовал восстановить аномалию zone_ameba - словил вылет: почему-то из строки visual в конфиге аномалии читается только первый символ, как следствие - игра жалуется, что не может найти p.ogf. Соответствие скриптовому классу se_zone_visual прописал на всякий случай, хотя на Z_AMEBA это не должно влиять. Что с этим делать?

 

С аномалией "кислотный туман" тоже проблемка: не знаю что писать в строку "class" в конфиге. Скриптовый clsid есть (zone_acid_fog), а какому классу для конфигов он соответствует - не знаю, в поиске не нашёл. Может кто знает?

 

И ещё вопросик: реально ли вообще в ТЧ сделать squad'ы? Через ON_OFF_G не получается, т.к. класс не скриптовый, но думаю, может как-то сделать через db.script. В se_stalker и se_monster сделать поле now_in_squad и при загрузке (STATE_Read) добавлять в специальную таблицу в db, но как сделать, чтобы неписи не разбегались в разные стороны? Спавн по такой схеме, как в ЗП (sim_board.fill_start_position) я уже сделал, но дальше что-то всё идёт из рук вон плохо.

 

Происходят чудеса: с начало игры в деревне новичков спанятся нпс-ы в экзах, в ТД пасутся сталкеры, которые должны быть в Припяти, Круглов превращается в рядового сталкера и вместо побега на Янтарь устраивает шмон трупов наёмников, бродит по территории Ростока, жалуется на жизнь и т.д.

Смотрите smart_terrain_presets.ltx, там прописывается соответствие группировок и рангов для уровня. И ещё: в одном из скриптов (по-моему smart_terrain.script) видел, что неписям при переходе из смарта в смарт добавляется ранг, может было бы лучше отключить.

Изменено пользователем Полтергейст

Народ у меня такая проблема. Играю в солянку с последним патчем. На свалке у меня постоянно валят бандиты Серого, раз 20 переигрывал, не успеваю добежать, и в итоге задание поговорить с Серым проваливается(((( Можно ли сделать так, чтобы задание было засчитано?? Говорю сразу, по сюжету уже далеко ушёл и переигрывать не хочу, долго и муторно очень(( Помогите плз...

Сообщение от администратора n6260
А не проще просто прописать арту мега-защиту и завалить всех врагов хоть ножом?

 

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

Можно, но я уже далеко прошёл, а сейва с заходом на Свалку не осталось.... Или смерть Серого не столь критична для НС?

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

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

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

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

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

Войти

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

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

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