Project Liger Zero

Recently, I just got started working on Project Liger Zero (or TSO LZ), a prototype aimed at recreating The Sims Online using Godot. In order to make this all work I’m using 2dog, a library that uses libgodot in order to reverse the workflow, letting .NET take control of the engine. You can still make use of GDScript or C# for scripting but this brings with it more advanced capabilities of .NET to Godot. Which is useful for both complex games like this or simple ones.

Unlike past projects, I’m taking a slightly different approach to this. Since Godot has a basic multiplayer framework already built-in, I’m going to focus on creating a foundation for testing networking with a simple map view and later lot using Kenny’s game assets as a substitute. That way I won’t be going in completely blind when it comes too finally using TSO’s contents. Not that it doesn’t do that already to a slightly lesser degree.

You see, Godot is rather strict about file I/O. That’s good, don’t get me wrong, but it does make creating a project like this rather tricky. In order to get around that, I figured you can simply place or put a symlink to TSOClient in the game’s user data directory. The first thing I did was to see if this even works is to have it show the TSO version you have on the login screen. Map mode does something similar, if TSO is found it’ll play music from the game. So it is completely possible.

Behind the Name

It’s been a while since I’ve used a code name for a Sims project. Mostly just been reusing the classics cause I couldn’t think of anything better. But this project is certainly different from the rest. While 2dog is just as bleeding edge as my failed attempt with Zig, I at least know C# and Godot.

So when it came to time to come up for name, this needed to be special. Then I remembered Zoids: New Century. It was one of the many animes I grew up with and have been itching to see it again. As a kid, I wanted to be in the mecha the main character had soo bad. So I named this project after it: Liger Zero.

That brief backstory aside, it’s just a cool name to give a game client.

Not Just for TSO

I’ve seen a few recreation projects that eventually grew up to become their own thing. They all reached the point where the game evolved into a versatile engine. Probably the best example is OpenTTD.

So even if all else fails, all this effort doesn’t go to waste. That’s my plan for Liger Zero.