Fallen Enchantress–Modding Guide

By on October 5, 2012 2:59:29 PM from JoeUser Forums JoeUser Forums

Frogboy

Join Date 03/2001
+1096

FENewLogo_Transparent_thumb2

Modding Guide

Preliminaries

I’ll be updating this as time goes on. I’ll get turned into its own article eventually with a live version in the modding area of the forums.

  • To use mods, you need to go to the Options dialog and turn on “Use Mods”.
  • Get familiar with this directory:
    • image_thumb1
  • The documents\my games\fallenenchantress\mods directory is read in by the game.

The Tools

On the main menu is the “Workshop”. This is the gateway to the modding tools. The tools we include in game are:

  • Builder’s Forge
  • Cartographer’s Table
  • Particle Cauldron
  • Faction Creator

These tools will be in a perpetual beta as we plan to provide regular updates but we don’t have any plans to encourage casual players to make use of them.

Understanding objects

It will help you if you forget that Fallen Enchantress is a fantasy strategy game. Instead, think of Fallen Enchantress as being a particular “Mod” of a game engine called Kumquat (I didn’t name it so don’t yell at me <g>). We could just as easily have made a Baldur’s Gate style game with it. Or more specifically, YOU could make an Ultima style game. Or a Civilization style game.

image_thumb2

With this understanding, let’s talk about what ties them together: XML

That is, all of these tools do is create .XML files. We use PNG for most graphics (we do use .DDS as well which is another graphics format).

The Builder’s Forge

image

The Builder’s forge is there to create non-mobile objects. For our purposes, we’ll call these “Tiles”. The left mouse button selects and places. You can move the view around with your middle mouse button.

When you save the tile, it is placed in the \documents\my games\fallenenchantress\tiles directory. A tile includes an XML file and a shadow PNG.

A tile, on its own, is just eye candy. It’s what you do with it that matters. That brings us to…

The Map Editor

image

This is what it looks like if you select the cartographer’s table. There are generally 3 things you can make with this.

  1. Custom Maps
  2. Tactical Maps
  3. Stamps

Making a Custom Map

The basics of a custom map are as follows:

  • Make sure there are some starting locations
  • Make sure there are enough decent places for people to settle.

Someone could make a Civilization style map where everyplace is settleable.

Left-click to select a type of tile and right click to set it. You can click and drag some things (like mountains) to go nuts with it.

image
Different types of terrain tiles

image

Different types of objects

image

We don’t really use triggers in the sandbox game. But in the campaign, we use them everywhere. A trigger is specifies a condition in which an event is launched. A typical one would be to have tiles marked as triggered and if hit, it then tells the game to open up a cut scene or start a quest or spawn monsters or something.

image_thumb8

When you save a map, you can specify it not to create any objects for you. If you’ve created the perfect map with every resource placed and every NPC placed just so, then select that option. If you want the game to go ahead and randomly spawn the resources for you, then don’t check that option.

Making a tactical map

A tactical map is a special type of map that the player is sent to under specific circumstances (a tactical battle for instance)

image

Like strategic maps, modders need to tell the map where players are going to start out at with their units. Tactical maps tend to have (as you can see in the screenshot) a lot of blocked tiles. That’s because most of the tiles you see are simply decorations and as such, need to be flagged as untouchable.

One thing to note is that Kumquat doesn’t yet support blocked tiles in terms of weapons. That is, putting up a wall won’t stop a unit’s ranged weapon from going through it. So cosmetically, don’t put up a wall expecting it to block line of sight or weapons. This is something we hope to change in a future version.

Making a tactical map, on its own, won’t buy you much. It has to be connected to something to be used.

With custom maps, players can explicitly load them at the start of the game. But with tactical, they have to either be connected to a triggering event of some kind (like a quest or goodie hut). We don’t currently support generically pulling in unspecified tactical maps.

Making Stamps

Stamps, are used by the random map generator.  We wanted to give modders a way to contribute to the post-release map generation experience. And so stamps were born.

Here’s how they work:

You create a piece of a map.  Maybe it has a starting location on it. Maybe it doesn’t. It can be big or it can be small.

image

You are better off making the stamps fairly small so that they’re more likely to be chosen (huge stamps may have a hard time fitting into a given world).

Once you’re done, choose the magic wand tool. Select a tile and it should select all of them. Then select the selector tool (the arrow tool) and then using the Ctrl key LEFT click on each tile you want to de-select.  This is the fastest/easiest way to do it I’ve found. Specifically, you should generally de-select cliffs and beaches (anything on an ocean) because otherwise, your stamp will only be selected when it’s trying to find an ocean sided stamp and that could be pretty rare.

Once you’ve done that, select “Save Stamp” from the top.

image

 

In the Save Stamp area, you need to choose which type of map it’ll be used with. Tiny, Small, Medium, or Large. This sets the minimum map size that the stamp requires.

The file gets saved to the stamps directory in your \documents\my games\fallenenchantress and the game will pull from it as long as “use mods” is on. Make sure you choose the frequency you want it to show up on.  If it says “no inclusion” it means it won’t use it unless it gets explicitly specified elsewhere (like a spell).  I’d recommend “common” for most stamps.

Testing your stamp

To test your stamp, you’ll need to open it up in a text editor. There will be a tag called “frequency”. Set it to 5 (remember what it was previously). This will make it show on on a given map size for certain. DO NOT share stamps like this.

image

I try not to think about the stamps users are going to share. It’s too disturbing. Winking smile

Up Next…

Goodie Huts

Quests

Monsters

55 Replies
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 2:52:44 PM from Elemental Forums Elemental Forums

I will learn all of this and make a Wheel of Time mod. Well, I'd like to.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 3:07:21 PM from Elemental Forums Elemental Forums

So in a given stamp, I can set specific quest locations and add in props?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 3:50:40 PM from Elemental Forums Elemental Forums

Quoting seanw3,
So in a given stamp, I can set specific quest locations and add in props?

I think so.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 3:51:31 PM from Elemental Forums Elemental Forums

...I am so looking forward to making the world of Elemental map. I love mapmaking.

Thanks!

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:00:46 PM from Elemental Forums Elemental Forums

Brad, can you tell me if the setting that controls being unable to build logging camps and piers after snaking to woods and rivers is something controlled in the moddable xml, or something buried in the code?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:02:04 PM from Elemental Forums Elemental Forums

Quoting seanw3,
So in a given stamp, I can set specific quest locations and add in props?

You can add in props for sure, I have done that in rivermod (my rivers = props )

Brad, WHEN?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:20:45 PM from Elemental Forums Elemental Forums

I could spend years just making stamps. Which is pretty much what I did in WoM. 

 

I think keeping the quest art not only on the map, but as an intrinsic part of the map has alot of potential. Release the shop!!!

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:24:49 PM from Elemental Forums Elemental Forums

Any news about  API for modder ?  Can we hope for that after release ?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:29:44 PM from Elemental Forums Elemental Forums

Quoting CogBurn,
Brad, can you tell me if the setting that controls being unable to build logging camps and piers after snaking to woods and rivers is something controlled in the moddable xml, or something buried in the code?

Well, you could just turn off the option to place improvements.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:30:35 PM from Elemental Forums Elemental Forums

Quoting Heavenfall,

Quoting seanw3, reply 2So in a given stamp, I can set specific quest locations and add in props?

You can add in props for sure, I have done that in rivermod (my rivers = props )

Brad, WHEN?

When what? To start sharing mods? I'd like it to be AFTER v1.0 is out there.

So that we're not having to deal with mods breaking the game.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:36:20 PM from Elemental Forums Elemental Forums

Quoting Frogboy,
Quoting CogBurn, reply 6Brad, can you tell me if the setting that controls being unable to build logging camps and piers after snaking to woods and rivers is something controlled in the moddable xml, or something buried in the code?

Well, you could just turn off the option to place improvements.

You mean the auto-placement?

That's not what I'm talking about. Right now unless you settle a city with the city hub touching a forest or river, you won't be able to build a logging camp or pier if you should happen to snake your city to the point that it touches a river or woods. Manual improvement placement or not. Settling a city that does not immediately touch a forest or river -- but then expanding to the point where you do touch one -- does not 'unlock' the pier/logging improvements.

I was wondering if THAT was something in the xml that could be easily modded, or if it was buried in the code. All I've been able to come up with so far is setting it to be able to build logging camps and piers absolutely everywhere on any sort of terrain whatsoever, but that's not right either, building piers on hills and logging camps in the desert and such.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:39:28 PM from Elemental Forums Elemental Forums

Quoting Frogboy,

Quoting Heavenfall, reply 7
Quoting seanw3, reply 2So in a given stamp, I can set specific quest locations and add in props?

You can add in props for sure, I have done that in rivermod (my rivers = props )

Brad, WHEN?

When what? To start sharing mods? I'd like it to be AFTER v1.0 is out there.

So that we're not having to deal with mods breaking the game.

No, I'm already sharing mods.

I meant when do we get access to the workshop! Although that answer is probably the same, after 1.0?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:40:36 PM from Elemental Forums Elemental Forums

Ahhh. So you're meaning the opposite.  I'm not sure on whether that's a code thing or not.  I'd have to look at the XML.  There's a ton of stuff you can do with XML (including, I believe, have 1 tile cities where improvements are abstract). 

If it is hard coded, I'll see about getting it into XML at some point.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 4:47:03 PM from Elemental Forums Elemental Forums


Terrific, thanks for the attention.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 5:00:56 PM from Elemental Forums Elemental Forums

With custom maps, players can explicitly load them at the start of the game. But with tactical, they have to either be connected to a triggering event of some kind (like a quest or goodie hut). We don’t currently support generically pulling in unspecified tactical maps.

I was thinking: Will it be possible to exchange or create new combat maps for random fights on the overland map.
Say meaby disable the old ones too, incase you want a mod where every combat, each team will be 2 tiles away from the other team (Horrible idea I know, but if someone really wants to mod stuff like that), or the opposite where I create a dusin combat fields with twice the current size so archers have a different agenda. Will I be able to make these dusin combat maps the ones used instead or next to the other random combat tactical maps?

PS. if you don't understand it... Imagine it makes sense, I am slightly worn right now.

Anyways, was just a thought.

Sincerely
~ Dough

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 5:28:03 PM from Elemental Forums Elemental Forums

It makes sense if I accept that dusin is to mean dozen.

Each tile has a list of combat maps linked to it. You could add more to any tile if you wanted. 

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 5:31:01 PM from Elemental Forums Elemental Forums

I have to say, I was certainly prepared to work with the code.  It would be no worse than writing scripts for Oblivion and Morrowind.  But this looks like it will make many things a great deal easier.  Very much looking forward to getting my hand on the finished tools.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 5:34:35 PM from Elemental Forums Elemental Forums

Quoting seanw3,
It makes sense if I accept that dusin is to mean dozen.

Each tile has a list of combat maps like to it. You could add more to any tile if you wanted. 

Arh thats cool, was thinking of making my own bunch of combat maps, was all, (Probably with similar range, so I'm not randomly eaten on turn 1.
But dunno, just sounded a bit like it would be impossible.

Sincerely
~ Kongdej

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 6:22:26 PM from Elemental Forums Elemental Forums

I think having in a built in quest editor would be really good for the community... but I would love to see an easy to use item and champion editor so I don't have to muck about in the xml.

 

I looked through the champions and I can't figure out how to tell what level they will be spawned as... I want to be able to make a champion level 9 instead of level 3... how do i do that?

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 6:24:01 PM from Elemental Forums Elemental Forums

Quoting AlLanMandragoran,
I will learn all of this and make a Wheel of Time mod. Well, I'd like to.

I'm half way through that series of books now and they remind me a lot of Elemental. Excellent read.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 6:27:22 PM from Elemental Forums Elemental Forums

Quoting UmbralAngel,
I looked through the champions and I can't figure out how to tell what level they will be spawned as... I want to be able to make a champion level 9 instead of level 3... how do i do that?

The spawnrating determines hero level in conjunction with the goodiehut they come from.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 6:41:32 PM from Elemental Forums Elemental Forums

Quoting Das123,
Quoting AlLanMandragoran, reply 1I will learn all of this and make a Wheel of Time mod. Well, I'd like to.

I'm half way through that series of books now and they remind me a lot of Elemental. Excellent read.

Oh yeah. Final book of series out in January, finished by Brandon Sanderson on behalf of Robert Jordan (who passed away several years ago). Can't wait.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 6:53:23 PM from Elemental Forums Elemental Forums

Quoting seanw3,
The spawnrating determines hero level in conjunction with the goodiehut they come from.

 Thanks... I guess it makes sense that the level is modified by the spawner in case you decide to adjust the levels globally. 

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 7:41:47 PM from Elemental Forums Elemental Forums

And quests can define a unique level in case that matters.

Reason for Karma (Optional)
Successfully updated karma reason!
October 5, 2012 7:47:08 PM from Elemental Forums Elemental Forums

Quoting AlLanMandragoran,

Quoting Das123, reply 21Quoting AlLanMandragoran, reply 1I will learn all of this and make a Wheel of Time mod. Well, I'd like to.

I'm half way through that series of books now and they remind me a lot of Elemental. Excellent read.

Oh yeah. Final book of series out in January, finished by Brandon Sanderson on behalf of Robert Jordan (who passed away several years ago). Can't wait.

 

I am a much bigger fan than you! I actually have the "Intro" or whatever book that came out before the first book came out. It was the first dozen chapters or so of the first book which was used as a promotion to get people interested in it so that when the first book came out people would buy it. I still have it too. Then from when the first book came out until like the 10th book, I read each and every single book  that was out at the time like 5 times each summer for several years. I also have several books autographed (I met Robert Jordan a couple of times before he died). Also have the pen and paper rpg book which I played quite a few times with friends heh. Oh and the informational book that he made with the white cover that gives tons of info about the lore, countries, etc.

Reason for Karma (Optional)
Successfully updated karma reason!
Stardock Forums v1.0.0.0    #108433  walnut3   Server Load Time: 00:00:00.0000860   Page Render Time: