Mr.Sталин Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 потомутчо протоманагере нет возможности мутить с файлами такого типатам в них особо и нечего мутить. Ссылка на комментарий
Vis Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 ну так подскажи как мне открыть файл .pro из папки scenery и поправить его)) Ссылка на комментарий
Mr.Sталин Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 здесь так и есть, разные машины и у каждой свой багажник. это разные объекты. при прорисовке каждой машины идет и создание ее же багажника. все сопоставляетсяОригинальные номера кузова и багажника прописаны в движке поэтому ты видишь топливо при наведении на машину. ссылку я специально дал но ты походу ее не вкурил. добавлено позжену так подскажи как мне открыть файл .pro из папки scenery и поправить его))да нету там ничего такого)добавлено позжеВ итоге потерянные фишки от движка теперь нужно доделывать самим в скрипте. Ссылка на комментарий
Vis Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 (изменено) блджад. то есть ты хочешь сказать что в движке топором вырублено что только по скенери с айди 1009 (20003F1) будет работать этот бинокль?... оххх... еп....и как же кастомизировать? заниматься подменой юзабельности одного объекта на другой? как-то этот бинокль можно поймать через перкайди там или скил айди? чукча не дурак, чукча учится. истина где-то здесь procedure description_p_proc begin script_overrides; end procedure look_at_p_proc begin script_overrides; end Изменено 27 июля, 2022 пользователем Vis Ссылка на комментарий
Mr.Sталин Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 ага самому повторить, то что сделано в движке.еще и заряжать/заправлять авто надо при использовании итемов, если это не сделано. вопрос оно тебе надо?) Ссылка на комментарий
Vis Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 вобще-то заряжается все нормально и итемы юзаются, я пол игры пробегал пока не начал ковырять мегамод из-за того что заметил что падла вместимость багажника не та какая была)))) ты же сам видел, там косяк ток при бинокле, все остальное отрабатывается. помоги лучше вот с этим. никак не доеду.set_self(), как мне писать? мне надо узнать указатель объекта с пидом 33555441. получается надо чтобы этот объект изначально был создан (ну как бы не проблема его видимость в ноль сразу выставить чтобы не мешал если чо). что-то типа set_self(ГЕТ_УКАЗАТЕЛЬ_БАЙПИДОБЪЕКТ)можно это как-то сделать?)) апд.фокус не удался. недостаточно просто это сообщение тащить... может все таки как-то можно вытащить это значение?...еще мне странно что просле scripts_overrides процедура после моей строчки все равно выполняет свое назначение. вроде ж не должна. procedure description_p_proc begin script_overrides; display_msg(message_str_game(13,549)); end procedure look_at_p_proc begin script_overrides; end апдапдапд. и все таки поможите мне пжлст сменить указатель set_self() на указанный пид если это возможно)) Ссылка на комментарий
Fortune Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 отредактировать скенери нельзя?Можно, и не только редактировать pro-файл, а добавлять новые и многое другое)) На старом сайте TeamX была одна очень удобная утилита для этого, название щас не вспомню (уже почти года два не ковырял фолыч, как вспомню, так сразу...). А для чего тебе понадобилось редактировать scenery? Ссылка на комментарий
Vis Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 А для чего тебе понадобилось редактировать scenery? да уже незачем, уже итак понятно что не там ошибка вкралась) Ссылка на комментарий
Pyran Опубликовано 27 июля, 2022 Поделиться Опубликовано 27 июля, 2022 Сценери или scenery, в общем декор и окружение. В новый обьект добавить в список, а смотреть например bis-om. Frame animator-om иframeviewer-om. -!!- Технический перерыв. Не помогаю. Починяю компухтер! Fallout 2: Путеводитель по модам | FAQ | Перевод модов | Путеводитель по RP Nevada Band: Путеводитель по играм серии | FAQ Fallout Tactics: Путеводитель по модам | FAQ База Данных: YD\YD\MF Помогая другим, не забывай о себе =) Ссылка на комментарий
Mr.Sталин Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 Я не понимать что ты хочешь?Вместительность багажника нужно каждый раз при заходе на карту обновлять (устанавливать заново). Ссылка на комментарий
Vis Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 (изменено) Я не понимать что ты хочешь?Вместительность багажника нужно каждый раз при заходе на карту обновлять (устанавливать заново).это я уже сделал, все работает. причем как обычно надо было убить столько дней чтобы найти простое решение. procedure Update_Trunk_Carry_Wieght begin metarule(52, 250); if (global_var(455) == 1) then begin metarule(52, 275); end if (global_var(456) == 1) then begin metarule(52, 500); end ..... end procedure use_p_proc begin call Update_Trunk_Carry_Wieght(); end в топку а хочу я вот что. функция procedure description_p_proc показывает описание объекта, скрипт которого на него сейчас работает, так? так. нам нужно переопределить в этой функции объект. а именно поменять указатель с текущего объекта (скенери машины цвета говна/черная да и ваще насрать, так как работа идет по self_obj) на нужный (скенери серой машины).тогда при вызове движок будет видеть ПИД серой машины, и функция по идее должна отработать как надо. при этом надо понимать что движок при определении ПИДа будет обращаться скорее всего к конкретному объекту, вызванному по аргументу функции - поэтому и надо так радикально менять self_obj скрипта. причем я так понял по описанию set_self работает единоразового до первого вызова self_obj и дальше self_obj возращается на исходную - нам так и надо чтобы после выхода из процедуры остальной код не поломался, а тут даже ничо дололнительно писать не придется уже на постобработке. это в теориии надо это как раз для этого бинокля который показывает заряд машины можно пойти еще вторым путем, но я не знаю реализуемо ли это.в этой же функции играть не с obj_self а с PID_DRIVABLE_CAR и сделать это через set_proto_data(). но я не увидел в дефайнах как это можно сделать, там нет такого офсета... апдапд.через set_self() не работает.как вытащить описание объекта?в дефайнах нашел так, но не работает либо я не понимаю как его вывести на дисплей? display_msg(get_proto_data(33555441, 2)); -- ничо не показывает Изменено 28 июля, 2022 пользователем Vis Ссылка на комментарий
Vis Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 (изменено) короче я задолбался, соглашусь что надо писать по уму и чтобы была одна машина, один багажник. полностью попробую переписать эту дичь с покраской машины.нашел такие функции. A - фид искомого скенериB - фид текущего скенери(по идее он должен быть постоянен так как машину хочу оставлять одну оригинальную и уже на нее натягивать фиды других машин) и разрулить все через set_object_data(self_obj,0x20,get_proto_data(ПИД_ИСКОМОЙ,0x20))или вот такmetarule3(107,указатель объекта текущего скенери,A,0) из define_extra.h// common object data offsets#define OBJ_DATA_ID (0x00)#define OBJ_DATA_TILENUM (0x04)#define OBJ_DATA_CUR_FRM (0x18) // current frame number#define OBJ_DATA_ROTATION (0x1C)#define OBJ_DATA_FID (0x20)#define OBJ_DATA_ELEVATION (0x28)#define OBJ_DATA_PID (0x64)#define OBJ_DATA_CID (0x68) // combat ID, used for savegame#define OBJ_DATA_SID (0x78) // script ID#define OBJ_DATA_SCRIPT_INDEX (0x80) // script index number in scripts.lst// items из define_lite.h #define METARULE3_ART_SET_BASE_FID_NUM (107)#define art_change_fid_num(WHO, NUM) metarule3(METARULE3_ART_SET_BASE_FID_NUM,WHO,NUM,0) подскажи мыслю хотя бы в правильном направлении? Изменено 28 июля, 2022 пользователем Vis Ссылка на комментарий
Foxx Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 подскажи мыслю хотя бы в правильном направлении? metarule3(107,указатель на объект,A,0) - примерно так. Смена внешнего вида у байка в Соноре в декомпилированом виде. procedure art_change_self begin if (global_var(455) > 0) then begin if (((global_var(454) bwand 8) != 0) != 0) then begin metarule3(107, self_obj, 1787, 0); end else begin metarule3(107, self_obj, 1784, 0); end end else begin if (((global_var(454) bwand 32) != 0) != 0) then begin if (((global_var(454) bwand 8) != 0) != 0) then begin metarule3(107, self_obj, 1786, 0); end else begin metarule3(107, self_obj, 1783, 0); end end else begin if (((global_var(454) bwand 8) != 0) != 0) then begin metarule3(107, self_obj, 1785, 0); end else begin metarule3(107, self_obj, 1782, 0); end end end end Номер изображения берется по номеру строки в ART/SCENERY.LST - 1 3 Ссылка на комментарий
Vis Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 блин как все просто, и не надо писать эти километровые простыни)) спасибо огромное)))))))))))))) Ссылка на комментарий
Mr.Sталин Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 OBJ_DATA_PID Можешь просто попробовать сменить у текущих пид обекта.С xxx на 455И движок будет думать, что это серый багажник/кузов.добавлено позжеЧерез смену FID более правильнее. 2 Ссылка на комментарий
Vis Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 вобщем я решил полностью переписать всю эту сраную механику, там в коде в скриптах и Дена тоже засрано.уберу всё в один скрипт, а именно в скрипт кузова, чтобы только в нем все обрабатывалось, из скрипта багажника тоже все вычищу. Ден почищу, основываясь на оригинал и стараясь максимально к нему приблизиться. думаю так будет правильно и гораздо удобнее совмещать с другими модами меняя один единсвтенный скрипт а не туеву хучу довесков еще и скрипты карт. Ссылка на комментарий
Pyran Опубликовано 28 июля, 2022 Поделиться Опубликовано 28 июля, 2022 Про машину, там еще скрипт отвалившегося колеса бы исправить, чтоб его мог поставить не только Вик, но и игрок с достаточным навыком.А еще лучше, если за 5к, какого механника в пустоши пригнать скриптом)А то, если Вика нет, то катания прекращаются. Ден - о чем речь? 1 -!!- Технический перерыв. Не помогаю. Починяю компухтер! Fallout 2: Путеводитель по модам | FAQ | Перевод модов | Путеводитель по RP Nevada Band: Путеводитель по играм серии | FAQ Fallout Tactics: Путеводитель по модам | FAQ База Данных: YD\YD\MF Помогая другим, не забывай о себе =) Ссылка на комментарий
Vis Опубликовано 29 июля, 2022 Поделиться Опубликовано 29 июля, 2022 вопрос по механике. может кто подскажет что за дичь.суть вопроса: из сборки мода удаляю все скрипты, отвечаютщие за машину (zsdrvcar, zictrnk и скрипт карты denbus1). по идее должны грузится старые скрипты из оригинала. и происходит следующее: на карте Дыры(Дена) отображается старая оригинальная машина(так и должно быть), но как только мы сидя в машине уезжаем куда-то и останавливаемся на любой другой карте, то ее тупо нет, есть только багажник.причем технически машины действительно не существует - нет самого такого объекта, соответственно процедуры на вход в карту/обновление и тд из скрипта на кузов машины не работают. объекта нет по сейведитору, то есть это не игра с видимостью объекта. дальше играясь комбинациями выявил следующее:1. оставляем скрипты мода на машину(zsdrvcar, zictrnk) но берем оригинальный скрипт карты - ошибка не исчезает2. удаляем все 3 скрипта - ошибка не исчезает3. оставляем только один скрипт на машину из мода (zsdrvcar/zictrnk) - ошибка не исчезает. смущает очень сильно пункт 2. может кто подскажет что такого изменилось за эти годы в механике движка что оригнальный скрипт карты по сути несовместим вобще со сборкой даже если вырезать модификации тачки, так как ошибка устраняется только добавлением скрипта сборки на эту карту(denbus1). по коду там абсолютно все идиентично с процедурами из модовских (zsdrvcar/zictrnk). но как бы.... не хочу допустим юзать этот мод на машину и вырезаю все скрипты - ошибка не устраяняется. то есть причина явно не в этих скриптах. куда копать???? проблема не исчеает ни при загрузке из сохранения, ни при начале новой игры Ссылка на комментарий
Foxx Опубликовано 29 июля, 2022 Поделиться Опубликовано 29 июля, 2022 Нужно смотреть скрипты карт где машина паркуется. Посмотрите например в пустынях RNDDSRT.INT, может там чего ещё правили. 1 Ссылка на комментарий
Vis Опубликовано 30 июля, 2022 Поделиться Опубликовано 30 июля, 2022 магия...почти добил Ссылка на комментарий
Vis Опубликовано 3 августа, 2022 Поделиться Опубликовано 3 августа, 2022 вопрос по работе с sfal script editorкак переписать параметры скенери?- имя- флаг юзабельности- флаг юз_он_объект я понимаю что скорее всего через set_proto_data или set_object_data, но в параметрах уже совсем запутался. Ссылка на комментарий
Mr.Sталин Опубликовано 3 августа, 2022 Поделиться Опубликовано 3 августа, 2022 В флаги поставь в его про файле.имя сменить ??? Всмысле. Ссылка на комментарий
Vis Опубликовано 3 августа, 2022 Поделиться Опубликовано 3 августа, 2022 я уже писал, не дает редактировать. где и как чего настроить? в моем скенери все должно быть аналогично. а у меня name это "дерево", флаг юзабельности снят ну и так далее добавлено позжепрост можно обойтись вобще без заморочек с новым скенери, он абсолютно идиентичен тому что уже есть в библиотеке (кроме флага юзабельности). можно же играть флагами. еще вопрос можно ли играя теми же офсетами присвоить скенери статус контейнера? я пытался натянуть фид скенери на пид контейнера и чет не вышло, хотя такой путь правильнеедобавлено позжетут еще беда такая что декомпил показывает не совсем то что в оригинале явно. с тем же контейнером как по коду так и на практике создатся пид, совсем левый и как бы ненужный. и всё.а по факту должен быть контейнер, а на нем фид скенери. но в коде я умодохался это искать, все скрипты уже перебрал. нет этого. значит декомпил немножко врет Ссылка на комментарий
Foxx Опубликовано 3 августа, 2022 Поделиться Опубликовано 3 августа, 2022 я уже писал, не дает редактировать. где и как чего настроить? Из справки маппера, сам не пробовал. Возможно информация устарела и проще можно сделать, Сталин подскажет :-) Как сделать PRO-файлы редактируемыми?На диске, куда вы установили Fallout2 (не могу сказать точнее, это может быть диск, куда вы установили редактор, или тот диск, где находится master.dat, прописанный в mapper2.cfg – я не эксперементировал э этим, у меня все заработало сразу) создайте каталог «.../fallout2/dev/proto», и в уже в нем создайте подпапки с именами «critters», «items», «scenery", «tiles», «walls», «misc». После того, как вы сделаете это, появится возможность редактирования PRO-файлов.Важное замечание: каждый PRO-файл обладает собственным PID [идентификатор]. Если вы скопировали PRO-файл [«создали новый» путем копирования], или перезаписали один другим, то необходимо убедиться в наличии правильного PID внутри файла – этот PID идентичен соответствующему номеру строки из файла «.../fallout2/data/critters/critter.lst» переведенному в шестнадцатеричный формат, таким образом вы исправите файловую ссылку [аналогично поступайте и с другими PRO и LST файлами, например «.../fallout2/data/ items/items.lst» для PRO-файлов предметов].Вот образец того, как выглядит структура папок у меня:E:\ \---fallout2\---dev\---proto+---critters+---items+---scenery+---tiles+---walls\---misc 1 Ссылка на комментарий
Vis Опубликовано 3 августа, 2022 Поделиться Опубликовано 3 августа, 2022 а когда вот такие расклады, я это так понимаю просто-напросто вырезанный контент? нет нормального фида, а так объект по всем параметрам подходит для моих целей. но фид на него почему-то не ложится. просто если создать объект то на его месте будет вот эта табличка, меняю фид на нужный и вобще в итоге пустота на этом тайтле, при этом в сейвэдиторе объект существует на этом тайтле. видимость в тру. но глазами его нет. добавлено позжекароче нашел таки выход) осталось дело за малым, надо лишь у кабины проставить флаг юзабельности 1 Ссылка на комментарий
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти