[for devs] Requests for changes in modding

This thread is intended as a way for modders to present their opinions and requests on how the modding tools, or various aspects of the mechanics in modding, can be improved. It can range from small to large requests.

1. A frequent request I've seen on the modding forums is for map files to contain a tag that prevents resources from spawning in it. Edit: Even better, a tag that defined what resources COULDN'T spawn in them as well. So, first a <NoNewResources>True/False</NoNewResources>. But also a <NeverSpawnResource>IronOre</NeverSpawnResource>

2. CityWallSets have a tag called <Filler> that I think is meant to fill empty tiles inside the city walls. This does not appear to function. If it DOES function (and I misunderstood it), I would like a NEW tag inside the citywallset type that allows us to assign what designed tiles should be placed on empty tiles inside the city walls. Please consider the ugliness of the following picture: http://img820.imageshack.us/img820/774/elemental1285071164.jpg

3. I would like to see EnvironmentType not be hardcoded, so that we could add new types of environments to the game. Right now, there is only 5 types (barren, fallen, kingdom, desert and arctic). I think there is a HUGE amount of room here for GOOD LOOKING improvements to the game, but the environment types are hardcoded and that makes it impossible to create new interesting environments.

4. Right now, we can only build one type of improvement on each type of worldresource. For example, a "ScenicViewBonusType" will ALWAYS produce the same improvement. Even if more improvements are added that uses the same type, there is no way to build them. I would like to see an option added to select which type of improvement is to be built on a resource, if there are several choices.

5. I would like to see the ability to add more Allegiances to the game. Specifically, it should be possible to choose more types of allegiances when selecting a race to play. Right now, the UI only presents 2 types - Kingdom and Empire allegiance.

6. I would like to see numbers added to the scales in the builder's forge. These numbers should be modifiable. That way, we can fine-tune the placement of objects by editing the numbers. Right now, the scales are rather bumpy in design and that makes it hard to adjust them after they have been placed.

Add your own thoughts!

53,264 views 127 replies
Reply #1 Top

these are definitely in the "small" camp...

1. ability to control assets in the editor via left mouse-click ==> drag (as opposed to coordinate dials)

2) ability to group select (and manipulate) assets in editor

3) ability to copy/paste assets already placed on the landscape

Reply #2 Top

Personally I'd like GUI tools that eventually encompasses everything, custom NPC unit design, quest design, item design and so forth so we don't have to get dirty in the XML files.

But in the short term I'd like a way to restrict items based on certain criteria, such as the unit must have X strength or similar prerequisites. Cari mentioned this might be possible already, but I'm not seeing it in the XML, it's at least not obvious enough how to set it up.

 

Reply #3 Top

Another one

- I would like to be possible to assign what type of terrain lies underneath a city. Right now, all cities will change the terrain underneath them to City. This might look good for some cities, but it looks very bad for others. Preferably this should be an option, either in Cityhub improvementtype or Raceconfig.

Edit: I understand that the reason for using City is that it cannot be destroyed. I also understand that adding additional terrains for the city could make it not targettable by spells. The first problem can be worked around by designing our own terrain type that cannot be destroyed. The second problem would be harder to fix, as it would require spells to be able to target cities, not just the City terrain type.

 

Edit2: Consider

        <SpellTargetType>EnemyCity</SpellTargetType>
        <ValidTerrainCategory>City</ValidTerrainCategory>

These are both existing tags. In my opinion, <SpellTargetType>EnemyCity</SpellTargetType> should automatically rule out the player targetting anything other than a city. Instead, we have to rely on <ValidTerrainCategory>City</ValidTerrainCategory> just to make it so. Poor design, in my opinion.

 

Reply #4 Top

1. We need to know if the XML files are overwritten by a mod file or appended by a mod file. I know I can add a spell to the game and in a book by just having the discrete spell info in my file. This would say append. But I've also had a copy of the entire book and the copy appears to be used. This would say overwrite. We also can not mod the name rulesets. So no overwrite. Confused.

2. Need the ability to test mods on save games. Need a switch or something to allow the game to rebuild the XML data stored in the save game.

3. At some point a listing of valid tags and sub-tags for each major type of file.

4. Some tutorial insight on modding the UI. Again with some documentation on conventions and tags. I really want to add a scroll bar to the left side town/units display when I have more then the screen can support. More like a Fence object that automatically pops a scrollbar when there are more items then space. Also be great to hide off the edge of the screen too.

5. Beyond that the need would turn to python code and how to link that to the game.

Great game, having fun, keep up the good work!

 

Reply #5 Top

Better ability (or fix existing) to modify tech tree. 

 

Ability to have multiple "AND" prerequisites for tech trees and unit items.

Reply #6 Top

I have another BIG request.

-Please provide full patch notes to modding changes.

