Current time: 29.11.2024, 08:19 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Исследование героев
» туториал(ы)
Author Message
Sav Offline

Posts: 2180
Post: #496

Отрисовка текста на изображение.
(This post was last modified: 06.07.2012 18:30 by Sav.)
06.07.2012 18:30
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #497

Sav Wrote:
Berserker Wrote:Sav, а вот это уже интересно. Как сделать деф, чтобы при замене дефа страха он проигрывался полупрозрачным?
Специального дефа не нужно, полупрозрачность работает с любым. Это параметр у функции, которая отрисовывает анимации, (0x47BA90) любую анимацию можно отрисовывать полупрозрачно. Ну, разумеется, полупрозрачность не регулируемая, одинакова для каждого пикселя.

Вот, как устроена таблица боевых анимаций.
PHP Code:
// Структура боевой анимации.
NOALIGN struct _BattleAnim_
{
  
_cstr_ DefName// Имя def`а анимации
  
_cstr_ TouchEffect_Name// Имя тактильного эффекта анимации (для его воспроизведения на нестандартных элементах управления с помощью IFC20.dll)
  
_dword_ Properties// Свойства боевой анимации (по несколько битов)
  // ***
  // Начало описания свойств анимации
  // ***
    // (сдвиг - размер в битах - значение) 
    // 0 - 4 - Позиция отображения (0 - от земли на стеке или гексе, 1 - посередине гекса или стека, 2 - выше стека, 3 - перед стеком, 4 - с нижней и левой границы гекса, -1 - нет позиции)
    // 4 - 4 - Не используется
    // 8 - 1 - Прозрачность (0 - нет, 1 - есть)
    // 9 - 23 - Не используется
  // ***
  // Конец описания свойств анимации
  // ***
}; 
PHP Code:
_BattleAnim_o_BattleAnimation = ((_BattleAnim_*)0x641E18);

_int_ BattleAnims_Count 83
В Воге таблица, перенесена на адрес 0x7B6980. Номера анимаций соответствую номерам в таблице BM:V в ERM-help. С помощью UN:C можно легко на время изменить параметры любой анимации.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
21.08.2012 15:42
Find all posts by this user Quote this message in a reply
MOP Offline
Moderators

Posts: 1468
Post: #498

Вот ещё 1-байтец, убирающий видимость Мин и Зыбучих Песков на родной земле:

463C3D 00


Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery
21.09.2012 19:54
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #499

Родной для кого? И это точно баг?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
21.09.2012 20:42
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #500

Родной земле замка, к которому принадлежит существо. Это явно не баг, т. к. там вполне конкретно проверяется наличие у стороны стека с соотв. родной землёй.
21.09.2012 22:59
Find all posts by this user Quote this message in a reply
MOP Offline
Moderators

Posts: 1468
Post: #501

(21.09.2012 20:42)Berserker Wrote:  И это точно баг?
(21.09.2012 22:59)Sav Wrote:  Это явно не баг
Я и не говорил ни разу, что это баг. Однако данная содовская "фишка" делает Мины и Зыбучий Песок ещё более УГ-заклинаниями, чем они могли бы быть. И я не разу не слышал, чтобы кто-то был против её устранения. Наоборот, всё орали: "Уберите!".


Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery
24.09.2012 09:04
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #502

Да, соглашусь с МОР-ом. Для модов будет полезно.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
24.09.2012 13:48
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #503

feanor Wrote:
Quote:10. Нейтральные герои, с магией
А в чем тут проблема? Нейтральных (минус первого игрока) героев как неподвижных стражей вытащить можно без особого изврата. Я где-то писал команду, чтоб они отображались на карте..

Quote:004100B5: 90909090 90909090
00410285: 90909090 90909090

Отрисовка героев -1ого игрока. Без флага.

То же в ERM.
!!UN:C4260021/4/2425393296;
!!UN:C4260025/4/2425393296;
!!UN:C4260485/4/2425393296;
!!UN:C4260489/4/2425393296;


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
11.12.2012 21:17
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #504

Кто-нибудь знает, зачем в структуре кадра дефа поля frame_top/left?

Code:
NOALIGN struct _DefFrame_ : public _BinTreeItem_
{
    _dword_        frm_size; // + 28
    _dword_        buf_size;
    _dword_        compression_type;
    _dword_        def_width;
    _dword_        def_height;
    _dword_        frame_width;
    _dword_        frame_height;
    _dword_        frame_left;
    _dword_        frame_top;
    _dword_        unknown_40;
    _ptr_        buffer;

    // my
    _dword_ DrawInterfaceToPcx16(_Pcx_* dst_pcx16, _int_ dst_x, _int_ dst_y, _Palette16_* palette16)
    {
        return CALL_14(_dword_, __thiscall, 0x47BE90, this, 0, 0, def_width, def_height, dst_pcx16->buffer, dst_x, dst_y, dst_pcx16->width, dst_pcx16->height, dst_pcx16->scanline_size, palette16, 0, 1);
    }
};


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
28.02.2013 21:38
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #505

