Sometime after July 4th we expect to have the Elemental modding beta. Modding isn’t something that we plan to work X weeks on and then finish. Rather, the modding budget involves full time Stardock developers assigned to it for the next 18 months.
The modding beta will comprise making available the core tools that modding will need. Namely:
This, however, is only phase 1 of modding. Our current strategy for modding will be to work with active modders to see what sorts of things they need us to expose to modding that we haven’t thought of.
The way things will be exposed (as previously mentioned) will be via Python and XML. It will be through Python and XML that players will be able to make their own AI, change the economics and balance and eventually create their own games.
I’ve mentioned in past that I plan to take time off after Elemental ships to focus on modding on my own time. I plan to use Elemental to make other games that I’d give away to others to help build up the mod ecosystem and help learn first hand what sorts of engine APIs need to be exposed. Temple of Apshai and an Ultima IV-style game are things that would be on my list.
The above is a video of Ultima IV. I am no artist so I would probably stick with that “style” of graphics.
I would imagine other modders would use Elemental to make a literal Master of Magic style remake or what have you.
Is Modding hard?
It depends on how much you want to do. The key tools are included with Elemental. The ability to make a map/level and then load it from your mod and load additional maps/levels in your mod and go back makes it relatively easy for someone to make “dungeons” or have cities be a simple icon that when they go into expands into a full blown city.
The character edtior is obviously a major part as well since you will want to be able to create people and save them.
If you look in your documents\my games\elemental\units you can see your units right there. There is an icons sub directory where the art for your unit is generated as a .PNG.
This unit is one I made and is just saved as a .PNG that you can use.
And of course, the item and building editors are very important since you’ll want to create your treasures and weapons and rings and potions and what not along with your castles and shops and whatever else.
How does Python and XML fit in?
We picked Python because it’s the modern-age version of BASIC. When my generation learned programming, we did it in BASIC. Nowadays, it’s ridiculous how much work it takes to get up and going with programming. I tried to get my son into programming and quickly realized that it’s far too much work to do anything.
With Python you get a very easy interpretative language. Easy to learn. By exposing APIs from Kumquat (our game engine that includes the 3D graphics rendering) people can quickly put “stuff” on the map.
Want to make a mod that’s a new game? You would create your guys with the character engine, the level with the map editor and then use Python to load up the guy and pick which animation you want and run him around based on mouse or keyboard input (all provided by Kumquat).
Our style of XML formatting is kind of old school and we admit it. We use it not for programming but for data structures.
If you look in games\data\English you can see how data driven things are (basically everything is stored in XML, no binaries).
In the current betas, there’s no modding allowed because we stream the data from our servers so that we can constantly tweak them without requiring a download. This will be taken OUT of the final version of the game since we don’t want to require an Internet connection to play the game. But during the beta, it’s a big time saver for us.
Post Release
During the modding beta, we’ll be selecting promising mod projects and assigning development resources to exposing Kumquat APIs (written in C++) to Python so that modders can do interesting things with them. We think it makes more sense to adapt ourselves to the needs of the modders than for modders to have to adapt to us.
Are there any limitations to the HKB format that we'll need to know about? I think you've said somewhere there's no cap on the number of polygons.
You have the converter scheduled for a release sometime later, but I wonder if we could persuade you to release it early, unsupported, with the disclaimer that it may not be the final version. Maybe for beta three?
From all the modmaking I've done, asset creation has always taken the longest - it would be nice for us to get a headstart.
So... One could say that after July 4th, we will be creating content independently of Stardock. *duh duhn chh*
Don't suppose we can get it a bit before July 4th so we can start modding during the long weekend eh?
This is great, I can't wait for this. Gonna try my hand at a warlords mod and see how i do.
The key date for us is Beta 3. Beta 5 is scheduled around 6 weeks after the start of Beta 3.
Beta 3 is when the actual game comes together. Beta 4 is when we add tactical battles (during which time we will continue to be enhancing the game). By the time Beta 5 hits, the main game has to start being pretty good.
Modding is something I need to learn to do, but I would love to have the ability to recreate Masters of Magic, or as ABOMB11 commented, a classic Warlords mod.
Thank you!
C.T.
@Zonr_0:
Will Elemental use Python 2.6.5? Or 3.1.2 (or whatever version of 3 is current at the time of release)?
The current python .dll for the game is v2.6.2
I doubt it will happen, but I'm hoping they migrate to the 3.1.x line. It's the version I'm reading about now and the differences appear to be significant enough that I'm going to get confused.
So then I can assume that we will continue to have a vast amount of place-holders and plot-holes until the commencement of Beta-3?
Or can we start to analyze balance from a realistic perspective (meaning there has been a Dev-oriented push in the direction of replacing place-holders with game play) some-time during Beta2?
I wouldn't expect balance until the end of Beta 4....
Meh ... I didn't say it needed to be "shippable" balance, merely a decent attempt at game play, with all features in place (other than the extraneous ones to be added later with patches).
I think I was largely answered on another thread ... that there will be some push in the direction of game play during Beta 2, yet true strategic balance will not probably be addressed until Beta 3, at which point there will also be all manner of searching for graphical bugs I'm sure.
During Beta4, certainly, there will be a whole new level of balance, the tactical kind. It is here that many larger parts of the strategic balance will be re-written in order to make the tactical balance make sense (most likely) .... nonetheless, its easier to get from point Bad to point Awesome if you know what you are starting with ... additionally if you already have a system in place by the time you reach the tactical beta, redrawing the strategic scene will be easier because we already have some idea of where the goals are. I suppose there is the alternative argument that the Tactical Balance should in turn build the strategic balance from scratch ... although I would rather assume that it is easier to rebuild the strategy of empire-building once the dynamic of tactical battles is discovered, rather than basing the balance of an empire builder-from the very start- on the tactical battle. Indeed, how can we know what we truly expect from our tactical battles if we do not have at least some idea as to how the empire will be built.
I also find it interesting that Death is Empire and Life is Kingdom (or good and evil). It is my assumption that in common fantasy the Kingdom is supposed to be the One sacrificing for the Many, while the Empire is the many sacrificing themselves for the good of the One. While in history and reality it might not perfectly corrolate, in fantasy it certainly seems to. Thus, if I am correct in my original assumption about fantasy Kingdoms (people-centric) vs fantasy Empires (emperor-centric) ... then Elemental seems to follow roughly the same definition of good and evil as FFH2 does ... assuming that Death is "Evil" and Life is "Good."
If the Fallen races/et al are cool enough, then I will likely be one of the first to create a custom Fallen Kingdom. Much like Pariden, in the sense of out-cast, only much, much more so in terms of hardship from fellow Kingdoms.
I was sure I had a point here ... ah yes! I believe that, from what I have heard, game play will begin an introduction in Beta 2, recieve a giant kick in the pants (with many changes) in Beta 3, be cut in half and rebuilt twice-over in Beta 4, and then by the end of Beta 4 it should be "shippable" in terms of content. Beta 5 (other than modding) should be largely just fixing bugs and adding parsnips of content here and there.
At least ... assuming I can read minds ... I'm not trying to push my own agendas, merely predict the future of what the goals of future betas will more specifically boil down to.
I have a lot of modding exp with triggers and mapping, not so much with code and most everything else. Is there a place for me in Python?
Yes, but you'll have a lot of things to learn. Not so hard, but some serious programming skills. (OOP is a good thing to learn)
Will the engine be flexible enough to create boardgames ? (like chess, go, or Twilight Imperium 3)
I work on soundtracks and level designs for projects and am not a programmer. That said, I've been exposing myself to code, and Python by far is the most approachable language I've dealt with. It's a lot less hassle (at least on a base level) and easier to understand (for me) than other languages.
How about modding
(7) spells?
and
(8) races?
Will this be possible too?
Yo,Frogboy in the pic with the guy and the sword you also wrote "This unit is one I made and is just saved as a .PNG that you can use." below it well the way hes holding the sword...it looks like the fingers are in the sword or part of the handle it dosent look like the fingers are around the handle like it should be it looks...strange once you see it...Is someone working on making Warcraft 4?Coz Blizz is a bitch and are working on Starcraft 2 and Diablo 3 and a "New" MMORPG i dontthink they will ever make Warcraft 4.Will someone make "Warcraft 4 Return Of the Lich King" or something like that?
Well, like Froggie has said, if you are going to mod Elemental, you won't have to touch Python at all. Everything can be done via editing .xml files [example: adding new races, creatures, equipments etc.], which should be easy, even if you don't have any coding experience. If you would like to change parts of the game mechanics -like creating a new eco system-, you will have to code that in Python.
There's no really good reason to use Python 3 yet. Way too much stuff still doesn't work with it (Boost.Python might be very relevant here). Yeah, I like how it handles strings and bytes, but there's very little you can do in Python 3.1 that you can't do in Python 2.6. Py3k has also benchmarked as substantially slower, which could be a major concern.
Probably the only thing that newbies are going to trip over is the print statement (2.x) vs. function (3.x). Ignore it and use the built-in logging package instead.
Ouch...
Ehhh. Maybe. It uses syntax you can kinda-sorta read if you know what you're doing, but is still going to be incomprehensible to non-programmers. For example, I don't believe you can do this in QBASIC:
foo = map(lambda x: x**x, foo)
I mean, I can write dead-easy-to-understand C++ code if I confine myself to a tiny subset of the language. Likewise, Python certainly isn't lacking powerful features. Don't make me pull out the metaclasses
In the picture of the editor, pasted for ease of explanation, from a way back I know, looks great even then. Add in Brad's post and things become very encouraging indeed, for us non-coders, who still have a love for Modding. Certainly folks will combine various talent pools within projects
What I am most curious about, or would like to see, is the balance(rest of), the probably incomplete, as of that snapshot at the time, of the assets (or a simple listing) of the rest of that "Construction Materials" set not visible due to the position of the slider Bar.
I will assume that we can create and add our own "assets" to any available Construction Set(s) and or create and include "Sets" ourselves?
It would be very cool to be able, for example, to add a small mast and sail to one of those little boats...
Probably jumping ahead a bit, but hey, can't hurt to inquire right?
This might be a good time to learn snake handling. Programming is the thing I'm least terrible at. I've been heavily into Maxscript atm to create a tool for SoaSE so its not going to be fun to switch syntaxs.
Also, lLike Vordrak said, what about spells?
Thats a loaded question.... What do you want the spells to do? If its something similar to another spell than certainly. If it requires new effects, graphics, etc. than thats a lot harder... Even if its a summoning spell, you still need a model for what you summon. Also some spell ideas might require python knowledge simply because they change the rules in a way the engine doesn't know about.
I believe that when Brad said that Python is a very easy interpretative language he was referring to the fact that it is not compiled but interpreted, not the fact that it is easy to read by a normal human. Just my $.02.
Hooray for Python and moddability.
Who knows, how do you edit spells bascailly. Do they have limitations in, say, the number of things you can do with them or is it just like calling a script (and you can do anything you want from there) or more like there is a limited selection of "spell effectors" which can be strung together for complicated spells but can't be extended?
For me something as simple as being able to rename a custom spell, import and past custom icons (or have a way to create them in the editor even better) as well as being able to change the effect with bits and pieces of other existing spells. Example say there is a spell in Elemental called "burning hands" (there is not I know just example) and I wish to change this to a custom spell called "frost touch" if there is options in the editor to change the damage type it does from fire to ice damage then give us a way to change the color of the graphics from flame to frost, also if there is a voice incantation a way to import a custom sound file or use the same one form another standard spell. Also for something a bit more complex (if possible) a way to take bits and parts of one spell and mixing it with another and combining it to make a "combo spell" a sort of hybrid of the existing spells (something tells me this would need Python most likely) also a way to add or subtract how much manna it will take, and if it is using spell books to learn them a way to create owner own in a flexible way so that we can change the look of the book and its rule set (what type of shard it needs what class can use, what level you need to be etc.) but just more thoughts.
Yo,Frogboy
Can you look at thishttps://forums.elementalgame.com/380652 ?its some ideas i got from some strategy games mostly Medival 2 Total war tho still its some ideas i didnt play the beta so some 1 of them could be included
There are many great features available to you once you register, including:
Sign in or Create Account