NosFarm: An Unfinished Clientless Administration Panel for Nostale
NosFarm: An Unfinished Clientless Administration Panel for Nostale
NosFarm is a project I started to simplify and automate the management of multiple Nostale accounts in a clientless way. While development is now paused, I want to share the core ideas behind the project, the structure, and the challenges I faced along the journey.
Project Overview
NosFarm was designed as an admin panel which would allow you to control and monitor several Nostale accounts simultaneously, directly from a centralized interface. The goal was to manage connected accounts with customizable “jobs,” each defining specific automated behaviors.
Application Architecture
The application is split into multiple service layers to organize features and responsibilities:
Service Layer 1
CaptchaSrv
: Stores the Gameforge captcha and allows users to submit solutions.CountrySrv
: Manages supported countries and their flags.IdentitySrv
: Handles the identification required to connect to Gameforge accounts (blackbox).PluginSrv
: Manages user control plugins for the client.ProviderAuthSrv
: Handles connecting, creating, and deleting Gameforge accounts.ProviderSrv
: Generates Gameforge authentication tokens required for Nostale login.
Service Layer 2
ClientSrv (IClient)
: Handles clientless control of an individual Nostale account.FarmSrv (IFarm)
: Manages multipleIClient
instances via user-supplied control plugins.
Automation: Plugins & State Machines
NosFarm leverages the Nodify library to build a flexible StateMachine for controlling each client through a system of pluggable “nodes.”
Example Plugins
DefaultNodesPlugin
: Provides essential nodes likeEntryPoint
,WorldSelection
, andEndpoint
.WalkPlugin
: Contains theWalk
node (not implemented yet).
These plugins allow users to craft decision trees that automate complex behaviors:
- EntryPoint manages the Nostale account login.
- WorldSelection connects an account to a server and a specific channel.
Project Status and Drawbacks
NosFarm is currently abandoned due to technical limitations and changing priorities:
- Hardcoded Paths: There are several file paths (database, plugins directory, logs, etc.) that must be adapted for the project to work on a new environment.
- Incomplete Features: Some plugins or nodes, like
Walk
, remain unimplemented.
Conclusion
The ultimate goal of NosFarm was to enable centralized, automated, and simultaneous management of multiple Nostale accounts, with every account running a dedicated “job” describing its behavior.
Even though the project is on hold, I believe it provides a valuable base for those interested in game automation or multi-account management systems. Its modular approach and early implementation concepts could serve as inspiration or foundation for similar projects.
Feel free to contribute or ask questions on the GitHub repository!