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

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

Unnamed Black Wolf, Я пробувал и через pda.script но все равно не работает.Игра запускается но скрипт не правельно работает.Открываеш инвентарь оружие убирается,но когда закрываеш оружие не берется в руки.
Ссылка на комментарий
оружие не берется в руки
Вообще не берётся или через несколько сек? Изменено пользователем Tris
Ссылка на комментарий

Artos

Т.о. мною аномалия НЕ удаляется сразу, а только тогда, когда записей о ней уже нет у объектов. Попробуй понять разницу ...

Я понял - мне этот код не нужен. А имеет ли значение удалить сперва объект а потом запись о нём или наоборот. Если делать всё в рамках одного вызова?

 

Тебе почти пара лет тестирования игроками в мод о чем-то говорит, или еще какие-то факты нужны?

 

Пока что факты говорят о том, что функция sim:remove_in_restriction(soNPC, idRestr) была оставлена как гарант того, что в случае сбоя нет-пакетов (сбоя пакетов, а не alife()-функции!), ограничения всё равно удалятся. Тоесть она как раз была надёжней чем работа с нет-пакетами (по крайнем мере на тот момент)

И т.к трогать лишний раз нет-пакеты я не хочу, мне и интересно сушествуют ли какие то подводные камни с sim:remove_in_restriction()

Замечены ли факты её сбоя\рэндома\зависания.

Из твоего ответа я понял, что конкретного ответа на этот вопрос там нет, так что возму на веру что она работает нормально, а обратное пока не доказано. Подстраховка пакетами это конечно хорошо, но если кроме как страховки они никакой роли не играют, то я от них избавлюсь, т.к им не доверяю.

 

Спасибо, за понимание.

ColR_iT

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

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

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

Привет всем!Прописал логику на шмон трупов, но когда загружаю игру происходит вылет.

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: d:\s.t.a.l.k.e.r\gamedata\scripts\xr_logic.script:220: attempt to call field 'disable_scheme' (a nil value)

 

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

Использовал скрипт amkIIxr_gatherer,прописывал в modules,xr_motivator,xr_logic,если нужно,скрипты скину.Пытался скрипт поставить в мод История Прибоя

Заранее спасибо за помощь

 

Если сам не в состоянии прочесть лог и посмотреть из-за чего же ругается на 220-ую строку из xr_logic.script - то хотя бы потрудился эту строку показать в топике.

Проверь синтаксис самой строки и/или скрипта, который в ней упомянут.

И в дальнейшем, не жди когда попросят предоставить информацию по твоему вопросу, т.к. ... могут и не попросить и не ответить. --/Artos

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

Доброго времени суток, форумчане.

 

Вопрос возникло 2:

 

1) Как прописать story_ids новому заспавниному НПС (для target_story_ids) и где прописывать в функции спавна, либо character_desc ?

 

2) В файле tm_*.ltx зависимость присваемого story_ids зависит от уровня (как в файлах all.spawn порядок присвоения) или присваевается после каких то конкретных значений, н-р:Последней.

 

Для ЧН 1.5.10+ОГСМ+НП2.5

 

:offtopic: Заранее спасибо :ny_ph34r_1:

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

«Разумная храбрость — это катахреза» из повести Стругацких «Стажёры»

FA58zbp.png

http://rghost.ru/45827792 5-этажка + школа №4 (из Припяти)

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

Всем здрасте, я прописывал переход на другую локацию, и у меня возник вылет, в чём тут проблема я разобрался, но как я не менял цифры, ничего не меняется, подскажите что делать? основа МОда АМК 1.4.1 с 2мя патчамии

Expression : no_assert

Function : CALifeStoryRegistry::add

File : E:\stalker\patch_1_0004\xr_3da\xrGame\alife_story_registry.cpp

Line : 30

Description : Specified story object is already in the Story registry!

 

 

 

[915]

; cse_abstract properties

section_name = level_changer

name = exit_to_marsh

position = -259.36654663086,-18.755743026733,-160.60395812988

direction = 0,-0,-0

 

; cse_alife_object properties

game_vertex_id = 9

distance = 7

level_vertex_id = 6344

object_flags = 0xffffff3e

custom_data = <<END

[pt_move_if_reject]

path = esc_way_if_reject

END

story_id = 91212

 

; cse_shape properties

shapes = shape0

shape0:type = box

shape0:axis_x = 2.22939944267273,0,0

shape0:axis_y = 0,4.83859968185425,0

shape0:axis_z = 0,0,2.22939944267273

shape0:offset = 0,0,0

 

; cse_alife_space_restrictor properties

restrictor_type = 3

 

; cse_alife_level_changer properties

dest_game_vertex_id = 3337

dest_level_vertex_id = 484

dest_position = 565.511291503906,3.22908997535706,-180.930603027344

dest_direction = 0,-0.174531996250153,0

dest_level_name = alife_marsh

dest_graph_point = start_actor_01

 

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

Я всё просмотрел,синтаксис в порядке НО всё ровно вылет

 

И что? Твоя констатация ошибки чем-то поможет в поиске ответа и будешь продолжать гадать и остальным это предлагать? --/Artos

[x]

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

RDS

1. Прописать story_id заспаненному объекту можно ТОЛЬКО используя нет-пакеты, иных способов не существует. Скрипты для этого имеются и в том же АМК и во многих других модах и в этом топике можно найти.

2. Требования к story_id едиы - это уникальные идентификаторы и НЕ должны повторяться. В каком (бес)порядке их присваивать не имеет значения. Важно чтобы ни один идентификатор не повторился в игре и ... сам модмейкер не запутался или другие с его скриптами/конфигами.

 

Daniar299, прочти, плз, вот это: #325

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени

Ссылка на комментарий
Artos, Да, я прочитал, но я не совсем понел что делать? Что менять? Ведь до этого я спанил сталкера, но у него нет такого вылета! Он появился после 915 секции, чтож мне теперь делать? Если это теперь не исправить, я повторяю свой старый вопрос, дайте функцию на создание перехода через скрипт!
Ссылка на комментарий

(возможно более уместно в топик по инструментам, но ... все же бОльше к скриптам игры относится)

 

Предлагаю посмотреть (и использовать) вариант организации нормального вывода в лог-файл информации из скриптов с использованием восстановленной работоспособности функции 'log' для всех версий игры.

xrLuaFix (lite) - расширитель Lua для S.T.A.L.K.E.R SHoC|CS|CoP (ТЧ/ЧН/ЗП)

 

Версии 'lite' базируются на исходниках: http://code.google.com/p/xrluafix/ (by RvP)

Версия xrLuaFix совместима со всеми официальными версиями ТЧ (S.T.A.L.K.E.R "Shadow Of Chernobyl")

Версии xrLuaFix совместимы со всеми официальными версиями ЧН и ЗП (соответственно).

 

Краткое описание:

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

Добавляемые в игру функции:

глобальное пространство имен:

void RvP([arg]) -- открывает доп. пространства имен io,os,package и debug

void logf(string1 [, string2, string3, ...]) -- вывод в лог аргументов, каждый аргумент в новой строке.

Дополнительные/возвращенные пространства имен:

os -- для ТЧ

io -- для ТЧ

package -- для ТЧ, так же тут находится глобальная функция require

debug -- опционально

 

Установка:

----------

Для ТЧ (SHoC):

В папке "bin" переименовать файл "xrLua.dll" в "xrLua_GSC.dll" и на его место скопировать xrLuaFix.dll, переименовав его в "xrLua.dll".

Т.е. исходный файл переименовывается (не удалять!), а вместо него копируется модифицированный. Наличие "xrLua_GSC.dll" - обязательно!

Вышеуказанное можно выполнить ввтоматически, скопировав файлы в папку 'bin' и запустив xrLuaFix_install.bat.

 

Для ЧН/ЗП (CS/CoP):

Скопировать в папку 'bin' соответствующую версию файла 'LuaFix.dll' из папок архива 'bin_CS' или 'bin_CoP'.

Внимание: Все исходые библиотеки игры НЕ заменяются.

 

Использование:

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

Для ТЧ (SHoC):

Для активизации дополнительных расширений требуется после запуска игры из скриптов вызвать функцию "RvP()" без или с аргументами.

 

Для ЧН/ЗП (CS/CoP):

Для активизации дополнительных расширений требуется после запуска игры из скриптов подключить дополнительную библиотеку

через функцию require("LuaFix") и после этого вызвать функцию "RvP()" без или с аргументами.

 

