Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.02.2010, 18:57   #51
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Если я введу магию, что будет надеюсь скоро, то атакующей магии будет 3 типа - одиночная (атакует один раз), что-то вроде горения (отнимает ХП за определенное время), и АОЕ (т.е. действующая по площади) - вот с ней-то у меня и проблемы. Если предположим магия покрывает сектор 3х3 клетки то проверять каждого моба нужно будет 9 раз, а если 5х5 то 25 раз, а это уже много.

P.S. Моб передвигает рандомом (выбирается 1 из 4 направлений)
Ckomoroh вне форума Ответить с цитированием
Старый 08.02.2010, 19:16   #52
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от Ckomoroh Посмотреть сообщение
Если я введу магию, что будет надеюсь скоро, то атакующей магии будет 3 типа - одиночная (атакует один раз), что-то вроде горения (отнимает ХП за определенное время), и АОЕ (т.е. действующая по площади) - вот с ней-то у меня и проблемы. Если предположим магия покрывает сектор 3х3 клетки то проверять каждого моба нужно будет 9 раз, а если 5х5 то 25 раз, а это уже много.

P.S. Моб передвигает рандомом (выбирается 1 из 4 направлений)
Сектор имеет начальную и конечную точку на карте, достаточно один раз пройти по списку юнитов и проверить попадание его координат в диапазон.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 09.02.2010, 12:36   #53
apromix
PHP, Delphi
Форумчанин
 
Аватар для apromix
 
Регистрация: 07.05.2008
Сообщений: 388
По умолчанию

А если в задуме будет "горение" на площади - то это уже будет Армагеддон для монстров и много придется обрабатывать, в зависимости от площади! Если такое не задумывалось, то нечего беспокоиться. Один раз пальнул по площади, быстро обработал повреждения, игра не должна тормозить на этом. Я бы оптимизацией тяжелых мест движка занимался потом.

Интересный задум и реализация Исходники пока не нашел
Мыши плакали, кололись, но продолжали жрать кактус...
мои проекты
apromix вне форума Ответить с цитированием
Старый 11.02.2010, 21:18   #54
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
Восклицание Версия 4 (с квестом на убитие моба). Исходник 1 версии.

Итак, закончил делать систему квестов. Выкладываю 4 версию.

Также выкладываю исходник 1 версии.
Вложения
Тип файла: rar 1.rar (3.06 Мб, 27 просмотров)
Тип файла: rar хождение по миру 4.rar (2.23 Мб, 26 просмотров)

Последний раз редактировалось Ckomoroh; 11.02.2010 в 22:04.
Ckomoroh вне форума Ответить с цитированием
Старый 11.02.2010, 21:43   #55
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

После взятия квеста на одну змею перестает реагировать на Enter и Esc. А при попытке взять квест на годзиллу вообще выдает ошибку Access violation. После этого Esc и Enter также не работают. Периодически монстры проходят через друг друга и главного героя (равно как и он через них).
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 11.02.2010, 22:10   #56
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

Да, ошибка есть. Это происходило из-за того, что не было выделено название квеста в listbox. Исправил и перезалил (пост 54).

Не реагирует на Enter и Esc, т.к. они все еще записаны в процедуре FormKeyDown. Чтобы клавиши заработали, по нажимайте на кнопки меню (персонаж, рюкзак, квесты).

С наездом монстров друг на друга еще не решил проблему т.к. не знаю как ее устранить. Дело в том, что при движении монстра перерисовываются только 2 клетки (куда он движется, откуда вышел), а при наезжании на игрока или на другого моба, он просто перерисовывает их сверху текстурами =(
Ckomoroh вне форума Ответить с цитированием
Старый 11.02.2010, 22:58   #57
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от apromix Посмотреть сообщение
А если в задуме будет "горение" на площади - то это уже будет Армагеддон для монстров и много придется обрабатывать, в зависимости от площади! Если такое не задумывалось, то нечего беспокоиться. Один раз пальнул по площади, быстро обработал повреждения, игра не должна тормозить на этом. Я бы оптимизацией тяжелых мест движка занимался потом.
Это и есть:
Цитата:
Сообщение от Beermonza
Сектор имеет начальную и конечную точку на карте, достаточно один раз пройти по списку юнитов и проверить попадание его координат в диапазон
Если действие однократное, то проверка пройдет один раз, если действие на время, по цикл будет проверять сектор карты столько времени, сколько нужно, ...причем по таймеру, это много ресурсов не отбирает. Привязывается все это к игровому юниту, это у него если флажок на действие магии, запись кода магии, и счетчик времени. А урон будет считаться по данным банка магии по ее коду у юнита, аналогично и анимация из банка текстур по коду магии.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 12.02.2010, 07:10   #58
Valei
 
Регистрация: 06.03.2009
Сообщений: 7
По умолчанию

А если вынести бой на отдельную форму? Что то типо как в дискиплесс 2.
Valei вне форума Ответить с цитированием
Старый 12.02.2010, 11:29   #59
apromix
PHP, Delphi
Форумчанин
 
Аватар для apromix
 
Регистрация: 07.05.2008
Сообщений: 388
По умолчанию

В играх такого плана удобнее сражаться с монстрами, если не жать постоянно Enter, а чтобы удар происходил, когда ГГ пытается занять клетку врага, то есть стрелочками, например, если враг справа, жмем стрелку вправо и или ударяем врага, или промахиваемся
Мыши плакали, кололись, но продолжали жрать кактус...
мои проекты
apromix вне форума Ответить с цитированием
Старый 12.02.2010, 13:58   #60
Ckomoroh
Я еще только учусь
Форумчанин
 
Аватар для Ckomoroh
 
Регистрация: 24.10.2009
Сообщений: 125
По умолчанию

apromix, а если игрок просто быстро перемещался, а моб не вовремя перешел путь, то тогда игрок автоматом атакует моба. Это нехорошо, лучше использовать отдельную клавишу.

Теперь вопрос. Как сделать преследование игрока мобом?
Пытался сделать это уже в игре, только способ странный был - если моб атакован игроком и игрок пытается убежать, то моб запоминает путь игрока и идет за ним. Как писалось выше этот способ не оправдал себя.
Теперь думаю о 2-ух других способах:
1) С помощью алгоритма поиска пути (волнового). Но его я не понял как написать, или как подключить к программе unit с алгоритмом.
2) Если моб атакован, то проверяем, если Х игрока меньше Х моба, то идем влево, если больше вправо. Если Y игрока меньше Y моба, то идем вверх, если больше то вниз. Но тогда моб будет перемещаться не лесенкой, а сначала сравняет координаты, например Х, а только потом поедет вверх или вниз. Если же не делать так, то моб будет перемещаться наискосок, а этого в игре быть не должно.
Чтобы исправить это нужно маркер чередования (маркер 1 - изменяем X, делаем маркер 0. Маркер 0 - изменяем Y, делаем маркер 1). Иначе не знаю как сделать.
Ckomoroh вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание 2d RPG игры VTR Gamedev - cоздание игр: Unity, OpenGL, DirectX 29 19.05.2009 16:34
RPG на Дельфи Juffin Gamedev - cоздание игр: Unity, OpenGL, DirectX 10 10.04.2009 21:37
Создание текстового RPG KORN Софт 3 15.07.2008 09:21
3D-RPG Кронос Gamedev - cоздание игр: Unity, OpenGL, DirectX 25 12.05.2007 11:21