14

» WarCraft 3 / Что не так с этими ИИ скриптами?Недавно спрашивал про…

Если в теории я могу поймать твой фриз, но придётся потрудится. Я делал конвертер кода из jass в С(вот ресурс ). Но только для w3 TFT 1.26a. Нужно сделать такой же только для рефорджед. Потом конвертнуть jass2 файл в С код. Сделать длл. Переименовать его в микс. Кинуть в папку с игрой. Зарегистрировать функцию мейн, как войд без аргументов. Запустить в jass2 эту функцию. И вуаля можно дебагерить свой С++ код и искать косяки.
14

» WarCraft 3 / Что не так с этими ИИ скриптами?Недавно спрашивал про…

Принятый ответ
Вообщем карта играбельная, но тормазит, хуманов не пробывал, только орков. Боты сильные. Строят и башенки и быстро точки захватывают и там строят башни. Карта защищена как я понял, так как в редакторе я её не открыл. Вот скриншоты из игры. Тормоза исправлять нужно тому, кто знает хорошо свой код.
Открыть
14

» WarCraft 3 / Помогите, пж, реализовать следующую идею: при каждом повышении…

Frosty102, мне кажется, нужно насоздавать нестандартных способностей в редакторе карт, узнать их рав коды, и в jass2 добавлять их юниту и удалять по твоим условиям. А вот на что нажимать вопрос. Там спелы располагаются в зависимости от их объявления в slk файле. На UjAPI это вроде бы делается проще, но не всем он подходит. Так что вопрос всё равно открыт. Ждём более опытных пользователей. =) А вообще то, по одному уровню повышения сделай на 6 скилов и уровень доступности скила сделай. Первые три на первом уровне доступны и т.д. Даже без джасса можно обойтись, если я не ошибаюсь.
14

» WarCraft 3 / Всем привет.решил зарубиться с ии ботами в варик. и словил…

mistwood, было что-то наподобие, но при выходе из вара, и да это всё практика с мх и разными миксами айсфога. Он же их пишет на паскале обычно, а там и касяки в его коде, он не иделаен. Я имею ввиду его код. Выход скопируй Варкрафт по новой. Или храни бек апы. Не думаю, что проблема на стороне ОС.
14

» WarCraft 3 / Почему ИИ ни с того ни с сего не работает? На ровном месте.…

Не с того не с сего, даже расширение .ai превратилось в .a

Покажи 231 строку полностью, мне кажется или там между Get и UnitCo пробел в описании ошибки.
14

» WarCraft 3 / Помогите, пж, реализовать следующую идею: при каждом повышении…

Возьми аналог и посмотри, что в других картах делают(например, для W3 TFT 1.26a VampirismFire5.10b2.w3x =) ). И да если олд скул то самое простое, мне кажется, это в екселе подредактировать .slk и в текстовом редакторе .txt файлы и вставить их в карту. Определив всех героев и все способности свои или стандартные и указав им связи.
14

» WarCraft 3 / Приветствую, господамы. Мне тут все уши прожужжали с нытьём о…

Проверь не вызываются ли команды для отправки юнитов в бой, на юнита, на декорацию, в область в одном таймере дважды в один период времени. Так как повторный приказ вызывает дисинх в сетевой игре. В локальной нет. Компьютер думает, что игрок не может в 0.1 сек делать два действия сразу.
14

» WarCraft 3 / Пятиминутка в вампов

Мысли в слух. Если делать смежные базы с общим сильным дамагом по радиусу(дефом), то одним можно идти в развитие, до красного вала, а вторым самоуничтожаться. Итого 5-теро почти без корма впереди.
14

» WarCraft 3 / ИИ на джасс

Makeba, да так оно и есть скрипт human.ai имеет тоже функцию main, которая вызывается первая для этого скрипта. А main в карте должен содержать инициализацию ai скриптов не помню точную функцию. Помню что AI в конце. Вроде бы, вот эта функция MeleeStartingAI.
14

» WarCraft 3 / Пятиминутка в вампов

Проверьте, пожалуйста, сетевую игру за двух вампиров против ботов.

Онли Виндовс.
14

» WarCraft 3 / ИИ на джасс

Makeba, в ИИ скриптах не работают многие функции которые можно запихнуть в главный код, так же и в главном коде не работают некоторые функции которые работают в ИИ скриптах. Так что не сравнивай их. Эта два отдельных острова. Где свои законы.
14

» WarCraft 3 / Что это за функция? и как она должна работать? в описании…

Если конвертнёшь в текст, то вроде, эта функция SubString первый аргумент изначальная строка, второй с какого символа, третий по кокой символ (но + 1), конечный аргумент выходная строка.
14

» WarCraft 3 / Парочка приколов: 1. -Учительница: "Что такое невесомость?"…

Так и хочется спеть песню про вампов. Жиган лимон мальчишка симпотичный, урсы чинят вал, дела идут отлично.
14

» WarCraft 3 / Воин из племени кентавроогров

Fasser, прототип - это только наработки для проекта. Первичный интерфейс, например. Сделай уж её трёхмерной, чтобы была модель. Только куда ты её денешь потом? Кому такое убожество нужно?
14

» WarCraft 3 / (MH) Отдача приказа

Ты хочешь сидеть за компом и наблюдать как за тебя играет комп?
14

» WarCraft 3 / Всем ку. Как синхронизировать Real данные локального игрока…

globals
gamecache vSyncCache3
boolean vSync
integer vCountPlayersUser
endglobals

function fInitnData takes nothing returns nothing
set vSyncCache3 = InitGameCache("Sync3")
set vSync = false
set vCountPlayersUser = 3
endfunction

function fSync takes nothing returns nothing
local string vStr
local integer vvi
local real vResult
if (vSync == false) then
    set vStr = I2S(GetPlayerId(GetLocalPlayer()))
    call StoreReal(vSyncCache3,"real_data",vStr, 1.0)
    call SyncStoredReal(vSyncCache3,"real_data",vStr)
    call StoreReal(vSyncCache3,"real_data",vStr, 0.0)
    set vSync = true
else
    set vvi = 0
    loop
        exitwhen vvi >= vCountPlayersUser
        // тут должна быть проверка игрока на лив
        set vResult = GetStoredReal(vSyncCache3,"real_data",vStr)
        if (vResult == 0.0) then
            return
        endif
    endloop
endif
// Ура данные синхронизированы по времени в vResult значение
// fSync - конечно же это функция таймера
endfunction
14

» WarCraft 3 / таймер времени игры

mistwood, тут
    call TimerStart(Bv,1234,false,function QX)
    call TimerStart(t,1.,true,function JR)
    set t=null
    set Kv=true
    set vTriggerMB = CreateTrigger(  )
    call TriggerRegisterTimerEventSingle( vTriggerMB, 0.1 )
    call TriggerAddAction( vTriggerMB, function kR )
    set vTimeRound = 60 * 1
    set vTriggerMB2 = CreateTrigger(  )
    call TriggerRegisterTimerEventSingle( vTriggerMB2, 0.1 )
    call TriggerAddAction( vTriggerMB2, function qA )

QX это бесконечный таймер который прибаляет к счётчику 1234 сек
JR отображает секунды в мультибораде каждую секунду
kR создаёт мультиборад
qA создаёт таймеры следующего раунда(тебе это не надо)
fE это удобное отображение времени через двоеточие
FR устанавливает итему мультиборада значение
А лучше скачай JassCraft, а то очень неудобно читать однотонный текст jass2. Да ещё и без дебага.)
14

» WarCraft 3 / Десинх карты в Рефоржете после 10-15 сек!Подскажите плз, всё было…

ShadowNinja, проблема с дисинхронами в карте, или когда интернет отваливается у одного из игроков, но тогда он висит и идёт прогресс ожидания. У меня дисинхроны обычно бывали из-за того, что в одну и ту же долю секунды действия не совпадали, так как работали win32 потоки в мапхаке. Я сделал таймер один на всех игроков и решил эту проблему. Но ещё возможно, что в в функции передаёшь передаёшь переменную unit, а тип юнита 0, выдаёт. Ставишь заглушку с сообщением на экран и проблема в смене id unit'ов по непонятной причине. И приходится по новой эту переменную определять. Пример, во время строительства один id юнита, во время постройки другой. Или рабочие которые рубят лес сами по себе меняют свой id, по неизвестной причине Варкрафта 3. И когда ты пытаешься вызвать функцию в которой нет такого юнита, то идёт вылет из игры. Вообщем проверяй своих юнитов на Id функций GetUnitTypeId, если 0 то такого юнита уже нету. И ищи его в зоне наверное в определенной. Ведать и в рефордже та же шляпа, со сменой long значений handle к юнитам. Но проблема может быть и не только в юнитах, но и в итемах и тд. тп. Проверяй их id. Лучшего способа не нашёл.
14

» WarCraft 3 / Как отследить урон от руки/заклинаний? Какую систему…

native UnitHasBuffsEx               takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean

if (UnitHasBuffsEx(WhichUnit,false,true,true,false,true,false,false) == true) then
    // например каст ветерка
endif
if (UnitHasBuffsEx(WhichUnit,false,true,false,true,false,false,false) == true) then
    // физический дамаг
endif
14

» WarCraft 3 / Пятиминутка в вампов

Видео с данной реализацией ботов на старой карте. Недочёты вампы, не добивают базы, идут на хорошо укреплённую базу без опыта, юзают ветерки около пушек. И не отступают нормально. Хумы бегают под ногами у вампа, не грейдятся тенты иногда(исправлю =) ), хумы помогают сразу даже на базах без норм обороны. Версия вверху старая, скоро выйдет новая.