0
20
6 месяцев назад
0

» WarCraft 3 / Visual Studio Code: WarCode

На самом деле я тоже не понял суть того примера с .js файлом.
Я понимаю если бы разница была маленькая, но когда текст не сливается с разметкой - это явно удобнее. Да и при желании тексту через IntelliJ намного проще сменить расцветку, чем оверрайдить 100500 вещей в ВСкоде.
0
20
6 месяцев назад
0

» WarCraft 3 / WFE - Warcraft Feature Extender

  1. Лидерборд опция если отключена в модификации интерфейса то он будет всегда отключен.
  2. Нет, не сообщали, но раз у тебя есть такая проблема, то отключи «отображение союзных заклинаний».
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI

Unryze, когда автотесты?
Надеюсь никогда. )0
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия!

v1.0.39.145

  1. Исправлено SetSpecialEffectX/Y/Z, предыдущее исправление для SetWidgetX/Y/Z повлияло на эту ошибку.
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI

Вышла новая версия!

v1.0.39.145

  1. Исправлено SetSpecialEffectX/Y/Z, предыдущее исправление для SetWidgetX/Y/Z повлияло на эту ошибку.
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия!

v1.0.39.144

  1. Исправлены SetWidgetX/Y/Z отделяющие спрайт от виджета.
  2. Проведена оптимизация внутреннего кода, а также удаление некоторых данных для уменьшения веса файла.
2
20
6 месяцев назад
2

» Unryze Jass API / UjAPI

Вышла новая версия!

v1.0.39.144

  1. Исправлены SetWidgetX/Y/Z отделяющие спрайт от виджета.
  2. Проведена оптимизация внутреннего кода, а также удаление некоторых данных для уменьшения веса файла.
1
20
6 месяцев назад
Отредактирован Unryze
1

» Unryze Jass API / UjAPI

SetWidgetX() ломает отображение модели юнита.
Не нужно использовать Get/SetWidgetX/Y/Z на юнитах, это бесполезно, ибо по скорости разницы толком нет. Ошибку поправил.
Спасибо.
0
20
6 месяцев назад
Отредактирован Unryze
0

» WarCraft 3 / Visual Studio Code: ujass

Скажи это чипаку. Благодаря опенсурсу он вообще работает.
Целых 5 контрибуторов, из которых лишь 2 (включая тебя) что-то внесли.
Загруженные файлы
0
20
6 месяцев назад
0

» WarCraft 3 / Visual Studio Code: ujass

Vlod:
Суть в том, что этот "опенсорс" работает далеко не везде, а точнее почти нигде. Где он работает - это крупные и как ты сказал "востребованные" проекты. Которые в "одиночку" никто не потащит и явно не попытается себе присвоить. Говоря ещё проще, умелых людей в нашей сфере осталось очень мало, и этот опенсорс не даст ничего.
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия!

v1.0.39.143

  1. ParseTags теперь работает с данными заклинаний.
  2. Исправлена критическая ошибка от любого типа HandleListGetCount.
2
20
6 месяцев назад
2

» Unryze Jass API / UjAPI

Вышла новая версия!

v1.0.39.143

  1. ParseTags теперь работает с данными заклинаний.
  2. Исправлена критическая ошибка от любого типа HandleListGetCount.
1
20
6 месяцев назад
Отредактирован Unryze
1

» Unryze Jass API / UjAPI

Скрины - бесполезные. Пожалуйста, на будуще, прикладывай error.txt и желательно .dmp файл. Но скорее всего ошибка связана с HandleList ибо я переделывал её код.
Ну или же прикрепил бы карту, чтобы я запустил и мог сам увидеть ошибку.
Редактирование: Ошибку нашёл и поправил, если на хотфиксе у тебя всё ещё будет фатал, то пожалуйста txt/dmp или же карту, ну или хотя бы кусок кода, который вызывает фатал.
Спасибо.
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия!

v1.0.39.142

  1. Новые Типы:
    type renderstage extends handle
  2. Новые Конверторы:
    constant native ConvertRenderStage takes integer i returns renderstage
  3. Новые Константы:
    constant renderstage RENDER_STAGE_SKYBOX = ConvertRenderStage(0)
    constant renderstage RENDER_STAGE_TERRAIN = ConvertRenderStage(1)
    constant renderstage RENDER_STAGE_FOG_OF_WAR = ConvertRenderStage(2)
    constant renderstage RENDER_STAGE_TERRAIN_SHADOW = ConvertRenderStage(3)
    constant renderstage RENDER_STAGE_WATER_SHADOW = ConvertRenderStage(4)
    constant renderstage RENDER_STAGE_BLIGHT = ConvertRenderStage(5)
    constant renderstage RENDER_STAGE_WEATHER = ConvertRenderStage(6)
    constant renderstage RENDER_STAGE_SELECTION_CIRCLE = ConvertRenderStage(7)
    constant renderstage RENDER_STAGE_INDICATOR = ConvertRenderStage(8)
    constant renderstage RENDER_STAGE_FOOTPRINT = ConvertRenderStage(9)
    constant renderstage RENDER_STAGE_DOODAD = ConvertRenderStage(10)
    constant renderstage RENDER_STAGE_SPRITE = ConvertRenderStage(11)
    constant renderstage RENDER_STAGE_SELECTION_SPRITE = ConvertRenderStage(12)
    constant renderstage RENDER_STAGE_DECORATION = ConvertRenderStage(13)
    constant renderstage RENDER_STAGE_WATER = ConvertRenderStage(14)
    constant renderstage RENDER_STAGE_SELECTION_BOX = ConvertRenderStage(15)
    constant renderstage RENDER_STAGE_TEXTURE = ConvertRenderStage(16)
    constant renderstage RENDER_STAGE_OCCLUSION_MASK = ConvertRenderStage(17)
    constant renderstage RENDER_STAGE_BUILDING = ConvertRenderStage(18)
    constant renderstage RENDER_STAGE_UBERSPLAT = ConvertRenderStage(19)
    constant renderstage RENDER_STAGE_LIGHTNING = ConvertRenderStage(20)
    constant renderstage RENDER_STAGE_TEXTTAG = ConvertRenderStage(21)
  4. Новые Нативные Функции:
    native GetFPS takes nothing returns real

    native GetAttackSpeedMinBonus takes nothing returns real
    native SetAttackSpeedMinBonus takes real value returns nothing
    native GetAttackSpeedMaxBonus takes nothing returns real
    native SetAttackSpeedMaxBonus takes real value returns nothing
    native GetMoveSpeedMinAllowed takes nothing returns real
    native SetMoveSpeedMinAllowed takes real value returns nothing
    native GetMoveSpeedMaxAllowed takes nothing returns real
    native SetMoveSpeedMaxAllowed takes real value returns nothing

    native IsSelectionEnabled takes nothing returns boolean
    native EnableSelection takes boolean enable returns nothing
    native IsSelectionCircleEnabled takes nothing returns boolean
    native EnableSelectionCircle takes boolean enable returns nothing
    native IsTargetIndicatorEnabled takes nothing returns boolean
    native EnableTargetIndicator takes boolean enable returns nothing
    native IsRenderStage takes renderstage renderStage returns boolean
    native EnableRenderStage takes renderstage renderStage, boolean enable returns nothing
    native IsStatbarEnabled takes nothing returns boolean
    native EnableStatbar takes boolean enable returns nothing

    native HandleListGetSpriteCount takes handlelist whichHandleList returns integer
    native HandleListGetSpriteByIndex takes handlelist whichHandleList, integer index returns sprite
    native HandleListGetFilterSprite takes nothing returns sprite
    native HandleListGetEnumSprite takes nothing returns sprite

    native SaveSpriteHandle takes hashtable table, integer parentKey, integer childKey, sprite whichsprite returns boolean
    native SaveDoodadHandle takes hashtable table, integer parentKey, integer childKey, doodad whichDoodad returns boolean
    native SaveTextFileHandle takes hashtable table, integer parentKey, integer childKey, textfilehandle whichFile returns boolean
    native LoadSpriteHandle takes hashtable table, integer parentKey, integer childKey returns sprite
    native LoadDoodadHandle takes hashtable table, integer parentKey, integer childKey returns doodad
    native LoadTextFileHandle takes hashtable table, integer parentKey, integer childKey returns textfilehandle
  5. Исправлена критическая ошибка при создании SIMPLETEXT/SIMPLETEXTURE через CreateFrame/CreateFrameByType с родителем не являющимся простым фреймом.
  6. Исправлена IsFrameVisible для SimpleFrames, всегда возвращающая "истину".
3
20
6 месяцев назад
3

» Unryze Jass API / UjAPI

Вышла новая версия!

v1.0.39.142

  1. Новые Типы:
    type renderstage extends handle
  2. Новые Конверторы:
    constant native ConvertRenderStage takes integer i returns renderstage
  3. Новые Константы:
    constant renderstage RENDER_STAGE_SKYBOX = ConvertRenderStage(0)
    constant renderstage RENDER_STAGE_TERRAIN = ConvertRenderStage(1)
    constant renderstage RENDER_STAGE_FOG_OF_WAR = ConvertRenderStage(2)
    constant renderstage RENDER_STAGE_TERRAIN_SHADOW = ConvertRenderStage(3)
    constant renderstage RENDER_STAGE_WATER_SHADOW = ConvertRenderStage(4)
    constant renderstage RENDER_STAGE_BLIGHT = ConvertRenderStage(5)
    constant renderstage RENDER_STAGE_WEATHER = ConvertRenderStage(6)
    constant renderstage RENDER_STAGE_SELECTION_CIRCLE = ConvertRenderStage(7)
    constant renderstage RENDER_STAGE_INDICATOR = ConvertRenderStage(8)
    constant renderstage RENDER_STAGE_FOOTPRINT = ConvertRenderStage(9)
    constant renderstage RENDER_STAGE_DOODAD = ConvertRenderStage(10)
    constant renderstage RENDER_STAGE_SPRITE = ConvertRenderStage(11)
    constant renderstage RENDER_STAGE_SELECTION_SPRITE = ConvertRenderStage(12)
    constant renderstage RENDER_STAGE_DECORATION = ConvertRenderStage(13)
    constant renderstage RENDER_STAGE_WATER = ConvertRenderStage(14)
    constant renderstage RENDER_STAGE_SELECTION_BOX = ConvertRenderStage(15)
    constant renderstage RENDER_STAGE_TEXTURE = ConvertRenderStage(16)
    constant renderstage RENDER_STAGE_OCCLUSION_MASK = ConvertRenderStage(17)
    constant renderstage RENDER_STAGE_BUILDING = ConvertRenderStage(18)
    constant renderstage RENDER_STAGE_UBERSPLAT = ConvertRenderStage(19)
    constant renderstage RENDER_STAGE_LIGHTNING = ConvertRenderStage(20)
    constant renderstage RENDER_STAGE_TEXTTAG = ConvertRenderStage(21)
  4. Новые Нативные Функции:
    native GetFPS takes nothing returns real

    native GetAttackSpeedMinBonus takes nothing returns real
    native SetAttackSpeedMinBonus takes real value returns nothing
    native GetAttackSpeedMaxBonus takes nothing returns real
    native SetAttackSpeedMaxBonus takes real value returns nothing
    native GetMoveSpeedMinAllowed takes nothing returns real
    native SetMoveSpeedMinAllowed takes real value returns nothing
    native GetMoveSpeedMaxAllowed takes nothing returns real
    native SetMoveSpeedMaxAllowed takes real value returns nothing

    native IsSelectionEnabled takes nothing returns boolean
    native EnableSelection takes boolean enable returns nothing
    native IsSelectionCircleEnabled takes nothing returns boolean
    native EnableSelectionCircle takes boolean enable returns nothing
    native IsTargetIndicatorEnabled takes nothing returns boolean
    native EnableTargetIndicator takes boolean enable returns nothing
    native IsRenderStage takes renderstage renderStage returns boolean
    native EnableRenderStage takes renderstage renderStage, boolean enable returns nothing
    native IsStatbarEnabled takes nothing returns boolean
    native EnableStatbar takes boolean enable returns nothing

    native HandleListGetSpriteCount takes handlelist whichHandleList returns integer
    native HandleListGetSpriteByIndex takes handlelist whichHandleList, integer index returns sprite
    native HandleListGetFilterSprite takes nothing returns sprite
    native HandleListGetEnumSprite takes nothing returns sprite

    native SaveSpriteHandle takes hashtable table, integer parentKey, integer childKey, sprite whichsprite returns boolean
    native SaveDoodadHandle takes hashtable table, integer parentKey, integer childKey, doodad whichDoodad returns boolean
    native SaveTextFileHandle takes hashtable table, integer parentKey, integer childKey, textfilehandle whichFile returns boolean
    native LoadSpriteHandle takes hashtable table, integer parentKey, integer childKey returns sprite
    native LoadDoodadHandle takes hashtable table, integer parentKey, integer childKey returns doodad
    native LoadTextFileHandle takes hashtable table, integer parentKey, integer childKey returns textfilehandle
  5. Исправлена критическая ошибка при создании SIMPLETEXT/SIMPLETEXTURE через CreateFrame/CreateFrameByType с родителем не являющимся простым фреймом.
  6. Исправлена IsFrameVisible для SimpleFrames, всегда возвращающая "истину".
0
20
6 месяцев назад
Отредактирован Unryze
0

» WarCraft 3 / WFE - Warcraft Feature Extender

Я так понимаю, что после сворачивания игры курсор еле ползает. Достаточно неудобно, на самом деле.
Что опять же не происходит, если бы такая проблема была, о ней бы сообщили уже очень давно.
  1. Override Indicator -> рисует индикатор из WFEMPQ, то бишь игнорируя индикаторы используемые картой, если они заменяют стандарт. На скрине ничего интресного не вижу, если кулдаун начался, то индикатор будет рисоваться. Так как кд выше 300 сек, то он занимает позицию, что будто осталось 300 сек. Игра не рассчитана на кд выше 300 секунд, потому создаются вот такие визуальные "косяки".
  2. Не знаю, ответ выше. Полнокэранный режим в целом костыльный. Имитировать его можно используя -window и borderless режим. Ну и если 2 монитора, то использовать удержание мыши.
На крайний отключи "Disable Pause", хотя оно не должно создавать проблемы при игре по сети, но мало ли.
0
20
6 месяцев назад
Отредактирован Unryze
0

» WarCraft 3 / WFE - Warcraft Feature Extender

  1. Пропадает индикатор (анимация) отката кулдауна время от времени в кастомке в бараках - на 1 юнита, на нескольких, каждый раз по разному, потом возвращается и так по новой рандомом. тыкал везде в проге, ничего не помогает. И что дает кнопка перехватить индикатор? В факе ее нет
  2. Если свернуть вар 3, то курсор еле ползает.

Софт еще не дает отключить откат кд в цифрах))
  1. Без понятия, за столько лет ты первый кто пишет о такой проблеме.
  2. Не понял о чём речь, да и если игра свёрнута, какая разница?
Про баг с цифрами знаю, когда будет «ремейк» там это будет исправлено.
0
20
6 месяцев назад
0

» XGM — Премия года / Премия 2023 года

Заявка на участие
Работа для номинации: Лучший Разработчик
  • UjAPI
  • Дата создания: 10/10/2022 | Дата Глобального изменения: 23/10/2023 и 30/10/2023
  • Ссылка на работу: UjAPI
  • Проект по расширению функционала игры, снятие всевозможных лимитов, а так же создание инструментария для разработчиков.
