ВНИМАНИЕ! Наша конференция посвящена космической тематике и компьютерным играм. Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!
|
» Программа «X4 Builder» | страница 36 |
|
|
|
Канал X4: Foundations: «Программа «X4 Builder»» |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Часть 6. Пробная перекачка языковых файлов в БД SQLite. Выводы.
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
Информация страниц в языках, это только информация какой Page для чего. Можно только брать
лишне отсекать.
Я предполагаю. что эти данные в базе данных нужны только если вы соберетесь из базы обратное конвертирование в xml делать. Но для программы это лишняя информация.
А конфиг, как вы ис казали, можно рядом ложить типа INI, C N F или TXT
А можно это вынести в опции типа
1) сохранять настройки программы
- в реестр
- в файл
кому куда нравится.
Но это так, мысли в слух... Печатать не нам...
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexalsp : |
Но для программы это лишняя информация.
|
Да, я знаю, но остальные атрибуты много не занимают, на всякий случай пусть объект будет целым, как есть.
Конфиг уже сделал рядом с прогой XML файл. Может вообще JSON будет. Да это мелочи, не суть кака важно.
А читает языки из базы очень хорошо, в 7 раз быстрее, чем из файла. Но вот запись в базу дооолгая, наверное и поиск/обновление будет не таким быстрым, как я ожидал. Из-за этого отклонил идею с базой.
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Доработал функцию чтения данных из языковых файлов, теперь она рекурсивная и считывает (получает текст) для всех вхождений блоков {xxx,xxx}.
Т.е. строка вида: Приобретите у союзников чертежи '{20104,61301}', '{20104,60301}' или '{20104,60401}'. прочитается как:
Приобретите у союзников чертежи 'Производственный отсек S/M-кораблей', 'Производственный отсек L-кораблей(L Ship Fabrication Bay)' или 'Производственный отсек XL-кораблей(XL Ship Fabrication Bay)'.
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
Комментарий - в игре не видно.
Код: |
(XL Ship Fabrication Bay) |
Текст - отображается в скобках
Код: |
\(XL Ship Fabrication Bay\) |
Так что все комменты можно отрезать.
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (15:58 23-08-2023), всего редактировалось 1 раз |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexalsp : |
Так что все комменты можно отрезать.
|
Понял. Там еще бывают переменные подставные типа %nnnnnn, они тоже в программе наверное не нужны. Это чисто игровые вещи..
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
igorVL : |
alexalsp : |
Так что все комменты можно отрезать.
|
Понял. Там еще бывают переменные подставные типа %nnnnnn, они тоже в программе наверное не нужны. Это чисто игровые вещи..
|
Тут я не скажу. Если программа их ни как не обрабатывает , возмоджно и не нужны.
Может alexusvm в курсе...
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (19:21 23-08-2023), всего редактировалось 1 раз |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexalsp : |
Если программа их ни как не обрабатывает
|
Ну в игре такие строки работают так: допустим сообщение "Потрачено %1 Кр." где вместо %1 подставляется сумма, которую потратили. Точно так же подставляются имена товаров, кораблей, станций...
Используется в основном в диалогах и сообщениях.
В программе пока не вижу явного применения этому. Но время покажет.
|
|
|
alexusvm 653 EGP
Рейтинг канала: 13(2118) Репутация: 31 Сообщения: 1583 Откуда: Москва Зарегистрирован: 30.08.2012 |
|
Сначала загрузи всё нужные конфиги игры и запомни все ссылки на тексты (по нодам name и description) + добавь тексты для интерфейса проги. А локаль грузи уже последней и бери из неё только нужное. Из всей локали понадобится дай бог 10%
добавлено спустя 9 минут:
И про конфиги и локали ДЛЦух не забывай. Конфиги расширений могут добавлять, удалять или изменять ванильные данные игры (см. по корневым нодам add, remove, replace).
Последний раз редактировалось: alexusvm (07:54 24-08-2023), всего редактировалось 1 раз |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexusvm : |
Из всей локали понадобится дай бог 10%
|
Как впрочем и из всех DAT'ов вместе взятых... Посмотрел повнимательнее на содержание, пока пришел к следующему:
полезная инфа содержится только в 01, 08 и 09 dat'ах. Из 02.dat можно интересные звуки игровые подоставать.
Из 01.dat нужны только XML'ы конкретных объектов (корабли/станции/модули/вооружение...), находящиеся в папках 'macros'. Это 1-2% от веса всего DAT'а.
Из 08.dat из папки 'libraries' тоже несколько файлов.
Т.е. если все эти папки и файлы всегда находятся на своих местах и их расположение не меняется со временем (патчи/обновления), то для минимального функционала проги прочесывать все DAT'ы ванильной игры нет смысла от слова совсем. Только если какой-то DAT был изменен, можно снова распаковать нужные XML'ы и сверить их содержание.
Если в корневой папке игры появляется новый DAT (равно как и в папках модов), вот его(их) уже нужно исследовать на предмет содержания файлов, которые могли быть изменены/дополнены.
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
03 вообще можно пропускать это озвучка. Файлы же могут быть в каждом кате , тот что в последнем тот и новее.
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (15:50 24-08-2023), всего редактировалось 1 раз |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexalsp : |
03 вообще можно пропускать это озвучка
|
ну я и говорю, нужные только 1, 8 и 9. Остальное шлак )
alexalsp : |
тот что в последнем тот и новее
|
Да.
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexusvm : |
всё одно к этому придёшь...
|
Пришел...
Разве что технология будет немного иная.
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Часть 7. Чтение CAT...
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Как-то вот так:
Cкрытый текст (кликните здесь для просмотра)
|
03,04 DAT'ы пустые (без XML), в 06 - ни о чем, в 07- 155 штук, но надо смотреть что там.
Итого, без учета DLC получается:
01 - от сюда нужны макро-описания
02 - под вопросом...
05 - под вопросом...
07 - ?
08 - основная библиотека
09 - переводы
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
Что то отчетами интересными не делится )) Наверное загулял ...
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH |
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
alexalsp : |
Что то отчетами интересными не делится )) Наверное загулял ...
|
Привет, нет, просто занят на другой работе малость.
Я почти доделал одну тузлу для исследования и работы с ресурсами игры, скоро видео запишу.
Плюс еще один момент в программе Алексея, который следует исправить, покажу.
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Часть 8.
|
|
|
igorVL 47 EGP Рейтинг канала: 5(112) Репутация: 2 Сообщения: 134
Зарегистрирован: 04.08.2023 |
|
Проверка тулзы после переустановки игры вместе со всеми DLC и тремя модами.
Мой чекер поймал все измененное и дополненное:
Cкрытый текст (кликните здесь для просмотра)
|
после принятия изменений - кнопка "Accept":
Cкрытый текст (кликните здесь для просмотра)
|
содержание дампа:
Cкрытый текст (кликните здесь для просмотра)
[
{
"Id": "root_01",
"Name": "01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:27:50.3973362+03:00",
"Length": 5352262
},
{
"Id": "root_02",
"Name": "02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:36:20.8107392+03:00",
"Length": 160664
},
{
"Id": "root_03",
"Name": "03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:27:50.6570975+03:00",
"Length": 13035956
},
{
"Id": "root_04",
"Name": "04.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:54:33.9822796+03:00",
"Length": 11299
},
{
"Id": "root_05",
"Name": "05.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:27:50.4350214+03:00",
"Length": 6285794
},
{
"Id": "root_06",
"Name": "06.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:58:49.2317074+03:00",
"Length": 142992
},
{
"Id": "root_07",
"Name": "07.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T18:27:50.438021+03:00",
"Length": 341013
},
{
"Id": "root_08",
"Name": "08.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T19:07:16.9529047+03:00",
"Length": 67108
},
{
"Id": "root_09",
"Name": "09.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\",
"LastModifyTime": "2023-09-15T19:06:09.959422+03:00",
"Length": 884
},
{
"Id": "better_kill_credit_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\better_kill_credit\\",
"LastModifyTime": "2023-09-15T19:33:10.6723369+03:00",
"Length": 144
},
{
"Id": "ego_dlc_boron_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_boron\\",
"LastModifyTime": "2023-09-15T18:27:50.6696273+03:00",
"Length": 1140195
},
{
"Id": "ego_dlc_boron_ext_02",
"Name": "ext_02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_boron\\",
"LastModifyTime": "2023-09-15T19:27:15.545256+03:00",
"Length": 23991
},
{
"Id": "ego_dlc_boron_ext_03",
"Name": "ext_03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_boron\\",
"LastModifyTime": "2023-09-15T19:29:30.9715001+03:00",
"Length": 6000
},
{
"Id": "ego_dlc_pirate_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_pirate\\",
"LastModifyTime": "2023-09-15T18:27:50.6666263+03:00",
"Length": 792963
},
{
"Id": "ego_dlc_pirate_ext_02",
"Name": "ext_02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_pirate\\",
"LastModifyTime": "2023-09-15T19:24:59.8406333+03:00",
"Length": 5108
},
{
"Id": "ego_dlc_pirate_ext_03",
"Name": "ext_03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_pirate\\",
"LastModifyTime": "2023-09-15T19:23:39.5851391+03:00",
"Length": 6745
},
{
"Id": "ego_dlc_split_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_split\\",
"LastModifyTime": "2023-09-15T18:27:50.6606281+03:00",
"Length": 972742
},
{
"Id": "ego_dlc_split_ext_02",
"Name": "ext_02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_split\\",
"LastModifyTime": "2023-09-15T19:15:50.9013509+03:00",
"Length": 1334
},
{
"Id": "ego_dlc_split_ext_03",
"Name": "ext_03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_split\\",
"LastModifyTime": "2023-09-15T19:14:46.9358067+03:00",
"Length": 5778
},
{
"Id": "ego_dlc_terran_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_terran\\",
"LastModifyTime": "2023-09-15T18:27:50.6636279+03:00",
"Length": 1626860
},
{
"Id": "ego_dlc_terran_ext_02",
"Name": "ext_02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_terran\\",
"LastModifyTime": "2023-09-15T19:21:13.4444255+03:00",
"Length": 22253
},
{
"Id": "ego_dlc_terran_ext_03",
"Name": "ext_03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_terran\\",
"LastModifyTime": "2023-09-15T19:22:03.42716+03:00",
"Length": 8134
},
{
"Id": "ego_dlc_ventures_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_ventures\\",
"LastModifyTime": "2023-09-15T19:32:45.4625571+03:00",
"Length": 3888
},
{
"Id": "ego_dlc_ventures_ext_02",
"Name": "ext_02.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_ventures\\",
"LastModifyTime": "2023-09-15T19:32:46.1451288+03:00",
"Length": 859
},
{
"Id": "ego_dlc_ventures_ext_03",
"Name": "ext_03.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\ego_dlc_ventures\\",
"LastModifyTime": "2023-09-15T19:32:46.2635693+03:00",
"Length": 55969
},
{
"Id": "vro_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\vro\\",
"LastModifyTime": "2023-09-15T19:33:09.2513738+03:00",
"Length": 362006
},
{
"Id": "vro_assets_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\vro_assets\\",
"LastModifyTime": "2023-09-15T19:33:10.0390624+03:00",
"Length": 16965
},
{
"Id": "x4_fireandsmoke_ext_01",
"Name": "ext_01.cat",
"Path": "F:\\SteamLibrary\\steamapps\\common\\X4 Foundations\\extensions\\x4_fireandsmoke\\",
"LastModifyTime": "2023-09-15T19:33:10.4292792+03:00",
"Length": 70088
}
]
|
Дампы и конфиги переделал в JSON-формат. От XML уже в глазах рябит..
|
|
|
alexalsp 514 EGP
Рейтинг канала: 11(1683) Репутация: 54 Сообщения: 4280
Зарегистрирован: 12.08.2014 |
|
Как то все притихли
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH |
|
|
|
|
|
Канал X4: Foundations: «Программа «X4 Builder»» |
|
К списку каналов | Наверх страницы |
Цитата не в тему: Как ни новый сектор - так эти уже тут, караулят около гейта... А я их всех посылаю. (поделился DarkDino)
|
» Программа «X4 Builder» | страница 36 |
|