Current time: 22.11.2024, 17:48 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Вопросы по моддингу
» (обсуждаем моддинг здесь)
Author Message
igrik Offline

Posts: 2819
Post: #586

(13.09.2015 00:19)Barin Wrote:  А изначальный адрес любого другого процесса как определить? Артмани надо?
Артмани слишком мало. Нужна Ida + база героев для неё


game bug fixes extended.dll || My Plugins || My GitHub
15.09.2015 18:40
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #587

Quote:!!EX:R$1/$2/$3/$4
    $1 – есть артефакт или нет (0 = нет, 1 = да)
    $2 – номер артефакта (сейчас только 156)
    $3 – подтип артефакта (опции 0…15 – еще не все используются)
    $4 – количество копий артефакта (0...3)
gamecreator, ты не вкурсе как увеличить кол-во копий арта с 0...3 до 0...6?


game bug fixes extended.dll || My Plugins || My GitHub
16.09.2015 22:44
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #588

Никак, это поле занимает 2 бита.

Ну вообще можно переписать пол-системы опыта отрядов и забрать биты у номера артефакта, раз он бывает только один. Тогда можно будет 0..15. Но это очень сильное колдунство. Мне пытаться?


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
17.09.2015 01:00
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 2196
Post: #589

In my opinion, is not a good solution to increase number, because player will anyway need to remove the extra 5 copies manually then. If it is for WT keys mod, just store each warlord banner then give the extra to hero backpack

This is what I use in army management, all extra banners from combining 4-6 stacks into one go to backpack:
(This post was last modified: 17.09.2015 04:25 by Valery.)
17.09.2015 04:24
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #590

Quote:Но это очень сильное колдунство. Мне пытаться?
Ого как ты сложно спросил. Я тут не в праве решать. Но если конечно же у тебя есть время и желание, это было бы очень замечательно.

Спасибо, Valery. В таком духе я и добавлю этот функионал в HoatkeysWT + прикручу фунцию: быстрое снятие одной еденицы Знамени Полководца с отряда с перемещением его в рюкзак (на какую бы комбинацию кнопок его повесить? [Ctrl+ПКМ] сойдет? А то ЛКМ почти вся уже занята).
Сейчас как раз я делаю умное распределение отрядов по Shift+ЛКМ (равное разделение отрядов) с учетом Знамени и опыта


game bug fixes extended.dll || My Plugins || My GitHub
17.09.2015 12:25
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #591

(17.09.2015 12:25)igrik Wrote:  Ого как ты сложно спросил. Я тут не в праве решать. Но если конечно же у тебя есть время и желание, это было бы очень замечательно.
Ну я конечно же попробую, потому что раньше ничего подобного не делал. Но ценности именно в плане управления отрядами я не вижу. Лишние артефакты всегда можно сбрасывать в рюкзак, как верно заметил Valery. Кстати, удаление артефактов при соединении тоже попытаюсь исправить.
А про пол-системы это я преувеличил немного. Слава ООП!

(17.09.2015 01:00)gamecreator Wrote:  забрать биты у номера артефакта, раз он бывает только один. Тогда можно будет 0..15.
А можно ещё и убрать бессмысленное поле наличия артефакта и освободить ещё целый бит. Тогда можно будет 0..30 копий иметь (то есть 0..31 артефактов). А если и это мало, то там ещё есть 10 бит неиспользованных. Можно сделать 0..32766 копий если надо. 96-copy


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
17.09.2015 15:07
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #592

:D
Quote: можно ещё и убрать бессмысленное поле наличия артефакта и освободить ещё целый бит.
и сделать о кол-ве знамен не 0...3, а 1...4 (или в этом духе). или если нет знамени, то устанавливать -1.


game bug fixes extended.dll || My Plugins || My GitHub
17.09.2015 18:42
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #593

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


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
18.09.2015 14:10
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #594

