Heavenfall Heavenfall

[for devs] Requests for changes in modding

[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,272 views 127 replies
Reply #26 Top

Some ui improvements for the particle editor would help. Being able to select from a drop down box, or a list of icons would be much faster for selecting sprites or colors (rather than having to click through each one). Also, many of the white or lighter color sprites are on a white background which makes them more difficult to recognize.

Reply #27 Top

I hope the devs are patrolling this post...but anyways, another thing I ran into are Treaties. I'd like to see the ability to create an exchange treaty. Such as Race A will lose 1 gp/turn, but gain 1 material/turn, and Race B would lose 1 material/turn, but gain 1 gp/turn. This is a simple example, but you get the idea. I know that Treaties are really underdeveloped right now, but hopefully this can be expanded upon in future releases.

 EDIT: Thanks Boogie for the reassurance :P. Anyways, I'd also like to see the ability to not only "exchange" stored resources (aka gold/materials), but the production of them. Such as, one would trade 10% of your stored resources per turn, and another would trade 10% of the production of a resource. So, let's assume you have 100 metal and producing 2 per turn. One treaty would give you 10 metal on the first turn, the other would give you .2 every turn. I know these numbers are way off, but the more options, the merrier.

Reply #28 Top

I hope the devs are patrolling this post...
:) We're listening, don't worry.

Reply #29 Top

Quoting BoogieBac, reply 28

I hope the devs are patrolling this post... We're listening, don't worry.

That's excellent. In the Tile Editor the "Favorites" don't work. It would also be very handy if we could copy pieces we've already placed and move pieces around inside the 3D space. Basically just go and look at the functionality of the pieces in the GalCiv 2's Ship Editor and port the usability over to the Elemental Editors :) .

If only it was all that simple, right? hehe.

Reply #30 Top

Well, it might work but then you could only save a tile if it had a hull type and engines...

Reply #31 Top

Personally, I want some way to implement conditionals into gamemodifiers, even if it is only some form of the prereq tag. It would enhance our ability to make more interesting buildings and items.

Reply #32 Top

Quoting Robert, reply 30
Well, it might work but then you could only save a tile if it had a hull type and engines...

lol :P Functionality of the designer man.

Reply #33 Top

The ability to use hardpoints might be a nice touch, but since most of the current props are not exactly designed for such a system, it may not work very well.

Personally, I would like to see the current in-game editing tools ported to an out of game application of some kind. On top of this additional tools for some kind of system testing would also be nice. I hate having to load up a game of elemental everytime I want to see if my new building gives the desired improvement or my new item adds the appropriate stat changes.

Reply #34 Top

Also, scripting support for random events (with "response choices") a la FFH2!

Reply #35 Top

Very minor thing:

 

Custom Sovereigns getting their own folder instead of mixing with new units or they get a prefix in their name like SovereignXXX or something. I currently do it manually, thanks for the new mod structure in v1.09 :)

 

Reply #36 Top

More improved tutorials always help.

Reply #37 Top

Add a button to reload a tile xml in the tile workshop. This allows us to do precision editing in xml and reload in workshop to check without having to exit elemental and restart to load every time (very frustrating after a while).

Reply #38 Top

Quoting Kalin, reply 37
Add a button to reload a tile xml in the tile workshop. This allows us to do precision editing in xml and reload in workshop to check without having to exit elemental and restart to load every time (very frustrating after a while).

Or add a manual edit (text box) to fine tune the tile.

Reply #39 Top

Here are somethings I would love to see added:

1) A Attribute for city improvement game modifiers, called AdjustAttackingUnits. Currently the game only supports adjustments to defending units, AdjustDefendingUnit, but what about improvements that have an effect on attackers. Like a boiling oil improvement that make attackers take damage based on their unit size ( a lot like the Artemis System Net in MOO2) or even some kind of tactical mana regen debuff.

2) A tag for city improvements which is the makes two buildings mutually exclusive. Currently, you can make one building require another but you can't directly say "If you build a merchant, you can't build a study." While the mod community has figured out some work arounds, it would be a nice addition.

3) An Attribute for items to add strategic spells as abilities, much like UnlockCombatAbility. I would love to be able to do something like UnlockStrategicAbility so I could create various strategic units based upon their equipment.

4) Expand access to current ability scores. I would love to be able to access a unit's current moves, in much the same way I can access their current health via curHealth.

5) Add some method of letting tech give items, units, or improvements directly. I think it would be cool if I could research a technology which not only gave access to these things, but actually let you bestow them directly based on certain criteria.

6) A duplicate emitter button into the Particle cauldron. Several times I have wanted to make a near identical emitter as a previous emitter, but had to go through the long process of adding and updating key frames to do this. It would be nice to be able to just press a button to duplicate the currently selected emitter.

7) An increase in the upper bound of the move y slider for the builder's forge. There are actually a couple of building models which are so tall that an item placed on the ground would need to move the slider twice to get to the top.

8) A method for having prop units move around in a set path on tiles. I love the prop units for tiles, but I would love for them to be able to move around the tile a bit. I think this would enhance our ability to make more lifelike city improvements.

Reply #40 Top

Speaking of CurrentHealth... what about MaxHealth?  AFAIK that isn't even accessible with spells.

That would be a critical item for creating heal spells that work.
I mean technically the current heal spell works but healing a 1200 HP unit for 12 HP per spell gets old really fast.

So heal spells should heal  ( x% of MaxHealth ) + (fixed amount as it does now)

