Abyss

Закрытые или заброшенные проекты, не состоявшие в Клубе, но имевшие ветку на форуме.

Модератор: Jolly Roger

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Abyss

Сообщение JustHarry » 25 фев 2011, 09:59

Дубль 2.

Разработка опять уткнулась в тупик, из-за большого разрастания кода и отсутствия пресловутого ООП. Поэтому проект плавно переехал на рельсы понравившегося мне Ruby, на котором я и начну его с нуля. Что ж, надеюсь у меня что-нибудь получится.

Good Luck!
Последний раз редактировалось JustHarry 22 мар 2011, 08:46, всего редактировалось 28 раз.

Аватара пользователя
Toth
Сообщения: 327
Зарегистрирован: 11 ноя 2009, 13:36
Откуда: Красноярск

Re: Abyss

Сообщение Toth » 25 фев 2011, 14:24

Все работает, коллега. Движок - готов. Осталось всего-ничего, несколько лет покорпеть.

Аватара пользователя
BreakMT
WANDER Team
Сообщения: 903
Зарегистрирован: 27 ноя 2006, 12:16

Re: Abyss

Сообщение BreakMT » 25 фев 2011, 17:06

Почему-то имя не вводится... при нажатие Enter "File not found" :|

Код: Выделить всё

#########
#.......#
+...@.z.#             "Got ya, didn't I, you little sucker!!!"
#.......#
#########
>>Play Market<<

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 25 фев 2011, 17:12

Почему-то имя не вводится... при нажатие Enter "File not found" :|
надо нажимать маленькую y, может из-за этого.
Если нажать любую клавишу кроме у, выбирается Load Game. Сам знаю, что плохо, но до завтра оставлю так.
Потом поправлю, сделаю меню нормальное.

Аватара пользователя
BreakMT
WANDER Team
Сообщения: 903
Зарегистрирован: 27 ноя 2006, 12:16

Re: Abyss

Сообщение BreakMT » 25 фев 2011, 17:55

понятно теперь.

мне понравилась эта фишка с фразочками оформленными как в комиксах =D> (на скрине правда на клетку выше уехало облачко и фраза другая...)

Код: Выделить всё

#########
#.......#
+...@.z.#             "Got ya, didn't I, you little sucker!!!"
#.......#
#########
>>Play Market<<

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 25 фев 2011, 18:19

мне понравилась эта фишка с фразочками оформленными как в комиксах =D> (на скрине правда на клетку выше уехало облачко и фраза другая...)
На скрине еще не доделанная фишка. Насчет фраз: их будет достаточно большое количество и у игрока и у монстров, так что встречи с ними будут запоминаться, особенно если уникальных монстров озвучить.

Аватара пользователя
warchief
Сообщения: 300
Зарегистрирован: 11 янв 2008, 09:55
Откуда: Озеро снов

Re: Abyss

Сообщение warchief » 26 фев 2011, 05:03

Почему-то имя не вводится... при нажатие Enter "File not found"
Вообщем здесь такая штука, если проект запускается под русской раскладкой, нажимается y, раскладка меняется на английскую (shift + alt), печатается имя, при нажатии enter появляется это сообщение... Это происходит стабильно. Если при окне где нужно нажать y\n сменить раскладку и только потом нажимать y, то все нормально

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 26 фев 2011, 10:03

Что касается системы тайминга.
Пока есть только такая идея.

У каждого монстра будут параметры time и speed.

Например, у игрока они будут равны 10 и 4, а у монстра 4 и 5.

Когда игрок выполняет действие, требующее N времени, то он объявляет его, и дается отсчет на эти самые N времени.

Ходит первым самый быстрый монстр. Он выполняет свои действия данное количество времени. Потом более медленный монстр и т.д. Игрок тоже подходит под эти действия.

К концу хода параметры time будут меняться.
Например:
Игрок, time=10, speed=4.
Крыса, time = 3, speed = 10.
Огр, time = 11, speed=20.

Игрок ходит и объявляет действие на 10 единиц времени.
Крыса ходит 10\3, 3 раза, и у нее остается к концу хода 1 единица времени. Конечно же, она может и не ходить, или сходить всего один раз, иначе с 1 единицей времени ей придется пропустить сл.ход.
Игрок ходит 1 раз. Его время к сл. ходу опять равно 10.
Огр не ходит. От его времени отнимается 10(=1). Он сходит на сл. ход.

