isolate chatmsg, disable bfr, fix cc hack logic

This commit is contained in:
ScrawnyRonnie 2025-11-23 21:13:42 -05:00
parent 9646b3f99e
commit 15cf5c61a3
3 changed files with 16 additions and 12 deletions

View file

@ -99,27 +99,27 @@ add_property trek allowed false
add_property trek equiptime 500
add_property trek holstertime 500
add_property vulture requirement_award0 false
add_property aphelion allowed true
add_property aphelion allowed false
add_property aphelion_flight allowed false
add_property aphelion_gunner allowed true
add_property aphelion_gunner allowed false
add_property aphelion_armor_siphon allowed false
add_property aphelion_armor_siphon_left allowed false
add_property aphelion_armor_siphon_right allowed false
add_property aphelion_ntu_siphon allowed false
add_property aphelion_ntu_siphon_left allowed false
add_property aphelion_ntu_siphon_right allowed false
add_property colossus allowed true
add_property colossus allowed false
add_property colossus_flight allowed false
add_property colossus_gunner allowed true
add_property colossus_gunner allowed false
add_property colossus_armor_siphon allowed false
add_property colossus_armor_siphon_left allowed false
add_property colossus_armor_siphon_right allowed false
add_property colossus_ntu_siphon allowed false
add_property colossus_ntu_siphon_left allowed false
add_property colossus_ntu_siphon_right allowed false
add_property peregrine allowed true
add_property peregrine allowed false
add_property peregrine_flight allowed false
add_property peregrine_gunner allowed true
add_property peregrine_gunner allowed false
add_property peregrine_armor_siphon allowed false
add_property peregrine_armor_siphon_left allowed false
add_property peregrine_armor_siphon_right allowed false

View file

@ -145,6 +145,11 @@ object MiddlewareActor {
packet.isInstanceOf[SquadDetailDefinitionUpdateMessage]
}
/** `ChatMsg` [sometimes] causes the same issue as the squad packet above. Isolating for now */
private def chatMsgGuard(packet: PlanetSidePacket): Boolean = {
packet.isInstanceOf[ChatMsg]
}
/**
* A function for blanking tasks related to inbound packet resolution.
* Do nothing.
@ -253,7 +258,8 @@ class MiddlewareActor(
private val packetsBundledByThemselves: List[PlanetSidePacket => Boolean] = List(
MiddlewareActor.keepAliveMessageGuard,
MiddlewareActor.characterInfoMessageGuard,
MiddlewareActor.squadDetailDefinitionMessageGuard
MiddlewareActor.squadDetailDefinitionMessageGuard,
MiddlewareActor.chatMsgGuard
)
private val smpHistoryLength: Int = 100

View file

@ -6,7 +6,7 @@ import net.psforever.objects.serverobject.terminals.capture.CaptureTerminal
import net.psforever.objects.{Player, Vehicle}
import net.psforever.objects.serverobject.{CommonMessages, PlanetSideServerObject}
import net.psforever.packet.game.{HackMessage, HackState, HackState1, HackState7}
import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID, PlanetSideGeneratorState}
import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID}
import net.psforever.services.Service
import net.psforever.services.avatar.{AvatarAction, AvatarServiceMessage}
import net.psforever.services.local.{LocalAction, LocalServiceMessage}
@ -166,14 +166,12 @@ object GenericHackables {
friendlyBaseOpt.exists { fb =>
fb.Faction == hacker.Faction &&
!fb.CaptureTerminalIsHacked &&
fb.NtuLevel > 0 &&
fb.Generator.forall(_.Condition != PlanetSideGeneratorState.Destroyed)
fb.NtuLevel > 0
}
case b =>
b.Faction == hacker.Faction &&
!b.CaptureTerminalIsHacked &&
b.NtuLevel > 0 &&
b.Generator.forall(_.Condition != PlanetSideGeneratorState.Destroyed)
b.NtuLevel > 0
}
case None => 0
}