Восстановление камеры в интерьерных пространствах

618

Участник
Автор темы
22
62
Ещё пару лет назад создавал тему с заказом на исправление камеры в интерьерах, сейчас снова заинтересовал этот вопрос, только вот возможности заплатить у меня сейчас нет.

Интерьеры и общая карта игры распределены по разным "пространствам", сама карта находится на нулевом, а интерьеры на других 18. Дело в том, что точка восстановления камеры при прицеливании в этих пространствах находится на разных вертикальных уровнях: в 0 пространстве она восстанавливается выше чем во всех остальных, в остальных восстанавливается одинаково низко (см. видео). Дальней и ближней камеры (которые переключаются на V) это не касается, относится только ко второму режиму (средней дальности), на котором привык играть я и большинство игроков в принципе.

Нужно, чтобы во всех этих пространствах, или, проще говоря, в интерьерах, камера восстанавливалась одинаково, так же высоко, как в 0 пространстве.

Я, как ни пытался, не смог найти адреса который бы отвечал за уровень этой точки, смог найти только адрес памяти в котором записан номер текущего пространства и написал простецкий скрипт для изменения пространства через этот адрес, просто для наглядности, он на видео используется. По нажатию на 1 пространство сдвигается вперёд, на 2 - назад.
CLEO:
{$CLEO}
0000:

while true
  wait 0
    if 0ADC: "1"
    then
        0A8D: 0@ = read_memory 0xB72914 size 4 virtual_protect 0
        0@ += 1
        0A8C: write_memory 0xB72914 size 4 value 0@ virtual_protect 0
        chatmsg "%d" 0xFFFF00 0@
    end
    if 0ADC: "2"
    then
        0A8D: 0@ = read_memory 0xB72914 size 4 virtual_protect 0
        0@ -= 1
        0A8C: write_memory 0xB72914 size 4 value 0@ virtual_protect 0
        chatmsg "%d" 0xFFFF00 0@
    end
end

Если непонятно, зачем это нужно - в интерьерах очень не удобно стрелять (цбагать, если конкретнее) из-за низкого восстановления камеры, и я далеко не единственный человек которому это очень мешает.

Сам в адресах не разбираюсь от слова совсем, может быть кому-то удастся это решить? Или хотя бы подсказать, за любую помощь был бы очень благодарен.