29

» WarCraft 3 / Новые нативные функции в 1.29

abidin, из тех что игра сама это не сетает.
От новых нативок в игре появятся новые игроки
Думаю если завезут бнет 2.0 то какой-никакой бонус будет.
малая часть от всех сеттеров-геттеров, что ожидалось
Разве? По-моему как раз сказали что в этом патче как раз завезут небольшую часть предложений. Я бы сказал что ожидания оправданы
29

» Мир безумного / Слух: Blizzard в конце февраля что то готовят

Ну камон в ск2 напилили непонятной компонентной структуры в которой черт ногу сломит, думаю многие начинали моддинг вк3 с поиграшек в редакторе объектов, в ск2 там все супер мега абстрактно модульно расширяемо сложно, зачем - непонятно. Чтобы можно было все делать в обжект эдиторе? По сути то все такое же программирование мышкой, да только через пень-колоду. У людей гуи намного лучше в голове укладывалось. Вторая попытка сделать нормальный скриптовый язык тоже обосралась - этот гелекси скрипт ну говнище говнищем, зачем вообще делать свое уже в таком то году - непонятно. Не нужно говорить что что-то там усложнение неизбежно. В той же доте как-то же обошлись без подобных мега-архитектур. Функция всегда будет лучшей компонентой. Больше функций в апи - больше возможностей, точка.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Думаю тут серьезно влияет не отсутствие лодов, а дх8 апи с нереальным количество дроуколлов.
Но я не очень разбираюсь.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Ты всегда можешь все хендлы рассматривать как интежеры.
в реальности мне будут нужны
Я очень сомневаюсь в твоих супер-теориях. Говорю по опыту: проект на 50 000 строк, использований подобной функции: 1. Проект на 1 400 000 строк, использований подобной функции: 18.
Группируя данные в структуры ты опять же получаешь поиск по интежерам.
Пример невалидный.
Ну и я это предложение уже оформил несколько дней назад с валидными примерами :)
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Да в вурсте есть нормальная поддержка дженериков и вообще человеческих фич.
Еще раз спрашиваю, зачем тебе функция с обобщенными типами если в реальности ты ее будешь использовать с 2-3 типами? Напиши 2-3 функции.
Дженерики - фича нужная, но твой пример инвалиден.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Ты сам такую функцию написать не можешь или что?
То что ты предлагаешь требует поддержки дженерик типов. В реальности сколько тебе бы пришлось написать таких функций, напиши их ты вручную. Три? Каждая по 6 строчек?
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Ты переоцениваешь производительность виртуальной машины джасса.
29

» WarCraft 3 / Вызов триггера через строчную переменную...

Про айди то речи не было изначально, с айдишниками можно и обычные ивенты использовать.
29

» WarCraft 3 / Вызов триггера через строчную переменную...

Doc, уж проще сделать на хт, побыстрее перебора будет.
В хештаблице ключи - интежеры, ты как собрался по строке-имени без перебора доставать их хештаблицы триггер? Можно организовать благодаря вторичному ключу и хешированию строки "массив" и получить реальную хештаблицу строка - триггер, но это уже никак не подходит под "проще".
29

» WarCraft 3 / Вызов триггера через строчную переменную...

Принятый ответ
Потому что у триггеров нет имен.
Создаем массив строк name_array;
Создаем массив триггеров trigger_array;
Создаем инт name_array_index;
Создаем функцию
register_trigger(Trigger trigger, string name) {
    name_array[name_array_index] = name;
    trigger_array[name_array_index] = trigger;
    name_array_index = name_array_index + 1;
}
Создаем функцию
name_to_trigger(string name) {
    for (integer index = 0; index < name_array_index; index++) {
        if name_array[index] == name {
            return trigger_array[index];
        }
    }
}
Затем регистрируем все триггеры через register_trigger.
А после этого думаем, реально ли у нас столько абилок, что простая последовательность if name == "my_ability" then RunTrigger(my_ability) хуже этого решения
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Да это просто пренк от разработчика которому стало скушно хаха иксдэ
29

» Game Dev / Многопольз. онлайн сервер. Плачу за разработку.

80 т.р. - месячная зарплата мидл программиста. Мидл програмист по определению не тот, кто может проект довести с нуля до конца. Что может сделать 1 человек за месяц - думайте сами.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Какому-то там работнику, какого-то там отдела стало скучно, решил запостить от безделья тему на фанатском ресурсе. Это не новость и не объявление.
Детский сад, честное слово.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Это не список планируемых обновлений, это объединенный и обновляемый список пользовательских пожеланий.
Да, но т.к. запощено близард человеком и уже часть вещей обещаны к завозу то я бы сказал что шанс увидеть это довольно неплохой.
Близзарды еще ничего не сделали и официально ничего не сказали по этому поводу
Т.е.? Какое еще официальное объявление нужно? Гейм продюсер запостил тред и он же отписал что часть хотелок уже на подвозе.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Для неспособных статьи были написаны еще в 2006. Если не можешь их понять - не дано.
29

» WarCraft 3 / Blizzard готовят Producer Update для Warcraft 3

Жасс код компилируется в инструкции для жасс машины, но уже при запуске карты, разумеется чтобы нельзя было с ним поиграться до этого самого запуска. Этот процесс необратимый. Дерево выражений превращается в линейную последовательность инструкций.
Код на С++ тоже компилируется в инструкции (машинный код) для твоего процессора. Его посмотреть можно, но там нет ни имен переменных, ни control structures, ни "функций" в обычном понимании, чистый assembly. Читать такое тяжеловато.
Например: godbolt.org/g/MQ1sYC
Нативные структы - очень гуд, потому что строились они изначально на хаках и параллельных массивах и были лимиты и т.д.
29

» WarCraft 3 / Как заменить BJ-функции?

Хорошие или плохие - пользоваться ими на джассе никто особо не будет, большинство функций бж - однострочные врапперы. Весь их смысл - поддерживать гуи со всяким говном типа lastCreatedUnit етц. Твои старания будут тратой времени, т.к. ничего лучше и менее костыльнее чем all.j ты по факту не сделаешь.
all.j требует обрамления всех глобалок и мест где есть ожидание в ALL_REMOVE = false/true. Т.е. ты не можешь просто вставить её в карту и наслаждаться меньшим количеством утечек. Но по-другому просто не получится на клиентском уровне, лучшее решение - написать тулзу которая парсит жасс и анализирует скоуп переменных в коде, автоматически удаляя те, что не выходят из локальных скоупов. Прямо как делает компилятор для нормальных языков.