Summary
Would it be possible to add hooks that make XWA's existing
energy overcharge mechanics more explicit and rewarding —
adding clear states and payoff bonuses similar to how
SW: Squadrons handles the same concept?
Motivation
XWA already has the core energy triangle — shields can be
overcharged, lasers fully charged, engines pushed for extra
speed. But this happens passively in the background with no
explicit signal or bonus moment when a system actually hits
full charge.
SW: Squadrons made the same concept feel much more active by
adding explicit overcharge states with immediate payoff:
- Shields full → buffer visibly charges beyond 100%
- Lasers full → next shots get a temporary damage bonus
- Engines full → boost explicitly charges up
The ask is less "add new mechanics" and more "make the
existing XWA mechanics legible and rewarding in the
Squadrons way."
What I don't know
I'm not a C++ developer, but I looked at xwa_hook_slam
(slam.cpp, hooks.h, hook_function.h) with the help of an AI
assistant to understand the hook architecture.
From that I can see that craft state is accessible via
XwaObjects → pMobileObject → pCraft, and that weapon rack
energy (WeaponRacks[i].m04) and state flags (IsSlamEnabled)
are readable and writable from hooks.
What I couldn't assess at all:
- Where shield HP values live in the struct
- Where projectile damage is calculated (for laser overcharge)
- Whether boost magnitude is accessible or hardcoded
Proposed behavior (opt-in, off by default)
[EnergyOvercharge]
ShieldOverchargeBonus=0 ; activate bonus behavior when shields are full
LaserOverchargeBonus=0 ; damage bonus when lasers are fully charged
BoostOverchargeBonus=0 ; explicit boost charge when engines are full
What I can offer
I can't implement this myself, but happy to test builds
and give feedback on feel vs. Squadrons.
Related
Summary
Would it be possible to add hooks that make XWA's existing
energy overcharge mechanics more explicit and rewarding —
adding clear states and payoff bonuses similar to how
SW: Squadrons handles the same concept?
Motivation
XWA already has the core energy triangle — shields can be
overcharged, lasers fully charged, engines pushed for extra
speed. But this happens passively in the background with no
explicit signal or bonus moment when a system actually hits
full charge.
SW: Squadrons made the same concept feel much more active by
adding explicit overcharge states with immediate payoff:
The ask is less "add new mechanics" and more "make the
existing XWA mechanics legible and rewarding in the
Squadrons way."
What I don't know
I'm not a C++ developer, but I looked at
xwa_hook_slam(slam.cpp, hooks.h, hook_function.h) with the help of an AI
assistant to understand the hook architecture.
From that I can see that craft state is accessible via
XwaObjects → pMobileObject → pCraft, and that weapon rack
energy (WeaponRacks[i].m04) and state flags (IsSlamEnabled)
are readable and writable from hooks.
What I couldn't assess at all:
Proposed behavior (opt-in, off by default)
What I can offer
I can't implement this myself, but happy to test builds
and give feedback on feel vs. Squadrons.
Related