IPB

Здравствуйте, гость ( Вход | Регистрация )

29 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Мод на ХотА
DedMorozzz
сообщение 18 Nov 2016, 17:04 (Сообщение отредактировал DedMorozzz - 18 Nov 2016, 17:06)
Сообщение #1

God
Сообщений: 267
Спасибо сказали: 25 раз




Добрый день, мы частенько на хотсите играем в герои 3.
Последний примерно год в ХОТА. Играем только шаблон джебусс кросс... и нас не устраивает несколько моментов в игре которые хотелось бы для себя исправить:

Что получилось:
- уже убрал орлиный глаз навык. Шанс выпадения = 0 для всех классов.
- уменьшил стоимость покупки дьяволов
- уменьшил цену здания улучшения титанов
- взрыв сделал магией огня. Увеличил урон от огненого шара/инферно

Что осталось
1. замедление. Оно слишком читерное. Хотелось бы изменить округление с большую сторону. Т.е. скорость 5 -> 3, вместо 5 -> 2 как сейчас
2. сделать более балансные школы магии. Сейчас получается так, что или есть у тебя земля или тебе ничего не светит... Я уже подправил магию огня, усилив заклинания
но хотелось бы сделать чуток большую реализацию. К примеру что бы слабость у магии воды, так же вешало проклятие. Как это сделать?
3. где изменить бонус специализации с 5% за левел на 2% для логистики/защиты/атаки. На джебусе это чит. Или логист или проиграл...
4. где изменить требуемые постройки для зданий. Т.е. хочу упростить постройку дьяволов и усложнить ангелов
5. где сменить цифры навыков. Т.е. я хочу сделать защиту от магии не 5-10-15, а 10-20-30 (покачто изменить получилось только описание, а не фактическое значение)
6. ифриты что бы не игнорили сферу и не били щитом чёрных/золотных драконов. Или юнитов под иммуном к магии
7. Если играть джебус с подземельем, то зачастую трежи огромные. Потому ираем в основном без... можно ли как-то ограничить размер зоны с ништяками (Утопии, топ арты и прочее...). что бы она была размером с 1/5 от карты, не больше?

Если удастся решить хоть 1 момент - будет уже здорово smile.gif

Интересует именно файлы ХотА, т.к. новые постройки/замок очень здорово вписались в игру
Спасибо!
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 18 Nov 2016, 17:55 (Сообщение отредактировал MasterOfPuppets - 18 Nov 2016, 17:57)
Сообщение #2

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Цитата(DedMorozzz @ 18 Nov 2016, 17:04) *
3. где изменить бонус специализации с 5% за левел на 2% для логистики

Ну скажем вот (вряд ли в ХотЕ иначе):

004E4F1C D80D E4EA6300 FMUL DWORD PTR DS:[63EAE4]

В [63EAE4] находится 0.05 (естественно, в виде float). Но число по этому адресу менять нельзя, так как оно используется ещё во многих участках кода. Надо перенаправить на другой адрес. Можно использовать какую-нибудь пустоту в коде Героев, допустим:

44FBD1 0AD7A33C; 0.02
4E4F1C D80DD1FB4400; FMUL DWORD PTR DS:[44FBD1]

Всё.
Аналогично с Нападением и Обороной.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery



Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
serovoy
сообщение 18 Nov 2016, 21:25
Сообщение #3

Immortal
Сообщений: 376
Спасибо сказали: 270 раз




Цитата(DedMorozzz @ 18 Nov 2016, 20:04) *
убрал орлиный глаз навык

А спецы?
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 18 Nov 2016, 22:08
Сообщение #4

😸🧡✊✌️
Сообщений: 16 027
Спасибо сказали: 2672 раза




Цитата(MasterOfPuppets @ 18 Nov 2016, 17:55) *
Можно использовать какую-нибудь пустоту в коде Героев.
Или поискать готовое .2f среди констант.


--------------------
Я слежу за тобой!
* tolic.narod.ru

Lu...pa...gamhi...dho?
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 18 Nov 2016, 22:15
Сообщение #5

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(tolich @ 18 Nov 2016, 21:08) *
Или поискать готовое .2f среди констант.

А это где?

Цитата(serovoy)
А спецы?

Их не менял. Убирал шанс выпадения только. Не ставлю задачу "убрать упоминание навыка из игры" smile.gif
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 18 Nov 2016, 22:54
Сообщение #6

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(MasterOfPuppets @ 18 Nov 2016, 16:55) *
Ну скажем вот (вряд ли в ХотЕ иначе):

004E4F1C D80D E4EA6300 FMUL DWORD PTR DS:[63EAE4]

В [63EAE4] находится 0.05 (естественно, в виде float). Но число по этому адресу менять нельзя, так как оно используется ещё во многих участках кода. Надо перенаправить на другой адрес. Можно использовать какую-нибудь пустоту в коде Героев, допустим:

