Note: this may be a modding topic of sorts, but the fix can be carried out by any forum member due to its simplicity.

I've run some more extensive tests, and have appeared to have solved this siege tower bug.

First of all, I tried a docking distance that was deliberately too far from the walls. The units refused to climb up the tower, they didn't even attempt to enter the tower's base.

Then I tried several distances closer to the walls, and after a bit of trial-and-error, managed to find the ideal distance. I've tried this on numerous wall sections, and using a variety of different infantry and missile units. The result is that each unit should now climb up any wall section.

To fix this issue yourself manually (will take you no more than 2 mins), this is what you should do:
  • Browse to and open your data folder @ C:\Program Files\Activision\Rome - Total War
  • Create a backup of descr_engines, rename as necessary
  • Open descr_engines and hit Ctrl+F to open the search tool
  • Type in middle_tower and do a search
  • You should now see a code extract that looks as below:

    Code:
    type                middle_tower
    culture                all
    class                tower
    variant                medium
    projectile            scorpion
    
    engine_model_group    normal
    engine_skeleton        middle_tower
    engine_collision    data/models_engine/Mid_Tow_mod_very_low.CAS
    engine_model        data/models_engine/Middle_tow_model.CAS,        200
    engine_model        data/models_engine/Mid_Tow_mod_med.CAS,            400
    engine_model        data/models_engine/Mid_Tow_mod_low.CAS,            800
    engine_model        data/models_engine/Mid_Tow_mod_very_low.CAS,    max
    engine_platforms    data/models_engine/Middle_tow_info.CAS
    
    engine_model_group    dying
    engine_skeleton        middle_tower_dying
    engine_model        data/models_engine/mid_tow_dying_model.CAS,        max
    engine_platforms    none
    
    engine_model_group    dead
    engine_model        data/models_engine/mid_tow_dying_dead.CAS, max
    engine_platforms    none
    
    engine_shadow        none
    
    engine_radius        8
    engine_length        14
    engine_width        11
    engine_height        36
    engine_mass            40
    engine_dock_dist    12.5
    engine_mob_dist        18
    engine_flammable    true
    engine_ignition        0.20
    fire_effect            engine_fire_middle_tower_set
    
    obstacle_shape        rectangle
    obstacle_x_radius    9
    obstacle_y_radius    9
    
    engine_spo            physical_obstacle
    
    engine_push_point    -7.00        9
    engine_push_point    -5.25        9
    engine_push_point    -3.5        9
    engine_push_point    -1.75        9
    engine_push_point     0.0        9
    engine_push_point     1.75        9
    engine_push_point     3.5        9
    engine_push_point     5.25        9
    engine_push_point     7.00        9
    
    engine_push_point    -7.00        10
    engine_push_point    -5.25        10
    engine_push_point    -3.5        10
    engine_push_point    -1.75        10
    engine_push_point     0.0        10
    engine_push_point     1.75        10
    engine_push_point     3.5        10
    engine_push_point     5.25        10
    engine_push_point     7.00        10
    
    
    engine_health        150
    ;engine_weapon        ballista
    ;engine_armour        siege tower
    
    attack_stat         12, 2, scorpion, 120, 30, siege_missile, siege, piercing
    attack_stat_attr    ap, bp, launching
    
    arrow_generator        0 35.7 4.8
    aim_dir                0.0 0.0 1.0
    aim_arc                1.0
    fire_interval        1.5
    
    arrow_generator        1 35.7 4.8
    aim_dir                0.0 0.0 1.0
    aim_arc                1.0
    fire_interval        1.5
    
    arrow_generator        2 35.7 4.8
    aim_dir                0.0 0.0 1.0
    aim_arc                1.0
    fire_interval        1.5
    
    arrow_generator        -1 35.7 4.8
    aim_dir                0.0 0.0 1.0
    aim_arc                1.0
    fire_interval        1.5
    
    arrow_generator        -2 35.7 4.8
    aim_dir                0.0 0.0 1.0
    aim_arc                1.0
    fire_interval        1.5
    
    missile_model        data/models_engine/Bolt_high.CAS,  20.0
    missile_model        data/models_engine/Bolt_high.CAS,  40.0
    missile_model        data/models_engine/Bolt_high.CAS,  max
    missile_pos            0.0 22 0.0
    missile_radius        1
    missile_height        2.5
    missile_mass        3
  • The entry you need to change is engine_dock_dist, which at present looks as below:

    Code:
    engine_dock_dist    12.5
  • Simply change the 12.5 value to a number around / between 12.1 and 12.2, your entry should now look as below:

    Code:
    engine_dock_dist    12.1
    OR

    Code:
    engine_dock_dist    12.2
    Note: these values are merely placeholders, you can probably enter more specific values to a greater number of decimal places for improved results
  • Save your changes, close the text file
  • Start-up RTW and go into custom battles
  • Make sure you play a siege assault gametype versus large stone walls to notice the changes
I'm sure player1 has already incorporated this fix into a version of his Bug Fixer. We'd originally had a chat about this a while ago, and I'm sure he'd also found the optimum distance for these towers. I would also like to thank Severous for re-igniting my testing into this area.

Thanks.