Правда про это можно было написать свой ресурс, мб поделившись своей идеей карты, скринами или наработкой, и там уже написать, что ищешь друзей.
Так может быть кто-нибудь и откликнулся.
Blackoops, GetOwningPlayer не считается. Это разные вещи. GetLocalPlayer() вызывается через код только.
Только если через триггеры/код неправильно ее использовал картодел, можно словить дессинк.
Если у наемника есть РО способность, которая даже без триггеров настроена неправильно или использована криво, а может быть триггер ее отловит вместо другой - то может произойти проблема. К примеру когда делаешь абилку на основе молота бурь и триггерно ловишь применение, а у другого юнита тоже есть эта абилка, и она тоже будет ловиться ибо общий id приказа.
Это сложно с нуля не зная карты копать всю карту. Автору в этом плане проще искать ошибку.
Пускай начнет с того, что будет отслеживать момент десинка.
Что делали люди?
Какие абилки юзали или какой приказ отдавали перед десинком?
Что происходило на карте и какие игровые события могли в этот момент произойти?
Таким образом автор может локализировать проблемные места (триггеры), где уже разбирать более подробно действия, что там происходят и найти причину.
Далее можно отключать некоторые триггеры и тестить.
Также стоит проверить, можно ли повторить десинк в одиночку или нужно пару человек и тд, чтобы с друзьями потестить. Можно ли повторить десинк гарантированно.
Для этой задачи можно добавить тестовые триггеры, которые телепортируют игроков в нужные точки где был десинк с нужным лвлами и шмотками, чтобы "быстрее" добиться этого бага, если он повторяется в одном месте.
Естественно, с утечками надо бороться.
Также стоит обратить внимание на все триггеры, где используется локальный игрок GetLocalPlayer - часто является причиной десинка при неправильном использовании.
Не до конца понял суть проблемы, но думаю тебе стоит использовать массивы. Они полностью под твоим контролем. Случайный объект - это случайный индекс - целое число от 1 до размера массива.
Если порядок не важен - при удалении карты из массива - просто перемещаем последний элемент в позицию удаляемого и уменьшаем размер массива на 1. Так сохраним пул не полученных карт.
Если карты это юниты - можно использовать группу юнитов и выбирать случайного юнита, удаляя из группы, сохраняя пул.
Через анимации (к примеру alternate) опустить. Или модель изначально опустить. В любом случае работа с моделью а не в редакторе.
Если это не полноценный игровой юнит, можно создать модель пустышку с точкой крепления origin в отрицательной глубине. И юниту с такой моделькой прицепить "эффект" твоего юнита к точке origin.
В любом случае работа с моделькой или анимациями у модели
Еще бы хотел добавить, в зависимости от заклинания приказ может быть без цели или с целью: точка, юнит, декорация, предмет. Выбирай нужный приказ и ищи там заклинание в зависимости от цели приказа.
WilliamBz, ну все понятно. Оно создает предмет. Но не в том месте, где ты бросил предмет, а в том месте, где ты подобрал предмет в первый раз.
Сделай микро-задержку перед тем, как получить новые координаты предмета. (ждать 0 секунд тоже подойдет, хотя на самом деле минимум задержки все равно будет)
Надо бы прологировать, что у тебя на самом деле происходит. Повыводи в чатик свои переменные, посмотри, что сохраняешь, что загружаешь. Может быть что-то не в том порядке происходит и ты это сможешь отследить по логам.
Если скинешь карту с системой, могу посмотреть и потестить. С нуля лень создавать эту систему. На первый взгляд вроде должно было работать.
» WarCraft 3 / Всем привет! я делаю карты для варкрафта 3 рефорджет, на версии…
Так может быть кто-нибудь и откликнулся.
» WarCraft 3 / Солнышко поздравило с юбилеем.. Вы, там держитесь... :|Вопрос…
» WarCraft 3 / Всем привет и доброго дня!Хотел спросить у кого, есть такая…
» WarCraft 3 / Почему юнит чьё строительство было начато (решено)
» WarCraft 3 / Приветствую, господамы. Мне тут все уши прожужжали с нытьём о…
GetLocalPlayer() вызывается через код только.
Только если через триггеры/код неправильно ее использовал картодел, можно словить дессинк.
Если у наемника есть РО способность, которая даже без триггеров настроена неправильно или использована криво, а может быть триггер ее отловит вместо другой - то может произойти проблема. К примеру когда делаешь абилку на основе молота бурь и триггерно ловишь применение, а у другого юнита тоже есть эта абилка, и она тоже будет ловиться ибо общий id приказа.
» WarCraft 3 / Приветствую, господамы. Мне тут все уши прожужжали с нытьём о…
Пускай начнет с того, что будет отслеживать момент десинка.
Далее можно отключать некоторые триггеры и тестить.
Для этой задачи можно добавить тестовые триггеры, которые телепортируют игроков в нужные точки где был десинк с нужным лвлами и шмотками, чтобы "быстрее" добиться этого бага, если он повторяется в одном месте.
Также стоит обратить внимание на все триггеры, где используется локальный игрок GetLocalPlayer - часто является причиной десинка при неправильном использовании.
Ред. konvan5
» WarCraft 3 / Пул случайных улучшений и использование апгрейдов
Если порядок не важен - при удалении карты из массива - просто перемещаем последний элемент в позицию удаляемого и уменьшаем размер массива на 1. Так сохраним пул не полученных карт.
» WarCraft 3 / Почему у ледяных змеев и грифонов стрелковая атака на 1.31
Ред. konvan5
» XGM Team / XGM - Премия 2022 года - Объявление победителей!
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
Ред. konvan5
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
Ред. konvan5
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
Разве что менять одного юнита на другого с разными высотами.
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
» WarCraft 3 / как мне тригерно опустить юнита ниже 0 я пробывал написать -…
» Помойка Макебы / нормальные пацаны не рисуют, нормальные пацаны генерируют процедурно
Было интересно почитать :)
Ред. konvan5
» World of WarCraft / ? Есть возможность изменить анимацию перезарядки?
(тут же тема про Warcraft 3)
Ред. konvan5
» WarCraft 3 / Как заставить юнита использовать свою способность в синематике!
Ред. konvan5
» WarCraft 3 / Как заставить юнита использовать свою способность в синематике!
» WarCraft 3 / Почему тип предмета не достаётся из хэш таблицы?Сохраняю…
Ред. konvan5
» WarCraft 3 / Почему тип предмета не достаётся из хэш таблицы?Сохраняю…
Сделай микро-задержку перед тем, как получить новые координаты предмета.
(ждать 0 секунд тоже подойдет, хотя на самом деле минимум задержки все равно будет)
» WarCraft 3 / Почему тип предмета не достаётся из хэш таблицы?Сохраняю…
» WarCraft 3 / Как проверить что все игроки загрузились в игру
Ред. konvan5
» WarCraft 3 / Как опубликовать свой проект и как в принципе писать посты на…
По поводу оформления ресурса для блога вот статья.
Для блога вроде как можно использовать "темы" а не "новый ресурс":
» WarCraft 3 / Генератор фэнтези имен