IPB

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

> Обсуждение "небольших модов.."
Berserker
сообщение 03 Jan 2013, 18:18
Сообщение #1

Immortal
Сообщений: 1 468
Спасибо сказали: 1153 раза




Давно пора!


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post
 
Start new topic
Ответов
Barin
сообщение 24 May 2018, 17:30 (Сообщение отредактировал Barin - 24 May 2018, 17:33)
Сообщение #2

Member
Сообщений: 84
Спасибо сказали: 71 раз




Цитата(Iv @ 24 May 2018, 09:18) *
Цитата(Barin @ 24 May 2018, 00:56) *
Цитата(feanor @ 08 Feb 2013, 15:55) *
Настраиваемые имена классов (turquoise.dll)

Плагин: turquoise.zip, зеркало

Позволяет настраивать индивидуальное имя класса для каждого героя (аналогично Джем из стандартных кампаний SoD), как с помощью конфигурационного файла (приложен в архиве), так и динамически, с помощью SN:W-переменных с именем hero_class_name_<hero_id>.

Иллюстрация:


Код
Patcher * globalPatcher;
PatcherInstance *patcher;

_ptr_ GetClassNameDefault;

char* GetClassName(HERO* hero)
{
    char tmp[64];
    sprintf(tmp,"SN:W^hero_class_name_%i^/?z1;", hero->Number);
    ExecErmCmd(tmp);
    
    if(ErmZ[1][0]!=0)
    {
        return ErmZ[1];
    }
    return CALL_1(char*, __thiscall, GetClassNameDefault, hero);
}

void __stdcall InitNames(PEvent e)
{
    char tmp[1024];
    char tmp_erm[1024];
    for(int i=0; i!=256;i++)
    {
        sprintf(tmp,"Hero%i",i);
        ReadStrFromIni(tmp, "Classnames", "turquoise.ini", (char*)tmp);
        if (*tmp)
        {
            sprintf(tmp_erm,"SN:W^hero_class_name_%i^/^%s^;", i, tmp);
            ExecErmCmd(tmp_erm);
        }
    }
}


char* __stdcall GetClassName_hook(HiHook* h, HERO* hero)
{
    return GetClassName(hero);
}

int __stdcall hook_4E1(LoHook* h, HookContext* c)
{
    c->ecx = (int)GetClassName((HERO*)(c->eax));
    return EXEC_DEFAULT;
}

int __stdcall hook_4DB(LoHook* h, HookContext* c)
{
    c->eax = (int)GetClassName((HERO*)(c->ecx));
    return EXEC_DEFAULT;
}

BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    if (ul_reason_for_call == DLL_PROCESS_ATTACH)
    {
        //инит Эры, инит патчера
        globalPatcher = GetPatcher();
        patcher =  globalPatcher->CreateInstance(PINSTANCE_MAIN);
        ConnectEra();

        RegisterHandler(InitNames, "OnBeforeErmInstructions");
        RegisterHandler(InitNames, "OnAfterCreateWindow");

        HiHook *h = patcher->WriteHiHook(0x4D91E0,SPLICE_,EXTENDED_,THISCALL_,(void*)GetClassName_hook);
        GetClassNameDefault = h->GetDefaultFunc();
        
        patcher->WriteLoHook(0x4E1DE6, (void*)hook_4E1);
        patcher->WriteLoHook(0x4DB980, (void*)hook_4DB);
        patcher->WriteLoHook(0x4DBDF7, (void*)hook_4DB);
    }
    return TRUE;
}



У кого остался этот плагин? Залейте пожалуйста.

http://yadi.sk/d/_iFx69_O6fb_6
turquoise (имена классов).zip

Плохо, что в каждом плагине нет более ясной информации. Описания понятны только разработчику этих плагинов. Как менять имена классов динамически? Справочник Эры тоже сложно написан, без детальной информации, без наглядных примеров. SN:W - а что дальше? Напишите пример. Картинка иллюстрации уже не работает.

Как мне сменить название класса у героя 134?


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post

Сообщений в этой теме
- Berserker   Обсуждение "небольших модов.."   03 Jan 2013, 18:18
- - Iv   По большому счёту, мне и длл-ки на новые классы хв...   08 Feb 2013, 16:02
- - Vade Parvis   *название темы прочлось как "небольшие dlc от...   28 Mar 2013, 16:00
- - feanor   Обсуждение контента, выложенного в этой теме. Пр...   17 Jul 2013, 18:45
- - tolich   Цитата(feanor @ 25 Jul 2013, 08:00) Нет п...   25 Jul 2013, 09:33
- - packa   Кстати, нет возможности многоуровнего подземелья? ...   25 Jul 2013, 10:45
- - feanor   ЦитатаКстати, нет возможности многоуровнего подзем...   25 Jul 2013, 11:48
- - Iv   А генерации подземки по правилам поверхности, чтоб...   25 Jul 2013, 11:51
- - feanor   А дак вроде есть же что-то в этом духе.   25 Jul 2013, 11:59
- - Iv   Хм, не видел. Знаю только, что как-то можно скопир...   25 Jul 2013, 12:40
- - Sav   Для WT есть зеркальные шаблоны, где подземка и наз...   25 Jul 2013, 12:44
|- - Algor   Цитата(Sav @ 25 Jul 2013, 13:44) Для WT е...   25 Jul 2013, 13:55
- - Sav   Ну, там не без кодовых правок конечно, просто под ...   25 Jul 2013, 14:00
- - Iv   Общественность жаждет грязных подробностей!   25 Jul 2013, 14:48
- - Sav   http://forum.heroesworld.ru/showthread.php?t=8611   25 Jul 2013, 15:26
|- - Iv   Цитата(Sav @ 25 Jul 2013, 16:26) http://f...   26 Jul 2013, 00:02
- - Berserker   ЦитатаПри рестарте карты OllyDbg отвлекается на ка...   25 Jul 2013, 15:44
- - feanor   ЦитатаНомер исключения заносится в игнорируемые в ...   25 Jul 2013, 15:49
- - Sav   Да вроде последняя жива: http://forum.heroesworld....   26 Jul 2013, 09:24
- - kostya76   Цитата(Sav @ 25 Jul 2013, 16:00) Ну, там ...   26 Jul 2013, 21:02
- - Iv   Цитата(feanor @ 01 Aug 2013, 14:30) Часы ...   16 Jan 2015, 00:46
- - feanor   В смысле, для определенной клетки? Пока нет, но н...   16 Jan 2015, 01:16
- - Iv   В первую очередь меня интересует интерфейс, чтобы ...   16 Jan 2015, 01:30
- - feanor   Ох, интерфейс - вряд ли.   16 Jan 2015, 01:53
- - feanor   Попросить можно. Получить, по крайней мере от меня...   04 Feb 2015, 00:28
- - hippocamus   Жаль! Никто не хочет писать под ХД ((   04 Feb 2015, 00:37
- - igrik   я хочу, но нужены хотябы парочка образцов...   05 Feb 2015, 15:37
- - tolich   Цитата(feanor @ 10 Feb 2015, 20:56) Архим...   10 Feb 2015, 22:45
- - feanor   Цитата(tolich @ 10 Feb 2015, 23:45) Прост...   11 Feb 2015, 02:13
|- - dr0n   Цитата(feanor @ 11 Feb 2015, 03:13) Да, г...   12 Feb 2015, 16:40
|- - hippocamus   Цитата(dr0n @ 12 Feb 2015, 16:40) С чего ...   12 Feb 2015, 16:55
|- - dr0n   Как ты определил, что они болотные? Они во всех ча...   12 Feb 2015, 17:09
- - tolich   Цитата(feanor @ 11 Feb 2015, 02:13) Толич...   11 Feb 2015, 08:18
- - feanor   ЦитатаКампанейские герои доступны как стартовые Н...   12 Feb 2015, 16:29
- - Orzie   Ну ты двеллинг троллей посмотри. Плюс, мм7.   12 Feb 2015, 17:21
- - hippocamus   dr0n этим троим нельзя давать привязку к городу (н...   12 Feb 2015, 18:36
- - feanor   Цитаталуч может быть только полосой? Еще конусом в...   12 Feb 2015, 18:38
|- - dr0n   Цитата(feanor @ 12 Feb 2015, 19:38) Еще к...   12 Feb 2015, 19:25
- - Ethereal   Перерыл всё что возможно, но так и не смог найти ф...   15 Feb 2015, 14:55
- - feanor   Файла нету. Либо бинарником редактировать, либо че...   15 Feb 2015, 15:43
|- - Ethereal   Цитата(feanor @ 15 Feb 2015, 16:43) Файла...   15 Feb 2015, 19:31
- - Orzie   Нам таки тоже пригодится, да.   15 Feb 2015, 15:45
- - feanor   ЦитатаА я имел ввиду, чтоб состоял не из полосы, а...   15 Feb 2015, 15:45
|- - dr0n   Ну тогда такой вопрос. Болтающиеся флаги героев в ...   15 Feb 2015, 17:49
- - igrik   просто создай свой скрипт и все. Вот например HE:R...   15 Feb 2015, 19:45
- - feanor   Эм, в коде-то тоже !!HE:R2 )   15 Feb 2015, 20:59
- - hippocamus   С бинарником надёжнее, и будет работать в СОД+ХД Н...   15 Feb 2015, 21:34
- - AleXeLix   В прирученных нейтралах Хотовского сатира бы в опл...   15 Feb 2015, 23:48
- - hippocamus   AleXeLix Но он-то хотовский! А плагин создавал...   16 Feb 2015, 00:01
- - Gavek   Если кто знает, поделитесь живыми ссылками на ...   09 Nov 2015, 13:16
- - Iv   Кое-что здесь: http://yadi.sk/d/_iFx69_O6fb_6   09 Nov 2015, 13:23
- - feanor   Шо, опять?(с) храните в облаке, говорили они..   10 Nov 2015, 17:07
- - Orzie   "Чем больше зеркал, тем лучше", говорили...   10 Nov 2015, 17:15
- - Richter   Добавил существ с помощью amethyst.dll, но... нужн...   20 Nov 2015, 10:04
- - Iv   А анимация кастования в дефе монстра есть?   20 Nov 2015, 10:26
|- - Richter   Цитата(Iv @ 20 Nov 2015, 12:26) А анимаци...   20 Nov 2015, 10:48
- - igrik   В анимации выстрела должно быть не меньше 9 кадров...   20 Nov 2015, 11:08
|- - Richter   Цитата(igrik @ 20 Nov 2015, 13:08) В аним...   21 Nov 2015, 13:31
- - feanor   Номера трындец неправильные. Это индексы в таблица...   21 Nov 2015, 14:00
- - MasterOfPuppets   Цитата(feanor @ 14 Aug 2016, 00:56) Аними...   14 Aug 2016, 15:48
|- - MasterOfPuppets   Цитата(feanor @ 14 Aug 2016, 00:56) Аними...   24 Nov 2016, 16:10
|- - igrik   Цитата(MasterOfPuppets @ 24 Nov 2016, 16...   25 Nov 2016, 15:41
- - feanor   Она эровское апи пытается подтянуть? Попробуй эт...   14 Aug 2016, 16:34
|- - MasterOfPuppets   Цитата(feanor @ 14 Aug 2016, 16:34) Она э...   14 Aug 2016, 16:43
- - igrik   Цитата(MoP)... и плагин спокойно работает. Проверь...   18 Aug 2016, 13:01
|- - MasterOfPuppets   Проверил. Есть.   18 Aug 2016, 14:36
- - feanor   int creature_anim_coeffs[256];   24 Nov 2016, 17:20
- - fireman   Ben, закинь в гугл/яндекс диск в ближайшие лет 5 н...   21 Aug 2017, 23:09
- - feanor   ЦитатаBen, закинь в гугл/яндекс диск в ближайшие л...   23 Aug 2017, 19:17
- - hippocamus   Ну, так дропбокс убил только прямые ссылки (и то -...   23 Aug 2017, 19:52
- - feanor   ЦитатаНу, так дропбокс убил только прямые ссылки (...   23 Aug 2017, 22:57
- - hippocamus   Я где-то читал, что нужно сделать с неработающей п...   24 Aug 2017, 00:44
- - Barin   Цитата(feanor @ 08 Feb 2013, 15:55) Настр...   24 May 2018, 00:56
|- - Iv   Цитата(Barin @ 24 May 2018, 00:56) Цитата...   24 May 2018, 09:18
- - igrik   Feanor, а тут ошибки нет в определении цикла. Може...   24 May 2018, 10:18
- - feanor   На всякий случай (:   24 May 2018, 11:14
- - Barin   Цитата(Iv @ 24 May 2018, 09:18) Цитата(Ba...   24 May 2018, 17:30
- - igrik   Ничего сложного: 1. Переименуй плагин в "turq...   24 May 2018, 18:19
- - Barin   Цитата(igrik @ 24 May 2018, 18:19) Ничего...   24 May 2018, 19:31
- - hippocamus   Текстов к грузятся и обрабатываются сразу при загр...   25 May 2018, 23:32
- - feanor   Можно вроде бы сделать RedirectFile и перезагрузит...   26 May 2018, 12:42
- - hippocamus   И все другие сделанные изменения откатятся? Тексты...   26 May 2018, 19:50
- - hippocamus   Цитата(Richter @ 11 Feb 2019, 15:15) Небо...   11 Feb 2019, 16:19
- - Richter   1 км попробовал сразу, цифры получались слишком ...   11 Feb 2019, 17:17
|- - Algor   Настраиваемые имена классов Ссылки битые. Наскольк...   10 Mar 2019, 15:59
|- - feanor   Цитата(Algor @ 10 Mar 2019, 16:59) Настра...   11 Mar 2019, 11:33
- - Iv   Моя ссылка живая http://yadi.sk/d/_iFx69_O6fb_6   11 Mar 2019, 11:20
- - ALEKCEN   Печально,что тема умерла,хотя хотелось-бы нескольк...   05 Aug 2025, 11:48
- - XEPOMAHT   Цитата(ALEKCEN @ 05 Aug 2025, 11:48) може...   05 Aug 2025, 19:56


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

 



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