Tak na szybko napisałem teraz, nie testowane ale powinno działać bo sto razy już różne mutacje tego skryptu stosowałem.
Dodaj to do triggerów w wybranej broni dystansowej(w przypadku łuków/kusz/karabinów powinno iść do amunicji! W przypadku toporków do rzucania itd idzie do broni).
(ti_on_missile_hit, [
(multiplayer_is_server), #zabezpieczenie z mysla o multiplayerze coby hosty nie liczyly niepotrzebnie
(store_trigger_param_1,":strzelajacy"),
(try_for_agents,":target"), #sprawdzamy wszystich agentow
(agent_get_position,pos2,":target"),
(get_distance_between_positions,":dist",pos1,pos2),
(try_begin),
(lt,":dist",500), #tutaj ustaw jakis wybrany przez siebie promien dzialania
(store_random_in_range,":dmg",40,90), #losowy zakres obrazen bazowych
(val_div,":dist",10),
(val_sub,":dmg",":dist"),#zmniejsz obrazenia o (odleglosc od miejsca trafienia)/10
(ge,":dmg",1),#gdy obrazenia mniejsze od 1 nie zadawaj ich
(agent_deliver_damage_to_agent,":strzelajacy",":target",":dmg"),
(try_end),
(try_end),
(particle_system_burst,"psys_nazwaefektu",pos1,30), #zamiast psys_nazwaefektu wklej nazwe efektu pierdolniecia z module_particle_systems.py
])Może cie dziwić używanie pos1 które nie jest nigdzie ustawione ale ta pozycja jest ustalana przez sam trigger.
A no i musisz dostroić parametry obrażeń, odległości i efektów, wszystko jest w komentarzach.