там слишком много и в разных файлах, да и код именно api (т.е. angelscript библиотеки) здесь не шипком интересен, он чисто для общения с модом который уже на плюсах и дергает ODE.
ScorpioT1000, руками и резал :) Какой-нибудь процедурной генерации тут никакой нет и я даже не представляю как такое завести можно, учитывая какой бардак в вариковских модельках бывает. Библиотека по большей части только физику привносит, а все эти приколюхи с ящиками и пеонами это уже примеры что можно реализовать с ней.
// Something to inverse GetHandleId, meaning it will convert any given number to a "handle", for safety it's limited to HandleIds >= 0x100000 aka how game limits real handles from "fake".
native IntegerToHandle takes integer i returns handle
// Converts provided memory address and converts it into handle, this may only work with real handles, fakes most likely will cause fatal error.
native AddressToHandle takes integer i returns handle
// Converts given handle and returns its address in game, for safety it's limited to HandleIds >= 0x100000 aka how game limits real handles from "fake".
native HandleToAddress takes handle h returns integer
//
fast_call и std_call в мемхаке это для вызова СИшных функций и не должны использоваться если не понимаешь о чем речь.
На чистом джассе работа с функциями очень ограничена и ооп не получится
EugeAl, ну так если уж в плюсвх нет gc, то в C и подавно :)
нету сборщика мусора ни в C, ни в Варкрафте, потому что с сборщиком мусора утечек памяти не может быть впринципе.
Добавьте файл через менеджер импорта или же MPQ по пути Scripts\\war3map.as или же просто war3map.as.
что значит добавлять файл через MPQ
это значит открыть карту через MPQ Editor и добавить туда файл(ы) с кодом. В этом случае надо будет после каждого пересохранения в редакторе заново закидывать файлик(и). В случае менеджера импорта перезакидывать не надо.
все файлы из папки backups почему-то тоже оказались повреждены.
как именно повреждены? Просто в редакторе не открываются? Через MPQ Editor смотрел что внутри? Файлы с триггерами могут быть все еще целыми там
А насчет хранения версий на Гит мысль интересная, конечно. Это нужно модифицировать особым образом редактор карт по идее)
Можно просто все материалы для работы (исходный код и/или сама карта, в идеале в режиме папки работать) держать в одном месте и в нем git репозиторий создать. Редактор модифицировать разве что ради удобных коммитов, но не особо напряжнее и самому это делать периодически.
ScorpioT1000, для структур все-равно лимит в 8190 инстансов.
Если в полях структуры используются массивы, то все становится печально.
Пример кода, который не сможет создать 500 объектов MyStruct с правильно инициализированными полями (место под StringArray тупо закончится)
library Test initializer Init
type StringArray extends string array[20]
struct MyStruct
StringArray sarray
method init takes nothing returns nothing
call sarray.create()
endmethod
endstruct
function Init takes nothing returns nothing
local integer i = 0
local MyStruct s
loop
exitwhen i == 500
set s = MyStruct.create()
call s.init()
set i = i + 1
endloop
endfunction
endlibrary
EugeAl, для того, как их использует vjass - мало. Деталей не помню, но когда какую-то жесткую систему на вджасс делал, вышло так, что из-за ограничений размера массивов у меня могло быть только около нескольких десятков экземпляров класса, не больше. А это отстой
Это то, что не хватало и не хватает сейчас коммунити, то, что нужно.
Иначе не было бы такого спроса на вышеназванные кастомные редакторы моделей, архивов итд.
так нет. Это нужно небольшой части мапмейкеров, которые сами небольшая часть общей базы игроков. У меня нет статистики, но это банальная логика, чем выше порог входа у инструментария тем меньше им пользуются. Редактор вк3 достаточно простой, поэтому и стал популярным. Это простое и хорошее решение - просто выкатить внутренний инструмент (Уже хорошо сделанный и оттестированный) чтобы моддеры порадовались и игра дольше прожила. Всё, дополнительный инстурментарий, поддержка и доработка это уже чисто на добровольных интересах (и частично было воплощено) и бизнесу нахер не упало.
О чем и говорю, что ради денег.
??? это претензия или как? я реально не понимаю что тебя это так удивляет или что)
Да. Сделали культовую игру и положили рядом крутецкий редактор, который вообще для внутренней разработки был больше, но дали возможность и работягам свои творения воплощать.
А кто с этим не согласен или сомневается/критикует, тот плохой, еретик, линчевать и на костёр его.
что за ребятчество... просто ты свои уже явно специфические хотелки выдвигаешь и говоришь что близз делали все ради денег (no shit!!!) и вообще они плохие, раз не сделали из своей игры полноценную экосистему инструментов (такая задача даже не стояла)
EugeAl, ох уж эти близз, чертовы корпораты ради денег всего лишь включили в и без того одну из лучших игр своего времени бесплатный редактор, гибкий, многофункциональный(ещё и неплохо доработали в tft ради юзеров!), юзер френдли (буквально ребенок разберётся), на котором люди сделали бесконечное количество контента, повлиявшего на индустрию.
Но видимо надо было выпустить полноценный комбайн из инструментов сравнимый с sdk игрового движка, и чтобы без проблем, и чтобы все ещё юзер френдли, и чтобы бесплатно, и чтобы техническая поддержка 24/7, и чтобы ещё поддерживали 20 лет? А лучше исходники игры выложите. А то не для людей все делаете, и вообще.
У тебя такой странный тейк для компании которая сделала для моддинга своей игры больше, чем подавляющее большинство других, так ты ещё и возмущаешься что она не сделала ещё больше и лучше.
что один файл, что два - разницы никакой. Однако появляется больше выбора у конечного пользователя для каких-либо специфических ситуаций - может быть, нужен только один файл, или может быть какой-то файл вызывает проблемы. В любом случае, я долго RoC не тестил, так что перестраховался, отделив него в отдельный файл.
Может быть, слишком много заморачиваюсь :)
Кому как удобно, в общем.
» WarCraft 3 / [UjAPI] ODE Physics API
» WarCraft 3 / [UjAPI] ODE Physics API
» Unryze Jass API / UjAPI - Конвертаторы
есть такое, лежит в тайпкастерах
Ред. fenathesnake
» WarCraft 3 / Отслеживающийся
» WarCraft 3 / Как эффективно реализовать полиморфизм? (мемхак+)
На чистом джассе работа с функциями очень ограничена и ооп не получится
» WarCraft 3 / WinMPQ
» WarCraft 3 / Как удалить integer локальную переменную? И нужно ли?
нету сборщика мусора ни в C, ни в Варкрафте, потому что с сборщиком мусора утечек памяти не может быть впринципе.
Ред. fenathesnake
» WarCraft 3 / Как удалить integer локальную переменную? И нужно ли?
» Unryze Jass API / UjAPI - AngelScript
» Таверна Хаоса: Марш Хаоса (HD for 1.26a!) / HD Охотники [WoW+Anime+Doom]. Переделка карты после повреждения
» Unryze Jass API / [UjAPI] Конкурс Наработок 2024
» Кровь и Честь II. Грехи берсерков / Кровь и Честь II. Грехи берсерков
Ред. fenathesnake
» За огненной стеной / Комментарий от сотрудника Blizzard по поводу vJass
» За огненной стеной / Комментарий от сотрудника Blizzard по поводу vJass
Пример кода, который не сможет создать 500 объектов MyStruct с правильно инициализированными полями (место под StringArray тупо закончится)
» За огненной стеной / Комментарий от сотрудника Blizzard по поводу vJass
» Stormgate / [Опрос] Что там по Штормгейту?
» Stormgate / [Опрос] Что там по Штормгейту?
» Stormgate / [Опрос] Что там по Штормгейту?
» WarCraft 3 / Как при бездействии игрока убрать диалоговое окно?
» WarCraft 3 / Вылет редактора при использовании любой клавиши
» Блог fenathesnake и все такое / Боссфайт для конкурса боссфайтов 2023.
» Блог fenathesnake и все такое / Боссфайт для конкурса боссфайтов 2023.
» Блог fenathesnake и все такое / Боссфайт для конкурса боссфайтов 2023.
» XGM Конкурсы / Конкурс битв с боссами 2023
» WarCraft 3 / Быстрые анимации в главном меню
Кому как удобно, в общем.