Frogboy Frogboy

Elemental Modding: Part 2 – New Factions

Elemental Modding: Part 2 – New Factions

During the early betas of Elemental, we let users creation their own factions during the game setup. But over time, we kept getting more and more good ideas on how to make this more sophisticated that it became impractical to foist such a complex system onto the player (the UI would just get crazy).

Moreover, having to UI drive faction creation was resulting in factions that were more or less the same. So we moved this into the area of modding.

Let’s create a new faction. I’m going to create a new file called Froglers.xml and put it into my units directory in documents\my games\elemental

Inside I’m putting this file:

<RaceConfigs>

    <RaceConfig InternalName="Froglers">
        <DisplayName>Frog People</DisplayName>
        <Capital>Ribit</Capital>
        <ShortName>Froglers</ShortName>
        <LeaderName>Frogboy</LeaderName>
        <PopulaceName>Human</PopulaceName>
        <Description>This amphibious race hops on all fours.</Description>
        <Alignment>Good</Alignment>
        <FactionAllegiance>Kingdom</FactionAllegiance>
    <DefaultCityWallSet>CityWalls_Fence</DefaultCityWallSet>
    <NewCityHubType>Outpost</NewCityHubType>
    <CapitalHubType>Outpost</CapitalHubType>
    <!-- Race Stuff -->
    <RaceClassification>Frogs</RaceClassification>
    <RaceDisplayName>Frogs</RaceDisplayName>
    <RaceInternalName>Race_Type_Frogs</RaceInternalName>
    <MaleUnitType>Skath</MaleUnitType>
    <FemaleUnitType>Skath</FemaleUnitType>
    <GenericUnitType_Male>Skath</GenericUnitType_Male>
    <GenericUnitType_Female>Skath</GenericUnitType_Female>
    <TraderUnitType>Skath</TraderUnitType>
    <StartingUnitType>Kingdom_Soldier</StartingUnitType>
    <StartingUnitType>Kingdom_Pioneer</StartingUnitType>
    <ChooseFactionBack>Faction_Background_Altar.png</ChooseFactionBack>
    <UnitScale>1.0</UnitScale>
    <UnitSkinColor>32,255,32</UnitSkinColor>
    <UnitHairColor>155,255,75</UnitHairColor>
    <UnitClothing1Color>120,25,20,255</UnitClothing1Color>
    <UnitClothing2Color>78,60,55,255</UnitClothing2Color>
    <UnitMetalColor>145,145,145,255</UnitMetalColor>
    <BuildingPrimaryColor>165,255,130</BuildingPrimaryColor>
    <BuildingSecondaryColor>75,255,50</BuildingSecondaryColor>
    <BuildingRoofColor>90,255,10</BuildingRoofColor>
    <ZoneOfControlColor>165,255,30</ZoneOfControlColor>
    <TechTree>TechTree_Froglers</TechTree>
    <KnownStartingTech>Frogler_Starts</KnownStartingTech>
    <EnvironmentTerrainType>2</EnvironmentTerrainType>
    <PreferredLogoType>KingdomCrest2</PreferredLogoType>
    <SovereignUnitType>Lord_Relias</SovereignUnitType>
    <Spellbook>LifeSpellbook</Spellbook>
    <A_CoreManaRegeneration>50</A_CoreManaRegeneration>
  </RaceConfig>

</RaceConfigs>

 

Now, if you pop this in it’ll crash. That’s because we have to define some things first:

  1. RaceClassification
  2. RaceInternalName
  3. TechTree
  4. KnownStartingTech

Without those 4 things defined, the game won’t know what to do with this faction.  It is in these 4 things that we ultimately make what is special and unique.

I also cheated in terms of the 3D modeling. I used Skaths as my units. Skaths kind of look like frogs in the game so I figured…

We’ll need to define what Frogs are as a race. And we’ll need to come up with a technology tree for them.

Stay tuned.

302,599 views 98 replies
Reply #51 Top

Quoting VR_IronMana, reply 44


As long as the XML remains available to us, I don't have a dog in the fight, so to speak. However, the tone of the thread seemed to be "down with XML, use UI only" which seems to imply to just remove the xml entirely.

I never understand why people often have a need to put such a strong spin on things. I haven't seen a single person in this whole thread claiming that we should get rid of the XML option. It's absolutely awesome that you can mod the game so easily. But it's not something for the casual gamers. That's what people are saying, not "down with XML". It's really quite reasonable.

Reply #52 Top

Maybe devs could bring back the old way to create factions in the workshop ? So we could have as many crazy numbers we could have.

Reply #53 Top

Like several others, largely agree with MadMagnus.  Also, I'm not much with XML, so lack of a built-in, EASY faction creator lock me out,  at least until I retire and get bored / have time on my hands.

