AI is one of those fields which it would be great to have some improvement in, but there seems to be a black hole buried somewhere in there.
I love AI, but i don't think I'm actually as good as it would need to do really better AI than actual one. Maybe in one year after my AI class and a lot of books in my head !

I also love game programming in general, and that's why i want to take part of the project. I also love Science Fiction, and particularly Space Opera !

I think that a bigger problem is that some sections of the code are just really awkward code-wise...
Yes, some parts of the code are.... Not reader friendly. But of course backward compatibility must be saved. Maybe, the code should be reworked...
At least some parts of it. It need to be modularized ; maybe, a better interface, a lot less monolithic and really more scripting-efficient, should be implemented and the actual code encapsulated inside and no more changes (just minor) should be done on it.
This would allow new module done, not necessarily from scratch, for example physic module with Newtonian physics, or AI module that could be... just readable, it would be a great change !

If this if done, I think (and I of course could be wrong) that Boost (at least the TR1 implementation part) could be a great help. Allowing staticaly-sized array, witch is a lot less error prone than C array, while having 100% of it's speed, for example.
Also, adding Boost to the project is not really a problem since it don't need any compilation ! It's 97% (yes, some part of it that are useless here) done with template.
I'm not totally objective since I really love C++, and I don't really understand why people continue using C.

There is also another thing in the actual game (FS2_open 3.6.9 build ; haven't looked through the code) that astonish me : every interaction with the player is ASCII and QWERTY based ! You have understood, I'm not English, and my keyboard isn't QWERTY. It's in my mind one of the most important thing that have to be done to make it more an engine than FS2 improvements. The player have to be able to have accentuated letters in his name, and see an A and not a Q (for an AZERTY keyboard) in the control selection while actually want the A key on his keyboard.
I've never done anything related to internationalization through, so I don't know how it could be done.
For scripting, sorry WMCoolmon, haven't seen your work before. It seem really powerfull and very well built !

What are you trying to do?
I'm actually trying to understand the whole engine. And it's a hard work... I don't really know where to beggin, so I just jump from a file to another, without really understanding the ins and outs ; without really understanding anything in fact that's related to data flow. C programs that long are a pain to read.
I've found some indentation inconsistencies through the code (HEAD branch) and it don't simplify the job. I also have some compilations error that I don't know how to solve : some VFX_* constants in swff_lib.cpp that are don't known, and an overload to CreateLuaState in lua.cpp that isn't known also.
I'll continue to read, but if there is somewhere I should really look, please tell me !

EDIT : my message was written and post before i saw WMCoolmon's one.
If I, a day (don't know how to say that in English, sorry), understand the engine, I'm ok to try the BIG work of encapsulating actual code, maybe rewrite it in C++ fashion some parts, before beginning another. It will improve my programmation skills and that would not be lost time !
