UjAPI

Добавлен , опубликован
Лауреат премии 2023 года


Данный ресурс работает ТОЛЬКО с патчами 1.24e/1.26а/1.27a/1.27b/1.28f

Как пользоваться?

  1. Распакуйте все файлы из архива, желательно в отдельную папку, вот так:
скриншоты
  1. Запустите UjAPI.exe.
    • Если же у вас приложение не запускается, то скачайте и установите: .NET Framework 4.7.2.
    • Если же ни в игре, ни в World Editor UjAPI не работает, то скачайте и установите: C++ Redistributable 2012
  2. Установите путь для Warcraft 3, вот так:
скриншоты
  • Можно указать и на Frozen Throne.exe или же на Warcraft III.exe (но рекомендуется использовать именно war3.exe для патчей 1.27б и ниже).
  • На патче 1.28.5(f) рекомендуется использовать непосредственно Warcraft III.exe.
  1. Установите путь для World Editor, вот так:
скриншоты
  • Рекомендуется использовать JNGP версии Прометея: скачать
  • Пароль от архива: JNGP
4.1 Для удобства, добавления подсветки/автозаполнения, скачайте: [UjAPI] TESH Подсветка (спасибо DevilVsLife и Nazarpunk) и просто положите его в папку tesh/data вот так:
скриношоты
  1. Готово, вы можете теперь смело запускать как игру, так и World Editor через UjAPI Launcher.
    • Для использования оконного режима в Warcraft III нажмите галочку на "Additional command line arguments" и в появившееся окно, пропишите -window, вот так:
скриншоты

Полезные файлы

`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
1
20
9 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.31.115

  1. Новые Константы:
constant unitweaponintegerfield UNIT_WEAPON_IF_ATTACK_DAMAGE_BONUS_FROM_STATS = ConvertUnitWeaponIntegerField('udbs')
  1. Исправлена критическая ошибка вызванная SetBuffField/SetAbilityField, когда вызывалась внутренняя проверка IsBuff.
1
20
9 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.31.116

  1. Исправлена критическая ошибка вызванная CreateIllusionFromUnit на отвратительном 1.28f.
  2. Исправлены ошибки UjAPI, которые иногда происходили с запуском патча 1.28f.
1
20
9 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.32.118

  1. Новые Нативные Функции:
    native CreateIllusionFromUnitEx takes unit whichUnit, boolean copyPassives returns unit
    native GetAbilityOwningItem takes ability whichAbility returns item
    native ShowUnitAbilityEx takes unit whichUnit, integer abilityId, boolean show, boolean checkDuplicates returns nothing
    native DisableUnitAbilityEx takes unit whichUnit, integer abilityId, boolean hide, boolean disable, boolean checkDuplicates returns nothing
    native EnableUnitAbilityEx takes unit whichUnit, integer abilityId, boolean show, boolean enable, boolean checkDuplicates returns nothing
  2. SetUnitBaseDamage и его эквиваленты в виде полей теперь включают в себя дополнительный урон от главной характеристики при перерасчёте.
  3. SetUnitBaseDamage и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  4. SetUnitArmour и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  5. SetUnitArmourType и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  6. SetUnitPrimaryStat и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  7. SetUnitMoveSpeed и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  8. SetUnitBonusMoveSpeedPercent и его эквиваленты в виде полей теперь обновляют интерфейс, для отображения изменений.
  9. Исправлено некорректное обновление дополнительных характеристик через UnitUpdateInfoBar.
  10. Добавлен перехват критических ошибок, это по большей части полезно для патчей 1.27b и 1.28f, теперь в консоль будет выводится базовый адрес game.dll.
  11. UpdateUnitInfoBar теперь возвращает null, так как оригинально возвращаемое значение являлось бесполезным.
  12. UnitUnapplyUpgrades теперь возвращает null, так как оригинально возвращаемое значение являлось бесполезным.
  13. UnitApplyUpgrades теперь возвращает null, так как оригинально возвращаемое значение являлось бесполезным.
  14. Исправлены некорректно работающие поля BUFF_SF_TOOLTIP_NORMAL и BUFF_SF_TOOLTIP_NORMAL_EXTENDED.
  15. HandleListGetBuffByIndex теперь возвращает баффы, как и должно было.
  16. ShowUnitAbility/DisableUnitAbility/EnableUnitAbility более не срабатывают на всех дубликатах, это было вынесено как флаг в Ex версию.
1
20
8 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.33.121

  1. Новые Константы:
    constant originframetype ORIGIN_FRAME_ITEM_BUTTON_COOLDOWN_INDICATOR = ConvertOriginFrameType(47)
    constant originframetype ORIGIN_FRAME_ITEM_BUTTON_AUTOCAST_FRAME = ConvertOriginFrameType(48)
    constant originframetype ORIGIN_FRAME_ITEM_BUTTON_CHARGES_FRAME = ConvertOriginFrameType(49)
    constant originframetype ORIGIN_FRAME_ITEM_BUTTON_CHARGES_TEXT = ConvertOriginFrameType(50)
  2. Новые Нативные Функции:
    native SetProjectileMatrixScale takes projectile whichProjectile, real x, real y, real z returns nothing

    native SetWidgetMatrixScale takes widget whichWidget, real x, real y, real z returns nothing
    native ResetWidgetMatrix takes widget whichWidget returns nothing

    native SetDestructableMatrixScale takes destructable whichDestructable, real x, real y, real z returns nothing
    native ResetDestructableMatrix takes destructable whichDestructable returns nothing

    native SetItemMatrixScale takes item whichItem, real x, real y, real z returns nothing
    native ResetItemMatrix takes item whichItem returns nothing

    native IsUnitAutoOrientationEnabled takes unit whichUnit returns boolean
    native UnitEnableAutoOrientation takes unit whichUnit, boolean enable returns nothing
    native GetUnitYaw takes unit whichUnit returns real
    native SetUnitYaw takes unit whichUnit, real yaw returns boolean
    native GetUnitPitch takes unit whichUnit returns real
    native SetUnitPitch takes unit whichUnit, real pitch returns boolean
    native GetUnitRoll takes unit whichUnit returns real
    native SetUnitRoll takes unit whichUnit, real roll returns boolean
    native SetUnitMatrixScale takes unit whichUnit, real x, real y, real z returns nothing
    native ResetUnitMatrix takes unit whichUnit returns nothing
    native SetUnitOrientation takes unit whichUnit, real yaw, real pitch, real roll returns nothing
    native SetUnitOrientationEx takes unit whichUnit, real yaw, real pitch, real roll, integer eulerOrder returns nothing

    native ResetFrameSpriteMatrix takes framehandle whichFrame returns nothing
  3. ORIGIN_FRAME_COMMAND_BUTTON теперь использует тот же тип индексации что на Reforged.
  4. ORIGIN_FRAME_COMMAND_BUTTON_COOLDOWN_INDICATOR теперь использует тот же тип индексации что на Reforged.
  5. ORIGIN_FRAME_COMMAND_BUTTON_AUTOCAST_FRAME теперь использует тот же тип индексации что на Reforged.
  6. ORIGIN_FRAME_COMMAND_BUTTON_CHARGES_FRAME теперь использует тот же тип индексации что на Reforged.
  7. ORIGIN_FRAME_COMMAND_BUTTON_CHARGES_TEXT теперь использует тот же тип индексации что на Reforged.
  8. Исправлена ошибка, по которой UjAPIApp не работала со сторонними лаунчерами на 1.28f.
    Пометка: эта ошибка была "представлена" когда был оптимизирован метод запуска 1.28f.
  9. Исправлена ошибка по которой AntiHack не вызывал сделанных нововведений/изменений.
  10. Добавлена дополнительная проверка безопасности для Projectile событий.
  11. GetTriggerUnit теперь работает с Projectile событиями.
  12. Исправлена критическая ошибка от SetFrameColour при случайной комбинации цветов для CSimpleRegion/CSimpleFontString/CSimpleTexture.
  13. Ключевой набор слов SpaceRotation изменён на OrientationEx.
  14. Исправлена опечатка в ResetTrackableetMatrix на ResetTrackableMatrix.
  15. Добавлен перехват SetUnitFacingTimed для возможности поворота юнита при отключённой Авто Ориентации.
  16. Добавлен перехват SetUnitFacing для возможности поворота юнита при отключённой Авто Ориентации.
  17. Исправлены CreateProjectile/Ex возвращающие нуль вместо хендла.
  18. SetFrameSpriteMaterialScale переименовано в SetFrameSpriteMatrixScale.
1
20
8 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.33.122

  1. Была проведена оптимизация/снижение количества проверок/срабатываний.
    Пометка 1: Дополнительные проверки наверное были перебором и скорее всего не нужны.
    Пометка 2: Возможно эти проверки в будущем будут возвращены как настраиваемые.
1
20
8 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.34.124

  1. Новые Нативные Функции:
    native AntiHackEnableEx takes boolean enable, boolean isModuleCheck, boolean isProcessCheck returns nothing
    native AntiHackEnableModuleCheck takes boolean enable returns nothing
    native AntiHackEnableProcessCheck takes boolean enable returns nothing
  2. EnableAntiHack переименован в AntiHackEnable.
1
20
8 месяцев назад
1
Вышла новая версия! Прокрутить к ресурсу

v1.0.35.127

  1. Новые Константы:
    constant originframetype ORIGIN_FRAME_TRAINABLE_BUTTON = ConvertOriginFrameType(51)
    constant originframetype ORIGIN_FRAME_CARGO_BUTTON = ConvertOriginFrameType(52)
    constant originframetype ORIGIN_FRAME_GROUP_BUTTON = ConvertOriginFrameType(53)
  2. Новые Нативные Функции:
    native RemoveProjectile takes projectile whichProjectile returns nothing
  3. Исправлена обработка Редактора Объектов, теперь стандартный РО может быть использован с UjAPI.
  4. FRAMEEVENT_DIALOG_ACCEPT теперь полноценно реализован.
  5. FRAMEEVENT_DIALOG_CANCEL теперь полноценно реализован.
  6. FRAMEEVENT_SPRITE_ANIM_UPDATE теперь полноценно реализован.
    Пометка: это событие происходит каждое обновление экрана для фрейма, я НЕ советую использовать это событие, если только оно именно необходимо.
  7. Оптимизировано и уменьшено количество отправляемых пакетов от действий Фреймов.
    Пометка: эта система банально ищет схожие/идентичные события и удаляет их из цикла посылаемых пакетов.
  8. Исправлена критическая ошибка вызываемая любым приказом на SHIFT. (это было связано с путевыми точками).
  9. Исправлена критическая ошибка при убийстве снаряда в момент его запуска.
  10. Исправлен отсутствующий пересчёт базовой скорости в MorphUnitToTypeId/Ex.
  11. FRAMEEVENT_CONTROL_CLICK теперь работает со фреймом миникарты.
  12. FRAMEEVENT_CONTROL_RELEASE теперь работает со фреймом миникарты.
  13. FRAMEEVENT_CONTROL_DRAG теперь работает со фреймом миникарты.
  14. Исправлена критическая ошибка от CreateDoodad.
0
20
8 месяцев назад
0
Вышла новая версия! Прокрутить к ресурсу

v1.0.35.128

  1. Исправлена неправильная обработка GetEventDamage.
  2. Исправлена неправильная обработка Магического/Немагического урона.
    Пометка: IsEventAttack теперь работает правильно, UnitDamageTarget всегда считается "магической" атакой, однако если установлен буль isAttack, то добавится 0x100 флаг - "урон при попадании" (то бишь старая проверка на атаку).
0
20
8 месяцев назад
0
Вышла новая версия! Прокрутить к ресурсу

v1.0.35.129

  1. Исправлена ошибка по которой IsAttack некорректно срабатывала на юнитах ближнего боя имеющими Орб-Эффекты.
  2. Исправлена нерабочая кнопка проверки обновлений в UjAPIApp.
0
20
7 месяцев назад
0
Вышла новая версия! Прокрутить к ресурсу

v1.0.36.132

  1. Новые Нативные Функции:
    native GetStringCount takes nothing returns integer
    native IsUnitTargetable takes unit whichUnit returns boolean
    native SetUnitTargetable takes unit whichUnit, boolean targetable returns nothing
    native GetFrameTextColourEx takes framehandle whichFrame, integer stateId returns integer 0 = font | 1 = highlighted | 2 = disabled | 3 = shadow
    native GetFrameTextColour takes framehandle whichFrame returns integer
    native SetFrameTextColourEx takes framehandle whichFrame, integer stateId, integer colour returns nothing
  2. Значительная оптимизация кода для Frame API, также было удалено большое количество теперь уже бесполезного кода.
  3. GetFrameWidth была переписана, теперь она работает успешно на всех типах фреймов и более не вызывает критическую ошибку на некоторых типах фреймов.
  4. GetFrameHeight была переписана, теперь она работает успешно на всех типах фреймов и более не вызывает критическую ошибку на некоторых типах фреймов.
  5. IsFrameEnabled теперь работает с CSimpleButton и с его дочерними фреймами.
  6. Исправлена критическая ошибка от атаки юнита с типом атаки Артиллерия, имея какой-либо орб-эффект.
    Пометка: это очень старая критическая ошибка самой игры.
  7. Исправлена критическая ошибка при подборе книг/рун на силу юнитами не героями.
  8. Исправлена критическая ошибка при подборе книг/рун на ловкость юнитами не героями.
  9. Исправлена критическая ошибка при подборе книг/рун на интеллект юнитами не героями.
  10. Исправлена критическая ошибка при подборе книг/рун на опыт юнитами не героями.
  11. Исправлена критическая ошибка при выдаче Инженерии (ANeg) юниту не герою.
  12. Исправлена критическая ошибка при движении юнита-владельца заклинаний типа Drain, которые были вызваны через CastAbilityTarget.
  13. Потенциально исправлена очень редкая ошибка, ввиду которой игрок терял контроль над своими юнитами, но мог контролировать чужих.
    Пометка 1: другие игроки МОГУТ контролировать юнитов этого игрока, так что ошибка локальная.
    Пометка 2: эта ошибка оказалась не связанной с выдачей контролей игроков.
0
31
7 месяцев назад
0
native IsUnitTargetable takes unit whichUnit returns boolean
эта функция делает то же самое, что и выдача способности 'Aloc' (locust\москиты)..?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.