|
|
|
Канал X2: The Threat: «Увеличиваем число доступных кораблей» |
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
Добрый день, добрый!
Благодаря фундаментальным исследованиям DF, Blueboar, Shaddie, выполнивших титаническую работу по расковыриванию структуры obj-файлов XT, появилась возможность попытаться добавить число доступных корабликов в Х2.
Более подробно смотреть вот в этом топике http://www.elite-games.ru/conference/viewtopic.php?t=23632
При инициализации игрухи создается массив идентификаторов объектов кораблей в соответствии со строчками в tships.txt. Всего 114 шт. Некоторые эти идентификаторы забиты 0. Программа позволяет заменить этот кусок кода на подправленный. Создается исправленный файл x2story.obj.
Интересно, что аналогичный код инициализации встречается практически во всех obj-файлах. Патчить нужно не только x2story, но и x2galedit.obj.
Проверил только следующие 10 строчек
SS_SH_X_TS_P, SS_SH_S_TS_P, SS_SH_P_TS_P, SS_SH_B_TS_P, SS_SH_T_TS_P
SS_SH_E_TS, SS_SH_E_M1, SS_SH_E_DRONE, SS_SH_E_SPACESHUTTLE, SS_SH_E_CARRIER
Вроде глюков нет.
Желающие поэксперементировать есть?
PS: Игру нужно начинать сначала и пока только для Х2 1.4
В версии 00.05 добавлено:
- можно создать до 50 новых кораблей
- работа в bat-файлах
В версии 00.06 добавил:
- 200 кораблей, что б закрыть вопрос
- изменение параметров щитов по умолчанию для OrbitalLaser, Satellite и станций
- разрешил посадку транспортов на М2
- разрешил посадку small_ship (М3,М4,М5) на М6
Версия 00.07 или Зеркало - более быстрый хост, либо в базе данных EG.
Добавил:
- мозможность продолжить игру со старого save
Версия 00.08
Добавил:
- новый класс кораблей М0.
Версия 00.09
Добавил:
- В игрухе можно использовать до 30 ракет.
Версия 00.10
Добавил:
- В игрухе можно использовать до 31 ракеты. Разобрался почему одной не хватало...
- Можно добавить еще 7 пушек.
Версия 00.15
- Ракетам крутее Шершня позволено уничтожать астероиды.
- Добавлена посадка биг-шипов на М0
- Исправлены мелкие опечатки...
PS: Принимаются идеи и предложения.
|
|
|
akm
470 EGP
    Рейтинг канала: 1(4) Репутация: 173 Сообщения: 1638 Откуда: Паразит Прайм Зарегистрирован: 23.10.2002
 |
|
Ну вы даете!
Глянул прогу. Молодцы!!!
P.S. Хм. Попробовал я в TShips модифицировать SS_SH_E_CARRIER, подставив вместо него строку открывахи и вернув назад идентификатор SS_SH_E_CARRIER. Открыл x2story.obj и подправил тип на М5.
Запускаю игру, создаю скриптом корабль с субтипом 58 в космосе - и нифига не создается Что я не так делаю?
Выборку типа корабля делал командой "get ware of maintype 7 and subtype 58" и она исправно выдала "Argon Discoverer". Но create ship его не создала.
Интересно, что открыв прогой модифицированный x2story.obj, она не отобразила тип М5 напротив SS_SH_E_CARRIER
readme : |
3. Увеличить общее число кораблей больше магической цифры 114 пока нельзя. Это связано с ограничениями стека и редактором скриптов.
|
Ну у редактора скриптов никаких ограничений нет. Я добавлял в TShips доп. строку 114 и функция "get number of subtypes of maintype 7" выдавала мне 115, а функция "get ware of maintype 7 and subtype 114" прекрасно выдавала мне тип корабля, согласно ссылке на имя корабля в 440001.xml, что я прописал в этой доп строке 114. Команда "create ship" ессно нифига не создавала.
|
|
|
RAider
405 EGP
    Рейтинг канала: 2(21) Репутация: 133 Сообщения: 1294 Откуда: Таганрог Зарегистрирован: 08.07.2003
 |
|
Заметил странность - Кхаакский и Ксенский М0 имеют субтип empty. то есть такого субтипа вообще нету в выборе... есть какаято особенная причина?
_________________ Smart is the new Sexy. |
|
|
Perseus
888 EGP
       Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Молодцы!!!
|
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
akm:
Цитата: |
...Открыл x2story.obj и подправил тип на М5.
...Интересно, что открыв прогой модифицированный x2story.obj, она не отобразила тип М5 напротив SS_SH_E_CARRIER
|
Хм. Если прога не отобразила введенные исправления, то это либо глюк, либо файл не сохранился. Я после изменений жму кнопку "Save" и сохраняю всегда в другом файле. Потом копирую его в папку Х2 на место x2story.obj. Может я где ошибок наваял. Посмотри внимательно - как возникает глюк. При повторном чтении измененного файла исправленные строчки обязательно должны подсвечиваются... Корабль создаю create ship, но параметры подставлял в ручную... Чтобы не ошибиться, еще 7 параметр в строке tships.txt сталю от балды - чтоб писало "ReadText".
Цитата: |
Ну у редактора скриптов никаких ограничений нет.
|
О! Это обнадеживает! Пасибо!
|
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
RAider:
Цитата: |
Заметил странность - Кхаакский и Ксенский М0 имеют субтип empty. то есть такого субтипа вообще нету в выборе... есть какаято особенная причина?
|
Я пока не нашел индентификатор объекта для М0. Ксенонского похоже вообще нет. Кхаакский создается во время прохождения сюжета, но какую строчку берет из tships пока непонятно.
|
|
|
RAider
405 EGP
    Рейтинг канала: 2(21) Репутация: 133 Сообщения: 1294 Откуда: Таганрог Зарегистрирован: 08.07.2003
 |
|
Там же есть K_M0 - 111ая строка. А рядом с ним - генераторы, что с тела М0 расстреливать нужно.
_________________ Smart is the new Sexy. |
|
|
RAider
405 EGP
    Рейтинг канала: 2(21) Репутация: 133 Сообщения: 1294 Откуда: Таганрог Зарегистрирован: 08.07.2003
 |
|
Сейчас потестил:
С x-shuttle
1)меняю Х-шаттлу класс на М6 в obj.
2)в тшипсе меняю ему класс на М6.
3)загружаю игру, покупаю шаттл - указываю стыковаться - стыкуется как обычный М3.
С E_M1
1)выставляю ему класс М1 в obj.
2)копирую на место его строки в Тшипс - строку Boron Shark, только делаю ей искусственный ридтекст
3)запускаю игру, долго рыщу в менюшке выбора тип корабля для команды create ship. нету там ни ридтекста, ни второго шарка.
вобщем, чего-то у меня не работает. хз почему. может попробовать все objы вот так поредактировать?
_________________ Smart is the new Sexy. |
|
|
akm
470 EGP
    Рейтинг канала: 1(4) Репутация: 173 Сообщения: 1638 Откуда: Паразит Прайм Зарегистрирован: 23.10.2002
 |
|
RAider : |
3)запускаю игру, долго рыщу в менюшке выбора тип корабля для команды create ship. нету там ни ридтекста, ни второго шарка.
|
И не будет скорее всего. Ограничение скрипт-редактора, т.е. видимо где-то в другом месте obj задется список доступных типов кореблей для скрипт-редактора. Но это не проблема Тип произвольного корабля (даже более 114) можно получить так:
$shiptype = get ware of maintype 7 and subtype 55 (в главном списке торговых команд)
$ship = create ship $shiptype ...
Это для E_M1 (его субтип 55).
|
|
|
DarkSideMaster
1340 EGP
        Репутация: 170 Сообщения: 9990 Откуда: планета Коррибан Зарегистрирован: 05.05.2004
 |
|
Нет слов.... Молодцы!!!!
_________________ Править должна не сила, а страх перед этой силой! |
|
|
RAider
405 EGP
    Рейтинг канала: 2(21) Репутация: 133 Сообщения: 1294 Откуда: Таганрог Зарегистрирован: 08.07.2003
 |
|
2 akm - я еще счас через редактор вселенной пробовал. та же самая история ...
_________________ Smart is the new Sexy. |
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
RAider:
Цитата: |
С x-shuttle
1)меняю Х-шаттлу класс на М6 в obj.
2)в тшипсе меняю ему класс на М6.
3)загружаю игру, покупаю шаттл - указываю стыковаться - стыкуется как обычный М3.
|
Дико извиняюсь, я не указал самое главное условие - игру нужно начать сначала!
|
|
|
Perseus
888 EGP
       Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Сегодня вечером потестим еще, попробуем...
|
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
RAider:
Цитата: |
2 akm - я еще счас через редактор вселенной пробовал. та же самая история
|
При загрузке игрушки в режиме редактора галактики начальная инициализация выполняется x2galedit.obj. Посему патчить нужно уже 2 файла (story и galedit). Так как код там немного отличается пришлось программку немного подправить. Теперь должна корректно патчить все другие obj-файлы. RAider - спасибо, сразу не заметил.
Программу обновил. Ссылка в первом посте.
|
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
RAider:
Цитата: |
Там же есть K_M0 - 111ая строка. А рядом с ним - генераторы, что с тела М0 расстреливать нужно.
|
Строчка есть, но индентификатор объекта внутри obj-файла найти не смог.
Там у каждого корабля свой идентификатор. Это число определяет класс корабля.
TL: $07F0
TS: $07EF
M1: $07E5
M2: $07E6
M3: $07E7
M4: $07E8
M5: $07E9
TSP: $07F3
GO: $07F7
M6: $07EA
TP: $07EE
THINKER: $0853
ASTRON: $0810
UFO: $0814
SAT: $0811
SAT2: $0820
MINE: $0812
FIGHTDRONE: $0813
ORBITALLASER: $07DB
SPACEFLY: $0816
BEACON: $080C
Это то что сразу обнаружилось. Я думаю и все остальные отыщутся
Perseus:
Цитата: |
Сегодня вечером потестим еще, попробуем...
|
Давайте! С пристрастием! Должно получиться.
|
|
|
Perseus
888 EGP
       Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
ОК. Забрано. Потестим с новой...
|
|
|
CheckerTwo
550 EGP
     Рейтинг канала: 4(96) Репутация: 103 Сообщения: 412 Откуда: Tomsk Зарегистрирован: 18.08.2004
 |
|
Perseus:
Цитата: |
ОК. Забрано. Потестим с новой...
|
И обсудить бы - как это все дело (т.е. процесс патчания) должен выглядеть для конечных пользователей? Как бы это все автоматизировать, что ли... Чтоб не грузить всех и каждого мутной структурой классов и идентификаторов
|
|
|
DarkSoul
388 EGP
  Репутация: 84 Сообщения: 1146 Откуда: Одесса Зарегистрирован: 04.04.2005
 |
|
2CheckerTwo
Закинь прогу в SFX архиве, zip у меня не качается.
_________________ Кто к нам с чем за чем, тот от того и того!!! |
|
|
Vitalii
955 EGP
     Рейтинг канала: 1(3) Репутация: 249 Сообщения: 7214 Откуда: Тула Зарегистрирован: 13.08.2002
 |
|
DarkSoul : |
2CheckerTwo
Закинь прогу в SFX архиве, zip у меня не качается.
|
первый раз такой изврат вижу...
скорее зарежут exe файл, чем zip...
_________________ Связь - это как воздух, незаметна, пока не испортишь. |
|
|
DarkSoul
388 EGP
  Репутация: 84 Сообщения: 1146 Откуда: Одесса Зарегистрирован: 04.04.2005
 |
|
Короче, дайте другую ссылку.
_________________ Кто к нам с чем за чем, тот от того и того!!! |
|
|
|
|
|
Канал X2: The Threat: «Увеличиваем число доступных кораблей» |
|