Вот такие нехитрые итерации. В процессе написания узнаем слабости задумки=)
Последний раз редактировалось JustHarry 28 фев 2011, 07:15, всего редактировалось 1 раз.

Аватара пользователя
Jolly Roger
Сообщения: 2973
Зарегистрирован: 27 ноя 2009, 09:10
Откуда: Minsk, Belarus

Re: Abyss

Сообщение Jolly Roger » 28 фев 2011, 06:58

Интересно, а что там ещё с AI будет?
Писать диздок спустя несколько лет разработки и множества изменений концепции - исконная русская девелоперская традиция.

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 28 фев 2011, 07:12

Интересно, а что там ещё с AI будет?
?

Аватара пользователя
Jolly Roger
Сообщения: 2973
Зарегистрирован: 27 ноя 2009, 09:10
Откуда: Minsk, Belarus

Re: Abyss

Сообщение Jolly Roger » 28 фев 2011, 07:21

JustHarry писал(а):
Интересно, а что там ещё с AI будет?
?
Ну как ты будешь реализовывать AI, просто подошёл к этому и интересуюсь.
Книги по этой теме кусачие в плане цен, а будет ли, что полезное, вот вопрос.
Эх! был бы свой Макконнелл от AI!
Писать диздок спустя несколько лет разработки и множества изменений концепции - исконная русская девелоперская традиция.

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 28 фев 2011, 07:39

Ну как ты будешь реализовывать AI, просто подошёл к этому и интересуюсь.
Книги по этой теме кусачие в плане цен, а будет ли, что полезное, вот вопрос.
Эх! был бы свой Макконнелл от AI!
Сам впервые занялся этим всерьез.

Пока делаю кирпичики для монстров, из которых они будут строить свое мышление - возможность определять обстановку вокруг, видеть игрока, находить путь в точку, и т.д. Собственно первоначальный ИИ получится самый простой:
1) если монстр будет видеть игрока, он будет идти за ним.
2)Бой. Об боевом AI пока ничего говорить не буду, у монстров даже хп сейчас нет :lol:
3) если у него останется 10-20, или n процентов хп, он будет линять. Реализуется тоже несложно. При этом убегать, это не значит просто идти в какую клетку. Монстры должны активно юзать всякие магические плюшки, блинк, телепорт, пьяное дыхание, и т.д, чтобы отстать от врага. Также копать стены и закапывать их назад(вот, про эту способность я забыл!).
В остальное время монстры будут тупо рандомно ходить по данжону, время от времени юзать некоторые способности, которые, кстати, активно должны(по идее) использовать.

Алсо, хотелось бы запилить простенький сенсорный ИИ, как я делал в прошлом недопроекте про червяков. Там у каждой клетки был параметр noise, и если монстры "видели" шумную клетку, то ползли на нее. Причем каждый ход они ползли на самую близкую клетку шума, то есть шум распространялся в течение одного хода, и можно было отвлекать их от нужного направления. Естественно с видящими монстрами такое не прокатит, у них приоритет - цель, которую монстр видит. Но все равно, сенсорный ИИ (самый простой) довольно несложен в реализации, и эффективен. По крайней мере, позволяет монстрам догонять противника, которого они потеряли из поля зрения. Хотя это не основное его преимущество.

Аватара пользователя
Jolly Roger
Сообщения: 2973
Зарегистрирован: 27 ноя 2009, 09:10
Откуда: Minsk, Belarus

Re: Abyss

Сообщение Jolly Roger » 28 фев 2011, 07:48

JustHarry писал(а):
Ну как ты будешь реализовывать AI, просто подошёл к этому и интересуюсь.
Книги по этой теме кусачие в плане цен, а будет ли, что полезное, вот вопрос.
Эх! был бы свой Макконнелл от AI!
Сам впервые занялся этим всерьез.

Пока делаю кирпичики для монстров, из которых они будут строить свое мышление - возможность определять обстановку вокруг, видеть игрока, находить путь в точку, и т.д. Собственно первоначальный ИИ получится самый простой:
1) если монстр будет видеть игрока, он будет идти за ним.
2)Бой. Об боевом AI пока ничего говорить не буду, у монстров даже хп сейчас нет :lol:
3) если у него останется 10-20, или n процентов хп, он будет линять. Реализуется тоже несложно. При этом убегать, это не значит просто идти в какую клетку. Монстры должны активно юзать всякие магические плюшки, блинк, телепорт, пьяное дыхание, и т.д, чтобы отстать от врага. Также копать стены и закапывать их назад(вот, про эту способность я забыл!).
В остальное время монстры будут тупо рандомно ходить по данжону, время от времени юзать некоторые способности, которые, кстати, активно должны(по идее) использовать.

Алсо, хотелось бы запилить простенький сенсорный ИИ, как я делал в прошлом недопроекте про червяков. Там у каждой клетки был параметр noise, и если монстры "видели" шумную клетку, то ползли на нее. Причем каждый ход они ползли на самую близкую клетку шума, то есть шум распространялся в течение одного хода, и можно было отвлекать их от нужного направления. Естественно с видящими монстрами такое не прокатит, у них приоритет - цель, которую монстр видит. Но все равно, сенсорный ИИ (самый простой) довольно несложен в реализации, и эффективен. По крайней мере, позволяет монстрам догонять противника, которого они потеряли из поля зрения. Хотя это не основное его преимущество.
Хмм... тут понимаешь, какая загогулина. Сделать шибко умный (для рогалика, те 2D игры.) AI нет ничего проще.
Сделать такой AI, чтобы он при этом не требовал дополнительную восьмипроцессорную рабочую станцию для свой обработки, вот вопрос достойный решения.
Уверен же, что существуют уже проработанные алгоритмы и правила, не зря вспомнил Макконнелла, выработанные по`том, кровью и процессорным временем. #-o #-o #-o

EDIT:
Вот например Космические Рейнджеры, какой там AI! вай конфетка и быстрый, скотина такая!
Писать диздок спустя несколько лет разработки и множества изменений концепции - исконная русская девелоперская традиция.

JustHarry
Сообщения: 655
Зарегистрирован: 30 июл 2010, 17:13

Re: Abyss

Сообщение JustHarry » 28 фев 2011, 07:57

Сделать такой AI, чтобы он при этом не требовал дополнительную восьмипроцессорную рабочую станцию для свой обработки, вот вопрос достойный решения.
Эм... разве это простой АИ? Это уже интеллект, достойный машинок из Deus Ex, хехехе.
Я не думаю, что простой АИ будет требовать большего, чем нужно. Ибо в моей игре все монстры вне поля зрения игрока будут ограничиваться очень примитивными действиями, и только те 5-10, которых игрок видит, будут использовать его по полной.

Пока что, самый затратный по времени алгоритм это поиск в ширину для нахождения пути. Он работает по сути за квадрат, но его использовать будут только активные монстры, которые увидели или услышали игрока. Так что вряд ли это дело будет тормозить.
Уверен же, что существуют уже проработанные алгоритмы и правила, не зря вспомнил Макконнелла, выработанные по`том, кровью и процессорным временем.
Мне нравится изобретать велосипеды, поэтому я пока сейчас ничего не использую. Когда понадобится избавляться от тормозов, тогда может и займусь тотальной оптимизацией. Где-то нашел статью про нейронные сети и ИИ, но такую идею воплощать в жизнь еще рано. очень сложно.
Вот например Космические Рейнджеры, какой там AI! вай конфетка и быстрый, скотина такая!
Еще бы, написан самим Гусаровым. Он то в ИИ сечет, это его хобби, считай.

Аватара пользователя
Jolly Roger
Сообщения: 2973
Зарегистрирован: 27 ноя 2009, 09:10
Откуда: Minsk, Belarus

Re: Abyss

Сообщение Jolly Roger » 28 фев 2011, 08:21

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

Скажем Макконнелл подсказывает про испльзование переменных перечислимого типа, но с добавление разделительных индексов и ошибок, те

Код: Выделить всё

Te_Variable = (e_Variable_ERROR  = 0,
                      e_First_Variable     = 1,
                      e_Variable_MIAU    = 1,
                      e_Variable _GAF     = 2,
                      e_Last_Variable     = 2);
Те до этого нужно доходить самому, тратя кучу времени впустую и генеря заранее бестолковый код?
Зачем с муками и пыхтением из бан на неделю и палочек собирать тот же трубогиб, если можно сразу начать делать толковый велосипед?
Конечному потребителю, в нашем случае игроку-рогаликолюбу, глубоко фиалетово, какие мы с тобой умники и заново придумали алгоритм, что до нас ещё 100500 лет назад сформулировал Дейкстра, им важен работающий продукт, с максимальным количеством фич, которых будет куда меньше, если заниматься бегом на месте. :evil:
Писать диздок спустя несколько лет разработки и множества изменений концепции - исконная русская девелоперская традиция.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость