Некоторое время назад, примерно с 2008 года, у меня был хобби-проект по воссозданию довольно знаменитого конце ХХ века ситибилдера Caesar III ©, в процессе работы над игрой был написан ряд статей по механике игры и её внутреннему устройству (например эта).

Чуть позже на сайте поклонников игры я познакомился с другим разработчиком, также увлеченным восстановлением, и хотя наши подходы к восстановлению игры в корне отличались, это не помешало обмениваться информацией. Очень интересно было изучать код оригинальной (через IDA, попутно восстановив часть исходников) механики и, переработав его, использовать в своей игре.

Примерно через четыре года получился более-менее живой проект с уровнями перенесенными из прародительницы, но уже описанными в json-конфигах, с самописным GUI, прикрученным js движком, небольшими изменениями в графическом оформлении. А еще получилась полностью переосмысленная динамика города, оставляющая очень схожее с оригиналом поведение. Собственно так и задумывалось.

imageЧто получилось, можно посмотреть тут

image


Другой любитель древностей, Bianca van Schaik, пошла по пути пересказа, ну или вольного (dx5-7 часть была реализована на SDL) перевода исполняемого файла. Несколько недель назад и этот проект был закончен и выложен на github:

— Реализовано и восстановлено более 90% процентов сишного кода оригинала
— Имена переменным даны по их функционалу
— Смысл части переменных остался неизвестен
— Некоторые части не используются в основном коде
— Другие остались хвостами из движка Caesar2

Всеx неравнодушных к археологии кода прошу на github:

Оригинальный репо с сишным кодом
А тут адаптировано к сборке плюсами

P.S. Проект компилится, запускается и играется, надо только на уровень выше бинарника положить папку data, куда скопировать ресурсы от Caesar3, пока только английского.
P.P.S. Не говорите, плиз, Activision, а то опять забанят репозиторий :)

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


  1. L3333437
    09.11.2017 14:58

    Круто!


  1. Event_Listener
    09.11.2017 15:03

    Ништяк! Помню в стиме скачивал и поправлял баги с модельками чтоб играть можно было нормально (год назад наверно) но было много багов игра не игралась дальше примерно 3го уровня. Сейчас в стиме рабочая версия можно «потестить»?


    1. dalerank Автор
      09.11.2017 15:04

      Нерабочая, причина написана в последнем предложении )


      1. ksenobayt
        09.11.2017 16:08

        Посмотрел репозиторий на Гитхабе.
        Я так понимаю, разработка либо завершена, либо по тем или иным причинам, прекращена?


        1. dalerank Автор
          09.11.2017 16:14

          Ответил в личку, да прекращена


          1. ksenobayt
            09.11.2017 17:11

            Досадно. Впрочем, со Стимом было понятно с самого начала.

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


            1. domix32
              09.11.2017 17:43

              Разве что не использовать название игры.


  1. zionkv
    09.11.2017 17:24

    Я просто не в курсе, а зачем это делается, помимо собственного удовольствия? В том плане, с игрой изначально что-то не так, дальше третьего уровня оригинал не играется, а уровней не 3 и производитель так и не сделал заплатку за много лет?


    1. daggert
      09.11.2017 17:25

      Это вы про стимовскую версию?


    1. dalerank Автор
      09.11.2017 17:26

      С оригиналом все норм, это я только до третьего уровня скрипты написал правильно )))


    1. dalerank Автор
      09.11.2017 17:28
      +2

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


      1. zionkv
        09.11.2017 17:30

        Понял, а там и текстурки перерисовать в HD)


  1. Psychosynthesis
    10.11.2017 15:20

    Я так понимаю основная проблема с названием? Почему бы вам не взять другое и не попробовать заново?


    1. dalerank Автор
      10.11.2017 15:52

      Не только с названием, но еще и правами активиженов на игровую механику и сеттинг. Да как бы и не только у активиженов так, ребятам которые пилят github.com/REGoth-project/REGoth пираньи до сих пор засылают письма c IP violation


      1. Psychosynthesis
        10.11.2017 16:17

        Сеттинг?! Как такое можно запатентовать?


        1. dalerank Автор
          10.11.2017 16:21

          Наверное через тех же людей, что и скругленные углы :)


          1. Idot
            11.11.2017 10:17

            А если немного изменив временные рамки и механику называть игру не Цезарь, а Принцепс?


            1. Deosis
              13.11.2017 08:31
              +1

              Есть ещё Зевс и Фараон.


      1. asmrnv777
        10.11.2017 21:43

        Напрямую разрабам, или гитхабу?