Сейчас 00:55:57 Воскресенье, 16 июня, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
ИИ для стандартных рас
аркейДата: Понедельник, 23 Июля 2012, 15:43:21 | Сообщение # 1
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Нужно ИИ для стандартных рас ,только сделаное в нестандартном виде тоесть чтоб можно было отредактировать любой нужный мне обьект
И ище нужно чтоб ии вибирал героя для тренеривки из 5 внизу приведен пример 1 героя
//trigger 1
С:юнит завершает строительство
У:такого то здания = алтарь
Д://ai_elf тип обьекта масив
set ai_elf 1 = hero 1
set ai_elf 2 = hero 2
set ai_elf 3 = hero 3
set ai_elf 4 = hero 4
set ai_elf 5 = hero 5
order (triggering unit) to train to ai_elf (random number 1 - 5)
turn on trigger 2
turn on this trigger
//trigger 2
С:боевая еденица завершает строительство
у:например древо долголетия
если производимая пища -5 (больше или равно) используемая пища
если етот игрок имеет например героя (hero 4) (куча разных условий для следуэщего случайного героя)
Д:
set ai_elf 1 = hero 1
set ai_elf 2 = hero 2
set ai_elf 3 = hero 3
set ai_elf 4 = hero 5
потом приказиваю алтарю занесенему в переменую строить случайного героя из ai_elf 1-4
вопрос как укуротить код так как нужно для каждого игрока такую системку


 

SirNikolasДата: Понедельник, 23 Июля 2012, 15:48:53 | Сообщение # 2
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Почитай про JASS AI для melee

 

аркейДата: Понедельник, 23 Июля 2012, 16:42:16 | Сообщение # 3
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (SirNikolas)
Почитай про JASS AI для melee

Берем создаем ИИ любое потом впихиваем его в карту на виходе выводим ai код (на примерере рабочий стол)
потом его редактируем через блокнот?




Сообщение отредактировал аркей - Понедельник, 23 Июля 2012, 16:49:09
 

NaturekidДата: Понедельник, 23 Июля 2012, 17:32:57 | Сообщение # 4
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
В начале игры задаем героев расы в переменную
Цикл от1 до кол-ва игроков
Если раса игрока номер игрока= альянс то
set ai_elf [целое(строка(номер игрока) + строка(1))] = hero 1
set ai_elf [целое(строка(номер игрока) + строка(2))] = hero 2
set ai_elf [целое(строка(номер игрока) + строка(3))] = hero 3
set ai_elf [целое(строка(номер игрока) + строка(4))] = hero 4
set ai_elf [целое(строка(номер игрока) + строка(5))] = hero 5
и так для каждой

Делаем периодический триггер(или многократный таймер, кому что)
Цикл от1 до кол-ва игроков
если контроллер - АИ
приказ Б е - приказ случайному юниту типа( илилилили(алтарь тьмы или алтарь королей...))train/upgrade - ai_elf[целое(строка(Integer A) + строка(random number between 1 and 5))]

В конце можно залепить такое для остановки триггера
Цикл от1 до кол-ва игроков
если контроллер - АИ
число героев у игрока не равно максимальное
то Skip remaining actions

turn off this trigger

Собственно проще некуда =)




Сообщение отредактировал Naturekid - Понедельник, 23 Июля 2012, 17:44:37
 

аркейДата: Понедельник, 23 Июля 2012, 21:39:01 | Сообщение # 5
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (Naturekid)
В начале игры задаем героев расы в переменную
Цикл от1 до кол-ва игроков
Если раса игрока номер игрока= альянс то
set ai_elf [целое(строка(номер игрока) + строка(1))] = hero 1
set ai_elf [целое(строка(номер игрока) + строка(2))] = hero 2
set ai_elf [целое(строка(номер игрока) + строка(3))] = hero 3
set ai_elf [целое(строка(номер игрока) + строка(4))] = hero 4
set ai_elf [целое(строка(номер игрока) + строка(5))] = hero 5
и так для каждой

Делаем периодический триггер(или многократный таймер, кому что)
Цикл от1 до кол-ва игроков
если контроллер - АИ
приказ Б е - приказ случайному юниту типа( илилилили(алтарь тьмы или алтарь королей...))train/upgrade - ai_elf[целое(строка(Integer A) + строка(random number between 1 and 5))]

В конце можно залепить такое для остановки триггера
Цикл от1 до кол-ва игроков
если контроллер - АИ
число героев у игрока не равно максимальное
то Skip remaining actions

turn off this trigger

Собственно проще некуда =)

переодические приказ давать строить юнита случайного?для каждой расы?
я мудак <_<


 

NaturekidДата: Понедельник, 23 Июля 2012, 22:09:10 | Сообщение # 6
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Quote (аркей)
я мудак

Сапаю.
ну задай тогда переменные
Quote (Naturekid)
Цикл от1 до кол-ва игроков Если раса игрока номер игрока= альянс то set ai_elf [целое(строка(номер игрока) + строка(1))] = hero 1 set ai_elf [целое(строка(номер игрока) + строка(2))] = hero 2 set ai_elf [целое(строка(номер игрока) + строка(3))] = hero 3 set ai_elf [целое(строка(номер игрока) + строка(4))] = hero 4 set ai_elf [целое(строка(номер игрока) + строка(5))] = hero 5 и так для каждой

и потом делай со своими событиями...
Quote (аркей)
С:юнит завершает строительство У:такого то здания = алтарь

Quote (аркей)
С:боевая еденица завершает строительство у:например древо долголетия

Добавлено (23 Июля 2012, 22:09:10)
---------------------------------------------
аркей, В иной раз я бы задумался над оптимизацией. Но melee карта - не то, где надо экономить на удобстве, отказываясь от "кажждые 30 сек" в пользу "завершает строительство". Тем более мб АИ "не захотел" сразу готовить героя, мб он пару мину потупить хочет а потом с каким=то шансом начать готовку героя?? Дело твоё, не нравится, не используй. Так или иначе задание переменных явно короче будет моим способом...


 

аркейДата: Понедельник, 23 Июля 2012, 22:53:42 | Сообщение # 7
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (SirNikolas)
Почитай про JASS AI для melee

jass очень плохо знаю да и не особо понял как в мапу ипортировать
Quote (Naturekid)
___

у меня так
2)
1-2игрок альянс
3-4игрок орда
5-6игрок нэжить
7-8игрок ночные ельфи
мне нужно только 2 переменых
1)тип обьект масив
2)боевая еденица масив

Добавлено (23 Июля 2012, 22:53:42)
---------------------------------------------
Взял стандартное ИИ вырубил там (постройку героев)
за импортил в карту тригерно запустил при инцилизации
да и еще одно проблема етот герой не будет атаковать врагов (в отряд атакующих он не вступит как первый/второй/третий герой)
ии встанет в ступор
нужно хорошее нестандартноее ии


 

SirNikolasДата: Вторник, 24 Июля 2012, 06:29:42 | Сообщение # 8
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (аркей)
не особо понял, как в мапу ипортировать
Импортируешь по пути scripts\human.ai / scripts\orc.ai / scripts\undead.ai / scripts\elf.ai.


 

аркейДата: Вторник, 24 Июля 2012, 12:08:34 | Сообщение # 9
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (SirNikolas)
Импортируешь по пути scripts\human.ai / scripts\orc.ai / scripts\undead.ai / scripts\elf.ai.

редактирование кода через експорт кода з карты и потом через блокнот редактировать?


 

SirNikolasДата: Вторник, 24 Июля 2012, 13:02:00 | Сообщение # 10
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Нет. Ничего экспортировать не надо. Просто создаешь текстовый документ, пишешь в нем код и импортируешь в карту.

 

аркейДата: Вторник, 24 Июля 2012, 17:50:11 | Сообщение # 11
9 уровень
Группа: Проверенные
Сообщений: 948
Награды: 0
Репутация: 1080
Блокировки:
Quote (SirNikolas)
Нет. Ничего экспортировать не надо. Просто создаешь текстовый документ, пишешь в нем код и импортируешь в карту.

wai формат содержит в себе дании из формата ai нужен для отркрытия аи в редакторе ИИ
ai формат сам код который запускаетца в игре напримерере ето

Добавлено (24 Июля 2012, 17:50:11)
---------------------------------------------
все так?


 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz