Как построить БАЗУ в Warcraft 3 Reforged — Билд — Алгоритм строительства в Warcraft 3
Я постараюсь научить вас основам логики строительства. Вы должны учитывать слабые стороны своей расы и сильные стороны противника. Если вы знаете, что существует высокая вероятность агрессии противника, убедитесь, что вы строите как можно более оборонительно и компактно — это не позволит противнику бегать по вашей базе, как у себя дома. Кроме того, массовое строительство защитит вашу экономику. Но вы всегда должны думать о том, какие еще здания вы будете ставить позже, а также следить за тем, чтобы случайно не запереть свою армию или рабочих.
Источник: plame.Перейти к
Система строительства стен
Я увидел этот трюк на xgm и захотел использовать его в своей карте. Я захожу в редактор, а там куча глобальных переменных и два триггера gui. Решил, что оно того не стоит, но идея понравилась, поэтому я реализовал ту же систему, но на cjass и без глобальных переменных.
Как СТРОИТЬ БАЗУ в Warcraft 3 Reforged — Билд строительства — Алгоритм постройки зданий в варкрафт 3
Скопировать в буфер обмена
function Trig_WallSystem_Actions takes nothing returns nothing integer basis = ‘h000’ // Угловая часть integer horiz = ‘h001’ // Горизонтальная integer vertic = ‘h002’ // Вертикальная // Я буду рад, если вы используете эту систему // ofeerjst production if GetUnitTypeId(GetConstructedStructure()) == basis < group g = CreateGroup() unit u = null real x = GetUnitX(GetConstructedStructure()) real y = GetUnitY(GetConstructedStructure()) GroupEnumUnitsInRangeOfLoc(g, Location(x+150,y), 30, null) u = FirstOfGroup(g) if u != null< if GetUnitTypeId(u) == basis or GetUnitTypeId(u) == horiz or GetUnitTypeId(u) == vertic< x = GetUnitX(u) y = GetUnitY(u) DestroyGroup(g) g = CreateGroup() GroupEnumUnitsInRangeOfLoc(g, Location(x+150,y), 30, null) if GetUnitTypeId(FirstOfGroup(g)) == basis or GetUnitTypeId(FirstOfGroup(g)) == horiz or GetUnitTypeId(FirstOfGroup(g)) == vertic< RemoveUnit(u) CreateUnit(GetTriggerPlayer(),horiz,GetUnitX(u),GetUnitY(u),GetUnitFacing(u)) >> > еще < GroupEnumUnitsInRangeOfLoc(g, Location(x-150,y), 30, null) u = FirstOfGroup(g) if u != null< if GetUnitTypeId(u) == basis or GetUnitTypeId(u) == horiz or GetUnitTypeId(u) == vertic< x = GetUnitX(u) y = GetUnitY(u) DestroyGroup(g) g = CreateGroup() GroupEnumUnitsInRangeOfLoc(g, Location(x-150,y), 30, null) if GetUnitTypeId(FirstOfGroup(g)) == basis or GetUnitTypeId(FirstOfGroup(g)) == horiz or GetUnitTypeId(FirstOfGroup(g)) == vertic< RemoveUnit(u) CreateUnit(GetTriggerPlayer(),horiz,GetUnitX(u),GetUnitY(u),GetUnitFacing(u)) >> > else < GroupEnumUnitsInRangeOfLoc(g, Location(x,y-150), 30, null) u = FirstOfGroup(g) if u != null< if GetUnitTypeId(u) == basis or GetUnitTypeId(u) == horiz or GetUnitTypeId(u) == vertic< x = GetUnitX(u) y = GetUnitY(u) DestroyGroup(g) g = CreateGroup() GroupEnumUnitsInRangeOfLoc(g, Location(x,y-150), 30, null) if GetUnitTypeId(FirstOfGroup(g)) == basis or GetUnitTypeId(FirstOfGroup(g)) == horiz or GetUnitTypeId(FirstOfGroup(g)) == vertic< RemoveUnit(u) CreateUnit(GetTriggerPlayer(),vertic,GetUnitX(u),GetUnitY(u),GetUnitFacing(u)) >> > else < GroupEnumUnitsInRangeOfLoc(g, Location(x,y+150), 30, null) u = FirstOfGroup(g) if u != null< if GetUnitTypeId(u) == basis or GetUnitTypeId(u) == horiz or GetUnitTypeId(u) == vertic< x = GetUnitX(u) y = GetUnitY(u) DestroyGroup(g) g = CreateGroup() GroupEnumUnitsInRangeOfLoc(g, Location(x,y+150), 30, null) if GetUnitTypeId(FirstOfGroup(g)) == basis or GetUnitTypeId(FirstOfGroup(g)) == horiz or GetUnitTypeId(FirstOfGroup(g)) == vertic< RemoveUnit(u) CreateUnit(GetTriggerPlayer(),vertic,GetUnitX(u),GetUnitY(u),GetUnitFacing(u)) >> > > > DestroyGroup(g) g = null u = null > endfunction //=========================================================================== function InitTrig_WallSystem takes nothing returns nothing set gg_trg_WallSystem = CreateTrigger( ) call TriggerRegisterAnyUnitEventBJ( gg_trg_WallSystem, EVENT_PLAYER_UNIT_CONSTRUCT_FINISH ) call TriggerAddAction( gg_trg_WallSystem, function Trig_WallSystem_Actions ) endfunction
Для использования в их карте вам нужно настроить всего 3 переменные, см. верхние строки кода
Warcraft 3 стал другим? ФИНАЛ турнира на НОВОМ ПАТЧЕ: Лучшие игроки Европы
Источник: xgm.guru
Варкрафт 3 как сделать стены
награды за скачивание .
Группа: V.I.P.
Сообщения: 609
Статус: Нет на сайте
Приветствую).
Что ж, это наш последний урок в классе » B » Ландшафтного дизайна . Здесь больше не будет уроков, только больше занятий. Все это время я был бок о бок с вами, мы вместе учились устанавливать контраст, делать логичный декор, комбинировать тайлы и декорации Пришло время закончить самый важный раздел в ландшафтном дизайне: город.
Почему самое важное? Вы удивитесь, но именно город труднее всего строить олдскульщикам. Это очень сложно, и не всем (даже учителям) удается показать высший класс. Дело в том, что город изначально требует идеальных пропорций.
Вот стены, вот казармы, вот ратуша, ах черт, куда впихнуть церковь. . Если вы хотите получить оценку 10/10 в классе А, вам нужно все продумать на бумаге . Изначально вам придется сделать выбор. Либо город будет играбельным (т.е. в нем разворачиваются игровые события, сражения, присутствуют шахты и платформы для строительства зданий), либо сделайте его в OldSchoolBlizzardStyle.
Название придумал только что, но оно отлично подходит для нашего класса. Строительство игрового города — это низко, товарищи. Подходит для эпических битв с Пылающим Легионом, когда вокруг бегают гвардейцы, а метеоры врезаются в соседние башни, хаос, разрушения и крики раненых.
Когда город в огне и у вас есть десять минут, чтобы удержать аванпост, то успейте уплыть на корабле, пока вас не сожрали демоны . Для кинематографического жанра такая тема просто сказочна. Город подходит для режима кампании, когда в одной из миссий вы приходите в город, и вдруг начинает происходить то, что было отмечено выше Но город ИМХО не подходит для Dota-баталий, одиночных сражений или чего-то подобного. В любом случае, этого достаточно, чтобы отвлечься. Но в любом случае, всегда ищите именно оригинальность решений в городе. Иначе, извините, смерть вашим проектам.
Первое, на что я хотел бы обратить ваше внимание, это городские стены. В принципе, обычная каменная стена — визитная карточка любого города. Несмотря на то, что это не является частью мелкого шрифта (да, он мелкий), я акцентирую на этом внимание.
Примечание. Без лишних деталей. Патроны, фритюрницы, стандартный выпуск. Если вы делаете проект и на вашей карте должен быть элемент сражений на городской стене, а вам не хватает красочности, импорт сделает все остальное. Однако мой вам совет: не морочьте голову себе и людям.
Не всегда даже качественный импорт действительно полезен в структуре и декоре городских стен. Стена есть стена, не больше, не меньше. Привыкайте. Не заставляйте пехотинцев и лучников спотыкаться об импортный декор . Лучше просто, но со вкусом .
Кстати, вы заметили новый эффект? Шипы. Еще один пример того, как человек старой закалки выходил из ситуации самыми простыми методами. Действительно, не кажется ли вам что-нибудь на экране новым или необычным?? Декорации никуда не делись, создать их можно через «Object Editor» —> «Scenery» —> «Model» —> «Ability» —> «Spikes — target».
Конечно, вы можете импортировать что-нибудь «покруче». Я просто показываю вам простой способ получить то, что вы хотите, не прилагая слишком много усилий.
Кстати, Близзарды тоже закаляются олдскульщиками и тоже юзали подобный эффект))
В заключение несколько советов. Поскольку я уже говорил, что стена — это лицо города, помните, что чем больше и красочнее ваша стена, тем больше должен быть ваш город. И соответственно, если вы делаете проект, в котором вам нужно изобразить город — обязательно помните, что помимо внешних стен, есть и внутренние, город может быть разделен на уровни и кварталы.
Вот здесь живут нищие, а здесь простые мещане, а здесь у нас будет рынок и злые торгаши. Думаю, вы уже начали понимать, почему город — это действительно самый сложный раздел Landscaping. А теперь о воротах.
$IMAGE2
Ворота. Существует невероятное количество вариаций того, как вы можете их украсить. Вы можете поставить по бокам башни, а центр ворот сделать граненым в виде арки (как показано на скриншоте). Вы можете сделать разрушенные стены и ворота, забаррикадированные досками, обломками, ящиками.
Вы можете поставить ворота и сделать вместо арок мост (изменив размер моста), перекрыть их столбами, поставить двойные ворота или сделать крышу ворот, а можете сделать все это вместе, и многое, многое другое. Все зависит от вашего воображения.
Ворота занимают 10-15 минут. время, если вы заранее знаете, чего хотите. Если вы хотите получить результат как на картинке, то вот инструкция:
1. Набросайте общий план, ворота должны плавно переходить в скалы, а не застревать там на полпути.
2. Вооружитесь некоторыми пользовательскими украшениями. Вы работаете с масштабом, цветом и текстурой дорожек. Совет: текстуры пути лучше удалять сразу. Вы можете размещать предметы где угодно, даже на рогах. Лучше всего работать с клонированными декорациями: кликните по любой декорации, затем комбинация Ctrl+C Ctrl+V. А в нестандартных объектах сразу появится клон пейзажа,
3. Вам придется работать с PageUp — PageDown, если вы хотите выложить баннеры и флаги гладко и равномерно.
4. Распределяйте все равномерно, с логическим расчетом. Статуи не гнездятся на вершинах скал. И ворота не висят в воздухе (не дай Бог).
Я нарисовал тему, учитывая, что это город с неким храмом жрецов, или башней магов, которые могли возвести такую защиту. Так что не удивляйтесь, если увидите растения, растущие прямо на камнях. В этом и заключается магия мира Warcraft. Но и не облажайтесь, если город обычный, лучше уберите эти предметы роскоши.
Если кому-то трудно ориентироваться по сторонам, вот скриншот выше:
Кстати, вы заметили, что я впервые использую импорт (башни) в наших учебниках? Надеюсь, олдскульщики, приготовившиеся к торжественному закидыванию помидорами, простят меня, ведь иногда даже импорт подходит к теме больше, чем стандартные модели (я поменял декорацию башни альянса, у которой есть баг с изменением анимации на импортированную).
. Но теперь пришло время войти в наш город.

Колодец. Можно бесконечно долго говорить о возможном декоре города, его составляющих и идеальном балансе земли в целом. Но это фантазия лендера. Я просто хотел показать несколько аспектов того, как может и должен выглядеть город. Я не призываю вас к определенному стилю, но я показываю, как вы должны уметь представлять общую картину.
Конечно, я не сомневаюсь, что все вы обладаете талантом, способностями, желанием и можете сделать городские пейзажи гораздо более впечатляющими, чем здесь. Это лучший способ, если вы проходите кампанию и одна из миссий — пройти через город, как этот. Обратите внимание и на следующий фактор. Дома не стоят «случайно» и не громоздятся друг на друга. Помните: все начинается медленно.
Только в самом центре города вы можете вплотную заняться строительством домов, и даже тогда могут быть исключения. Теперь пара советов.
На будущее предлагаю следующий метод. Удалите текстуры дорожек из декораций домов, чтобы вам было свободнее и удобнее строить. Тогда вы уже сможете применять такие простые вещи, как «Блокираторы пути (земля)». Поверьте, в одном месте гораздо проще работать без дорожек и меньше хлопот))./
Активно использовать здания типа «Здание» (так оно называется)! Без них ваши дома приобретут жалкий вид одноэтажных коттеджей. Поэкспериментируйте с масштабом (вместо 0.8 — 1.2 попытка 1.4 — 1.85) таких сооружений. Этот тип здания поможет вам во многом.
Не применяйте городские деревья! Они тонкие. уродливые, на них тошно смотреть, и мало кто из игроков поблагодарит вас за это. Экспериментируйте с другими деревьями. заменять ими файлы текстур, увеличивать их, менять цвет (но будьте осторожны!) и т.д.
У каждого дома должен быть передний двор! Не забудьте поставить живую изгородь, скамейки, клумбы и горшки.
У каждого дома есть фундамент! Перестаньте ставить дома на траве, выкуйте мощеную или каменную дорогу, но под основанием дома обязательно должна быть каменная кладка. Покажите игроку, что ваши дома не просто выросли из воздуха.
Вы можете сделать некоторые дома отапливаемыми. Как это сделать? Зайдите в спецэффекты, выберите «Источник дыма» и щелкните пару раз в одном и том же месте. Затем возьмите дым и поднесите его близко к трубе. И поднимать с помощью PageUp.
Должна выглядеть примерно так:
Вы также можете (и должны!) заимствовать здания из зданий альянса. Вот несколько картинок, чтобы сориентировать вас:

кузница и казармы.

Небольшой ипподром.

Городская аллея.
. Ваше воображение зависит только от вас.
Вот, в принципе, и все, что я хотел вам показать. Вот черт, я упомянул, что в городе есть храм!
Удалено ! Пишите сюда, если не понятно, с удовольствием помогу! С вами был Антарик, не забывайте)
Удачи!)
. Отец. Вот и все?!
— Теперь да. Короли не правят вечно, сын мой. Присоединяйтесь к армии печников) Поддерживайте баланс
награды за скачивание .
Группа: Пользователи
Сообщения: 77
Статус: Нет на сайте
Загрузка наград .
Группа: V.I.P.
Сообщения: 609
Статус: Нет на сайте
D:D, Эта трава называется «Тростник», она находится в Редакторе объектов —> Декорации —> Окружение —> Тростник.» Из этой травы была удалена одна вариация (то есть вместо 4 стало 3), а цветовая гамма была изменена на зеленую. Деталь:
Источник: wc3-maps.Синхронизация