Does Mod Support Work?

Hey guys, so one of the new features in gold edition is rudimentary mod support, but it’s not been thoroughly tested and I’d like to get some feedback as to whether it actually works or not!

The basics are this: on the save slot screen, click the “M” button, pick a name for your mod, and then export as much or as little data as you want from the game. Then, go change that data and graphics to your hearts content. Then, click the “M” button, select “load mod” and choose the mod folder you just created. The game will reload, using those data and graphics for the game.

If a file or graphic is referenced but not found, it will default to the internal one. So if your mod consists of a single .png file of a new revenant spritesheet, the entire game will be exactly the same but the revenant enemy will look different, for instance.

I have currently provided no documentation other than comments in the XML file (assuming that those even come through with the file export), and I’d like to fix that eventually.

Does every aspect of mod support work? Can you change levels as well as data and graphics? Can you move things around the overworld? Do things basically make sense?

One thing we don’t have support for yet is custom audio, but I’ll be working on this in the future. Let me know if you find any glitches here - this is such a huge feature I kind of feel like we won’t know what works 100% and what needs patching until some of us sit down and try to build some mods.

Are we supposed to be able to modify maps? If so, we really really need advice on how to do it.

If I understand it correctly, I just create a graphics file using only a few colours of my choice, and then in the .xml say that when a pixel has RGB XYZ, it’s tile type foo, when it has RGB ABC, it’s the red spawn etc.

Map size is a given, 15x15 - and if the picture’s width is a multiple of 15, I can (or have to?) specify which layer should the definition apply to?
But what the heck does doodad do?

In other words, I’m afraid that successful modding will need a good set of instructions, because in many places we can’t be sure that we do the right thing. (Last time I tried modding, it was with unique weapon effects and that wasn’t exactly easy to get right, too).

Yeah, it’s … pretty crazy at the moment. Documentation is sorely needed. I’ll try to get a guide up over the next few weeks.

Short answer: A single, square image lets you create a map and let the engine “figure out” how to layer everything. If you make it wider than 15 pixels it will use the extra layers as specific, “No, make it look like THIS” layers for the corresponding tileset.

In other words, it’s a hacked together mess! Obviously the result of lots of planning forethought rather than piling things on as we went along :stuck_out_tongue:

And as for “doodads” - that’s the random little bits of variable imagery that is sometimes drawn on a tile layer. That pixel color will count as if it were actually another color for tileset purposes, but still flag that square as fair game for randomly drawing “doodads” on top of.

Yeah, I’m familiar (not an expert, I can’t make a good game or anything) with several codes (not with this one, though it looks very easy to do some basic modding), but I don’t want to mod because I’m afraid of destroying my save. Meaning (without any unnecessary stuff like that last sentence) I think you should try to eventually make a guide (no rush of course.)

You won’t destroy your save - mods automatically create their own save directories and will use those instead of the normal save files :slight_smile:

There is, of course, absolutely no feedback in the game to indicate this :slight_smile: (Nor is there a way to unload a mod short of restarting the game - we’re working on it!)

Well, you could make another mod that has the original code. Also, I’m glad to hear I can’t kill my save (but I’ll probably still hold out because of laziness/over-timidness.)

I havn’t looked at the Map customization yet, but here might be an idea on how to “easily” make maps:
For every map (visual only), there need to be 3 Images. First Image (or Layer 1) is “Background”. Something like water or the like where you can’t buil. The Second Image (Layer 2) isfor the Path the enemies can go. Only paint the paths where Creeps can go to, leave rest blank or empty. The Third Image (Layer 3) now is for everything, where you can put a defender on. When the Map is loaded, the Game loads those 3 maps and creates its path logic based on these 3 images (for the visual, first draw Layer 1, then Layer 2 and then Layer 3. The result should be like a normal map where you cant put any defenders on places that don’t have any tiles in Layer 3, and Creeps can go on every tile that was in Layer 2, rest ist background or places neither creeps nor defenders can go…).

Only problem now would be the Water for the Water Revenants -.-

Only suggesting that because you said it’s a mess right now. This 3 Layer approach is similiar to the 3 Layers in the RPG Maker. That might make it less of a Mess and it would actually be relatively easy to create a map Maker tool for the game…

just my 2 cents ^^

I have been playing around with editing the different XML files and everything has worked out so far.

However, when trying to edit the CSV files none of the in-game values are changed even when the saved file retains the edited information.

EX: Change Berserker Hp to 50 for levels 0-99 and this never seemed to take affect even after reloading the mod

Thanks, Austin! That’s the kind of things I’m looking for. I’ve found the error - the game is not checking to see if there is a copy of the CSV file available in the mod data.

This will be fixed in 1.0.2

I gave it a test just now on my local 1.0.2 build, and it seems to work - non-modded the game doesn’t seem to break, and in mod mode, my changes are reflected. This new change will also allow players to define csv tables for classes other than the default ones - if you specify, for instance, a class with id “necromancer” in the data_defender.xml file, it will look for “necromancer.csv” in the tables/ folder.

Possible edge cases: we need to make sure this doesn’t break anything with the sorceror or sorceress character classes, which appear in special battles in the final level for the normal game, and NG+ for certain sidequests.

When editing the data_heroes.xml changing the skill points in “” has no effect. Also I was not able to find a place to edit which stats/level/skill points recruited characters begin with.

Probably the mod checker wasn’t turned on for data_heroes.xml. Will try to fix that here in a bit :slight_smile:

As for recruiting, you want data_recruit.xml:

Not sure if the mod engine recognizes it yet, but that’s how you’d do it. I might need to expand on the functionality here.