Sergei Kushnirenko @dalerank
Люблю (ш)кодить, алгоритмы и старые авто.
Information
- Rating
- 5-th
- Location
- Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity
Specialization
Software Developer, Game Developer
Senior
From 300,000 ₽
Git
C++
Multiple thread
Applied math
OOP
Выскажите предположения, а я потом расскажу, что это оказался за массив )))
Учтите что игра писалась на plain-C, без классов и других плюшек.
Класс GameLoaderC3Sav, который описан в этом файле(loader_sav.cpp) загружает данные из оригинального сохранения Caesar III, часть формата я разобрал, часть не получилось( там где не получилось понять что значит блок данных, я его пропускал pk->skip(106) ),
Про формат, в котором оригинальная игра сохраняет данные известно вот что — это снимок участка памяти, который описывает игровую ситуцию в момент сохранения, как есть ))) но, часть этого участка жмется с помощью библиотеки PKWare Compression Library. Когда понадобилась необходимость грузить оригинальные сейвы, я этот класс написал, а потом перешел к реализации других вещей и подзабросил.
при разборе сейва число 1276 это смещение до координат точки входа кораблей в город
1. Шкодить остался пока я один, двое реверсят оригинал, еще двое правили перевод. Можно забрать таск, тогда рядом с ним будет отображаться имя того, кто делает.
2. Отношусь очень положительно, но без фанатизма, лучше я ченить новое запилю. А пример можно??? стараюсь писать чтобы понятно было. Кудаж без них, например с текстурами зданий нашли алгоритм который автоматически считает смещение относительно начала тайла, с текстурами людей тоже работает, но не со всеми, приходится ручками офсеты править, с мостами вообще беда.
Просто первый раз использую локализацию вне qt приложений, поэтому есть промахи ))) в qt это все намного проще было, спасибо за подсказку
Честно говоря, я не ожидал такого количества откликов, игра довольно старая и, судя по коментариям в стиме, многие о ней не знают.
Спасибо
1. В файле app_game/resources/settings.model (текстовый файл) поправьте параметр fullscreen, чтобы было fullscreen: true
2. теперь в терминале перейдите в папку с игрой и скажите ./caesaria.macos
если нет проблем с библиотеками, должно запуститься,
про фреймворки SDL я написал выше