Some people have been talking about the need for updates on TerraWorld. I agree this is a problem and I would like to look for a solution in this post.
Reason for the lack of client updates
The main big reason is that the client application is written in Macromedia Director and Lingo. This dev tool is very old and stores it's source code for the TerraWorld project in 1 big source file. For security and legacy reasons it's not possible to change this.
This basically means that whenever I change anything about the client there is no record or change-log of what changed. If later on there is a problem with the game because of a previous update it's very hard to trace back all changes since the last working version and correct the problem.
It also means I am unable to let others help change the source code because they could add malicious code or accidentally break something and I would have no way of knowing what they changed. So letting others help to add to the current client would make it impossible to guaranty the safety and security of the client application.
Other reasons for the lack of new items and other features is that it all takes a long time to add and change. The code base is more than 12 years old. It's simply too outdated to work with comfortably.
Some admins have been suggesting to let someone build a system that will allow them to add items dynamically without the need for a new client. While this all sounds good it's an awful lot of work for the person who creates such a system and for me to integrate it into a new client build.
On top of that I think that adding a few new items to TerraWorld won't solve a whole lot in the long run.
I have been talking and thinking about this solution for a long time and I do not think it is feasible enough.
A client rewrite
Currently the only way out that I see is a new client with new source code in a new engine. While this sounds complicated I think it's the best solution if we want updates to TerraWorld in the future.
A few of the advantages to this solution:
- The client will become maintainable again and regular updates will become possible
- The client will be able to run on Windows, Mac, Linux, iPhone or iPad and Android, maybe even inside the browser
- In the long term it will give TerraWorld a new fighting chance to survive
I have had this idea in the past before but it didn't amount to anything because I could not find the help required to build such a thing. I have a full time job and other game projects I am working on so I do not have the time to rebuild the TerraWorld client myself.
So if we really want updates to TerraWorld, we will need to find programmers who will be able to port the current client to the new technology.
As a technology I want to use the Unity3D engine (but use the 2D functionality to keep TerraWorld the same game as it is now) and build a look alike client in that engine. This client should have the same functionality and work the same as the current client. Changing both client and server at the same time won't work as it would be better to create a completely new MMO in that case. (and there are better solutions if we want that)
Time and money
To execute this plan we will need people who can rebuild the main functionality like chat, map rendering, monster movement, item and inventory system, map editor, various dialogs ... in the Unity3D engine (preferably in the C# scripting language).
Because we are a community project that runs on the effort of volunteers (myself included) we have no funds available to pay someone to build this.
Either we find someone who loves TerraWorld and wants to help out for free, or we all put our money together and find someone who can build this.
If you are interested in helping out as a programmer or donator send me a message via the support form.
If enough people are interested we will set up a page for this project and work out the details.