Volich_Engine 0 Опубликовано: 6 декабря 2011 Поделиться Опубликовано: 6 декабря 2011 Представляю вашему вниманию самый объёмный в рунете FAQ по свкрытию и редактированию внутренней файловой системы образов дисков Xbox 360.Данный FAQ предназначен в первую очередь для помощи начинающим творцам самодельных локализаций и портов с пк (к коим я причисляю и себя)Сразу оговорюсь, что этот FAQ довольно сложный и предназначен исключительно для самых продвинутых пользователей. Если при виде hex-редактора у вас невольно отвисает челюсть и разбегаются глаза - сразу проходите мимо и даже не заглядывайте дальше и не пишите мне глупые вопросы в личку. Все программы и прочие файлы, на которые я буду ссылаться можно скачать здесь Итак, начну Открой любой хбокс образ Xbox Backup Creator-ом. Ты видишь файловую структуру игры. У каждого файла прописан размер в байтах и адрес в секторах (1 сектор = 2048 байт). Xbox Backup Creator позволяет заменять файлы, в том числе, если у файла изменился размер. Правда если размер стал больше, то при замене файл спокойно может заползти на другой. Теперь создай лайаут (файл – криэйт лайаут). Открой полученный файл блокнотом и ты увидишь список всех файлов в таком порядке, в каком они располагаются в образе. Если строчка начинается с д – это папка, если с ф – файл. Образ состоит из нескольких частей: видео раздел (там содержится 3-х секундное видео, которое воспроизводится, если диск вставить в обычный плеер или комп), стелс секторов и игрового раздела, в котором содержатся файлы игры (причём все эти части распологаются именно в этом порядке). Игровой раздел или game.iso представляет собой по сути образ первого хбокса, а для первого хбокса есть много программ для пересборки образа. Но если ты уже подумал, что это и есть способ, то нет – это только вступление. Отделить game.iso от основного образа можно при помощи Schtrom360Xtract Version 4.1 Помимо банальных отличий между game.iso и диском хбокс1 в образе 360 есть некие контрольные точки, разбросанные в произвольном порядке по всему диску. если изменить одну из них, то диск читаться не будет. поэтому пере собрать образ полностью невозможно, можно только часть, надеясь что не наткнёшься на такую точку. например в фалауте такая точка находится где-то между 3011742 и 3220510 секторами. когда я вставлял файлы туда, то образ не работал, и я сдвинул файлы дальше за 3220510 сектор. Извлечение game.iso хоть и позволит пересобрать образ но значительно облегчит работу. Например извлечём game.iso из образа фалаут нью вегас при помощи Schtrom360Xtract и в Xbox Backup Creator создадим лайаут. Открой лайаут и найди строчку с какой-нибудь папкой папкой. Я например возьму папку data. Дальше пойдёт речь о редактировании извлечённого game.iso, но Schtrom360Xtract не поддерживает xgd3 образы, при работе с ними просто придётся учитывать постоянное смещение (34078720 байт) D,\Data,0,1783934 1783934 – это адрес в секторах. Умножим на 2048 = байт. WinHex-ом отрываем game.iso и переходит на офсет 3653496832. Вот мы видим оглавление паки дата. Тут представлены имена, адреса и размеры (все в шестнадцатеричном виде) файлов и папок лежащих непосредственно в папке дата. Если перейти на адрес файла, то там будет собственно файл, а если перейти на адрес папки, то там будет оглавление папки. http://s002.youpic.su/pictures/1323118800/6ab3675d203bd3855f16ecf781b27aa3.png Красным я выделил имя файла. Здесь же его можно переименовать, но необходимо сохранить исходное количество букв. За количество букв отвечает параметр, выделанный зелёным (0D = 13). Переводить из шестнадцатеричного в обычный формат и обратно можно в стандартном виндоуз калькуляторе. В теории можно прописать другое количество букв, но скока не пытался, сделать это корректно не получилось. Параметр, выделенный синим, отвечает за атрибут. Атрибут в частности определяет о файле или папке идёт речь. Оранжевый параметр – размер. Тут есть свой нюанс. Размер и адрес прописаны в обратном порядке, то есть 246187625 = 0E AC 86 69, но здесь прописано наоборот – 69 86 AC 0E. Если заменять файл в Xbox Backup Creator, то размер прописывается автоматически, но иногда Xbox Backup Creator даёт глюк и размер приходится прописывать вручную. И чёрный параметр – адрес в секторах (прописан в обратной последовательности). Меняя этот параметр можно двигать файл внутри образа. Если, к примеру, необходимо заменить файл на другой, большего размера, и при этой замене он заведомо заползёт на другой (позади идущий) файл, можно, изменив адрес, переместить файл в другое, свободное место.Теперь расскажу о способах перепаковки, которые я обычно применяюСпособ Адын! Допустим, нам надо добавить файл\папку на диск. Для этого необходимо создать просто создать оглавление этой папки, в котором присутствует дополнительный элемент. Подойдёт любая программа, для создания образов первого бокса (я пользуюсь MooGUI, но об этом позже). Допустим, образ будет собираться из некой папки game, а папка, в которую нужно добавить файл\папку называется data. Положим папку data в папку game, причём не важно как эта папка располагается в реальном образе. В корне game создаём новый текстовый документ и называем default.xbe (исполняемый файл первого бокча). В папке data лежат все папки и файлы, что и в реальном образе + добавленный нами файл\папка. Для ускорения процесса создания образа можно удалить содержимое папок, лежащих в data, а файлы из папки data заменить также текстовыми документами (Избегай пустых папок и файлов нулевого размера – могут быть глюки. В папках оставляй какую-нибудь мелочёвку, а в текстовиках, перед переименованием в соответствующий файл, черкани пару букв). Когда основа образа подготовлена можно приступать к сборке. Для работы MooGUI нужен лайаут файл. Создать его можно при помощи мамой проги: тулз - билд лайаут. Когда образ собран, открываешь его в S360X и смотришь адрес папки data и умножаешь его на 2048. Смешений нет, просто переходишь на этот адрес винхексом и видишь оглавление. Теперь его надо подогнать под оригинальный образ. Если ты заменял файлы текстовиками, то тебе вручную придётся прописать их исходный размер, особое внимание обрати на папки. Если ты подрезал их содержимое, то размер оглавления папки уменьшится и бокс не сможет прочитать его полностью. Xbox Backup Creator не показывает размер папки и не пишет его в лайауте, но его можно посмотрель в S360X (опять хгд3 в пролёте). Размер папки прописывается всегда как 2048 байт. Если оглавление больше – то 4096 и т.д. Когда восстановил размеры файлов надо прописать адреса как в оригинальном образе для всех файлов, а вновь добавленному прописать адрес, где есть свободное место. Я, обычно, прописывая адреса и размеры, сразу сверяю их в S360X. Когда оглавление подогнано под оригинал винхексом копируем его (ctrl+c) и вставляем в исходный образ (ctrl+b) и сохраняем результат. Все - файл добавлен в оглавление. Открываем образ в Xbox Backup Creator и заменяем добавленный файл самим собой (чтобы на диске появилась не только его имя, но и содержимое) Как можно догадаться, данный способ удобен, если в папке data немного элементов, даже если они большого размера. Способ Дыва! Допустим, нам надо перепаковать папку с кучей файлов внутри. Так было у меня в оверлорде при портировании озвучки. С одной стороны звуковые файлы на пк и коробке одного формата – мп3. Бери да переноси Xbox Backup Creator-ом, но вот только этих файлов там почти 4 тысячи. Да к тому же Xbox Backup Creator имеет досадный глюк: при замене файлов, когда их размер меняется (когда он автоматически прописывает размер), есть вероятность, что образ придёт в негодность. Учитывая количество файлов не наткнуться на такой глюк просто нереально. Итак, допустим, что некая папка Data с кучей файлов лежит в секторах 1000-1500. Мы распаковали папку и заменили в ней энное количество файлов. Чтобы далее больше не возвращаться к данному вопросу усложним задачу – допустим, что размер папки увеличился, но мы нашли свободное место в секторе 1600-1700 и этого нам хватило. Тут мы будем пользоваться именно MooGUI и больше внимания уделим созданию лайаут-файла. Как обычно создадим папку Game, в ней default.xbe и туда же положим нашу Data. По старинке создайм в MooGUI лайаут. Он будет выглядеть примерно следующим образом:# OPTIMIZER : # OPT-TYPE : STATIC-DUMP # OPT-TYPE-EX : Game folder dump, ascending order # CREATED BY : MooGUI v1.3.0 # DISC TITLE : Unknown # TITLE ID : 00000000 # VIDEO MODE : # PUBLISHER : # SOURCE DISC : Backup # EXTRA INFO : # # <<<<< LAYOUT BEGINS HERE >>>>> # D,\,0,0 F,\default.xbe,0,0 D,\Data,0,0 F,\Data\первый_файл,0,0 F,\Data\второй_файл,0,0 F,\Data\третий_файл,0,0 ……………………………. ……………………………. …..хуева гора файлов…… ……………………………. ……………………………. MooGUI очень чувствительна к синтаксису и лишним пробелам, так что будь аккуратнее. Итак, первая сторочка D,\,0,0 – оглавление корневой папки – вырезаем и вставляем в конец. Вторая сторочка F,\default.xbe,0,0 – ваще нахуй удаляем. Дальше идёт нужная нам папка Data и хуева гора файлов в ней. По умолчанию MooGUI делает отступ 264 сектора, то есть папка Data начнётся с сектора 265, а нам надо 1000. Для этого создаём вин хексом файл размером 1000-265=735 секторов *2048 = 1505280 байт и прописываем его первым в списке, например F,\1,0,0 – где 1 – имя файла, размер и адрес в лайауте роли не играет. Положив файл 1 в корень папки game, мы не изменяем оглавление data, и при переносе в оригинальный образ файл 1 не будет помехой. Теперь папка data начинается с сектора1000. Осталось сделать промежуток между 1500 и 1600 секторами. По аналогии создаём файл 2 размером в 100 секторов и вписываем в лайаут строчку F,\2,0,0 в том месте где папка data достигнет 1500-го сектора. В итоге лайаут будет выглядеть примерно так:# OPTIMIZER : # OPT-TYPE : STATIC-DUMP # OPT-TYPE-EX : Game folder dump, ascending order # CREATED BY : MooGUI v1.3.0 # DISC TITLE : Unknown # TITLE ID : 00000000 # VIDEO MODE : # PUBLISHER : # SOURCE DISC : Backup # EXTRA INFO : # # <<<<< LAYOUT BEGINS HERE >>>>> # F,\1,0,0 D,\Data,0,0 F,\Data\первый_файл,0,0 F,\Data\второй_файл,0,0 F,\Data\третий_файл,0,0 ……………………………. …..хуева гора файлов…… ……………………………. F,\2,0,0 ……………………………. …..хуева гора файлов…… ……………………………. D,\,0,0 Теперь у нас есть готовый лайаут. Пакуем образ при помощи MooGUI. ОБЯЗАТЕЛЬНО УБИРАЕМ ГАЛОСКУ С «PAD ISO TO 4,38GB». После сборки образа проверяем в S360X, всё ли у нас легло в нужные сектора и при необходимости вносим корректировку и повторяем сборку. Когда сборка проверена необходимо перенести собранный файловый массив в оригинальный образ. То есть в вин хексе выделяем нужные нам два промежутка (поочерёдно естественно). Edit – define block. Если папка data у нас начиналась в секторе 1000, то началом будет 1000*2048=2048000 байт. Если последний файл (до промежутка) имеет конечный сектор, скажем, 1498 – то конечный байт будет (ВНИМАНИЕ) = ( (1498+1)*2048)-1 Поясню: если просто умножить 1498 на 2048, то это будет начало конечного сектора, а нам нужен конец конечного сектора. 1498+1 – следующий сектор, а (1498+1)*2048 – начало следующего сектора, минус 1 байт – это конец интересующего нас сектора. Выделив нужный сектор копируем его (ctrl+c) и вставляем в исходный образ (ctrl+b) В ТОТ ЖЕ БАЙТ (байт начала - 2048000). Так же переносим второй кусок массива. Теперь весь файловый массив перенесён в оригинальной образ. Но сам образ ещё об этом не знает. Есть два способа как ему на это указать. 1)Можно прописать в оглавлении корневой папки (либо в оглавлении той папки в которой находится data) новый адрес папки Data (у нас это 1000-й сектор) 2)Скопировать оглавление папки Data (у нас это 2048000-й байт) и вставить там, где оно находится в оригинальном образе. Всё – образ готов. У данного способа существуют свои недостатки: MooGUI предназначена для сборки образов первого бокса и может собирать только однослойные образы (до 4,5 гб). То есть все перепаковываемые папки нужно положить именно на первую половину диска. Что ж, надеюсь этот фак тебе хоть чем-нибудь поможет. Как ты мог заметить, способы мои не универсальные и если в какой-то конкретной игре нужно будет замутить что-то, для чего мои способы не совсем подходят – пиши, вместе помозгуем. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
RichY 0 Опубликовано: 6 декабря 2011 Поделиться Опубликовано: 6 декабря 2011 Экспериментировал с MW2 и BO, пересчитывал смещения для всех 89 файлов, с нуля делал файловую систему, перемещал сами файлы. В итоге, пашет только на фриубт боксах. Очень интересует блок данных в конце образа, после всех файлов. Он не обозначен ни в одной таблице оглавления, в нем непонятные данные, если его сдвигать (что неизбежно из-за увеличения образа), либо стирать нафиг, диск не пашет. default.xex оставлял на том же месте, смещал файлы в обе стороны от него. P.S. На подобную пересборку образа ушло около двух часов. Папок на диске нет, так что это было единственным способом Про проги для первого бокса не знал, мож с ними проще было бы Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Volich_Engine 0 Опубликовано: 6 декабря 2011 Автор Поделиться Опубликовано: 6 декабря 2011 блок данных в конце просто занимает место. его заполняют чтоб при запаковке в архив образ не стал меньше весить и его дольше было качать (имхо). полезной нагрузки они не несут, но могут содержать контрольные точки. если хочешь использовать это место, то не надо смещать его, надо записывать поверх. дефолд.хех нельзя заменять, образ подписан под него. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
RichY 0 Опубликовано: 6 декабря 2011 Поделиться Опубликовано: 6 декабря 2011 Там тех данных было всего 512 кбайт. А вот default.xex я заменял, видать из-за этого. В любом случае, повторять такое уже не собираюсь :) скорее программу для этого сделаю. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
galogen 0 Опубликовано: 30 января 2013 Поделиться Опубликовано: 30 января 2013 Привет! Пару месяцев назад я спрашивал тебя в личку на Тапках по поводу добавления модов к Fallout: New Vegas. Вот, наконец-то руки дошли :) Пользуясь твоим способом (номер адын) пытаюсь добавить моды к оригинальной английской версии New Vegas (Fallout_New_Vegas_Ultimate_Edition_XBOX360-SPARE). Естественно, появилась целая куча вопросов :) 1. Добавил в образ пару модов. Всё успешно распаковывается, сравнение результатов распаковки модифицированного и оригинального образов показывает, что файлы легли правильно, ничто не затёрто, ничто не потеряно. Однако, abgx360 1.0.6 при проверке образа ругается: "Unable to parse filesystem because it appears to be corrupt". Насколько я помню, у homebrew-русификаций такого не наблюдается. Образ пока не записывал и не проверял, так что о работоспособности ничего сказать не могу. 2. Очень смущают 4 байта перед LBA. Понял только, что они важны и что это не дата создания файла/папки. Ещё больше вопросов вызывает эпизодическое наличие FF перед ними. Мне кажется, умея расшифровывать эту запись, можно отбросить шаг с MooGUI и напрямую запихивать файлы в ISO. Готов даже взяться за разработку инструмента. Парсер оглавления папки уже написал. 3. Атрибуты файлов и папок, генерируемые MooGUI, отличаются от исходных (20 и 30 против 80 и 90). Поправил вручную, но непонимание осталось :) 4. Обнаружил, что UltraISO хорошо понимает Game.iso. Ты не пробовал работать ней? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
galogen 0 Опубликовано: 31 января 2013 Поделиться Опубликовано: 31 января 2013 (изменено) UPDATE С ошибкой "Unable to parse filesystem because it appears to be corrupt" разобрался, созданный сегодня ISO-образ успешно проходит проверку abgx360 (за исключением, естественно, проверки контрольных сумм файлов). Записывать пока не пробовал, поскольку столкнулся с другой проблемой, связанной с самим New Vegas. Немножко оффтопа, если позволите :) Для того, чтобы иметь возможность использовать "способ адын", мне нужно было свести количество добавляемых в ISO файлов к минимуму. Поскольку многие моды для New Vegas помимо двух файлов -- .esp и .bsa содержат в себе ещё и пару немаленьких структур каталогов, я решил пойти очевидным, каалось бы, путём. Зная, что BSA - это специальный архив, я разжился инструментом для работы с этим форматом, и с его помощью засунул содержимое папок внутрь BSA, тем самым сведя мод к 2 файлам. Однако, при проверке этого перепакованного мода в ПК-версии New Vegas выяснилось, что, как минимум, звуковые файлы, перенесённые внутрь BSA, игра не видит. В чём тут проблема - ума не приложу. Изменено 31 января 2013 пользователем galogen Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Volich_Engine 0 Опубликовано: 31 января 2013 Автор Поделиться Опубликовано: 31 января 2013 1)скорее всего что-то затёр - оглавление какой-то папки или допустил ошибку в нём. 90% что работать не будет. Xbox Backup Creator этот образ открывает? 2)у меня на получилось написать оглавление с нуля, ровно как добавить\удалить файл вручную. поищи в инете на какую-то из прог для создания образов первого бокса были исходники 3)это атрибуты заточены под первый бокс, но 360-й их тоже понимает. особой необходимости менять их нет 4)не знал UPDATE С ошибкой "Unable to parse filesystem because it appears to be corrupt" разобрался, созданный сегодня ISO-образ успешно проходит проверку abgx360 (за исключением, естественно, проверки контрольных сумм файлов). Записывать пока не пробовал, поскольку столкнулся с другой проблемой, связанной с самим New Vegas. Немножко оффтопа, если позволите :) Для того, чтобы иметь возможность использовать "способ адын", мне нужно было свести количество добавляемых в ISO файлов к минимуму. Поскольку многие моды для New Vegas помимо двух файлов -- .esp и .bsa содержат в себе ещё и пару немаленьких структур каталогов, я решил пойти очевидным, каалось бы, путём. Зная, что BSA - это специальный архив, я разжился инструментом для работы с этим форматом, и с его помощью засунул содержимое папок внутрь BSA, тем самым сведя мод к 2 файлам. Однако, при проверке этого перепакованного мода в ПК-версии New Vegas выяснилось, что, как минимум, звуковые файлы, перенесённые внутрь BSA, игра не видит. В чём тут проблема - ума не приложу. архивы имеют разную структуру. на момент создания русификации мне было проще пропатчить имеющиеся архивы винхексом, чем придумывать запаковщик. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
galogen 0 Опубликовано: 31 января 2013 Поделиться Опубликовано: 31 января 2013 Спасибо за ответ и за советы! С перепаковкой BSA тоже разобрался, по крайней мере на ПК всё заработало. Просто для перепаковки BSA я использовал BSA creator из состава Fallout Mod Manager и, по-видимому, при создании архива он не прописывает некоторые флаги контента. Если интересно - вот грубое описание структуры BSA: http://www.uesp.net/wiki/Tes4Mod:BSA_File_Format. Проблема решилась с использованием родного Bethsoft'овского упаковщика Archive.exe из состава Creation Kit для Skyrim. Но вот теперь, фактически, перед записью ISO, меня очень смутил один пунктик из настроек Archive.exe -- "XBox 360 archive". Причём, в этом режиме архив создаётся с совершенно иной структурой, хоть и того же размера. Ты не сталкивался с этим при создании своей сборки New Vegas? Не перепаковывал BSA русификации и DLC? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
kostya95 0 Опубликовано: 6 апреля 2013 Поделиться Опубликовано: 6 апреля 2013 @Volich_Engine, подойдут ли ваши инструкции к игре Gun (2005)? Там вообще все файлы в образе видны, нужно ли пользоваться Xbox Backup Creator?Кстати, в интернете нигде нет русской версии для xbox 360, нет в планах портировать перевод с PC? Игра хорошая. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Нео 2 Опубликовано: 6 апреля 2013 Поделиться Опубликовано: 6 апреля 2013 а если сделать тектовый перевод Блю Дракон, его можно будет потом засунуть в игру? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
heavyduty 0 Опубликовано: 12 апреля 2015 Поделиться Опубликовано: 12 апреля 2015 Приветствую! Подскажите пожалуйста, если я заменю файл Bigfile-ENGLISH.000.tiger на Bigfile_RUSSIAN.000.tiger через программу wx360, затем сохраню измененный образ, в игре появится русския язык и вообще она запустится? Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Zed??? 0 Опубликовано: 16 апреля 2015 Поделиться Опубликовано: 16 апреля 2015 тема рарная очень. пытался как то музыку свою в игру запихнуть, естесственно далеко не ушел. Оказывается не все так просто. В свободное время буду разбираться, спасибо большое автору. Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
psiklo 0 Опубликовано: 27 апреля 2015 Поделиться Опубликовано: 27 апреля 2015 пожалуйста обновите рисунка не видно где цифрыочень прошу Ссылка на комментарий Поделиться на других сайтах Больше способов поделиться...
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас