Добрый день, Хабр! Наконец я готова продолжить цикл статей посвященным моей разработке проекта (надо же допилить его до ума), впереди ждут интересные планы, новые проекты и разработки.

Скучали по танчикам, да? Тогда под кат.

Привет всем хабражителям, сегодня я расскажу почему я так долго пропадала, что произошло и как всё будет дальше.

Начнём же!

Что же произошло?


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

Вопрос 1: «Какие изменения в проекте»


Сразу скажу: проект не сильно сдвинулся с места. Причина проста — структурирование данных и их представления (пару лекций БД в колледже заставили меня задуматься).

Вместо «допиливания» танчиков я начала новый и вполне успешный проект, благодаря которому и выведу танчики (и ещё две игры) в новом виде, в новой форме. Я начала и до сих пор пишу сборщик проектов (создаём игру на win-form из win-form приложения).

К танчикам не будет применима идея протокола UTP, который я писала, по двум простым причинам:

— Нет поддержки других приложений/авторов
— TCP-сервер перестал багать

Но это не в коем случае не означает прекращение разработки этого протокола, наоборот, только он будет существовать для других нужд и немного в другом виде (подробности в группе Onion в VK).

Танчики приостановлены до момента создания стабильной версии сборщика проектов.

Вопрос 2: «Чего ждать от тебя в будущем?»


Сейчас мы с командой разрабатываем классную идею на OpenGL и Rust/C/C# (да, все три в связке) и наконец доделанные танчики.

Сейчас перед всеми нами стоит одна задача: нормализация данных и оптимизация кода.

Если с первым у нас не появляется вопросов, то второе требует внимания постоянно.

Вопрос 3: «Когда выйдут в релиз твои танчики?»


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

Хух, вроде на всё ответила, теперь можно и к сборщику подобраться.

Сборщик


Сборщик работает по очень простому принципу: к вашему коду добавляется код из файлов проекта, для его работы. Всё что нужно — создать объекты в проекте и подключить файлы со своим кодом (правда придётся редактировать их таким образом, чтобы остались только функции (мы работаем над этим)) существует функция, которая запускается при каждом обновление кадров

      void Frame()
     {
             // тут ваш код
     }

Всё это существует в пространстве имён map:

      namespace map
      { // наше пространство имён
               public class object_ {  } // класс для работы с объектами на форме 
                                                         // (работает с тремя другими классами)
              // тут же и создаётся формочка с Main функцией
             // подробнее в README
      }

Для сетки будет использоваться TCP сервер-клиент написанный на Rust (т.к. раст безопаснее и быстрее шарпа), который будет принимать различные команды для настройки и взаимодействия.

Заключение


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

Большая статья с описанием и статистикой, с историей и фактами, анонсами и дальнейшими планами можно будет увидеть только после сессии (середина июня — начало июля).

Спасибо за то, что всё ещё со мной и огромное спасибо за потраченное время и внимание, всего вам наилучшего!

> Сборщик
> Танчики

Комментарии (22)


  1. koito_tyan Автор
    21.05.2018 23:40
    +1

    Похоже рейтинг после этого уйдёт в минуса… но хотя бы в своей аудитории верну надежду на проект )

    Вы лучшие ребят, спасибо что до сих пор со мной )


    1. DocJester
      22.05.2018 13:05

      За Вами — хоть куда. :)
      Спасибо, что не забросили проект!


  1. mwizard
    21.05.2018 23:44

    Главный совет — найдите опытного программиста (не еще одного из «вашей команды», а хотя бы 5-6 лет опыта), который будет уделять немного своего времени на code review. То, что у вас сейчас вместо проекта — это кошмар, который никогда не закончится.

    Вторичный совет — разберитесь с git. То, что вы сейчас делаете (загрузка файлов через GitHub UI), это в корне неправильно.

    Не занимайтесь изобретением костыляторов. Вам нужен протокол для MVP? Используйте JSON, не тратьте время на написание никому не нужной логики своего «протокола». Когда набор функций в протоколе стабилизируется, напишите схемы protobuf и используйте его.


    1. mwizard
      21.05.2018 23:49

      И да, enjine? Серьезно?


      1. roscomtheend
        22.05.2018 09:45

        На gamedev.ru был «проэкт», ставший специальным термином. Enjine брат его.


  1. Gorthauer87
    22.05.2018 00:40
    +3

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


    1. kurojneko
      22.05.2018 09:08

      Сначала ты узнаешь миллион способов как делать не надо…


      1. NewStahl
        22.05.2018 09:23

        >миллион способов как делать не надо
        очень полезное знание, присущее любой профессии. Называется «Техника безопасности» :)


    1. nexus478
      22.05.2018 12:41

      Кажется правы те, кто говорят, что для того чтобы нормально писать, нужно перед этим написать миллион строчек всякого говнокода.

      Мне кажется, чтобы нормально писать, надо чтобы код оценивался с точки зрения опыта, накопленного программистами за несколько десятков лет. Это может быть в форме ревью от конкретного человека, а может и в форме чтения книг. Без этого будешь вариться в собственном соку, даже не понимая слабых сторон своего кода.


      1. NewStahl
        22.05.2018 13:46

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


        1. nexus478
          22.05.2018 14:06

          Никто не отрицает важность обучения на собственных ошибках, речь о том, что это должно быть в разумных пределах. У вас вообще как-то очень категорично получается: чтение книг = бездумное повторение, а код-ревью = «тыканье мордой в грязь».


      1. Gorthauer87
        22.05.2018 21:39

        Для восприятия многих вещей нужно еще дорасти. Много раз обламывался в попытках что то объяснить. Человеку нужен опыт для некоторых вещей


  1. lair
    22.05.2018 01:02
    +1

    Я начала и до сих пор пишу сборщик проектов (создаём игру на win-form из win-form приложения).

    Но зачем?


    1. Sinatr
      23.05.2018 12:25

      Сборщик работает по очень простому принципу: к вашему коду добавляется код из файлов проекта, для его работы
      Разве не понятно? Мне — не понятно. Хотелось бы узнать поподробнее что за зверь. Читать или общаться все же приятнее, чем лезть куда-то и разбираться.


      1. lair
        23.05.2018 12:26
        -1

        Вот и мне не понятно, зачем.


  1. yarosroman
    22.05.2018 02:26

    Предлагаю вам ещё про .gitignore почитать, дабы не тащить всякий сборочный хлам с собой.


  1. Sirion
    22.05.2018 10:38

    Я вот пилю небольшую игру-головоломку на Phaser.js. Попутно планирую одну небольшую и упоротую статью на хабр, а также одну большую и совсем упоротую, но попозже. Ещё основную работу работаю. Чаю вот попил, чай особенно приятственен с утра.

    Решил, что если этот пост имеет право на существование, то про мои планы всем тоже интересно будет знать.


    1. LoadRunner
      22.05.2018 10:53

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


  1. barbanel
    22.05.2018 11:07

    Я просто обязан спросить:
    — Гнома в танк можно будет посадить?
    /оффтоп
    Многие проходили через это, удачи вам!


    1. mwizard
      22.05.2018 12:07

      Нужна возможность играть за домики деревяные и набигать на охрану дворца.


      1. barbanel
        22.05.2018 12:21

        И «грабить караваны» не забудьте! =)


        1. Mingun
          22.05.2018 16:52
          +1

          *корованы