MCPcopy Index your code
hub / github.com/bvschaik/julius

github.com/bvschaik/julius @v1.8.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.8.0 ↗ · + Follow
4,622 symbols 16,424 edges 761 files 25 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Julius

Github Actions

Download: Download release version Download development version

Android version on Google Play: install release or sign up for test builds

Chat: Discord (kindly hosted by GamerZakh)

Julius: an open source re-implementation of Caesar III

Julius is a fully working open-source version of Caesar 3, with the same logic as the original, but with some UI enhancements, that can be played on multiple platforms.

Julius will not run without the original Caesar 3 files. You can buy a digital copy from GOG or Steam, or you can use an original CD-ROM version.

The goal of the project is to have exactly the same game logic as Caesar 3, with the same look and feel. This means that the saved games are 100% compatible with Caesar 3, and any gameplay bugs present in the original Caesar 3 game will also be present in Julius.

Enhancements for Julius include: - Support for widescreen resolutions - Windowed mode support for 32-bit desktops - A lot of small in-game quality of life improvements - Support for the high-quality MP3 files once provided on the Sierra website

Supported platforms: - Windows - Linux AppImage - MacOS - PS Vita - Nintendo Switch - Android - Any compatible browser (Emscripten)

While Julius does not implement any gameplay changes, a fork of Julius named Augustus is implementing many long-wanted gameplay changes, such as roadblocks. So use Julius for a more vanilla experience with some visual improvements, or Augustus for a different gameplay experience.

Note: Julius save games are fully compatible with the original Caesar 3 save files and vice versa. Augustus can load original/Julius save games, but save games made with Augustus cannot be loaded in Julius or original Caesar 3.

Running the game

First, download the game for your platform from the list above. Alternatively, you can build Julius yourself.

Then you can either copy the game to the Caesar 3 folder, or run the game from an independent folder, in which case the game will ask you to point to the Caesar 3 folder.

Note that you must have permission to write in the game data directory as the saves will be stored there. Also, your game must be patched to 1.0.1.0 to use Julius. If Julius tells you that you are missing it, you can download the update here.

See Running Julius for further instructions and startup options.

Bugs

Julius recreates many bugs that you can find in original Caesar 3 game, to preserve 100% saves compatibility. See the list of Bugs & idiosyncrasies to find out more.

Core symbols most depended-on inside this repo

image_group
called by 593
src/core/image.c
buffer_write_i32
called by 573
src/core/buffer.c
buffer_read_i32
called by 573
src/core/buffer.c
lang_text_draw
called by 446
src/graphics/lang_text.c
map_terrain_is
called by 349
src/map/terrain.c
building_get
called by 329
src/building/building.c
lang_text_draw_centered
called by 272
src/graphics/lang_text.c
image_draw
called by 263
src/graphics/image.c

Shape

Function 4,512
Class 86
Method 24

Languages

C98%
C++1%
Java1%

Modules by API surface

src/map/tiles.c75 symbols
src/scenario/editor.c49 symbols
src/core/smacker.c47 symbols
src/building/figure.c46 symbols
src/city/view.c44 symbols
src/figure/formation.c42 symbols
src/map/routing.c40 symbols
src/game/settings.c40 symbols
src/input/keyboard.c39 symbols
src/window/config.c37 symbols
src/city/population.c37 symbols
src/widget/top_menu.c35 symbols

For agents

$ claude mcp add julius \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact