Julius: What is it?

Created on 24 Dec 2017  路  15Comments  路  Source: bvschaik/julius

Is it a Caesar III clone? Reimplementation? Something else?

Most helpful comment

For now, the game-play will stay as-is: it's hard enough to get the game mechanics exactly right. In the future: who knows.

All 15 comments

A reimplementation of Caesar 3.

Interesting, that's a project that was in my backlog as I'm not satisfied with the fidelity of CaesarIA (which is a clone rather than a reverse engineered version).

Is there a website or something where more information can be obtained about this project?

Julius aims to be an exact reimplementation, including bugs. So I guess your backlog is one item shorter now? ;)

Is it not planned to improve it like OpenRCT2 did?

It's off my backlog but I can contribute to this repo instead. 馃槈

For now, the game-play will stay as-is: it's hard enough to get the game mechanics exactly right. In the future: who knows.

Wonderful! Is there a roadmap or something else so that we may contribute in some way? :)

Right now I'm working on cleaning up the last 10k lines of code. The most useful thing you can do at the moment is play the game and report any anomalies :smiley:

About that, I am trying to build the source on Windows, but it doesn't seem to be an easy task. Has anyone tried it? I was thinking to write some docs maybe as soon as I succeed.

Which compiler are you using?
I have an AppVeyor build up and running using MinGW, you can take a look at the build script. I plan to support Visual Studio builds as well but didn't try building with it yet.

Oh, and you need the original game files in "../data" (I need to find an easier solution for that).

Apparently, starting from VS2017, both MinGW and CMake are supported right inside Visual Studio.

Despite that, after several hours, I'm still unable of setting up the SDL2 and SDL2_mixer dependency.
I guess some modifications must be done to the CMakeLists.txt file, in order to properly point to the library folders but I can't figure out how it should be done.

I got it working on the win10 developer virtual machine that Microsoft so kindly provides (sadly they don't provide a new harddisk -- running out of space here).

  1. Download the SDL2 and SDL2_mixer VC developer libraries
  2. Extract them somewhere, mine are in C:\sdl\SDL2-2.0.7 and C:\sdl\SDL2_mixer-2.0.2
  3. Open the project in VS 2017, it will complain about the missing SDL2 library
  4. Right-click on the main CMakeLists.txt file and select "Change CMake Settings". This will create and open a CMakeSettings.json file
  5. In this file, look for your build configuration and change the line with the cmakeCommandArgs variable to the following (change paths where applicable):
    "cmakeCommandArgs": "-DCMAKE_PREFIX_PATH=C:\\sdl\\SDL2-2.0.7;C:\\sdl\\SDL2_mixer-2.0.2",
  6. Save the file, VS will automatically rerun CMake and will find the SDL libraries
  7. Build as usual

For running the game:

  1. You need the original files from C3, either from GOG or an old CD-ROM version.
  2. Copy julius.exe, SDL2.dll from the SDL2 directory, and SDL2_mixer.dll from the SDL2_mixer directory to the C3 install directory.
  3. Run julius.exe

Note that for Visual Studio it should be easier to use Microsoft's WIP dependency tool: vcpkg.

@bvschaik actually that flag didn't help, I instead added:

"cmakeCommandArgs": "-D SDL2_LIBRARY_TEMP=...pathtosdl2...\\SDL2\\lib\\x86\\SDL2.lib -D SDL2MAIN_LIBRARY=...pathtosdl2...\\SDL2\\lib\\x86\\SDL2main.lib -D SDL2_INCLUDE_DIR=...pathtosdl2...\\SDL2\\include -D SDL2_MIXER_INCLUDE_DIR=...pathtosdl2_mixer...\\SDL2_mixer\\include -D SDL2_MIXER_LIBRARY=...pathtosdl2_mixer...\\SDL2_mixer\\lib\\x86\\SDL2_mixer.lib"

and it now configures correctly. Despite that I'm still unable to compile (Visual C++ is missing some standard UNIX libraries). The MinGW guide seems to be pretty incomplete. I'll let you know if I have any updates.

@devnoname120 I can't figure how I could use it 馃槥

Did you pull the latest version from Github? I made changes yesterday to fix the missing stuff in Visual C++ and fix finding SDL.

@devnoname120 I'll look into vcpkg, thanks!

Since there is now a README, I think that this issue can be closed.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jdmillard picture jdmillard  路  7Comments

Sagatt picture Sagatt  路  8Comments

crudelios picture crudelios  路  6Comments

jonathanmcnamee picture jonathanmcnamee  路  3Comments

jfkonecn picture jfkonecn  路  6Comments