A private server, or server emulator, is a program which emulates the official RuneScape server allowing players to login onto non-official servers using modified clients. Many private servers allow players to experience the member-only features for free and gain levels quickly. Some allow items and objects to be spawned, and others introduce their own unique features such as custom items, minigames and quests.
The first server
The first person to release a basic private server was wL (also known as winterLove) in 2005. The first released server was written in Java and was extremely basic: it could serve one client at a time and it was a mere proof of concept. The invisible player would fly around the world and see random items dropped on the ground. Due to this, it is sometimes nicknamed 'flight through RuneScape'.
The server required the 317 client to be patched to disable updating and RSA. To this day, the majority of old engine servers still use the 317 client patched in the same way.
Further developments in 317
Daiki (and others?) further developed this initial server to create BlakeScape which added additional features: multiplayer, walking, rendering, inventory, equipment, banking, and a few basic commands and actions. It was based on a thread-per-client model using standard Java I/O. The purpose of these first few servers was to test bots and cheating programs. Therefore, the stability and conventions are often said to be of a poor quality.
MythScape and WhiteScape
After the first server was released, work on more servers began. MythScape, created by Xsnip3rX, added more functionality and basic item and NPC support. WhiteScape, created by WhiteFang, further built upon MythScape and is the foundation of most servers today.
The two branches
At this point, servers split up into two main branches. CheezScape, created by xeroxcheez, and Project 16 were two servers both based on WhiteScape. The majority of servers today are a derivative of either CheezScape, Project 16 or WhiteScape.
Little evidence can now be found for these two branches in current servers, due to the amount of code that is shared between both of them.