Jump to content
XCOMUFO & Xenocide

A Proposal


guyver6

Recommended Posts

Hi all,

 

First of all sorry for letting you all down with my departure, but back then I thought it's "the next step" (getting a job and moving on). I was wrong as I know it now (The Job for which I left you all is going to change veeeeery soon, like at the end of June), and now I know how much I've lost not being with Xenocide for so long. Anyway, my bad, I'll try to fix as much as I can. The good thing is I now have the needed experience to see what I did wrong with "the Stackless branch" (and no, there ARE some good things I did with that branch ;) ).

 

What I'd like to do, you may ask. Well, I'd like a task from Dteviot. But not an ordinary one, my leader :). But let me explain some things first.

 

I've seen XNA branch, I compiled it, got it to work and well... Well, it rox in few fields, like I can build up a base, I can place facilities, I can smash them if I don't need them, I can call an interceptor to kill that nasty UFO, etc. And I was disappointed about the looks. I'm half-an-artist (playing guitar, knowing how to model simple things in XSI, photography, singing), and my artistic part of soul screamed at what I've seen. Then I decided "heck, I'm a coder too so I could go and do something about it, make a nice earth, etc."...

 

So I started to go deeper into codes of XNA and what I see is bearly a Framework, a "Game Software Factory" as MS should call it, that for sure provides basic mechanisms to go on with creating Tetris clone and makes it easy to use IoC concepts (which in turn makes code look sleek and shiny and easy to understand), thou it does not provide any eye-candyness out-of-the-box. More over, there's no Linux nor Mac support. No MAC? (as an explanation: I've bought myself a MacBook Pro and one of the things I'm gonna try to accomplish this weekend is running C++ xenocide on it :) ).

 

But there is so much good things about XNA! Gosh, working bases, working crafts, actually you can feel the UFO: Enemy Unknown gameplay! And is blazingly fast to code C#. I know something about it. I did C# for the last 8 months. That's amazing language.

 

So, the conclusion of all of this is I want to resurrect C++ code if Dteviot agrees, forget python for a while and build a framework XNA-alike.

 

Here's my proposal: XNA branch implements models and logic, while I'm getting up to speed with C++. What that means? My feelings:

1. Rip out CEGUI Python, since it won't work the Model-View-Controller way (actually what I've learned about MVC and Model-View-Presenter is that the Controller/Presenter part is highest in the hierarchy, which means that's the part that could be easily done in Python, not the UI - View, nor Model)

2. Redesign the Graphics module again, to meet the new requirements (I'm working on them ATM).

3. Isolate MVC parts as they should be.

4. Check if we can do logic/controller part in python, if not, make a framework for it in C++.

5. Check if we can do AI in python, if not, leave python only as a Console commands interpreter.

 

Oh, and I want Xenocide on Mac soon :).

 

More to come soon... Stay tuned (and rant me below).

 

Guyver

 

PS. I see XNA as a prototyping project for Model and game logic. Resharper makes refactoring a breeze, while refactoring C++ can be cumbersome, so if XNA prototype is working and looking good then it can be moved to C++. The good side of this is not having to work heavily on graphics part and engine part of XNA branch, that frees Human Capital of Project Xenocide to design and test gameplay solutions before they get dressed in C++ + Ogre + CEGUI. That's my view of the thing.

Edited by guyver6
Link to comment
Share on other sites

×
×
  • Create New...