orionixe 0 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 прифигел, увидев упоминание про 4356-ю строку в _g.script ... Эт сколько же туда нужно понапихать, чтобы так разрослось с исходных 870-ти? Ты весь мод туда запихнул что ли? ;-) Да это не я напихал. Я уже просто пытаюсь проверить этот паковщик путем упаковки 100% рабочего мода. Это СГМ 2.2. Паковал его просто в gamedat`у. И ложил эти файлы папку patches - игра запускалась, входил в меню, но запуск игры не происходил, вылетало с вышеуказанным логом. Затем брал эти же запакованные файлы, распаковывал их и уже просто кидал в папку gamedata и все нормально, игра шла без проблем. Это говорит о том, что запаковал я все правильно, все пути прописаны верно, так как при распаковке размер распакованной папки gamedata был идентичен с исходной, которую я паковал. Ладно, спасибо за подсказки и помощь. Ссылка на комментарий
Clayman 104 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 Кто знает точное значение параметров in_restr и out_restr в логике персонажей? Принудительное указание зон куда низзя входить-выходить? Ссылка на комментарий
Artos 99 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 (изменено) orionixe, твоя ошибка в том, что сам не понимая некоторые нюансы и подходя к вопросу со своей зашоренностью, ты не даешь всей нужной инфомации (даже после обращения на это твоего внимания). Ведь не зря про лог и строку в логе о 'file' упомянул ... Хорошо хоть название мода упомянул и мне не лень в него глянуть. Твоя проблема в том, что в моде при старте игры идет попытка загрузки данных из файла "gamedata/configs/mod_parameters/save_data/save_data.sgm", а ты этот файл вероятно тоже упаковал. К сожалению, моддмейкеры мода SCM v2.2 не позаботились о безопасном коде и не стали проверять считан ли файл с диска, и сразу пытаются читать из него данные ... вот и вылет. В общем, как уже ранее было сказано, методом проб и анализа можно определить какие файлы/папки нельзя упаковывать и они обязаны быть "физически" на диске. Так же, иногда моддмейкеры пишут свои данные в папки (файлы), а игра без расширителей и соответствующих кодов, не может создавать сама отсутствующие папки, они заведомо должны уже присутствовать на диске. Итого, как минимум для мода SGM2.2 требуется наличие хотя бы пустой папки gamedata/configs/mod_parameters/save_data и из-за некорректности конкретного кода - в ней обязан лежать save_data.sgm, т.к. из виртуальной папки этот файл и не видится игрою и он, как понимаю, должен быть доступен для изменений. Добавлено через 7 мин.: Clayman, ты задал бессмысленный вопрос. Ну как может быть у параметра в логике, который для различных неписей "у каждого свой" и для различных ситуация может меняться - некое одно "точное значение". Нет такого. Изменено 27 Марта 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Clayman 104 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 Artos, не совсем понял твой ответ. В логике часто встречается этот параметр, причем как в секции remark так и walker с указанием определенных рестрикторов, вот я и спросил на что влияет этот параметр. Ссылка на комментарий
Artos 99 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 (изменено) Clayman, если задавать вопросы сам того не понимая что спрашиваешь, то конечно понять ответ сложно ... Прочти свой "бессмысленный" вопрос(!) в котором спрашиваешь о "точном значении параметра" (которого нет для всех в Зоне), а теперь переспрашиваешь о том, не что же влияет этот параметр. Это примерно, спросить каков точный вес у чего-то в Зоне, не уточняя у чего, и подразумевая "а на что вес влияет?" ... Частично на твой второй вопрос ответ есть тут: #8367 (используй самостоятельно поиск по форуму!). Ну и если названия переменных in_restrictor и out_restrictor в скриптах сопоставить с их аналогами в конфигах секций логики (несколько сокращены имена), то и получишь ответ на свой вопрос "на что же влияют" эти параметы. По-простому, значения этих параметров в активной логике прописываются в соответствующие параметры для неписей, что и определяет их поведение относительно разрешенных или запретных зон. Изменено 27 Марта 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Outlaw 85 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 (изменено) Простите за офф-топик, как сделать чтобы в ЗП переходы отображались на карте? А также у меня при попытке заспавнить "метку на карте" (простите за мой простонародный слэнг) батник отказиваеться собирать алл спавн( Изменено 27 Марта 2012 пользователем Outlaw Ссылка на комментарий
Clayman 104 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 Outlaw, привожу способ, когда-то, кем-то в этой теме описанный: Делаешь скрипт,например, lev_ch.script, в него пишешь: Код function level_changer() if not has_alife_info("info_new_level") then put_spots() db.actor:give_info_portion("info_new_level") end end function put_spots() for i=1,65534 do local obj = alife():object(i) if obj then if obj:name() == "Название 1-го левел чэнджера" then level.map_add_object_spot_ser(obj.id,"level_changer_up","Подпись 1") elseif obj:name() == "Название 2-го левел чэнджера" then level.map_add_object_spot_ser(obj.id,"level_changer_up","Подпись 2") elseif ..... end end end Название берётся из поля name level_changer'а в all.spawn; Подпись - например, "На Кордон". Далее, в bind_stalker.script после function actor_binder:update(delta) надо написать lev_ch.level_changer() и в файл info_portions.xml вставить строку <info_portion id="info_new_level"></info_portion> Ссылка на комментарий
Artos 99 Опубликовано 27 Марта 2012 Поделиться Опубликовано 27 Марта 2012 (изменено) Clayman, конечно это "кому-то", кто написал процитированное тобою нужно бы адресовать:"А головою кто будет думать?", но и тебе стОит более критично цитировать ... Далее, в bind_stalker.script после function actor_binder:update(delta) надо написать lev_ch.level_changer()Это для того, чтобы один раз в самом начале игры поставить метки дается совет ставить проверку и выдачу каждые 20ms на потяжении все игры? Ну посмтотите тот саму функцию actor_binder:update(delta)! Ведь все уже есть готовое: if self.bCheckStart then printf("SET DEFAULT INFOS") if not has_alife_info("global_dialogs") then self.object:give_info_portion("global_dialogs") end if not has_alife_info("level_changer_icons") then self.object:give_info_portion("level_changer_icons") end self.bCheckStart = false end - и инфопоршень ("level_changer_icons") именно для отображения иконок переходов и именно только один раз при первом апдейте ... Всего то нужно вставить сюда (при выдаче инфопоршня) вызов lev_ch.put_spots() или даже саму функцию. Изменено 27 Марта 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Buttmammal 3 Опубликовано 30 Марта 2012 Поделиться Опубликовано 30 Марта 2012 Всем привет, столкнулся с проблемой xml верстки — не могу сделать сброс на новую строку в ста советах. Подскажите пожалуйста, знающие люди. Ссылка на комментарий
Clayman 104 Опубликовано 30 Марта 2012 Поделиться Опубликовано 30 Марта 2012 Buttmammal, а символ \n разве не работает? Ссылка на комментарий
Buttmammal 3 Опубликовано 31 Марта 2012 Поделиться Опубликовано 31 Марта 2012 (изменено) Clayman, а символ \n разве не работает? нет, как ни странно. Изменено 31 Марта 2012 пользователем ColR_iT Ссылка на комментарий
satanian 0 Опубликовано 1 Апреля 2012 Поделиться Опубликовано 1 Апреля 2012 (изменено) Здравствуйте,не могу адаптировать мод конечное количество болтов автор Charsi ,прописываю в бинд.сталкере ,в system.ltx прописал .Но при загрузке сохранения,вылет .Вот лог . 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. trilogy\cop\gamedata\scripts\bolt_binder.script:36: attempt to index field 'actor' (a nil value) stack trace: Добавлено через 20 мин.: Да еще адаптирую с ТЧ на ЗП . Изменено 2 Апреля 2012 пользователем Artos Ссылка на комментарий
SibireaStalker 0 Опубликовано 1 Апреля 2012 Поделиться Опубликовано 1 Апреля 2012 С чем может быть связан подобный вылет сборки спауна? В ACDC новые предметы прописал, на локациях заспаунил, а спаун не собирается Выводы модмейкера: 1)Вылетает - это хорошо. Значит, работает 2) Если хочешь сделать что-то хорошо, делай сам! 3) Если падёшь духом, падёт и мод. 4) Он живой... Ссылка на комментарий
Artos 99 Опубликовано 2 Апреля 2012 Поделиться Опубликовано 2 Апреля 2012 (изменено) SibireaStalker, а с чего ты решал, что если в распаковку all.spawn'а ты засунешь свои "новые" предметы, то компилятор должет с ними собрать all.spawn? Ты позаботился, чтобы скрипт компилятора знал что это за предметы (их класс) и как их прописывать? Загляни в тему "Universal ACDC и другие perl-скрипты" и почитай что к чему ... (или ручками правь acdccop.pl и stkutils или используй универсальный, не забывая пересканировать конфиги мода) Добавлено через 8 мин.: satanian 1. Если ты считаешь, что каждый, кто мог бы тебе ответить имет коды адаптируемого тобою мода - то ошибаешься. Если захотелось получить ответ - стОит озаботиться чтобы дать всю необходимую информацию, иначе ждать ответа можно очень долго ... и не дождаться. 2. При правке/адаптации скриптов следует в первую очередь иметь навыки работы со скриптами и думать головою, и только во вторую - работать руками. Тебе лог говорит, о возникшей ошибке с ключом/полем 'actor' - вот и разбирайся по имеющимся у тебя скриптам, почему у тебя отсутствует. Добавлено через 23 мин.: Buttmammal В окне загрузки игры (ЗП) выводятся три строки: заголовок, номер "совета" и текст "совета". Каждая строка обрабатывается парсером игры и не допускает кроме текста никаких иных тэгов. Исключение только для шаблонов типа $$ACTION_USE$$. Переносы строк осуществляются только по достижению строки текста размера окна для вывода. Следует учитывать, что ДО загрузки игры никакие скрипты еще не работают и вывод в окно осуществляется тем, что заложено в движек. Изменено 2 Апреля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Buttmammal 3 Опубликовано 2 Апреля 2012 Поделиться Опубликовано 2 Апреля 2012 Artos, да, спасибо. Я уже пришел к пониманию сего наигрустнейшего факта — любые теги отображаются в теле совета между <text> и </text> и ничего тут не поделаешь. Придется избавлятся от абзацев и прямой речи... Всем участвовавшим еще раз спасибо. Ссылка на комментарий
Clayman 104 Опубликовано 3 Апреля 2012 Поделиться Опубликовано 3 Апреля 2012 Помогите прояснить ситуацию с параметром max_population в настройке смарта. Допустим есть смарт, неважно, пусть ds_a5, max_population = 1, Т.е, принимает один сквад. Я ставлю туда один сквад с target_smart = ds_a5, потом смотрю - в него прпирается еще один, симуляционный сквад, который без target_smart. Получается, что параметр max_population определяет количество только симуляционных сквадов, которые может принять смарт при условии sim_avail = true? Я прав? Просто тогда при планировании работ для смарта это нужно учитывать и добавлять работы. Ссылка на комментарий
Artos 99 Опубликовано 3 Апреля 2012 Поделиться Опубликовано 3 Апреля 2012 (изменено) Clayman Параметр max_population в конфиге смарта не задает жесткое ограничение на максимум. При определенных ситуациях в: function se_smart_terrain:target_precondition(squad, need_to_dec_population) - происходит искусственное увеличение на единичку кол-ва допустимых сквадов. Изменено 3 Апреля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Clayman 104 Опубликовано 3 Апреля 2012 Поделиться Опубликовано 3 Апреля 2012 Хм...хотелось бы узнать при каких условиях.... В любом случае, я так понимаю чтобы избежать "нпс в позе гопников" нужно делать работ с запасом... Ссылка на комментарий
Artos 99 Опубликовано 3 Апреля 2012 Поделиться Опубликовано 3 Апреля 2012 (изменено) Clayman, не ленись, за тебя изучать скрипты и растолковывать все подробно врядли кто-то будет. Читая скрипты ты и навыков и знаний собственных а не "даденых" набираешься. Условия могут быть самыми разными. Например, тебе захотелось принудительно приписать сквад какому-то гулагу, а там уже стоИт свой максимум - вот и дает флажек возможность добавить кол-во не вызывая особых коллизий/вылетов. Ну а работы, тут ты прав - их всегда должно быть не меньше чем имеющихся в Зоне неписей, иначе это или тупо стоящие истуканы или бесцельно слоняющиеся ... Геймплея это не добавляет, а наоборот. Изменено 3 Апреля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Clayman 104 Опубликовано 4 Апреля 2012 Поделиться Опубликовано 4 Апреля 2012 (изменено) Artos, да я бы и рад изучать скрипты и много читаю их, но к сожалению моих скромных знаний в луа-скриптинге и в механизме работы скриптов конкретно в сталкере, увы, не хватает, поэтому и спрашиваю тут. Спасибо за разъяснения. Просто хотелось понять этот механизм, потому как - их всегда должно быть не меньше чем имеющихся в Зоне неписей тоже не совсем корректно. Что толку, если я понаделаю 30 симуляционных смартов с кучей работ, а к примеру сквады идут только в один, игнорируя max_population... Некорректность, а точнее ошибочность - как раз не в избыточности допустимых работ, а их возможная недостаточность! Не путай, запас/перестраховку с бессмысленным избытком. --/Artos Изменено 4 Апреля 2012 пользователем Artos Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти