Murphy's Law

Discussion in 'Modding' started by Ftoomsh, Jan 14, 2017.

  1. Ftoomsh

    Ftoomsh Well-Known Member

    Everyone is familiar with Murphy's Law. "Anything that can go wrong, will go wrong."

    Well, the night I release my first test mod of OCMODLITE in-house to my Old Cossacks (OC) colleagues, the devs release a new patch. So my well-tested mod just black-screens!

    Great. Now back to square one. Do I re-code the whole thing or do I try file merging and adjustments? How do I know, when is the next patch which will break my mod again? A day, a week, a month? Don't get me wrong. I like patches which make the game better. I am just scratching my head for the solution to this issue. I mean given that I have chosen to use the Official Mod Manager.

    We really need full code hooking in the Official Mod Manager so this doesn't happen (in most cases).
    Loner likes this.
  2. Francesco_Cavalli

    Francesco_Cavalli Active Member

    You get used to it after a while - took me about 20 minutes to re-do by copy pasting my code carefully into the new files. I have a feeling the biggest changes were to the tons of script before and after the unit parameters in the unit.script
  3. Ftoomsh

    Ftoomsh Well-Known Member

    My mod currently only has four modded files so it is not that complex. The modded files are the usual suspects for a basic parameter modder: country.script, unit.script, res.script, formations.cfg.

    So far, I have put res.script and formations.cfg into a new mod version with the same directory structure. All good so far. Now I must test the other two, one at a time. When I find the one or two files that are the issue then I will do as follows. I have been given advice on using backups of previous patches' files and then on using winmerge to find and correct the differences in the new patch. It's a bit of a learning curve for me but I will get there in the end. I need to get good protocols into place for when my mod gets complex.
  4. Setakat

    Setakat Member

    As far as hooking goes, here's something I prepared some time ago (script only). Its what I was using to apply my mods without having to go back through the files and make changes whenever they released an update outside of re-inserting the hooks.

    It was largely made for my own use, so if there's something you need that my hooks don't mange, let me know and I'll see what I can hack up. I haven't done any active work on it since I find Pascal a PITA to do any serious work with.
  5. General WVPM

    General WVPM Member

    Use winmerge, compare the files and decide per difference whether it should be copies into your mod or not.
    Ebel likes this.
  6. Lieutenant-Général

    Lieutenant-Général Active Member

    I don't understand why you willn't use my mod manager. With it, you will not have this kind of problems...
  7. Ftoomsh

    Ftoomsh Well-Known Member

    Yes, I have now been advised by ebel on how to use winmerge. Now, I just need to get up to speed on that.
  8. Ftoomsh

    Ftoomsh Well-Known Member

    I appreciate you have put good work into your Mod Manager. I have made a decision (because I am a very basic modder of modest knowledge at this stage) to stick with the Official Mod Manager.

    There is a chance you could convince the game developers to take your mod on board and merge its functions with the Official Mod Manager (OMM). That would give us code hooking or its equivalent in the OMM. That is if you want to do it of course. The developers have said they could incorporate mod community work when it is really good and if it fits the general concept of the standard game.
  9. "There is a chance you could convince the game developers to take your mod on board and merge its functions with the Official Mod Manager (OMM). That would give us ..."

    1) it source on Pithon... (that must be herd - as on Java...) (not critically, but..)
    2) it not downloadable from links in XP (def IE6, *max* IE - IE8; non-IE6-8/other-OS - do not offer)
    3) it config file visually and technically not ideal as want be (double idealy - diff tool compatibility)
    4) it not ideal as want be
    4a) not safe for scripts and cofnig files, cant check absent parms intersection and solve parms intersection prоblems for 2+ instaleld mod accesed same file
    4b) it non compatible with mods non supported it, needed mod import - w/o modmgs cfg file or for official modmgr
    5) it GUI visually not ideal as want be (not critically, but..)

    (yes, most points - as standart modmgr)
    Last edited: Jan 15, 2017
    Ebel likes this.
  10. Lieutenant-Général

    Lieutenant-Général Active Member

    Thank for your return. I know my mm is very basic, it just give some tools to simplify modder life.

    1) What is the problem?
    2) If i understand, google drive is the problem for this point.
    3) Can you be more accurate?
    4a) My mm install mod one by one, so it can install several mod accesed same file, and in all of case you not install two mods that modified the same lines...
    4b) Solved in 1.4.6
    5) i know i know...
  11. "4)?"

    "4a) My mm install mod one by one, so it can install several mod accesed same file, and in all of case you not install two mods that modified the same lines..."
    1. as i am known, it find patch position - non heuristically(and not by fixed positin as diff), but via TextSearch - it can get inaccure result... And only 1st occurence... And more, format - expects 1st occurence, but file can be changed by developers and after that - mod really needed non 1st occurence id TextSearch... Or text occurance - can be even non found, becouse changed by developers.
    2. in N scripts - 1 line can be modified more that one time... a) and all needed to be applyed; b) ignored/nonignored(and ideally - answers saved by mm) by request to user for every case/mod accesed that line.
  12. Lieutenant-Général

    Lieutenant-Général Active Member

    Ok i understand
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice