Caesar3 все таки open
Некоторое время назад, примерно с 2008 года, у меня был хобби-проект по воссозданию довольно знаменитого конце ХХ века ситибилдера Caesar III ©, в процессе работы над игрой был написан ряд статей по механике игры и её внутреннему устройству (например эта).
Чуть позже на сайте поклонников игры я познакомился с другим разработчиком, также увлеченным восстановлением, и хотя наши подходы к восстановлению игры в корне отличались, это не помешало обмениваться информацией. Очень интересно было изучать код оригинальной (через IDA, попутно восстановив часть исходников) механики и, переработав его, использовать в своей игре.
Примерно через четыре года получился более-менее живой проект с уровнями перенесенными из прародительницы, но уже описанными в json-конфигах, с самописным GUI, прикрученным js движком, небольшими изменениями в графическом оформлении. А еще получилась полностью переосмысленная динамика города, оставляющая очень схожее с оригиналом поведение. Собственно так и задумывалось.
Что получилось, можно посмотреть тут
Другой любитель древностей, Bianca van Schaik, пошла по пути пересказа, ну или вольного (dx5–7 часть была реализована на SDL) перевода исполняемого файла. Несколько недель назад и этот проект был закончен и выложен на github:
— Реализовано и восстановлено более 90% процентов сишного кода оригинала
— Имена переменным даны по их функционалу
— Смысл части переменных остался неизвестен
— Некоторые части не используются в основном коде
— Другие остались хвостами из движка Caesar2
Всеx неравнодушных к археологии кода прошу на github:
Оригинальный репо с сишным кодом
А тут адаптировано к сборке плюсами
P.S. Проект компилится, запускается и играется, надо только на уровень выше бинарника положить папку data, куда скопировать ресурсы от Caesar3, пока только английского.
P.P. S. Не говорите, плиз, Activision, а то опять забанят репозиторий :)