OldMap #2 - онлайн ММО, создаю авторизацию

Всем привет, продолжаю разработку своей онлайн изометрической ММО игры)

Не забывайте читать прошлые части. Через мой профиль)

В прошлой версии я делал форму входа через логин, без проверок и тд. Чтобы можно было комфортно зайти потестировать.

Сейчас уже хочется начать сохранять прогресс игрока, хотя бы локацию и позицию. Для это нужна авторизация.

Для начала сделаю форму логин / пароль, без почт и тд, чтобы люди не подумал что это скам и не тратили время)

Временная внешне, но рабочая внутри - форма регистрации
Временная внешне, но рабочая внутри - форма регистрации

Вообще регистрация и авторизация довольно лёгкий процесс.

На этапе регистрации мы создаём в базе нового пользователя, тут же создаём ключ-юзер запись для временного входа.

Для PHP мы отдаём новый код назад пользователя, он записывает в куки и мы теперь всегда (куки будут жить неделю) можем определить по этим куки связку - куки => пользователь.

А авторизация это просто проверка совпадения связки логин/пароль и создание временного ключа для куки, для доступа)

Аутентификация node

У нас разные сервера, для клиента и сервера, по этому куки не помогут.

Вернее куки то будут, мы будем их хранить на клиенте, но этого мало, просто получить их на сервере не выйдет, придётся их как-то передавать.

Есть разные другие варианты, но я их не знаю)

Будем использовать JWT, просто отправляем секретный ключ каждый запрос, в заголовке запроса)

Сохранение положения

Сохранение положения

Вся авторизация и регистрация была необходима прямо сейчас, чтобы начать процесс сохранения прогресса.

На текущий момент мы уже можем авторизоваться или зарегистрироваться, а потом автоматически входить в игру!

После входа мы получаем данные о нас с сервера (пока у нас система - аккаунт - персонаж) и уже работает система сохранения положения нашего игрока!

Это уже можно назвать онлайн игрой, можем бегать по карте, сохраняя прогресс !)

Интерфейс

Хотелось добавить немного UI, чтобы делать следующие шаги

OldMap #2 - онлайн ММО, создаю авторизацию

Теперь у нас есть небольшой интерфейс, с нашим логином и уровнем, данные реальные, из базы.

Интерфейс нужен чтобы можно было делать опыт, начать можно допустим с бонуса за ежедневный вход в игру

Пока UI я не рисовал, даже не думаю о нём, относитесь с нему пока как к бонусу, нежели важной информации.

Дальнейшие планы

Как вы поняли, я работаю на работе, времени проекту уделяю примерно по 5 часов в неделю.

По этому формат блогов будет пока коротким, недельным отчётом.

Далее я планирую базовые вещи:
- Изменить стартовую локацию
- Добавить 2-ую локацию с мобами, которых можно будет убивать (автобой) и получать опыт

Глобальные ближайшие планы понятны, чат, НПС, квесты, бой, интерфейс. Но не будем торопить события!)

Спасибо что почитали до конца!

Буду рад любому фитбеку, может что-то уже пора добавить, в самом начале базовое или у вас есть какие-нибудь идеи, смело делись!

Актуальная версия всегда доступна на сайте chat2you.ru, сервер может падать, пишите! )

Подписывайтесь и хорошего дня !)

7
6 комментариев