Edit: And one more again.

- Please design a system that allows us to define in a SpellDef whether or not the effect is a buff. This should be designed so that it is impossible to cast the same spell twice on a target in tactical mode that increases or decreases their stats.

For example, Burning blade is castable several times on the same target. The tag should prevent this abuse. Preferably, this should also work for debuffs, such as movement reductions. Right now, reducing an enemy's combat speed to 0 by casting a certain spell on him will render the enemy completely useless. ALSO, an anti-magic spell to clear all hostile debuffs, or remove buffs on enemy units.

Reply #7 Top

To make it easier to mod the core of the game i want any of many things, first is an xml tag that can be placed at the top of any file making the game ignore the core file, ala

<Overwrites>CoreResources.xml</Overwrites>

so that to remove things I don't have to actually edit those files. and yes whilst I am fully aware that filename is meaningless i see no other easy way of doing it.

Second, is to allow a choice of data directory, by which I mean instead of having an "English" directory in the data folder you would have a "BaseGame" directory, and any total conversion mods could just have a "Whatever" directory, and the game lets you pick between them, whether through in game menu or shortcut i don't care. preferably you would also have separate data zips as well, so that you don't have to recreate them each and every time. 

Third, allow the game to watch files, it's deeply irritating to have to restart the entire game just to make small changes.

4th, all dodgy hardcodes to be exposed, first that comes to mind Why can't i stop fertile land being spawned at your starting location? Why can't i specify something else to be, this should just be a tag in the resourcetype. also things like what resources are located in the city info window (the one on the main UI, not the pop-up book)

5th, atleast comment out all the leftovers in the XML for code that isn't hooked up anymore. ElementalDefs is filled with them.

But mainly Proper Dev tools, by which i mean in depth analysis of AI and game world, i want to be able to see exact details on how certain things are working, e.g rarity for resources, I should be able to check how this is working without starting up a thousand maps, give me a text file output of the resource placement code, just so that i can easily see what the effects of changing rarity is. I want to know what the AI is thinking, In fact for this just go look at the Sins of a solar empire dev.exe that's the sort of thing I am after, i don't even mind about not being able to change the ai (yet), but atleast help me find out how I have broken it.

And overall considerably more documentation. I mean there are something's which are just completely incomprehensible, lets take the CoreAIdefs.xml for an example. (Edit 2: I have given up on pasting the xml, it would help if the preview button did anything useful. So shall just explain my complaint.)
In the "Early" game phase the AI is given priorities for Food, Metal, Crystal, and Shard with the type as "Resource". in the middle and late game phase however these are completely absent and replaced by priorities for Food, Metal, Crystal, and Shard with the type "Research", now superficially  this should mean that the AI stops going after resources after 50 turns, it should also mean that techs should be tagged with the Food etc as a way of prioritizing them, except they aren't. the only things in the xml with those AITags are Resource points on the map. So what does it all mean? frankly I'm inclined to believe that it means that CoreAIDefs.xml doesn't do much.

 ...and I'm done ranting.

Reply #8 Top

Transparency is always good.

Reply #9 Top

I'd like to see a way to turn off automatic troop design. If you're making a completely new race with completely new weapons, it makes no sense to have Scout, Archer, etc pop up. It clutters the Troop build window with troop designs you wont use. I know some people just playing the game want this as well (as in people who AREN'T modding).

Also, i'd like the particle editor to stop crashing every 10 minutes :P. Anyways, it's a bit funky still. It's not the most intuitive thing, and got me for a little bit, as there was no save button. I know, hitting Done essentially does this, but it's awkward. I ended up changing a core effect (messes it up pretty badly). Which I finally discovered it just placed a new file in My Docs/blah. But still, there's little indication it has saved (none).

 

Reply #10 Top

I'd like to see:

 

1) Variable scaling. That is to say, the ability to scale models based on X, Y, Z instead of one scale for all three. You can still keep the overall scale tag, just add something along the line of scaleX, scaleY, and scaleZ. This allows us to stretch certain objects to change their appearance allowing things like tall buildings or short/tall/fat people.

 

2) CityType definition. This can be done two ways, a tag that defines the type of city in question and an ability to prereq the CityType in question. Or the ability to switch a certain improvement with another via GameModifier (would be used on the city hub), and a prereq to have a certain improvement in the city (would be on the hub in this example, but has more useful side benefits as well). The reason for this is to specialize cities by type definition, and allow different buildings to be built in differing cities, making them more unique.

Reply #11 Top

I'd say the first thing I want is a document of what values can be used in each tag and what they do.   An xsd if it is available would be great (as long as there are some comments.).

Reply #12 Top

1) Better access to sovereign starting abilities, and selectable spellbooks

 