Reply #54 Top

Quoting Malloreon, reply 49
XML is very simple, so you don't have to 'learn a programming language' for it, but I do agree that an XML requirement will make a lot of people refrain from creating custom factions. It also definitely will impact MP - I'd say there definitely needs to be an option to block freeform factions from MP, and there should be a simple in-game editor to just customize a faction (for SP and MP).

As far as I understood for the official hosted MP games from Stardock, only the content released by Stardock is allowed. For private held LAN parties or whatsoever, I think the people should talk to each other :-)

 

BR

Wyl

Reply #55 Top

Quoting MadMagnus, reply 5
Will we be able to do any of this in an editor? In other words, when we created new factions earlier in the beta, we had buttons to click and fields to type in names, graphics, UI, etc.

Will this be incorporated into the toolkit of modding utilities, or do we have to make new races in XML?

Please make this in an editor for those of us who are not programers. Or at least have the editor you had earlier for the basic faction creation and if we want to add more then maybe have an advance area to go to.

Reply #56 Top

Quoting Frogboy, reply 6
Yes. In an XML editor.

Is that editor coming with the game or is it some 3rd party software we have to find on the internet?

Reply #57 Top

Quoting dragoaskani, reply 26



Quoting Sir_Linque,
reply 25
I too am worried about not having any limitations when creating a new race/faction with XML. It feels like cheating when you don't have any points restrictions and can do whatever you want.

If that is the only way to create a new faction, I will probably have to skip custom faction creation myself (which sucks) and wait for the modding community to post a package of balanced new factions. Meanwhile I'll just have to play with the predesigned ones. This is something I NEVER do in 4x games, I always create my own race in GalCiv etc.


 

Let me know when you create your own "races" within the UI of Civ 4 and Civ 5. KK thx.

What does this have to do with anything?  Yes it does suck that you can't create your own races in Civ4 or Civ5 but you can in GalCiv2 which Stardaock has made it it was very fun to do. I really would like to be able to do this in Elemental without having to take classes in programming. 

KK  thx

Reply #58 Top

Quoting Raven, reply 32



Quoting Wintersong,
reply 16

Quoting Frogboy,
reply 6
Yes. In an XML editor.



He is only saying XML editor and not "also in XML editor". And I haven't read anywhere else "We have moved the faction creation screen to the Workshop".



Do you remember what Frogboy said a while back about about Not getting rid of Content they already had? We did have a UI/Screen for Faction Creation. I'm sure when the full game launches that UI will be in the Editors. That's what I'm talking about. I don't see Frogboy and the Team throwing away that entire screen just because they're doing things in XML as well. They'll put it in somewhere and something tells me when we see it that it's going to be Much Improved from the last iteration of the "Faction Creator" that we saw a few betas ago.

Think about it my friends. They aren't going to take a step backwards in giving tools to the players. Frogboy doesn't waste money on stuff not to use it or improve upon it and they know a lot of people don't even want to have to deal with XML. They won't get rid of the Faction Creator we had entirely, they'll make it better.

 

I hope your right. Now if only we can get Frogboy to tell us if you are.

Reply #59 Top

Quoting VR_IronMana, reply 37
If the point-based faction creator is the only option, I wouldn't like that any more than people now liking xml as the only option.

If that's the way MP needs to work - fine, but if I play SP game, I don't want using the points to be the only way to make factions.

Has nothing to do with hacking in uber swords, imo. It has to do with how many options and what not would be available for modding factions. If I want to create an "exotic" faction but such options aren't available in the point-creator, I should just be oh well too bad in a game that's mod friendly?

All that has to be done is put in the point based editor however have an option in the rditor to tun the points off for the making of any fation you want either super uber or super gimped. Now when you go to a Multiplayer game and used that faction/race a warning of some sort should come up informing everyone that the race is not using the point system.

In MP games you should have a option that will prevent these factons/race from being played if you don't want to play against them.

Reply #60 Top

Quoting Bellack, reply 56



Quoting Frogboy,
reply 6
Yes. In an XML editor.



Is that editor coming with the game or is it some 3rd party software we have to find on the internet?

You don't need any sort of special editor (although you can use one if you want). You can open and edit them with Notepad/Wordpad. If you want something fancier, there are tons of free programs on the internet. Notepad++, Eclipse, Visual Studio, etc.

Reply #61 Top

Quoting Tomgi, reply 50
I've missed the faction/kingdom/empire/whatever creator in the beta ever since it was removed. I'm also not happy with the sovereign editor as it is now because I can't my sovereign as powerful as the premade ones. At least I can't duplicate Lord Markinn, not enough points. But I guess that will fixed/balanced by release so I'm not really worried about it.

Everyone's favorite sorceress (Procipinee) is also too powerful compared to the starting ones.  I'm glad someone else noticed this.

On the subject of factions, I agree with what everyone else in this thread's been saying: a primitive faction editor in-game or in-workshop seems in order, at least.  I can figure out the XML easily enough, with a bit of documentation, and I'm no stranger to modding, but I'd prefer to have things easily available in-game.  Also, although I can't imagine Elemental will attract many "casual" players, what about the people who want to play custom factions but don't want to mod it?  In many games, naturally, that's impossible, but GalCiv2, for instance, had a very reasonable race editor in-game.

Reply #62 Top

Quoting VR_IronMana, reply 44



Quoting awuffleablehedgie,
reply 42



I would assume point-based would be the in-game UI (assuming there is one...), or there could be a checkbox that controls whether or not the faction is restricted to a certain amount of points or subsets of abilities (call it "multiplayer compatible"). There would have be a form of verification, of course. 




That would make sense. Perhaps the verification would be that when the game loads the faction, it checks the options and makes sure it's under - and if not, the user see that his faction is "in the red" and will have to adjust it.




Quoting awuffleablehedgie,
reply 42



XML could always be written by hand and used in mods, assuming it was unchecked for single player. I'm not against the concept of deliberate overpowered factions being created for either single player comp stomps (or to play against the AI for the challenge) or when creating a completely new mod with a totally different aim at balance.




 

As long as the XML remains available to us, I don't have a dog in the fight, so to speak. However, the tone of the thread seemed to be "down with XML, use UI only" which seems to imply to just remove the xml entirely.


I don't want Elemental to be one of those games where modders have to rely on someone to crack open the files so that we can actually do some modding - otherwise, everything is hidden away and confined to whatever options get presented in the in-game UI.


In other words, one of those "we don't MIND modders, but we're not going to make it easy either." games.

 

 

Actully that is not the tone at all. What we are saying is have both. The UI for more simple race/faction creation and the XML for more indepth creation for those that do programming.  And you should be able to use both to create your race/faction if you want.

Reply #63 Top

Stop referring to XML as "programming". It is most certainly not. It's basic text editing with tags to tell you what each "field" does.

Reply #64 Top

Quoting Lord_Agamemnon, reply 61

Quoting Tomgi, reply 50I've missed the faction/kingdom/empire/whatever creator in the beta ever since it was removed. I'm also not happy with the sovereign editor as it is now because I can't my sovereign as powerful as the premade ones. At least I can't duplicate Lord Markinn, not enough points. But I guess that will fixed/balanced by release so I'm not really worried about it.
Everyone's favorite sorceress (Procipinee) is also too powerful compared to the starting ones.  I'm glad someone else noticed this.

On the subject of factions, I agree with what everyone else in this thread's been saying: a primitive faction editor in-game or in-workshop seems in order, at least.  I can figure out the XML easily enough, with a bit of documentation, and I'm no stranger to modding, but I'd prefer to have things easily available in-game.  Also, although I can't imagine Elemental will attract many "casual" players, what about the people who want to play custom factions but don't want to mod it?  In many games, naturally, that's impossible, but GalCiv2, for instance, had a very reasonable race editor in-game.

 

Are you suggesting Procipinee is nerfed? Both boo and hiss to you sir! Her presence and power is to Elemental what Charlie Chalk is to the universe. Absolutely essential.

Reply #65 Top

Quoting Annatar11, reply 63
Stop referring to XML as "programming". It is most certainly not. It's basic text editing with tags to tell you what each "field" does.

See some of us didn't know that which is the point. It looks like programming to me.

Reply #66 Top

Don't be a dick Annatar. If you don't know what XML is it's perfectly reasonable to mistakenly assume XML is a programming language.

Reply #67 Top

Edit: Meh, sorry. Long day at work. My original post sounded a little more hostile than I meant for it. Still, the screenshots/text posted I think makes it fairly clear that it's more or less basic text editing. Quest making is a little more involved because you have objectives and conditions and can stack them on, but still.

Reply #68 Top

Quoting skirby359, reply 39


For me ... Building your own kingdom, with the various 'costs' just as we have with our Sovereign is pretty important.  i don't care that I have a frog looking character, but I am interested making choices between 'combat' and economic styles of play... and tweaking my kingdom to support that.  And I like the program 'enforcing' my choices ... i.e. I only have 50 'points' to spend.

I agree.

Reply #69 Top

I guess XML can look a bit daunting until you get into it. As has been mentioned you don't need special programs to edit it, although some of the free programs will colour-code it for you and make it look nicer.

The structure is really simple.

There is a line at the top that basically just says that the file is XML. Don't worry about this. Just copy it from file to file.

After that it is usually just a series of instructions that start and finish with meaningful information in the middle.The instructions are enclosed around '<' and '>' and when the instruction is to be closed the closing instruction has a '/' at the start of the lettering.

As an example, an XML representation of my morning might be something like:

<newDay>
   <wakeUp>true</wakeUp>
   <getDressed>5 minutes</getDressed>
   <feedCat>Dry food</feedCat>
   <feedDog>Dry Food</feedDog>
   ... etc etc
</newDay>

It allows a lot of freedom and was designed, in fact named, as eXtensible. Meaning made to be extended easily.

Reply #70 Top

I'm working on a faction editor.   Still in the pre-release stages, but hopefully this will help out a few people that are anxious about editing xml.

 

You can see a screenshot here:  https://forums.elementalgame.com/390184

Reply #71 Top

Quoting Annatar11, reply 67
Edit: Meh, sorry. Long day at work. My original post sounded a little more hostile than I meant for it. Still, the screenshots/text posted I think makes it fairly clear that it's more or less basic text editing. Quest making is a little more involved because you have objectives and conditions and can stack them on, but still.

The thing of it is that this text editing still looks very tediuos and not user friendly at all. Plus there seems top be a lot of it and one mistake may tie you up for a while trying to find it.  That is not very fun.

Reply #72 Top

Quoting Annatar11, reply 63
Stop referring to XML as "programming". It is most certainly not. It's basic text editing with tags to tell you what each "field" does.

Not that I want to argue, Anna, but XML Is technically considered a Programming Language. Here's a little history on XML. This is taken from a article called "The XML Programming Language" which can be found here: The XML Programming Language

History

XML, which stands for Extensible Markup Language, is a language similar to HTML used for creating arbitrarily-structured documents and web pages. The language is a filtered version of SGML, Standard Generalized Mark-Up Language, but more suited for web delivery with less overhead common with SGML. Unlike HTML, XML specifies no pre-defined tags. Instead, the semantics of an XML document are defined by the applications that process them.


Significant Language Features

XML files are written in ASCII text, so the information contained within an XML document is exchangeable between otherwise incompatible systems. Although commonly associated with the Internet, XML is not necessarily limited to such. Since it's main objective is the organization of data, data exchange between different systems (within a single company) may be easily implemented by passing XML documents.

The syntax of XML is completely ambiguous and really cannot be standardized. The authors and clients of the documents must determine how their information is to be stored and standardize it amongst themselves. It is a tagged language, much like HTML, however the tags are not pre-defined. Instead, they are created based on the information contained within the tags.

Since it is a text file, it can be viewed in any text editor. In order to view an XML document's structure (especially when it comes to large, repetitive documents), you'll need an XML parser. This parser will read the XML document and display it in an organized fashion creating collapsing and expanding branches. If the XML document is to be viewed over the Internet, the document must first be converted into HTML through XSL. XSL (Extensible Style Language) is similar to HTML's style sheets in that it provides a set of rules based on the XML document's tags to be converted to HTML.


Areas of Application

XML's biggest area of application is the organization of data within an intranet. Companies who have standardized ways of exchanging information (either from company to client or within the company) will benefit from XML's ambiguously-structured document format.

 

Reply #73 Top

XML can be considered a programming language, but it's a "different kind" of it, which is used to define a data structure, while languages like C++ or Python are used to define a set of instructions to be executed.

Reply #74 Top

[quote from interview]

Eventually we decided to move the faction creator toolset to the mod area. As we made the faction creator richer and richer, we realized this was way too much for the player to deal with at the outset and really slowed down starting the game. The factions have both an allegiance to a kingdom and their specific race, so all of the pre-set factions in the game can be customized and come with their own racial benefits as well. The tool itself, though, was really robust and too much to toss out so we made it fully available for modders. We made each of the campaign’s factions with the creator, so modders have all the tools at their fingertips.

[/quote]

 

Sounds like there will be a faction creation tool as one of the workshop options to me? Maybe it's just not enabled in our version of the beta?

Reply #75 Top

[quote who = Brad from interview]

Eventually we decided to move the faction creator toolset to the mod area. As we made the faction creator richer and richer, we realized this was way too much for the player to deal with at the outset and really slowed down starting the game. The factions have both an allegiance to a kingdom and their specific race, so all of the pre-set factions in the game can be customized and come with their own racial benefits as well. The tool itself, though, was really robust and too much to toss out so we made it fully available for modders. We made each of the campaign’s factions with the creator, so modders have all the tools at their fingertips.

[/quote]

 

Sounds like there will be a faction creation tool as one of the workshop options to me? Maybe it's just not enabled in our version of the beta?