I haven't seen any instances of any of those in EDCT or EDU for the mods I'm using to test the checker. I'd like to have a copy of the EDCT and EDU that contains those, if I may.
I haven't seen any instances of any of those in EDCT or EDU for the mods I'm using to test the checker. I'd like to have a copy of the EDCT and EDU that contains those, if I may.
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
It's from an update of 'The long road' that I am working on with Keogh: https://www.mediafire.com/file/rcfz1...+files.7z/file
It's been unusually long since I released a new version, both in the number of changes and in time. Seems I won't be able to finish "everything sound related" which I intended to include in the next version too soon, so I'm pushing this out there for now.
Originally Posted by change log
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
Great tool, here's some feedback:
- some perfectly functional events are not recognised, such as GeneralAssaultsGeneral, GovernorBuildingDestroyed (probably more, those are just the ones which my checking results yielded)
- same with these functional conditions: FactionCultureType, I_CharacterExists, I_TurnsSinceLastCrusade, I_TurnsSinceLastJihad
- same with the attribute GunpowderCommand
- you can log counters in the campaign script via log_counter [counter name], so those are not "declared, but never checked" errors
- just because an accent has no factions assigned to it in descr_accents does not mean it is obsolete and can be deleted, there are other reasons to have unique accents, such as for a single unit or purely battle-related lines in general
- disband_to_pools (yes/no) is a functional keyword in descr_sm_factions and goes between has_family_tree and can_transmit_plague, so not an "Unrecognized faction detail"
- same with name_faction in descr_strat, it goes below the denari_kings_purse line and is used as follows: name_faction diplomat moors ; makes the specified agent use the name list of another specified faction (kingdoms feature)
- pre-placed watch towers are a thing in descr_strat, at the very end between the faction relations and the campaign script assignment, following syntax:
- suggestion: add a check to the EDU parser that lists mismatches between the number of armour_ug_levels & armour_ug_models, those can be sneaky errorsCode:region London_Province farming_level 0 famine_threat 0 watchtower 100 100
Not meant to be criticism, just feedback to perhaps help make this tool even better. Thank you very much for developing it! The feature I love most are the lists of unused files, really helps with file size. Keep up the great work
Welcome to the discussion, and thanks a lot for your feedback! I am not familiar with all aspects of modding, so I rely on others like yourself to supply their knowledge. Suggestions/bug reports are always welcome.
In general, the tool only recognized those events, conditions and whatnot that have been used in the mods I am testing with (most prominently EB2, but also ROTK, SSHIP and TGC). Yours apparently uses some others, and I don't know just which mod that is? It would be helpful if I could have a copy of that, whether a public release or a snapshot of your current development build. It would serve as a template for how these bits are written, and I would run test the expansion of parsing on those.
All your reports and suggestions seem sound and I'll act on them.
I don't know how this is done. I take it you have such uses in your mod? Could you point to the files referencing the accents in this way?just because an accent has no factions assigned to it in descr_accents does not mean it is obsolete and can be deleted, there are other reasons to have unique accents, such as for a single unit or purely battle-related lines in general
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
Thanks for the welcome!
I was testing it on a WIP build of BOTET (not public) & a sub-mod of Divide & Conquer (AGO). I think you should really run a check on the vanilla game and/or the kingdoms expansions (maybe Bare Geomod). The events I mentioned are used in vanilla for example. I'll just type out some example conditions and you could copy-paste them into a different mod and then run your checker. Won't give access to non-public builds at the moment, sorry.
I_CharacterExists means that the character, well exists, not that the attacking general IS him.Code:Trigger randomtriggername1 WhenToTest GeneralAssaultsGeneral Condition FactionCultureType southern_european and I_CharacterExists test_dude_label1 ; can be a regular name, but usually used with labels to uniquely identify characters Affects GoodCommander 1 Chance 25
Here's an example for the accents in descr_sounds_accents:Code:Trigger randomtriggername2 WhenToTest CharacterTurnEnd Condition I_TurnsSinceLastCrusade <= 5 Affects BadAmbusher 1 Chance 25The faction line only assigns the default accent that faction uses on the strat map and for units (if no other accent is specified in the EDU!). As you can see, I have accents without any faction assignment and that is because they are used by individual units in files such as export_descr_sounds_units_voice & export_descr_sounds_soldier_voice & then assigned to a unit in the EDU by adding the "accent Ghost" line. But you have to list every existing accent in descr_sounds_accents, regardless of whether or not it is used a faction default. I would say an accent is only obsolete if not referenced in any of the following files:Code:accent SylvaniaStrat factions hungary, portugal accent Sylvania factions accent Ghost factions accent VampireMonster factions
descr_sounds_units_confirm.txt
export_descr_sounds_prebattle.txt
export_descr_sounds_soldier_voice.txt
export_descr_sounds_stratmap_voice.txt
export_descr_sounds_units_battle_events.txt
export_descr_sounds_units_voice.txt
And any accents mentioned in those files are only obsolete if they are not referenced in the EDU and are not a default accent in descr_sounds_accents. Sound editing is pretty complex and I don't claim to understand everything and I doubt you will find anyone who does. Honestly think that simply deleting the "obsolete accent, can be deleted" output might already be good enough. It is a potentially dangerous false error that might make inexperienced modders commit accentocide.
I don't currently have a working M2TW installation and have misplaced my CD, so cannot test with vanilla I'm afraid. I wouldn't have passed on your mod if you gave me a version, but no worries. Let me know when you release either of those and I'll incorporate your mod in testing. Bare Geomod should be possible though, I'll give that a try. I have one version of it zipped, but can't remember if I did use it earlier. It's been a long while since I did, anyway.
I_CharacterExists has a label reference, I see. That means it should check for the possibility of the label ever existing, but I don't currently read where labels are set I believe. I'm guessing descr_strat and the script would be the sources of labelled characters.
There's no lack of TODO markers in my code already and another saying the labels should be checked can join the party, of course.
Thanks, that is an excellent place to start.
That got me laughing . I'm not all that worried about inexperienced modders - I think the users of this tool are all experienced modders, pretty much. At any rate, if someone decided to add a faction-less accent, they had to be doing it for a particular reason. There has been a number of false reports in the tool previously, and I keep adding them as well with my less than perfect knowledge of how things click together. Caveat emptor.
Gig posted this on the org. Collecting it here so I have everything in one place.Originally Posted by Gigantus
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
I think the 'unassigned' accent issue has merit. If you decide to not use an accent that is already implemented you will have to either remove it completely from all other files or simply leave it listed in descr_sounds_accents to avoid error messages.
I am not sure how you would use an accent if no faction is assigned to it, that would require a hands on example. export_descr_unit_voice has this hierarchy for example:
Which means unless the faction of the NE Bodyguard unit is assigned to a general and uses that accent that custom sound is not going to be used when it gets selected.Code:accent English ; first level class General ; second level vocal Unit_Select ; third level unit NE Bodyguard ; forth level event folder data/sounds/Voice/Human/Localized/Battle_Map English_General_Generic_Generals_Bodyguard_1.wav English_General_Generic_Generals_Bodyguard_2.wav end
You can assign an accent that is listed in descr_sounds_accents directly to a unit in the EDU with the "accent" line that you can insert below the voice_type. That would leave the factions list in descr_sounds_accents empty if the accent is not used for an entire faction at the same time. So there are perfectly legitimate reasons to have accents without faction assignment. Imagine something like a Dutch unit of mercenaries, obviously that is not an accent that exists in the game. Now if you wanted that unit to speak Dutch, you create an accent for it in export_descr_sounds_units_voice, list it in descr_sounds_accents and assign it to that mercenary unit only. Nothing speaks against that and still the Dutch accent looks like it's missing a faction assignment, which is not an error.
Also a neat thing to know: Units that contain a general always use the General voice_type (class) within their accent, even if they are in a unit that would normally make use of the Heavy or Light voice_type.
And another fun fact: Medium and Female are viable to use as a voice_type (class). They are just not used in vanilla.
How did you fix it?
I have the same problem. I've tried everything. The application works, but it will not follow the path to my data folder. This is what I have set:
SET EDITOR=notepad
;Set DATAFOLDER to the data folder for your mod, such as C:/Games/M2TW/mods/my_mod_name/data
;C:/Games/M2TW needs to be changed to wherever your M2TW is installed to.
;my_mod_name needs to be changed to whatever your mod folder is called.
set DATAFOLDER=D:\SteamLibrary\steamapps\common\Medieval II Total War\mods\crusades\data
;Set STRAT to the folder containing your campaign script and descr_events.
;Probably this is the default imperial_campaign.
set STRAT=D:\SteamLibrary\steamapps\common\Medieval II Total War\mods\crusades\data\world\maps\campaign\imperial_campaign
REM java -jar target\BovineM2twCheck.jar configuration.txt
java -cp target main.BovineM2twCheckKt configuration.txt
start “%EDITOR%” eda.error.log
start “%EDITOR%” edct.error.log
start “%EDITOR%” filereferences.error.log
start “%EDITOR%” unit.error.log
start “%EDITOR%” script.error.log
start “%EDITOR%” sounds.error.log
start “%EDITOR%” stratmap.error.log
start “%EDITOR%” sundry.error.log
start “%EDITOR%” checker.output.log
I put the Bovine folder on the C drive and it still will not follow a path. It just says it cannot find the files, etc. etc. Then says: "Yah! No problems!"
There is a huge problem. In my mod of Stainless Steel, the Byzantine faction will not load now. I know it is some kind of text error, but I cannot find it, and restoring the original from SS 6.4 also does not work. It is some file that loads before the Strat file, but I don't know which one that is.
Also, my data folder from SS 6.4 off of Steam is in the "crusades" folder to trick Steam into starting it.
Can anyone tell me what I may have done wrong? Any suggestions are welcome. Thanks!
This is what the first page shows me:
Sun Jul 18 16:30:38 EDT 2021: Starting up the checker.
Sun Jul 18 16:30:38 EDT 2021: Creating output files.
Sun Jul 18 16:30:38 EDT 2021: Initializing components.
Sun Jul 18 16:30:38 EDT 2021: Constructor finished. Starting reading process.
Reading configuration files...
config/acceptedMissingFiles.txt
config/vanillaFiles.txt
config/acceptedNonReferencedFiles.txt
config/acceptedMissingMounts.txt
config/acceptedUnusedMounts.txt
config/acceptedUnusedEngines.txt
config/acceptedMissingSkeletons.txt
config/acceptedUnusedSkeletons.txt
config/acceptedUnusedBattleModels.txt
config/acceptedUnusedStratModels.txt
config/genericSounds.txt
config/unquotedDiplomacySounds.txt
Sun Jul 18 16:30:38 EDT 2021: Configuration files reading complete. Starting reading game files.
text/export_ancillaries.txt
Cannot find text file text/export_ancillaries.txt. Are you sure you provided the correct location for the data folder?
text/export_vnvs.txt
Cannot find text file text/export_vnvs.txt. Are you sure you provided the correct location for the data folder?
text/historic_events.txt (suffix filter _title)
Cannot find text file text/historic_events.txt. Are you sure you provided the correct location for the data folder?
text/historic_events.txt (suffix filter _body)
Cannot find text file text/historic_events.txt. Are you sure you provided the correct location for the data folder?
text/expanded.txt
Cannot find text file text/expanded.txt. Are you sure you provided the correct location for the data folder?
text/export_units.txt
Unable to find unit description file (text/export_units.txt), this may result in a lot of false errors.
descr_missions.txt
Unable to find culture definition file (descr_missions.txt). This will be a problem.
descr_names.txt
text/names.txt
descr_sm_factions.txt
Unable to find list of factions (descr_sm_factions.txt). This will be a problem.
descr_cultures.txt
Unable to find culture definition file (descr_cultures.txt). This will be a problem.
export_descr_buildings.txt
descr_strat.txt
descr_religions.txt
Unable to find list of religions (descr_religions.txt). This may cause false reports.
descr_model_strat.txt
Unable to find list of strat models (descr_model_strat.txt). This may cause false reports.
descr_sm_resources.txt
Unable to find list of campaign map resources (descr_sm_resources.txt). This may cause false reports.
descr_sounds_accents.txt
text/diplomacy_speech.txt
world/maps/base/descr_sounds_music_types.txt
descr_sounds_music.txt
export_descr_sounds_stratmap_voice.txt
export_descr_sounds_units_voice.txt
export_descr_sounds_soldier_voice.txt
export_descr_sounds_narration.txt
export_descr_sounds_advice.txt
export_descr_character_traits.txt
descr_events.txt
Loading script campaign_script.txt
export_descr_advice.txt
descr_engines.txt
Unable to find list of engine models (descr_engines.txt). This may cause false reports.
unit_models/battle_models.modeldb (syntax check)
Cannot find the model DB file (battle_models.modeldb).
No checks have been performed on the model DB.
This is okay if you are ONLY using vanilla models, if not you may have entered your mod's data folder wrong.
descr_mount.txt
Unable to find mounts (descr_mount.txt), this may cause a lot of false errors detected.
descr_skeleton.txt
Unable to find list of skeletons/animations (descr_skeleton.txt). This is okay only if you are using only vanilla models, else you may have given a wrong path to your mod's datafolder. Will use the vanilla list for references.
vanillaSkeletons.txt
descr_engine_skeleton.txt
Unable to find list of skeletons/animations (descr_engine_skeleton.txt). This is okay only if you are using only vanilla models, else you may have given a wrong path to your mod's datafolder. Will use the vanilla list for references.
vanillaSkeletons.txt
descr_character.txt
Unable to find file listing characters (descr_character.txt). You may have given a wrong path to your mod's datafolder.
export_descr_unit.txt
Cannot find export_descr_unit.txt. This will probably produce additional false errors in output.
export_descr_ancillaries.txt
Sun Jul 18 16:30:38 EDT 2021: Reading finished. Starting checking process.
(There are however already reported 36 issues, probably because of issues encountered when parsing the files)
Sound related
Code related
Stratmap related
File references
Unit related
campaign_script.txt (for battle model usage)
As the vanilla skeletons are in use absent descr_skeleton.txt, whether animation files are actually in use is impossible to check. Skipping these reports.
Listing unused elements
Sun Jul 18 16:30:39 EDT 2021: Finished checking process without any crash. Yay!
There are 38 issues reported.
This redmarked way of pointing to the data folder is ancient, abandoned since some time in 2018. I fail to understand where people still find instructions saying to use this way, please let me know where I say this. It is no longer true.
What you should do, is copy config/configuration.txt to the root folder of the tool (that is, one step up from where it is now), and set your folders in there - as well as any other changes to the configuration you want (there probably are some). The reason why you want to make a copy of the configuration file there, is so your configuration is not overwritten when you get a new version of the tool.
-----------------
A brief note, if you are going to check more than one mod, you would make another copy of the configuration file for each mod, having their own set of configuration options - most prominently each pointing to their own mod's data folder. You would change which configuration file the tool uses at the moment by modifying the bluemarked line in runCheck.bat. My own tool folder looks like this, having quite a few mods I can switch between:
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
After extracting the Bovine files, they appear in a folder called "Bovine". The text you see is what is in the config file. I downloaded it from this site, which redirected me to a website where it could be downloaded. The stuff below the Strat line is stuff I added after reading a tutorial on the internet. It does not appear in the original Bovine config file. Every thing in that file is preceded by a semicolon.
Can you tell me where I can download the most recent version of the Bovine checker? I mean, exactly where?
Thanks!
Your mistake was to follow that tutorial then - whichever tutorial and by whoever that might be. Which is it?
The instructions you should follow are here - the first post of this thread. The download link is provided at the top there.
To be clear, this is the correct location and where the first post points to.
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
Ok, I found that tutorial on the internet and on Steam. He said only that it worked for him and might not work for others, so it's not his fault if it did not work for me. At least it started up for me and did some things, which didn't happen for me before. Here is the link:
https://steamsplay.com/total-war-med...or-medieval-2/
Yes!!!!
I finally got it to work!
For me, the problem was that my downloaded "Definitive Edition" of MTW2 from Steam did not contain a "documentation" folder, so I had no idea where to put the Bovine checker. I tried many different places. Finally, I just created a folder called "documentation" and put a folder called "tools" inside it and then put the Bovine Checker folder in the new "tools" folder. Then after moving the config.txt file, I ran the checker and it finally worked!
Most of the errors appear to be junk left over from RTW or things that MTW2 or Stainless Steel never got around to doing, but somewhere in there I am hoping that I can find the problem of why Byzantium will not load in campaign mode.
Thanks for your help! I greatly appreciate it! Really!
Thanks. I have posted a comment on that tutorial (pending moderation), which should hopefully help others avoid the same pitfall. I'll also modify the checker to warn if you've set those environment variables.
I am confused how your solution worked. As far as I can tell, having such a documentation folder should not really have made much of a difference. The checker can be located anywhere you please, as long as you properly point to where your mod lies. The only reason why there is a documentation folder on MY system is because the tool lives there on EB2's Subversion repository. Anyway, good that you got it working.
-----------
If your mod fails to load the campaign, it's possibly some reference to something that no longer exists after your changes to SS - though many such faults will rather manifest in crashes or other unwanted behaviour at later stages, such as when loading a battle. This tool may help point out such errors, if you are in luck and it covers whatever is your fatal error. It does not check everything that could possibly be wrong.
Your best bet in general to identify causes of crashes is to track your changes with some kind of version control, like Git or Subversion. I'm taking a wild guess here, but assume that you don't do that now? That way, you can step back to an earlier version known to run correctly and find what changes are made in the version when it starts crashing. It makes for far less work to check up only the changes in a couple of files rather than a full checkup on every aspect of your mod.
As for which version control system to use:
- Git is newer and requires no central server. You'll still want a central location unless you are a solo developer - you can easily get a free central repository for your project on Github.
- Subversion is easier to use, at least for the daily basic usage. Setting it up is however somewhat complicated the first time.
Last edited by bovi; July 29, 2021 at 10:05 AM.
Having problems getting EB2 to run? Try these solutions.
================
I do NOT answer PM requests for help with EB. Ask in a new help thread in the tech help forum.
================
I think computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image. - Stephen Hawking
Thanks very much for that information on Git and Subversion. Boy, do I definitely need those. The system.log will only tell me that an unspecified error caused the crash, so I know it is a misspelled word or something like that somewhere. Now, its too late to go back. I hope the bovine checker will find it. I just cleaned up all the errors in the EDA file that Bovine found. I will move to the next easiest one and so forth.
I will go look for an example of how using the correct path in the config file just never worked for me. I even put my mod on the desktop and ran the checker with only C:/users/dldad/desktop/MyMod/data as the path and it still said the path was incorrect. I'm not a computer expert, but I can read a path in the toolbar.