Случайная подборка модов
Смерти Вопреки. Послушник
3.4
Мод Змеелов v.2.17 Final
3.8
Возвращение
3.0
STCoP Weapon Pack 3.3
4.4
Хроники Кайдана. Вторая серия
4.0
Судьба Зоны 0.5
3.9
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
  • Страница 1 из 1
  • 1
Архив - только для чтения
"Инструкция по изменению плотности травы"
Российская Федерация  Rolan
Суббота, 20.11.2010, 07:33 | Сообщение # 1
Статус:
Отмычка:
Сообщений: 169
Награды: 2
Регистрация: 31.05.2010

Инструкция по изменению плотности травы. Параметр меньше 0.02 не ставить - Колмогор писал что начинает лагать
1. Открываем айда
2. Открываем айда_виев
3. Теперь ищем что нам нужно найти. Нам сейчас нужно найти r__detail_density? Тогда жмем ctrl+t и вводим r__detail_density
4. Находим функцию и тщательно ее разбираем (я ее полностью разбирать не буду, а только укажу где задаются параметры:
Code

fld ds:flt_10064400 --нижнее ограничение равное 0.6
or dword_1007CACC, 8
sub esp, 8
fstp [esp+30h+var_2C]
mov ecx, offset unk_1007CA9C
fld ds:flt_10064380 --верхнее ограничение равное 0.2
fstp [esp+30h+var_30]
push offset aSs; "ЪЩЩ>"
push offset aR__detail_dens; "r__detail_density"
call ds:??0CCC_Float@@QAE@PBDPAMMM@Z; CCC_Float::CCC_Float(char const *,float *,float,float)
push offset sub_1005E080; void (__cdecl *)()
call _atexit
add esp, 4

Если вы заметили, то что бы трава стала плотней нужно уменьшить параметр, а что-бы травы стало меньше нужно параметр увеличить
5. Нам нужно увеличить плотность травы: следовательно нужно изменить верхнее ограничение. Как это сделать? Есть 3 варианта:

Первый и самый логичный вариант: изменить переменную которая задает. Но тут есть небольшой подвох на котором я попался. Этой переменной может пользоваться не одна функция, а несколько. И не ясно что вы можете сломать, поменяв одну циферку в переменной...

Второй: взять другую уже существующую переменную. Хороший вариант которым я и воспользовался. Но и тут есть недочет - переменных в ддлке не так уж и много и можно просто не найти нужную

Третий: создать переменную. Отличный вариант. Единственный минус - я не знаю как это сделать

Я пошел по второму пути. Два раза шелкнув на ds:flt_10064380 айда отправила меня в дебри под названием .rdata. Там я нашел переменную которая называлась - flt_1006452C и которая имела значение 0.0720999
Вообще-то, как я понял, flt_1006452C - не является названием переменной. Это так сказать сборка из 2 показателей - (тип числа)_(оффсет) В нашем случае это число типа float которое находится в 1006452C. Ну чтож приступим к редактированию!
6. Отправляем в самое начало файла. Как? Сверху есть что-то типа статус бара - строка состоящая из синего,серого,черного цвета. Нажимаем там в любом месте мышкой и ведем влево до конца
7. Опять ищем r__detail_density. Находим в этой функции fld ds:flt_10064338. Дальше самое интересное. Жмем на ХЕКС_ВИЕВ и там у нас выделяются какие-то цифры. Это наше 10064338 только написано наоборот. Сравните:
38 43 06 10
10 06 43 38

Похоже, не правда?
Начинаем редактировать. нам нужно поменять 4338 на 452C т.к. в этом и есть различие. Жмем правой кнопкой мыши на этих цифрах и выбираем пункт Edit. Меняем 38 43 на 2С 45. Дальше жмем где нибудь в коде. Это нужно сделать обязательно. После этого жмем правой кнопкой мыши и выбираем commit changes. Но айда не меняет исходный файл. В нашем случае мы можем только создать файл изменений. Делается это так - Файл - Produce file - Create DIF file. Назовем его test. DIF файл можно открыть при помощи блокнота и посмотреть что вы сделали. Теперь так сказать соединит этот файл и дллку. Это можно сделать при помощи bpatch. Качаем и смотрим и запускаем bpatch.cmd. Я думаю что вы сможете его изменить сами если нужно будет. Там все элементарно.

Огромное спасибо Kolmogor'у и malandrinus'у. Если бы не они, я бы ничего не сделал. Спасибо вам еще раз
Спасибо и Rolan'y с которым я очень много беседовал и тоже узнал много чего.
Автор: _Призрак_

  Злобная реклама
Суббота, 20.11.2010, 07:33
Статус:
Сообщений: 666
Регистрация: 31.05.2010
Молдова  ANAVRIN
Четверг, 30.12.2010, 09:59 | Сообщение # 2
ALMOST PERFECT vision
Статус:
Новичок:
Сообщений: 304
Награды: 12
Регистрация: 23.10.2010

Чтоб совсем убрать траву, находим файл build_details.dds и стераем резинкой альфа-канал.
  Злобная реклама
Четверг, 30.12.2010, 09:59
Статус:
Сообщений: 666
Регистрация: 23.10.2010
Российская Федерация  makushka
Вторник, 22.11.2011, 14:41 | Сообщение # 3
Статус:
Отмычка:
Сообщений: 123
Награды: 5
Регистрация: 26.07.2011

а готового фикса нет?
  Злобная реклама
Вторник, 22.11.2011, 14:41
Статус:
Сообщений: 666
Регистрация: 26.07.2011
Российская Федерация  Dimonich
Вторник, 22.11.2011, 15:50 | Сообщение # 4
Статус:
Опытный:
Сообщений: 1643
Награды: 6
Регистрация: 17.04.2011

Quote (makushka)
а готового фикса нет?

Сам делай.Только бы готовое качали.
  Злобная реклама
Вторник, 22.11.2011, 15:50
Статус:
Сообщений: 666
Регистрация: 17.04.2011
Российская Федерация  RETRIX
Четверг, 24.11.2011, 23:26 | Сообщение # 5
AP-Production
Статус:
Ветеран:
Сообщений: 9439
Награды: 12
Регистрация: 24.08.2011

ANAVRIN, tongue тогда травка останется, просто будет невидимой.
так что Rolan правильно пишет. Нужно в экзешнике изменять значение.

Добавлено (24.11.2011, 23:26)
---------------------------------------------
makushka, нет. а Что там делать-то???

  Злобная реклама
Четверг, 24.11.2011, 23:26
Статус:
Сообщений: 666
Регистрация: 24.08.2011
Молдова  6poHR777
Вторник, 02.10.2012, 21:20 | Сообщение # 6
Статус:
Опытный:
Сообщений: 1480
Награды: 0
Регистрация: 05.01.2012

Программа называется IDA pro??? smile
  Злобная реклама
Вторник, 02.10.2012, 21:20
Статус:
Сообщений: 666
Регистрация: 05.01.2012
  • Страница 1 из 1
  • 1
Поиск: