Лучшие проекты:

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Сеня  
Урок №8 - Игровые системы (Часть 1)
СТАРЫЙ_ДЕФОНГДата: Четверг, 13.06.2013, 02:24 | Сообщение # 1
New Generation
Группа: Заблокированные
Награды: 13
Репутация: 2
Статус: Offline
загрузка наград ...
Автор - Defong
Тема: 8. Игровые системы

Цитата
1. Что такое система ?
2. Виды систем
3. Как создать систему ?


1. Что такое система ?

Система — множество элементов, находящихся в отношениях и связях друг с другом, которое образует определённую целостность, единство!

Создание системы в редакторе "Warcraft 3" - это множество событий, действий и условий предназначенных для выполнения определенных требований для реализации ваших идей!
Так-же вам нужно понимать что система это не какая нибудь математическая формула по которой вас заставляют работать... Это в первую очередь ваша идея, система составляется благодаря логике и воображению. Другими словами - как хотите так и делайте!
Хочу сразу подметить, что создание мощных рабочих систем не такое уж и легкое дело! Чаще всего в неопытных руках сложные системы могут ломаться при стаке с какими нибудь способностями, которые двигают юнита\ставят его в паузу\убивают\заменяют и.т.п.
Но если всё делать правильно - всё получиться! - (Правило программистов №1 > Работает ? - Не трогай! 
Виды систем

В основном системы представляют из себя:
1. Арены \ Дуэли
2. Нестандартный выбор персонажей
3. Различные ивенты \ Квесты
4. ИИ - искусственный интеллект
5. Условия победы\поражения
6. Воскрешение боевых единиц
- И многое другое!

1) Арены за основу делают стандартным образом:
- Создают зону в которой собственное будет происходить сражение.
- Устанавливают контрольные "области" - центр арены, позиции героев, границы либо определенные участки арены.
- Пауза всех юнитов + выбрать случайных героев и двинуть их на арену
- После чего Включить триггеры отвечающие за условия победы\поражения
- Вернуть всё как было )

Обратите внимание что все эти пункты можно разделить на логические элементы:
- Месность
- Соперники
- Победа

Вот с такой мысли должна зарождаться система!

3. Как создать систему ?

Давайте всетаки попробуем создать свою систему "Арены"
- Вообщем я не буду париться по поводу ландшафта ) так-что создал за основу такой макет.

Между прочим если вам тоже лень париться можете взять этот макет - СКАЧАТЬ

Начнем!

Первое что нам сейчас нужно это "Области" - Скажем так, точки где будут появляться герои и.т.д
Открываем панель областей



И начинаем лепить области:
1) Область всей арены
2) Позиция героя для Клана 1
3) Позиция героя для Клана 2



Любая арена начинается с таймера
- Заходим в триггеры
- Если есть удаляем + создаем свою инициализацию
- Создаем новую категорию "Arena"
- Создаем новый триггер (и делаем всё как на скринах)
Для тех кто не знает как ставить таймер, вот скрин
http://cs322619.vk.me/v322619435/13f4/vLQahtvg-gg.jpg

После этого - Установите переменную этого таймера как последний созданный таймер



Теперь для красоты создадим рамку для таймера

http://cs322619.vk.me/v322619435/1404/PjAavhDQ-gU.jpg

Также само запоминаем его переменной (Тип переменной - Окно таймера)





Первый триггер готов!

Далее нужно отследить срок истечения запущенного таймера

- Создаем новый триггер (как всегда делаем всё как на скрине)

Событие:



Действия:

1) Отряд - Выбрать каждого юнита в зоне игровой карты и сделать множ.
цыкл:
- Добавляем функцию
- Добавляем условия в эту функцию
> http://cs322619.vk.me/v322619435/1422/wWHM8vRgh5Y.jpg
- Добавляем в "ИЛИ" следующие условия
> http://cs322619.vk.me/v322619435/142b/HVUSKkCpUSM.jpg
- Создаем еще одну функцию + в ней опять "ИЛИ" и добавляем туда игроков с клана 2 (Выглядит это примерно так:)
> http://cs322619.vk.me/v322619435/1434/0fii6AYGdXs.jpg
- Между прочим советую еще поставить логическоре сровнение на Героя
> http://cs322619.vk.me/v322619435/143d/7kDj3rPW-FI.jpg
- Теперь создаем две новых переменных и в первой функции, в "То действие" добавляем "Новое действие"
> http://cs322619.vk.me/v322619435/1446/HKB5bH8kIec.jpg
> http://cs322619.vk.me/v322619435/144f/o2Jl985jvIA.jpg
Тоже самое проделайте для второй функции (только там добавляйте игроков в Pack_2)

Извеняюсь! Небольшой баг =) лень было исправлять предыдущие скрины так-что вот!
http://cs322619.vk.me/v322619435/148f/Dod6kky0b0A.jpg

Создаем переменные боевой единицы - Hero (+массив)
- Установить переменную Hero[1] - Случайный юнит из Pack_1
- Установить переменную Hero[2] - Случайный юнит из Pack_2



Далее:
- Создаем переменную точки (Area + массив) - Если у вас такая есть то используйте ее!
- Установить переменную Area[1] - Позиция Hero[1]
- Установить переменную Area[2] - Позиция Hero[2]





Между прочим еще нужно настроить карту под наш вариант арены
> http://cs322619.vk.me/v322619435/147d/TOH_a6_HfNQ.jpg
> http://cs322619.vk.me/v322619435/1486/EfxN6fFDFZ0.jpg

Далее делаем ряд таких вот действий
> http://cs322619.vk.me/v322619435/1498/ledb_kpdOOc.jpg

Примерно вот так вот нужно заполнить новый триггер
> http://cs322619.vk.me/v322619435/14a1/pyMXLdtAYbQ.jpg

Если у вас что-то не получилось вы можете скачать и посмотреть мой вариант этой наработки!
Хочу подметить что всегда есть баги которые не сразу заметны!
Вот к примеру я завтыкал с условием на проверку "жив ли тот герой которого отбирает на дуэль" в итоге был баг - на арену кинуло труп ^^
Вообщем чтоб вы понимали это как история с пивом )) сколько не бери а второй раз в магазин идти прийдется...
>>> СКАЧАТЬ <<<

Вообщем теперь у вас есть хоть какой то опыт в создание систем
В следующих уроках буду учить вас чему-то посложнее


На этом восьмой урок заканчивается.
Если у вас остались вопросы - оставляйте их в комментариях!
Спасибо за внимание! Надеюсь было понятно...


И еще, отписывайтесь кому помогло кому нет ) Ато такое ощущение что сам для себя пишу это всё


У МЕНЯ НОВЫЙ АККАУНТ
http://narutowar.ru/index/8-4328
 
KuroДата: Четверг, 13.06.2013, 09:40 | Сообщение # 2
Группа: Заблокированные
Награды: 0
Репутация: 17
Статус: Offline
загрузка наград ...
Defong, Как создать арену для чайников XD
Узнал немного нового Спасибо
 
jimboДата: Четверг, 13.06.2013, 15:17 | Сообщение # 3
Группа: Заблокированные
Сообщений: 4
Награды: 0
Репутация: -6
Статус: Offline
загрузка наград ...
ну наконец-то спасибо большое, помог! Продолжай делать уроки дальше )))
 
NoitoraKoДата: Пятница, 14.06.2013, 12:55 | Сообщение # 4
Группа: Пользователи
Сообщений: 42
Награды: 0
Репутация: 0
Статус: Offline
загрузка наград ...
Спасибо большое!)
И если не трудно всегда скидывай карту с уроком, а то бывает не до понял чего то!)


Illusion - is the first of all pleasures...
 
СТАРЫЙ_ДЕФОНГДата: Воскресенье, 16.06.2013, 02:22 | Сообщение # 5
New Generation
Группа: Заблокированные
Награды: 13
Репутация: 2
Статус: Offline
загрузка наград ...
NoitoraKo, Карты были почти во всех уроках (но из за инцидента с моим сайтом - файлы слетели)

У МЕНЯ НОВЫЙ АККАУНТ
http://narutowar.ru/index/8-4328
 
GoLdДата: Пятница, 21.06.2013, 16:10 | Сообщение # 6
Легенда сего мира
Группа: Проверенные
Сообщений: 161
Награды: 3
Репутация: 69
Статус: Offline
загрузка наград ...
Ооо, спасибо огромное Defong!
Давно уже искал как делать этот таймер, сам заколебался его делать^^
Продолжай в том же духе!)


