История Oclock - от Florianer

  • История Oclock - от Florianer
    Привет огеймерам, это Florianer!
    Если вы не слышали обо мне, то можно узнать здесь: youtube.com/watch?v=mvUvCyJPBB8
    WeTeHa попросил меня дать вам представление о новых возможностях OClock и Beta Feature System. Это долгая история...
    Всё началось как многим вам довелось испытать - "я посейвил флот, зашел на время посадки, и все пропало! "Какого...почему? Почему опять? А, чёрт! Не осталось ни ресурсов, ни обломков! Проверка сообщений показала, в чём дело. Я ошибся в скорости флота и пропустил раннюю посадку." Или: "я не ошибся, но был слишком занят на встречах, с кодом OGame, пытаясь найти очередной случайный баг что только что обнаружили - и совершенно забыл о времени. Опять..." Так я начал ставить напоминания на мой смартфон. Но даже это я регулярно забывал делать, потому что это не часть игры а какое-то стороннее решение.
    Если слегка изменить известную цитату: "И спасибо богу, что я не только смотрю за игрой, а контролирую её", у меня появилась идея о OClock. После круглого стола OGame в Субботу, 10 декабря 2016 (как уже говорил, это долгая история) я рассказал немного об этой идее. И получил хорошие отзывы, и в понедельник предложил эту идею WeTeHa, и он её принял. Хорошо, что это была последняя рабочая неделя года и все проекты к рождественским событиям были готовы, и я мог сразу начать работать над ней. После некоторого обучения у меня был рабочий прототип, который мог отправлять всплывающие уведомления. Отлично. Почти готово? Ничего подобного. Наличее прототипа очень далеко от готовности для производства. Но, год закончился. Январь постучался в дверь, и мне пришлось сменить приоритеты на новый проект. А новые проекты никогда не приходят одни, и потом у нас была оптимизация и большой проект Лобби, который как я надеюсь вам тоже нравится. Я им горжусь и там тоже будет много новинок.
    Но вот пришёл декабрь 2017 - и мне стало жаль, что между всеми проектами так и не нашлось времени для работы над OClock. Так что я начал смотреть в мою старую экспериментальную ветку, и попробовал слить изменения кода в текущую базу. Всё это происходило после рабочего дня. Тут пол часа, там 80 минут. Всё в зависимости от того, когда начинался спорт или если моя семья ещё не была дома и никто не скучал по мне. <3 <3 <3 <3 моей жене и троим детишкам. Я знал, чего я хотел добиться: всплывающих оповещений которые напоминали бы мне зайти в игру и посейвить флот.
    Ок, отправка оповещений работала на допустимом уровне и показывалась на моем настольном Ubuntu с его Google Chrome, а так же на моем Android на телефоне. Я начал строить графический интерфейс, чтобы добавлять и отображать OClock записи в стиле OGame. Я добавил настройки, чтобы разрешать всплывающие оповещения, более или менее недокументированную технологию "автоматического смещения", список и несколько кнопок фильтров. Сейчас вы можете найти кнопку "Минимизировать" - была задумка позволить вам открыть OClock, и сделать его видимым на каждой странице с этой опцией минимизации. Я обсудил OClock с моей командой, и после отзывов я решил открывать OClock только после нажатия на новую кнопку в главном меню. После всех изменений, что я сделал в свободное время, я так же доставал своих коллег чтобы они посмотрели мой код - ревью кода обязательное, и никакой код не добавляется в ветви разработки/релиза без ревью. Охх... Это всё ещё был хорошо смотрящийся прототип с некоторой полировкой. Но по результатам ревью кода было добавлено 52 аннотации, которые мне нужно было исправить перед тем, как запрос слияния ветви был бы одобрен.
    Наконец,
    Возможность пуш-оповещений → release/6.7.1
    Florian Mycka - #310, последнее изменение 24 Apr. 2018
    Начиная с этого момента, мой OClock код был в продакшне, но его всё ещё нельзя было использовать. Получить ревью кода и одобрение pull-запроса всё ещё не означает, что это одобрено тестерами QA. Моя вина - вся документация была у меня в голове. QA нашли время проверить изменение, но не одобрили его.
    "Хмм, как добавить возможность онлайн, которая проверена, но не полностью одобрена?!" - спросил я у себя. Тогда меня посетила идея, я поговорил с Piink и это было решено. Я добавил Beta Feature System. Вы можете прочитать длинный текст об этой возможности в настройках вашего аккаунта, если Beta Feature System включена на вашем аккаунте. Она просто говорит вам, что у вас есть работающая Beta Feature, которая не должна изменить баланс игры, но не может использовать полноценно локализованный текст, изображения или стиль. Я очень увлечен OGame, и хотел бы использовать эту систему, чтобы доставить вам возможности до того, как они будут завершены. Вы можете посмотреть на них на публичных тестовых серверах (pioneers.ogame.gameforge.com) и голосовать об идее. Я надеюсь, если у идеи будет много поддержки, мы сформируем настоящий проект из этого и переработаем\отполируем\закончим её так же, как и все остальные возможности в игре.
    Я добавил немного небольших изменений:
    OGAME-2268 Fix OClock & ACS →release/6.7.1
    Florian Mycka - #357, последнее изменение 17 Jul. 2018
    OGAME-2347 Fix oclock фатальные ошибки в логе ошибок и обновление CliColors вызовов как PBU подготовки →release/6.7.1
    Florian Mycka - #361, last change 26 Jul. 2018
    О, и я также добавил немного документации с изображениями и стрелками, показывающими и поясняющими что такое Beta Feature System и OClock и как они работают. И рассказывая больше и больше людям о том, что у меня есть что-то частично готовое для продакшна, всё больше и больше людей начали поддерживать меня и теперь оно объявлено для PTS и, надеюсь, скоро будет доступно на живых серверах.
    Что запланировано? Кроме новой 2-в-1 возможности, над которой я работаю в другой экспериментальной ветви и идеи что была на моём столе с ... 6.3.0 ?! я также могу добавить удобные ссылки для OClock. Помните "не задокументированное автоматическое смещение"? Ну, довольно просто. Отправьте флот и посмотрите на обзор событий. Вы найдёте новый символ часов. Нажав на него, информация о флоте будет автоматически добавлена в ваши OClock записи. Оповещение будет отправлено на время посадки вашего флота, если вы не поставите смещение на, скажем, 5, и тогда оповещение будет отправлено за 5 минут до посадки флота. Классно и удобно? Но добавить такую иконку для построек и исследований в блоках очереди тоже было бы хорошо, да? Больше настроек, больше OClock, больше возможностей! Я надеюсь добавить больше удобных возможностей для вас в будущем - даже если для этого мне нужно будет работать над ними в течении долгого периода в моё свободное время.
    За Легора! За OGame! За ВАС!