Сохранен 16
https://2ch.su/gd/res/547757.html
Сообщите нам если начиная с сентября вы испытываете проблемы с доступом к сайту через клирнет, сразу укажите сообщение об ошибке или приложите скриншот.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Привет. Так вышло, что я все же решился написать

 Аноним OP 21/01/19 Пнд 01:18:21 #1 №547757 
2019-01-2101-35-28.png
Привет. Так вышло, что я все же решился написать свою 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 и еще какую то муть. Нарисовал пару деревьев в илюстраторе )).

Я собственно вообще ни куда не спешу, но думаю придется искать человека который будет рисовать вектор. Ну и хотелось бы узнать твое мнение, анончик. Что ты обо всем этом думаешь?
Аноним 21/01/19 Пнд 01:55:41 #2 №547761 
Вот сейчас пришло в голову, что позицию игрока на локе можно хранить в сессии и записывать в базу раз так минут в 5. Особой нагрузки не будет.
Аноним 21/01/19 Пнд 02:51:39 #3 №547762 
>>547757 (OP)
без графона ты тут никто. добро пожаловать в ГД.
Аноним 21/01/19 Пнд 08:24:55 #4 №547780 
>>547757 (OP)
>Что ты обо всем этом думаешь?
Я бы не тратил время на графон. Как будет более-менее вылизаный геймплей, готовый к масштабированию, тогда и можно хуйдожников завлекать.
Аноним 21/01/19 Пнд 08:45:24 #5 №547782 
>>547757 (OP)
>кроме php, python, html, css и js я больше ни хрена ни чего не знаю
Тебе прямая дорога к нам в годотред. Приглашаю.
Скрипты на пайтонподобном языке.
Разметка на канве и c css-подобными отступами.
Полная поддержка векторной графики (которой никто не пользуется в годо - и зря).
Лёгкая интеграция с вебом (ХТМЛ5) и немного сложнее с мобилами (нужно устанавливать андроидокомпиляторы и сертификаты). Зато ты сможешь собирать готовую игру и под пека в один клик.
Пустой игровой проект весит 25 мегабайт.
Из минусов: Движок молод и сыроват, ранний доступ, так сказать, фичи активно допиливаются и перепиливаются. Но опять же, если ты весь графон будешь в рантайме рисовать, тебе это будет не принципиально.
Есть функция автотайл для тайловых карт, когда ты на наборе тайлов отмечаешь где у них внутренние части, а где - наружные. После чего ты без задней мысли рисуешь карту мышкой, а тайлы ставятся сами так, чтобы снаружи оставались края. Мало того, если в рантайме игра разрушает окружение, автотайлинг продолжает работать и перестраивает карту так, чтобы снаружи оставались края.
Фич очень много. Поддержка шейдеров есть. Ты можешь векторами набросать деревце, а шейдером сделать ему эффекты колыхания на ветру.
Поддержка графики, звука, файлов, сети, через плагины сможешь и мускуль подключить https://github.com/khairul169/gdsqlite-native
В общем, что ещё сказать? Почитай инфу, посмотри туториалы, потрать буквально полчаса своего времени и убедишься сам, какая это годнота!
Если есть вопросы, заглядывай в годотред. Я частенько туда заглядываю, отвечаю на вопросы.
Аноним 21/01/19 Пнд 08:56:54 #6 №547784 
>>547782
>поддержка векторной графики
Ну тут я должен уточнить, что под векторной графикой я подразумеваю механизм custom draw, когда на канве математически отрисовываются линии и графические примитивы. А то вон гугл говорит, что векторная графика - это ещё когда svg-текстуры пихают на спрайты.
Аноним 21/01/19 Пнд 14:10:51 #7 №547852 
>>547784
Чем он лучше phaser?
Аноним 21/01/19 Пнд 19:50:33 #8 №547976 
>>547782
Чел где ты? Ты крут. Попробовал я этот Годо - это просто песня! Я сделал за полтора часа то, что на Phaser делал полтора дня! Как я раньше не слышал про него ))). Синтаксис понятный и простейший, возможностей куча. Я счастлив. Удалил Phaser.
Аноним 21/01/19 Пнд 19:54:16 #9 №547979 
2019-01-2120-51-23.png
Поиск пути уже прикручен к нему (get_simple_path). Сколько я ибался с Phaser и всякими там navmesh или easystar.
Аноним 21/01/19 Пнд 19:59:07 #10 №547981 
Ну кстати тут поиск пути реализован примерно так-же как в navmesh. Создается слой NavigationPolygonInstance по которому чар может гулять. Интересно если тупо закатать в этот слой всю локу и поставить объекты с обработкой столкновений, то он будет их обходить или нет?
Аноним 21/01/19 Пнд 19:59:40 #11 №547982 
>>547979
>годот
Игры не будет, закрывайте тред.
Аноним 21/01/19 Пнд 20:00:55 #12 №547983 
>>547982
Блин чем он плох то? Чем он хуже тогоже phaser? Я пока только кайфую.
Аноним 21/01/19 Пнд 20:02:08 #13 №547984 
>>547983
станешь пидором типа распидора
Аноним 21/01/19 Пнд 20:03:45 #14 №547985 
>>547984
А ну понятно.
Аноним 21/01/19 Пнд 20:08:35 #15 №547987 
Я конечно его использую часа два от силы, но пока вижу что годо справится со всеми поставленными задачами, а скорость разработки вырастет за счет использования одного инструмента для редактирования уровней и программирования. К тому же синтаксис python это вообще что-то. Мне от граф.двига нужно то только перемещение игрока по локациям, немного взаимодействия и собственно то и все. А ну и бой, но боевка в героях сами понимаете, проще только шашки запилить.
sage Аноним 28/01/19 Пнд 04:14:47 #16 №550536 
Тред - очень ненавязчивая реклама гомодота.
comments powered by Disqus