What is RuneSource?
RuneSource is a truly huge undertaking aimed at really revolutionizing the entire Runescape Private Server scene. RuneSource is a server framework being written completely from scratch in order to remove the disease called Winterlove that is plaguing our community. RuneSource is 100% open-source, and is designed to appeal for programmers of all skill levels. This framework is a multi-world, multi-protocol project backed by a powerful engine and networking system that allows this to be possible under a single process. RuneSource is currently under heavy and rapid development.
RuneSource follows a structural design pattern known as Facade. This pattern allows the framework to be very flexible yet robust and powerful at the same time. Making up RuneSource is a layering system that provides different services. Each layer relies on the upper layers to run. Every layer represents an environment where programmers of a certain skill can program.
At the very heart of RuneSource is it's core. The core is responsible for starting up the entire system and managing the drivers during runtime. The core is in complete control of every aspect of the framework.
The core runs a system of drivers that provide all services and together make the framework run smoothly and efficiently. These drivers are the components of the core that perform certain tasks (such as networking) that are essential to engine runtime.
Inside the driver system is a driver called the PlatformDriver, which runs and maintains all of the "platforms" inside RuneSource. A platform, in RuneSource, is a world. These worlds are highly flexible - to the point of being able to support different protocols (317, 508, etc.) and through the power of the PlatformDriver, multiple platforms can be run concurrently inside RuneSource.
Each Platform will have a system of Plugins. Plugins are responsible for running and managing game content - like logging in, NPCs, walking, combat etc. All plugins are run by the PluginDriver, but the PluginDriver responds to different requests for each platform. Every plugin has a set of scripts that perform the actual game content tasks that the plugin is responsible for.
At the very top-level of RuneSource is the scripting system. Each plugin has a set of scripts that perform the actual content actions of that plugin. The scripts are written in the well known scripting language Python. I chose Python because it is a language that is easy to learn, easy to use, and forces the programmer to use neat code (so we don't have another hideous winterlove situation).
Appeals to programmers of all skill levels
This layered design ensures that at the heart of RuneSource is a very powerful core and system of drivers that cannot be messed up by intermediate or novice programmers. As stated before, each layer is an environment that programmers of a certain skill level can develop in. The scripting layer will appeal to the novice programmers as Python is easy to learn and use. The plugin layer will appeal to ascending novice programmers who wish to make their own custom content systems. The platform layer is for intermediate to advanced programmers who would like to customize their game worlds, or even incorporate new worlds with new protocols that can be used. The driver layer is for advanced programmers who wish to add new core components to RuneSource, such as clustering. The very core wont need to be modified or developed any further.
This layered design allows different components of each layer to easily be updated, swapped, removed, or added. This allows the RuneSource framework to be highly flexible and customizable from every aspect of the design. This appeals to people who want to host their own servers using RuneSource, as it is easy to drastically customize your own server with such a flexible framework.
As RuneSource is such a powerful, bright, and new project that appeals to programmers of every skill level, it allows the entire community to participate in the development process. This will provide an exponential growth in the framework development process. Eventually, after the initial stages, I will create a community solely dedicated to the development of RuneSource.
RuneSource is a bright new future for the Runescape Private Server community, as it will be very powerful, flexible, and be developed very rapidly.
Currently, Graham and I are developing RuneSource. We are looking for highly capable programmers to help us create the entire framework that will support the rapid development of the entire community. Currently, the RuneSource framework has come a long way.
Core Driver System Networking Driver Platform Driver Platform System RS317 Platform created (unfinished)
Thanks for taking your time to learn about the Runescape Private Sever revolution that is now taking place.
These details are provided for information only. No information here is legal advice and should not be used as such.