[crossfire] Moving server towards a modularized system?

Mark Wedel mwedel at sonic.net
Sat Jan 28 22:42:04 CST 2006


Brendan Lally wrote:

> the map command and map1 commands (map1a could be used exclusively)
> the item1 command (the C clients have long since used item2)
> spell conversion from the old spell system
> support for the old skill system.
> support for oldsocket mode (pippijn recently made a textmode parser
> using the modern packet structure, oldsocketmode is a hack that could
> be retired completely)
> doubtless there are more that I haven't thought of.

  Note that removing the old protocol commands is probably a good thing.  I 
don't necessarily know we need to wait for a major version number (2.0) to do it.

  It could be done sooner - the server would need some code to detect minimum 
version the client can have (based on the cs/sc version as well as setup 
commands), and if the client doesn't meet it, it could print a message to the 
client like:

  Your client is too old to play on this server.  Download the latest client 
from .... if you want to play on this server

  I don't think that would be too terrible.

  That said, I don't think much of that code is causing too much confusion/cruft 
- I think in the most part, the functions are pretty well defined.

  The stuff I'm more concerned about is code you look at and scratch your head 
and say 'what the heck is that for'.  Yet if you remove it, you then find out 
that some maps break or whatever.

  That is the stuff that should be cleaned up - the problem is that the process 
is basically:

Remove the odd code
Run on somewhat well used server and see what problems are reported (if you know 
what stuff it will break, you could fix it yourself)
Update the maps/objects, repeat

  The issue here is that this means that for some time period, there is a server 
with likely issues, just not known exactly what those would be.




More information about the crossfire mailing list