jbb
05-20-2003, 09:57 PM
I'd like to help with the code but don't want to mess with the code code until I understand it all a lot better than I do now.
So I though of a few minor things I could add so I thought I'd post the ideas here to see if people think they are worth the effort. The ideas are something I could do farily quickly without understanding the existing code in detail which would make life easier for users and hopefully to cut down slightly on the number of FAQs asked in the forum?
1. There are a lot of posts that people's servers won't run properly which are generally down to things not being set up properly. So how about getting "world" to make a whole lot of checks when it starts up and output better messages. Things like checking that the database is accessable, that it contains at least basic item data and zonepoints etc. Getting "zone" to check that the ip addresses it is given actually connect to a world server.
I know it does a lot of these already deeper in the code, and does output messages but it tends to stumble on anyway giving out confusing error messages to say the least.
It might be an idea to check a lot of things *on startup* simply so that it can output a specific error message and shutdown. Should reduce the number of posts in the support forum anyway.
2. How about an optional "gui" frontend program which runs the world and zone servers up and manages them and displays their output in a window or something so that it all looks like one program. Maybe using wxWindows or python to make it cross platform. It could filter messages (see 3) and provide a menu using the telnet interface perhaps to shut down the server and so on.
3. Improved messages. At the moment it's impossible to distinguish between a fatal error and a debug print in the output from the programs. How about prefixing all the output strings with a severity code such as [F] for fatal errors, [E] for errors, [W] for warnings, [I] for information, [T] for trace, [D] for debug. That way a frontend program like the one in (2) can choose to filter out the trace and debug messages and to hilight any errors and warnings in a different colour.
Anyway, these are things which look like I could do fairly quickly and which would make it all a bit easier to use and administer the program.
Comments?
So I though of a few minor things I could add so I thought I'd post the ideas here to see if people think they are worth the effort. The ideas are something I could do farily quickly without understanding the existing code in detail which would make life easier for users and hopefully to cut down slightly on the number of FAQs asked in the forum?
1. There are a lot of posts that people's servers won't run properly which are generally down to things not being set up properly. So how about getting "world" to make a whole lot of checks when it starts up and output better messages. Things like checking that the database is accessable, that it contains at least basic item data and zonepoints etc. Getting "zone" to check that the ip addresses it is given actually connect to a world server.
I know it does a lot of these already deeper in the code, and does output messages but it tends to stumble on anyway giving out confusing error messages to say the least.
It might be an idea to check a lot of things *on startup* simply so that it can output a specific error message and shutdown. Should reduce the number of posts in the support forum anyway.
2. How about an optional "gui" frontend program which runs the world and zone servers up and manages them and displays their output in a window or something so that it all looks like one program. Maybe using wxWindows or python to make it cross platform. It could filter messages (see 3) and provide a menu using the telnet interface perhaps to shut down the server and so on.
3. Improved messages. At the moment it's impossible to distinguish between a fatal error and a debug print in the output from the programs. How about prefixing all the output strings with a severity code such as [F] for fatal errors, [E] for errors, [W] for warnings, [I] for information, [T] for trace, [D] for debug. That way a frontend program like the one in (2) can choose to filter out the trace and debug messages and to hilight any errors and warnings in a different colour.
Anyway, these are things which look like I could do fairly quickly and which would make it all a bit easier to use and administer the program.
Comments?