Sat42 wrote:but in that case one could also replace the actual Merc with the friendly class counterpart for consistency.
That would need changing the implementation of Follower or FollowingMercenary, because friendly following mercs initially go to the greeting state instead of TriggerAlarm when triggered and they leave the TriggerAlarm state when noticing hostile creatures, going to the attacking mode. Perhaps, this is why plain U1 mercs are commonly used in ONP when they are supposed to enter the TriggerAlarm state.
Sat42 wrote:What special trigger did you use as a replacement? I could then implement this fix in my copy

I just coded a simple trigger that gibs the corresponding event instigator:
Code: Select all
class ONPGibInstigator expands Triggers;
var vector ThrowVelocity;
event Trigger(Actor A, Pawn EventInstigator)
{
if (EventInstigator != none && (Instigator == none || Instigator == EventInstigator))
{
if (bool(ThrowVelocity))
{
if (EventInstigator.Physics == PHYS_Walking)
EventInstigator.SetPhysics(PHYS_Falling);
EventInstigator.Velocity = ThrowVelocity;
}
EventInstigator.gibbedBy(none);
}
}
If you want something similar that could be added via UnrealEd, you can use something like this:
Code: Select all
class GibInstigator expands Triggers;
var() vector ThrowVelocity;
event Trigger(Actor A, Pawn EventInstigator)
{
if (EventInstigator != none)
{
if (bool(ThrowVelocity))
{
if (EventInstigator.Physics == PHYS_Walking)
EventInstigator.SetPhysics(PHYS_Falling);
EventInstigator.Velocity = ThrowVelocity;
}
EventInstigator.gibbedBy(none);
}
}
However, you should be very careful with Events issued by the killed pawn at the moment of death, because the event instigator is the killer (rather than the pawn being killed) in this case.
AlCapowned wrote:I've found that ONP with 255 difficulty (for all the monster spawns) in UT hits the sweet spot for a challenge
Epic didn't add any special handling for difficulties above 3 (they are probably not planned at all), and numbers 4 - 255 work the way they do just by accident, because of a funny implementation of filtering for difficulties 0 - 3 that implies the absence of difficulty-related filtering when the specified number is out of the range.