Комментарии 84
Поражен вашим упорством. Надеюсь, у вас все получится. Хотя, особо в этом и не сомневаюсь.
Но, сразу небольшой фидбэк:
1) Выделите из 200к денюжку на нормальную верстку: шрифты нормальные, убрать треш типа такого https://habrastorage.org/files/277/f71/ebc/277f71ebc6284b5bbd78686f0afda00b.png (для непосвещенных, красная рамку я НЕ дорисовывал)
2) Сделайте при первом входе некую обучалку (типа, нажмите сюда, затем сюда, и т.д.)
Но, сразу небольшой фидбэк:
1) Выделите из 200к денюжку на нормальную верстку: шрифты нормальные, убрать треш типа такого https://habrastorage.org/files/277/f71/ebc/277f71ebc6284b5bbd78686f0afda00b.png (для непосвещенных, красная рамку я НЕ дорисовывал)
2) Сделайте при первом входе некую обучалку (типа, нажмите сюда, затем сюда, и т.д.)
К сожалению не нашел ссылку на игру, можно как-то посмотреть?
я не автор, но — consulwar.ru
И на всякий случай, если захотите поддержать авторов: boomstarter.ru/projects/zav/57753
За ссылку меня в бан уже отправили :-) Еле упросил что бы без ссылок опубликовать после этого.
Комментатор выше все верно дал, но теперь я беспокоюсь за сохранность его аккаунта.
Комментатор выше все верно дал, но теперь я беспокоюсь за сохранность его аккаунта.
признаюсь я заботливо статью сразу сохранил в PDF ибо каждый такой материал на вес золота и очень нужен. А уж с остальным разберемся )
За ссылку меня в бан уже отправили :-) Еле упросил что бы без ссылок опубликовать после этого.
Сталкивался с такой-же ситуацией. Мне пояснили следующее:
Если хотите разместить ссылку на свой сайт в тексте публикации — то это можно сделать в категории «Я пиарюсь». Если категория другая — делаете публикацию без ссылки и добавляете ссыль в комментарии.
Так что за комментатора выше можно быть спокойным :)
Крокодил за заставке — копия ренектона из лола практически 1 в 1. Как так получилось?
Отношение к пользователям…
Извините если это оскорбило лично вас.
В целом вся игра в таком стиле, присутствует ненормативная лексика и остальное.
Так что если пользователю не нравится сначала — экономит время нам обоим :-)
Спасибо.
В целом вся игра в таком стиле, присутствует ненормативная лексика и остальное.
Так что если пользователю не нравится сначала — экономит время нам обоим :-)
Спасибо.
У них своя тема.
НЛО прилетело и опубликовало эту надпись здесь
Тут явно виден стеб над современными лэндингами, какие могут быть обиды?
Мне больше понравились «отзывы игроков» :)
Мне больше понравились «отзывы игроков» :)
На странице support разместите «Нам наплевать на вас. Нет, правда.»
Скажите, где вы всему этому научились? Весь проект в одиночку/вдвоём — это очень круто.
Картинка со схемой игры — это то что вы держите в онлайне рисовалке через которую синхронизируете работу?
Картинка со схемой игры — это то что вы держите в онлайне рисовалке через которую синхронизируете работу?
10+ лет работы в веб разработке, понимание что делают различные должности, и как следствие возможность выполнять их работу хотя бы на минимальном уровне.
Картинка со схемой — да, по ней смотрим основные изменения и проверяем связанность частей.
Картинка со схемой — да, по ней смотрим основные изменения и проверяем связанность частей.
НЛО прилетело и опубликовало эту надпись здесь
Выложи побольше принскринов игры, чтобы людям посмотреть, что получилось.
Подскажите пожалуйста, какой софт использовали для построения подобных схем?
Я не совсем понял вопрос. В целом я описал в статье набор инструментов.
Meteor на беке и фронте, Mongo в качестве базы данных. Различные плагины для метеора для ряда вещей.
Весь код пишу в Sublime Text 3.
Конкретизируй вопррос, пожалуйста.
Meteor на беке и фронте, Mongo в качестве базы данных. Различные плагины для метеора для ряда вещей.
Весь код пишу в Sublime Text 3.
Конкретизируй вопррос, пожалуйста.
Я спрашивал именно о схеме . Какой-то сервис для построения minndmap-ов?
В качестве инструмента взаимодействия друг с другом выбрали realtimeboard — онлайн доску, на которой можно писать текст, размещать картинки, рисовать и всё это удобно связывать друг с другом.
Это было в тексте статьи :-)
del
С внедрением героев и альянсов могут быть неочевидные грабли — сложно просчитать все эффекты и удержать баланс игры.
Ну и отслеживание всяикх ботоводов — тоже интересное занятие, или вы собираетесь разрешать скрипты?
Ну и отслеживание всяикх ботоводов — тоже интересное занятие, или вы собираетесь разрешать скрипты?
А мы это сразу заложили.
С ботоводами всё ок. От этого толку почти нуль :-) Плюс будут введены случайные события, на которые грамотно отреагировать только человек может.
С альянсами тоже есть куча крутейших идей, гибридов из разных игр.
В целом мы делаем так, что бы твинки были бесполезны.
Ровно как для приятной игры не было бы смысла сидеть по будильнику.
Хочешь скрипт? Да пожалуйста. Скажи нам — мы постараемся включить этот функционал в проект и так :-) Или изменим механику.
Игра, всё же, для удовольствия, а не для рутины.
С ботоводами всё ок. От этого толку почти нуль :-) Плюс будут введены случайные события, на которые грамотно отреагировать только человек может.
С альянсами тоже есть куча крутейших идей, гибридов из разных игр.
В целом мы делаем так, что бы твинки были бесполезны.
Ровно как для приятной игры не было бы смысла сидеть по будильнику.
Хочешь скрипт? Да пожалуйста. Скажи нам — мы постараемся включить этот функционал в проект и так :-) Или изменим механику.
Игра, всё же, для удовольствия, а не для рутины.
Meteor! Отлично! Для своего проекта тоже использовал метеор и нисколько не пожалел. Удачи вашему проекту.
Вы — молодец (-:
Хотелось бы ещё какое-то описание серверной части, железячной стороны
А для шаблонизатора гляньте на handlebar-helpers…
Хотелось бы ещё какое-то описание серверной части, железячной стороны
А для шаблонизатора гляньте на handlebar-helpers…
Spacebars это тот же handlebars, только подкрученный под метеор :-)
По серверной части всё просто — VPS'ка 4 ядра, 4гб оперативы. Я тут не так силён что бы что-то расписать хорошо.
А по серверной части что узнать бы хотели?
По серверной части всё просто — VPS'ка 4 ядра, 4гб оперативы. Я тут не так силён что бы что-то расписать хорошо.
А по серверной части что узнать бы хотели?
Так и я о том же, просто там уже полно хелперов и не надо свои писать, типа Вашего «eq», я об этом (-:
Собственно это я и хотел узнать — примерные параметры сервера, который должен выдержать 5000 он-лайн (-:
Собственно это я и хотел узнать — примерные параметры сервера, который должен выдержать 5000 он-лайн (-:
подскажите, а какой софт используется для мониторинга сессий, CPU, Response time (на скриншоте)?
kadira.io
Я использую бесплатную версию.
Но, судя по всему, она мне выдает не совсем корректную информацию.
На скриншотах написано 21 session/host — я не совсем понимаю что имеется ввиду.
Приложение запущено на 4 ядрах, т.е. 4 инстанса. На момент снятия скриншота онлайн был около 90 человек.
Вероятно показывает нагрузку только одного ядра, а остальное платно :-(
Выбрал его, т.к. подключался за пару команд.
А так для ноды очень удобен keymetrics.io например. Он круто интегрируется с PM2 и позволяет свои метрики выплевывать в реальном времени.
Я использую бесплатную версию.
Но, судя по всему, она мне выдает не совсем корректную информацию.
На скриншотах написано 21 session/host — я не совсем понимаю что имеется ввиду.
Приложение запущено на 4 ядрах, т.е. 4 инстанса. На момент снятия скриншота онлайн был около 90 человек.
Вероятно показывает нагрузку только одного ядра, а остальное платно :-(
Выбрал его, т.к. подключался за пару команд.
А так для ноды очень удобен keymetrics.io например. Он круто интегрируется с PM2 и позволяет свои метрики выплевывать в реальном времени.
Хотел рассмотреть игру поближе, а тем закрытый бета-тест и нужен пригласительный код. Печаль, и скорее всего больше игрой интересоваться не буду. (к моменту публикации статьи стоило делать уже открытый тест)
Учитывая, что статья не в хабе «Я пиарюсь», всё довольно-таки логично. Описывается ведь не сама игра, а процесс.
Ну, а если появилось желание попробовать — разве жалко отдать 100 рублей для доступа к бета-тесту?
Ну, а если появилось желание попробовать — разве жалко отдать 100 рублей для доступа к бета-тесту?
В принципе я даже ссылку на игру не оставлял.
Я писал пост как технический, пытаясь рассказать о многообразии решений.
Я писал пост как технический, пытаясь рассказать о многообразии решений.
А texic вам что-то рисовал или просто помогает с рекламой?
Расскажите, как вы делаете анимацию с метеором? Или вы не исопльзуете реактивность для анимации?
А в чем проблема?
Я не пытаюсь потролить или ещё что то.
Просто скажите какой-нибудь более конкретный момент, а я отвечу как можно сделать анимации в нем.
Я не пытаюсь потролить или ещё что то.
Просто скажите какой-нибудь более конкретный момент, а я отвечу как можно сделать анимации в нем.
Я сам не делал, но почитав ru.discovermeteor.com/chapters/animations мне показалось, что анимации достаточно сложны в реализации, если дело касается реактивности. Ну и с spacebar я слабо представляю, как добавлять новый полученый элемент в шаблон с анимацией (если читать только оф доку)
Я такие анимации не использовал.
На самом деле тут особо не отличается от других подходов — отловил событие — заанимировал :-)
Просто по умолчанию сразу идет отрисовка. Это, так сказать, отключается.
На самом деле тут особо не отличается от других подходов — отловил событие — заанимировал :-)
Просто по умолчанию сразу идет отрисовка. Это, так сказать, отключается.
мм, а как вы отключаете? Или вы в iron-router и before action делаете манипуляции?
Ну теперь я обязан попробовать Meteor...)
Расскажите про аппаратную часть, пожалуйста. У вас все на одном сервере размещено? Какая конфигурация сервера? Или может облако? В связи с последними законами, сервера должны быть в России. Какую компанию выбрали, в качестве платформы?
Это интересно.
Это интересно.
Ещё рано по аппаратной говорить.
Да, на одном.
FirstVDS, 4 ядра, 4гб оперативы. Там довольно легко тарифы веперед-назад сменять, так что, в принципе, как облако.
Если нагрузки вырастут что хватать не будет, арендуем сервер у них же, вероятно.
Но, как говорил, должно хватит на 5 000 онлайн человек, что довольно много. Главное что бы канал не проседал.
Да, на одном.
FirstVDS, 4 ядра, 4гб оперативы. Там довольно легко тарифы веперед-назад сменять, так что, в принципе, как облако.
Если нагрузки вырастут что хватать не будет, арендуем сервер у них же, вероятно.
Но, как говорил, должно хватит на 5 000 онлайн человек, что довольно много. Главное что бы канал не проседал.
Спасибо за ответ!
У нас был сервер на FirstVDS совсем недавно…
19 августа сервер был недоступен 37 минут, перешли на vscale.io.
У нас был сервер на FirstVDS совсем недавно…
19 августа сервер был недоступен 37 минут, перешли на vscale.io.
И еще, на сколько мне известно, тарифный план там изменить нельзя. Только создав новый сервер с новым тарифом.
Если KVM то нельзя.
А так я уже перезжал, всё быстро и удобно.
А так я уже перезжал, всё быстро и удобно.
Вы используете OpenVZ виртуализацию? Она ведь не гарантирует, что у вас будет проплаченное количество ресурсов системы.
Ну и? :-)
У меня загрузка сейчас 5%. Если она будет хотя бы 50% в пиках — я задумаюсь.
У меня загрузка сейчас 5%. Если она будет хотя бы 50% в пиках — я задумаюсь.
Мы пишем на Java, и техподдержка FirstVDS сразу нам указана на то, что с Java приложениями либо используйте KVM, либо переезжайте: мол на OpenVZ запрещено размещать Java приложения…
Трудно представляю почему. А у вас нет проблем на этот счет? (node.js)
Трудно представляю почему. А у вас нет проблем на этот счет? (node.js)
Спасибо за статью, отличная работа! И да, вы псих ещё раз)
Главная страница тоже на метеоре и на том же инстансе/сервере? Почему спрашиваю: теоритически, если игровой сервер отвалится (и все остальные инстансы, глядишь ддос) или надо срочно выключить сервер, хорошо бы, чтобы в такие моменты до пользователя можно было донести информацию/причину и не только. Нужно ли такое разделение в принципе?
Главная страница тоже на метеоре и на том же инстансе/сервере? Почему спрашиваю: теоритически, если игровой сервер отвалится (и все остальные инстансы, глядишь ддос) или надо срочно выключить сервер, хорошо бы, чтобы в такие моменты до пользователя можно было донести информацию/причину и не только. Нужно ли такое разделение в принципе?
Zav, а почему был выбран iron-router а не flow-router? Iron уже не поддерживается длительное время, в итоге если возникнут какие-то проблемы с очередным релизом Метеора, то придётся форкать пакет и править самому.
Ты написал среди плюсов метеора — средство для дебага, можешь как-то расширить описание?
Ну и вопрос исключительно «о себе». Ты написал что это был первый проект на метеоре, нет ли после запуска ощущения, что многое можно было сделать иначе и лучше? Просто у меня после запуска первого проекта на метеоре было ощущение, что я многое сделал не правильно. И сейчас подправляю многие вещи. Вот и интересно, есть ли такое же впечатление? Просто метеор немного не обычен и думать в разработке на нём надо порой иначе.
Ты написал среди плюсов метеора — средство для дебага, можешь как-то расширить описание?
Ну и вопрос исключительно «о себе». Ты написал что это был первый проект на метеоре, нет ли после запуска ощущения, что многое можно было сделать иначе и лучше? Просто у меня после запуска первого проекта на метеоре было ощущение, что я многое сделал не правильно. И сейчас подправляю многие вещи. Вот и интересно, есть ли такое же впечатление? Просто метеор немного не обычен и думать в разработке на нём надо порой иначе.
Касательно роутера. Я взял первый, который решал задачу хорошо.
По сути у меня сейчас всего 1 роут: '/game/:menu?/:side?/:item?'
Дальше, по сути, контроллер решает что делать. Переехать на любой другой роутер не займет много времени, если возникнут проблемы.
По дебагу — имел ввиду что есть уже готовые решения. Например: github.com/kadirahq/meteor-debug
Лучше можно сделать всегда. Первые две недели разработки я узнавал как делать привычные мне действия на метеоре — принципиально оно не отличается от разработки на чем угодно другом, просто позволяет некоторые моменты отдать на волю движка. Например 2 way data binding довольно хорош. При желании можно получить больше контроля, но если не надо, то метеор берёт на себя задачу полностью.
Я все моменты делал с учетом того что будет рефакторинг, т.к. со старта всё учесть не возможно. В целом вышла модульная стуктура, так что любой из компонентов можно легко заменить, отрефакторить или переписать.
На самом деле я всё делал даже с расчетом на возможный отказ от метеора, так что любое развитие событий было бы приемлемым.
Выбором я доволен, в целом. Метеор — удобный инструмент.
По сути у меня сейчас всего 1 роут: '/game/:menu?/:side?/:item?'
Дальше, по сути, контроллер решает что делать. Переехать на любой другой роутер не займет много времени, если возникнут проблемы.
По дебагу — имел ввиду что есть уже готовые решения. Например: github.com/kadirahq/meteor-debug
нет ли после запуска ощущения, что многое можно было сделать иначе и лучше?
Лучше можно сделать всегда. Первые две недели разработки я узнавал как делать привычные мне действия на метеоре — принципиально оно не отличается от разработки на чем угодно другом, просто позволяет некоторые моменты отдать на волю движка. Например 2 way data binding довольно хорош. При желании можно получить больше контроля, но если не надо, то метеор берёт на себя задачу полностью.
Я все моменты делал с учетом того что будет рефакторинг, т.к. со старта всё учесть не возможно. В целом вышла модульная стуктура, так что любой из компонентов можно легко заменить, отрефакторить или переписать.
На самом деле я всё делал даже с расчетом на возможный отказ от метеора, так что любое развитие событий было бы приемлемым.
Выбором я доволен, в целом. Метеор — удобный инструмент.
Кстати, вот еще вопрос о котором сразу не подумал.
А как сделан механизм постройки зданий? Т.е. вот я пользователь нажал «построить», дальше постройка должна быть готова через Х минут. setTimeout тут может принести множество неожиданностей, например обновили/перезагрузили сервак и таймауты потерялись. Просто timestamp-подобный флаг времени, когда можно начать использовать здание?
А как сделан механизм постройки зданий? Т.е. вот я пользователь нажал «построить», дальше постройка должна быть готова через Х минут. setTimeout тут может принести множество неожиданностей, например обновили/перезагрузили сервак и таймауты потерялись. Просто timestamp-подобный флаг времени, когда можно начать использовать здание?
Создается новый документ в коллекции query (очередь строительства), в котором указан тип, название, время старта и время окончании строительства.
Когда клиент запрашивает какое-то действие, проиходит актуализация информации — проверяется очередь, и если вермя прошло, создается запись в коллеции buildings.
Когда клиент запрашивает какое-то действие, проиходит актуализация информации — проверяется очередь, и если вермя прошло, создается запись в коллеции buildings.
Бета-тест когда-нибудь завершится?
Спасибо за оперативный ответ )
Если вдруг кто подписан на пост — у нас появилась вакансия fullstack javascript разработчика.
В чем высший смысл ввода промокодов на -300 000 металла?
Новая вакансия, качественно лучше предыдущей: https://moikrug.ru/vacancies/1000027249
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Разработка браузерной онлайн игры на meteor