Nothing in the log?
Nothing in the log?
I think it's the same thing as before.
This is part of it:
Spoiler Alert, click show to read:
Yup, definitely a modeldb error. Have you got a backup?
I think someone quite a while back had this problem with BC as one of their team members uses Linux and it changes the formatting of the BMDB. You may want to ask Wudang_clown if this has been sorted or not.
I do have a back-up, but it must have been something I have changed, since the file was working before I added some of the mount entries from SS. However, every entry I added was a clone of an existing BC entry with just the model name and animation changed, so there should be no texture or attachment problems. I thought it might be a missing animation or skeleton issue, since I'm not fully sure I merged the skeleton and animations files correctly. The checker no longer detects any BMDB errors, but there's clearly still a problem.
How will I know if there's a missing animation or skeleton? The log will tell me?
I tested this checker, and it's not working. I tested provided teutonic battle_models file by making an intended error, just added one letter more in mount_pony england entry. Checker generated modeldbsyntaxerrors.txt file, but it's empty.
From other threads I have seen that you use Gracul's checker. Once you have saved your modeldb file with Gracul's tool (it adds the "blank" line and lumps animation lines together) it's not possible anymore to read it with this python tool.
You also have to edit this tool if you have custom factions in your modeldb (see OP).
No no no. Like I said, I tested bmdb file provided with this checker in download link at first post of this thread. And by the way, which checker is better? This or Gracul's one?
Gracul's checker seems to be more flexible as it uses info from several other files. This checker requires a certain way of formatting to be able to read the file properly (hence the empty report file) and has no other options. So, Gracul's tool would be 'better' due to its additional functions.
Did you run the checker before making the intentional error?
No, I didn't do it before. Now it's working, thanks.
Good to know, all the best for your project.
how would I use a different modelDB, one that's been edited from SS 6.4, with BC units added to it? Also, how do you open the .py file? Is their a tutorial for this?
Do you have Python 2.5.4 installed? The .bat file calls the .py file but the correct version of Python has to be installed for it to run.
Thanks, I added a note and link to Python versions (32 and 64bit)
Hi Gigantus. I downloaded the checker in the original post, manually formatted a (modified) battle_models file in the same way that you've done, and ran it with the correct version of Python installed. I'm getting one error and nothing else in the log: "****** Faction count error at line 501, count says 1 but number of entries is 0" although there should be no faction reference on that line if I'm understanding it correctly. Here's the relevant code:
That section of code mirrors a section of your code in your NewFactionTutorial, but your checker doesn't pick up the same error when I run it against your file. Any ideas as to what's going on?Code:500: 5 Horse
501: 8 fs_camel 0
502: 0 0 -1 0 0 0 0 0 0
503: 14 mount_elephant
504: 1 4
505: 52 unit_models/Mounts/Elephant/mount_elephant_lod0.mesh 121
Does it give you a "Unit count at top of file" line? If not then there is some formatting that the checker can't handle, which might explain the error you mentioned.
Can you post the whole section for that model, in code as you did?
This is the only line in the log:
So I guess it must be a formatting error, but the only possible error that comes to mind after going over the file is the fact that I have 100+ instances of:Code:****** Faction count error at line 501, count says 1 but number of entries is 0
Instead of:Code:1 4 None
And here is the section of code:Code:1
4 None
Code:...
492: 5 slave
493: 49 unit_models/Mounts/Camel/textures/sench_t.texture
494: 49 unit_models/Mounts/Camel/textures/sench_n.texture
495: 41 unit_sprites/slave_Mount_Camel_sprite.spr
496: 4 merc
497: 49 unit_models/Mounts/Camel/textures/sench_t.texture
498: 49 unit_models/Mounts/Camel/textures/sench_n.texture
499: 40 unit_sprites/merc_Mount_Camel_sprite.spr 0 1
500: 5 Horse
501: 8 fs_camel 0
502: 0 0 -1 0 0 0 0 0 0
503: 14 mount_elephant
504: 1 4
505: 52 unit_models/Mounts/Elephant/mount_elephant_lod0.mesh 121
506: 52 unit_models/Mounts/Elephant/mount_elephant_lod0.mesh 625
507: 52 unit_models/Mounts/Elephant/mount_elephant_lod0.mesh 3600
508: 52 unit_models/Mounts/Elephant/mount_elephant_lod0.mesh 10000
509: 7
510: 6 sicily
511: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
512: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
513: 6 poland
514: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
515: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
516: 5 milan
517: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
518: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
519: 7 hungary
520: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
521: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
522: 8 timurids
523: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
524: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
525: 5 slave
526: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
527: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
528: 4 merc
529: 53 unit_models/Mounts/Elephant/textures/Elephant.texture
530: 60 unit_models/Mounts/Elephant/textures/Elephant_normal.texture 0
531: 0
532: 1
533: 8 elephant
534: 19 fs_african_elephant 0 0 0 -1 0 0 0 0 0 0
Your assumption could be correct about the "1 4 none" entry not being processed correctly.
Have you tried using the EDU editor? It also has a problem with some formatting but between the two you can usually find errors.
Edit: line 534 seems to be a combination of two lines
Unfortunately that program goes into an endless line-reporting loop when I run it, even with the original mod that I'm making modifications of. My post on the last page of that thread has the details.
Correct.
I have tested the syntax-checker with a ModelDB file that also splits that line.
The file was originally formated with patched version of the FormatModelDBFile.py that adds more line breaks.
Patched the syntax-cheker (worked with your version) in order to solve the problem
Is working well :beerchug:
I have attached both patched scripts here:
Attachment 326723
EDIT (25-Jun-2015):
Updated to version 0.55a, as per comments in post #88, # 103 and # 105
EDIT (15-May-2021):
Updated to version 0.56
https://www.twcenter.net/forums/showthread.php?811446
Actually, there are 5 lines there:
19 fs_african_elephant Primary skeleton (or primary animation)
0 Character counter for a "zero characters but mandatory" line (this one seems to be related to seconday skeleton or secondary animation
0 Counter ( in normal "soldiers" this one is a mandatory "number of lines below" counter linked to primary attachment animation ). Known valid values: 0,1,2.
0 Counter ( in normal "soldiers" this one is a mandatory "number of lines below" counter linked to secondary attachment animation ). Known valid values: 0,1,2.
-1 0 0 0 0 0 0 The final "torch" line
Note: The red one is the infamous "zero + double space"
-First space cames after the counter itself.
-Second space is because every line (even an "empty" one) must end with its own blank space
====
Hope the above helps
:)