30

» WarCraft 3 / Три коридора Плети v1.1

Охота больше скинов персонажу и разных моделей, даже можно для наглядности скин сделать соответствующим основному навыку
К сожалению, в моделировании я нуб, эту модельку взял только из-за того, что у неё есть набор анимаций для бойца и лучника. Хотя демон не подходит к сеттингу войн нежити. В идее хочу взять вот эту модель, сделать ей анимации для бойца и мага (махание посохом), обезоружить и крепить ей модели оружия в зависимости от выбранного героя.
Мага надо продумать
С магом обязательно что-то придумая. Ибо и вправду интеллект брать смысла нет.
30

» WarCraft 3 / Три коридора Плети v1.1

Rare:
Я сыграл 3 раза. Как любитель стандарта и консерватор, презирающий всякие супернавороты, триггерные заклинания и системы (ибо это мешает играть и лично мне портит впечатление), я безумно счастлив видеть что-то подобное. Правда, большая часть сообщества, к сожалению, стандарт к плюсам не отнёсет (а уж тем более к особенностям).
Играть было приятно достаточно. Но отзыв же всегда пишется, чтобы авторам было, что исправлять, поэтому укажу проблемы.
  1. Выбирать основной характеристикой интеллект бесполезно достаточно. Во-первых, сам по себе класс мага не существует в игре, во-вторых, как-то и способностей, требующий ману и наличие именно интеллекта основным, вроде как нет
  2. Отсутствие ИИ у других игроков
  3. Отсутствие предметов с постоянным эффектом (кроме яйца феникса в лавке)
  4. Игра очень быстрая. Войска спавнятся часто и в больших количествах, сама карта небольшая, линия башен всего одна, вместо привычных для АОС двух-трёх. Я вроде только начал, а уже через 5 минут мои войска уже начинают штурмовать вражескую базу а ещё через 5-6 уже победа случается.
  1. Класс мага изначально был задуман, но вёл к переусложнению геймплея. Чего я пытась избежать.
  2. ИИ просто физически нет времени делать((
  3. Нехочу плодить кучу однотипных предметов. И посему воплотил только яйцо ибо его реализация показалась мне интересной.
  4. За это приношу извинения, просто физически нет времени. В ближайших фиксах башен будет больше, а мобы станут адекватней))
30

» WarCraft 3 / Нужна модель? - Вам сюда!

NazarPunk, Держи: xgm.guru/files/100/123536/comments/397698/FelOrcAssassin.mdx
Спасибо огромное, выручили.
30

» WarCraft 3 / Нужна модель? - Вам сюда!

Добавить к модели анимацию Attack Walk Stand Spin от стандартного Блэйдмастера
Нужная модель:
Стандартная модель Блэйдмастера:
Загруженные файлы
30

» WarCraft 3 / Есть здесь кто в формулах движения даммиков шарит?

Steal nerves:
NazarPunk, крутая формула, надо попробовать юзнуть
Тогда можете использовать сайт, где со значениями можно в реалтайме поиграться.
30

» WarCraft 3 / Как воссоединить две карты в одну?

Без карт всё упирается в гадание на кофейной гуще. Прикрепите карты к сообщению чтоб внести ясность.
30

» WarCraft 3 / Есть здесь кто в формулах движения даммиков шарит?

Принятый ответ
Используйте Кривые Безье, с помощью всего двух значений можно нарисовать огромную кучу движений.
30

» WarCraft 3 / Jass to cJass

Ну да попутал, я имел ввиду синтаксис cjass
Так есть же ещё zinc, там тоже С-шный синтаксис.
30

» WarCraft 3 / На счёт утечек памяти

SNART:
ссылка
Нет, в jass не разбираюсь...
В общем сойдёт такой вариант,
так, как в нужной карте нагрузка на триггер будет примерно в 100 раз меньше, чем при тесте с 1000 юнитов.
Я просто поражаюсь, как вместо того, чтобы понять несколько строчек на JASS люди тратят кучу чужого и своего времени, чтобы сделать криво, но просто.
30

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

uranus:
Ну, почему самые элементарные вещи они не хотят добавлять? Т.е. сделать Ауру вампиризма настраиваемой как Ауру меткости они не могут, а заставить Смертельный удар не учитывать урон от предметов - пожалуйста. Может написать на хайв?
Потому что всем рулят эффективные менежеры, и хайп о патче важнее его работоспособности. ИМХО к концу года Бдиззы даже близко к функционалу мемхака не продвинутся.
uranus:
Clamp, это я понимаю, но в таком случае уже нельзя сослаться на техническую сложность реализации. Нативки вводят, на этом спасибо, но куда проще некоторые вещи позволить реализовать через РО.
А некоторые вещи совсем просто реализуются через
GetSLKcelll()
SetSLKcell()
Куда проще дать ко всему доступ из кода потенциально, и нет смысла размыливать не слишком большие рабочие ресурсы на лишнюю работу.
Тоесть о SetUnitModel() можно только мечть?
30

» WarCraft 3 / На счёт утечек памяти

Если атакующим дать способность, например - "дыхание холода", то возникает утечка, которая вроде бы исчезает, если удалить атакуемых.
Если исчезает при удалении юнитов, значит "дыхание холода" резервирует хэндлы для работы
Тормозов не заметил причем даже при отключенной функции - "set bj_wantDestroyGroup = true".
Попробуйте часто выбирать всех юнитов на карте и будут вам тормоза с утечками
Код
function Trig_handle_Func002002 takes nothing returns nothing
    call DoNothing()
endfunction

function Trig_handle_Actions takes nothing returns nothing
    call ForGroupBJ( GetUnitsInRectAll(GetPlayableMapRect()), function Trig_handle_Func002002 )
endfunction

