» TeamX (Архив Форума)«


Форум TeamX » Исследования » Как движок Fallout2 обнаруживает файлы с данными

Переход по темам
<< Пред. След. >>
Страницы этой темы [ 1 2 3 ] Все собщения

 
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

Это чего ты в proto.msg то прописал? Уж не калибр ли патрона? Не знаю, где он в мапере должен отображаться, но, по-моему, сперва его следует прописать в прошнике (к оружию или патронам), а уж затем можно будет увидеть описание калибра в игре после добавления нового предмета.
Смотри личку.

-----
Into The New Year - With A New Vision!
Документация по скриптам, туториал по скриптам, вопросы по скриптам, FAQ по моддингу, "Утилиты", fallmods-tutor.

Отправлено: 12:37 - 7 Авг., 2004
Gatling
Пользователь

Откуда: БОМЖ
Регистрация: Февр. 2004

Всего: 115 сообщений

Как раз калибр патрона. Я помнется делал новый вид
повреждения. Но для этого сначала прписал соответствующую строку в пртот.мсдж. А потом в FIME
или как то так сделал пушку с этим повреждением..

-----
"Гизмо...Гизмо-кака!" Gremlin.

Отправлено: 13:05 - 7 Авг., 2004
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Угх.. люди, почитал ту вас, поэксперементировал - чуть не свихнулся.. Во первых - это действительно инфа первой надобности, большой thanks вам за это дело. Если эта тема не приклеена еще вверх, думаю стоило бы ее поднять. Теперь о грустном. Несмотря на подробнейшие переводы, комментарии и резюме от Preceptron, лично у меня осталось много непонятностей и вопросов. Люди, кто что знает - говорите, давайте основательно обсувдим эту тему.

---------- Мои эксперименты: ----------

1. При наличии папки "patch000.dat" с материалом мода, игра перестанет сохраняться как только этот материал будет задействован. После активации содержимого "patch000.dat", даже после загрузки на "чистую" саву, игра не сохраняется. Просто переименовал "data" в "patch00.dat" - игра не сохраняется, хотя должна бы.. но, *.cfg я не менял. Игра показывает, но не грузит савы, лежащие в "patch00.dat". Короче говоря, в любом случае при сществовании папки "patch000.dat" будут проблемы с сохранением и временными файлами, точнее говоря - с существующей папкой "patch???.dat" в директории фаллоута у вас вообще игра сохраняться не будет.

2. Создал пустую папку "patch000.dat" и папку с модом "patch002.dat", мода фаллоут так и не увидел. Аналогичный эксперимент для полноценных *.dat файлов - тоже фиаско, движком воспринимается только содержимое "path000.dat". Удалил файлик "patch000.dat", остался только "patch002.dat" - фаллоут его увидел. Третья часть - создал пустой "patch000.dat" и с измененной картой "arbridge.map" файл "patch002.dat", вырезал непосредственно из ресурсов игры "arbridge.map" - кроме как из "patch002.dat" ее брать неоткуда, результат - фаллоут этой карты так и не нашел. Мораль: да, действительно, движок смотрит сначало на "patch000.dat" потом на "patch002.dat" и так далее, но нам от этого свойства ни жарко и холодно так как нашедши первый *.dat файл, поиски последующих прекращаются.

3. Создал папку с материалом "patch000.dat", у меня win2k запретил изменение (свойства\доступ\..) - фаллоут даже так все равно пытается начать сохранение именно там, но сохранение в любом влучае не удается, а вот часть файлов он гадина все-таки пишет в заветную "patch00.dat" - оно так и должно быть? Это кто нибудь проверял? В принципе, движок ведь не изменяет существующие файлы, он просто новые пишет.. Говорил "только чтение", ко всем файлам и папкам - все равно не помогает.

Еще раз, если кто-то может прокомментировать что-либо - прошу вас.

---------- Предложение: ----------

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

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

P.S. (3) - закон сохранения энергии :) в информационном варианте..

Дополнение 5 часов спустя:

Создаем папку <patch>, в которую толкаем свой мод без всяких ограничений доступа. Пишем в fallout2.cfg "critter_patch=.\data" и "master_patch=.\data". Создаем BAT'ник следующего содержания:
---------- *.BAT file listing: ----------
copy .\data\worldmap.dat .\worldmap.dat
copy .\data\savegame .\savegame
deltree .\data
copy .\patch .\data
copy .\worldmap.dat .\data\worldmap.dat
copy .\savegame .\data\savegame
fallout2.exe
-----------------------------------------
Воаля: свободный доступ к папке <patch>, содержащей материал мода, загрузка в процессе игры содержимоого этой папки, конкретно в папке <patch> не появляются никакие новые файлы и не исчезают старые. Одна проблема - с BAT'описанием я не знаком, подскажите люди как наилучшим образом его составить?

Дополнение еще 2 часа спустя:

Крах моего замысла, написал таки сам BAT'ник, запустил - эта любимая мною гадина (fallout2.exe) удаляет содержимое "data" непосредственно по загрузке, а не по выходу. Ну, теперь одна надежда - ваши светлые головы уважаемые форумцы!

А теперь еще одно дополнение:

Я вам не рассказывал, что я дебил? Теперь знайте - ну что мешает мне в том же BAT'нике задавать аттрибуты "read only"? Вот как выглядит спасительный *.bat файл:
-------------------
xcopy c:\fallout2\data\savegame c:\fallout2\savegame /i /e
copy c:\fallout2\data\worldmap.dat c:\fallout2\worldmap.dat /y
copy c:\fallout2\data\alan.gcd c:\fallout2\alan.gcd /y

deltree /y c:\fallout2\data

xcopy c:\fallout2\patch c:\fallout2\data /i /e
attrib +r c:\fallout2\data\*.* /s

xcopy c:\fallout2\savegame c:\fallout2\data\savegame /i /e
copy c:\fallout2\worldmap.dat c:\fallout2\data\worldmap.dat /y
copy c:\fallout2\alan.gcd c:\fallout2\data\alan.gcd /y

deltree /y c:\fallout2\savegame
del c:\fallout2\alan.gcd
del c:\fallout2\worldmap.dat

c:\fallout2\fallout2.exe
-------------------

(Отредактировал(а) Alan Killenger - 1:25 - 19 Авг., 2004)

-----
hit me, nail me, make me god

Отправлено: 15:32 - 18 Авг., 2004
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

>После активации содержимого "patch000.dat"
Это как? Пожалуйста, объясни подробнее.
>с существующей папкой "patch???.dat" в директории фаллоута у вас вообще игра сохраняться не будет.
А у меня сохранилась. Ты, говоришь, переименовал data? Red! уже ответил на твой вопрос: ранее было сказано, что если игра находит *.SAV файлы в любой другой директории, кроме master_patches\MAPS, она сохраняться не будет. В твоем случае проблема была в том, что master_patches и patch000.dat совпадали. Т.е. игра писала временные *.SAV файлы в master_patches, затем находила их в patch000.dat и, естественно, отказывалась сохраняться. А я создал пустую папку patch000.dat, и в ней даже папку SAVEGAME, игра отнеслась к этому нормально, и в патч ничего не сохраняла (кроме worldmap.dat, но это несущественно). А стоило мне только создать папку patch000.dat\MAPS, и она  перестала сохраняться. Все из-за временных файлов.
>нашедши первый *.dat файл, поиски последующих прекращаются.
Да, у меня то же самое.
>часть файлов он гадина все-таки пишет в заветную "patch00.dat" - оно так и должно быть?
Да, он обходит и "только чтение", и "запрет на запись", и "запрет на чтение". Но я не знаток подобных запретов в ОСях, так что не могу сказать, как от этого избавиться.
>В принципе, движок ведь не изменяет существующие файлы, он просто новые пишет
Ну это смотря какие файлы. master_patches\proto\critters\*.pro и master_patches\proto\items\*.pro он удаляет. А еще пишет свои прошники (т.е. может затирать существующие).
>сначало перевод, потом дополнение, потом еще дополнение - у меня голова идет кругом
Red обещал как-нибудь написать "окончательный, со всеми дополнениями" порядок установки Фола и маппера для моддинга.
>...следующие требования...
>  (1) свободный доступ к папке, содержащей материал мода
>  (2) загрузка в процессе игры содержимоого именно этой папки
>  (3) в папке не появляются никакие новые файлы и не исчезают старые

1 - да пожалуйста, не ставь никаких запретов!
2 - если распакуешь патч (т.е. его не будет), просто укажи на папку мода master_patches и critter_patches
3 - а тебе это надо?
>copy .\patch .\data
Ага, типа копируем из неприкосновенной папки мода в _patches. Вариант, конечно, но тебе еще нужно защитить свои items и critters.
>эта любимая мною гадина (fallout2.exe) удаляет содержимое "data" непосредственно по загрузке, а не по выходу
А то! А что конкретно ты сохранить-то хочешь?

А где ты команды для БАТника нашел? Мне ликбез не помешает. Только не говори "в справке Windows". :+|
Насчет копирования worldmap.dat - Fallout всегда новый создает, причем, по-моему, всегда один и тот же, так что копировать его смысла нет.
А вообще-то хорошее предложение, я бы сам долго думал, прежде чем до такого догадаться. :)

Что касается всего того, что сказал Red: он просто сделал некоторые уточнения, не сказав, в общем-то, ничего нового. И единственным советом остается по прежнему: "ставьте на свои .pro атрибут только чтение"! Заигрывания с папкой patch000.dat более утомительны, и могут быть источником глюков.
Правда, у "только чтения" есть свои недостатки - если вы поставили "только чтение" на временные файлы, которые сохраняет игра, и игра их "апгрейдит", то, если вы перейдете на другую карту до того, как сохранитесь... Последствия "апгрейда" потрутся.
А теперь список прошников, кот. игра сохраняет как "временные файлы" (в скобках - номер в critters.lst) (во вторых скобках - party_member_pid из party.txt) (в следующих скобках - у - может ли повышать уровень):
Криттеры:
1) Вик (62) (13) (у)
2) Робомозг (79) (12) (у)
3) Джон Кэссиди (89) (3)  (у) - в party.txt почему-то назван МакРей
4) Сулик (97) (4)  (у)
5) Ленни (107) (5)  (у)
6) Кибердог (136) (6)  (у)
7) Горис (152) (8)  (у)
8) Мирон (160) (1)  (у)
9) Маркус (161) (2)  (у)
10) Доктор Джонс (162) (7)
11) Дэвин (163) (9)
12) Мария (164) (10)
13) Лэдди (165) (11) - это собака, никто о такой не слышал?
14) Бесс (191) (14)
15) Цыпленок (195) (15) - Коготь Смерти
16) Карл (196) (16)
17) Джонни (197) (17) - ребенок
18) Симпатяга Ллойд (265) (18)
19) Песик (342) (19) (у) - в party.txt называется Догмитом.
20) Робомозг - Шимпанзе (379) (22)
21) Робомозг - Ненормальный (380) (21)
22) Робомозг - Человек (381) (20)
23) Пария (384) (23)
24) К-9 (471) (24) (у)
Итемы:
25) Машина (455) (25)
Все эти объекты указаны в файле party.txt. Другими словами, движок сохраняет все прохи объектов из party.txt. Сохраняет, видимо потому, что они могут повышать уровень и изменять характеристики.
Поэтому в окончательной версии вашего мода по пути _patches (в папке data) не должно быть прох партийцев. Помните об этом также при тестировании мода.

По поводу БАТников: спасибо Алану за идею!
В связи с этим могу предложить следующую последовательность установки маппера и Фола (в целях моддинга):

1. Распаковать master.dat в папку (назовем ее <src>)
2. Распаковать critter.dat в <src>
3. Распаковать  patch000.dat в <src>
4. Создать папку для мода (НЕ используйте ту, в которую распаковали DAT), в ней вы будете хранить созданные вами файлы. Скопируйте в нее Mapper2.exe, Mapper2.cfg (назовем эту папку <mod>).
5. Создать папку для игры, скопировать в нее: Fallout2.exe, Fallout2.cfg (назовем ее <game>). В ней вы будете запускать игру для тестирования мода.
6. Создать <drive>:\fallout2\dev\proto, в ней создать папки critters, items, mist, scenery, tiles, walls, где <drive> - диск, с которого вы запускаете маппер (это для обеспечения редактирования прох в маппере).
7. В fallout2.cfg изменить critter_dat, master_dat на <src>, а critter_patches и master_patches на <game>; Это обеспечит быструю загрузку при использовании модифицированных данных (плюс игра будет работать правильно). Пропишите music_path1=<mod>\sound\music (где хранится созданная вами музыка), а music_path2 туда, где лежит музыка Фола.
8. В mapper2.cfg изменить critter_dat, master_dat на <src>, а critter_patches и master_patches на <mod>;. Таким образом, вы дадите моду доступ к исходным файлам, однако все, что мы «отредактировали», маппер будет сохранять в директорию <mod>. Если вы создали свои FRM, вы также должны положить их в директорию <mod> (таким образом, мы легко определим, какие файлы относятся к моду).
9. Создать в директории <game> bat-файл наподобие того, что сделал Алан, и запускать игру только с его помощью. При этом он должен копировать содержимое папки <mod> (естественно, только файлы мода) в папку <game>. При этом имеется в виду, что файлы мода лежат в соответсвующих папках (art, data, maps, premade, proto, scripts, sound, text).

При этом в bat-файле совершенно необязательно удалять что-то из папки <game> (она же ранее data\), достаточно просто скопировать туда файлы из <mod. Например так:

attrib -r <game>\*.* /s
xcopy <mod> <game> /s /y
attrib +r <game>\proto\critters\*.pro
attrib +r <game>\proto\items\*.pro
<game>\fallout2.exe

где вместо <game> и <mod> поставьте полные пути к этим папкам (только без завершающего слеша (\), т.е., например, c:\game вместо <game> и c:\mod вместо <mod>, иначе xcopy работать откажется).

(Отредактировал(а) Perceptron - 1:03 - 21 Авг., 2004)

-----
Into The New Year - With A New Vision!
Документация по скриптам, туториал по скриптам, вопросы по скриптам, FAQ по моддингу, "Утилиты", fallmods-tutor.

Отправлено: 0:59 - 21 Авг., 2004
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Alan Killenger: "После активации содержимого "patch000.dat".."

Perceptron: "Это как? Пожалуйста, объясни подробнее."

- Такое дело: как проверить в самой игре измененный скрипт или любые изменения локации, не выгружаясь из Fallout'а и не проходя его заново? Логично, что в сохраненках лежат не сразу все локации, а лишь по мере их затрагивания всоим прохождением. Как пример - я добавлял на карту "arbridge.map" своего криттера и писал к нему скрипт, но чтобы проверить выполнение пользовался сохраненкой с карты "arvillage.map" такой, что я якобы еще не появлялся на мосту. Результат - никаких проблем с тестированием в самой игре, любое обновление проверяется так: F7 и переход на измененную локацию. Естественно, что такая халява не покатит в случае добавления нового города или, наверное, изменений GVAR.



Alan Killenger: "..с существующей папкой "patch???.dat" в директории фаллоута у вас вообще игра сохраняться не будет."

Perceptron: "А у меня сохранилась. Ты, говоришь, переименовал data? Red! уже ответил на твой вопрос: ранее было сказано, что если игра находит *.SAV файлы в любой другой директории, кроме master_patches\MAPS, она сохраняться не будет. В твоем случае проблема была в том, что master_patches и patch000.dat совпадали. Т.е. игра писала временные *.SAV файлы в master_patches, затем находила их в patch000.dat и, естественно, отказывалась сохраняться. А я создал пустую папку patch000.dat, и в ней даже папку SAVEGAME, игра отнеслась к этому нормально, и в патч ничего не сохраняла (кроме worldmap.dat, но это несущественно). А стоило мне только создать папку patch000.dat\MAPS, и она  перестала сохраняться. Все из-за временных файлов."

- Во первых, в том абзаце я приводил сразу несколько примеров, а не один - это чтобы не было недопонимания. Во вторых, я же писал, что не изменял "fallout2.cfg" - быть может в этом дело. "Master_patches" у меня всегда указывали на ".\data", в "patch000.dat" лежала папка "maps", а в ней модифицированная карта "arbridge.map". До тех пор, пока я не заходил на "arbridge.map", игра сохранялась и грузилась. После захода на мост, игра стала создавать свои временные файлы именно в "patch000.dat" и не сохраняться. Угх.. а вообще, какая разница? Если у кого-то проблемы - понятно, но лично мне это уже не горит.



Perceptron: "А где ты команды для БАТника нашел? Мне ликбез не помешает. Только не говори "в справке Windows". :+|"

- Команды BAT'ника, именно в ней ;! Рад за одобрение моей идеи. Со временем, я кстати тоже понял, что проще проставлять аттрибуты по месту, чем кидать туда-сюда все файлы из сохранялки. И пришел практически к такому же BAT'нику:
  ----------------------------------------
      attrib +r .\patch\*.* /s
      xcopy .\patch .\data /i /e /k /y
      attrib -r .\patch\*.* /s
      .\fallout2.exe
  ----------------------------------------
