|
|
|
Канал X-Tension/X-BTF: «Информация по захвату в XT кораблей M0,M1,M2,TL.» |
|
|
DF
300 EGP
   Рейтинг канала: 5(118) Репутация: 47 Сообщения: 478
Зарегистрирован: 06.09.2003
 |
|
ВНИМАНИЕ! Есть новая информация. Смотрите мое 3-е сообщение.
Я придумал способ захвата в XT кораблей любых классов (M1,M2,TL), причем это можно делать без модификации EXE или сейва. Наверно я единственный, кто летал именно на кораблях М1 и М2, так как вроде бы все остальные делали М2 из кораблей других классов, изначально доступных игроку путем изменения их параметров в EXE.
Дело в том, что фраза из FAQ: «кораблями классов М1 и М2 игрок владеть не может – это не реализовано программно» не совсем соответствует действительности (даже наверно совсем не соответствует). Там не «не реализован их захват» а «реализован их незахват», а следовательно это можно и отключить. Кроме того невозможно захватить корабль без кокпита, так что если хотите захватывать ксенонские М2 им всеже придется поставить кокпит редактором кораблей.
Класс М0 вообще подлежит захвату, надо только поставить ему кокпит.
Также рекомендую проставить мощность хорнета 624999 для ускорения процесса.
Для реализации моего метода вам понадобиться дебагер SoftIce. Запускаем его, запускаем XT (желательно с отключенной античит-защитой), загружаем ваш любимый сейв вызываем SI и пишем: D 015F:01ECD730. Должно быть:
015F:01ECD730 31 00 05 00 92 EB 09 00
015F:01ECD738 33 00 05 00 5F EC - Команда условного перехода в скрипте
015F:01ECD73E 05 00 02 00 09 00
(ВНИМАНИЕ! У кого XT с распакованным 01.dat – поищите эти байты в файлах и сообщите о результатах. Можете попробовать поменять 6 байт по адресу 015F:01ECD738 – может что то и получиться, но за последствия я не отвечаю и код NOP-а в скриптах не знаю).
Если у вас по этим адресам другое – ищите эти байты в памяти (S).
Далее пишем:
MACRO CAP1="T A;R EDX=1;X;"
MACRO CAP="BPM 015F:01ECD738 DO \"CAP1\";"
Теперь по команде CAP будет включаться возможность захвата. Отключается – BC *. При включенном CAP желательно заниматься непосредственно захватом, для save/load обязательно отключайте. Я использовал XT v2.1 с этого сайта + редактор xtpatch.zip (~32kb).
Теперь о том, как все это работает.
В XT многие процедуры - в том числе и процедура захвата кораблей - реализованы на ихнем скриптовом языке (в X2 они только опублекуют доки по нему и компилятор). По адресу 015F:01ECD738 находиться команда условного перехода (код команды скрипта занимает 2 байта, в данном случае - код 0033h; следующие 4 байта - параметры), результат выполнения которой зависит от того, позволено ли захватывать корабль данного класса или нет. Макрос SI CAP1 делает так, чтобы результат всегда был одинаковым – захватывать можно.
Некоторые полезные точки (это места в программе - надо ставить BPX):
0157:004564C2 8B 76 04 8B 55 E8 8B C6 - Выполняется при попадании в корабли
0157:004BF8F0 8B C2 8B 48 04 E8 06 2C 00 00 – Выполниться при возможности захвата
0157:004018B2 8B 55 F8 0F BF 02 83 C2 02 - Начало цикла интерпретатора скриптов
Обратите внимание на точку 0157:004BF8F0 – если при возможности захвата (щиты <5%) это место не выполняется – значит у вас нет возможности захватить этот корабль (тем, кто жалуется что у него ни один корабль не захватывается).
Возможности классов М1 и М2.
Возможности практически одинаковые – оба обладают функцией авианосца (и М2!) – можно стыковаться стык.компом или приказать истребителю сесть, однако с М2 вам лично взлететь не удасться – XT повиснет, а если приказать истребителю взлететь – он застрянет в шлюзе навсегда. Истребителям можно взлетать с М2 если он находиться в другом секторе.
Меню comm не работает – оно есть, но не вызывается (у М0 есть навигационные команды).
Кораблям М0..2 можно «дать команду» kill all enemies. Для этого надо заджампдрайвить его в нужный сектор и когда он туда прилетит у него будет эта команда. Проставляем ему кто враги и он будет их мочить. Прикольно закидывать ксенонские М2 в их же сектора – получается прям Star Wars. У М2 скорость лучше не апгрейдить до максимума, а то он начинает летать вокруг медленных ксенонов не успевая на них развернуться.
Похоже, что захваченные М1, М2 не респавнятся, так что ксенонов можно совсем лишить крейсеров.
При захвате М1 на нем остаются все корабли, причем если их вытрясти из М1 и потом его захватить то все приписанные к нему корабли так и остануться приписанными а при их уничтожении новые полетят с верфи с командой садиться и сядут даже если они враги и М1 будет их сбивать – все равно некоторые прорвуться => npc корабли похоже могут садиться вообще на любую станцию.
При личном управлении М1 и М2 мало чем отличаются от других кораблей. Можно пристыковаться к верфи стык.компом. На свою верфь (после персея) стыковаться не хотят, как и TL – похоже это вовсе и не верфь, а только кажется. На М2 с полным вооружением можно без проблем вынести всю галактику. Станции выносятся за ~15 секунд – успевает вылететь максимум 1 корабль.
Вроде все.
P.S. Я не явлаюсь разработчиком EGOSOFT, все это получено мной лично. Если у кого-то что-то не получается или что-нибудь грохнули – это ваши проблемы.
P.P.S. Если у кого есть инфа по скриптам XT(соответствие код<=> мнемоника; компилятор/декомпилятор и т.п.), компилятор скриптов X2 – просьба поделиться.
_________________ По моему так. |
|
|
Рыб
1242 EGP
     Рейтинг канала: 3(36) Репутация: 340 Сообщения: 7461
