Новости с передовой

Сегодня у нас долгожданное обновление. Основной приоритет это создание новой сетевой части, по этому, изменения в этом обновлении лишь косметические.

Основные изменения в этой версии:

  • Изменился интерфейс в режиме строительство баз
  • Подсветка выделенного здания
  • Появилась мини карта
  • Усовершенствован редактор кораблей


В редакторе кораблей появилась возможность вращения деталей, так же их растяжение.
Дополнительные клавиши:

  • Пробел — переключение на следующий режим (перемещение, вращение, растяжение)
  • T — перемещение
  • R — вращение
  • S — растяжение
  • E — переход между локальной и глобальной системой координат

Ссылка на проект: play.dg8.ru

Часть вторая: Детали кораблей

Это вторая часть рассказа об изменениях в этой версии. Редактор кораблей, еще в разработке и текущая версия лишь дает представление о том, что вы увидите. Детали для строительства кораблей сейчас в общей куче, они идут без сортировки, часть деталей от орбитальной верфи.
Понимаю, после предыдущей части, вы наверное устали, давайте просто посмотрим на изображения новых деталей для строительства кораблей:

Часть первая: Регистрация и авторизация

Это обновление, отличается от предыдущих. Сразу приведу короткий список изменений, в текущем обновлении:

  • Регистрация и авторизация пользователей.
  • Автоматическое определение языка пользователя.
  • Под модальными диалогами появилось затенение, блокирующее случайные нажатия мимо диалога.
  • Главное меню отображается поверх диалогов.
  • Созданы новые детали для строительства кораблей.

Начну свой рассказ с момента, почему у меня ушла дополнительная неделя, на создание системы регистрации. Мы все знаем, что почти на каждом сайте есть регистрация. Но, не всегда обращаем внимание, на то, что наши пароли гуляют в открытом виде. Даже протокол https, не сможет нас защитить, от их хищения. Почти на каждом сайте, пароли шифруют только на стороне сервера. Используют по большей части md5, уже реже sha-1 и другие алгоритмы. Так в чем же опасность? (Есть хорошая статья в журнале «Хакер»: Все методы взлома MD5) Во первых, с сайта могут украсть базу данных паролей и восстановить все пароли пользователей, которые, есть в ней. Бывает, что шифрования вообще нет и на сайте пароли лежат в открытом виде. Но вернемся к браузеру, если компьютер или браузер будет заражен трояном/вирусом или вы случайно оставите свой пароль на компьютере друзей или еще где, пароли с легкостью утекут и ими смогут воспользоваться злоумышленники. Более интересная часть, все твердят — протокол https вас спасет, увы это не так, да он спасет от перехвата трафика, но не от троянов, вирусов и плагинов которые могут быть установлены в браузере, либо на компьютере и иметь прямой доступ к вашим паролям.
Ну что, готовы? Давайте рассмотрим примеры, начнем прогулку с социальной сети «В контакте» (я мог выбрать и другую социальную сеть или просто сайт). Но «В контакте», больше всех радует своей защитой. Может после прочтения текста, они переделают свою авторизацию и регистрацию. Сегодня 5 марта 2016 года и мы приступаем к тесту, открываем контакт и переходим в режим отладки F12:
vk-testiruem-yiazvimosti

Шаг первый, введем вместо логина 123456789, а вместо пароля 987654321. И посмотрим, как эти данные, будут отправлены на сервер (в браузере хром — F12, далее, перейти на вкладку Network).
vk-yiazvimost-parolia

И что мы видим, данные пошли по протоколу http в открытом виде, еще и без шифрования (Такое случается постоянно, не каждый человек знает, что нужно руками вводить https:// для перехода на защищенный протокол). Для социальной сети такого масштаба, это очень плохо, так как пароли гуляют в открытом виде и к ним они придут, так же, в открытом виде. Не ясно, как они будут использованы сотрудниками или компанией.

Посмотрим как же у нас обстоят дела? Введем логин abc@mail.ru, а пароль 987654321.
dreams-gate-password-protection

Пароль не похож на свое начальное представление, на вид как MD5, но так ли это? (Есть несколько десятков утилит, вы можете самостоятельно посмотреть, получится ли у вас из этого вытащить свой реальный пароль).

Но это еще далеко не всё, а что будет если мы опять попробуем зайти под нашим логином и паролем? Введем логин abc@mail.ru и пароль 987654321.

dreams-gate-strong-password-protection
Пароль изменился?! Это покажется странно, на первый взгляд, но чтобы защитить ваши данные приходится применять необычный подход.

Подведем итоги: Так как, нам не важно какой у человека пароль, главное, чтобы введя свои данные, пользователь смог войти в систему. По этому, мы можем преобразовать пароль в другой вид, разрушив его оригинальную структуру. Все пароли шифруются на стороне клиента (в браузере), а после отправки еще и на стороне сервера. Таким образом «реальный пароль» был зашифрован еще до отправки на сервер. Для шифрования пароля воспользовался SHA-3 Кечак (Keccak), в измененном виде, также обернул его под MD5, чтобы добавить любителям взлома «видимую легкость». Конечно этот подход совершенно не гарантирует 100% защиты, любую систему можно взломать, но такой подход, в разы, затруднит получение доступа к вашему «реальному» паролю.

Ссылка на проект: play.dg8.ru

С Днем защитника Отечества!

Поздравляю с праздником друзей, знакомых и читателей моего блога!

И представляю вашему вниманию, обновление, ко дню защитника отечества.

webgl-realistic-planet

На этот раз это поверхность планет. Процедурные планеты и поверхность созданы без использования текстур. Вы сразу можете возразить, как?! Ответ очень прост, в реальности не используются текстуры для отображения гор вообще. Расчет цвета для каждого пикселя гор осуществляется в момент вывода его на экран, по заданным координатам. Но такой подход, требует наличия, далеко не слабой видеокарты. Ведь каждый кадр, поверхность строится по новой. И чем больше разрешение экрана, тем выше требования. Но и это еще не всё, без использования текстур, повышается сложность создания реалистичной поверхности планет. Ведь нам придется писать формулы для каждого типа поверхности (трава, камни, снег, вода, земля). А это сложно и требует много времени. Так какие же преимущества и недостатки в итоге.

webgl-procedutal-terrain

Преимущества планет без текстур:

  • Не требуется память для хранения кусков текстур
  • Уникальный вид поверхности
  • Возможность задания разных свойств материалов
  • Изменение поверхности в реальном времени (лава, рост травы, обледенение и т.п.)

Недостатки тоже есть:

  • Требуется хорошая видеокарта
  • Высокая сложность создания новых типов поверхности (камни, песок, трава)
  • Постоянный просчет пикселей без возможности кеширования

Развитие видеокарт идет в сторону улучшения и ускорения, по этому, этот (гибридный) метод будет востребован, в ближайшем будущем.

webgl-procedutal-planet

Я специально ограничил размер планеты до 13км, удалил из кода куски для работы полноразмерных планет, оставил только одну форму планеты. Так же убрал камни и траву. А чтобы планета выводилась у большего числа людей, ограничил число проходов шума, до четырех. Конечно качество картинки резко ухудшилось, но даст большему числу людей с комфортом посмотреть на планету.

Почему?!

До момента выхода игры, оно будет в таком урезанном виде, уже не раз сталкивался, что мой код кочует в чужие проекты (даже без указания автора и ссылки откуда они это слямзили).

Обновление доступно по адресу: play.dg8.ru
Управление в режиме «Реалистичная Планета»:
W,A,S,D — для перемещения камеры
Q,E — наклон камеры
Левой кнопкой мышки на экран и двигать — вращение камеры

Субботнее обновление

Представляю вашему вниманию, свежее обновление игры. В этом обновлении добавлена возможность строительства кораблей (временно в Ангаре). Космическая и орбитальная верфь всё еще в разработке. Но, для проработки, от прототипа, до полнофункционального редактора это ни как не помешает. В чем же прелесть этого редактора?! У вас будет возможность создать свой «уникальный» корабль. Вы сможете создавать корабли как по готовым чертежам, так и делиться своими чертежами с друзьями. Собственные корабли будут иметь различный функционал и визуальный вид.

Основные элементы для строительства, будут добавляться в игру, по мере готовности. А теперь перейдем к зданиям, у нас очередное пополнение, на этот раз:

Артиллерийская установка

Артиллерийская установка, модель нарисовал: Richard Hale

А так же и другие модели были усовершенствованы:

Ссылка на проект: play.dg8.ru

Результаты полевых испытаний

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

Dreams Gate: Новости проекта

Хочу поблагодарить, всех кто принимал участие в обсуждении, поддержке и продвижении проекта. Особой благодарности удостоены: Стас Пинаев, Илья Лазаренков, Богдан Осадчий, и Георгий, который рисует для нас модели кораблей. Текущее обновление является косметическим, в основном была подготовка к внедрению сетевого кода в проект. Добавлена отдельная ветвь — сетевая игра, это прототип, в нем нельзя стрелять или как-то мешать противнику. Он выложен в общий доступ для тестирования интерполяции и предсказания движения. А так же для подготовки к полномасштабному внедрению сетевого кода в проект.

Короткий список изменений:

  • Создан раздел для авторизации
  • Прототип сетевой игры
  • Более аккуратный вид у орбит
  • Улучшен перевод
  • Добавлен Puddle Jumper из StarGate

Спасибо всем, за теплые слова поддержки и вашу помощь.

Постоянная ссылка на браузерную игру: play.dg8.ru

Неделя активной разработки

Пришла суббота, а с ней и обновление. Проект находится в стадии разработки, по этому, ваши отчеты о работоспособности будут очень полезны. Не забываем, что действует постоянная ссылка: play.dg8.ru

Требования к браузеру: у вас должен быть современный браузер (Google Chrome либо Firefox последней версии), Яндекс.Браузер даже последней версии к таковым не относится.

Требования к системе: Видеокарта с поддержкой OpenGL 3 / DirectX 10 и выше.

Игровой мир, стал богаче, на несколько зданий, добавлены: Рынок, Лаборатория, Полиция.

Наш мир стал ярче: появились тени от зданий.

webgl-buildings-on-planet

Тени от зданий

Уже работает выбор зданий и сооружений. Теперь можно продавать и улучшать здания. Система улучшений пока работает для некоторых типов зданий и планируется расширение.

Система улучшений

Система улучшений

Исправлен весьма досадный недочет, при котором, сквозь меню, можно было производить выбор элементов (например зданий или планет).

Для большего удобства, теперь меню выбора Баз, можно переходить к планете на которой они размещены, достаточно нажать на её название.

Убран режим «Ангар», теперь, чтобы попасть в ангар, необходимо его построить, а уже после строительства зайти в выбранный ангар.

Приятная новость, в ангаре можно построить несколько видов кораблей. На данный момент это «Глайдер» и «F302» которые были показаны в фильме «Звездные Врата».

1 2 3 4 5