0
20
6 месяцев назад
0

» Unryze Jass API / UjAPI - Что нового?

Вышла новая версия!

v1.0.38.140

  1. Новые Нативные Функции:
    native MathRealModulo takes real dividend, real divisor returns real
    native MathIntegerModulo takes integer dividend, integer divisor returns integer
    Note: I actually registered these natives long time ago, but forgot to add them to common.j.
    native GetSpriteModel takes sprite whichSprite returns string

    native GetSpecialEffectModel takes effect whichEffect returns string

    native GetTrackableModel takes trackable whichTrackable returns string

    native GetDestructableVariation takes destructable whichDestructable returns integer
    native SetDestructableVariation takes destructable whichDestructable, integer variation returns nothing
    native SetDestructableVariationEx takes destructable whichDestructable, integer variation, boolean ignoreStateCheck returns nothing ignoreStateCheck will skip checking for dead/alive variations of the model.
    native IsDestructableBlighted takes destructable whichDestructable returns boolean
    native SetDestructableBlighted takes destructable whichDestructable, boolean flag returns nothing
    native SetDestructablePositionWithZ takes destructable whichDestructable, real x, real y, real z returns nothing
    native SetDestructableZ takes destructable whichDestructable, real z returns nothing
    native GetDestructableModel takes destructable whichDestructable returns string

    native GetItemModel takes item whichItem returns string

    native SetUnitVisibleByPlayer takes unit whichUnit, player whichPlayer, boolean flag returns nothing
    native SetUnitDetectableByPlayer takes unit whichUnit, player whichPlayer, boolean flag returns nothing
    native GetUnitModel takes unit whichUnit returns string

    native GetProjectileModel takes projectile whichProjectile returns string

    native GetFrameSpriteModel takes framehandle whichFrame returns string
  2. Удалённые Нативные Функции:
    native GetUnitLocustFlag takes unit whichUnit returns integer
  3. Потенциально исправлена ошибка Jass Logger'а, ввиду которой иногда неправильно обрабатывался байткод.
  4. Было переделано чтение чексуммы скриптов, теперь оно должно быть более "мягким" для карт, у которых нет war3map.j.
  5. Исправлен парсер w3i, ввиду которого неправильно обрабатывался заголовок/подзаголовок/текст загрузочных экранов карт/кампаний.
  6. Удалён лимит пищи в 300 единиц.
  7. Исправлены все получатели/установщики Z для спрайтов/моделей и так далее. Поломка была создана из-за маленькой ошибки.
5
20
6 месяцев назад
5

» Unryze Jass API / UjAPI

Вышла новая версия!

v1.0.38.140

  1. Новые Нативные Функции:
    native MathRealModulo takes real dividend, real divisor returns real
    native MathIntegerModulo takes integer dividend, integer divisor returns integer
    Note: I actually registered these natives long time ago, but forgot to add them to common.j.
    native GetSpriteModel takes sprite whichSprite returns string

    native GetSpecialEffectModel takes effect whichEffect returns string

    native GetTrackableModel takes trackable whichTrackable returns string

    native GetDestructableVariation takes destructable whichDestructable returns integer
    native SetDestructableVariation takes destructable whichDestructable, integer variation returns nothing
    native SetDestructableVariationEx takes destructable whichDestructable, integer variation, boolean ignoreStateCheck returns nothing ignoreStateCheck will skip checking for dead/alive variations of the model.
    native IsDestructableBlighted takes destructable whichDestructable returns boolean
    native SetDestructableBlighted takes destructable whichDestructable, boolean flag returns nothing
    native SetDestructablePositionWithZ takes destructable whichDestructable, real x, real y, real z returns nothing
    native SetDestructableZ takes destructable whichDestructable, real z returns nothing
    native GetDestructableModel takes destructable whichDestructable returns string

    native GetItemModel takes item whichItem returns string

    native SetUnitVisibleByPlayer takes unit whichUnit, player whichPlayer, boolean flag returns nothing
    native SetUnitDetectableByPlayer takes unit whichUnit, player whichPlayer, boolean flag returns nothing
    native GetUnitModel takes unit whichUnit returns string

    native GetProjectileModel takes projectile whichProjectile returns string

    native GetFrameSpriteModel takes framehandle whichFrame returns string
  2. Удалённые Нативные Функции:
    native GetUnitLocustFlag takes unit whichUnit returns integer
  3. Потенциально исправлена ошибка Jass Logger'а, ввиду которой иногда неправильно обрабатывался байткод.
  4. Было переделано чтение чексуммы скриптов, теперь оно должно быть более "мягким" для карт, у которых нет war3map.j.
  5. Исправлен парсер w3i, ввиду которого неправильно обрабатывался заголовок/подзаголовок/текст загрузочных экранов карт/кампаний.
  6. Удалён лимит пищи в 300 единиц.
  7. Исправлены все получатели/установщики Z для спрайтов/моделей и так далее. Поломка была создана из-за маленькой ошибки.