2)Several new areas of effect for spells; Specifically a line/row (variable size/direction), a cross shape (variable size), and a row of affected squares between caster and target.

 

These two things would allow modders to really start making some robust and fantastic magic mods.

Reply #13 Top

Quoting Heavenfall, reply 6
- Please design a system that allows us to define in a SpellDef whether or not the effect is a buff. This should be designed so that it is impossible to cast the same spell twice on a target in tactical mode that increases or decreases their stats.

For example, Burning blade is castable several times on the same target.

Proper stacking rules are what's needed.

  • A buff can only replace an existing buff that modifies the same gamestat if it's of equal or greater strength.
    Replacing means to remove the original buff, then apply the new one. Usually that translates into a refresh of the same spell.
     
  • The same applies to debuffs.
     
  • A buff can not be applied if a debuff currently modifies the same gamestat.
    If you could eliminate or even overwrite slow with haste, it would make debuffs rather pointless.
     
  • A debuff can be applied if a buff currently modifies the same gamestat.
    It will coexist, not automatically removing the buff.  Auto-removal would make debuffs doubly powerful.
     
  • A debuff can only be dispelled.

This is the Everquest stacking system. It has been refined for over a decade and it works beautifully with hundreds of spells of all kinds.

 

Reply #14 Top

Id like a way to tell the game to load a specific total conversion mod out of a variety of installed ones.

Further I'd like to see a system which lets us turn on/off regular mods from within the game as well.

Think Civ 4. Basically - I want to be able to load the game, go into a Mods Menu within the game, and tell it to load my (imaginary) Master of Magic Mod, which completely turns off all regular game rules, and loads ONLY the specified rules provided by the (sadly still imaginary) Master of Magic Mod.

Reply #15 Top

A fully functional Quest editor.

 

Brad has talked about this, and I think it would be a HUGE boon to the community. The Quest system should be powerful enough for us to do some amazing things with it, and if a good editor is provided it will unlock the creativity of lots of people who can write and design fun quests and stories, but who aren't great with XML.

 

I want an editor that can do lots of things for a designer....

1) Allow for multiple player selections, ie: CYOA

2) Run ability score checks. Ie: a quest that calls for a feat of strength by a Player

3) Check for  specific NPCs in the party. This would allow the designer to see if a particular NPC is included in the party and then include dialogue or events that include that NPCs. This could be a simple if / then check.

4) Allow for restrictions to quest participants. This would allow a designer to create quests and battles that involved armies and quests and battles that are limited to Champions and  other single units.

5) Load a map  for dungeons and other locations.

6) Design parameters for when the quest is displayed so that not all quests are random spawns. Allow for quests to be tied to play built buildings and other locations or to have a chance of occurring based on certain conditions (ie: total empire population, new city built, new tech, etc.)

 

I'm sure that there are plenty of other things that could go into the Quest editor. Bottom line is that I want it to be a tool that can be used to create more involved quests and also to be used as a storytelling tool

Reply #16 Top

When I want to load/save a tile in the Workshop, it would be very nice to have a bigger screen to scroll in so I can see more tiles in less time... and/or a text input to filter tiles shown. Don't make me create a pic to illustrate my poor explanation. XD

The rest has been extensively mentioned already.

Reply #17 Top

Tile editor ideas:

1: Assymetrical XYZ scaling as already stated above

2: BUGFIXES BUGFIXES BUGFIXES

3: HSV color picker (not only to tile editor, all things color-related in the game, faction editor included

4: A tool for making circular arrays (rings) and such while in tile editor, currently hand-rotating objects to place them is a pain in the ass.

5: Possibility of offseting object pivots so they can rotate around other objects and not around themselves when animated/transformed (would require new XML data though)

 

General stuff I found currently:

Abolish all integrer values for game variables where nonwhole numbers might apply, such as mana regen, resource production, prestige, etc (most of them are floating point, but some remain such as A_Manaregen), careful balancing often requires nonwhole numbers.

Allow us to properly define how  often/clustered resources spawn (perhaps add python support so we can code rulesets for resource spawnage?), currently this is another touchy issue where often you either get tons of resources or none at all. Rarity and other controller constants seem to not work very well at all, or their behavour is chaotic and some documentation would help a lot.

A visual interface for defining tilesets of analogous buildings within kingdoms/empires and proper code implementation of such would be interesting too, currently for a tileset one needs to define a whole new building from scratch.

Add the possibility of "tile families", sets of similar tile designs bound to an improvement/building/prop/resource/whatever which get picked randomly when placed in-game for adding more variety so huts don't look identical up to the farmer in the garden for instance.

Perhaps implement all those local/rummaged resource stuff which got commented out and simplified in favor of global economy so we can make our own mods with local/trading economies?

Reply #18 Top



When I want to load/save a tile in the Workshop, it would be very nice to have a bigger screen to scroll in so I can see more tiles in less time... and/or a text input to filter tiles shown. Don't make me create a pic to illustrate my poor explanation.

The rest has been extensively mentioned already.

 

Actually add text filter support to load tiles in EVERY EDITOR of the game (nvm, the workshop englobes all the editors :P) . It's specially important in map editor, as the order for tile designs there seem to be on modification date, instead of alphabetic.

 

Also you could either add tilepreview, when trying to load a tiledesign in the tile editor. Alternatively, make a function to save an icon for the design by capturing an image of the tile (similarly to the minimap image creation for the map editor). You could have several perspectives available, top view, isometric, etc..

 

Fix objects in the tile editor loosing their Y coordinates, when scaling them.

Remove limit to alter SFX in tile editor, size and elevation.

Add more hotkeys in the workshop,

to stop all rotation

copy an existing part/object

change elevation (Y coordinate)

 

Allow to edit skin color and every other color in faction creation.

 

 

Reply #19 Top




4. Right now, we can only build one type of improvement on each type of worldresource. For example, a "ScenicViewBonusType" will ALWAYS produce the same improvement. Even if more improvements are added that uses the same type, there is no way to build them. I would like to see an option added to select which type of improvement is to be built on a resource, if there are several choices.


 

I am especially interested in this one, though all are great suggestions. Personally, I plan on making shards generic, with the different elemental shrines buildable on top.

I would also love it if modding the improvements files didn't double production costs. I think this is still an issue, though I've not tested it in the latest build.

Reply #20 Top

Ah, a place to rant. Further complaints that i have remembered since last time

  • Let us use Calculate EVERYWHERE, ie why can't i use calculate to determine the duration of a spell, to say nothing of using it to calculate what improvements produce.
  • Let Calculate include more than two things at a time, i just came up with a theoretical spell that would requires 21 separate calculates because of this nonsense
  • Minimum requirements, I'm sorry you can't cast that spell, use that item, do that you don't have X (with X being unit stats, resources, improvements, anything)
  • the ability for spells to target the caster As well as a target, ie Sovereign zaps target with spell, it does X to target and Y to the sovereign. 
  • In fact as far spells go I want the system that Sins used where you can just chain them together, I cast spell on A, which Triggers an entirely different effect on B, which triggers an entirely different effect that only applies to those with A,B, and C ..... on in to infinity. all with completely independent target categories, stacking limits etc. Ugh.

 

  • the ability to choose whether ability bonuses are percentages or not.

 

  • Whilst I think of it, for the map editor zoom to support custom map sizes, fully zoomed out should show all of a map no matter what size it is. 
  • The ability to place an overlay/underlay image in to the map editor, for map tracing purposes. If I were greedy I'd ask for it to generate maps from images, but I'll put up with it being made easier to create the map from the image myself.
Reply #21 Top

I want:

1. To be able to build real cities in the map editor, so that you don't always have to start from scratch in a game. This would also let you preview custom city tiles easily.

2. The colors you set on custom tiles to work properly. Now when I load a tile the custom colors do not show up.

3. Better Load/Save interface. There should be a Save and a Save As...

4. Humans and critters to not disappear when you zoom out while constructing a tile.

5. Smaller icons for... everything! And better interface overall, especially when loading/saving and selecting tiles.

Reply #22 Top

Oh yeah, I forgot. I'd like to see an easier way to test tactical particle effects. Perhaps I'm just slow with the editor, but there's no way to see what the effect looks like, unless you play a new game with the proper xmls edited. It'd be really cool, and a huge timesaver, to have some way to test the effects (whether in the editor itself, or by launching a tacticle battle). I'd personally rather see the option to load up a preset tac battle to try the effect live, with a unit in battle.

 

Reply #23 Top

this was probably mention, but:

 

and NPC monster/unit/mob/whatever interface, like builders forge.

some of use don't have 3d programs/modeling skills,
but everyone knows how to "spore"

 

thanks 

Reply #24 Top

I don't know if you can hear me dev gods, but it would be really nice to get a sort of information tab as a scrollover function for the cartographer's table in the hero and creature section. I find myself wondering why a brigand mob only has one unit in it with 23hp instead of a mob of weaker units. I have no way of knowing what each creature or hero is without running a test to define and then rename each one. 

Also many of your creature have illogical names or mislead the user. Ex: Darkling supreme is barely worth being called darkling mediocre. A little info box would make things smoother for people that want to set specific creatures in areas to create a theme for that area.

All the best,

Your future lord and master Seanw3

Reply #25 Top

Heavenfall, check your PM.  I sent you a way to limit buffs/debuffs to one time per spell, whether it's a tactical or strategic spell.  As soon as my primary machine is up and running again I'll change my forest spellbook mod to use that as the limit for some of the spells in it.