Thanks !
I've created a formatted version of the modeldb file that might
be easier to edit. I uploaded it here:
http://www.totalwar.org/Downloads/Rt...ads/RTWupload/
It is called formatted_modeldb.zip.
For those technically interested I parsed it with a MatLab script using
regular expressions to format as per KleeMann's suggestions. This file
has no other mods to it, it is just the vanilla battle_models.modeldb
with the appropriate carriage return/linefeed control codes inserted where
needed. I tested it with the --io.file_first switch and it worked. I then
broke it (by changing one of the string numbers to something incorrect) to make sure I was actually reading it and got the usual CTD. I then changed it
back and tested it again to make sure the game loaded.
Any feedback on its usefulness would be appreciated.
Happy modding.
KnightErrant this is cool definitely much easier to read, should make modding units a breeze.
Thanks!
KnightErrant
Beautiful! Even now when I am already familiar with file. I hope that my friend will successfully write program to work with it for easy moding. That sorted file, I think, can help.
Watching
EURO 2008 & Mobile Suit Gundam 00
Waiting for: Wimbledon 2008.
Thanks guys.
Thanks to everyone making such a great work !
Need some help : I have added some unit (which was before just a rebel one )
I have made changes in .modeldb , export_descr_unit , export_descr_buildings , but I am getting this error:
Script Error in DLV_ext/data/export_descr_buildings.txt, at line 150, column 52
Unknown unit type specified
I wonder where I could miss that description...? ( using bat file with MOD dir )
Thanks ..
Have you gone to the line to see what is written there? Perhaps it is a spelling mistake? Make sure that the unit name matches in both the export_descr_unit and export_descr_bulidings.txts
Made my first unit today. Nothing fancy but it worked so I now know I can do more. Thanks for the guide and the comments, they were all really helpful.
Thanks for that info, finally i was able to mount musketeers. Hooah.
Please can somebody help me
i want add this unit.
(I dont see there problem, but game wasn´t run . )
I make quite many copy/paste from Norse_swordmen.
THX for help
This write me systemlog
21:27:16.000 [script.err] [error] Script Error in MCRM/data/export_descr_unit.txt, at line 14771, column 2
Could not find soldier battle model for unit type 'GR_Slovan'.
21:27:16.000 [data.invalid] [error] DATABASE_TABLE error found : error reading record from file MCRM/data/export_descr_unit.txt.
Descr_unit.txt
type GR Slovan
dictionary GR_Slovan ; Slovanski sermiari
category infantry
class heavy
voice_type Heavy
banner faction main_infantry
banner holy crusade
soldier GR_Slovan, 48, 0, 1.2
attributes sea_faring, hide_forest, can_withdraw
formation 1.2, 1.2, 2.4, 2.4, 4, square
stat_health 1, 0
stat_pri 11, 2, no, 0, 0, melee, melee_blade, piercing, sword, 25, 1
;stat_pri_ex 0, 0, 0
stat_pri_attr no
stat_sec 0, 0, no, 0, 0, no, melee_simple, blunt, none, 25, 1
;stat_sec_ex 0, 0, 0
stat_sec_attr no
stat_pri_armour 5, 7, 6, metal
;stat_armour_ex 5, 7, 8, 0, 7, 6, 6, metal
stat_sec_armour 0, 0, flesh
stat_heat 4
stat_ground 1, -2, 3, 2
stat_mental 5, normal, trained
stat_charge_dist 30
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 400, 150, 75, 55, 400, 4, 100
armour_ug_levels 2, 3, 4
armour_ug_models GR_Slovan, GR_Slovan_ug1, GR_Slovan_ug2
ownership milan, slave
era 1 milan
era 2 milan
;unit_info 11, 0, 18
Modelsdbfile
9 GR_Slovan
1 4
59 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_lod0.mesh 121
59 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_lod1.mesh 900
59 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_lod2.mesh 2500
59 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_lod3.mesh 6400
2
5 milan
71 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_milan.texture
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_normal.texture
50 unit_sprites/denmark_Viking_Raiders_ug2_sprite.spr
5 slave
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_rebels.texture
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_normal.texture
48 unit_sprites/slave_Viking_Raiders_ug2_sprite.spr
2
5 milan
58 unit_models/AttachmentSets/Final Danish_milan_diff.texture
60 unit_models/AttachmentSets/Final Danish_denmark_norm.texture 0
5 slave
58 unit_models/AttachmentSets/Final Danish_slave_diff.texture
58 unit_models/AttachmentSets/Final Danish_slave_norm.texture 0
1
4 None
14 MTW2_Swordsman 0
2
18 MTW2_Sword_Primary
14 fs_test_shield 0
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
13 GR_Slovan_ug1
1 4
63 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_ug1_lod0.mesh 121
63 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_ug1_lod1.mesh 900
63 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_ug1_lod2.mesh 2500
63 unit_models/_Units/EN_Lmail_Hmail/norse_swordsmen_ug1_lod3.mesh 6400
2
5 milan
71 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_milan.texture
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_normal.texture
50 unit_sprites/denmark_Viking_Raiders_ug3_sprite.spr
5 slave
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_rebels.texture
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_normal.texture
48 unit_sprites/slave_Viking_Raiders_ug3_sprite.spr
2
5 milan
58 unit_models/AttachmentSets/Final Danish_milan_diff.texture
58 unit_models/AttachmentSets/Final Danish_milan_norm.texture 0
5 slave
58 unit_models/AttachmentSets/Final Danish_slave_diff.texture
58 unit_models/AttachmentSets/Final Danish_slave_norm.texture 0
1
4 None
14 MTW2_Swordsman 0
2
18 MTW2_Sword_Primary
14 fs_test_shield 0
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
13 GR_Slovan_ug2
1 3
69 unit_models/_Units/LN_3QPlate_HalfPlate/norse_swordsmen_ug2_lod0.mesh 121
69 unit_models/_Units/LN_3QPlate_HalfPlate/norse_swordsmen_ug2_lod1.mesh 1225
69 unit_models/_Units/LN_3QPlate_HalfPlate/norse_swordsmen_ug2_lod2.mesh 6400
2
5 milan
80 unit_models/_Units/LN_3QPlate_HalfPlate/textures/mtw2_LN_halfplate_milan.texture
81 unit_models/_Units/LN_3QPlate_HalfPlate/textures/mtw2_LN_halfplate_normal.texture
51 unit_sprites/denmark_Norse_Swordsmen_ug2_sprite.spr
5 slave
81 unit_models/_Units/LN_3QPlate_HalfPlate/textures/mtw2_LN_halfplate_rebels.texture
81 unit_models/_Units/LN_3QPlate_HalfPlate/textures/mtw2_LN_halfplate_normal.texture
49 unit_sprites/slave_Norse_Swordsmen_ug2_sprite.spr
2
5 milan
58 unit_models/AttachmentSets/Final Danish_milan_diff.texture
58 unit_models/AttachmentSets/Final Danish_milan_norm.texture 0
5 slave
58 unit_models/AttachmentSets/Final Danish_slave_diff.texture
58 unit_models/AttachmentSets/Final Danish_slave_norm.texture 0
1
4 None
14 MTW2_Swordsman 0
2
18 MTW2_Sword_Primary
14 fs_test_shield 0
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
Last edited by AliAS; 02-24-2007 at 21:51.
Medieval II : Total War userbars HERE
www.totalwar.hotgames.cz < Admin of biggest Czech and Slovak fansite.
Hi AliAS
I think part of the problem might be your
AttachmentSets entries in the modeldb file.
Unless you copied and renamed them, these
don't exist.
You can change them back, milan -> denmark, and change the character counts back,Code:58 unit_models/AttachmentSets/Final Danish_milan_diff.texture 58 unit_models/AttachmentSets/Final Danish_milan_norm.texture 0
but keep your milan textures in the body blocks.
Check all 3 upgrade levels.
And just to check, you're also using the io.file_first switch?
Last edited by KnightErrant; 02-24-2007 at 23:44.
I made that shield textures first so there is no problem.
I also using io file .
And i have also textures for milan. But game still dont run
It looks problem is can be here. Tha game can´t battle soldier battle model. but for what ??
Last edited by AliAS; 02-25-2007 at 10:09.
Medieval II : Total War userbars HERE
www.totalwar.hotgames.cz < Admin of biggest Czech and Slovak fansite.
i start again with new name and now all funcion great.
Medieval II : Total War userbars HERE
www.totalwar.hotgames.cz < Admin of biggest Czech and Slovak fansite.
Glad you got it working. Sorry I couldn't help you
better.
You say sorry me, you don´t need say me sorry.
I thank you for help and for your great formated_battlemodelsdbfile
If you don´t edit it a never can make new unit
Medieval II : Total War userbars HERE
www.totalwar.hotgames.cz < Admin of biggest Czech and Slovak fansite.
Hoping for a quick hand...I'm trying to create a Spear unit for sicily out of "Merc. Dismounted Frankish Knights" I can get everything except I get those silver looking ghost armies and I just can't figure out how to get it to look...well "normal" sorry for the long post but was hoping someone smarter than me could point out my errors..thanks.
type Sicilian Spearmen
dictionary Sicilian_Spearmen ; Sicilian Spearmen
category infantry
class spearmen
voice_type Heavy
accent French
banner faction main_spear
banner holy crusade
soldier Dismounted_Frankish_Knights, 48, 0, 1.35
attributes sea_faring, hide_forest, hardy, can_withdraw
formation 1.0, 1.0, 2.0, 2.0, 4, square
stat_health 1, 0
stat_pri 11, 4, no, 0, 0, melee, melee_blade, piercing, spear, 0, 0.7
;stat_pri_ex 0, 0, 0
stat_pri_attr spear, spear_bonus_10
stat_sec 0, 0, no, 0, 0, no, melee_simple, blunt, none, 0, 0.7
;stat_sec_ex 0, 0, 0
stat_sec_attr no
stat_pri_armour 9, 9, 6, metal
;stat_armour_ex 7, 0, 0, 0, 4, 6, 6, metal
stat_sec_armour 0, 0, flesh
stat_heat 5
stat_ground 1, -2, 3, 2
stat_mental 11, normal, trained
stat_charge_dist 30
stat_fire_delay -2500
stat_food 60, 300
stat_cost 1, 570, 200, 90, 70, 870, 4, 160
armour_ug_levels 3, 4
armour_ug_models Dismounted_Frankish_Knights, Dismounted_Frankish_Knights
ownership sicily
era 0 sicily
era 1 sicily
;unit_info 9, 0, 17
19 sicilian_spearmen
1 4
71 unit_models/_Units/EN_Lmail_Hmail/dismounted_frankish_knights_lod0.mesh 121
71 unit_models/_Units/EN_Lmail_Hmail/dismounted_frankish_knights_lod1.mesh 900
71 unit_models/_Units/EN_Lmail_Hmail/dismounted_frankish_knights_lod2.mesh 2500
71 unit_models/_Units/EN_Lmail_Hmail/dismounted_frankish_knights_lod3.mesh 6400
1
6 sicily
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_sicily.texture
72 unit_models/_Units/EN_Lmail_Hmail/textures/EN_Lmail_Hmail_normal.texture
56 unit_sprites/merc_Dismounted_Frankish_Knights_sprite.spr
1
6 sicily
55 unit_models/AttachmentSets/Final Kite_merc_diff.texture
55 unit_models/AttachmentSets/Final Kite_merc_norm.texture 0
1
4 None
10 MTW2_Spear 0
2
18 MTW2_Spear_primary
14 fs_test_shield 0
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
First off, thanks for this thread.
I have a similar question, because while I think I understand the tutorial, I'm not sure I understand the modeldb file. I tried to modify magyar_cavalry to create a Szekely unit. Judging by my reading here, I've borked the modeldb file. It gets right up to the battle screen, where you see the sprites for your unit, and then I get the unspecified error.
"szekely_cavalry" is one letter longer than "magyar_cavalry," so I've increased the digit count by one. I also created textures with an outright copy/paste from the magyar cav. (I'm an historian, so I'm a nerd, not a geek. ;) I don't even own a copy of photoshop, though that should probably change).
So, my question is the following: what else needed to be done in said editing? From what I've read, it doesn't sound like random modifications to weapons and defensive stats should make a difference -- but if it does, then I've seriously misunderstood the tutorial itself.
This is fun. Thanks.
Edit: Oh, along with that. If I used the formatted modelsdb file, would there be any pitfalls about how many space characters to include, etc? I've replaced theone with the other after backing it up, but it occurs to me that I might have committed a beginner's error on that front.
Last edited by Russ Mitchell; 03-01-2007 at 14:56.
Ngata tsukelan mokwisipiak!
Hi Russ,
The formatted modeldb file is identical to the vanilla EXCEPT
that it has carriage return/linefeeds inserted to break the lines nicely.
So it preserves all the funny space at end of line and double spaces
after some 0's and all that stuff that the modeldb file is so picky about.
If you are just starting to mod this file may I suggest you get the version 2.0
formatted modeldb file here
https://forums.totalwar.org/vb/showthread.php?t=79455
The advantage is I've included a Python syntax checking script
that can check those character counts and faction counts that are
so easy to get wrong.
But yes, modding this file is both fun and frustrating at the same time.
I tried 30 times and still blank screen with error noise..
I edited EDU file for making my neew unit "ghazi infantry"..
1.here is EDU entry
Code:type Ghazi_Infantry dictionary Ghazi_Infantry ; Ghazi Infantry category infantry class light voice_type Light accent Arabic banner faction main_infantry banner holy crusade soldier Ghazi_Infantry, 48, 0, 1 attributes sea_faring, hide_forest, very_hardy, can_withdraw formation 1.2, 1.2, 2.4, 2.4, 4, square stat_health 1, 0 stat_pri 11, 6, no, 0, 0, melee, melee_blade, slashing, axe, 25, 1.2 ;stat_pri_ex 0, 0, 0 stat_pri_attr ap stat_sec 0, 0, no, 0, 0, no, melee_simple, blunt, none, 25, 1 ;stat_sec_ex 0, 0, 0 stat_sec_attr no stat_pri_armour 0, 1, 6, flesh ;stat_armour_ex 0, 0, 0, 0, 1, 6, 6, flesh stat_sec_armour 0, 0, flesh stat_heat 0 stat_ground 1, 1, 0, -1 stat_mental 9, impetuous, untrained stat_charge_dist 40 stat_fire_delay 0 stat_food 60, 300 stat_cost 1, 490, 70, 90, 70, 490, 4, 120 armour_ug_levels 0 armour_ug_models Ghazi_Infantry ownership turks era 0 turks era 1 turks era 2 turks ;unit_info 10, 0, 7
2.and model.db entry
Code:14 Ghazi_Infantry 1 4 51 unit_models/_Units/ME_Light_Padded/ghazis_lod0.mesh 121 51 unit_models/_Units/ME_Light_Padded/ghazis_lod1.mesh 900 51 unit_models/_Units/ME_Light_Padded/ghazis_lod2.mesh 2500 51 unit_models/_Units/ME_Light_Padded/ghazis_lod3.mesh 6400 1 5 turks 76 unit_models/_Units/ME_Light_Padded/textures/ME_Peasant_Variant_turks.texture 77 unit_models/_Units/ME_Light_Padded/textures/ME_Peasant_Variant_normal.texture 35 unit_sprites/turks_Ghazi_Infantry_sprite.spr 1 5 turks 65 unit_models/AttachmentSets/Final Middle eastern_turks_diff.texture 65 unit_models/AttachmentSets/Final Middle eastern_turks_norm.texture 0 1 4 None 14 MTW2_Fast_Mace 0 2 17 MTW2_Mace_Primary 14 fs_test_shield 0 16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
3.i added the line,
[io]
file_first = 1 to mediecal.pre.cfg...
4. I created turks_Ghazi_Infantry_sprite.spr file..
BUT..
I still get blank screen
I REALLY appriciated for your help..
The Truth is from thy Lord; so be not at all in doubt. The Heifer (Al-Baqarah)-147
@-Amon-
Check the character count on your sprite entry.
I think it's 44 not 35. See if that cures the blank
screen.
Thanks. I'll run this through (am trying not to post the text until I've exhausted the other options...)Originally Posted by KnightErrant
Ngata tsukelan mokwisipiak!
Originally Posted by KnightErrant
uh,no...I still get blank screen :(
i changed toCode:14 Ghazi_Infantry 1 4 51 unit_models/_Units/ME_Light_Padded/ghazis_lod0.mesh 121 51 unit_models/_Units/ME_Light_Padded/ghazis_lod1.mesh 900 51 unit_models/_Units/ME_Light_Padded/ghazis_lod2.mesh 2500 51 unit_models/_Units/ME_Light_Padded/ghazis_lod3.mesh 6400 1 5 turks 76 unit_models/_Units/ME_Light_Padded/textures/ME_Peasant_Variant_turks.texture 77 unit_models/_Units/ME_Light_Padded/textures/ME_Peasant_Variant_normal.texture 44 unit_sprites/turks_Ghazi_Infantry_sprite.spr 1 5 turks 65 unit_models/AttachmentSets/Final Middle eastern_turks_diff.texture 65 unit_models/AttachmentSets/Final Middle eastern_turks_norm.texture 0 1 4 None 14 MTW2_Fast_Mace 0 2 17 MTW2_Mace_Primary 14 fs_test_shield 0 16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002
The Truth is from thy Lord; so be not at all in doubt. The Heifer (Al-Baqarah)-147
@-Amon-
OK, sorry I didn't count every thing carefully.
Try changing these two entries
toCode:65 unit_models/AttachmentSets/Final Middle eastern_turks_diff.texture 65 unit_models/AttachmentSets/Final Middle eastern_turks_norm.texture 0
Code:66 unit_models/AttachmentSets/Final Middle eastern_turks_diff.texture 66 unit_models/AttachmentSets/Final Middle eastern_turks_norm.texture 0
Originally Posted by KnightErrant
Yess,thanks a lot !!It worked !!!
Anyway,what did we do by changing these parameters??? whats the meaning difference of 65 & 66 ?? for future usings..
The Truth is from thy Lord; so be not at all in doubt. The Heifer (Al-Baqarah)-147
@-Amon-
Every string in the modeldb file has a number in front of it
that is the number of characters in that string. I was just
counting your strings and telling you what numbers I got.
It looks like you are using the original modeldb file which isn't
formatted. This is very difficult to work with. Take a look
in this thread.
https://forums.totalwar.org/vb/showthread.php?t=79455
I made a formatted modeldb file (vanilla only, no mods in it) that
has line break characters so it's easier to edit. I also made a
syntax checker (a Python script so you would need Python to use
it) that checks all these counts for you. Even without the
syntax checker, the formatted file is much easier.
Agreed, it would be pretty easy. When I first did the
syntax checker I thought about this. Since I read line by line
I could check the character counts and write out a corrected
line. Faction counts would be harder since you have to buffer
up the data for all faction entries until you know you're done
processing a body textures block or an AttachmentSets block.
Main reason I didn't do this is: who's trusting enough to allow
a Python script write access to their modeldb file?
uhh..me again..
i want to use my unit on campaign so i edited export_descr_buildings.txt as follows :
Code:recruit_pool "Ghazi Infantry" 1 0.2 2 0 requires factions { turks, }
**It is in all castles and garrison quarters (and upgaredes too) sections..
so,when i run .exe,i get game loading screen and after that game crashes to windows..
I looked to system.log.txt file and at the and of the line :
Code:[system.io] [always] mounted pack packs/localized.pack [data.missing] [warning] missing/invalid cursor for ANISELECT [data.missing] [warning] missing/invalid cursor for MODIFIER_SABOTAG[data.missing] [warning] missing/invalid cursor for MODIFIER_TRADE [data.missing] [warning] missing/invalid cursor for DRAGGABLE [data.missing] [warning] missing/invalid cursor for DRAGGING [data.missing] [warning] missing/invalid cursor for MODIFIER_MULTIPLE_SELECT [data.missing] [warning] missing/invalid cursor for MODIFIER_ATTACK [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_CHARACTER [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_RESOURCE [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_FORT [data.missing] [warning] missing/invalid cursor for MODIFIER_MOVE_OBJECT [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_WATCHTOWER [data.missing] [warning] missing/invalid cursor for MODIFIER_DEPLOYMENT_AREA [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_TILE [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_SPECIAL_PIECE [data.missing] [warning] missing/invalid cursor for MODIFIER_PAINT [data.missing] [warning] missing/invalid cursor for MODIFIER_ADJUST_HEIGHTS [data.missing] [warning] missing/invalid cursor for MODIFIER_ADD_UNIT [data.missing] [warning] missing/invalid cursor for MODIFIER_PLACE_SETTLEMENT [script.err] [error] Script Error in data/export_descr_buildings.txt, at line 239, column 48 Unknown unit type specified: Ghazi Infantry
Do you have any idea for solution?
The Truth is from thy Lord; so be not at all in doubt. The Heifer (Al-Baqarah)-147
Bookmarks