Project Exeter
Project Exeter is a client-server remake of one of my my favourite CRPGs, Ultima VI - The false Prophet.
The game uses the (now deprecated) Managed Direct X 1.1 (MDX) API for rendering. (An earlier version of the project used SDL_Net). Since MDX was deprecated a while back, I am considering to port the graphics engine over to either SlimMDX or XNA.
Note: This is a personal pet project of mine for educational purposes - whenever I want to learn about a new programming language or API (in this case it was DirectX) I end up remaking parts of Ultima VI with it. I have done this about 4 times now (Turbo Pascal, Visual Basic and GDI,C#/.NET 1.1 and SDL, C#/.NET 2.0/MDX). I have no intention of ever releasing the result to the public, sorry. 1)
Implemented Features
Client
- DirectX 9 3D accelerated graphics engine.
- Rendering the gameworld from the U6 resources (tiles / chunks)
- Animated creatures and objects (tile animations)
- Replacement for the orginal game's palette cycling (implemented through tile cycling)
- Moving cloudlayer.
- Stepless zooming in and out of the gameworld.
- Day/night cycle (implemented through shaders)
- Animated player avatar
- Networking Layer
- Chat
Server
- Simplistic login and authentication
- Networking Layer (TCP)
- Main AI Loop
- Player and object database (MySql)
- World database built on startup from Ultima VI's resources.
- Zone Server (1 for each level of Ultima VI's world)
- Server Scripting (C#)
- Very rough NPC AI (yay, we can animate).