Reply #41 Top

Isn't it possible to just use UnitStat_HitPoints to get MaxHealth?

Reply #42 Top

The things I most want to see are copy functions in the builder forge and cauldron, and a test map/ console function to place a tile (modded ones specificly) for testing.  The ability to scale objects out of starting proportion would be great too. 

I do like the no clipping on objects though as it allows for some neat effects when hiding undesired parts of an object.

Reply #43 Top

Builder's forge: would it be viable to add an object distort tool? It's not as high on my 'wanted' list as separate x,y,z scaling, but bending and stretching some building blocks like ropes, planks and stone parts could create some interesting possibilities for tile making :).

Reply #44 Top

While this does not concern the process of modding, it's a requirement (IMO = ) before wild and crazy spell effects can be coded.

What I'm asking for is an   event / trigger system   that can ideally be used from the spell XML files.
Usually that would be used in buffs / debuffs, doing... stuff... depending on certain triggers.
   Example:  A buff (or magical sword internal effect) that has a 10% chance per swing to cast a firebolt on the target.

In MMO lingo that's a proc (process). A buff could have one or more effects, triggered like...

  • ProcsOnMelee
  • ProcsOnRanged
  • ProcsOnSpellCast
  • ProcsOnGetHit  
  • ProcsBeforeDeath
  • ProcsAfterDeath
  • ProcsOnMovement
  • ProcsOnWearOff 
  • ProcsOnEnter  (Trap spells)
  • ProcsStartOfTurn   (aura)
  • ProcsEndOfTurn

I have posted this before so I'll skip lenghty details and explanations here.

Even if such things could later be "Python scripted" the hard way, an event / trigger system is usually far more efficient and reliable when done by the engine.
Scripting an entire event handler is also not everyone's cup of tea, which would limit what many can do with the engine.
Modders with crazy ideas and serious coding skills aren't that common. In the entire X3 community I'd guesstimate that there are 6-10 and that's a very well documented script language by now.

Reply #45 Top

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.

A way to group and ungroup objects would be a very nice addition as well.

Reply #46 Top

Two more requests concerning problems that are appearing. I've chatted with Cari_Elf about it, but I think it can't hurt to repeat them here. They are both in regards to compatibility between mods, and won't only affect just one mod but rather deal with how mods interact with each other.

First, I would like the in-game research windows to only show unlocks for technologies that will actually affect the race researching the technology. For example, if I hook in a completely new elf only building to a standard kingdom technology, it will show up for everyone. I would like it to show up for noone but elves, if the the building has a prereq for race: elf. If this was done, we could hook an entire custom race to the standard tech tree, instead of having to build a completely new tech tree. This in turn will make it easier for others to mod the single tech tree, instead of having to deal with one for each custom race. Note that buildings are only an example, the problem extends to weapon and armor and equipment too.

Second, I would like a way to link modeltypes, or a way to modify instead of overwriting itemtypes. The problem is that each armor piece contains a list of supported modeltypes. However, if I am making a new race I need a new modeltype as I want new skins to be used. Now, currently, I must copy ALL the armor pieces for a new race, even when I want to use only the standard ones. Again, this will make it very hard for mods to interact with each other. If I introduce 3 races like this, then someone wants to change one armor value, he will need to change 4 itemtypes, instead of just 1. Solutions: Either allow us to modify itemtypes, like we do with improvementtypes (NOTE: it must be an OPTION! not always modify). Or, allow us to somehow link one modeltype so that it is nothing but a reference for other modeltypes. For example, I would declare that NewModelType == KingdomFemale. Then, any armor that contains a supportedunitmodeltype KingdomFemale would also support NewModelType.

 

Edit: Note that BOTH these fixes would be needed. On their own, they will provide very little benefit to improving how mods interact.

Reply #47 Top

I've got another convenience request for the builder's forge:

When opening tiles, I'd like to see a keyword search function. Currently, looking through couple hundred tiles trying to fish a particular one to edit is something of an exercise in frustration.

Reply #48 Top

I would like <SpellResourceCost> to actually CHECK if I have the resources available in tactical combat. It loses half its functionality if it is just ignores the check in tactical combat. In strategic mode it works flawlessly.

Also, I would like a dev to take a look at Sion_Head in CoreFaces.xml and explain why it is getting applied to ALL custom modeltypes. If there's a reasoning behind it, please let us know. If there is no reasoning, please remove that functionality.

Reply #49 Top

Edit: nvm, requests without explanations are pointless.

Reply #50 Top

Requests.

 

First, I would like a way to demand, for an improvement, that another improvement has been built previously in the city.

For this we have

<RequiresCityImprovements>1</RequiresCityImprovements>
        <RequiredImprovement>K_workshop</RequiredImprovement>

but this does NOT check world resources that have constructed buildings on them. The functionality should be, for example: If there is a FARM linked to one city in particular, then I can build a granary. The obvious solution is that you extend the functionality of the current tag (as above) to include resource buildings built "outside the city walls" but "inside the city influence", ie buildings that are linked to the city but not directly adjacent.

 

Secondly, it would be helpful if there was a tag to turn improvementtypes into mutually exclusive buildings. For example, I could have a CHOICE of building a War College, or building a Sion training facility. I would recommend that the tag be fairly simple, for example: <CityCannotHaveImprovement>. I would also like to see this tag be repeatable, so that we may choose between three or more buildings to be exclusive. Ps. Ideally this tag, too, should read from the resources linked to the city as well as the buildings within the city.