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

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


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

Ребят, помогите! Подключил к ЗП Кордон из ЧН, и возникла проблема с партиклом "fire_distort.pe". Пути до него в ЧН и ЗП отличаются. Я удалил оригинальный партикл из ЗП и вставил тот же из ТЧ, но по пути ЧН и у меня появился вылет :

Expression : error handler is invoked!

Function : handler_base

File : D:\prog_repository\sources\trunk\xrCore\xrDebugNew.cpp

Line : 754

Description : illegal instruction

 

 

AWRP : Re - Load 0.2 ©

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

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

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

Ребят такой вопрос.Я создал в ЗП новую группировку,созал сквад на Скадовске всё работает норм.,но неписи тупо сидят на полу,а не стоят за столами как все.Что мне сделать чтобы они вели себя понормальному,помогите плизз, а то я уже в тупике.

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

Forestskif, насколько я знаю, АМК всегда были рады использования их скриптов в других модах с обязательным указанием авторов в ридми.

Sektor1986, необходимо расставить анимпоинты в нужных местах, с соответствующей логикой. Смотри, как в оригинале сделан Скадовск, лучше примера не придумать.

Изменено пользователем KD87
Ссылка на комментарий
KD87, а ты не в курсе к кому из них можно обратиться? Куда написать по поводу приобретения, так скажем, их скрипта? Я сейчас все-таки сообразил как спавнить аномалии через скрипт на старые и новые локации, но это все равно не то, что я хотел в своем глобальном моде. Предел мечтаний - это аномалии, которые меняют свое положение после каждого выброса и которые видят и обходят НПС. Моего мозга на создание такого пока не хватает =( а у АКМ это реализовано. Изменено пользователем Forestskif
Ссылка на комментарий

Batment,

Что означает строчка meet_dialog в логике ?

Это диалог, который активируется автоматически при юзе непися. При его завершении будут доступны остальные диалоги. Учим логику)

 

Forestskif, тебе же KD87 сказал, что можешь использовать скрипты АМК мода как и где хочешь, денег за это платить не нужно, только указываешь авторство.

Ссылка на комментарий
Forestskif: Копаясь в потрахах различных глобальных модов на тему поиска скрипта создания аномалий я обнаружил, что они все используют один и тот же скрипт от АМК

Не совсем верно. Во многих модах на базе АМК используются и скрипты из АМК, но более правильно было бы говорить об алгоритме спавна 'динамических' аномалий (по рандомным координатам). Например в OGSE и SIMBION'e схожие алгоритмы, но значительно измененные скрипты.

Есть моды, которые спавнят 'свои' аномалии по заранее прописанным в конфигах координатам и имеют совершенно иные скрипты. Кол-во точек может быть значительным и спавн в разное время по разным - также по сути даст аналогичный эффект.

 

Как верно заметили KD87 и Scarabay, обязательности спрашивать разрешения на использование публично опубликованных материалов модов в которых НЕ оговорены условия использования этих модов/материалов, не требуется. Исключение могут составлять коммерческие проекты ...

Упоминание/ссылки в своей работе на авторство использованных материалов - это и соблюдение прав авторства и дань уважения.

 

Forestskif: Предел мечтаний - это аномалии, которые меняют свое положение после каждого выброса и которые видят и обходят НПС
Хотел бы обратить внимание, что в ЗП (SCoP) оригинальные аномалии имеют совершенно иной тип (это в основном поля torrid, а не одиночные как ЧТ).

Так же, для НПС эти аномалии невидимы и не причиняют никакого вреда.

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

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

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

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

Scarabay - совет тебе на будущее - не знаешь темы, не лезь в разговор!

И по-вежливее, плз, и не стОит затыкать рот. Порой в ответах не только адресная информация, но и для других.

--/ Artos

 

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

