Преимущественно хотелось бы на ГУИ, конечно.
Что подразумевается в виду? Если кто-нибудь играл в Донт Старв, то механика ускорений по дороге сразу будет понятна. Грубо говоря, у юнита просто МС повышается, когда он передвигается по определённому типу ландшафта. Но здесь есть одно НО, - тут речь идёт уже о мили-карте 420x420 с огромным количеством одновременно находящихся юнитов и разных сложных, динамически-работающих механик, поэтому вариант в стиле "каждый раз спавнить каст-даммика и удалять бафф через время, притом ещё и отслеживая это время" выглядит малёха кукожно. И ещё один момент - допустим, в игре есть условный юнит-архитектор, который может строить эти самые дорожки (менять тип ланда). Эта холобуда должна работать в том числе на все дорожки, которые построит он, поэтому схема с областями крайне усложняется из-за этого. Я понимаю, что если учесть все вышеописанные пожелания, то задача становится довольно сложной для решения, но мне бы хотелось чисто узнать о сферических конях в вакууме, - какие вообще, даже лютейше отдалённые по оптимизированной реализации, варики существуют для осуществления всего этого.

TechnoViking, тю, ну если хочешь без периодика то ставь области где они должны бегать ускоренно, когда входят выдаёшь абилку, когда выходят - отбираешь
`
ОЖИДАНИЕ РЕКЛАМЫ...
30
Проверяешь тип почвы под юнитом и меняешь его скорость, в чём проблема-то?
Нативки есть и для того и для того
9
Clamp:
Проверяешь тип почвы под юнитом и меняешь его скорость, в чём проблема-то?
А если дело происходит в боёвке, где масло опрокидывают\хастят юнитов? Перемешиваться ж цифры будут.
+ триггер-периодик в 1 сек, который будет чекать ВСЕХ юнитов на мили-карте, - такое себе, ибо их в лейте будет под несколько тысяч на карте.
[ну ок, тут можно оптимизировать группой-массивом со всеми типами именно БЕГАЮЩИХ юнитов, но это лишь часть проблемы решит, а местами и добавит, ибо мне придётся в напёрстки с 9999 колпачками играть постоянно относительно юнитов, которые на триггерные замены\тёмного подвязаны]
Нативки есть и для того и для того
Что такое нативка?
30
их в лейте будет под несколько тысяч на карте
Предлагаю потестировать карту с таким количеством юнитов заведомо, узнаешь очень много об оптимизации игрового процесса. Спойлер: даже несколько сотен окажутся малоиграбельным количеством.
Проверять нужно юнитов с приказом отличным от "стоп", а не ВСЕХ юнитов на мили-карте.
Помимо функции установки скорости есть функция её сброса в дефолт.
А вообще советую сначала проверить как оно работает, прежде чем говорить о перемешивании чисел.
9
Clamp:
их в лейте будет под несколько тысяч на карте
Предлагаю потестировать карту с таким количеством юнитов заведомо, узнаешь очень много об оптимизации игрового процесса. Спойлер: даже несколько сотен окажутся малоиграбельным количеством.
Проверять нужно юнитов с приказом отличным от "стоп", а не ВСЕХ юнитов на мили-карте.
А вообще советую сначала проверить как оно работает, прежде чем говорить о перемешивании чисел.
Хорошо. Возможно, я не прав. Я протесчу всё, что ты сказал.
Помимо функции установки скорости есть функция её сброса в дефолт.
А где вот это найти в редакторе?
30
А где вот это найти в редакторе?
native          SetUnitMoveSpeed    takes unit whichUnit, real newSpeed returns nothing
constant native GetUnitMoveSpeed    takes unit whichUnit returns real
constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real

Сейчас нативок больше чем есть по ссылке, но у меня нет установленного варкрафта, чтобы вытянуть common.j актуальный.

Немного ошибся, не метод сброса в дефолт, а метод узнать её дефолтное значение.

Что такое нативка?
Предопределённый в API игры метод, "нативная функция".
28
Я уже делал подобное, тоже играл в донт старв, вариковскими функциями изменять скорость передвижения попросту нельзя, оно такое кривое шо жуть, надо выдавать абилку ботинок. Периодическим таймером выбираем всех юнитов в группу при условии что они находятся на почве и не имеют абилку ускорения, выдаём им ускорение. Другим действием выбираем всех юнитов в этой группе при условии что они находятся не на почве и удаляем абилку
9
Clamp:
А где вот это найти в редакторе?
native          SetUnitMoveSpeed    takes unit whichUnit, real newSpeed returns nothing
constant native GetUnitMoveSpeed    takes unit whichUnit returns real
constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real

Сейчас нативок больше чем есть по ссылке, но у меня нет установленного варкрафта, чтобы вытянуть common.j актуальный.

Немного ошибся, не метод сброса в дефолт, а метод узнать её дефолтное значение.
А можно как-то всё это на ГУИ переделать? [я полный 0 в джассе]

rsfghd:
Я уже делал подобное, тоже играл в донт старв, вариковскими функциями изменять скорость передвижения попросту нельзя, оно такое кривое шо жуть, надо выдавать абилку ботинок. Периодическим таймером выбираем всех юнитов в группу при условии что они находятся на почве и не имеют абилку ускорения, выдаём им ускорение. Другим действием выбираем всех юнитов в этой группе при условии что они находятся не на почве и удаляем абилку
Ну лол, походу ЗДАРОВА СЕКУНДНЫЕ ПЕРИОДИКИ
Этого я и боялся...
28
TechnoViking, тю, ну если хочешь без периодика то ставь области где они должны бегать ускоренно, когда входят выдаёшь абилку, когда выходят - отбираешь
Принятый ответ
9
rsfghd:
TechnoViking, тю, ну если хочешь без периодика то ставь области где они должны бегать ускоренно, когда входят выдаёшь абилку, когда выходят - отбираешь
Вот терь лишь об этом и подумываю. Типа болота какие-нибудь замутить специально +\- прямоугольной формы с маслом или священную поляну с массхастом...
30
вариковскими функциями изменять скорость передвижения попросту нельзя, оно такое кривое шо жуть
Жажду подробностей.

[я полный 0 в джассе]
9
Clamp:
вариковскими функциями изменять скорость передвижения попросту нельзя, оно такое кривое шо жуть
Жажду подробностей.

[я полный 0 в джассе]
А вот и не основа основ, у меня почти все баги фиксятся, и карта не лагает. Особых напрягов не чувствую.
Вон Создай деревню сделал чел на чистом ГУИ, и прекрасный проект, можно сказать, вышел. Выстрелил и ничего.
Для хорошей карты нужна не тонна кода и какие-то оверсложные системы, новые герои, фанфары с мишурой...
Нужна просто Идея и любовь к варику.
30
Разница между "сделать" и "сделать нормально и без сверления зубов через жопу" выражается в разнице между "знаю Jass" и "не хочу знать Jass". Многие, очень многие вещи делаются несопоставимо быстрее кодом в сравнении с убогим визуальным скриптингом. И далеко не все вещи этим визуальным скриптингом можно сделать, попробуй нанесённый урон половить например в общем случае.

Кроме того, многие вещи, которые можно сделать и так и так, кодом делаются существенно оптимальнее, как, например, твоя проблема из этого самого вопроса.
9
Я бы те кстати показал щас кой-какую интересную переписку мою с одним челом, который тут гоняет под ником "ofeerist", дабы показать до чего доводит чванливость и "война гуи и джасса". Но подобной грязью заниматься не буду.
___
Когда чеченцу от русского что-то нужно, и он пытается это сказать ему на ломаном русском, адекватный русский не будет включать дурачка и говорить "мая твая не панимаю, иди учи русский и сдавай ЕГЭ на 100 баллов". Он объяснит как может, - так, чтобы его поняли.
30
Успехов в модмейкинге и профессиональном развитии с таким подходом.

Путать рациональность и понты это надо уметь.
9
Clamp:
попробуй нанесённый урон половить например в общем случае.
Соглы, не выйдет. Или выйдет, но через тобою упомянутое место. Поэтому здесь решение проблемы оченно простое, - не надо создавать спеллов\механик, где нужно ДДС. К тому же, как по мне, это не является важным пунктом хорошей мили-карты. Стандартные спеллы или их малые видоизменения крайне неплохи. К чему изобретать велосипеды? Удивить кого-то? Заслужить похвал? Это мишура всё и фейерверки.

Clamp:
Путать рациональность и понты это надо уметь.
Да не, это я чисто так, про понты, для красного словца. К тебе не относится, ты даже зачин диалога этого начал с "предлагаю", "советую".
Просто я те грю, "как на ГУИ сделать?", а ты гришь "учи весь джасс". Ну лол, тебе же это дело двух секунд.
30
Я вижу твою текущую позицию примерно так:
Люди учатся чтобы исполнять свои задачи, а ты отказывашься от задач потому что для их исполнения нужно учиться.

Никто не говорит учить всё что Jass может, но в твоём случае есть смысл делать именно на нём, чтобы, например, не плодить группы во вред производительности.
9
Clamp:
Я вижу твою текущую позицию примерно так:
Люди учатся чтобы исполнять свои задачи, а ты отказывашься от задач потому что для их исполнения нужно учиться.
Ну философия подъехала, че. Сижу в бочке и счастлив.
Никто не говорит учить всё что Jass может, но в твоём случае есть смысл делать именно на нём, чтобы, например, не плодить группы во вред производительности.
Здесь ещё эстетическая составляющая роляет. Мне ГУИ как родной стал за эти 2 года, а бездушный костлявый худой код (почему-то именно так он у меня в воображении ассоциируется) кажется каким-то недружелюбным.
30
Хз, переход от гуи к коду это просто эволюция, почему нужно их противопоставлять мне не вполне понятно.

Особенно учитывая что под капотом гуи это и есть код, только уродливый.
9
Clamp:
Хз, переход от гуи к коду это просто эволюция, почему нужно их противопоставлять мне не вполне понятно.
Мортышек в своё время никто не спрашивал. Их Зов бытия взял и заставил эволюционировать, стать людьми. А у Человека всегда есть выбор. Оттого почему бы и не поразмыслить, что лучше? Взвесить все за и против.

Clamp:
Особенно учитывая что под капотом гуи это и есть код, только уродливый.
А вот это уже дело вкуса, про уродливый.
30
А вот это уже дело вкуса, про уродливый.
Лол, нет, это дело быстродействия и массового захламления оперативной памяти. Уродливый он в плане решений, которые в нём используются в угоду тому, чтобы можно было мышкой кликать вместо ввода того же самого с клавиатуры. Хотя и в визуальном плане код, который генерируется посредством гуи очень так себе выглядит.

Попробуй любой свой триггер сконвертировать в код в редакторе, увидишь сам.
Кстати я сам ушёл с гуи когда начал мультиборды делать активно, настолько всё проще и приятнее было редактировать напрямую, а не через три слоя выпадающих меню.
9
Clamp:
А вот это уже дело вкуса, про уродливый.
Лол, нет, это дело быстродействия и массового захламления оперативной памяти. Уродливый он в плане решений, которые в нём используются в угоду тому, чтобы можно было мышкой кликать вместо ввода того же самого с клавиатуры. Хотя и в визуальном плане код, который генерируется посредством гуи очень так себе выглядит.

Попробуй любой свой триггер сконвертировать в код в редакторе, увидишь сам.
Кстати я сам ушёл с гуи когда начал мультиборды делать активно, настолько всё проще и приятнее было редактировать напрямую, а не через три слоя выпадающих меню.
Да лан-лан, это я тя подловить хотел, дурачка включив, что не так понял. Мне просто малёха доставляет эта дискуссия гуманитария и технаря про ГУИ и КОД.
Если говорить серьёзно, то базара 0, технически джасс\луа\etc... на порядки совершеннее, - глянуть только на те чудеса доты, что драколич завёз. Но, мб это у меня такая шиза в голове, что вот ну НЕ ХОЧУ никак на джасс. Не из-за лени, я не такой. Да чё там лень, мне уже предлагал один умный чел полностью карту перепилить, на джасс вроде. Чтобы я тупо на нём как гномик на алхимике сидел, и мы вместе скакали бы под синим заревом варкрафта. Но я отказался, потому что хочу сам + хочу на ГУИ всё делать. Слишком уж понравилось. И я даже попуститься готов люто вычурными механиками, которые сделали бы мне карту
как-то посочнее что ли не знаю, ради вот этого чувства приятного от составления конструкций на ГУИ, ведения своей БД в экселе\ворде и жирнющего диздока.
1 пункт от Clamp: 2.2 (троллинг) Не оценил.
28
Жажду подробностей.
отнимал 100 скорости передвижения у юнита, ускорял его или замедлял, а потом возвращал 100 скорости, в итоге вышла не та, которая должна была быть

через ботинок всё норм было
33
Какие же вы слабые все со своим джасем, просто инвалиды, как ещё назвать чтобы не оскорбить, делаете карту без РО, без сапогов без абилок без даммикастом и прекрасно меняете скорость передвижения кодом в любой. Вы снова рофлите игнорируете меня походу
Кидаю ссылку на последних пеонов, где полностью кастомная система движения соответствующая анимации, то бишь унит движется со скоростью от 10 до 1500, и на 1500 быстро перебирает ногами, и всё это сделано через
SetUnitMoveSpeed
GetUnitMoveSpeed
Вы берёте за эталон древнюю херню, и древний язык jass, и городите тонну костылей - это и есть новороченная сложная система с тонной свистоперделок и и ненужной мишурой.
Всё делает 1 строчкой, без аур, без ботинков, без даммиков, без областей.
Просто трясёт от вашей этой закостенелости, ух как я зол. Одни выпали из варкрафта на 5 лет и суют наработки 7 летней давности, Другие сидят в редакторе 2003 года и выдают механики тех годов за что-то новое.
Бесите
9
Clamp:
Что такое нативка?
Предопределённый в API игры метод, "нативная функция".
А я так понимаю, мне в силу моего слабого знания кодов толка мало будет оттого, если ты подробно пояснишь, что такое нативная функция? А то я погулил, там чёт только про приложения какие-то телефонистические. Мрак.
Хотя, справедливости ради, у локалплейера получилось объяснить мне, что такое поток. Так что я не так уж и безнадёжен.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.