Hmm... it would appear that there is some indecisiveness amongst the community
. Hehe... what else is new?
The bit of feedback I did receive on my original tools that were text based indicated that they were very difficult to use for some as they had to learn both the modding commands and my new mod-style commands.
Also they indicated that they would like to have some up-to-date reference information for the units / nations / magic / etc that were altered by the mods as they would have a hard time keeping track of all the changes without such an element. I noticed this as well as I had to keep running the game to see the current state of things.
I actually received no feedback saying that anyone was actually going to use the tools in their present state - though no feedback isn't necessarily a bad thing
. So I just went on my own impressions and the feedback I did get.
In order to get rid of the requirement of learning the modding tools and my new commands, I had to go to a GUI interface. In order to provide a GUI interface it would require realms of information to be displayed. The only convenient source of up-to-date information and changes to such info is the game data itself. That lead me to the executable since all (statistical) game data is stored there in the data section. There are no external statistical data files.
I noticed that there are numerous other abilities / elements that can be modified beyond the standard mod tool limits. This lead me to consider direct modification of this data.
It is also possible to avoid conflicts amongst mods, to avoid the ability overrun problem, and to provide checks / balances on many fields to reduce modding errors. All this is only possible with direct access to the EXE. These are the main reasons I approached the problem this way. It certainly wasn't for development time since this has probably tripled my work
.
So these are some of the pros to this option.
The drawbacks, as some of you have mentioned, are:
- The utility will not work with Dom3 without heavy modification. That's not a huge issue as I suspect much of the Dom3 data will be overhauled. It is just a guess but basing on some of my exe mapping it seems many things were added in for the sake of the existing modding tools as afterthoughts and will probably be incorporated in Dom3. At least since I do that kind of afterthought work all the time it wouldn't surprise me if the devs here did the same.
- The utility may not be used by some as they do not like anything that directly modifies the game executable. I understand that position and respect it. Though I would also respectfully add that, in effect, the .dm mods released now also directly modify the run-time EXE data segment in the same fashion I intend to. The only differences are that it can perform this operation on the fly as it is part of the Dom2 code and, more importantly, is written by the developers.
As PDF mentioned, some may only want the exe modified to change things that the current modding tools cannot and therefore my utility should only concern itself with the remainder. The only problem with this, as I see it, is that it somewhat defeats the purpose of having a GUI as users would still need to use text files to change the majority of the game parameters.
Though I may have misunderstood PDF and he may want something along the line as Endoperez mentioned - that working .dm files are created and only the remainder be modified directly. This is an interesting alternative. It does take away the ability to do some checks and avoid conflicts as indicated earlier but that may not be bad if that's what people want.
These are my thoughts on the matter. I hope others will give there thoughts / alternatives as well. I went down the path I did largely based on feedback already so I'm open to more
. I have not coded the main utility to modify the exe yet (it just reads it) so now is the time if you want something different to get your opinion in.
I had not wished to bother the developers much as I know they are quite busy. However the only other options I can see to avoid direct exe modification are:
- Expand the current modding utils to allow additional changes. This is quite the undertaking though for them. It could be done by someone else but would require access to the source code which I highly doubt Illwinter is willing to release to anyone.
- There could be another statistical data-only file (identical to the Dom2.exe data segment) that Dom2 reads in like a mod and replaces its current data with. That would be less effort than the first option but still would be work on the developer's part.
These may be options when the devs are considering modding for Dom3 to allow the community to do more custom work but I highly doubt that they will be done for Dom2.
BTW if the powers that be feel this thread should be in the mod sub-forum that's fine by me - feel free to move it.