Page 1 of 2 12 LastLast
Results 1 to 20 of 24

Thread: How to create a GreekFire Cannon

  1. #1

    Default How to create a GreekFire Cannon

    To create a Flame Cannon we only need to deal with 3 text files, plus the battle_model.db depending on which faction you want to make it available to. I gave ownership of the Flame Cannon to byzantium so I provided details on all four files. If you do not have Greek Firethrowers in your mod you will need to add aspects of this first, see this tutorial. I would recommend completing the tutorial by J@mes first and testing.

    1.descr_projectile
    Copy the entry for projectile greek_fire
    Spoiler Alert, click show to read: 

    projectile greek_fire

    effect greek_fire_set
    end_effect greek_fire_ground_impact_set
    end_man_effect greek_fire_man_impact_set
    end_package_effect greek_fire_ground_impact_set
    end_shatter_effect greek_fire_ground_impact_set
    end_shatter_man_effect greek_fire_man_impact_set
    end_shatter_package_effect greek_fire_ground_impact_set
    area_effect aeset_greek_fire
    damage 2
    radius 1.0
    mass 0.0
    area 2
    affected_by_rain
    fiery
    min_angle -60
    max_angle 30
    velocity 30
    ground_shatter
    body_piercing
    display aimed
    effect_only

    And paste it into the bottom of the file, then make the following changes;
    Spoiler Alert, click show to read: 

    projectile greek_fire_cannon

    effect greek_fire_set
    end_effect greek_fire_ground_impact_set
    end_man_effect greek_fire_man_impact_set
    end_package_effect greek_fire_ground_impact_set
    end_shatter_effect greek_fire_ground_impact_set
    end_shatter_man_effect greek_fire_man_impact_set
    end_shatter_package_effect greek_fire_ground_impact_set
    area_effect aeset_greek_fire
    no_ae_on_ram ;ram provides overhead protection from this area effect
    damage 5
    radius 2.0
    mass 1.0
    area 2
    affected_by_rain
    fiery
    min_angle -60
    max_angle 30
    velocity 60
    ground_shatter
    body_piercing
    display aimed
    effect_only

    Changes in red are necessary, blue shows changes that are optional but give a better end product. Other changes are possible, but an increases to the max_angle may cause a CTD.

    2.descr_engine
    Copy the entry for type great_bombard
    Spoiler Alert, click show to read: 

    type great_bombard
    culture all
    class grand_bombard
    pathfinding_data none
    reference_points siege_engines/grand_bombard_rig.modelReferencePoints

    engine_model_group normal
    engine_skeleton Great_Bombard
    engine_bone_map siege_engines/BoneMaps/great_bombard.xml
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/grand_bombard_rig.mesh, 40.0
    engine_mesh siege_engines/lods/grand_bombard_med.mesh, 80.0
    engine_mesh siege_engines/lods/grand_bombard_low.mesh, max
    engine_model_group dying
    engine_skeleton Great_Bombard_dying
    engine_bone_map siege_engines/BoneMaps/great_bombard_destroy.xml
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/destroyed/grand_bombard_destroyed.mesh, max
    engine_model_group dead
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/destroyed/grand_bombard_dead.mesh, max
    engine_shadow none
    engine_radius 2.6
    engine_visual_radius 2.6
    engine_length 3.0
    engine_width 1.0
    engine_height 1.3
    engine_mass 5q
    engine_dock_dist 5
    engine_mob_dist 5.5
    engine_flammable true
    engine_ignition 2.5
    fire_effect engine_fire_medium_set
    obstacle_shape rectangle
    obstacle_x_radius 0.5
    obstacle_y_radius 1.0
    engine_spo physical_obstacle
    engine_push_point dummy 0.0 -2.0
    engine_station dummy 1.0 -2.0
    engine_health 15
    missile_pos 0.0 1.0 1.2
    crew_animations
    crank Left_Stoke, crew_left_stoke_1,crew_left_stoke_2, crew_left_stoke_3cycle, crew_left_stoke_4, crew_left
    crank_attachment Left_Stoke, ramrod
    crank Right_Load, crew_right_load_1, crew_right_load_2, crew_right_load_3, crew_right_load_4cycle, crew_right_load_5, crew_right
    crank_attachment Right_Load, unarmed, load, unarmed
    crank Crew_Rear, crew_rear
    crank_attachment Crew_Rear, unarmed
    fire Left_Stoke, crew_left_cover, crew_left
    fire Right_Load, crew_right_cover, crew_right
    fire Crew_Rear, crew_rear_fire_idle, crew_rear
    end
    shot_pfx_front cannon_shot_large_muzzle_flash_dark_set

    Now paste it into the bottom of the file and make the following changes;
    Spoiler Alert, click show to read: 

    type flame_cannon
    culture all
    class grand_bombard
    pathfinding_data none
    reference_points siege_engines/rocket_launcher.modelReferencePoints
    engine_model_group normal
    engine_skeleton Great_Bombard
    engine_bone_map siege_engines/BoneMaps/great_bombard.xml
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/grand_bombard_rig.mesh, 40.0
    engine_mesh siege_engines/lods/grand_bombard_med.mesh, 80.0
    engine_mesh siege_engines/lods/grand_bombard_low.mesh, max
    engine_model_group dying
    engine_skeleton Great_Bombard_dying
    engine_bone_map siege_engines/BoneMaps/great_bombard_destroy.xml
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/destroyed/grand_bombard_destroyed.mesh, max
    engine_model_group dead
    engine_collision siege_engines/collision_models/great_bombard_collision.CAS
    engine_mesh siege_engines/destroyed/grand_bombard_dead.mesh, max
    engine_shadow none
    engine_radius 2.6
    engine_visual_radius 2.6
    engine_length 3.0
    engine_width 1.0
    engine_height 1.3
    engine_mass 5q
    engine_dock_dist 5
    engine_mob_dist 5.5
    engine_flammable true
    engine_ignition 2.5
    fire_effect engine_fire_medium_set
    obstacle_shape rectangle
    obstacle_x_radius 0.5
    obstacle_y_radius 1.0
    engine_spo physical_obstacle
    engine_push_point dummy 0.0 -0.9
    engine_station dummy 1.0 -2.0
    engine_health 20
    missile_pos 0.0 1.0 1.2
    crew_animations
    crank Crew_Rear, crew_rear_fire_idle, crew_rear_fire_commence, crew_rear_fire_recover, crew_rear
    fire Crew_Rear, crew_left, crew_rear
    end
    shot_pfx_front cannon_shot_large_muzzle_flash_dark_set


    3.export_descr_unit
    Copy the entry for type GR Bombard
    Spoiler Alert, click show to read: 

    type GR Bombard
    dictionary GR_Bombard ; Bombard
    category siege
    class missile
    voice_type Light
    banner faction main_missile
    banner holy crusade
    soldier Greek_Bombard_Crew, 16, 3, 1
    engine bombard
    attributes sea_faring, hardy, can_withdraw, gunpowder_unit, cannon, artillery
    formation 1.5, 1.5, 3, 3, 3, square
    stat_health 1, 0
    stat_pri 7, 3, no, 0, 0, melee, artillery_gunpowder, piercing, knife, 25, 1.8
    ;stat_pri_ex 0, 0, 0
    stat_pri_attr no
    stat_sec 55, 3, bombard_shot, 325, 30, siege_missile, artillery_gunpowder, blunt, none, 25, 1
    ;stat_sec_ex 0, 0, 0
    stat_sec_attr ap, bp, area, launching
    stat_ter 65, 3, grape_shot, 115, 10, siege_missile, artillery_gunpowder, blunt, none, 26, 1
    ;stat_ter_ex 0, 0, 0
    stat_ter_attr ap, launching
    stat_pri_armour 2, 5, 0, leather
    ;stat_armour_ex 2, 0, 0, 0, 5, 0, 0, leather
    stat_sec_armour 0, 0, flesh
    stat_heat 1
    stat_ground 0, 0, 0, 0
    stat_mental 11, disciplined, highly_trained
    stat_charge_dist 30
    stat_fire_delay 0
    stat_food 60, 300
    stat_cost 1, 800, 250, 60, 140, 610, 1, 180
    armour_ug_levels 1
    armour_ug_models Greek_Bombard_Crew
    ownership greek
    era 1 byzantium
    ;unit_info 7, 0, 7
    recruit_priority_offset -20

    Now paste it into the bottom of the file and make the following changes;
    Spoiler Alert, click show to read: 

    Firstly remove the following lines;
    stat_ter 65, 3, grape_shot, 115, 10, siege_missile, artillery_gunpowder, blunt, none, 26, 1
    ;stat_ter_ex 0, 0, 0
    stat_ter_attr ap, launching

    Then make changes like so;

    type GR Fire Cannon
    dictionary GR_Fire_Cannon ; GR Fire Cannon
    category siege
    class missile
    voice_type Light
    banner faction main_missile
    banner holy crusade
    soldier Fire_Cannon_Crew, 12, 1, 1
    engine flame_cannon
    attributes sea_faring, hardy, can_withdraw, gunpowder_unit, cannon, artillery
    formation 1.5, 1.5, 3, 3, 3, square
    stat_health 1, 0
    stat_pri 7, 3, no, 0, 0, melee, artillery_gunpowder, piercing, knife, 25, 1.8
    ;stat_pri_ex 0, 0, 0
    stat_pri_attr no
    stat_sec 35, 3, greek_fire_cannon, 155, 30, missile, artillery_gunpowder, blunt, none, 25, 1
    ;stat_sec_ex 0, 0, 0
    stat_sec_attr ap, bp, area, launching
    stat_pri_armour 2, 5, 0, leather
    ;stat_armour_ex 2, 0, 0, 0, 5, 0, 0, leather
    stat_sec_armour 0, 0, flesh
    stat_heat 1
    stat_ground 0, 0, 0, 0
    stat_mental 11, disciplined, highly_trained
    stat_charge_dist 30
    stat_fire_delay 0
    stat_food 60, 300
    stat_cost 1, 1800, 350, 60, 140, 950, 1, 180
    armour_ug_levels 2
    armour_ug_models Fire_Cannon_Crew
    ownership byzantium
    era 0 byzantium
    era 1 byzantium
    ;unit_info 7, 0, 7
    recruit_priority_offset -20

    #recruit_priority_offset is only used by Kingdoms mods.


    4.battle_models.db
    Now all that remains is to add the crew. Copy the entry for 18 greek_bombard_crew
    Spoiler Alert, click show to read: 

    18 greek_bombard_crew
    1
    4
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod0.mesh 121
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod1.mesh 900
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod2.mesh 2500
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod3.mesh 6400
    1
    9 byzantium
    80 unit_models/_Units/ES_Greek_Greek_Heavy/textures/mtw2_es_greek_byzantium.texture
    77 unit_models/_Units/ES_Greek_Greek_Heavy/textures/mtw2_es_greek_normal.texture
    53 unit_sprites/byzantium_Greek_Ballista_Crew_sprite.spr
    1
    9 byzantium
    70 unit_models/AttachmentSets/Final European Light_byzantium_diff.texture
    70 unit_models/AttachmentSets/Final European Light_byzantium_norm.texture
    0
    1
    4 None
    17 MTW2_Crew_Bombard
    0
    1
    18 MTW2_Knife_Primary
    0
    16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002

    Next paste the entry into the bottom of the file and make the following changes. Make sure to observe the correct number of spaces.
    Spoiler Alert, click show to read: 

    16 Fire_Cannon_Crew
    1
    4
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod0.mesh 121
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod1.mesh 900
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod2.mesh 2500
    68 unit_models/_Units/ES_Greek_Greek_Heavy/greek_bombard_crew_lod3.mesh 6400
    1
    9 byzantium
    80 unit_models/_Units/ES_Greek_Greek_Heavy/textures/mtw2_es_greek_byzantium.texture
    77 unit_models/_Units/ES_Greek_Greek_Heavy/textures/mtw2_es_greek_normal.texture
    53 unit_sprites/byzantium_Greek_Ballista_Crew_sprite.spr
    1
    9 byzantium
    70 unit_models/AttachmentSets/Final European Light_byzantium_diff.texture
    70 unit_models/AttachmentSets/Final European Light_byzantium_norm.texture
    0
    1
    4 None
    17 MTW2_Crew_Ribault
    0
    1
    18 MTW2_Knife_Primary
    0
    16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002

    Finally you must add 1 to the serialization archive at the top of the battle_models.db file.
    Code:
    22 serialization::archive 3 0 0 0 0 897 0 0
    Now the unit is ready for testing.
    Spoiler Alert, click show to read: 




    5.Finishing off
    You will want a unit card, a unit info pic and a text entry for your new unit. Take some screenshots, cut out a nice close up of your new cannon and using gimp (its free!) scale the size down to match the standard size. 191 x 280 for the unit info.
    Save your 191 x 280 as GR_Fire_Cannon_info.tga
    For a unit card simply flip the existing grand bombard card horizontally.
    These will need to be placed into the byzantium folder in ui/units and ui/unit_info folders respectivly.
    Text description is added in the text/export_units file and keys off the EDU dictionary name. (GR_Fire_Cannon) Keep the syntax correct, ie.
    {GR_Fire_Cannon}Greek Flame Cannon
    {GR_Fire_Cannon_descr}You must add something here!!! Or CTD!!
    {GR_Fire_Cannon_descr_short}You must add something here!!! Or CTD!!

    GreekFire Cannon complete.

    Spoiler Alert, click show to read: 



    Some changes explained.
    Spoiler Alert, click show to read: 

    From descr_engine
    reference_points
    This change means that only one crewman will operate the Cannon (as with a rocket launcher or ribault). It was made to stop the two loading crewmen, from the grand bombard, being burnt to death when the cannon fires.
    engine_push_point dummy
    This changes moves the position of the crew man who pushes the cannon.
    crew_animations
    This changes provides the loading and firing anim pattern's.

  2. #2
    Swagger's Avatar Imperial Coffee-Runner
    Join Date
    Apr 2007
    Location
    Portugal
    Posts
    12,453

    Default Re: How to create a GreekFire Cannon

    basicly this is a mega firetrower ?
    Under the Patronage of the Dreadful cedric37!
    Ancs Guide, Emergent Factions , Yes/No Events |L'Outremer for Modders| Swagger's Skymod


  3. #3

    Default Re: How to create a GreekFire Cannon

    It can be, a sensible modder can balance this just as well as any other artillery piece, from ribault to monster bombard. It just looks a lot more awesome!
    I know it is not a historically accurate unit, but it was a lot of fun to make and test.
    It may well be best suited to a fantasy based mod, such as Warhammer where Dwarves have Flame Cannons, I think...
    Last edited by Eothese; January 21, 2009 at 12:04 PM.

  4. #4

    Default Re: How to create a GreekFire Cannon

    never fail to impress great tut Eothese for artifier

  5. #5

    Default Re: How to create a GreekFire Cannon

    It might actually be more accurate than the hand held stuff... I mean except for the whole mobile part, but isn't it more likely it was a big apparatus since they placed it on walls and ships mostly? That's more consistent with a cannon.

  6. #6

    Default Re: How to create a GreekFire Cannon

    Like this?
    Spoiler Alert, click show to read: 



  7. #7

    Default Re: How to create a GreekFire Cannon

    now that is cool

  8. #8
    Polpolgio's Avatar Miles
    Join Date
    Jun 2008
    Location
    Barcelona, Europe
    Posts
    362

    Default Re: How to create a GreekFire Cannon

    Congratulations, mate, thank you for this guide.

  9. #9
    alhoon's Avatar Comes Rei Militaris
    Moderator Emeritus

    Join Date
    Apr 2008
    Location
    Chania, Greece
    Posts
    24,756

    Default Re: How to create a GreekFire Cannon

    Quote Originally Posted by Eothese View Post
    Like this?
    Spoiler Alert, click show to read: 



    Heh... I have tried to implement the same, however I found it unbalanced. So instead of jets of flame (that Siphonistes and ships were throwing) I went just for the ceramic pots that Byzantines used against the Arabs. Much more balanced and more realistic IMO.
    Last edited by alhoon; January 23, 2009 at 07:48 PM.
    alhoon is not a member of the infamous Hoons: a (fictional) nazi-sympathizer KKK clan. Of course, no Hoon would openly admit affiliation to the uninitiated.
    "Angry Uncle Gordon" describes me well.
    _______________________________________________________
    Beta-tester for Darthmod Empire, the default modification for Empire Total War that does not ask for your money behind patreon.
    Developer of Causa Belli submod for Darthmod, headed by Hammeredalways and a ton of other people.
    Developer of LtC: Random maps submod for Lands to Conquer (that brings a multitude of random maps and other features).

  10. #10
    hitokiri2486's Avatar Centenarius
    Join Date
    Aug 2008
    Location
    New York
    Posts
    805

    Default Re: How to create a GreekFire Cannon

    how did you manage to get the towers to shoot jets of flame or, in alhoon's case, ceramic pots (I'm assuming like Naffatun ones)?

    did you just edit descr_walls.txt or something?

  11. #11
    alhoon's Avatar Comes Rei Militaris
    Moderator Emeritus

    Join Date
    Apr 2008
    Location
    Chania, Greece
    Posts
    24,756

    Default Re: How to create a GreekFire Cannon

    Yes.

    For Greek fire jets:
    Go to descr_walls.txt and find the following:

    "wall
    {
    level 3 .... "

    Go to the tower section and go to third missile level. There change the stat, stat attribute etc to the following:

    stat 24, 0, greek_fire, 60, 8, siege_missile, artillery_gunpowder, piercing, cannon_tower, 40, 1
    stat_attr ap, bp

    Do the same for the wall lvl 4.

    No large walls with cannon towers should fire greek fire. The range is 60. If you want more... then instead of greek_fire, 60, 8 put greek_fire, XX, 8.


    For the bombs I made... well they're not Naptha bombs that can be found in the game. I modded them.
    Last edited by alhoon; January 24, 2009 at 12:21 PM.
    alhoon is not a member of the infamous Hoons: a (fictional) nazi-sympathizer KKK clan. Of course, no Hoon would openly admit affiliation to the uninitiated.
    "Angry Uncle Gordon" describes me well.
    _______________________________________________________
    Beta-tester for Darthmod Empire, the default modification for Empire Total War that does not ask for your money behind patreon.
    Developer of Causa Belli submod for Darthmod, headed by Hammeredalways and a ton of other people.
    Developer of LtC: Random maps submod for Lands to Conquer (that brings a multitude of random maps and other features).

  12. #12

    Default Re: How to create a GreekFire Cannon

    Quote Originally Posted by Eothese View Post
    Like this?
    Spoiler Alert, click show to read: 


    OK, dude, those Greek fire jets are amazing! +REP!! I tried them out in a custom battle and boy were they hot! Just a quick question, is there anyway I can make these towers available only for Byzantium (ie make other factions have normal cannon balls instead?) TIA

  13. #13

    Default Re: How to create a GreekFire Cannon

    Not to my knowledge, and I have tried! Check this out if you want the details...

  14. #14
    S-te-Fan's Avatar Primicerius
    Join Date
    Jun 2008
    Location
    Diessen, The Netherlands, Near the belgium border.
    Posts
    3,905

    Default Re: How to create a GreekFire Cannon

    I made a new model so we can have real flamethrowers .


  15. #15
    Vegas_Bear's Avatar Biarchus
    Join Date
    Sep 2005
    Location
    Las Vegas, NV
    Posts
    605

    Default Re: How to create a GreekFire Cannon

    Very nice job on the find and creation!
    +rep

  16. #16

    Default Re: How to create a GreekFire Cannon

    Quote Originally Posted by stefaneke View Post
    I made a new model so we can have real flamethrowers .
    Spoiler Alert, click show to read: 



    Did you try it out yet?

  17. #17

    Default Re: How to create a GreekFire Cannon

    alhoon, how did you make your greek fire bombs? Right now I have the towers shooting the naptha bombs which is cool, and once I had them with mangonel shots. But what I'd like to make some thing between the naptha bomb and mangonel shot in size and effect to shoot out of the towers and my 'greek fire ballista" (also shoots naptha bombs at the moment). Can I change the mangonel effect to be smaller and only burst on impact with just text editing?

  18. #18

    Default Re: How to create a GreekFire Cannon

    Probably, just make a back-up copy and experiment with the values.

  19. #19

    Default Re: How to create a GreekFire Cannon

    yeah, I had tinkered with it a bit earlier. Do I understand correctly-the area value controls how big an area the impact affects (area of damage and troops being killed), or does it change the size of the graphic effect?

  20. #20

    Default Re: How to create a GreekFire Cannon

    Area in EDU, means that if area is present in descr_projectile then that is the size of the area that damage is applied to. The graphic is controlled separately by the effect which is detailed in descr_arrow_trail_effects.

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •