XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
Баг в способности "Заколдованные копья"
Сделал GUI способность "Заколдованные копья":
Вокруг бандита начинают кружится в танце четыре заколдованных копья, нанося небольшой урон каждому противнику вблизи с бандитом. В любой момент бандит может выпустить эти копья в стороны их направления, чтобы они пронзали врагов на своём пути, нанося физический урон.
Тут некоторая проблема с MUI.
Если просто использовать способность и подождать пока она прекратится, она будет действовать как "Огненный плащ" и всё просто супер, разве что урон физический тут.
Но когда её используют несколько юнитов, а потом один из них "Выпускает копья", то через мгновенье копья выпускаются и у остальных юнитов.
Такой баг происходит не всегда, а только когда юнит, выпускающий копья не является юнитом, который последним активировал способность.
Использовал свой, наверняка не совсем правильный способ, добавил юниту способность пустышку и ставил её уровень на цифру счётчика MUI, то есть уровень этой способности = номер юнита по счёту запускающего эту способность "Выпустить копья". После отработки заклинания этот уровень пустышки проверялся и уменьшался, когда нужно.
Пожалуйста помогите, посоветуйте как исключить данный баг, а также любые идеи по поводу модернизации/оптимизации кода приветствуются.
Скриншоты триггеров:
» 3) Способность "Выпустить копья"
Добавил чуть подправленную версию, но баг не пропал..
Миниатюры
Кликните на картинку для увеличения
Название:  T1.jpg
Просмотров: 20
Размер:  290.5 Кбайт  Кликните на картинку для увеличения
Название:  T2.jpg
Просмотров: 9
Размер:  351.5 Кбайт  Кликните на картинку для увеличения
Название:  T3.jpg
Просмотров: 5
Размер:  324.0 Кбайт  Кликните на картинку для увеличения
Название:  T4.jpg
Просмотров: 7
Размер:  367.1 Кбайт  Кликните на картинку для увеличения
Название:  T5.jpg
Просмотров: 14
Размер:  319.9 Кбайт  

Кликните на картинку для увеличения
Название:  T9.jpg
Просмотров: 4
Размер:  231.1 Кбайт  Кликните на картинку для увеличения
Название:  T8.jpg
Просмотров: 2
Размер:  324.5 Кбайт  Кликните на картинку для увеличения
Название:  T7.jpg
Просмотров: 3
Размер:  357.5 Кбайт  Кликните на картинку для увеличения
Название:  T6.jpg
Просмотров: 3
Размер:  319.9 Кбайт  
Прикрепленные файлы
Тип файла: w3x Bandit - Hero spells (by Emily).w3x (93.6 Кбайт, 1 просмотров )
Тип файла: w3x Bandit - Hero spells (by Emily) v.0.02.w3x (94.0 Кбайт, 1 просмотров )

Отредактировано Emily_WoRnz, 05.07.2013 в 19:27.
Старый 04.07.2013, 21:01
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
Сделал GUI
дальше не читал, и никто не будет качать карту, выложи сюда [скрины из редактора триггеров]
Sargaraser добавил:
насколько я знаю сейчас самый оптимальный способ муи это параллельные массивы, индекс к которым является объектом, а сами массивы как бы параметрами это объекта.
Старый 04.07.2013, 22:57
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
Sargaraser,
насколько я знаю сейчас самый оптимальный способ муи это параллельные массивы, индекс к которым
является объектом, а сами массивы как бы параметрами это объекта.
Было бы неплохо, если бы ты привёл пример.. Впервые слышу и не понимаю как индекс является объектом.
Старый 04.07.2013, 23:45
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
вот вам пример массивов
Старый 04.07.2013, 23:50
DimanTOoBS

offline
Опыт: 5,791
Активность:
Emily_WoRnz, зачем так много триггеров, спел делается в 2 триггера
  1. создаешь копья, крепишь таймер, сохраняешь юнита в хеш таймера, сохраняешь другие параметры если надо (ну там скорость вращения дальность полета и тд, если она зависит от уровня), ну и добавляешь тик таймера в событие триггера 2... В этом же триггере можно сделать и "Выпускание копий", при создании сохраняешь в хэш лог переменную "да", при выпускании перезаписываешь на "нет.
  1. само движение копий, делаешь проверку лог переменной таймера, если "да", то делаешь движение по кругу вокруг юнита, иначе то двигаешь по прямой.
разберись как работает хэш, и тогда у тебя никогда не будет проблем с МУИ
Старый 05.07.2013, 10:19
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
DimanTOoBS, если бы внимательно посмотрел мои триггеры, то там так и реализовано. Но я не пользуюсь хэш-таблицей, так как не умею, ну и говорят, что она работает медленнее , чем массивы.
У меня
1-й триггер - A unit приводит способность в действие
2-й триггер - таймер, где происходят все манипуляции с копьями
3-й триггер - применение способности "Выпустить копья", в котором просто ставится логическая переменная с "Нет" на "Да".
Старый 05.07.2013, 11:30
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
что говорит дебаг?
Старый 05.07.2013, 16:24
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
Hate, говори конкретнее.
Я проверил спелл вдоль и поперёк, чуть переделал, но всё равно не пропадает ошибка.
Если один выпускает копья, то они выпускаются у всех потом друг за другом..
Старый 05.07.2013, 18:02
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
куда конкретнее? что показывает ваш дебаг, какой юнит показывается при заюзании выпуска копий, и все что с этим связано
Старый 05.07.2013, 18:05
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
Hate, выкладываю подправленную версию, но баг не пропал..
На карте 3 героя для теста:
  1. Активирую способность "Заколдованные копья" для 1-го героя, для 2-го и для 3-го. Всё работает.
  2. Активирую способность "Выпустить копья" героем №3 - без багов, №2 - без багов, №1 - без багов.