function InitTrig_handle takes nothing returns nothing
    set gg_trg_handle = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_handle, 0.01 )
    call TriggerAddAction( gg_trg_handle, function Trig_handle_Actions )
endfunction
30

» WarCraft 3 / Карта FPS Mod

Принятый ответ
С мемхаком это реализуется очень просто.
RenderEdge мемхак
Warcraft 1.26a
Передвижение W,S,A,D. Режим курсора Q.
Загруженные файлы
30

» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...

NazarPunk, cjass
bool Temp(string s){
return true;
}
У zinc (Z Is Not C) тоже С-подобный синтаксис, но мне он не приглянулся изза того, что вылетает при ошибках, долго компилит и как сказано выше
Хоть он и деликатен в написании, суммарное количество времени на компиляцию и возню с ошибками затрачивается при 500+ запусках для отладки значительно больше.
по сути задача любого препроцессора и компилятора превратить красивый и удобный код в нечитаемое говно которое устраивает машину
JASS по сути сам является препроцессором для байткодов (Java Ass), которые и будут исполнятся игрой. И на это мы уже никак повлиять не можем.
хотя существуют уникумы которые могут писать медленно работающий непонятный код
Эти уникумы будут всегда и это ещё чудо, что их код может как-то исполняться не вызывая тотальный трындец всему, к чему дотягивается))
30

» WarCraft 3 / Меню заданий

    Events
        Player - Player 1 (Red) types a chat message containing test as An exact match
    Conditions
    Actions
        Set Player = (Triggering player)
		Quest - Create a Required quest titled Quest 1 - Killing q... with the description long long descripti..., using icon path ReplaceableTextures\CommandButtons\BTNAmbush.blp
        Quest - Disable (Last created quest)
        Custom script: if GetLocalPlayer() == udg_Player then
        Quest - Enable (Last created quest)
        Quest - Flash the quest dialog button
        Custom script: endif
30

» Моддинг / Какой файл отвечает за таблицу урона?

Мне нужно внести свой баланс в игру, реалестичный
Тоесть у вас будет перелом колена, отбор оружия, удар в пах и закидывание гнилыми помидорами?
30

» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...

Msey:
Adic Parser и Adic Optimizer
Достаточно просто отключить парсер. Оптимизация без него не будет работать.
То во что превращает код Adic сложно назвать оптимизацией, да и при сохранении карты он тормозит и частенько вылетает.
Мне вот пригдянулся zinc из-за простоты реализации и удобства отладки.
JASS
function Temp takes string s returns boolean r
..
return true
endfunction
против
zinc
function Temp (string s) -> boolean {
...
return true;
}
30

» WarCraft 3 / Триггерные порталы

Afterdeath, тут всё упирается в условия. Например если у юнита три портала - связывать 1 => 2 =>3 или 1 <=> 2 <=> 3? Или разрешено только два? Или...
30

» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...

но ошибку выдаёт при проверке.
Попробуйте обновить JGNP и pjass и выключить Adic Parser и Adic Optimizer в cjass
чтоб не полностью перейти на джасс
Что вы так JASS'а боитесь то? Если юзать его с препроцессорами, то с разрастанием карты не потеряешься в куче глобальных переменных и триггеров.
ScopteRectuS:
А зачем через группу проверять расстояние? Есть же функция IsUnitInRange( ).
Это наследие GUI, всё через глобалки сделано же.
JASS
function SpeakSystem_Actions takes nothing returns nothing
    local force f = GetPlayersByMapControl(GetPlayerController(GetOwningPlayer(GetOrderedUnit())))
    local location loc1 = GetUnitLoc(GetOrderTargetUnit())
    local location loc2 = GetUnitLoc(GetOrderedUnit())
    /* 851971 это id приказа smart, ненужно лишний раз конвертить из строки */
    if GetOwningPlayer(GetOrderTargetUnit()) == Player(PLAYER_NEUTRAL_PASSIVE)  and GetIssuedOrderId() == 851971 and  IsUnitInRange(GetOrderTargetUnit(),GetOrderedUnit(),500.) then
        // Если расстояние от юнита до цели меньше 500 то цель поворачивается и говорит в чат с подсветкой кружка
        call SetUnitFacingTimed( GetOrderTargetUnit(), AngleBetweenPoints(loc1, loc2), 0.30 )
        call TransmissionFromUnitWithNameBJ( f, GetOrderTargetUnit(), "", null, "", bj_TIMETYPE_SET, 1.00, true )
        call UnitAddIndicatorBJ( GetOrderTargetUnit(), 100, 100, 100, 0 )
        call DisplayTextToForce( f, udg_strings[GetRandomInt(0, udg_count)] )
    endif
    call ForceClear(f)
    call DestroyForce(f)
    set f = null
    call RemoveLocation(loc1)
    call RemoveLocation(loc2)
endfunction

function SpeakSystem takes nothing returns nothing
    local trigger t = CreateTrigger()
    local integer i = 0

    //вешаем только играющим
    loop
        exitwhen i > 12
        if GetPlayerController(Player(i)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING then
            call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER, null)
        endif
        set i = i + 1
    endloop
    call TriggerAddAction(t, function SpeakSystem_Actions)
    set t = null
endfunction 
30

» WarCraft 3 / Система пассивного чарджа/рывка

Int3r_Karma:
NazarPunk, что ты имеешь в виду под "пробегать мимо?"
Если отдать приказ двигаться в точку рядом с врагом, они добегают до точки даже если их атакуют, а потом вступают в бой и рывок не срабатывает.
30

» WarCraft 3 / Система пассивного чарджа/рывка

Int3r_Karma:
NazarPunk, спасибо! Действительно, нашел опечатку. Почистил, перезалил.
Если пробегать мимо не срабатывает.
Загруженные файлы