AvatarPiotr Adamczyk

Xeno's Tale

Xeno's Tale is a project that aims to recreate all the neccessary tooling needed to run a truly custom, private server for the MMORPG game called NosTale. That includes a server emulator, a launcher, a website and various internal tools that would enable custom content creation.

Xeno's Tale launcher
Main screen of the Xeno's Tale launcher

Subprojects

The Xeno's Tale project is divided into several subprojects:

  • xenostaleJ - The server emulator written in Java.
  • xenostale-launcher - The launcher for the private server written in Electron and React.
  • xenostale-core - Native helper library that makes run-time modifications to the game.
  • soraya - A set of C++ classes, functions, and structures that help modify the NosTale client's behavior.
  • teoman - Custom client build tooling that allows us to unpack, modify and repack the NosTale client.
  • marvin - DevTale plugin for dumping the server-side data from the official NosTale servers.
  • xenostale.pl - Our official website (currently a placeholder).
  • ...and many more.
xenostale-core logs
Some logs generated by xenostale-core during the game's startup

Current state

The private server that was meant to be powered by Xeno's Tale tooling wasn't released to this date and, given the current state of my free time, it's unlikely to be released in the near future. However, the project is still alive and I'm still working on it from time to time.

Technology

Java

C++

TypeScript

Electron

React

MongoDB

Original Xeno's Tale emulator was written in C++ and instead of a database, it stored data persistently on the disk. The new server emulator is written in Java and uses MongoDB. The launcher was made using Electron and React. Various internal tools are written in Java, TypeScript and C++.