Artos, я в курсе, что из ТЧ и ЧН в ЗП переносить без изменений скрипты нельзя. Проблема в том, что я не скриптовик и никак не моу сделать эту часть своего мода (с аномалиями). Я уже разобрался как заспавнить любую аномалию туда, куда мне нужно на любую локацию, как родную, так и впихнутую мной из прежних игр. Дело в том, что это не то, что я хотел сделать. Мне нужно, чтобы аномалии меняли место и НПС в них не складировались штабелями. Подобное реализовано в больших глобальных модах, но у меня мозга не хватает из них ВЫДРАТЬ непосредственно спавн динамичных аномалий, к примеру. Вот в чем вопрос, а не в разрешении на использование.

Я понимаю, что спрашивать разрешение не нужно и естественно укажу тех, чей скрипт я использовал. Тут без вариантов, проблема в том, что Я НЕ МОГУ ВЫДРАТЬ, потому и спрашиваю к кому из АМК можно обратиться, чтобы попросить у него чистый блок с аномалиями для ЗП или еще что-нибудь, тот же сон через спальник, к примеру, или постъэффект.

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

Forestskif

1. Срипты то как раз из ТЧ/ЧН в ЗП переносить можно и часто без каких либо изменений. Lua - тот же, только некоторые функции до(у)бавлены. Т.о. в этой части особых заморочек нет, если есть все же навыки работы со скриптами, хотя что-то приходится и учитывать ... А вот измененные свойства объектов - порой становятся труднопреодолимыми для простеньких адаптаций.

2. Те, кто писал когда то аномальные скрипты для АМК-мода уже не занимаются этой игрою. Да и нет версий динамического спавна аномалий для АМК ЗП, т.к. нет и модов ни на ЧН ни на ЗП ни от былой команды, ни от той, которая планировала выпустить мод для ЗП. Т.о. обратиться к авторам и получить "чистый блок с аномалиями для ЗП" практически нереально.

3. Врядли кто из действующих модмейкеров писал иль будет писать подобный "чистый блок". И "чистый" ЗП давно уже мало кого привлекает, а значит у каждого свои доп. локации и т.п. и подобный мод не может быть достаточно автономным (в одном скрипте+конфиге). Помимо 'своего' скрипта/конфига, это и se_zones.script затрагивает и скрипты/алгоритм выброса и характеристики НПС (чтобы их поражало иль обходили) и довольно много еще чего.

Могу тебе дать свою (устаревшую) наработку по ЗП, где пробовал игру по ее выходу на пригодность модить, там есть схожее с АМК спавном аномалий, но это далеко не "чистый блок", там и тот же спальник (на базе АМК'шного) и пр. мои чудачества.

 

Ну вообще-то (ИМХО), не жди таких подарков в виде "чистых блоков". Ты, как понимаю, в скриптах все же имеешь навыки (хотя бы небольшие). Бери наработки и пробуй, если не будет что-то получаться - так и задавай вопросы тут иль в топике по скриптованию - поможем (но не сделаем "за"). :-)

 

Forestskif: Мне нужно, чтобы аномалии меняли место и НПС в них не складировались штабелями.

А вот тут две момента:

1. Даже 'динамические' аномалии НЕ меняют место! Это псевдо-эффект, прежняя удаляется - на новом месте спавнится другая (иль можно включать/отключать по-очередно). Только с недавнего времени вроде как появилась возможность менять координаты объектам прямо в игре, но пока таких практических наработок (тем более для аномалий) нет.

2. Как уже говорил выше, в чистом ЗП аномалии неопасны для НПС. Если же сделать их 'кусачими', то чтобы НПС не складировались - их или нужно обучить обходить аномалии, а это отдельная схема обхода аномалий, либо, как делается в некоторых модах - аномалии (как рестрикторы) ставятся им в 'out', т.е. запрещается им входить в эти рестрикторы. А это уже совершенно иное и к динамическому спавну мало имеет отношения.

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

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

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

Forestskif

АМК давно уже распалось, поэтому спрашивать что то у всей команды бесполезно. Это раз

Чистый скрипт для динамических аномалий даже для ТЧ найти очень очень сложно. Максимум можно найти полу самопальный скрипт из АМК 1.3. Это два

На ЗП, в глобальных модах, в которых включены динамические аномалии используется чаще всего просто такой-же алгоритм. Реализация в силу разнообразных изменений скриптовой базы сильно меняется, поэтому скрипты для такой серьезной штуки как динамические аномалии переносить из ТЧ - сроду самоубийству. Легче заново написать. Это три

Если я не ошибаюсь то АМК так и не написала модуль динамических аномалий для ЗП. Это четыре

Писать сейчас тебе уже никто не будет. Ищи скриптера или учись сам. Это пять

 

Давайте без оскорблений друг друга. Это шесть

Freedom

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

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

ПРописал так:

 

 

 

------------------------------PASXAL MOD

[prut_pda]:device_pda

$spawn = "quest_items\PRUT_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = PRUT_pda_desc

inv_name = PRUT_pda_name

inv_name_short = PRUT_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = PRUT_pda

 

 

 

[chekan_pda]:device_pda

$spawn = "quest_items\CHEKAN_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = CHEKAN_pda_desc

inv_name = CHEKAN_pda_name

inv_name_short = CHEKAN_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = CHEKAN_pda

 

 

 

 

[desecter_pda]:device_pda

$spawn = "quest_items\Desecter_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Desecter_pda_desc

inv_name = Desecter_pda_name

inv_name_short = Desecter_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Desecter_pda

 

 

 

[thunderfuck_notebook]:device_pda

$spawn = "quest_items\thunderfuck"

visual = dynamics\equipments\quest\notebook.ogf

inv_weight = 3.5

description = thunderfuck_desc

inv_name = thunderfuck_name

inv_name_short = thunderfuck_name

can_trade = false

cost = 100

quest_item = true

story_id = thunderfuck

inv_grid_width = 2

inv_grid_height = 2

inv_grid_x = 7

inv_grid_y = 13

 

 

 

 

 

[dimastalker_pda]:device_pda

$spawn = "quest_items\Dimastalker_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Dimastalker_pda_desc

inv_name = Dimastalker_pda_name

inv_name_short = Dimastalker_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Dimastalker_pda

 

 

 

 

 

 

 

[alta1r_notebook]:device_pda

$spawn = "quest_items\ALTa1R"

visual = dynamics\equipments\quest\notebook.ogf

inv_weight = 3.5

description = ALTa1R_desc

inv_name = ALTa1R_name

inv_name_short = ALTa1Rk_name

can_trade = false

cost = 100

quest_item = true

story_id = ALTa1R

inv_grid_width = 2

inv_grid_height = 2

inv_grid_x = 7

inv_grid_y = 13

 

 

 

 

 

 

[bormon_pda]:device_pda

$spawn = "quest_items\Bormon_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Bormon_pda_desc

inv_name = Bormon_pda_name

inv_name_short = Bormon_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Bormon_pda

 

 

 

 

[myxa_pda]:device_pda

$spawn = "quest_items\Myxa_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Myxa_pda_desc

inv_name = Myxa_pda_name

inv_name_short = Myxa_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Myxa_pda

 

 

 

[altay_pda]:device_pda

$spawn = "quest_items\Altay_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Altay_pda_desc

inv_name = Altay_pda_name

inv_name_short = Altay_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Altay_pda

 

 

 

[sledopytnik_pda]:device_pda

$spawn = "quest_items\Sledopytnik_pda"

visual = dynamics\devices\dev_pda\dev_pda.ogf

description = Sledopytnik_pda_desc

inv_name = Sledopytnik_pda_name

inv_name_short = Sledopytnik_pda_name

can_trade = false

cost = 20

quest_item = true

story_id = Sledopytnik_pda

 

