Bueno tibia esta hecho en C++, usa base de datos ya sea (MySQL o sqlite o postgres), tambien usan lua y anteriormente usaban XML en lugar de base de datos.
Si bien esta hecho para que funcione con DirectX u OpenGl no utiliza el 3D :-\
Pero volviendo al tema.
Puedes hacer tu clase widget text:
Usando eventos, el alto y el ancho de la letra que uses.
O tambien puedes usar alguna otra librería como pygtk o wxpython para hacer el chat y para integrarlo al juego podrías usar hilos. Pero esto haría al juego lento.
Tambien puedes ver ejemplos
aquí para inspirarte.