Воплощение мечты. Разработка ММОРПГ.
1 пост
Добрый день!
Совсем недавно ИИ ассистенты не представляли из себя чего-то полезного, но на сегодняшний день (в условиях стабильного интернета, конечно) подобные технологии позволяют буквально воплощать мечты. Нет, в этом посте речь пойдет не об ИИ. Но без него, я бы возможно никогда не смог получить ту дозу мотивации, которую получает человек, занимающийся тем, что ему действительно нравится.
С самого детства я любил компьютерные игры, и уже давно внутри меня было желание сотворить нечто подобное. Я думал, что создавать игры это также легко как и играть в них, но все оказалось сильно иначе. Делать игры — это сложно. Начиная с того, что происходит "под капотом" в цикле игры, заканчивая графикой и сюжетом. А ведь еще нужно понимать, ЧТО ты делаешь. Необходим опыт и самого игрока, ведь в жанрах есть конструкции, которые многим привычны и отходить от них не принято, если ты не создаешь что-то новое.
Мне нравятся онлайн игры. В них можно весело провести время с друзьями, ну если не весело, то как минимум интересно. Одиночные игры мне тоже нравятся, следить за сюжетом, развитием персонажа, буквально быть в истории и принимать судьбоносные решения. На мой взгляд оба этих подхода в себе совмещает жанр ММОРПГ.
Я ни в коем случае не программист, не сценарист, не гейм дизайнер, даже пишу с ошибками. Но все же так, чисто для себя, я решил сделать простенькую мморпг для игры с друзьями с теми инструментами, что доступны в сети, немного потратился на удобный софт в виде aseprite, например, но все же пока, выходит довольно бюджетное увлечение (не по времени).
Первым делом, на компе я открыл visual studio, создал новый проект в виде консольного приложения на c#. Не буду сильно останавливаться на том, какую модель ИИ я использую, их много, и все они разные и подходят для разных задач. Я пользуюсь бесплатными моделями, чем-то с названием deepseek-max-ultra-vpn-pro-3000 (если что такой модели нет, наверное).
Я обрисовал нейронке примерный план того, что хочу видеть: многопользовательская рпг игра, 2д, пиксельная графика. Предварительно я попросил ее дать мне общий план того, как подобные проекты вообще строятся, ведь ранее имел опыт "разработки" только однопользовательского проекта. С этого момента она выдавала мне примерно следующую информацию: нужно несколько разных проектов: Клиент, Сервер, и нечто общее, куда они будут обращаться по мере необходимости, чтобы не плодить одинаковый код.
Я был мягко говоря обескуражен, ведь до этого, все что я делал, было в рамках одного проекта в VS, но спорить не стал, звучит логично. Где-то сидит сервер, к нему из разных точек необъятной подключаются клиенты и они обмениваются информацией.
О том, КАК будет выглядеть игра, я спрашивать нейронку не стал и она на автомате решила в рамках консольного проекта на c# сделать мне визуал в Windows Form. "Ну, ладно" подумал я и по итогу, спустя несколько итераций под добавлению стандартных для мморпг элементов, по типу окна логирования, кнопок открытия разных окон типо статуса персонажа, инвентаря, журнала заданий, области чата, хот бара для навыков и предметов, отображения количество хп, мп и опыта получилось нечно подобное:
В середине область карты, где отображаются сущности в мире игры. Нарисовал простенькие спрайты врагов, игрока, зелеными символами отображаются собираемые предметы, по типу кустов с ягодами или грибов, значком "$" торговец, значком "Q" доска с заданиями, а "%" трупик с лутом:
И вроде выглядит даже неплохо, подключаешься к серверу по TCP, можно бегать, брать задания, торговать в прямом эфире бить и получать урон от мобов, но игрой это назвать язык не поворачивается, а все из-за окон:
Окно инвентаря. Предметы по ячейкам. Тултипы с описанием. Здесь же ячейки экипировки предметов. пожалуйста, извините за шакальность!
Окна в Windows Form, это буквально отдельные окна на рабочем столе. Плюс возникла проблема с системой drag-n-drop, чтобы перетянуть предмет из своего инвентаря в инвентарь торговца для продажи, например. Я стал выпытывать из нейронки:
— Windows Form меня не устраивает как движок, — написал я.
— Так это же для корпоративных задач, бухгалтерских штучек-финтифлюшек и т.д, дурачок! — ответила нейронка, — вот нормальные движки для создания игр: Unity, UnrealEngine, Godot и тд.
Но меня не совсем устраивали эти варианты, Unity тяжеловесный, хотя я и имел в нем некоторый опыт, Godot мне не нравится из-за системы корней, а UnrealEngine для меня что-то непонятное.
— Тогда давай сделаем на MonoGame, — сказала нейронка, — там есть все необходимое для создания той игры, которую ты хочешь.
"Еще одно непонятное слово" — подумал я.
— Ладно, перенеси пару систем, которые сейчас работают на клиент в MonoGame, чтобы посмотреть, как это будет выглядеть, — написал я.
И нейронка начала шуршать.
Продолжение следует...
Если Вам показалась, что мое небольшое увлечение интересно, напишите, хотите ли вы видеть продолжение процесса разработки игры. Насколько подробно писать, в каком состоянии проект, что в нем есть, возможно вы хотите посмотреть видеоматериалы с "геймплеем"? Писать посты короче или длиннее? Подскажите, я правильно раскидал тэги?
Отвечу на возможные вопросы:
— Почему Пикабу?
Ответ: сижу здесь периодически как и вы все, знакомая площадка.
— Почему ты решил, что посты подобного формата будут кому-то интересны?
Ответ: я забил личку друга отрывками того, что сделал для игры и он предложил куда-то выкладывать процесс (может я ему надоел с этим, не знаю).