1
Голосов: 1
Doc - 2 years ago
1
Голосов: 1

» WarCraft 3 / Как лучше организовать обработку кастов?

Если джасс умеет в хеш сохранять функцию - переделать потом стандартные ивенты на хеш будет тривиально.
1
Голосов: 1
Doc - 2 years ago
Edited by
1
Голосов: 1

» WarCraft 3 / Как лучше организовать обработку кастов?

Как делаете вы? Как делать лучше?
Лучше не заниматься преждевременной оптимизацией. Ну срабатывает каждый раз и что теперь?
0
Голосов: 0
Doc - 2 years ago
Edited by
0
Голосов: 0

» WarCraft 3 / JNGP: Rebuild от PT153

Clamp:
В наши дни дефайны лишь стон изголодавшегося разума по вменяемо написанному коду.
"этим не пользуюсь я - это бесполезно всем"
Не надо утрировать. Текстовый препроцессинг откровенно устаревшая фича, которая заменяется адекватными гигиеническими макросами и строго определенной внутри основного языка семантикой метапрограммирования в целом.
Насчет отсутствия отличий с Zinc - бред, помимо упомянутых макросов есть вещи типа flushlocals и foreach по группам (через генерацию FirstInGroup), а также нет клоунского ограничения на объявление переменных в начале функции.
1
Голосов: 1
Doc - 2 years ago
Edited by
1
Голосов: 1

» WarCraft 3 / Структуры и хэш-таблица

Vlod:
Да
Пояснил бы причину тогда уже, в чем смысл обнулять, если потом этот слот переиспользуется?
1
Голосов: 1
Doc - 2 years ago
1
Голосов: 1

» WarCraft 3 / Структуры и хэш-таблица

В целом не нужно, я думаю, если ты все поля при создании структуры инициализируешь (я не уверен обнуляет ли их аллокатор)
Структура просто integer потому что в коде в итоге генерирутся параллельные массивы т.е. например
real array cord_x
real array cord_y
real array cord_z
unit array cord_u
Для каждого члена структуры. Поэтом сама cord это просто индекс в эти массивы. Когда ты делаешь cord.create() находится свободный индекс в этих "параллельных" массивах и помечается заполненным.
1
Голосов: 1
Doc - 2 years ago
1
Голосов: 1

» WarCraft 3 / Структуры и хэш-таблица

Так а что не работает конкретно? На вид корректно все
Структура действительно просто integer
3
Голосов: 3
Doc - 2 years ago
Edited by
3
Голосов: 3

» Зона Агрена. / Почему аниму "ванпичмен" - не пародия.

Ну очевидно, что челик просто завидует, потому что его высеры никому не интересны, а ванпанчмен людям нравится, хотя вырос из вебкомикса с рисовкой вот такого уровня и вытянул чисто интересными персонажами и своим сатирическим, пародийным и комедийным сюжетом. А причина в том, что все люди деляются на обычных и клоунов и автор поста не просто так с красным носом и разноцветной прической.
4
Голосов: 4
Doc - 2 years ago
4
Голосов: 4

» Зона Агрена. / Почему аниму "ванпичмен" - не пародия.

Agren:
Cinos:
Ты очень глупый человек
Да ну? А доказательства есть?
Достаточно прочитать текст здесь
2
Голосов: 2
Doc - 2 years ago
2
Голосов: 2

» Скорпиблог / Нейросеть ruGPT-3 и немного YaLM

Не увидел жалкого нытья с просьбами забанить, похоже слабо. Показал сгенерированный текст другу психотерапевту, он не смог диагностировать ментальных расстройств, хотя по сообщениям оригинала вердикт ставится сразу. Возможно, было скормлено недостаточно данных? Это также подтверждает отсутствие слова "морровинд" в тексте.
1
Голосов: 1
Doc - 2 years ago
Edited by
1
Голосов: 1

» BakuMari / Главная страница

Игра смотрится симпатично, но геймплей по одной гифке и скринам не понятен, т.е. как происходит постройка и откуда берутся блоки и т.д., какие примерные различия в уровнях и в чем лейтгейм
Aws:
Хм, очередная инди с крутой обложкой, а внутри пиксельная игра уровня флешек пятнадцатилетней давности (или леммингов, которым в следующем году уже 30)? Такое мб для мобилки сойдёт, но на своём сыче (а тем более хбоксе) я в такое играть точно не буду.
Подробный гайд как выставить себя дураком в интернете одним постом.
1
Голосов: 1
Doc - 2 years ago
1
Голосов: 1

» WarCraft 3 / Поддержка cJass

Пушистый, открой старые JNGP с сжассом, там в луа скриптах есть то как он интегрируется. По сути сжасс это просто экзешник запускающийся на архиве карты и генерящий жасс код, запускать его можно откуда угодно.
0
Голосов: 0
Doc - 2 years ago
0
Голосов: 0

» Warcraft Kingdoms / Render Edge чудеса творит

Кроматик абберейшн выглядит ужасно, зачем это? Места где деревья/здания/стены стыкаются с землей оч плохие, видно отсутствие АО. Конфетка такого же уровня как и Quenching, когда разворачиваешь, а оно плохо пахнет. Динамик тени очевидно смотрятся норм.

Опять же прекрасно видно - для того чтобы рефордж стал конфеткой, надо всего лишь добавить тени
Но они там есть?
0
Голосов: 0
Doc - 2 years ago
0
Голосов: 0

» WarCraft 3 / Рассинхрон от GetLocalPlayer() -> SetCameraQuickPosition()

у неё, в отличие от д2, тайминги появления нейтралов, рун, крипов не будут съезжать
По-моему это уже пофиксили. Но я не думаю, что это было из-за накопления ошибки флоатов в привычном понимании, а скорее из-за обычной логической ошибки в скедулинге событий из-за нецелого деления круглых минут на время тика.
0
Голосов: 0
Doc - 2 years ago
0
Голосов: 0

» XGM Конкурсы / Terrain Contest: Reforged. Итоги

Видеообзора не будет? Нужно качать варкрафт?
0
Голосов: 0
Doc - 2 years ago
0
Голосов: 0

» WarCraft 3 / Дебаггер Lua

GetLocalPlayer:
это просто провал.
Этот "провал" называется полиморфизмом. Причем истинной формой полиморфизма.
Нет не называется, причем тут полиморфизм?

Sergarr:
Я, конечно, знал, что динамическая типизация - это зло, но то, что Lua скомпилирует и запустит без выдачи ошибок функцию с заведомо недостаточным числом аргументов - это просто провал. Как такими языками программирования можно пользоваться в 2020-м году? Это, типа, фича такая, чтобы люди на грабли наступали побольше?
Т.к. синтаксического различия между обращением к локальной и глобальной переменной нет, то в случае несуществующей локальной переменной идет обращение к глобальной таблице переменных _G. На этапе компиляции нельзя понять есть или нет там определенная переменная.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Unofficial Arcade Festival

Bergi_Bear:
О как, так что мы с своим конкурсом не сильно и
expand
оплошали

Doc, так а что за драма то?
О различных персонах и сексуальных домогательствах
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Unofficial Arcade Festival

Bergi_Bear:
видимо сумма в 10к долларов никого не заинтересовала, для норм разработчка - слишком мало, для школьника - слишком много и требует качества, которое он не может дать
Это не мало, просто был довольно слабый адвертайсмент + не было никакой регистрации, поэтому заинтересованных было сложно отследить + через пару дней началась драма после которой все про конкурс забыли
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Unofficial Arcade Festival

Bergi_Bear:
Ну что там слышно?
Слишком мало людей приняло участие и организатор решил вложить деньги во что-нибудь еще, конкретно разработку более удобного визуального редактора данных
1
Голосов: 1
Doc - 3 years ago
Edited by
1
Голосов: 1

» XGM Конкурсы / Голосование конкурса героев

Вы где-нибудь видели варкрафтовских героев, у которых можно было комбинировать скилы почти как в мортал Комбат
можно присваивать девиз "смари как умею, ща охереешь!" без какой-либо цельности идеи и реализации.
0
Голосов: 0
Doc - 3 years ago
Edited by
0
Голосов: 0

» WarCraft 3 / Как вы работе с проектами?

Для записи более менее крупных задач - Trello, для мелких технических правок в коде просто оставляю // TODO коммент. Монитор один. Иногда записываю в notepad.exe временные вещи.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Движение по осям хyz

pro100master:
Doc, дергать же будет при большой расстоянии шагов)
И в чем разница между этим и подходом с тригонометрией?
2
Голосов: 2
Doc - 3 years ago
2
Голосов: 2

» WarCraft 3 / Движение по осям хyz

local x, y, z, xx, yy, zz
local dx = xx - x
local dy = yy - y
local dz = zz - z
local len = math.sqrt(dx * dx + dy * dy + dz * dz)
local nx = dx / len
local ny = dy / len
local nz = dz / len
local range = 0
...
range=range+25
xx,yy,zz=x+range*nx,y+range*ny,z+range*nz
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Unofficial Arcade Festival

На moddota.com есть неплохие туториалы, в т.ч. видео для начинающих
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / GetUnitGreenAttackBonus