1
20
6 месяцев назад
Отредактирован Unryze
1

» WarCraft 3 / Сценарий на любом языке

Твоя длл точно так же может лишь в х86 работать. Нельзя подключать х86 библиотеку к х64 и наоборот. Потому нет смысла о х64 заморачиваться вообще.
1
20
6 месяцев назад
1

» WarCraft 3 / Сценарий на любом языке

IceFog, а ты сможешь сделать перед запуском файла .json определитель ОС и разрядности архитектуры, чтобы запустить разные файлы .json. Это нужно для загрузки на машинах x86 библиотек x86 и x64 соответственно для функций <boost>.
Варкрафт 3 всегда х86 (не считая рефу), какой толк от х64, если его х86 приложения всё-равно не поймут?
0
20
6 месяцев назад
Отредактирован Unryze
0

» Unryze Jass API / UjAPI - Система Выбора Героев

Проблема в ShowFrame, изучу и постараюсь поправить. Спасибо.
Редактирование 1: Ошибку нашёл и поправил, легаси код - мать его.
1
20
6 месяцев назад
1

» WarCraft 3 / Работа с нативными функциями

Unryze, у меня получилось с помощью в этой статьи xgm.guru/p/wc3/anyscript (Сценарий на любом языке) поиграть по сети со своей dll'кой. Это и есть мемхак?
"Сначала, предоставленный JASS-скрипт, используя уязвимости в виртуальной машине, выделяет испольняемую память и записывает туда мини-программу, которая распаковывает и загружает библиотеку "bin\Loader.dll", после чего вызывает её функцию "DoIt". Та же, в свою очередь, распаковывает и загружает библиотеки, перечисленные в списке "libraries" файла "config.json"."
Ага.
1
20
6 месяцев назад
1

» WarCraft 3 / Jass MythBusters

тут исследование по скорости вывода BJDebugMsg и DisplayTimedTextToPlayer
тут еще один вопрос по скорости - Нагружает ли варик проигрывание музыки , эффектов , и просчёт переменных для неактивных слотов? (1. недобавленные слоты в карту, 2. открытые свободные слоты, 3. слоты на которых сидит компьютер)
т.е. есть ли смысл заморачиваться, обрезая работу всего кода только под слоты с активными игроками?
например если варик по дефолту обсчитывает весь код 12 раз (колво слотов в 1.26)
DisplayTimedTextToPlayer будет всегда быстрее, ибо это нативка, ну и конечно же, если игрок 1, то DisplayTimedTextToPlayer будет ещё быстрее, ибо вызовется ровно 1 раз. Для отображения текста всем хватает пропихивать GetLocalPlayer( ).
Однако эти выигрыши скорости не дают прямо большой буст, но они выгоднее в любом случае.
Неактивные слоты - никак не влияют ни на что. Всё и вся рисуется локально, если игрок не видит зону или если музыка не глобальная, то она у него и не воспроизведётся.