Привет. Так вышло, что я все же решился написать свою AAA браузерную игру. Буквально вчера это случилось. Причем, сначала я вообще решил создать свой блог. Работаю ВЭБ ПОГРОМИСТОМ уже лет 10 ,а блога своего нет. Неправильно это. Ну и вот. Рег.ру мне автоматически установил вордпресс и тут я такой думаю, - "Вот блог есть, а что туда писать?". Ну и пришла идея писать игру и писать о том как я её пишу в блог ))).
Почему именно браузерная игра? Да потому, что кроме php, python, html, css и js я больше ни хрена ни чего не знаю. Вот значит на что пал мой выбор:
1) движок сайта - Laravel 2) граф. движок - Phaser 3 3) backend для всякой фигни типа чата, инфы о персе, инвентаря, аукциона и т.д. - PHP 4) backend для боевки - Python + Tornado 5) База данных - MySQL
Собственно про что игра будет. Сеттингс аля герои меча и магии (войны и денег). Думал я значит думал как же все это работать должно. Придумал следующее. В игре будут локации (много локаций надеюсь). Локации небольшие - 90 * 30 тайлов каждый по 16 px = 1440 x 480. Графику решил рисовать сам - векторную (на скрине видно). Это быстро и просто. И картинка получается более менее норм. Да и игра в общем-то не про графику. Значит бродить по локации можно (не то что в ГВД), на локах будут стоять мобы, будут входы во всякие там подземелья и т.д. НО НИКАКОГО влияния на логику это брождение по локации оказывать не будет. Справа от канваса есть место (на скрине я его обозначил) на этом месте будут появляться функциональные клавиши (разные, в зависимости от ситуации). Ну то есть кликнул игрок на моба и справа появилась инфа о нем и ниже кнопка "НАПАСТЬ" и так со всеми интерактивными объектами. Так как локации маленькие, я не буду даже отслеживать положение игрока на этой локации, будет отслеживаться только ID самой локации, в которой находится игрок. В каждой локе будут точки спавна, обновил страницу - ты на спавне, вышел из игры - зашел - ты на спавне и т.д. Я думаю это не критично, локации реально крошечные и ни кто на тебя в самой локе не нападет, нападать может только игрок. Ну и соответственно игрок видит только себя и мобов. Другие игроки в локации видны опять же в списке игроков справа от карты.
Теперь про боевку. Как только начинается бой, запускается скрипт Python, который работает все время пока этот бой не закончится. Этот скрипт будет обрабатывать всю логику боя и соответственно сохранять все данные в БД.
А теперь собственно о том, что я хочу реализовать:
1) Огромный мир с кучей локаций и подземелий 2) Рейды на боссов 3 и 5 человек 3) Гильдии 4) Аукцион 5) Собственные замок и ферма 6) Крафт 7) Заточка оружия 8) Героический шмот с дропом 1 к 100 9) Доната в игре не будет, только добровольные пожертвования за всякие плюшки не влияющие на игровой процесс.
Пока что (со вчерашнего дня) я реализовал передвижение игрока по локации, поиск пути. Кучу всяких мелких настроек laravel и еще какую то муть. Нарисовал пару деревьев в илюстраторе )).
Я собственно вообще ни куда не спешу, но думаю придется искать человека который будет рисовать вектор. Ну и хотелось бы узнать твое мнение, анончик. Что ты обо всем этом думаешь?
>>547757 (OP) >Что ты обо всем этом думаешь? Я бы не тратил время на графон. Как будет более-менее вылизаный геймплей, готовый к масштабированию, тогда и можно хуйдожников завлекать.
>>547757 (OP) >кроме php, python, html, css и js я больше ни хрена ни чего не знаю Тебе прямая дорога к нам в годотред. Приглашаю. Скрипты на пайтонподобном языке. Разметка на канве и c css-подобными отступами. Полная поддержка векторной графики (которой никто не пользуется в годо - и зря). Лёгкая интеграция с вебом (ХТМЛ5) и немного сложнее с мобилами (нужно устанавливать андроидокомпиляторы и сертификаты). Зато ты сможешь собирать готовую игру и под пека в один клик. Пустой игровой проект весит 25 мегабайт. Из минусов: Движок молод и сыроват, ранний доступ, так сказать, фичи активно допиливаются и перепиливаются. Но опять же, если ты весь графон будешь в рантайме рисовать, тебе это будет не принципиально. Есть функция автотайл для тайловых карт, когда ты на наборе тайлов отмечаешь где у них внутренние части, а где - наружные. После чего ты без задней мысли рисуешь карту мышкой, а тайлы ставятся сами так, чтобы снаружи оставались края. Мало того, если в рантайме игра разрушает окружение, автотайлинг продолжает работать и перестраивает карту так, чтобы снаружи оставались края. Фич очень много. Поддержка шейдеров есть. Ты можешь векторами набросать деревце, а шейдером сделать ему эффекты колыхания на ветру. Поддержка графики, звука, файлов, сети, через плагины сможешь и мускуль подключить https://github.com/khairul169/gdsqlite-native В общем, что ещё сказать? Почитай инфу, посмотри туториалы, потрать буквально полчаса своего времени и убедишься сам, какая это годнота! Если есть вопросы, заглядывай в годотред. Я частенько туда заглядываю, отвечаю на вопросы.
>>547782 >поддержка векторной графики Ну тут я должен уточнить, что под векторной графикой я подразумеваю механизм custom draw, когда на канве математически отрисовываются линии и графические примитивы. А то вон гугл говорит, что векторная графика - это ещё когда svg-текстуры пихают на спрайты.
>>547782 Чел где ты? Ты крут. Попробовал я этот Годо - это просто песня! Я сделал за полтора часа то, что на Phaser делал полтора дня! Как я раньше не слышал про него ))). Синтаксис понятный и простейший, возможностей куча. Я счастлив. Удалил Phaser.
Ну кстати тут поиск пути реализован примерно так-же как в navmesh. Создается слой NavigationPolygonInstance по которому чар может гулять. Интересно если тупо закатать в этот слой всю локу и поставить объекты с обработкой столкновений, то он будет их обходить или нет?
Я конечно его использую часа два от силы, но пока вижу что годо справится со всеми поставленными задачами, а скорость разработки вырастет за счет использования одного инструмента для редактирования уровней и программирования. К тому же синтаксис python это вообще что-то. Мне от граф.двига нужно то только перемещение игрока по локациям, немного взаимодействия и собственно то и все. А ну и бой, но боевка в героях сами понимаете, проще только шашки запилить.
Почему именно браузерная игра? Да потому, что кроме php, python, html, css и js я больше ни хрена ни чего не знаю. Вот значит на что пал мой выбор:
1) движок сайта - Laravel
2) граф. движок - Phaser 3
3) backend для всякой фигни типа чата, инфы о персе, инвентаря, аукциона и т.д. - PHP
4) backend для боевки - Python + Tornado
5) База данных - MySQL
Собственно про что игра будет. Сеттингс аля герои меча и магии (войны и денег). Думал я значит думал как же все это работать должно. Придумал следующее. В игре будут локации (много локаций надеюсь). Локации небольшие - 90 * 30 тайлов каждый по 16 px = 1440 x 480. Графику решил рисовать сам - векторную (на скрине видно). Это быстро и просто. И картинка получается более менее норм. Да и игра в общем-то не про графику. Значит бродить по локации можно (не то что в ГВД), на локах будут стоять мобы, будут входы во всякие там подземелья и т.д. НО НИКАКОГО влияния на логику это брождение по локации оказывать не будет. Справа от канваса есть место (на скрине я его обозначил) на этом месте будут появляться функциональные клавиши (разные, в зависимости от ситуации). Ну то есть кликнул игрок на моба и справа появилась инфа о нем и ниже кнопка "НАПАСТЬ" и так со всеми интерактивными объектами. Так как локации маленькие, я не буду даже отслеживать положение игрока на этой локации, будет отслеживаться только ID самой локации, в которой находится игрок. В каждой локе будут точки спавна, обновил страницу - ты на спавне, вышел из игры - зашел - ты на спавне и т.д. Я думаю это не критично, локации реально крошечные и ни кто на тебя в самой локе не нападет, нападать может только игрок. Ну и соответственно игрок видит только себя и мобов. Другие игроки в локации видны опять же в списке игроков справа от карты.
Теперь про боевку. Как только начинается бой, запускается скрипт Python, который работает все время пока этот бой не закончится. Этот скрипт будет обрабатывать всю логику боя и соответственно сохранять все данные в БД.
А теперь собственно о том, что я хочу реализовать:
1) Огромный мир с кучей локаций и подземелий
2) Рейды на боссов 3 и 5 человек
3) Гильдии
4) Аукцион
5) Собственные замок и ферма
6) Крафт
7) Заточка оружия
8) Героический шмот с дропом 1 к 100
9) Доната в игре не будет, только добровольные пожертвования за всякие плюшки не влияющие на игровой процесс.
Пока что (со вчерашнего дня) я реализовал передвижение игрока по локации, поиск пути. Кучу всяких мелких настроек laravel и еще какую то муть. Нарисовал пару деревьев в илюстраторе )).
Я собственно вообще ни куда не спешу, но думаю придется искать человека который будет рисовать вектор. Ну и хотелось бы узнать твое мнение, анончик. Что ты обо всем этом думаешь?