|
CryAngel
Пользователь Регистрация: Май 2006
Всего: 6 сообщений
|
Сразу извинюсь если не там тему создал. У мя возник такой вопрос - как можно изменять сабж? Под изменением я подразумеваю удаление/замену/добавление файлов. Я пока смог придумать только такие варианты: через временную папку DAT->Папка->Модификация->DAT. Минус - Нужно много места на диске под временную папку. Изменение в памяти DAT->загрузка целиком в память->модификация->запись на диск. Минус - нужно много памяти. Не-знаю-как-назвать: DAT->по одному файлу считывается в память->те файлы которые остаются->в новый DAT файл + добавляются нужные файлы, по окончании первый файл удаляется. Минус - опять же место на диске (в конце обработки ~ 2*размер DAT файла). Кто-нить может посоветовать что-то по этому поводу? (Советы "забей на все это, зачем оно тебе надо" не принимаются ). В идеале - все изменения делать напрямую в DAT файле (тоже правда есть минус - если комп потухнет в процессе - каюк DAT файлу), но пока не придумаю возможно ли это вообще, не говоря о том как это сделать . Особенно удаление...
|
Отправлено: 4:56 - 20 Мая, 2006
|
|
Alan Killenger
Пользователь
Откуда: Россия, Ижевск Регистрация: Июль 2004
Всего: 404 сообщения
|
Как сумбурно, впредь хотелось бы слышать более ясную речь. Зачем вам нужно изменять *.dat файлы? С какой целью вы хотит изменять их? Подробно распишите ответ на этот вопрос т.к. от него зависит подробность последующих инструкций и советов.
----- hit me, nail me, make me god
|
Отправлено: 6:25 - 20 Мая, 2006
|
|
Perceptron
Модератор
Откуда: Ivanovo Регистрация: Май 2003
Всего: 502 сообщения
|
Вообще есть DAT2 - паковщик/распаковщик. Говорят, работает. То, о чем ты говоришь, можно реализовать только программно. В доках найдешь, что файлы в ДАТе располагаются последовательно, по папкам и алфавиту, заголовок в начале файла. Про каюк ДАТ-файлу: тоже можно обойти, опять же программно. А зачем все это?
|
Отправлено: 12:22 - 20 Мая, 2006
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
Зачем изобретать велосипед? Посмотри исходники проги dat2 (лежат на этом сайте в файлах). Там работа идёт напрямую с dat файлом. 2Perceptron: А заголовок в конце файла
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 12:33 - 20 Мая, 2006 | ИСПРАВЛЕНО: Ray - 11:35 - 20 Мая, 2006
|
|
Tehnokrat
Модератор
Откуда: Новосибирск Регистрация: Окт. 2003
Всего: 489 сообщений
|
to CryAngel Прежде чем спрашивать "как?", следовало бы объяснить "зачем" Тогда, было бы ясно, возможно ли задуманное тобой вообще. Я вот например не понял насчёт "нужно много памяти". Надеюсь ты не собираешься critter.dat и master.dat распаковывать? На это действительно нужно много памяти, только мне непонятно, зачем их распаковывать.
----- Прошлое можно узнать, но нельзя изменить. Будущее можно изменить, но нельзя узнать.
|
Отправлено: 20:37 - 20 Мая, 2006
|
|
CryAngel
Пользователь Регистрация: Май 2006
Всего: 6 сообщений
|
А заголовок в конце файла Постараюсь ответить всем и по порядку. 2All: Есть идея написать небольшую прогу для облегчения процесса установки модов. Другими словами - инсталлер. Попутно вопрос - что уважаемый all думает по этому поводу. Коротко основная идея - мод идет вместе с инсталлером, который нужным образом изменяет DAT-ы, заменяя/добвляя необходимые файлы. *подумав* строго говоря все мои вопросы к программистам. Но на программерских форумах придется долго объяснять структуру файла и т.п., а здесь программисты тоже есть, к тому же знающие что такое DAT файл. 2Alan Killenger: Уже ответил... 2Perceptron: Именно программно я реализовать и хочу. 2Ray: dat2 пакует/распаковывает DAT-ы, но он же их не изменяет? Или я ошибаюсь? Вообще тоже можно сделать написав bat-ник, но такой способ мне не нравится... 2Tehnokrat: "зачем" уже написал. Над остальным какраз думаю... Идея возникла в связи с тем, что моды очень не упорядоченны, одни идут в виде патч.dat, другие - прото в виде архива с файлами, который нужно распаковать туда, сделать то... Вот и подумал, было бы неплохо . Хотя чуствую, сейчас объяснят что занимаюсь ерундой и т.п. . Прощай, Идея...
|
Отправлено: 4:49 - 21 Мая, 2006
|
|
Alan Killenger
Пользователь
Откуда: Россия, Ижевск Регистрация: Июль 2004
Всего: 404 сообщения
|
ИМХО, идея действительно не будет особенно популярной т.к. любому моддеру проще либо запаковать все сразу в patch000.dat либо вообще не запаковывать (народ и так знает что с этим делать). Доверять свой драгоценный master.dat какой-то утилите, которая будет его постоянно модифицировать... лично мне это по нраву .
----- hit me, nail me, make me god
|
Отправлено: 5:02 - 21 Мая, 2006
|
|
CryAngel
Пользователь Регистрация: Май 2006
Всего: 6 сообщений
|
2Alan Killenger и всем. Тогда другой вопрос - а если уже установлен один мод и появилось желание установить второй, моды однозначно не конфликтуют. Оба в виде patch000.dat. Знают "что делать" то далеко не все. 90% что обычный геймер по незнанию просто заменит patch000.dat и тем убьет первый мод. А разными инсталлерами мы постоянно пользуемся, и ничего . Все же хотелось бы услышать совет...
|
Отправлено: 5:18 - 21 Мая, 2006
|
|
Tehnokrat
Модератор
Откуда: Новосибирск Регистрация: Окт. 2003
Всего: 489 сообщений
|
Два мода могут не конфликтовать только в одном случае - если в них изменены разные файлы, но такого практически не бывает. Без ручной правки совместить можно только очень простые моды, и никакая прога не скажет совместимы ли они.
----- Прошлое можно узнать, но нельзя изменить. Будущее можно изменить, но нельзя узнать.
|
Отправлено: 7:28 - 21 Мая, 2006 | ИСПРАВЛЕНО: Tehnokrat - 10:29 - 21 Мая, 2006
|
|
Ray
Модератор
Откуда: Донецк,Украина Регистрация: Янв. 2004
Всего: 746 сообщений
|
2 CryAngel: Видишь ли, но ты немного опоздал Для своего мода я уже написал такой инсталлер. И он довольно неплохо работает. Но я не всё сделал как хотел. Сейчас инсталлер версии 2.0 и в данный момент я заканчиваю работу над третьей версией. Но в версии 2.0 инсталятора имеется ряд недостатков: как то - все данные лежат рядом с инсталлером в дат файле, нужен конфиг, временный файл. А вот что уже сделано или доделывается в версии 3.0: - уменьшен вес инсталлера (теперь он не на Builder'e а на Visual C++) - весь инсталятор теперь представляет один файл exe (ресурсы находяться внутри) - все ресурсы запакованы не дат'ом а winimp'ом (степень сжатия как у winrar'а а скорость распаковки выше) При установке данные распаковываются из архива (.exe - он же инсталлер) и допаковываются напрямую в patch000.dat - файлы допаковываются напрямую в patch000.dat без создания временного архива (размером с dat) Ну и ещё всякие мелочи. Так что прости, опоздал Если хочешь - можешь писать свой. Посмотрим у кого будет лучше Если нужна помощь - обращайся на мыло.
----- Не бывает невозможных задач – бывает мало времени.
|
Отправлено: 13:01 - 21 Мая, 2006 | ИСПРАВЛЕНО: Ray - 12:05 - 21 Мая, 2006
|
|
|
|