Варианты вызова функции RvP:

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

Вариант 1: Только восстановление namespace: io|os|package

RvP()

 

Вариант 2: Дополнительно к вар.1 добавляется namespace debug

RvP("debug") --/ or RvP(true)

 

Вариант 3: Дополнительно к вар.1/2 создается дебаговый лог-файл

local fname = getFS():update_path("$logs$", "xray_debug.log") --/ путь и имя дебаг-файла лога

RvP(fname) --/ or RvP(fname, '[%x %X]\t')

 

Практичесике примеры использования см. в файле: lua_fix.script

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

Дополнительная информация: см. http://code.google.com/p/xrluafix/

 

29.02.2012

Artos

Скачать: xrLuaFix (~173 кБ)

В комплекте собственно необходимые dll для каждой игры (ТЧ/ЧН/ЗП) соответственно и скрипт подключения доп. возможностей, вывода в лог-файл (без обращеий к функции консоли) и расширенная функция 'abort' (с трассировкой вызовов).

Дополнительно xrLuaFix (lite) позволяет вести второй (дебаговый) лог-файл, котрый исключает "безлоговые" вылеты, сохраняя всю информацию до момента возникновения фатальной ошибки.

 

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени

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

Artos, Как я понел, мне нужно это acdc -parse alife_l01_escape.ltx -old 0 -new 934? но как их вводить, точнее куда? Пытался в консоле не работает, у меня стоит win7

 

[x]

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

]snork[, слов 'вроде' - скрипты не понимают ...

Учитывая, что в исходнном amkxr_gatherer.script функция disable_scheme имеется, но строка лога указывает, что xr_logic.script ругается на ее отсутствие/недоступность - остаются только варианты а) amkxr_gatherer.script имеет синтаксические ошибки или б) имя функции disable_scheme изменено в amkxr_gatherer.script.

Далее гадать и "вроде как" предполагать врядли имеет смысл, тем более автор вопроса как партизан ни скрипт amkxr_gatherer или хотя бы disable_scheme ... не показывает.

Проверь скрипт чекером, дабы на "вроде как" не полагаться.

 

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

Daniar299: я повторяю свой старый вопрос, дайте функцию на создание перехода через скрипт!
Вопрос и "дайте" - совершенно разные вещи и тут никто-ничего на подобное "дайте" не дает ... Тут дают знания/советы/подсказки и только добровольно, а не по требованию.

И при чем тут требование скрипта о переходе, ошибка при спавне объекта и какие-то ключики для ACDC - мне неясно.

В моде АМК спавнятся объекты по идентификаторам секций из спавна (spawn_id). Твое добавление привело к тому секции (их spawn_id) "сдвинулись", и некий объект не удаляется из игры, а на его место спавнится его дублер с тем же story_id. Вот и смотри где должен удаляться объект и корректируй его spawn_id в соответствии с твоим новым all.spawn'ом.

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

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени

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

У меня два алл.спавна, один с добавлением перехода, другой без него, на первом работает всё, на втором, ничего!

Ссылка на комментарий
Daniar299, в последний раз повторяю, что во втором случае из-за добавленной секции в all.spawn у тебя "сдвинулись" идентификаторы spawn_id. В кодах мода АМК имеются моменты, когда прежние объекты определяются по spawn_id или по имени и на их место по spawn_id спавнятся заново. В случае изменения порядки spawn_id - ты и имеешь проблемы. Ищи в моде те объекты, которые удаляются/спавнятся по spawn_id и корректируй им идентификаторы из вновь тобою скомпилированного all.spawn'а.

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени

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

Тема подверглась изменениям. Все нововведения в "шапке".

ColR_iT

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

Artos

Огромное спасибо за адаптацию к ЧН\ЗП этой DLL-ки. :)

Текст в консоли, выведенный функцией logf случаем не выделяется белым цветом?

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

 

ColR_iT

Дело вкуса конечно, но может быть переименовать в "Скриптописание"? А то просто как то глаза режит, имхо конечно.

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

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

*Shoker*, она вроде как и так всегда была совместима...

цвет текста зависит только от приставки в начале("--", "~~", ...)

 

Трассировка - debug.traceback(), в офф. мануале это все вполне расписано

Vita sine libertate, nihil

Vita sine litteris - mors est

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

×
×
  • Создать...