Перейти к содержимому


BlackMan

Регистрация: 02 Dec 2012
Offline Активность: 16 Dec 2012 18:14
-----

Мои темы

Вопрос по скрипту увеличения дальности прорисовки

04 December 2012 - 11:58

Здравствуйте!


Мне нужна помощь по теме увеличения дальности прорисовки педов и машин.
В гта дальность прорисовки педов и машин к сожалению нельзя изменить, просто изменив параметры модели в файлах .ide


В сети лежит отличный скрипт за авторством Sergey81 (за что большое спасибо :), значительно увеличивающий дальность прорисовки педов и машин.

Путем декомпиляции получается такой вот код:


// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder....files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
0A8C: write_memory 0x732926 size 4 value 0x858FD8 virtual_protect 1 //[(float)300.0000] Vehicle LOD threshold, default: 70.0f
0A8C: write_memory 0x732978 size 4 value 0x858FD8 virtual_protect 1 //[(float)300.0000] Vehicle LOD threshold, default: 70.0f
0A8C: write_memory 0x4250F0 size 4 value 0x85AB00 virtual_protect 1 //[(float)1500.0000] onscreen spawn range for vehicles, default: 110.0f

0A8C: write_memory 0x4253E3 size 4 value 0x858EDC virtual_protect 1 //[(float)600.0000] DespawnOffscr?
0A8C: write_memory 0x431A24 size 4 value 0x858B40 virtual_protect 1 //unknown 50.0 3

0A8C: write_memory 0x73295E size 4 value 0x863994 virtual_protect 1 //[(float)220.0000] pedsDrawDistanceInstall
0A8C: write_memory 0x6120FF size 4 value 0x858EDC virtual_protect 1 //[(float)600.0000] ?absMaxDespawnOnscrInstall
0A8C: write_memory 0x612128 size 4 value 0x863994 virtual_protect 1 //[(float)220.0000] unknown absMaxDespawnOnscrInstall
0A8C: write_memory 0x612142 size 4 value 0xB6F11C virtual_protect 1 //[(float)0.9563] unknown

0A8C: write_memory 0x86D284 size 4 value 600.0 virtual_protect 1 // ped spawn distance
0A8C: write_memory 0x871008 size 4 value 500.0 virtual_protect 1 // spawnOffscrRingSizeInstall
0A93: end_custom_thread



Если перевести значения в 10-ный вид:


// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder....files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP
0A8C: write_memory 0x732926 size 4 value 8753112 virtual_protect 1 //[(float)300.0000] Vehicle LOD threshold, default: 70.0f
0A8C: write_memory 0x732978 size 4 value 8753112 virtual_protect 1 //[(float)300.0000] Vehicle LOD threshold, default: 70.0f
0A8C: write_memory 0x4250F0 size 4 value 8760064 virtual_protect 1 //[(float)1500.0000] onscreen spawn range for vehicles, default: 110.0f

0A8C: write_memory 0x4253E3 size 4 value 8752860 virtual_protect 1 //[(float)600.0000] DespawnOffscr?
0A8C: write_memory 0x431A24 size 4 value 8751936 virtual_protect 1 //unknown 50.0 3

0A8C: write_memory 0x73295E size 4 value 8796564 virtual_protect 1 //[(float)220.0000] pedsDrawDistanceInstall
0A8C: write_memory 0x6120FF size 4 value 8752860 virtual_protect 1 //[(float)600.0000] ?absMaxDespawnOnscrInstall
0A8C: write_memory 0x612128 size 4 value 8796564 virtual_protect 1 //[(float)220.0000] unknown absMaxDespawnOnscrInstall
0A8C: write_memory 0x612142 size 4 value 11989276 virtual_protect 1 //[(float)0.9563] unknown

0A8C: write_memory 0x86D284 size 4 value 600.0 virtual_protect 1 // ped spawn distance
0A8C: write_memory 0x871008 size 4 value 500.0 virtual_protect 1 // spawnOffscrRingSizeInstall
0A93: end_custom_thread




Заранее прошу прощения, если мой вопрос покажется глупым, я только начинающий в этом деле, но очень хочу продвинуться :)


Несмотря на то, что код хорошо закомментирован и в комментариях вроде бы написан смысл кода (адресов памяти и значений), но у меня все равно возникли трудности.


В первую очередь, никак не получается изменить значения и добиться увеличения/уменьшения дальности прорисовки.
То есть любые изменения в коде приводят к ошибкам (пробовал изменять значения многими способами)

В связи с этим возникли вопросы:

1) Почему в некоторые адреса памяти записываются значения размеров миллионы (!!!) 8753112, 8760064 (10-й вид) и т.д. , но при этом в последних двух строках в память пишется простые float значения 600.0, 500.0 ????
Хотя, казалось бы, запись опкода во всех строках одинакова, отличаются только значения и отличаются они очень сильно!
Почему в первой строке по адресу записывается аж число 8753112 (хотя в комментарии в строке написано [(float)300.0000] ), а в последних двух строках присваивается 600.0, 500.0 соответственно ?


2) Возможно ли увеличить дальность прорисовки еще хотя бы на 100 метров (даже этого было бы достаточно). При этом поведениe, спавн, трафик, плотность и прочие характеристики не играют никакой роли. Только бы прорисовку увеличить на 100 метров еще....


Любые мои попытки изменить значения (в любой строке кода) ни к чему не приводят - результата нет, либо ошибки.

Приветствуются любые ответы, догадки, предложения, советы!


Заранее большое спасибо!