RevolutionDCM for BTS

If the goal is to make the various mod components modular how about DCM?

Check out my attachment.

Nice, I am just in the process of modularizing RevDCM myself (actually, I did, I just have not tested it yet ;) ), will certainly take a look at your modules :D
 
I tried to put that into Extra mod. It loaded then when it came to XML loading part, it showed series of errors. Any idea how to make Extra use DCM? To clarify, Extra is here if you need to see what I mean.

Thanks for that effort! i really want to make as many mods that don't have RevDCM as their foundation to have at least DCM component!

EDIT---

OOPS!! I made a mistake of copying RevDCM's dll to Extra mod and that caused XML mistakes. When I deleted that dll and just used Modules, no errors showed up. That was good so far.

Then when I playtested it using spearman and archer together with archer bombardment turned on of course. I saw no effects showing archer shooting flame arrows before the spearman attack. What's up with that?

Thanks!

Just repeating above just in case you missed the above edit. Thanks!
 
Hello,

I just found the limits of civs that my system can run fairly quickly. Oh, I can run more civs but that would be too laggy for me when turns go by.

Anyway, can you give me code to limit both BarbCiv and Revolution to my set number of civs? I want 18 civs to be max.

Thank you.

I have a question related to this... I think someone did a study in the past about the various loads that extra civs put on machines (can't find it now) - is there any chance that there would ever be multiple DLL's (for the different sizes)?

I used to run Lt Bob's 40dll (for the colonies function), but all I really need is 34 (or 35 if people create another mod for colonies when all 34 original civs are alive).

(also I am working on a conversion of my tiny earth map for revmod (50civ_sizemod) - the new version will be up when I have finished a couple of games for testing)
 
Nice, I am just in the process of modularizing RevDCM myself (actually, I did, I just have not tested it yet ;) ), will certainly take a look at your modules :D

My attachment file only has one module for DCM (no others). I would be most interested in your modules once you have tested them. IMO, anything that is added beyond WoC Lite, should be in modular WoC format. Otherwise we defeat the purpose of having the WoC standard.

Sincerely,

Orion Veteran :cool:
 
Hello,

Still want to know how to merge in that new DCM module to mods without any dll or RevDCM. I just found WoC Lite too. Do I need to move in its dll for that module to work? Or do I need to do more? To keep this simple, let's use Rhys Rise and Fall mod as an example for me to move that DCM module in. What else do I need to do?

Any help will be appreciated :).
 
They are turned off in the RevDCM tab of the BUG Options screen ctrl-alt-O. I have found that very occasionally changing the option for battle effects does not work right away.

I found out the problem is that the globaldefinesalt.xml does not reflect the changes i make in the in-game options menu. When i change directly in the xml file it works.
 
Hello,

Still want to know how to merge in that new DCM module to mods without any dll or RevDCM. I just found WoC Lite too. Do I need to move in its dll for that module to work? Or do I need to do more? To keep this simple, let's use Rhys Rise and Fall mod as an example for me to move that DCM module in. What else do I need to do?

Any help will be appreciated :).

There is no universal answer to this. There are some general rules however.

If the other mod has a dll (as WoC lite has), you would need to merge the two dlls by merging their sourcecode and compiling your own dll.

If the other dll is identical or a subset of RevDCM, just use the RevDCM. As of now, WoC Lite is included in RevDCM, so you can just ignore that dll altogether (in fact you can ignore WoC Lite altogether as it adds nothing outside the dll).

This leaves the xml and Python changes of the two mods, those you will always need to merge. Depending on the mods, this will be somewhere between real easy (modular xml only mod) to a real mess (lots of Python and xml changes, the latter non-modular).

Python : use WinMerge to analyze the differences between the file in the mod and RevDCM and add the mod changes to the RevDCM Python. If the file does not exist on the RevDCM side, add it (unchanged).

XML, non-modular : use WinMerge to compare it to the standard xml, then add the changes to the corresponding RevDCM xml file (if it does not exist, add it unchanged).

XML, modular : check if the definition exists within RevDCM. If it does, merge the two (by again comparing the mods definition with the standard definition and adding its changes to the RevDCM version). If the definition does not exist within RevDCM, copy the mods file to the Modules dir.
 
@Dementual
Hey glider/jdog, I'm really wondering- are overseas colonies ever containable?
Yeah they are Dementual but it is not as easy. Things have changed since RevDCM 2.5 and the new distance calculations. Keep experimenting. If you want more specific answers, check out the Revolutions forums and maybe post over there as well.

@Kettyo
The battle effects on plots and the battle driven border changes are always on in my games regardless of i turn them on or off in options. Do i make something wrong or are these options set to be always on?
There supposed to be independently controllable. That aspect was tested along time ago now. How'd you go with it?

@os79
Anyway, can you give me code to limit both BarbCiv and Revolution to my set number of civs? I want 18 civs to be max.
Yeah sorry for not getting back sooner. That question is simple. Just edit Revolution.ini at:
; Max civs - This component won't add new civs with this number already in game (-1 for DLL limit)
MaxCivs = 18

@Zappara
My quick fix for it was to put extra check between build odds and order train functions - the new check there just sees if AI civ already has 3 existing Inquisitors and if it does, then it won't push that order to train more.
If you want me to put your code permanently into RevDCM to save you having to merge it next time, just upload it here. :goodjob:

@Arian
Will most likely release a new version with your find and a few other little things, towards the end of the week. Thanks again. The affected sdk file was included in the above zip in case you were after that :goodjob:

Cheers.
 
glider I think there are some serious bugs in the WoC implementation. Here are the bugs I've noticed. I'm playing LoR, but there is nothing that should be effecting these, and all these worked fine with the same dll changes LoR made in RevDCM versions prior to WoC's inclusion:

  • Major issues with events. Already delved into.
  • More major issues with events. Such as picking the just loose 5 food issue for a famine means the event continually refires, you must pay to make it stop. This never happened before with that event, and also I think this relates to why the AI gets stuck in infinite slave revolts (I have a feeling not paying and just "cracking down" doesn't work anymore).
  • For some reason I'm no longer getting overseas trade routes after researching Astronomy, over ocean tiles. I don't know, I'll look into this further, but this is a new issue since using the RevDCM 2.5 core, and there are no changes in the XML that LoR has made that could have effected this.
  • An assert related to blockading plots that I think might be related to the above bug. Reported the assert in the Revolutions bug reporting.

Anyway these are pretty serious bugs. Why can't we just get a RevDCM sans WoC, if these can't be fixed with the current WoC implementation?
 
I have to agree that WoC is causing more trouble than it's worth right now. Once it's ironed out, it shouldn't be a problem, but the logical thing to do right now is drop support for it until it's fixed.
 
I have to agree that WoC is causing more trouble than it's worth right now. Once it's ironed out, it shouldn't be a problem, but the logical thing to do right now is drop support for it until it's fixed.

I disagree.

For one we do not know if this is caused by the inclusion of WoC (for the events there seems to be some indication as far as I understand this thread, the continuous firing is as of now unanalysed to my knowledge though, let alone the trade routes).

For another, even if it is caused by the WoC, it brings substantial benefits, it is just that most current mods do not make good use of them yet (general problem with new xml options, they cannot get widely used unless supported by a widely used dll).

Third, by having the WoC exposed to a larger crowd will result in faster detection of glitches and hopefully also a faster resolution (as the WoC part now is analysed by more people).

Finally, by removing and reintegrating the WoC at a later point other bugs are potentially introduced. It also requires developer effort which imo is better spent on fixing the bugs outright.
 
We haven't had a version of RevDCM that was free of major bugs, like broken events, since WoC was introduced. That's very frustrating. Originally I resisted WoC, because I knew it was broken, and would bug out RevDCM, and I was right. I've bit my tongue the last month in the hopes that it was going to be stabilized. But it hasn't. It should never have been included in the first place, and now that we've gone for such a long time with buggy RevDCM releases, I'm really ready to back to what RevDCM was, a stable core for merging. The most obvious way to do that is to cut out the problem, which all started with the introduction of WoC.
 
One of main reasons I want and need an old style stable RevDCM version is that I'm going to rebuild LoR from scratch pretty much. Pair it down to a state with no ethnic art, and then begin to reinclude the cleaved art piece by piece to ensure total stability. All this work is going to be for naught, if the core is still bugged out though... which is caused by WoC, that's my issue. I don't know how to be more clear.
 
There is no universal answer to this. There are some general rules however.

If the other mod has a dll (as WoC lite has), you would need to merge the two dlls by merging their sourcecode and compiling your own dll.

If the other dll is identical or a subset of RevDCM, just use the RevDCM. As of now, WoC Lite is included in RevDCM, so you can just ignore that dll altogether (in fact you can ignore WoC Lite altogether as it adds nothing outside the dll).

This leaves the xml and Python changes of the two mods, those you will always need to merge. Depending on the mods, this will be somewhere between real easy (modular xml only mod) to a real mess (lots of Python and xml changes, the latter non-modular).

Python : use WinMerge to analyze the differences between the file in the mod and RevDCM and add the mod changes to the RevDCM Python. If the file does not exist on the RevDCM side, add it (unchanged).

XML, non-modular : use WinMerge to compare it to the standard xml, then add the changes to the corresponding RevDCM xml file (if it does not exist, add it unchanged).

XML, modular : check if the definition exists within RevDCM. If it does, merge the two (by again comparing the mods definition with the standard definition and adding its changes to the RevDCM version). If the definition does not exist within RevDCM, copy the mods file to the Modules dir.

No, I meant I wanted to merge in that new DCM module someone put up as an attachment few posts above into other mods that doesn't have any dll. That is all. I do not want to merge in RevDCM itself. Just that module someone posted few posts above. Now how do I do go about doing it? Use Rhy's Rise and Fall mod as an example to merge in that DCM module.

Edit: Here is the post with DCM module atachment: go here.
 
Hi ya
Totally understand that modders and players need to trust the mod they are working with. I need to trust it too! So many hours we dedicate to this beautiful game and we interract with it like to a lover. It is no different for me and at times we create our own hell for this. That said, we should not kill WoC without justification. The things that are not working at the moment are related to a single broken mechanism in WoC (interdependency xml reading). This affects some interdependent events and does not allow project interdependencies to be customised at the moment.

I cannot replicate the ocean trading bug in RevDCM sorry about that. It has taken me almost half an hour to retest it and this takes time away from fixing what needs to be fixed. I wonder why ocean trading is not working for you? Perhaps it is related to WoC in legends but not in RevDCM but I don't really see how. Your ocean trading finding and blockading issues seem to be more "generalised" issues that wouldn't spring from WoC in any way that I can visualise.

WoC is broken, but it appears to us the same and this means it is reliably broken (much better than unreliably broken). I'll give fixing it a go as soon as I can. If nothing else, I can patch it so that all the random event interdependencies work again, but cannot be customised. WoC will be killed, but only when the weight of evidence is such that there is no denying it is more trouble than it is worth. At this stage, it is flawed like my mother-in-law is flawed. She constantly narks all the time, but she reliably does this and so there is no problem that cannot be fixed without excellent chance of success.

Cheers.
 
I cannot replicate the ocean trading bug in RevDCM sorry about that. It has taken me almost half an hour to retest it and this takes time away from fixing what needs to be fixed. I wonder why ocean trading is not working for you? Perhaps it is related to WoC in legends but not in RevDCM but I don't really see how. Your ocean trading finding and blockading issues seem to be more "generalised" issues that wouldn't spring from WoC in any way that I can visualise.
Yeah, I wasn't sure about that one. I think it's failing because of the trade blockade fix, at least that's my hunch, and isn't related to WoC. Check out the failed assert I reported in Revolution forums. Seeing what this assert is might give you a clue. I know that can't be related to any differences between LoR and RevDCM, that assert has to be coming from the RevDCM core, and if my hunch is right it's in the unofficial patch.

As far as WoC goes, since most of it is working as intended, and it's just interdependencies that are failing, is there any way to remove interdependencies from modular loading, and free it from WoC, just let those tags run from original BtS code? Or is it too intertwined?
 
No, I meant I wanted to merge in that new DCM module someone put up as an attachment few posts above into other mods that doesn't have any dll. That is all. I do not want to merge in RevDCM itself. Just that module someone posted few posts above. Now how do I do go about doing it? Use Rhy's Rise and Fall mod as an example to merge in that DCM module.

Edit: Here is the post with DCM module atachment: go here.

That 'just' is the RevDCM xml, without the dll it wll not do anything (but interfere).

So if you merge it with a mod which does not contain a dll, copy over the dll to assets and do as I said before about merging the xml.

Note that the module is only part of the xml of RevDCM, so you still need to copy / merge the Python part, the missing xml and the dll from the full release.

imo you are better off just merging the regular RevDCM at this point, to me that mod it is intended as a modularized xml for future versions of RevDCM (as the current one is non-modular). I wish it were broken down further though, now with WoC in the dll it could be a lot more lightweight and modularised.

Eventually I will have to post my 'breakdown' I guess :) Still not tested though....
 
@Phungus
Another thought that just occured, is that if all else fails, I can build a non-woc version for you every now and then. You would then easily be able to merge in whatever changes in the woc version without difficulty, and when the changes becomes signifant say after half a dozen releases, I can rebuild another non-woc version.

Have taken your point about just killing of woc interdependency itself and letting interdependency fall to standard non-modularity. At this stage, it probably won't be neccesary to do that. Just a hunch. I'm yet to take a fresh look at the issue anyway.

Cheers.
 
That 'just' is the RevDCM xml, without the dll it wll not do anything (but interfere).

So if you merge it with a mod which does not contain a dll, copy over the dll to assets and do as I said before about merging the xml.

Note that the module is only part of the xml of RevDCM, so you still need to copy / merge the Python part, the missing xml and the dll from the full release.

imo you are better off just merging the regular RevDCM at this point, to me that mod it is intended as a modularized xml for future versions of RevDCM (as the current one is non-modular). I wish it were broken down further though, now with WoC in the dll it could be a lot more lightweight and modularised.

Eventually I will have to post my 'breakdown' I guess :) Still not tested though....

Ah, thank you.

Ah well. I was hoping for some mods that don't have DCM feature to be easily merged to that module. I already tried to merge this RevDCM to other mods that don't have any dll (not to mention ones that do have dll but not DCM). These tasks were DAUNTING! So I'm waiting a bit more before I do anything since I'm WAY FAR from being an expert at merging two big mods together *shudder*.
 
Note that the module is only part of the xml of RevDCM, so you still need to copy / merge the Python part, the missing xml and the dll from the full release.

I thought all of the XML was extracted and was included in the DCM module I provided. What XML is missing? :crazyeye:

Orion Veteran :cool:
 
Back
Top Bottom