![](https://previews.dropbox.com/p/thumb/ABg8xoONCTW0-9RJg95m6Zk0cZJ2DXNubaq7VKo_L91Jn2wKJFoMs6vzsFRuGArsT6x3d7qYm_cMLKjMWnSIyc3D6dWO1bRNfXq63xLCpjYPcrbFU7jb6zHgnltaXwzAz2mxFYRshifsB-wtK_OQNXN7IQiXtWc2WY5RoaMIu4Gtug9BnKwzcdc5w3MMD93vjW5t6P4BGsKb2GOMbQwrvQD2bJxNIVMbDja0SD3I6cTC_fRK7WOe2StqA-yp0TeXcIzdq8ql5qEsrncB4Un1jQMCRhUsUgBLKHr87JOQZHwLpp3UAjALq1_TROv0K5ujAdg7AACCP8GODAgLkznvFbeGQLiHPyOUH1CNznHnX-4gsE3r2xx-vHr8UHl-HlVXasw/p.png)
As you might know, FtA uses own engine, that is a fork from OpenXcom Extended repository.
Two years ago I decided to develop my own fork because the goals of my project are different from those of OXCE.
The main value for the FtA project is to provide a completely new gameplay experience within a classic game. In terms of visuals, I'm doing my best to make it seem like my game is some kind of DLC (in the modern sense) to the original game. It would be ideal if a person who hasn't played the original game couldn't tell the difference between the content of the original game and the new one. As for new features - I don't want to stifle source code changes by supporting backward compatibility for other mods.
From a modder's point of view, my engine only differs from OXCE because of the new rollset properties. Although I don't strictly adhere to the doctrine of minimizing unmodified changes compared to vanilla as OXCE developers do, when run with default settings FtA engine is compatible with all OXC/OXCE mods (as far as I know).
All incompatibilities and the most significant features are protected by mod's base property `ftaGame: true` (default false). Turning on this property opens Pandora's Box, implementing new logic and most mechanics. Some properties start working differently than in OXC/OXCE. I maintain detailed documentation on the project, you can find it on engine repository wiki
https://github.com/723Studio/OpenXcom_FTA/wikiThere, I highlight every case of non-standard behavior with value `ftaGame: true`.
Not all new mechanics are blocked by this property. Additionally, I try to regularly merge with new changes in OXCE, making edits when incompatibilities arise (each time praising Yankes's ongoing refactoring crusade, rejoicing at every change in how existing methods work). So far I've been able to implement all the new features from OXCE, but I can't 100% guarantee that this will continue in the future.
So if you for some reason would like to use my engine for your mod - I'm not against it at all, but please note - I'm developing this engine for my project only, other goals will be secondary for me. If you would like to suggest that I create a new feature, you would need to explain to me why I need this feature in FtA and not in your mod.
Also, I'm not very willing to implement general functionality. For example, I developed a mechanic for reinforcements, and then 6 months later a similar feature appeared in OXCE. Now I have to maintain two solutions at the same time, because they had fundamentally different solutions on a fundamental level, and the OXCE solution didn't work for me. The same thing happened with VIP, now I have two types of VIP in my engine, which have very similar names but work very differently...
Although only about 60-70% of what I had in mind is realized, I am proud of the progress I made over these few years (because I started to change the engine code without knowing how to program at all). I want to say a huge thanks to everyone who has supported and helped me - Yankes, SupSuper, Meridian, Warboy and Ohartenstein, as well as to the guys who are directly involved in the development - Buscher, PedroTerzero, Isotop and Drosan. You rock!