ScorpioT1000:
Так кешируй его при выделении юнита каждый раз и можно будет получать в любой момент

Doc, фокус разве не синхронен сам по себе? Он же в реплеи пишется и в спектаторы передается
Селекшн синхронен, все так. У всех игроков кондишн пройдет, но инфа с фрейма то будет разная.
Почему могло сработать: наивно тестировали например, выделили юнита с зеленой атакой у нескольких игроков, а затем выделение сняли у всех кроме овнера, в итоге зеленое число в интерфейсе осталось, но скрылось. Правильный тест: сделать нескольких юнитов с зеленой атакой и у остальных игроков выделить именно его.
0
Голосов: 0
Doc - 3 years ago
Edited by
0
Голосов: 0

» WarCraft 3 / GetUnitGreenAttackBonus

Поэтому и должен? Ты эту зеленую цифру используешь в любом вычислении, но т.к. юнит выделен только у одного игрока то числа у игроков будут разные. От вызова функции конечно же ничего не десинканет, десинканет использование ее результата. Если оно не десинкает так это потому что вы коряво проверяли...
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / GetUnitGreenAttackBonus

Десинкнет в мультиплеере без дополнительной синхронизации
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Bergi_Bear:
Кстати у кого ещё варкрафт убежал в папку retail?
У меня это сегодня ночью произошло
было
C:\Games\Warcraft III\x86_64\World Editor.exe
стало:
C:\Games\Warcraft III\retail\x86_64\World Editor.exe
Близзард писали целый пост об этом
1
Голосов: 1
Doc - 3 years ago
1
Голосов: 1

» WarCraft 3 / ТРЕЙЛЕР - WarCraft 3 Reforged Beta 3.0 MOD

Все очень плохо и некрасиво
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Андреич:
стоит русская озвучка и англ текст.
после патча в кампаниях озвучка пропала...
Потому что структура фолдеров изменилась я полагаю
3
Голосов: 3
Doc - 3 years ago
Edited by
3
Голосов: 3

» WarCraft 3 / wGeometry - 3D библиотека (lua)

pro100master:
Doc, а да я не разбираюсь ну да!

Doc, фпс ни как не влияет на сеть и запомни навсегда. фпс отвечает за отрисовку а остальное механика
Гений, если не шаришь, лучше промолчать, запомни навсегда. Читаем что такое локстеп и убавляем гонор. Если логический тик в игре начнет занимать больше времени логического фрейма 1/30 секунды, симуляция одного клиента начнет отставать и остальным придется его ждать, появится окно ожидания игрока. Так что ты да не разбираешься, ты да, ну да.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / wGeometry - 3D библиотека (lua)

pro100master:
com23, как это если он только у хоста меняется данные а клиенты лишь сихронизирует что о фпс не могут и быть речи. фас это кадр который отрисовали но ни как данные сихронизации
Не разбираешься в том как работает сеть в вк3 - не пиши.
com23:
Bergi_Bear:
com23, я думаю фпс под просядет, или просто всё застрянет, надо пробовать
К десинхрону это может привести?(просадка по фпс)
Не должно, остальные будут ждать отстающего и лаги будут у всех.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Перенос карты.

Я точно не знаю насколько сейчас актуален формат vmf, с Source 2 формат карт теперь vmap. Вполне возможно что resourceconverter.exe поддерживает апгрейд этого до vmap. + Непонятно насколько актуальна эта тулза сама по себе и что именно она конвертирует.

Плюс точно возникнет проблема с тем, что тайл эдитор не будет поддерживать этот ландшафт и он будет выглядеть как пачка мешей.
4
Голосов: 4
Doc - 3 years ago
4
Голосов: 4

» WarCraft 3 / Синхронизация в Lua

И есть ли быстрый способ синхронизации (глобализации) данных в выпуске рефордж?
---@param whichTrigger trigger
---@param whichPlayer player
---@param prefix string
---@param fromServer boolean
---@return event
function BlzTriggerRegisterPlayerSyncEvent(whichTrigger, whichPlayer, prefix, fromServer) end    -- (native)


---@param prefix string
---@param data string
---@return boolean
function BlzSendSyncData(prefix, data) end    -- (native)

---@return string
function BlzGetTriggerSyncPrefix() end    -- (native)

---@return string
function BlzGetTriggerSyncData() end    -- (native)
1
Голосов: 1
Doc - 3 years ago
Edited by
1
Голосов: 1

» WarCraft 3 / Lua или jass?

И с тех пор все обновлялись
Нет, не все
Который сделан из Lua, и соответственно появился позже
Что ты несешь?
1
Голосов: 1
Doc - 3 years ago
Edited by
1
Голосов: 1

» WarCraft 3 / Lua или jass?

1993г.
Ага, тогда и современных операционных систем не бывает, ведь их первые версии тоже были выпущены в 80х.
Текущая версия луа, напомню, 5.3
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Зачем тогда что-то посылать, если можно из чата игры это делать. Большие вещи всё равно требуют разных инит эвентов и прочего
Если ты тебе нужно написать например 200 способностей то проблемы в этом нет, т.к. опираешься ты на каст ивент, но очевидно что из чата игры ты это не напишешь. Понятно что это не серебряная пуля как и хот-релоадинг любого типа, чем более персистентны твои данные тем менее полезна их перезагрузка. Опять же определенные игры можно не выходя рестартить заново или самому триггерить нужные ивенты.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

а чтобы чекал новое обновление думаю тут задейсвован таймер на прелоад а потом исполняет код удаляя старого код
+ Немного кода на стороне прелоада чтобы посылать код кусками (упирается в размер одного ивента синхронизации), немного кода чтобы его кусками принимать и немного кода для скрипта который из папки с кодом собирает прелоад файл из шаблона и кладет его в нужную папку. Но это детали реализации.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

GetLocalPlayer:
ага, ты так и не рассказал как это сделано
Спойлер
Только какая с того польза?
Какая польза с того что игру не нужно перезапускать? Наверное в том что игру не нужно перезапускать
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Ну потому что это абсолютная тривиальщина, какой смысл ее разбирать в деталях? Собрано на коленке за полчаса. Есть всего один нативный способ доставить данные с диска в игру. Есть способ выполнить код из строки. Больше ничего для этого не нужно.
0
Голосов: 0
Doc - 3 years ago
Edited by
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

А еще можно писать на луа и перезагружать код не перезагружая игру вообще
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Стратег:
Отличный одиночный режим)))))))))))))))))))))))
Кто-нибудь понимает, как его запустить и зачем в соло режиме название игры?
Насколько я понимаю проблемы в русской версии клиента
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

GetLocalPlayer:
либо у тебя что-то либо в вурсте, у меня всё норм через внешнюю сборку
То бишь? Я к тому что стало лучше, раньше это занимало 10-15 минут и в более чем половине случаев все что я видел это вот
Спойлер
Это странно, т.к. у меня изначально не было такой проблемы и загружается все в сумме наверное минуту...
1
Голосов: 1
Doc - 3 years ago
1
Голосов: 1

» Dota 2 / Главная страница

Ethernet:
Скомпилил карту, пытаюсь затестить в игре, карта загружается и вылетает в меню доты2, 0 ошибок, Куда смотреть?
Загружается до какого этапа?
Editor:
Ну может быть миллиард причин, начиная от выпуска нового обновления вульвой до твоих косяков внутри режима, например ты не прописал доступные карты.
Все правильно сказал. В addoninfo.txt должна быть написана корректная карта. Плюс мод нужно делать либо публичным либо запускать в кастомном лобби с выбором локального сервера
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» Dota 2 / Сайт с кастомными модельками для Dota 2

Есть китайские сайты, ссылку навскидку найти не смогу, а так нет. Благо что импортировать можно модели большинства распространенных форматов, те же модельки из юнити стора.
1
Голосов: 1
Doc - 3 years ago
1
Голосов: 1

» WarCraft 3 / HiveWE - World Editor 0.6

Только вчера автор писал что выход версии с редактором объектов, палитрой юнитов и поддержкой рефорджа уже достаточно скоро
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Одиночная игра в Reforged

У меня и без автономного режима при запуске из редактора все работало
0
Голосов: 0
Doc - 3 years ago
Edited by
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

Да, давайте дадим новостям сдохнуть окончательно
Каким новостям? Твой комментарий тут ничего не поменяет, просто добавляет мусора и очередную пачку нытья.
всем и так всё ясно, это же бесконечная тема для рассуждений
Как ты и сказал. Проблемы очевидны, с нашей стороны остается ждать решения, либо забить. Выбор каждого. Дело в том, что так как про все это уже было сказано, разработчики об этом знают. Нормальный ладдер и т.д. упоминается постоянно в патчноутах. Сделать его БЫСТРЕЕ твое нытье не поможет. Так зачем в очередной раз возить соплями по столу?
По крайней мере местами это веселее тем что сейчас приходится заниматься.
Почему бы не сесть и не заняться конкретно модмейкингом? Кастомки работают, конкурс есть, сидите да делайте.
0
Голосов: 0
Doc - 3 years ago
0
Голосов: 0

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

И зачем ты это запостил, извини?