А если я выполню пункт №1. Потом сделаю так:
Активирую способность "Выпустить копья" героем №1 - работает, при удалении копий эффекты показываются и на копьях других героев.
№2 - копья выпускаются у героя №1. Эффекты отсутствуют
№1 - копья выпускаются у героя №2. Эффекты отсутствуют
Вот расписал подробнее.
что показывает ваш дебаг
не понимаю вопроса =(
Дебаггер - отладчик, ну так я сам всё тестирую и сообщаю вам результаты. Всё на обычных триггерах без сторонних программ...
Прикрепленные файлы
Тип файла: w3x Bandit - Hero spells (by Emily).w3x (94.0 Кбайт, 1 просмотров )
Старый 05.07.2013, 19:25
Goodie

offline
Опыт: 2,825
Активность:
Ищем баги сами
Старый 05.07.2013, 19:27
Shuex
feel my presence
offline
Опыт: 1,024
Активность:
Goodie,
Я проверил спелл вдоль и поперёк, чуть переделал, но всё равно не пропадает ошибка.
Выводил я текст уже много раз.. я вроде как понимаю в чём проблема, но не совсем знаю как исправить.
Написал сюда уже после всех попыток что-то сделать самостоятельно.
Вам, как более опытным, думаю, куда проще было бы скачать карту, посмотреть в чем дело, тыкнуть меня носом в текст ошибки и сказать мол "Вот она".
Сейчас тогда скачаю фрапс и выложу на ютуб своё баго-творение. Может так вам лучше будет понять..
Уже выложил на ютуб, посмотрите пожалуйста. Там показывается в чем баг..

Отредактировано Emily_WoRnz, 05.07.2013 в 20:36.
Старый 05.07.2013, 19:53
DimanTOoBS

offline
Опыт: 5,791
Активность:
Emily_WoRnz,
DimanTOoBS, если бы внимательно посмотрел мои триггеры, то там так и реализовано. Но я не пользуюсь хэш-таблицей, так как не умею, ну и говорят, что она работает медленнее , чем массивы.
я думаю для текущего развития техники это уже не проблема, а вот триггеры станут компактнее раз в 5, если не больше, честно говоря триггеры я не смотрел ибо искать ошибку в чужом коде это адско, тем более что тут 100500 скринов...
Старый 06.07.2013, 00:03
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
короче что нужно, переменная угла, переменная хранящая кастера, 4 переменные хранящие "копья" или одна, решать вам, все переменные массивы, одна переменная, целое число, считающая общее количество твоих спеллов, нач. значение -1, при касте увеличиваешь на 1 и записываешь в массивы с этим индексом новые параметры твоего спелла, по окончании воздействия заменяешь текущий объект, который нужно удалить максимальным, обнуляешь максимальный, отнимаешь от общего количества один, и в лупе под таймером отнимаешь один, чтобы обработать последний замененный объект... прочитай мою писанину раз 5 чтобы понять.
Sargaraser добавил:
паузишь таймер если общее количество -1
Sargaraser добавил:
и запускаешь если 0
Sargaraser добавил:
хмм, можешь считать, что тебе повезло) в июне от скуки делал один прикол, так там использовал этот метод, метод параллельных массивов, качай карту, разбирайся...
З. Ы. горячие клавиши A W D, удачи
Прикрепленные файлы
Тип файла: w3x Safe[R].w3x (394.8 Кбайт, 4 просмотров )
Старый 06.07.2013, 11:47
Goodie

offline
Опыт: 2,825
Активность:
Emily_WoRnz, У тебя трабла с выпусканием копий
Используй кастом валуе или еще че нить, чтобы выгрузить индекс когда кастуешь спелл выпустить копья и тогда должно быть ок
Старый 06.07.2013, 19:06
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
лучше аттачить индекс через таблицы потому что если много способностей связанных между собой, то CV не хватит
Старый 06.07.2013, 19:08
Goodie

offline
Опыт: 2,825
Активность:
Sargaraser, ты про хеш таблицы в гуи?
Старый 06.07.2013, 19:21
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
Goodie, кто говорил о гуи?)
Старый 06.07.2013, 19:37
Goodie

offline
Опыт: 2,825
Активность:
Sargaraser,
Сделал GUI способность
Вроде как о гуи болтаем) Был бы джасс, про джасс поболтали
Старый 06.07.2013, 20:15
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
Goodie, ну я считаю, что гуи в 2013 это уже неочем, да и джасс неочем
Sargaraser добавил:
ну и на гуях это можно было менее ракалово сделать
Sargaraser добавил:
гуи это как нюхать цветы в противогазе
Старый 06.07.2013, 20:31
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 22:18.