I managed to stop the client crashing when using a server running on win 98/ME by writing some functions to do the drawing with try catches round them, then converting all the

g.DrawEllipse(..), g.DrawLine(...)
to
DrawEllipse(...), DrawLine(...)
etc

- It stops the crashes but the real problem is that the server sends invalid mob + item packets when running on 98. It normally only happens to me when i zone, but apparently it happens to others more regularly.

- you get packets with mob locations like x=1.3x10exp38, y=-3.8x10exp27, which crashes the client when running on either 98 or xp.