что сложного сделать свои нетральные предметы и всё будет работать как тебе нужноСкорее всего никак(ну, а что ты думал)
что сложного сделать свои нетральные предметы и всё будет работать как тебе нужноСкорее всего никак(ну, а что ты думал)
Надо добавить по больше комманд и сделать максимум игроков для тимы 1как сделать каждого игрока сам за себя
function Activate()
GameRules.GameMode = GameMode()
GameRules.GameMode:InitGameMode()
GameRules:SetUseUniversalShopMode(true)
GameRules.AddonTemplate.tickRate = 0.25
GameRules.AddonTemplate.goldPerTick = 1
GameRules.AddonTemplate.expBoost = 150
GameRules:GetGameModeEntity():SetUseDefaultDOTARuneSpawnLogic(true)
GameRules:GetGameModeEntity():SetTowerBackdoorProtectionEnabled(true)
GameRules:SetShowcaseTime(0)
GameRules.AddonTemplate = GameMode()
GameRules.AddonTemplate:InitGameMode()
end
function Dota2ButVVV:OnEntityKilled(event)
local killedUnit = EntIndexToHScript(event.entindex_killed)
local hero = EntIndexToHScript(event.entindex_attacker)
if KilledUnit:IsRealHero() then
killedUnit:SetTimeUntilRespawn(20)
end
end
ListenToGameEvent ("entity_killed", Dynamic_Wrap(Dota2ButVVV, 'OnEntityKilled'), self)
Хм, теперь кастомки нормально обновляются, а не через задницу.
Как бы еще так сделать, чтобы обычная дота без языкового параметра запускалась...
На курьера плюнул, подглядел в другой кастомке универсальный магазин. Оказалось, всего одним параметром решается)
Теперь новая проблемка: нет пассивного золота. Куда копать?
Пробовал это удалить, ибо уже сам понял, что не работает. Так после этого отвалилась универсальная лавка.GameRules:SetGoldTickTime
GameRules:SetGoldPerTick
вроде-бы не работают с 24.02.2020, может быть исправлено, но я не пробовал
Не знаю, что я там сломать вообще мог, но после пары обновлений не работате уже этот блок команд целикомДа вроде работает.
Да тутКод:function Activate() GameRules.GameMode = GameMode() GameRules.GameMode:InitGameMode() GameRules:SetUseUniversalShopMode(true) GameRules.AddonTemplate.tickRate = 0.25 GameRules.AddonTemplate.goldPerTick = 1 GameRules.AddonTemplate.expBoost = 150 GameRules:GetGameModeEntity():SetUseDefaultDOTARuneSpawnLogic(true) GameRules:GetGameModeEntity():SetTowerBackdoorProtectionEnabled(true) GameRules:SetShowcaseTime(0) GameRules.AddonTemplate = GameMode() GameRules.AddonTemplate:InitGameMode() end function Dota2ButVVV:OnEntityKilled(event) local killedUnit = EntIndexToHScript(event.entindex_killed) local hero = EntIndexToHScript(event.entindex_attacker) if KilledUnit:IsRealHero() then killedUnit:SetTimeUntilRespawn(20) end end ListenToGameEvent ("entity_killed", Dynamic_Wrap(Dota2ButVVV, 'OnEntityKilled'), self)
Пока получается такой скрипт. Тут он целиком. Метод научного тыка и плагиат процветают, но чувствую - что-то не по феншую, особенно в первой функции. В первую очередь непонятно, в чем разница между GameRules.GameMode и GameRules.AddonTemplate... И не работает возрождение за 20 секунд.
Так где здесь этоНе знаю, что я там сломать вообще мог, но после пары обновлений не работате уже этот блок команд целиком
GameRules:SetUseUniversalShopMode(true)
GameRules.AddonTemplate.tickRate = 0.25
GameRules.AddonTemplate.goldPerTick = 1
GameRules.AddonTemplate.expBoost = 150
GameRules:SetGoldPerTick( 5 )
GameRules:SetGoldTickTime( 0.5 )
GameRules:SetGoldTickTime( GameRules.AddonTemplate.tickRate ) -- Вместо этого можно просто указать например 0.25
GameRules:SetGoldPerTick( GameRules.AddonTemplate.goldPerTick ) -- 1
Какие полные. Полные в библиотеках например в DotaIMBA или в более старом SpellLibrary. Не полные, можно найти в dota 2 beta/game/dota/scripts/npc/npc_abilities.txtГде брать скиллы от героев(код) и партиклы из обычной доты?
Я конечно не эксперт, но вроде как это работает так:Кто-то пользовался этим апи? Что оно делает и работает ли вообще? За что отвечают параметры?
ExpensiveInstantRayCast(Vector Vector_1, Vector Vector_2, handle handle_3)
По мере возможностей знакомлюсь, про рейкаст просто спросил из любопытства, ибо большая часть других апи понятна, а это что-то не совсем.Исходя из вопросов выше вам лучше сначала ознакомится с базой, а не лезть в рейкаст в доте)
function Activate()
GameRules.GameMode = GameMode()
GameRules.GameMode:InitGameMode()
GameRules:SetUseUniversalShopMode(true)
GameRules:SetGoldTickTime(0.25)
GameRules:SetGoldPerTick(1)
GameRules:GetGameModeEntity():SetUseDefaultDOTARuneSpawnLogic(true)
GameRules:SetShowcaseTime(1)
GameRules:SetRuneSpawnTime(1)
GameRules:SetStartingGold(1000)
CDOTABaseGameMode:SetCustomHeroMaxLevel(100)
CDOTABaseGameMode:SetFixedRespawnTime(15)
CDOTABaseGameMode:SetTowerBackdoorProtectionEnabled(true)
end
А разве в Activate оно должно работать?Так выглядит функция.
Ни один из этих параметров не работает, только руны нормально спавнятся. ЧЯДНТ?Код:function Activate() GameRules.GameMode = GameMode() GameRules.GameMode:InitGameMode() GameRules:SetUseUniversalShopMode(true) GameRules:SetGoldTickTime(0.25) GameRules:SetGoldPerTick(1) GameRules:GetGameModeEntity():SetUseDefaultDOTARuneSpawnLogic(true) GameRules:SetShowcaseTime(1) GameRules:SetRuneSpawnTime(1) GameRules:SetStartingGold(1000) CDOTABaseGameMode:SetCustomHeroMaxLevel(100) CDOTABaseGameMode:SetFixedRespawnTime(15) CDOTABaseGameMode:SetTowerBackdoorProtectionEnabled(true) end
если он её вызывает в ините, то должно, это же просто функция.А разве в Activate оно должно работать?
В InitGameMode пиши
ну C тут знать и не надо, си это процедурный язык программирования, который даже в исходниках доты не используется в чистом виде (ну или по большей части не используется) и он очень сложен для освоения без знаний базы программирования и практики на других языках.По мере возможностей знакомлюсь, про рейкаст просто спросил из любопытства, ибо большая часть других апи понятна, а это что-то не совсем.
А вообще проблемно что-то найти по скриптингу совсем с нуля. Я вот не знаю ни С, ни луа. Понятно, что для кастомок мне абсолютно не нужен первый, а второй нужен постольку-поскольку - всё на стандартных дотовских апи построено. Но практически нигде подробно, с примерами, доступным языком не рассказано, как именно использовать эти апи (типа почему у них вложенность иной раз по 3-4 уровня, когда точки а когда двоеточия использовать, можно ли свалить в одну функцию много разных апи и будут ли они там нормально работать и тд). Короче, тяжеловато идет...