Желающие могут дописать сверху комады "deltree /y <имя директории для удаления>" - на всякий случай :), по крайней мере это позволит гарантировать чистоту экспериментов и отсутствие загрузки лишних файлов в самой игре. Осталось только, чтобы Kovarny включил описания в раздел FAQ "как мне подготовить Fallout к модификации?".

(Отредактировал(а) Alan Killenger - 4:36 - 26 Авг., 2004)

-----
hit me, nail me, make me god

Отправлено: 14:02 - 21 Авг., 2004
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

>любое обновление проверяется так: F7 и переход на измененную локацию.
Понятно. Тоже технология.
>Угх.. а вообще, какая разница? Если у кого-то проблемы - понятно, но лично мне это уже не горит.
Вот в том-то и дело, что проблемы могут быть не только у тебя. Форум - он для всех.
На этот раз буду кратким: если в папке patch000.dat у вас есть папка maps, не видать вам сохранения как своих ушей.
>Команды BAT'ника, именно в ней
Ясно, жаль только, что в ней очень краткие и не всегда понятные описания.


-----
Into The New Year - With A New Vision!
Документация по скриптам, туториал по скриптам, вопросы по скриптам, FAQ по моддингу, "Утилиты", fallmods-tutor.

Отправлено: 1:15 - 22 Авг., 2004
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Обнаружен баг. Если в маппере от БИС нажать F8 (то есть запустить тестирование), то в неприкосновенной папочке, содержащей материал мода, будут сохраняться и оставаться вышеперечисленные временные файлы. Баг не ставит конечно же крест над идеей, но побуждает искать пути к выходу :).


Perceptron: "Вот в том-то и дело, что проблемы могут быть не только у тебя. Форум - он для всех."

- Хехе.. а ты не слышал, что область непознанного всегда больше области исследованного :)? Хотя тоже прав, на досуге поэкспериментирую.


Perceptron: "На этот раз буду кратким: если в папке patch000.dat у вас есть папка maps, не видать вам сохранения как своих ушей."

Проверил. Сохраняется игра и даже потом грузится нормально ;), но только до тех пор, пока не перейдете на следующую локацию или не начнете заново.

(Отредактировал(а) Alan Killenger - 4:38 - 26 Авг., 2004)

-----
hit me, nail me, make me god

Отправлено: 5:05 - 23 Авг., 2004
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

>Обнаружен баг.
Обидно, значит хорошая идея накрылась медным тазом.
>а ты не слышал, что область непознанного всегда больше области исследованного :)?
Моддингу Фола это не мешает :).
>Сохраняется игра и даже потом грузится нормально ;), но только до тех пор, пока не перейдете на следующую локацию или не начнете заново.
Верно, это я забыл указать. Но это ясно из исследований Реда.

-----
Into The New Year - With A New Vision!
Документация по скриптам, туториал по скриптам, вопросы по скриптам, FAQ по моддингу, "Утилиты", fallmods-tutor.

Отправлено: 1:35 - 24 Авг., 2004
Perceptron
Модератор

Откуда: Ivanovo
Регистрация: Май 2003

Всего: 502 сообщения

Я проверил - с маппером все нормально.
Во-первых, он не удаляет про-файлы из proto\critters и proto\items.
Во-вторых, он не пишет свои временные про-файлы (как Фол)
В-третьих, хотя он и пишет пару файлов в папку maps, да музыку в sound\music (если ее там нет), но он за собой прибирает.
Так что пользоваться bat-файлом вполне можно, даже при запущенном маппере.

-----
Into The New Year - With A New Vision!
Документация по скриптам, туториал по скриптам, вопросы по скриптам, FAQ по моддингу, "Утилиты", fallmods-tutor.

Отправлено: 1:12 - 25 Авг., 2004
Alan Killenger
Пользователь

Откуда: Россия, Ижевск
Регистрация: Июль 2004

Всего: 404 сообщения

Ну хорошо, вот еще один камень: маппер от Dims'а может работать с запакованными *.dat файлами, но, насколько я понимаю, у него нет понятия "Master_patches". Так ли оно?

(Отредактировал(а) Alan Killenger - 20:05 - 25 Ноября, 2004)

-----
hit me, nail me, make me god

Отправлено: 3:20 - 29 Авг., 2004
 

Переход по темам
<< Пред. След. >>
Страницы этой темы [ 1 2 3 ] Все собщения


Powered by Ikonboard 2.1.9 RUS
Modified by RU.Board Team
© 2000 Ikonboard.com