Полная Версия: Модификация BOS.EXE
Страницы: 1, 2, 3, 4, 5
Hex
QUOTE
 — блокирование рандомизации цвета накидки (армора);

F7FFC 83 33
F7FFD E1 С9
F7FFE 07 90

QUOTE
 — 'Display World Text' блокирует (останавливает) фоновую музыку;

Подозреваю это связано с тем, что при выводе World Text проигрывается звук. За счет этого прерывается тот который проигрывается в текущий момент.
Hmt
QUOTE
F7FFC 83 33
F7FFD E1 С9
F7FFE 07 90
Спасибо, только это кажись не накидка :)
Это похоже на "трусы с подтяжками" ... на мутантах проверил ...
QUOTE
при выводе World Text проигрывается звук. За счет этого прерывается тот который проигрывается в текущий момент.
Вообще фоновая музыка и речь прекрасно уживаются вместе (это я еще по говорящим диалогам знаю).
Возможно ли "пофиксить" это в данном случае c Display World Text ?
Hex
QUOTE
Спасибо, только это кажись не накидка :)

Блин, это был "Team color" :)
Hmt
QUOTE
Блин, это был "Team color" :)
А каким образом идет соответствие приведенных чисел с цветом ?
Я имею ввиду как можно самому "подобрать" другой цвет ?
(или это не просто)
Hex
QUOTE
А каким образом идет соответствие приведенных чисел с цветом ?

Сложным. В ecx должен оказаться индекс цвета. Я делаю замену команды
CODE
and  ecx, 7

на команду
CODE
xor  ecx, ecx

Что приводит к тому, что в ecx 0. Т.е. индекс равен 0.

На счет цвета базы. Можно попробовать вот такой патч:
1E21F0 0F 90
1E21F1 84 E9
Здесь довольно сложная функция смены цвета базы, которая вызывается в момент, когда игрок попадает в область видимости. Поэтому я не уверен что это правильно. А бродить в поисках правильных случайных встреч — нет времени.
Hmt
QUOTE
Можно попробовать вот такой патч:
невозможно сказать на 100%, но больше похоже что не работает. Ну или как-то странно работает.
Hex
Вот и я не могу убедиться. Как бы нам это проверить, чтобы не бегать в поисках случайных встреч?
Hmt
QUOTE
Вот и не могу убедиться, как бы нам это проверить, чтобы не бегать в поисках случайных встреч?
Обратил внимание, что после патча исчезли кружки под персонажами.
А броня по прежнему красится по разному :(
Hex
А если такой вариант:
1E20C1 0F 90
1E20C2 84 E9
т.е. этот патч исключает предидущий, патчить только эти 2 байта.
Seedee
QUOTE
Отправлено: 21 окт 11 23:50
Нашел где обрабатываются перки:
tag
divineFavour
hideOfScars
toughHide
negotiator
masterThief
thief
medic
mrFixit
Если чего-то из них хочется изменить — говорите, скажу смещения.


А можно ли прояснить ситуацию с перком Sniper? Он явно не работает в FT, как работал в Fallout или Fallout 2.

Не работает на этой версии — аглицкий оригинал 1.27. Любые параметры персонажа с двумя оговорками: 1) персонаж может попасть по цели и 2) у персонажа 10 в удаче. Любые режимы стрельбы. В пошаговом не тестировал.
Hmt
QUOTE
А если такой вариант:
1E20C1 0F 90
1E20C2 84 E9
Вот как мне это видится (может я и не прав). Отсутствует "подсветка" всех целей (нет круга под ногами).
Ощущение такое, что все кто находятся в поле зрения игрока, раскрашиваются одинаковым цветом,
но цвет от встречи к встрече рандомно меняется.
Hex
Значит функция правильная... Осталось понять как именно ее исправить так, чтобы и волки сыты и овцы целы...
QUOTE
цвет от встречи к встрече рандомно меняется.

Так оно и есть. Генерится рандомное число для каждой встречи, от него извратным способом вычисляется цвет...

Отправлено: 28 окт 11 22:53
Во, Придумал! Можно просто эту рандомизацию перенаправить.
1E23E0 B3 XX

где XX =
1) D8 — hair color
2) EF — team color
3) C7 — skin color