У кадров иногда обрезается лишняя прозрачная площадь по краям. Вероятно, эти поля показывают, где в кадре начинается, собственно, изображение.
28.02.2013 23:58
Find all posts by this user Quote this message in a reply
AVS Offline

Posts: 16
Post: #506

Раз там есть поле compression_type, значит кадр хранится сжатым, тогда Sav прав.
01.03.2013 00:19
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #507

Что-то похожее видел в коде. Участвует в расчёте итогового смещения для отрисовки (ака dx, dy).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
01.03.2013 23:22
Find all posts by this user Quote this message in a reply
etoprostoya Offline

Posts: 1809
Post: #508

Правильно Сав сказал. Я специально вёл логи отрисовки монстров и ни разу не было случая, что бы рисовался полный кадр, который, как известно имеет размер 450*400 пикселей.
02.03.2013 11:38
Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #509

(14.04.2013 19:02)Ivor Wrote:  MoP сделал патчик, запрещающий получение экспертной школы без экспертной мудрости
(14.04.2013 19:13)Berserker Wrote:  Судя по всему, ассемблерной вставкой.
Ага
Code:
; При повышении уровня: раскачка магического навыка до экспертного требует экспертной Мудрости
; модификация воговской вставки:
74DA24 55;                     PUSH EBP
74DA25 8BEC;                   MOV EBP,ESP
74DA27 53;                     PUSH EBX
74DA28 8915C0497302;           MOV DWORD PTR DS:[27349C0],EDX
74DA2E 890DECAAA400;           MOV DWORD PTR DS:[A4AAEC],ECX
74DA34 8BD9;                   MOV EBX,ECX
74DA36 837D0CFF;               CMP DWORD PTR SS:[EBP+C],-1
74DA3A 7510;                   JNZ SHORT MoP.0074DA4C
74DA3C 833D2C358A00FE;         CMP DWORD PTR DS:[8A352C],-2
74DA43 7417;                   JE SHORT MoP.0074DA5C
74DA45 A12C358A00;             MOV EAX,DWORD PTR DS:[8A352C]
74DA4A EB56;                   JMP SHORT MoP.0074DAA2
74DA4C 833D30358A00FE;         CMP DWORD PTR DS:[8A3530],-2
74DA53 7407;                   JE SHORT MoP.0074DA5C
74DA55 A130358A00;             MOV EAX,DWORD PTR DS:[8A3530]
74DA5A EB46;                   JMP SHORT MoP.0074DAA2
74DA5C FFB3D7000000;           PUSH DWORD PTR DS:[EBX+D7] - сохранить уровни школ героя в стеке
74DA62 FF750C;                 PUSH DWORD PTR SS:[EBP+C]
74DA65 FF7508;                 PUSH DWORD PTR SS:[EBP+8]
74DA68 8B15C0497302;           MOV EDX,DWORD PTR DS:[27349C0]
74DA6E 8BCB;                   MOV ECX,EBX
74DA70 E8FBD4D8FF;             CALL MoP.004DAF70 - генерация навыка
74DA75 83F80E;                 CMP EAX,0E - проверка на школы
74DA78 7C22;                   JL SHORT MoP.0074DA9C
74DA7A 83F811;                 CMP EAX,11 - проверка на школы
74DA7D 7F1D;                   JG SHORT MoP.0074DA9C
74DA7F 80BC18C900000002;       CMP BYTE PTR DS:[EAX+EBX+C9],2 - если навык продвинут и готовится прокачаться до эксперта
74DA87 7513;                   JNZ SHORT MoP.0074DA9C
74DA89 80BBD000000003;         CMP BYTE PTR DS:[EBX+D0],3 - а Мудрость ещё не экспертна
74DA90 7D0A;                   JGE SHORT MoP.0074DA9C
74DA92 C68418C900000003;       MOV BYTE PTR DS:[EAX+EBX+C9],3 - тогда якобы повышаем навык до эксперта и запускаем генерацию снова
74DA9A EBC6;                   JMP SHORT MoP.0074DA62
74DA9C 8F83D7000000;           POP DWORD PTR DS:[EBX+D7] - а после возвращаем скиллы обратно
74DAA2 5B;                     POP EBX
74DAA3 5D;                     POP EBP
74DAA4 C20800;                 RETN 8
http://yadi.sk/d/qiKYucT043auR


Моды (Иные герои, иные заклинания), скины, портреты
15.04.2013 14:37
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #510

подскажите где хранятся ценности объектов для генератора карт


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
06.05.2013 00:45
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