Да, было. Но всё это можно в воговских исходниках найти:
0x698BC4 - таблица названий вторичных навыков, хз зачем она. Подряд идут указатели на строки с названиями.
0x698C34 - таблица описаний вторичных навыков, хз зачем она. Подряд идут указатели на строки, по три строки на навык.
0x698D88 - таблица названий и описаний вторичных навыков, используется игрой (это та, которую я находил). Подряд идут указатели на строки, по 4 стоки на навык (первая - название).
0x679C80 - адрес таблицы специализаций (подменяется вогом). На каждую специализацию сначала идут 7 четырёхбайтовых чисел, потом указатели на три строки (третья - описание, первые две - название какое-то).
Как заменять: создаёшь строковую переменную SN:W, получаешь её адрес и присваиваешь этот адрес вместо геройского родного. Сохранять эти переменные в сейве не нужно.
Это всё может понадобиться переустанавливать каждый раз при запуске игры.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
18.09.2015 16:19
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #595

Algor, тут заменено описание базового интеллекта, т.е. через цикл можно заменить все описания


PS: Как ввариант: создать таблицу такого же размера, и заменить указатель старой таблицы на указатель своей таблицы. Так можно вообще?


game bug fixes extended.dll || My Plugins || My GitHub
18.09.2015 17:19
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #596

(18.09.2015 17:19)igrik Wrote:  PS: Как ввариант: создать таблицу такого же размера, и заменить указатель старой таблицы на указатель своей таблицы. Так можно вообще?
Ну со специализацией прокатит, а вот с другими мне было бы лень искать их все в коде. Да и смысла так делать я не вижу, когда можно просто подменить строку.

(18.09.2015 17:19)igrik Wrote:  !!VRy1:S10; указываем нормер создаваемого слота
Для временной переменной можно и не занимать номер.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
18.09.2015 18:03
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #597

Угу, а если не заморачиваться со слотами и использовать это:
feanor Wrote:Получить адрес z-переменной из ert-файла
!!SN:E7824928/1/299000; //299000 - номер.
Пойдет?
Т.е. у меня задача, собственно, текст из ert загнать в описание навыка/специализации и освободить полтора-два десятка z-переменных.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
18.09.2015 18:37
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #598

ну а че не пойдет то? Работет жеж

(18.09.2015 18:03)gamecreator Wrote:  
(18.09.2015 17:19)igrik Wrote:  !!VRy1:S10; указываем нормер создаваемого слота
Для временной переменной можно и не занимать номер.
Можно, но лентяйская натура дает своё, + так проще редактировать, ибо менять всего одно значение, а не во всех местах искать этот номер.


game bug fixes extended.dll || My Plugins || My GitHub
18.09.2015 18:56
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #599

Да, работает, спасибо.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
18.09.2015 20:15
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #600

Achievement get!
Code:
; SetArtAll
753313 8B45088B510881E2FF1FC0FF85C0740C8B45144083E01FC1E00D09C28B451083E00FC1E01209C289​51088BE55DC210009090909090909090909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​9090909090909090909090
; HasArt
7279C3 8B41082500E003007406B80100000090
; GetArt
728263 B89C00000089EC5DC390909090909090909090909090909090
; ArtCopy (get)
727A63 8B41082500E003007406C1E80D489090
; DelArt
727903 8B410825FF1FC0FF89410889EC5DC390909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​
; SetArt
7279E3 8B51088B450C81E2FF1FC0FF83E00F81CA00200000C1E01209C2895108B80100000089EC5DC20800​90909090909090909090909090909090909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090
; GetArtNums
768B93 8B41082500E00300C1E80D89EC5DC3909090909090909090909090909090909090909090909090
; TakeArt
728283 8B410889C22500E00300741EC1E80D48740A81E2FF1FFCFF09C2EB0681E2FF1FC0FFB80100000089​510889EC5DC390909090909090909090909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​9090909090909090909090909090909090909090
; CopyArt
727D53 8B55088B42088B51082500E03F0081E2FF1FC0FF09C289510889EC5DC20400909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​90909090909090909090909090909090909090909090909090909090909090909090909090909090​
; ArtCopy (set)
727A83 8B51088B450881E2FF1FFCFF83F8007D07B801000000EB0D83F81F7C07B81F000000EB0140C1E00D​09C289510889EC5DC204009090909090909090909090909090
Теперь, igrik, потестируй, где именно я накосячил. Кто с опытом и знамёнами играет - можете тоже.
Соединение отрядов я не трогал пока, знамёна всё равно будут теряться. Но с лимитом в 31 шт. это уже не критично.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
18.09.2015 23:52
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group