Т.е. эффект от 1E23E0 B3 D8 — будет использоваться рандомный цвет, который собирались использовать для base, как цвет для hair. Т.е. изменится цвет волос :)
Hmt
QUOTE
1E23E0 B3 XX
Игра стала крайне нестабильна, происходят частые "вылеты" в разных местах :(
(проверял на всех значениях D8, EF, C7).
Hex
Блин, оказалось что эта функция просто увеличивает интенсивность цвета когда игрок видит что-либо. Я то просто ловил запись в baseColor... Нужен стабильный способ получения разноцветных персонажей. Потому что случайные встречи тоже не катят.
Hex
А чтобы Гули не бегали — переломайте им ноги! :)
В смысле проще всего будет исправить entity-файлы для гулей и проставить им сломаные ноги. Я знаю, где можно блокировать переключение на бег, но проверку на расу здесь никак не вставить.

Отправлено: 30 окт 11 00:22
Про звуки и display world text. Я смотрел на примере тестовой кампании tagname. Когда подходишь man000 к двери, то display world text пытается воспроизвести campaigns/missions/core/man000.mp3 которого нет.

283BE8 01 00 — Патч, отключающий отключение музыки :)

Отправлено: 30 окт 11 02:12
Первая часть патча бага стрельбы очередью:

211714 8B EB
211715 C6 0D
211723 90 80
211724 90 3E
211725 90 00
211726 90 75
211727 90 EE
211728 90 80
211729 90 4E
21172A 90 03
21172B 90 01
21172C 90 EB
21172D 90 E8

Показывается крестик вместо 0%, когда вероятность попадания 0%, но сама стрельба не блокируется.
Hmt
QUOTE
Я знаю, где можно блокировать переключение на бег
т.е небегать будут все :)
QUOTE
display world text пытается воспроизвести campaigns/missions/core/man000.mp3
Жадные разрабы ... не могли финальные "базары" wav-файлом сделать :)
QUOTE
283BE8 01 00 — Патч, отключающий отключение музыки
Нее ... все равно "рубит" музыку. После нажатия кнопки "готово" музыка стартует сначала :(
Hex
QUOTE
Нее ... все равно "рубит" музыку. После нажатия кнопки "готово" музыка стартует сначала :(

А у меня работает. Пруфвидео:
http://www.metacafe.com/watch/7629686/bos_world_text/
p.s. за рианну даже такую урезаную меня на ютубе забанили, копирасты хреновы.
Two Eyed Yum
Hex, вот, почему я люблю Линкин Парк — у них есть треки, которые можно использовать безвозмездно.

Hmt, слушай, а ты не в один и тот же экзешник пишешь все изменения? А то вдруг ты чего случайно сдвинул/переписал...
Hmt
QUOTE
А у меня работает.
Музыка каким образом на карту попала ? Через импорт звуковой зоны ? Может в этом дело ...
QUOTE
Hmt, слушай, а ты не в один и тот же экзешник пишешь все изменения? А то вдруг ты чего случайно сдвинул/переписал...
Да не, я все изменения всегда отслеживаю (у меня даже таблица составлена).
Hex
QUOTE
Музыка каким образом на карту попала ?

скинул mp3 в \core\music\custom, включил, проверил что музыка прерывается при Display World Text. Пропатчил, музыка не прерывается.
Hmt
QUOTE
ambientSoundTable = {music}
music_numOfFiles = {1}
music_file_0 = {music/06vault.mp3}
music_zone = {music}
Музыка портированная таким способом и музыка включенная через папку custom, разные вещи :(
Когда звуковая зона впихнута в карту + включен custom — играют два mp3 файла одновременно.
Один прерывается командой 'Display World Text' (нужный), а тот который кастом, нет.
Hex
Я так люблю когда вы рассказываете что вам действительно надо, после того как я уже что-то сделал :)

Так что вам все-таки надо от Display World Text?
Hmt
QUOTE
Так что вам все-таки надо от Display World Text?
Чтобы он не прерывал фоновую музыку, ту которая штатно играет на картах :)
Как-то надо себя заставить выражать мысли яснее ... блин !
Hex
т.е. надо чтобы не выключался звук который:
music_file_0 = {music/06vault.mp3}
Hmt
QUOTE
т.е. надо чтобы не выключался звук который:
music_file_0 = {music/06vault.mp3}
Ну не только 06vault.mp3 :)
Там может быть и сотня переключающихся mp3, все зависит от портируемого скрипта звуковой зоны.
У меня (для примера) в диалоге сделано 15 mp3 файлов, которые проигрываются случайным образом.

Я Прошу прощения, что нечетко "поставил-объяснил" искомое ...
Для меня custom это дикость какая-то, я об ней даже не подумал :)
Hex
QUOTE
У меня (для примера) в диалоге сделано 15 mp3 файлов, которые проигрываются случайным образом.

А у меня нет таких примеров...
Hmt
QUOTE
А у меня нет таких примеров...
Многострадальный tagname №3.
Впредь постараюсь давать примеры раньше пожеланий.
Hex
Вот:
D0487 01 00

Предлагаю юзать его совместно с:
283BE8 01 00

Чтобы и та и другая музыка не отключалась.
Hmt
QUOTE
D0487 01 00
Шикарно, вот теперь полный порядок :)
Еще один маленький кусочек счастья, Спасибо !
Hex
Баг очереди, основываясь на использовании шанса попадания, исправить не получится. Здесь код написан так, что просчет шанса попадания и код принимающий решение о том, можно ли выполнить действие, находится в разных местах.

Т.е. там где известен шанс попадания, нет возможности как-то вызвать блокирование действия. А там где можно заблокировать, невозможно определить какой процент попадания и кто это стреляет. Вот такая архитектурная жопа.
Buzzil
А никак там +1 к итоговой формуле расчета повреждений не приписать?
Или я неправильно понимаю? Или мы такое еще не умеем?
Hex
Не понял что имеется в виду.
Hmt
Еще немного про музыку ... может это тоже где то рядом :) При использовании родного диалога FT, также происходит выключение фоновой музыки.
Специальный пример тут не нужен, в начале стандартной игры можно поговорить со старейшиной ... музыка "рубанется". Можно и это исправить ?

Спасибо.
Buzzil
QUOTE
Не понял что имеется в виду.


Насколько я понимаю, баг работает при 0% шансе на попадание. Тогда если изменить формулу расчета попадания таким образом, чтобы всегда сохранялась минимальная вероятность в 1% в пределах дальности стрельбы оружия, то, возможно, это устранило бы неприятные эффекты.

Возможно, в формуле находятся "пустые" слагаемые, которые и есть смысл заменить (например у брони существует параметр Camouflage, который, видимо, никак не пользуется; возможно учет этого значения также находится в формуле).

Hex
опять ничего не понял...
QUOTE
Насколько я понимаю, баг работает при 0% шансе на попадание.

Баг работает при вычислении, кого поразит burst. Там нет проверки "если шанс = 0, повредить всех кто в зоне поражения". Какая-то одна маленькая веточка огромного дерева ветвлений условий где-то все портит.
Two Eyed Yum
QUOTE
Баг работает при вычислении, кого поразит burst. Там нет проверки "если шанс = 0, повредить всех кто в зоне поражения". Какая-то одна маленькая веточка огромного дерева ветвлений условий где-то все портит.


По-прежнему будем благодарны, если вы как-нибудь найдете время, чтобы прошерстить это дерево. Если нет настроения, оставьте эту задачу до лучших времен. Хоть через несколько месяцев, но хотелось бы видеть этот баг исправленным. :)
Hex
пробуйте
214D2E 7F 7C

Вычисление попаданий при стрельбе очередью делается следующим образом:
делитель = (100 — скил требуемый оружием) или = 0 если скил > 100
делитель = делитель + сумма всех шансов попасть во всех кто в зоне поражения
делимое = шанс попасть в цель выбранную движком (это не обязательно та в которую целился)
количество пуль потраченных на цель = (делимое / делитель) * количество выстрелов в очереди + 0.5
Естественно "количество пуль потраченных на цель" округляется до целого в меньшую сторону.

Если количество пуль потраченных на цель < количества выпущенных пуль, то просчитывается вероятность попадания каждой отдельной пули. Если равно, то все сразу попали и отдельное попадание для отдельной пули не рассчитывается.

В общем оно проходится по всем объектам, которые в зоне поражения, для каждого просчитывает сколько пуль до него долетело, пока не закончатся пули. Т.е. пули не распределяются по вероятности попадания. Они распределяются от рандома на количество.

p.s. На трупы пули не расходуются, не то что в F2.
Hex
Ну чего молчите? :) Не верите своему счастью?
Hmt
QUOTE
Ну чего молчите? :) Не верите своему счастью?
Верим :)
Но лично я не знаю как это проверять,
я вообще не знаю о чем речь.
У меня другие задачи и другие низменные цели ...
Hex
QUOTE
я вообще не знаю о чем речь.

Если стрелять очередью в персонажа, вероятность попадания в которого = 0%, то очередь с вероятностью 100% попадет в любых врагов на линии огня.

Отправлено: 1 ноя 11 22:54
Но вообще-то про эту проблему я узнал из вот этого сообщения поэтому мне совсем интересно, как это так вышло что "я вообще не знаю о чем речь." :)
Buzzil
2Hex

Вроде как 'Двуглазый Юм' курирует тему с багом очереди. Ну... есть оно, вроде, есть, но своими глазами не каждый видел =)

Так что появится Two Eyed Yum, пусть тестирует.


А пока его нет, обновим список пожеланий:

1. При активации стандартного диалога FT (по идее должна проходить каким-то боком к ClickSpeech) выключается фоновая музыка. Хотеть: чтобы не выключалась.

2. При отсутствии второго человека-игрока в МП игре наступает конец игры. Хотеть: чтобы конец игры не наступал автоматически.

3. Рандоматизация цветов. Хотеть: рандом только на волосы(hair) и\или штанцы(base).

4. Гули бегают. Хотеть: гули не должны бегать.
А если пофиксить им сломанные ноги, чтобы не лечились? И экшн поинтов понизить. Но тут еще в FT Tools нужно полазить.

5. Не работают всякие Требования, Эффекты и Модификаторы у всякого снаряжения. Хотеть: чтобы работали.
Нужно пока собрать инфу о том что работает, а что нет. А то и сам толком не помню =)

Two Eyed Yum
QUOTE (Hex)
как это так вышло что "я вообще не знаю о чем речь." :)

QUOTE
я вообще не знаю о чем речь.
У меня другие задачи и другие низменные цели ...

Все правильно, это МОЕ счастье, все без остатка :)
Спасибо огромное, просто я до сих пор не добирался до редактора — у меня была даже карта для теста бага очереди, но я ее нечаянно выпилил, вот сижу, новую клепаю.

Hmt, для твоего текущего мода это действительно пока неважно, а вот для моего или "Современных стволов" — крайне актуально, ибо без этого фикса Бегемоты бесят. Нет, БЕСЯТ!

QUOTE
4. Гули бегают. Хотеть: гули не должны бегать.
А если пофиксить им сломанные ноги, чтобы не лечились? И экшн поинтов понизить. Но тут еще в FT Tools нужно полазить.

Возможно, меня захотят убить, но при мысли обо всех этих извращениях я подумал, что проще пересобрать спрайт с помощью какого-нибудь внешнего волшебного скрипта (или программы, не знаю), чтобы удалить все анимации бега. Чесслово, проще копать в этом направлении. Удалять — не добавлять ;) Как только будут удалены эти анимации, гули автоматом перестанут бегать, и никаких побочных эффектов не должно случиться.

И еще:
QUOTE
А если пофиксить им сломанные ноги, чтобы не лечились?

Да, прощайте, гули в команде. Потому что через несколько драк один из персонажей не сможет двигаться. Перелом обеих ног — иммобилизация, и если лечение отключено...

QUOTE
5. Не работают всякие Требования, Эффекты и Модификаторы у всякого снаряжения. Хотеть: чтобы работали.
Нужно пока собрать инфу о том что работает, а что нет. А то и сам толком не помню =)

Кстати, сегодня шерстил Мастерские своим модераторским оком — уже почти созрела идея собрать в одну тему все, что "Не работает, даже если вам кажется, что работает. Нет, даже если вам логика подсказывает, что должно работать — все равно не работает. Нет, нас не волнует, что вам друг что-то рассказывал по пьяни — не работает и все!" Извиняюсь за еще один оффтоп.
Хм, могу примерно вынуть из залежей памяти:
1. "Требования" — только основные характеристики. Значения скиллов, наличие перков или трейтов — все это игнорируется.
2. "Модификаторы" — по-разному...
2а. Броня исправно дает бонусы к хар-кам, скиллам, но не добавляет трейты или перки (жаль, броня с встроенным "бесшумным бегом" была бы здоровским ништяком).
2б. Оружие, емнип, вообще ничего не добавляет.
2в. Используемые предметы (отмычки, инструменты, сумки доктора) дают бонусы к скиллам и характеристикам (в частности, стелсбой в "Современных стволах" сделан на основе одного из указанных предметов), но перки и трейты опять в пролете.
2г. Простые предметы без функций (которые можно просто так взять в руку) не дают бонусов. Из-за чего приходится "бонусники" делать способом, указанным выше.
Hmt
QUOTE
Hmt, для твоего текущего мода это действительно пока неважно
До момента решения проблемы с тэгами это было действительно неважно, теперь у меня есть намерения вернуть в мод напарников :)
QUOTE
Как только будут удалены эти анимации, гули автоматом перестанут бегать
Они начнут телепортироваться ... нет тут нужны сломанные ноги, или кардинальное решение на уровне редактирования exe-файла.
QUOTE
Я знаю, где можно блокировать переключение на бег, но проверку на расу здесь никак не вставить.
Я не против отключения бега вообще, посмотреть бы как это будет :)
The Master
QUOTE
отключения бега вообще, посмотреть бы как это будет :)

No, no, please, mister! Должно быть менее суровое решение, разве нет?
Grey
QUOTE
Я не против отключения бега вообще, посмотреть бы как это будет

Какой-то сильно сомнительный вариант. Для походового режима, может, и фиолетово, что бега не будет. Но вот в полуреалтайме он может давать весомое преимущество. К тому же, черепашья скорость ползанья юнитов по карте при необходимости осуществить довольно долгий переход (а даже стандартные карты — зачастую весьма немаленькие) будет отнимать много дополнительного времени. А так как в это время (например, если территория уже очищена, и идёт дежурный сбор хабара) ничего, кроме фактически указания игроком точки маршрута и наблюдение за ползущим юнитом нет — подобные блуждания будут снижать интерес к игровому процессу: игрок всё же приходит в игру за впечатлениями и какой-никакой, но динамикой, а не пешими переходами а-ля ИРЛ по 30км (что есть весьма нудно и однообразно, да и ноги от процесса не в восторге). Понравиться такое решение сможет разве что любителям ультрахардкора.
Buzzil
Хм... Но ведь гули с поврежденными ногами(обеими) вполне себе ходють. Почему у них должна случиться иммобилизация? Кроме всего прочего — гули с переломанным чем-нибудь вполне себе органично выглядят.
(а вот в карманы им ложить докторскую сумку, наверняка, не стоит)

Кстати!
Base Color подкрашивает свой слой спрайта, ага. А на нем, помимо прочего, лежат и "дульные вспышки"!
Т.е. фиолетовые штанцы будут давать нам и фиолетовое пламя из ствола.

А бег отключать действительно не стоит.
Hmt
QUOTE
А бег отключать действительно не стоит.
Я же не утверждаю, что это необходимо сделать,
просто если уже известно смещение ....
QUOTE
посмотреть бы как это будет :)
Two Eyed Yum
QUOTE
Они начнут телепортироваться ... нет тут нужны сломанные ноги, или кардинальное решение на уровне редактирования exe-файла.

1) Почему? о_О Как же тогда живут существа, у которых нет анимации бега?
2) Если это правда, то тогда не удалять анимации бега, а заменять 1:1 анимациями ходьбы. То есть, чтобы Run и Walk анимации были одинаковыми.

QUOTE
Base Color подкрашивает свой слой спрайта, ага. А на нем, помимо прочего, лежат и "дульные вспышки"!
Т.е. фиолетовые штанцы будут давать нам и фиолетовое пламя из ствола.

Именно поэтому этот цвет желательно заблокировать. Заодно напомню, что BASE можно использовать для раскраски инвентарных и "наземных" спрайтов предметов (того же оружия) — такой вот ленивый способ создания "новой" картинки.

QUOTE
(а вот в карманы им ложить докторскую сумку, наверняка, не стоит)

И почему же?

QUOTE
Кроме всего прочего — гули с переломанным чем-нибудь вполне себе органично выглядят.

Все, как один, ага. Суровая челябинская радиация ломает ноги :)
Hex
QUOTE
Все, как один, ага. Суровая челябинская радиация ломает ноги :)
Радиоактивный артрит нижних конечностей.
Имхо убрать анимацию бега вполне нормально.
Hmt
QUOTE
Имхо убрать анимацию бега вполне нормально.
нельзя просто взять и убрать анимацию, и заменить не получится ... (имхо)

Чуть позже, проверил:
Убрать анимацию: "Гуль" стоит на месте.
Заменить анимацию: "Гуль" стоит на месте, семенит ногами :)
QUOTE
Как же тогда живут существа, у которых нет анимации бега?
А таких существ в FT вообще нет :)
(у всех живых персонажей есть анимация бега)
Ваш ответ: