To co napisałem zawsze będzie działało od następnego ciosu. Nie pamiętam czy siła ma jakiś związek z obrażeniami od broni poszczególnych typów, wiem tylko że wpływa na obrażenia od pięści. Poza tym, ważne żebyś pamiętał że sposób który podałem wpływa na obrażenia od broni, co ma trzy istotne skutki. Po pierwsze, gdybyś chciał aby zmiana widoczna w opisie broni, potrzebna jest dodatkowa linijka kodu. Po drugie, działa to jednocześnie na wszystkich korzystających z tej broni. Po trzecie, trzeba pamiętać żeby przy ściąganiu damage zresetować. Dodatkowo, skrypt nie działa na bronie z kilkoma rodzajami obrażeń na raz (jak Uriziel). Nie pamiętam jak to było z obrażeniami od ognia, bo tu sprawa była dodatkowo udziwniona. Zmienna o której napisał orcwarrior to o ile się nie mylę oCNpc.damageMul.
Aha, przy krytyku obrażenia są mnożone ogólnie przez zmienną DAM_CRITICAL_MULTIPLIER, niekoniecznie musi być to 2 (można np zmienić na 1 i wprowadzić własny, alternatywny system). Taka zmiana była by w tym przypadku o tyle pożyteczna, że nie da się zwyczajnie chyba sprawdzić czy dany cios był krytyczny.
O, przychodzi mi do głowy jeszcze inna możliwość, ale nie działająca przy obrażeniach innych niż od ataku (np od upadku czy krzaka jeżyn [pozdro X17]). Otóż mógłbyś w funkcjach podpiętych do perc_assessdamage dodać funkcję wyświetlającą różnicę pomiędzy wartością zapisaną w którymś z AIVARów 43-50 i aktualnym hp, a następnie zapisującą w tymże AIVARze hp. Oczywiście trzeba by też uwzględnić korekty we wszystkich funkcjach leczących z których npc mogą korzystać żeby nie było wyników ujemnych.
Ta metoda działała by natychmiast, jednak jak wspomniałem czynniki zewnętrzne mogłyby trochę komplikować (jednak każdy tylko raz).