В связи с юбилеем выхода шутера от первого лица Serious Sam, который состоится в марте 2016 года, разработчики игры из хорватской компании Croteam решили выпустить полный исходный код игры. Код специально подготовили к изучению, снабдив подробными комментариями.

Версия движка, отныне доступная общественности, официально называется Serious Engine v1.10. К выпуску исходный код готовил один из программистов Croteam, Вячеслав Никитенко. Он рассказал об этом следующее:
С исторической точки зрения движок Serious Engine важен как для Croteam, так и для меня лично. До того, как начать работать с исходниками, я делал несколько модов для игры – и это был отличный инструмент для обучения. А сегодня он стал ещё лучше!

Конечно, движок Serious Engine v1.10 не сможет обеспечить вам суперсовременной графики, но зато он хорошо откомментирован, его легко менять, а в интернете есть огромное количество пользовательских модификаций. При помощи этой версии вы сможете как создать игру, так и просто поэкспериментировать.

Скачайте исходники и направляйтесь на форум поддержки SeriousZone, где есть как множество обучалок, так и отличное сообщество.




Первый эпизод игры Serious Sam: The First Encounter вышел 23 марта 2001 года. По сюжету, главным героем игры был Сэм Стоун, более известный как Серьёзный Сэм. Его отправили в прошлое, чтобы найти и уничтожить злобного инопланетного тирана Ментала и тем самым спасти человечество от полного истребления в будущем, изменив ход истории.

Серьёзный Сэм занял седьмое место в списке десяти самых неудержимых героев компьютерных игр сайта Machinima.com. Этот же сайт поставил Сэма на шестую строчку списка десяти лучших путешественников во времени. Также персонаж занял первое место в списке самых крутых героев видеоигр сайта Gamer-Info [http://gamer-info.com/article/gitop-25-igra-s-samym-krutym-geroem/]. А по мнению обозревателя Destructoid Джима Стерлинга, герой является «настоящим королём спинномозговых шутеров».



На сайте Absolute Games редакция поставила игре оценку 85 из 100, читатели – 81 из 100. При выборе лучших игр всех времён и народов 2013 года хабрасообщество поместило игру на 54 место.

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


  1. OnYourLips
    12.03.2016 03:48
    -29

    > разработчики игры из хорватской компании Croteam решили выпустить полный исходный код игры

    В оригинале написано, что только исходный код движка, а не полный исходный код игры.

    > но зато он хорошо откомментирован, его легко менять

    В сфере веб-разработки это маркеры кода плохого качества.
    Объемные комментарии — места, где поленились отрефакторить или сделать документацию.
    И хороший код должен быть таким, чтобы его не было нужды менять. Принцип открытости/закрытости — один из основных принципов ООП.


    1. gibson_dev
      12.03.2016 06:22
      +19

      дак у нас тут и не веб разработка


    1. Hellsy22
      12.03.2016 07:03
      +5

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

      Пользователям комментарии не нужны, как и возможность менять код. А вот разработчикам — нужны.


    1. alex_blank
      12.03.2016 08:25
      +8

      > Объемные комментарии — места, где поленились отрефакторить или сделать документацию.

      Чушь. Хороший код должен быть документацией сам к себе. Иногда для этого нужны ещё и комментарии. В некоторых ЯП (Haskell), кстати, есть режим "literate", где надо ескейпить код, а не комментарии. Наверное это потому что их создатели пишут плохой код.

      > И хороший код должен быть таким, чтобы его не было нужды менять.

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


    1. maaGames
      12.03.2016 08:27
      +10

      Желаю вам работать только с кодом ОЧЕНЬ ХОРОШЕГО КАЧЕСТВА без единого комментария.

      P.S. в «хороших» проектах документация генерируется в автоматическом режиме из комментариев.


      1. kovalevsky
        12.03.2016 12:29
        +3

        Он вероятнее всего имел ввиду построчные комментарии "как для идиотов", а не docblock'и


        1. OnYourLips
          12.03.2016 16:06
          -1

          Их и имел ввиду, поэтому специально уточнил про объемные комментарии. Даже не думал, что это можно как-то превратно понять.
          Очень «приятно» видеть «адекватную» реакцию людей, которые считают всех остальных по профессиональному уровню заведомо ниже себя.


          1. AllexIn
            12.03.2016 20:52
            +4

            Ваш уровень весьма четко определяется по этому комментарию, например:
            "И хороший код должен быть таким, чтобы его не было нужды менять. "
            Я не моуг представить себе специалиста, который такое заявит.
            Не менять код, значит не менять продукт. Или у вас там тоже что-то другое имелось ввиду и "Даже не думал, что это можно как-то превратно понять."?


      1. potan
        13.03.2016 17:41

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


    1. om2804
      12.03.2016 23:19

      Принцип открыт-закрыт это один из принципов SOLID, а не ООП


  1. engine9
    12.03.2016 08:48
    +3

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


    1. Mixim333
      12.03.2016 14:30
      +1

      И моя. Serious Sam — единственная игра, которая смогла захватить меня так, что я прошел ее от начала до конца! Может теперь сообщество сделает некоторый ремейк на эту легенду («ремейк» в самом лучшем смысле этого слова)?


      1. semmaxim
        12.03.2016 15:40

        1. Mixim333
          12.03.2016 16:20

          >«The classic arcade FPS Serious Sam: The First Encounter, which scored an overall of 87% on Metacritic and was awarded Game of The Year 2001 on Gamespot, is now reborn in glorious high-definition for legions of long-time fans and a whole new generation of gamers around the world.»

          — если правильно понял, основная особенность этого ремейка в HD-качестве картинки, а я имел ввиду что-то более глобальное, может быть даже создание следующей игры из линейки Serious Sam.


          1. grozaman
            12.03.2016 18:02
            +1

            Дык пожалуйста: Serious Sam 2, Serious Sam 3: BFE.
            Вторая часть сменила концепцию слегка, но всё равно весьма веселая и трэшовая на мой взгляд :) Во всяком случае казалась таковой в детстве. А третья часть уже больше по канонам, с новой графикой.


            1. Mad__Max
              13.03.2016 03:43

              Еще Serious Sam: The Second Encounter есть. По-моему самая отвязная из всей серии. Собственно это фактически новая компания для 1й части с тем же движком, графикой и стилем геймплея. Лишь с добавкой нескольких новых монстров, новыми боссами и 3 новыми типами оружия. Не путать с Serious Sam 2.

              Ну а 3я уже ИМХО совсем не торт.


              1. grozaman
                13.03.2016 03:46

                Третья кому-то прям очень понравилась, а кому-то совсем нет. Поэтому средний балл на метакритик 72.
                Кстати, Croteam анонсировали четвертую часть.


          1. idiv
            12.03.2016 19:26

            основная особенность этого ремейка в HD-качестве картинки

            Там движок другой и уменьшили число монстров. Последнее вообще убило всю идею.


            1. AllexIn
              12.03.2016 20:53

              Последнее вообще убило всю идею.

              Моддится же легко.


              1. idiv
                12.03.2016 22:00

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


                1. Mad__Max
                  13.03.2016 03:51
                  +1

                  Наверно поэтому 1ю классическую из продажи убрали. С год назад именно классику купив в коллекцию и переиграл заново — все еще торт несмотря на 15 летний возраст! Сейчас посмотрел — в продаже нет, можно получить только "подарком" в комплектах с новыми играми..

                  Не особо этот HD мод и нужен — разрешения высокие и так доступны, летает на самом простом железе (думаю даже на встройках должно на максималках идти), на современных ОС запускается (за 8/10 вин не ручаюсь, но на 7ке работает). Чуть разрешение текстур низковато и модельки слегка угловаты по современным меркам, но там обычно такой экшен и угар идет, что рассматривать их просто некогда :)
                  Для 2001года выпуска это что-то невероятное.


                  1. idiv
                    13.03.2016 09:17

                    Не особо этот HD мод и нужен… на современных ОС запускается

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


      1. engine9
        12.03.2016 18:10

        Без финансирования это нереально. Но если кто соберется делать я с удовольствием примкну как GUI дизайнер и моделлер локаций\оружия.
        https://skfb.ly/CRHP


        1. Idot
          12.03.2016 19:06

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


      1. NKMSKV
        13.03.2016 16:37

        Так его ведь сделали в 2009 году. Называется Serious Sam HD: The First Encounter — ru.wikipedia.org/wiki/Serious_Sam_HD:_The_First_Encounter


      1. ffs
        14.03.2016 12:13

        http://store.steampowered.com/app/227780

        Serious Sam Classics: Revolution is a unified version of the Croteam's original Serious Sam Classic: The First Encounter and Serious Sam Classic: The Second Encounter experience, which is currently in development by Alligator Pit, an indie development team made of Serious Sam fans with the support of Croteam. Serious Sam Classics: Revolution, along with newly developed content by Alligator Pit, also includes all levels from both Classics and is powered by an updated Serious Engine 1 featuring all-new advanced graphics shader support, full 64-bit compatibility, full Steamworks integration, and lots of bug fixes for a superior game experience.


  1. semmaxim
    12.03.2016 10:24
    +2

    Да… Моя первая игра, в которой когда подходишь к стене, то она не рассыпается на пиксели. Меня это просто невероятно поразило в своё время. А какие там пейзажи были… Ночной Египет был прекрасен.


    1. Zuy
      13.03.2016 09:22

      Интересное совпадение. Судя по профилю у нас с вами разница в возрасте 5 лет. Для меня первая игра не рассыпающаяся на пиксели это первый Quake, который как раз выше на 5 лет раньше серьёзного Сэма.


      1. Hellsy22
        13.03.2016 10:21

        В Quake пикселизация была — ого-го. Текстуры низкого разрешения, да еще и в 256 цветах. Сглаживание и приличное аппаратное ускорение появилось в QII, из-за чего он казался "мыльным".


        1. Zuy
          13.03.2016 22:03

          Честно сказать, не помню параметры их текстур, но первый Quake поддерживал кроме програмного и аппаратный рендеринг через OpenGL или Glide. В то время у меня была видео карта на базе Riva 128. На ней разница между програмным и OpenGL рендерингом была очень впечатляющая. Пикселизации точно нигде не было. В то время 3D ускорители не у многих были, по-этому большинство просто никогда не видело Quake 1 в нормальном виде.
          Вот картинка демонстрирующая различие:

          image


          1. semmaxim
            13.03.2016 22:10
            +1

            Сглаживание — это совсем не о том. Будут просто мутные расплывчатые пиксели. В Serious Sam текстуры менялись на лету и когда вплотную подходишь к стенке — на ней уже была высококачественная большая текстура шероховатого камня.


            1. Zuy
              13.03.2016 22:14

              Это верно, такой фичи в Quake 1 точно не было.


              1. esc
                14.03.2016 11:57

                Фича — mip mapping? была. Даже в программном рендеринге. Но даже максимального размера текстуры не хватало, чтобы отображать ее четко при подходе в упор. в Сэме сами текстуры были намного большего разрешения.


  1. idiv
    12.03.2016 11:27
    +1

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

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


    1. sim31r
      13.03.2016 00:48

      Про поддержку тут написали же:
      1. Код хорошо документирован, специально, для облегчения понимания, что это, как не поддержка?
      2. Есть большое сообщество и готовая база знаний, уже занялись люди.


    1. mastan
      13.03.2016 16:37

      Уже два года занимаются: Serious Sam Classics: Revolution.


      1. idiv
        13.03.2016 18:14

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


  1. lexx_v11
    12.03.2016 14:57

    Отлично. Croteam наконец смогли убрать из кода все костыли, так что его не стыдно стало показать. :)


  1. vblats
    12.03.2016 22:13
    +1

    После такого поступка, действительно захотелось купить лицензионную копию этой игры.


  1. tronix286
    13.03.2016 10:03

    Кто-нибудь смог собрать в VS2008? Если да, то поделитесь файлом-проекта.