15

» WarCraft 3 / UjAPI - AngelScript Как правильно подключить, чтобы стандартные функции, не крашили?

Tredor46, больше не крашает если убрать
TriggerSleepAction(2.f)
я вообще таймеры юзаю вместо таких функций и живу счастливо, там таких отстрелов не случается.
Но основная проблема, по-видимому, в GetPlayersAll, это вспомогательная функция из blizzard.j , не знаю почему именно она фаталит именно при задержке триггера, но в любом случае я советую вообще никаким функционалом из blizzard.j не пользоваться, там полно косяков, и, видимо, здешняя реализация AngelScript его не особо поддерживает. (GetPlayersAll возвращает пустую группу игроков, например)
15

» WarCraft 3 / Memhack или UjAPI что лучше в плане в возможностей и оптимизации?

Конркетно по функционалу:
Список всех нативок: github.com/UnryzeC/UjAPI/blob/main/uJAPIFiles/UjAPI.j
Можно по чейнджлогам полазить посмотреть что добавлялось: github.com/UnryzeC/UjAPI/tree/main/uJAPIFiles/Changelogs
какого-то универсального полного списка всех новых крутых фишек ужапи вроде нет, а сразу так из головы и не расскажешь, там слишком много всего)
15

» WarCraft 3 / Memhack или UjAPI что лучше в плане в возможностей и оптимизации?

Принятый ответ
Критерий UjAPI MemHack
Поддержка ✅ активная поддержка ❌не поддерживается уже 2 года
Оптимизация ✅ патчит игру напрямую (скорость работы нативного кода) ❌патчит через jass (намного медленнее нативного кода)
Стабильность ✅ лучше отполирован, патчит множество багов ваниллы ❌(существующие баги мемхака и ваниллы можно фиксить самому, требует высокого скилла)
Функционал ✅ всё*, что есть в мемхаке, только намного больше. ✅❌ реализованных функций меньше, чем в UjAPI, но в теории ничего не мешает реализовать их самому (требует высокого скилла)
Языки ✅ добавляет имбовый AngelScript ✅❌ можно добавить поддержку любых языков, в том числе написать свою C/C++ библиотеку и писать на нативном коде (требует высокого скилла).
Произвольный код ❌произвольный код запрещен ✅ сам мемхак и есть произвольный код, так что возможна подгрузка своих библиотек / модов и самостоятельная реализация недостающего функционала.
Безопасность ✅ безопасен, т.к. произвольный код запрещен (мемхак не будет работать через UjAPI лаунчер) ❌❌❌исполнение любого кода на компьютере
Доступность ❌надо ставить сторонний лаунчер ✅ работает на ванилле
15

» WarCraft 3 / Warcraft Cavegame

IceFog, Да, ты прав, на втором видео видно что курсор просто не смещается в центр. Каким-то образом у тебя не работает SetMouseScreenRelativePosition. Тут я уже реально ничего не сделаю, надо репортить Unryze.
Можешь попробовать простецкую карту сделать с этой функцией и проверить как себя будет вести курсор, если нативка действительно не срабатывает, то надо искать причину.
15

» WarCraft 3 / Warcraft Cavegame

IceFog, когда в конце видео открываешь меню, через несколько мгновений курсор мгновенно в край экрана уходит. У меня этого не происходит, то есть его увело в край экрана, причем, вероятно, ты мышкой не двигал когда только нажимал ESC. Явно что-то с мышью, либо акселлерация, либо дрова косячат, либо какой-то софт, возможно, мешает. Пока такие догадки.
15

» WarCraft 3 / Warcraft Cavegame

IceFog, Спасибо за репорт.
У меня на последней версии UjAPI все работает как должно, так что ничего не поломалось.
Могу посоветовать только поиграться с настройками мыши, особенно с акселлерацией (системной и хардварной, если такая есть).
Если не поможет, то тут я бессилен. Возможно, мне стоило добавить настройки чувствительности мыши, однако по видео возникает ощущение что у движении камерой есть сильная инерция и задержка, что сенсой не исправится, и как раз характерно для проблем с акселлерацией у старых игр, вроде бы, если не изменяет память.
15

» WarCraft 3 / Warcraft Cavegame

Slonick, установка этой карты от установки любой другой ванильной карты отличается только необходимостью установить UjAPI и AngelScript.
Причем если Unryze таки добавит AngelScript сразу в комплект с ужапи то вообще понадобится только ужапи поставить и все.
Это необходимые зависимости, ставятся в 3 тыка, и если уже даже это напрягает, то добро пожаловать в пк моддинг, привыкните.
15

» WarCraft 3 / Какие-нибудь handle занимают порядковые места при конвертации в число, в случаных числах в районе 1-1000?

Принятый ответ
насколько помню хэндл (по-крайней мере настоящий) меньше 0x100000 быть не может, так что ответ, если я правильно понимаю вопрос - нет, не могут быть хэндлы в диапозоне 1-1000.
15

» WarCraft 3 / Warcraft Cavegame

EugeAl,
простая окклюзия уже есть - блоки которые нельзя увидеть (закрыты со всех сторон другими блоками) не "рендерятся"
"рендерить" только отдельные грани - смысла не имеет, проблема не в количестве полигонов а в количестве объектов и в том, что Варкрафт неэффективно их отправляет на рендер видеокарте (вероятно, каждый объект рнндерится отдельным вызовом к ГПУ, что очень неэффективно <- мои догадки)
в реальном времени скрывать блоки которые игрок не видит конкретно сейчас - возможно, но, думаю, не стоит свеч. Убежден что в рамках текущей системы дальше оптимизировать почти некуда, упираюсь в устаревший графический движок игры. Буду пробовать рендерить все в один объект, если не получится, то ничего более менять не буду.
15

» WarCraft 3 / Будут ли проблемы при неявной типизации

числовые типы автоматически друг в друга преобразуются в зависимости от контекста, проблем не будет.
15

» WarCraft 3 / Warcraft Cavegame

ScorpioT1000, спасибо за совет!
У меня так и делается, через UjAPI нативку GetFPS можно напрямую фпс получать, от него вычисляется farz камеры и макс. количество обработанных операций (в данном случае сгенерированных блоков). Подогнанно оно под мой конфиг пк так, что фпс почти всегда 30-60 держится, и в меню паузы можно немного подрегулировать.
Основная проблема все же в том что вк3 не умеет в эффективно рендерить тысячи+ объектов, что от него и не требуется в стандартных условиях. Так что сейчас в основном ищу способы впихать всю (или почти всю) графику блоков в один объект, может так полегче будет.
15

» WarCraft 3 / Warcraft Cavegame

Очень скоро появятся карты-вирусы.
карты-вирусы уже есть, и появляются они всегда, когда есть уязвимости с исполнением произвольного кода. Они были и во времена Return Bug, и с появляением мемхака в 2016. К чему это в этом топике, и почему они очень скоро начнут имено сейчас появляться, не очень понял.
К UjAPI это всё, кстати, не относится, ведь он не позволяет исполнять произвольный код, и патчит уязвимости, которыми пользуется memhack. Так что играть на 1.24 - 1.28 версиях с UjAPI это самый безопасный путь, если боишься зловреда.
Кстати, а udgapi и memhack можно использовать только для warcraft 3?
Это же море возможностей будет, если использовать их для других игр (half-life 2, skyrim?)
Как и практически любые модификации, UjAPI и memhack работают только на warcraft 3, потому что сделаны чисто под warcraft 3. Для других игр есть свои апишки и хаки для дополнения функционала. В том же Skyrim этим занимается SKSE, насколько мне известно. Это именно что хак екзешника с встраиванием своего кода, чем в сущности и является UjAPI.
15

» WarCraft 3 / Warcraft Cavegame

Anime Chan, Спасибо за рецензию!
К сожалению, не было возможности протестировать на другом железе, на стандартных настройках на моем ПК играбельно. Судя по всему, требования к процессору здесь действительно суровые. С этим мало что могу поделать, реалии используемого движка, совсем не подходящего под эту идею.
ФПС видно в дебаг информации, включаемой клавишой F3.
15

» WarCraft 3 / Warcraft Cavegame

Drakemor_888, Для работы требуется UjAPI.
Если это происходит и с ним, значит не скачали или не включили AngelScript.
Скачайте отсюда: xgm.guru/p/ujapi/ujapi-angelscript
И включите его в лаунчере (шаги описаны там же, по ссылке)
И если даже так проблема остается, то поставьте в лаунчере галки Dev Mode в верхней части окна, Dev Mode и Console у AngelScript и скиньте что оно выводит при выборе или запуске карты в консольном окне.
15

» WarCraft 3 / Выявление Дессинхронизаций в Одиночку

Tredor46, в теме десинхов подводных камней хватает, я сам не все знаю. Но тебе куда быстрее помогут если скинешь карту или очень подробно опишешь что и как делал и когда вылетает. Из того, что ты написал, лично мне нечего сказать.
15

» WarCraft 3 / Выявление Дессинхронизаций в Одиночку

Tredor46, десинхронизировать будет и в локальной сети если проблема в коде или механиках карты. Это не зависит от реальной/нереальной/локальной сети или пинга или чего-либо ещё.
Ищи проблему глубже, может игроки что-то особенное делают, что ты не делаешь в своих тестах.
15

» WarCraft 3 / Warcraft Cavegame

Нужно допиливать, а так это технодемка, лучше уж в настоящий майнкрафт поиграть...
В настоящий майнкрафт в любом случае лучше поиграть, как бы я тут не извращался и не допиливал) Это технодемкой и задумывалось, и работать будет априори куда хуже и неудобнее чем полноценная игра.
Мир вообще никак не ограничен по высоте? Бедрока нет?
Не ограничен ни по какой оси. Используются кубические чанки вместо майнкрафтовских 16х16х256.
15

» WarCraft 3 / Warcraft Cavegame

А правда можно 2 игрокам отойти друг от друга на 10 000 блоков?
да, можно на сколько угодно. Сейчас, правда, потестил, блин, очень тупой баг все же есть: игроков все-равно будет иногда видно даже на огромных расстояниях, но это чисто визуальная проблема, легко фиксится и с технической точки зрения всё корректно работает.
15

» WarCraft 3 / Конкатенация переменной и строки vjass, для получения нового имени переменной

так и не понял что тебе конкретно нужно.
В любом случае, самое близкое в vjass к этому что есть, это макросы
если и это не то, то забей и делай как Extremator написал