What parts of the engine will be exposed via APIs?

Salutations fellow elements!

Now, I would have posted this in the mod forum, only I'm pretty sure that doesn't get a whole lot of dev attention. Basically, I want to know what parts of the Elemental engine will be exposed via APIs? We already know there's an AI API in the works which is always nice, but those of us who want to take an axe to the core mechanics of the game know that AI must be built around the rules of the game.

Personally I'd like to get my hands on a tactical battle API, I've already got nearly 40 pages on what I'd do if I caught that baby alone. Be it modifying damage or hit calculations, modifying the way morale is handled, changing the way the battles themselves play out, I've got it scoped!

Obviously I would love to get my hands on every API possible and enact wide sweeping reforms throughout the land, until the millions of bits that make up elemental worship me as lord and master! But there's also another point. See, I'm a diehard C++ programmer and prefer it, despite its flaws, to any other language out there, so what I'm asking is could you maybe release certain APIs, which would normally be too time critical for python, as C++ APIs?

Anyhow, enough of my megalomaniacal ravings, I'm going back to my box, ciao!

Fiachna

3,845 views 4 replies
Reply #1 Top

I asked about this in one of Brad's posts about the AI, but naturally it got lost in the sea of replies.

The mods would be so much better and the game improved so much more, if the core game C++ code was available. Civ 4 got it right by releasing the code early on... that's why the mods for it are so good. Not only are there a plethora of great mods, the community fixed most of the bugs early on so the core game became rock solid pretty quickly. It was pretty much an open source project.

I was particularly interested in the AI code. Civ has a lot of the APIs exposed to Python, but even then, you can't do much more than tinker in Python, plus it's slow. If you want to do any significant improvements to the core AI, or create a mod that actually adds game changing elements (say add Hearts of Iron style tech research), you can only do that by changing the way the core AI works.

Reply #2 Top

You are welcome in the mods section anytime and we try to keep it queit that we get a lot more attention there than people realize. It would be nice to get a bonified C++ junky in our ranks. That said, the AI is still under heavy developement and is expectedly very fluid at the moment. I would hold off on getting this kind of data untill we have a firmer foundation of tactical and magic mechanics in front of us.

I know it is frustrating, but think about using the stock editors and the xml data modders have been discussing until we get the full function list by the end of the week. This just happens to be a special week for modders.

As you are wanting to change core gameplay mechanics, what sort of damage/tactical system had you in mind? :d

Reply #3 Top

Thanks for the replies guys,

@falconne2

I followed the development of elemental fairly closely, despite not participating in the beta, and got the impression that Stardock had similar plans for elemental.

@seanw3

I'll be turning up in the mods section once I have some time out of uni to actually get my hands dirty, but when I get said time I'll be tearing into the xml, rebuilding a lot of the artistic assets and generally aiming for a far more... epic feel to the game. As for the tactical system I want to implement, ideally I'd like to have a system like the Total War series (and I think I could mock this up if true continuous battles are beyond the scope of the engine) but with the tactical pausing that many of the Bioware RPGs have. Of course once I get the mechanics in place and the AI in working order for such a system only the player would need to pause (due to the AIs inherent ability to think far quicker than a human). Another thing I'd like to do is make the entire thing less grid based, more fluid, right now its like a game of chess, whereas I'd prefer something where rather than movement points per turn, it would simply take x amount of time to reach a destination, modified by unit speed and terrain penalties of course.

Reply #4 Top

Quoting Fiachna, reply 3

I followed the development of elemental fairly closely, despite not participating in the beta, and got the impression that Stardock had similar plans for elemental.
End of Fiachna's quote

Has there been any follow up since the early days indicating they still had that in mind? So far I haven't seen any indication that anything more than a Python API will be provided for gameplay modding. Most of the best posts in the Ideas section cannot really be implemented properly without access to the C++. I'm looking forward to a time when we can see some significant gameplay changes being experimented with, instead of just talked about.