Results 1 to 7 of 7

Thread: How to convert pilum/javelin units to the older "Fire at will" system

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Default How to convert pilum/javelin units to the older "Fire at will" system

    I was digging around in the files last night and discovered a tentative method to achieve the standard, Rome 1 & MTWII system of javelins for melee units - the one where they can fire at will and throw their weaponry stationary. I am still in the process of figuring things out but I wanted to upload the information if someone else with more time on their hands can tackle it themselves.

    I was able to achieve it with changing only two variables: land_units Man_Animation (switched to rome_man_javelin) and land_units primary_missile_weapon (switched to rome_javelin).

    When I switched my Levy Thureophoroi's PMW table to rome_javelin I was able to get fire at will but they did not throw their javelins, they just braced themselves for the enemy charge. Likewise, when I switched Hastati and Scutari Swordsmen to rome_javelin they were unable to throw their javelins. Switching the animation to rome_man_javelin allowed the Scutari/Hastati to behave like legionaries in Rome 1 - they stood and threw their javelins. In fact doing this change will require the person responsible tweak the lethality of such weapons because they are super overpowered in that capacity.


    -The bad news is that as it stands right now you cannot have spear and javelin units return to the old system. This only works for sword armed units, who can use rome_man_javelin as it contains animations suitable for sword and shield. I may be wrong as I just had a cursory glance but I don't think rome_man_javelin has improper animations for a sword and shield unit - it's what Velites and Peltasts use and a cursory glance in battle seemed to suggest everything was fine.

    -The good news is that it may be possible to quickly and cheaply fix. Data_Rome2 - Animations - animations_tables has the animation listings. See below:

    animation_table rome_man_javelin
    {
    skeleton_type rome_man_game
    skeleton_type_cinematic rome_man


    fragment rome_man_unarmed_fragment
    fragment rome_man_cinematic_fragment
    fragment rome_man_sword_shield_fragment
    fragment rome_man_sword_shield_matched_combat_fragment
    fragment rome_man_javelin_fragment
    VS

    animation_table rome_man_sword_shield
    {
    skeleton_type rome_man_game
    skeleton_type_cinematic rome_man


    fragment rome_man_unarmed_fragment
    fragment rome_man_cinematic_fragment
    fragment rome_man_sword_shield_fragment
    fragment rome_man_sword_shield_matched_combat_fragment
    }
    It seems like there's only one fragment line separating the two, otherwise in theory they'd use the same animations.

    If it's possible to edit the animations table, then adding fragment rome_man_javelin may suffice for spear_shield.

    animation_table rome_man_spear_shield
    {
    skeleton_type rome_man_game
    skeleton_type_cinematic rome_man


    fragment rome_man_unarmed_fragment
    fragment rome_man_cinematic_fragment
    fragment rome_man_spear_shield_fragment
    fragment rome_man_spear_shield_matched_combat_fragment
    }
    Alternatively, I just came across this entry. No units ingame use it, but perhaps it could work:

    animation_table rome_man_hoplite_shield
    {
    skeleton_type rome_man_game
    skeleton_type_cinematic rome_man


    fragment rome_man_unarmed_fragment
    fragment rome_man_cinematic_fragment
    fragment rome_man_spear_shield_fragment
    fragment rome_man_spear_shield_matched_combat_fragment
    fragment rome_man_javelin_fragment
    Regarding projectiles - I do not know if changing the missile type from pilum or other javelins to rome_javelin is necessary, or if the animation is. I have looked at projectiles and missile tables and do not know what distinguishes the javelin_norm from the pilum and other such missiles. It does seem clear however that something distinguishes them. I believe every unit with rome_javelin (which should be rome_javelin_norm) behave like skirmishers (Fire at will), and every unit with alternative javelins like pilum or javelin_iron behave like Rome 2 'throw on the charge' infantry.

    I'll be trying to get to the bottom of this later today.

  2. #2

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    Very encouraging news, Ahiga. Thank you for looking into this. Will the units still throw and charge too? I rather like the visceral aspect of that behaviour (the killing your own comrades I'm not so fond of).
    Currently following these promising mods - Imperia Antiquitatis by Splenyi
    Traits, Talents, and Toadies
    by Hellbent
    Real Roman Reforms
    by Aodh Mor
    Unit Icons project
    by Bullgod
    Also recommended:
    City Sack, Liberation and Diplomatic Options
    by Dresden

  3. #3

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    Unfortunately we can't get throw and charge and stand and throw on a single unit - you can have one or the other but I don't believe both.

    Also I haven't tested it with the AI. I'll see about that when I am not at class today.

  4. #4
    Archimonday's Avatar Senator
    Join Date
    Jul 2008
    Location
    Massachusetts, United States
    Posts
    1,383

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    So, to avoid the weird shield orientation using your method. I did things a little differently. I found the easiest way to make missiles toggleable instead of charge weapons was to go into the missile_weapons table and change any of the weapons I didn't want to be "precursors" to False. This enabled the fire-at-will, or course without the animation data the game couldn't fire, just what happened to you as well.

    So I opened up the man_sword_shield_fragment.txt and added these lines to the very bottom:

    Code:
    AIM                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, FIRE                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_001.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_001.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    FIRE                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_002.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_002.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    FIRE                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_003.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_003.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    RELOAD_1                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    RELOAD_2                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missile_ready.meta"        blend_in_time = 0.20, selection_weight = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    MOVING_FIRE_FORWARD                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_moving_fwd_001.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_javelin_throw_moving_fwd_001.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    MOVING_FIRE_LEFT_90                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missle_mov_left_90.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missle_mov_left_90.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on, 
    MOVING_FIRE_RIGHT_90                filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missle_mov_right_90.anim"        metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_missle_mov_right_90.meta"        blend_in_time = 0.20, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on,

    replacing:

    Code:
    THROW_PILUM				filename = "animations/rome2/human/battle/sword_and_shield/javelin/sws_charge_javelin_throw_001.anim"		metadata = "animations/rome2/human/battle/sword_and_shield/javelin/sws_charge_javelin_throw_001.meta"		blend_in_time = 0.10, weapon_bone_2 = on, weapon_bone_3 = on, weapon_bone_5 = on,

    This gets rid of the strange shield orientation, and maintains the rest of the animation fragment for the man_sword_shield entity, and makes the Javelins able to be thrown.

    Still yet to see how this effects the AI. They stop out of range of the throw, so, we will see through testing what happens.

  5. #5
    Decanus
    Join Date
    Oct 2013
    Location
    Western Canada
    Posts
    597

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    Thanks guys.

    I want to restrict the range at which a pilum toss can take place and so I have added values to the minimum_range column for pilum_normal, javelin_prec and javelin_iron entries. However, my units still seem to be perfectly able to make the toss at close range and indeed that is generally when they choose to do so. I thought perhaps the calibration_distance value was playing a role so I increased it from 35 to a longer range but that doesn't seem to work either. I know that these entries do affect my units precursor toss because when I increase effective_range they do indeed make long shots.

    Any ideas? I want my effective range to be at about 50 but my minimum range at around 30 to depict a more realistic precursor toss.

    ps: I'm working with projectiles_tables here.

  6. #6

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    Has anyone managed to get it to fire at will and do the charge-throw yet?

  7. #7
    Hetairos's Avatar Roma Surrectum II
    Join Date
    Jan 2014
    Location
    Serdika
    Posts
    1,511

    Default Re: How to convert pilum/javelin units to the older "Fire at will" system

    If you have trouble with these, why not ask Ant909 who has done it himself properly OR the DeI team who has it implemented as well.

Posting Permissions

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