15

» WarCraft 3 / Поднять лвл заклинания а спелбуке

Так же как уровень любой способности - Set Level Of Ability/Increase Level Of Ability.
Если спеллбук предметметный, уровень сбросится если выбросить книгу.
15

» WarCraft 3 / wait течет или капает?

Тебе действительно за эти 5 лет никто не рассказал о таймерах?
15

» WarCraft 3 / Патч 1.31, скоро?

они бы не ломали совместимости и не выпускали кривых патчей
Когда такое было?
quq_CCCP:
Сколько всего на бейсике было написано то, а? Не аргумент.
Сравнение какое-то сомнительное. Где Lua и где Basic.
quq_CCCP:
старкравт чето не взлетел, не взялись.
Starcraft 2 вышел уже в годы охлаждения интереса к модмейкерству.
15

» WarCraft 3 / Патч 1.31, скоро?

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

» WarCraft 3 / Патч 1.31, скоро?

Китайцы - рак игровой индустрии, и они в очередной раз это подтвердили.
Ну китайцы не делают ничего, чего бы не практиковал остальной рынок. Просто в виду своей подавляющей численности они привлекают к себе большее внимание.
15

» WarCraft 3 / Патч 1.31, скоро?

На хайве дали два ответа на счет тех API, если кому интересно
1
DzAPI sumneko/All-Star-Battle-2
Серверное хранилище
2
YDAPI предоставляется сторонним редактором YDWE, наследника JNGP с набором улучшений от китайских фанатов. Работает с версиями Wc3 до 1.27a
DzAPI предоставляется другим сторонним редактором DzWE - пиратской версией YDWE. Netease украла большую часть кода YDWE без какого-либо указания авторства.
Оба этих API поддерживают монетизацию карт и митротранзакции, которые уничтожили атмосферу на китайских форумах редактора карт. Поэтому я бы рекомендовал вам отнестись к этим новостям с осторожностью.
Если вам интересен потенциал китайского рынка Wc3
Здесь говорится о том, что Netease извлекла прибль за прошедший год в размере 100 000 000 юаней (примерно 15 000 000 долларов или 13 000 000 евро) посредством микротранзакций. До сих пор Blizzard закрывала на это глаза. Вероятно именно это и стало настоящей причиной работы над Reforge.
Загруженные файлы
15

» Администрация XGM / А какой у вас размер футболки?

эх только вряд ли даже кто то в моей области поймёт что такое XGM
Даже могут принять за лого порносайта.
15

» WarCraft 3 / Какой патч лучше?

Не совсем понятен вопрос. По каким критериям осуществляется выбор?
15

» WarCraft 3 / Найти неизвестную в уровнении

Никак. Процесс хэширования необратим, таково его назначение. Превратив answer в число, получить answer из этого числа невозможно.
15

» WarCraft 3 / Lua

У них там такая сейчас ситуация, что я бы вообще ничего загадывать не стал
c
Сам по себе язык хороший. Библиотек на нем море, игровых движков с ним море. Если играешь в WoW, то даже на пиратках по сей день есть много людей, которые готовы заплатить конкретные деньги за вполне конкретные аддоны или скрипты. Так что если привозмогёшь свою лень и разберешься, лично я вижу только плюсы.
Загруженные файлы
15

» WarCraft 3 / Wurst: Кол-во пакетов

Один только момент о котором все таки стоит упомянуть, который может вызвать ряд очевидных ошибок. Вот у тебя есть например такой код
Код
import NoWurst
import MagicFunctions
import ObjectIdGenerator

constant MY_ABILITY = compiletime(ABIL_ID_GEN.next())

int array otherAbilities 

@compiletime
function initArray()
    for i = 0 to 9
        otherAbilities[i] = ABIL_ID_GEN.next()

init
    initArray()
Затем ты проверяешь и видишь, что во время компиляции у тебя в массиве otherAbilities находится следующий список значений
Список
1095577650
1095577651
1095577652
1095577653
1095577654
1095577655
1095577656
1095577657
1095577697
1095577698
а во время выполнения карты, другой список значений
Скриншот
В итоге, система не работает. Вопрос, почему?
Из-за константы MY_ABILITY. Как сказано в статье, выражение
compiletime(ABIL_ID_GEN.next())
будет заменено компилятором результатом его работы, то есть во время загрузки карты, вызова метода ABIL_ID_GEN.next уже не будет по месту константы, там будет сгенерированное значение. То есть метод ABIL_ID_GEN.next вызывается меньшее количество раз во время загрузки карты, чем во время ее компиляции, отсюда несоответствие генерируемых значений. Решить эту проблему можно добавлением в функцию initArray кода
Код
@compiletime
function initArray()
    if not compiletime
        ABIL_ID_GEN.next() // Дополнительный вызов в счет константы MY_ABILITY
    for i = 0 to 9
        otherAbilities[i] = ABIL_ID_GEN.next()

init
    initArray()
Так что если ты генерируешь идентичные значения и во время компиляции и во время выполнения (что в целом нежелательно, так как это делает код очень неструктурированным) держи этот момент в голове.
Загруженные файлы
15

» WarCraft 3 / Wurst: Кол-во пакетов

Если же вурст на такое способен
Да, конечно. Если нужна просто одна константа, то можно так
Код
import ObjectIdGenerator
import MagicFunctions

constant MY_HERO_ID = compiletime(HERO_ID_GEN.next())
// Или с массивами
constant MY_ABILITY_ID = [compiletime(ABIL_ID_GEN.next()), compiletime(ABIL_ID_GEN.next()), compiletime(ABIL_ID_GEN.next()), compiletime(ABIL_ID_GEN.next()), compiletime(ABIL_ID_GEN.next())]
Или можно разделить
Код
import ObjectIdGenerator
import MagicFunctions

int array myAbilities

// Выполнится во время компиляции
@compiletime function initArray()
    for i=0 to 9
        myAbilities[i] = HERO_ID_GEN.next()

// Вызовем ту же фкнкцию во время инициализации, генерируя те же данные
init
    initArray()
Посмотри выражения времени компиляции, есть пример кода. А там уже как самому удобнее будет придумаешь.
15

» WarCraft 3 / Wurst: Кол-во пакетов

Если у тебя есть необходимость в сотни пакетов, ты что-то явно делаешь не так.
Либо это будет вызывать ошибки, по типу всяких бесконечных компиляций и т.д.
Нет. Но если такая ошибка возникнет, это баг компилятора (если не твоя ошибка), о котором надо сообщить разработчику.
Ты можешь только упереться в ОП лимит, поскольку выполнение блоков init каждого пакета выполняется в пределах одной функции вызовом TriggerEvaluate. В остальном без ограничений.
15

» WarCraft 3 / Баг через 6000 сек

Надеюсь это не в моей карте проблема.
Я бы надеялся на обртаное, ибо свою карту можно исправить, а с багом движка придется жить. Ждем результатов, мне тоже стало интересно.
15

» Мир безумного / WarCraft III Reforged - WE (что хотите увидеть?)

ScopteRectuS:
Doc, вместо JASS LUA будет что ли? Или и LUA, и JASS?
И то и другое. Обратную совместимость обещают не ломать (для тех кто не эксплуатировал баги).
15

» WarCraft 3 / Введение в JASS новичка (меня)

Hate:
KillUnit(GetTriggerUnit())
что ты здесь собрался обнулять?
При чем тут это если речь о локальных переменных?
pAxsIs:
Суть в том, что может передатся любой массив определенного типа в функцию, а функция уже сделает определенные действия используя этот массив.
В обычном Jass массивы невозможно передать в функцию. В vJass можно
Подробнее тут или тут, что больше нравится.
15

» WarCraft 3 / Введение в JASS новичка (меня)

никак, и не нужно
Нужно.
Hate:
что уже объявит массив размером 5
В Jass размерность массива не задается, этого нет в его синтаксисе. Используется в vJass и Zinc и только для объяления типа-массива или двумерного массива. То есть запись
real array some_numbers[5]
будет переварена парсером но сама по себе не имеет смысла.
15

» WarCraft 3 / Камера с видоам сзади

а просто прикрепить камеру к юниту нельзя?
Если бы Wc была игрой от 3-го лица, наверно, можно было бы. А так нет, только вручную.
15

» WarCraft 3 / Jass Сложный скилл

Parom_Harona, лучше так и сделать, потому что до сих пор просто не понятно, о чем идет речь. Не получается построить в голове картинку требуемой способности. Как там говорить принято, "Без внятного ТЗ, результат - хз".
15

» WarCraft 3 / Можно ли проиграть спецэффект только для отдельного игрока?

Я бы всё же рекомендовал делать присвоение пустой строки в Иначе, потому что суть не меняется, а для локального игрока присвоений будет меньше.
Кстати да, так будет по уму.
15

» WarCraft 3 / Можно ли проиграть спецэффект только для отдельного игрока?

Как написал PT153.
Единственная проблема, если ты используешь стандартный редактор карт, в таком случае придется использовать CustomScript вставку, поскольку функции получения локального игрока там нет
Но в этом случае ты можешь облегчить себе жизнь. Создай переменную в которой будет храниться локальный игрок и присвой ей значения в триггере инициализации, а дальше только через GUI