June 20, 2011 -- The Fork Starts

Mycal

Staff member
OK, I've just made a full backup of the current SVN repo and am going to be reorganizing and forking the code off. I've decided that while SlimDX is powerful, it is counter-productive to continue in it in Odyssey and using XNA for BSGame's unnamed project. Therefore, Odyssey will now also be moving fully to XNA. So my next task is to move all client drawing to XNA. Following this, I think I'll have finished up everything on my todo list before beginning the Ody port.

So, I am officially beginning the conversion of the Odyssey code very soon. I will be simplifying the World Editor for use with Odyssey servers and will hopefully have multiple options for working with Odyssey maps and scripts (connecting directly to the server, connecting to the database directly, even offline working and uploading in a full batch at a later time).

I am not promising anything, keep that in mind now! Hopefully, for the first release of the Ody port (I need a new name for this project, maybe Odyssey II?) it will simply be functional enough for local editing only. To accomplish this, I'll simply have an extra table in the database that the server checks every tick stating which map/script has changed and needs to be reloaded. Should be simple enough for initial alpha testing.

Now also keep in mind, any and all releases from this point forward, are dubbed experimental (Alpha) until further notice. I promise no features, no support, and no stability for all releases. I will be doing my best to keep everything as functional as possible while adding features as I go. Since the original code was in VB6 and everything will now be in C#, it won't perfectly translate over. Especially the socket code.

I've only mildly tested the socket code I have now. The server works enough for my packet sniffer written in VB6 to function good enough. I have not tested the client socket code in the slightest, nor is it even remotely done. But I decided it would be more worth my time to go ahead and begin porting and test both sets of code at the same time.
 

Mycal

Staff member
*yawn* 2:00 AM here, lost track of time. Anyway, just finished porting client code to XNA. Only thing I haven't quite converted is the input functions. I'm not yet sure how to handle keyboard input, but shouldn't be too hard.

Though everything is perfectly functional and could technically be left as is, here is the todo list for the remainder of the port:
- Move common drawing helpers to BSGameLib.Drawing (replacing their DX counterparts)
- Explore per tile lighting rather than lightmaps
- Explore content pipeline extensions for our custom file format
- Explore content pipeline extension for loading maps [extremely low priority since it works perfect as is]
- Figure out if midi's can be played (cheaper on size than, wave files [~2MB compared to ~2GB uncompressed]) or look into compression other than XACT (still around ~80MB total).
- Fix keyboard input.

Oh and other devs, all changes have been committed. Have fun, I'm tired, good night! *yawns again*
 
Top