Зарегистрирован: 05.06.2001
 |
|
Здорово, может вечером попробую.
P.S.: а где этот SoftIce можно взять?
|
|
|
Pegasus
1039 EGP
     Репутация: 335 Сообщения: 7085 Откуда: НН Зарегистрирован: 09.12.2002
 |
|
SoftIce у меня где-то валялся...
Можно попробовать, но
PS Читеров давить
_________________ There shall be wings! |
|
|
Пилюлькин
500 EGP
  Рейтинг канала: 3(36) Репутация: 46 Сообщения: 1352 Откуда: Ростов Зарегистрирован: 22.06.2001
 |
|
Очень полезное изобретение.
DF - молодец!
|
|
|
CTPELOK
145 EGP
  Рейтинг канала: 4(75) Репутация: 25 Сообщения: 375
Зарегистрирован: 20.05.2003
 |
|
Ты крут, чувак! Ксенон М0 рулит, тока зараза неповоротливая и еще плюс медленная до жути (редактор кораблей нам помогет
Софт-Айс - лучший!
_________________ То пропадаю, то снова появляюсь |
|
|
Пассажир
|
|
Pegasus : |
SoftIce у меня где-то валялся...
Можно попробовать, но
PS Читеров давить
|
ИМХО это не читерство, это учестнение игры! Нечестно что разработчики с самого начала не дали этой возможности. Миссию "Персей" пройду и обязательно попробую.
|
|
|
metas
520 EGP
    Репутация: 62 Сообщения: 1647 Откуда: Татарстан г. Казань Зарегистрирован: 23.06.2002
 |
|
Цитата: |
Также рекомендую проставить мощность хорнета 624999 для ускорения процесса.
|
Здесь ужеали о том что можно таким образом МО захватить, но из более 300 попыток у меня не сработала ни одна. Всё же я соглашусь с тем что МО захватить возможно И происходило это без влезания в код программы. Таким же образом захватывается УФО
Цитата: |
npc корабли похоже могут садиться вообще на любую станцию.
|
Почти только кажется для всех расс есть запрет посадки на ксенонские батареечницы
_________________ По мне плачет только свеча на холодной заре |
|
|
Рыб
1242 EGP
     Рейтинг канала: 3(36) Репутация: 340 Сообщения: 7461
Зарегистрирован: 05.06.2001
 |
|
metas : |
Всё же я соглашусь с тем что МО захватить возможно И происходило это без влезания в код программы. Таким же образом захватывается УФО
.
|
Ну вот, опять , если несложно, опиши по пунктам как это возможно СОВСЕМ не трогая савки и код программы.
|
|
|
metas
520 EGP
    Репутация: 62 Сообщения: 1647 Откуда: Татарстан г. Казань Зарегистрирован: 23.06.2002
 |
|
Цитата: |
если несложно, опиши по пунктам как это возможно СОВСЕМ не трогая савки и код программы.
|
Много пишут в факе о том что нельзя захватить М1 и М2. А про мо ты слышал? Я нет. Попытайся свалить его хорнетами не изменёнными ;
_________________ По мне плачет только свеча на холодной заре |
|
|
DF
300 EGP
   Рейтинг канала: 5(118) Репутация: 47 Сообщения: 478
Зарегистрирован: 06.09.2003
 |
|
Класс М0 предполагает захват, но в оригинальном 2.1 у него нет кокпита, а корабли без кокпита не захватываются. Если поставить М0 кокпит то он будет захватываться.
М1 и М2 не захватываются так как скрипт захвата не дает их захватывать (а ксенонские еще и кокпита не имеют).
Кстати я просил тех, у кого XT с распакованным 01.dat (русские версии XT), поискать в файлах XT строку 33 00 05 00 5F EC 05 00 02 00 09 00. Неужели всем лень?
P.S. Кто нибудь кроме меня захватил М2?
_________________ По моему так. |
|
|
Dav Tert
140 EGP
  Репутация: 20 Сообщения: 371 Откуда: Санкт-Петербург Зарегистрирован: 20.02.2002
 |
|
Поискал, в виндовс командаре забил строчку, поставаил галочку - искать "Hex значения". Поиск ни чего не дал (такие файлы не найдены).
_________________ маньяк-псих |
|
|
Nukem forever
100 EGP
 Репутация: 2 Сообщения: 124 Откуда: Санкт-Петербург Зарегистрирован: 03.09.2002
 |
|
Насчет "где найти SoftIce": долго мучался с поиском, сейчас качаю "Soft-ICE for Win9x V4.05" с ссылки http://www.newhua.com/down/si405w9x.zip, однако скорость всего 3 k/sec. Весит 5.6 Mb. Ключ есть прямо в архиве. Бачит ли ещё не знаю, но проверю и напишу.
Ближайшая цель - захват Teladi Phoenix в версии от тов. Perseus.
О результате опятьже сообщю, однако говорю сразу - руки у меня кривые
---
Скачал, вроде работает , сейчас отгадываю куда у меня вставлена мышь... (всмысле в порт какой)
|
|
|
Spy
|
|
ОТЛИЧНО!!! только небольшое дополнение от меня лично. для редактирования памяти можно использовать не только софайс( ну не встает он на ХРяка). можно использовать тот же читфайндер, хакмен, и другие проги, позволяющие осуществлять прямой доступ к памяти.
|
|
|
DF
300 EGP
   Рейтинг канала: 5(118) Репутация: 47 Сообщения: 478
Зарегистрирован: 06.09.2003
 |
|
На днях я скачал unpack для 01.dat и придумал новый способ захвата М2, проще предыдущего.
Есть 2 варианта реализации этого метода:
1) Для всех. Понадобиться SoftIce или его подобие – любая прога, которой можно править память.
Запускаем XT, находим в памяти строку: 015F:01ECD736 09 00 33 00 05 00 5F EC, заменяем 09 на 0А. Все! Можно захватывать М2.
2) Для тех, у кого XT с распакованным 01.dat.
В файле 001.obj со смещением 0BD72B заменяем 09 на 0А. Запускаем XT и вперед.
Немного комментариев:
В 001.obj хранятся почти все скрипты, используемые в XT (есть еще 002.obj). Коды там немного отличаются от кодов в памяти: 09 00 33 00 05 EC 5F 00 – байты EC и 00 поменяны местами (делать им там в egosoft больше нечего что ли как только писать такой изврат? А потом им памяти мало и тормозит все.)
Можно распаковать 01.dat unpack-ом с этого сайта, но у меня в такой версии почему то сейвы не загружались – вылетало с недопустимой операцией, но new game работает. Смотрел в памяти – вроде все ок, но захват не проверял – лень.
Пока все.
_________________ По моему так. |
|
|
RDestroyer
175 EGP
  Репутация: 22 Сообщения: 1021
Зарегистрирован: 15.05.2002
 |
|
Круто! DF большое спасибо! Да за это тебя всей конфой надо целый год каждую неделю отпипечивать! Ну наконец то я без ломания экзешника сделаю себе настоящий военный ФЛОТ!
|
|
|
Perseus
888 EGP
       Рейтинг канала: 4(87) Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Молодчина DF!
|
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 3(33) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Захватился с первого раза! - http://dimaxx.nightmail.ru/01.jpg
Но!!!
1) Состыковаться можно
2) И лазеры, и щиты могут остаться
3) Скрипт полета у него сохранился и активизировался через пять секунд - http://dimaxx.nightmail.ru/02.jpg
4) На связь не выходит - послать никуда нельзя
5) При вылете с него - глючит
Так что радость преждевременная...
|
|
|
Perseus
888 EGP
       Рейтинг канала: 4(87) Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Абсолютно аналогично. Вот мои скрины:
http://perseus.elite-games.ru/Download/000073.jpg
http://perseus.elite-games.ru/Download/000074.jpg
http://perseus.elite-games.ru/Download/000075.jpg
|
|
|
Perseus
888 EGP
       Рейтинг канала: 4(87) Репутация: 158 Сообщения: 2122 Откуда: Челябинск Зарегистрирован: 13.02.2002
 |
|
Использовал распакованную версию. Просто изменил значения в 001.obj В ней пропали некоторые надписи в меню, что видно на скринах. Так что действительно надо еще работать...
|
|
|
Dimaxx
1016 EGP
      Рейтинг канала: 3(33) Репутация: 204 Сообщения: 5811 Откуда: Северодвинск Зарегистрирован: 26.06.2002
 |
|
Да, еще добавлю...
5) Во врата самоу на нем не влететь
6) Ни один корабль из него не вылетает
7) Джампдрайвом воспользоваться можно, но при входе в сектор активизируется скрипт и М2 не слушается управления
|
|
|
|
|
|
Канал X-Tension/X-BTF: «Информация по захвату в XT кораблей M0,M1,M2,TL.» |
|