2013
Если есть вопросы - обращайтесь!


Сообщение отредактировал GoLd - Пятница, 21.06.2013, 16:11
 
DarkDaroДата: Вторник, 13.08.2013, 17:38 | Сообщение # 7
BvO Creator
Группа: Творец
Сообщений: 87
Награды: 9
Репутация: 89
Статус: Offline
загрузка наград ...
А как сделать дуель еще на время , а то может затянуться иногда ?
 
DefongДата: Вторник, 13.08.2013, 18:00 | Сообщение # 8
Группа: Элита
Сообщений: 213
Награды: 9
Репутация: 791
Статус: Offline
загрузка наград ...
daro, Создаешь еще один таймер, допустим на минуту
и когда этот таймер сработает - определи сколько осталось врагов и у кого больше ХП ну и выдай победу


 
_ИТАЧИ_Дата: Понедельник, 19.08.2013, 12:09 | Сообщение # 9
Ленивая попа
Группа: Старший модератор
Сообщений: 829
Награды: 26
Репутация: 302
Статус: Offline
загрузка наград ...
класс

Нажмите на картинку, если хотите увидеть мой проект

 
Gin_-_IchimaruДата: Понедельник, 19.08.2013, 16:16 | Сообщение # 10
Тёмный Инквизитор
Группа: Неполный модератор
Сообщений: 1007
Награды: 15
Репутация: 194
Статус: Offline
загрузка наград ...
Для себя нового не чего не узнал , в принцепе читал не весь урок но суть понял ... А чтобы не тпхало труп ставим условие на жив ли герой . И если у вас карта арена или еще какая-либо , и в ней есть данная система то при выборе персонажа кидаем его в группу например Duel_Group_Team_One и Duel_Group_Team_Two и когда таймер истекает выберай случайного из 1-ой команды и второй и дальше они махач пока 1 не умрет а если 1 изначально мертв то проводим магию по воскрешению и игра идет дальше ....


 
UnknownДата: Вторник, 20.08.2013, 02:22 | Сообщение # 11
Группа: Проверенные
Сообщений: 94
Награды: 2
Репутация: 8
Статус: Offline
загрузка наград ...
После того как я возвращаюсь с арены, шмотка в магазине пропадает, в моем случаи книга знаний, единственный предмет магазина -_-

Сообщение отредактировал Unknown - Вторник, 20.08.2013, 02:42
 
DefongДата: Вторник, 20.08.2013, 03:06 | Сообщение # 12
Группа: Элита
Сообщений: 213
Награды: 9
Репутация: 791
Статус: Offline
загрузка наград ...
Unknown, паузу со всех юнитов снять надо

 
UnknownДата: Вторник, 20.08.2013, 03:49 | Сообщение # 13
Группа: Проверенные
Сообщений: 94
Награды: 2
Репутация: 8
Статус: Offline
загрузка наград ...
Оказывается я уже всё исправил, а потом сюда написал -_-
Даже не понял этого) Ладно забудем про этот случай)
Кстати в старых уроках мы делали катун так? У меня с ним что то нетак -_- Вроде бы работает и убивает всех на своем пути, но у меня такой баг получился, ОДИН юнит из штук 50, выжил и сколько бы я его не бил он не умирал. Как будто по воздуху я бил ...
 
DefongДата: Вторник, 20.08.2013, 06:08 | Сообщение # 14
Группа: Элита
Сообщений: 213
Награды: 9
Репутация: 791
Статус: Offline
загрузка наград ...
Unknown, xD мне аж интересно как ты это сделал 
Скинь наработку свою, я посмотрю в чем ошибка


 
UnknownДата: Вторник, 20.08.2013, 11:28 | Сообщение # 15
Группа: Проверенные
Сообщений: 94
Награды: 2
Репутация: 8
Статус: Offline
загрузка наград ...
Кстати, из 50 воинов, 4 стрелки, остальные воры с топором. Эти стрелки и остаются. Зайдешь в скайп скину))

Я вроде понял... Скил работает на каждого 1 раз если я ПРАВИЛЬНО понял. Т.е. воры с 1 скила умирают, а стрелки нет, 1 удар сносит 500 и остается 20 хп, эти 20 хп не уходят потому что скил не пашет второй раз на них.


Сообщение отредактировал Unknown - Вторник, 20.08.2013, 11:42
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: