Code for on hit trigger. agent_get_horse returns a -1 if not on a horse, ge= greater than or equal to. If it fails a conditional, it exits the "try" block that it's in.
(try_begin), #bumpslash nerf - halve damage if agent bumped. Tydeus: 10/05/14 Added horse ranged damage penalty and cap.
(agent_get_horse, ":horse_agent_no", ":dealer_agent_no"),
(ge, ":horse_agent_no", 0),
(agent_is_human, ":hit_agent_no"),
(agent_get_animation, ":animation", ":hit_agent_no", 1),
(try_begin),#bumpslash
(this_or_next|is_between, ":animation", 400, 416),
(is_between, ":animation", 440, 442),
(val_div, ":damage", 2),
(val_div, ":score_damage", 2),
(try_end),
(try_begin),#horse ranged. 20% reduction, 15d cap.
(ge, ":missile_item_no", 0),
(val_mul, ":damage", 4),
(val_mul, ":score_damage", 4),
(val_div, ":damage", 5),
(val_div, ":score_damage", 5),
(gt, ":damage", 15),
(assign, ":damage", 15),
(assign, ":score_damage", 15),
(try_end),
(set_trigger_result, ":damage"),
(try_end),
I think the go-to builds for archery now are 24-21 / 21-24 lv 37 with max IF and medium-light armor or 21/21 level 35. Accuracy increased by ~24 wpf for all bows, so power is a pretty large focus while at least having decent agi.