В чём проблема?

Выводы модмейкера:

1)Вылетает - это хорошо. Значит, работает :)

2) Если хочешь сделать что-то хорошо, делай сам!

3) Если падёшь духом, падёт и мод.

4) Он живой... :o

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

Привет. Забил на квест, хачу сделать спальник. Делал по статье со СталкерВики, словил такой вылет:

FATAL ERROR

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
[error]Line          : 748
[error]Description   : ....e.r. - Зов Припяти\gamedata\scripts\xr_logic.script:1270: attempt to index local 'obj' (a nil value)


stack trace:

Приошу объяснить, от чего это и как это исправить. Заранее благодарен

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

Artos, благодарю за полноценный ответ. По поводу АМК меня просто смутило неизменное присутствие в большинстве глобальных модов файла amk.script и других соименных. Вот я и подумал, что у них берут как-то, а что АМК уже нет я не знал... и в шоке, если честно. По поводу скриптовика: копаясь в скриптах я постоянно обнаруживаю следы чела с ником xStream. Так понимаю это он их основной скриптовик... был в смысле и если они давно Сталкером не занимаются, то искать его смысла нет.

По поводу реализации перемещения аномалии посредством попеременного появления - спасибо. Обидно, что сам, дурак, не догадался. Попробую придумать, а пока придется довольствоваться фиксированным спавном аномалий. Я, конечно, не полный чайник, но выкорчевать из глобального мода отдельную большую скриптовую часть - это для меня пока что очень круто. Так что я буду ОЧЕНЬ БЛАГОДАРЕН, если вы мне скинете ссылку на ваш мод. Я с удовольствием в нем покопаюсь и поучусь =)

А теперь по поводу оскорблений - я никого не оскорблял. Не произнес ни одного оскорбительного слова. Я дал совет, причем актуальный, по сему извиняться не собираюсь. "...порой в ответах не только адресная информация, но и для других." - абсолютно согласен, вот только в моем случае было повторение ранее сказанной другим информации (сами смотрите: - "...тебе же KD87 сказал, что..."), да к тому же совершенно не в тему основного обсуждения моего вопроса, так что полезности для других нет НИКАКОЙ. Если на чистоту, то тот пост, как раз, больше похож на оскорбление, с намеком на тупизм, нежели мой ответный.

Достает, если честно, когда на форумах задаешь вопрос, а на следующий день твой пост уползает на другую страницу не из-за нормальных ответов или вопросов других форумчан, а из-за того, что понаписали всякой фигни, типа: - "гугл те в помощь", "а на кой те это надо?", "иди ка ты на фак..." и так далее. Я уж не говорю о квотинге, когда выдирают кусок твоего поста и начинают его мусолить, тогда как вопрос-то совсем в другом. Уже рефлекс негативный из-за подобного, потому как зачастую таковыми писаками оказываются банальные флеймеры, которые не несут никакой пользы, а только уводят разговор в сторону. Это, конечно, не относится к данной ситуации, но я просто хочу, чтобы вы поняли от чего такая реакция.

Убрал под спойлер и ... со своей стороны хочу посоветовать быть более толерантным и самому не провоцировать бОльший оффтопик.

Замечу, что убранные слова уже на грани фола ...

--/ Artos

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

Forestskif

Я работал не над одним модом, актуальный на сегодня делается под ТЧ (SIMBION:SHOC). В нем, как уже упоминал выше, имеются алгоритм и коды динамического спавна аномалий, но ... выдернуть их будет вероятно посложнее AMK'шных. Взять можно на оффсайте мода (в мастерской).

Но я говорил о версии именно для ЗП, которую делал два года назад. Если это все же интересует то положил сюда: <народ.ру> (~41.5MB). Тут будет немного попроще разобраться, хотя коды давно стОит обновить до варианта из ТЧ.

 

Ну а то, что во многих модах используется amk.script - основных две причины: именно в нем реализован алгоритм таймеров и коды работы с нет-пакетами.

А вот "человека с ником

xStream" как раз найти вероятно проще, чем кажется. Совсем недавно, после долгого отсутствия на форуме, она(!) заходила в топик "Язык Lua. Общие вопросы программирования." ... Но, немного зная ее по давним временам, смею предположить, что ничего готового просить не стОит, тем более по ее же словам - давно отошла от темы "Сталкера".

 

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

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

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

STALKER_Dragon, в функции идет обращение к локальной переменной obj, но в переменной передается nil - т.е. отсутствие этой самой переменной

-- Посмотрел урок, в биндере, как по мне, идет неверный вызов каллбека. Должно быть так:

Теперь идём в файл bind_stalker.script и после строчки (#183):

get_console():execute("snd_volume_eff 0")

Добавляем новые (должны быть перед end):

elseif (s_obj) and (s_obj:section_name()=="spalnik") then

spalnik.use_inventory_item(s_obj)

 

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

Изменено пользователем ХОВАН
Ссылка на комментарий
STALKER_Dragon, в твоих кодах где-то идет попытка чтения из pstor и при этом пропущен собственно объект, из pstor которого и пытаешься читать. Смотри вызовы функции xr_logic.pstor_retrieve(...) с правильным набором аргументов.

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

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

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

 

Как известно, в ЗП есть аномальные зоны где аномалии меняют свое местоположение после выброса. На самом деле ничего они не меняют, просто все заспавненные аномалии в зоне разбиваются по группам (layers), которые настраиваются в конфиге anomal_zone и случайным образом включаются и выключаются наборами после каждого выброса. Итут мы мыслим дальше - а что если нам сделать одну большую аномальную зону по всей локации? Т.е. метод такой - спавним в аллспавн (расставляем в СДК) кучу аномалий по всей локе, разбиваем их на группы, только не на 2-3 уровня как в аномальной зоне, а допустим на 6-8, а то и больше прописываем для них отдельную anomal_zone с настройками. Все, после каждого выброса будут включаться свои уровни (наборы) аномалий и поверь, если их достаточно много, то запомнить сразу расположение будет трудно, создается впечатление рандомного спавна.

 

Плюсы этого метода: быстрота реализации, полный контроль над местоположением аномалий, ведь как мы знаем, лучшая имправизация - это хорошая домашняя заготовка :). Полностью рандомный спавн предполагает много сюрпризов и глюков, а так можно расположить аномалии во всех местах, исключая появление их там где не нужно. Особенно в СДК, можно хорошо это сделать, не спавня аномалии на граф-поинтах, что практически исключает случайное попадание в них НПС.

 

Минусы: есть один жирный минус, с которым я до сих пор не разобрался. Если уйти с локации через левел-ченджер и тут-же вернуться, то все неактивные группы аномалий стоновятся...видны! Т.е. они отыгрывают партиклы, звук но не хитуют ГГ и не видны на детекторе. После выброса все опять нормально. Если кто знает, почему так происходит и как с этим бороться - буду признателен.

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

Clayman

Не стОит вероятно спорить о преимуществах иль недостатках того иль иного варианта. Этим можно заниматься до бесконечности.

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

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

Основной плюс скриптового спавна - это полная свобода действий для всех задумок модмейкера, т.е. практически можно сделать интерактивность и подстраиваться под конкретного игрока и его прохождение ... Важен собственно хороший алгоритм и его воплощение в скриптах, что если сделать единожды, не требует особых ресурсов и позволит разнообразить игру гораздо более гибко, чем любая домашняя заготовка.

 

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

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

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

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

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

 

Ну а так как объект инициализирует свои свойства несколько раньше чем будет получено в скриптах управления над ним - вот и успевают начать проигрывать партиклы и пр.
- а есть мысли, как это можно поправить? Изменено пользователем Clayman
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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