44FBD1 0AD7A33C; 0.02
4E4F1C D80DD1FB4400; FMUL DWORD PTR DS:[44FBD1]

Всё.
Аналогично с Нападением и Обороной.


https://sc-cdn.scaleengine.net/i/9d9c420fd1...e5d05883f28.png --- вот нашел этот код. А что с ним дальше делать пока не соображу...
Куда его перенести? И как найти другие навыки. Пока что логики поиски данных не уловил вовсе
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 18 Nov 2016, 23:05
Сообщение #7

😸🧡✊✌️
Сообщений: 16 027
Спасибо сказали: 2672 раза




Цитата(DedMorozzz @ 18 Nov 2016, 22:15) *
А это где?
Понятия не имею, но это должно быть CD CC 4C 3E. Ой, тебе же .02f нужно. Тогда 0A D7 A3 3C. И Мастер этот код написал, ага.


--------------------
Я слежу за тобой!
* tolic.narod.ru

Lu...pa...gamhi...dho?
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 18 Nov 2016, 23:06
Сообщение #8

пират с чёрной меткой
Сообщений: 23 646
Спасибо сказали: 12921 раз




Код переносить не надо. МОП рекомендует подменить адрес [63EAE4] на другой, по которому будет расположено 0AD7A33C.
А искать нужно с помощью отладчика. Или базы дизассемблера. Можно в ВОГовских сорцах посмотреть, если понимаешь как.


--------------------
Давший быка на убой не выпросил и печень на жаркое.


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 19 Nov 2016, 00:32 (Сообщение отредактировал DedMorozzz - 19 Nov 2016, 02:41)
Сообщение #9

God
Сообщений: 267
Спасибо сказали: 25 раз




я вообще силач... нашел в редакторе то, что сам вставил. Вместо поиска - заменил выделенный кусок

Итого, правильно ли я понимаю, постараюсь более высокоуровнево описать:
имеется код, который говорит как должен с уровнем увеличиваться навык. Значение взять с функции такой-то. И задача заменить ф-ю, которая возвращает нужное число (0.02 вместо 0.05), а не выдачу ф-и?

Но даже тут я не пойму как искать данные. Из соседней темы взял редактор 010 Editor. Искать данные не понял как. Не ищет ничего, какой формат данных не выбирай. Но мне по сути нужен (как я понял) только HEX.

Итого, 4 момента:
1. правильно ли я понял основную идею?
2. как найти нужные данные? (со 2го поста)
3. как понять, как выглядит навык нападения
4. из темы - http://forum.df2.ru/lofiversion/index.php/t24380.html
Там вижу указатели. Но в открываемом exe файле максимальное значение 2B. Т.е. до указателя, к примеру мистицизма (004E41C8) 4E надо в 2 раза больше данных. Ибо по 00 нет данных
Я понимаю что смотрю не туда, но куда надо - не пойму...
Go to the top of the pageAdd Nick
 
+Quote Post
XEPOMAHT
сообщение 19 Nov 2016, 10:54
Сообщение #10

---------------------- New_Life_of_Heroes ----------------------
Сообщений: 240
Спасибо сказали: 358 раз




Цитата(DedMorozzz @ 19 Nov 2016, 00:32) *
4. из темы - http://forum.df2.ru/lofiversion/index.php/t24380.html
Там вижу указатели. Но в открываемом exe файле максимальное значение 2B. Т.е. до указателя, к примеру мистицизма (004E41C8) 4E надо в 2 раза больше данных. Ибо по 00 нет данных
Я понимаю что смотрю не туда, но куда надо - не пойму...


Там адреса памяти, а ты пытаешься их найти в exe. Для этого нужно пересчитывать адрес, например для мистицизма: 004E41C8 -> 0E41C8 и т.д.


--------------------
WoG + MoP + HoA + Forge + Bastion = ERA+


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
serovoy
сообщение 19 Nov 2016, 17:18
Сообщение #11

Immortal
Сообщений: 376
Спасибо сказали: 270 раз




Цитата(DedMorozzz @ 19 Nov 2016, 01:15) *
Их не менял.

Какой кошмар! Ну хоть у Аш стартовую зоркость заменили?
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 19 Nov 2016, 17:50
Сообщение #12

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(serovoy @ 19 Nov 2016, 16:18) *
Цитата(DedMorozzz @ 19 Nov 2016, 01:15) *
Их не менял.

Какой кошмар! Ну хоть у Аш стартовую зоркость заменили?

Знал бы где.. я тут у мистицизма цифры 1-2-3-4, на любые другие не пойму пока как заменять. Не говоря о замене навыка А, на навык Б

Если кините какой нить ман для чайников - буду признателен!
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 19 Nov 2016, 18:05
Сообщение #13

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Цитата(tolich @ 18 Nov 2016, 22:08) *
Или поискать готовое .2f среди констант.

Проверил. На весь экзешник - лишь по адресу 63AC60h.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery



Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 20 Nov 2016, 20:20 (Сообщение отредактировал DedMorozzz - 20 Nov 2016, 20:31)
Сообщение #14

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(MasterOfPuppets @ 18 Nov 2016, 16:55) *
В [63EAE4] находится 0.05 (естественно, в виде float). Но число по этому адресу менять нельзя, так как оно используется ещё во многих участках кода. Надо перенаправить на другой адрес. Можно использовать какую-нибудь пустоту в коде Героев, допустим:


Мне явно требуется дополнительное пояснение...
Нашел CD CC 4C 3D примерно в 5и местах. Заменив 1е (на 0AD7A33C) я не получил нужного результата. Заменив последнее - получил (Кирь + ангел, на 10м левеле бегает 2720, вместо 2900).
Заменял по "смещению" 0023EAE0. Или именно этого и нельзя было делать?

Так же - каким образом перевести 0.02 в 0AD7A33C? Я так понял, что путаю значение с адресом значения, но как их связать - не понятно
Как мне к примеру получить в 16и ричной системе не 0.02 а 30?
https://gregstoll.dyndns.org/~gregstoll/floattohex/ -- тут получаю 0x41f00000. Но видимо это совсем не то что нужно, потому что из 0AD7A33C я 0.02 не получаю ...

PS: перепроверил, логистика/атака/интеллект стали по 2% за левел. Я так понимаю все спеки стали по 2% считаться. Или ещё что-то мог зацепить?
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 20 Nov 2016, 21:19
Сообщение #15

пират с чёрной меткой
Сообщений: 23 646
Спасибо сказали: 12921 раз




Цитата(DedMorozzz @ 20 Nov 2016, 20:20) *
PS: перепроверил, логистика/атака/интеллект стали по 2% за левел. Я так понимаю все спеки стали по 2% считаться. Или ещё что-то мог зацепить?
Вот именно.
Тебе же говорят - нельзя просто менять это значение, потому что оно во многих местах используется.
Возьми адрес, по которому лежит 0.2 (63AC60) - и его (адрес, а не 0.2) пропиши в тех местах, где был адрес 63EAE4, указывающий на 0.5, а ты хочешь сделать 0.2.


--------------------
Давший быка на убой не выпросил и печень на жаркое.
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 20 Nov 2016, 21:35 (Сообщение отредактировал DedMorozzz - 20 Nov 2016, 21:36)
Сообщение #16

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(hippocamus @ 20 Nov 2016, 20:19) *
Цитата(DedMorozzz @ 20 Nov 2016, 20:20) *
PS: перепроверил, логистика/атака/интеллект стали по 2% за левел. Я так понимаю все спеки стали по 2% считаться. Или ещё что-то мог зацепить?
Вот именно.
Тебе же говорят - нельзя просто менять это значение, потому что оно во многих местах используется.
Возьми адрес, по которому лежит 0.2 (63AC60) - и его (адрес, а не 0.2) пропиши в тех местах, где был адрес 63EAE4, указывающий на 0.5, а ты хочешь сделать 0.2.

Я не знаю как "63EAE4" найти... поиск по HEX не находит(пробовал и 63EAE4 и 63 EA E4). Что в HxD редакторе. Что в 010 Editor.
При этом числа с плавающей запятой находит. Как хексовые значения искать то?
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 20 Nov 2016, 21:41
Сообщение #17

пират с чёрной меткой
Сообщений: 23 646
Спасибо сказали: 12921 раз




Первую "6" замени на "2" в обоих случаях. Чтобы получить адреса в экзешнике нужно отнять 400000 от адреса в памяти.


--------------------
Давший быка на убой не выпросил и печень на жаркое.


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 20 Nov 2016, 22:34
Сообщение #18

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20585 раз




Цитата
потому что из 0AD7A33C я 0.02 не получаю ...

0AD7A33C => 0x3CA3D70A => 0.02 float


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 20 Nov 2016, 22:56
Сообщение #19

пират с чёрной меткой
Сообщений: 23 646
Спасибо сказали: 12921 раз




feanor, виндовский калькулятор, к сожалению, с float в гексе не работает. Видимо, DedMorozzz говорит об этом - не знает как конвертировать dec <-> hex.


--------------------
Давший быка на убой не выпросил и печень на жаркое.
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 21 Nov 2016, 10:28
Сообщение #20

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20585 раз




Человек уже нашел IEEE754-конвертор, только про эндианы не знал.
Go to the top of the pageAdd Nick
 
+Quote Post

29 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 24 April 2024 - 17:32
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика