EVE Combat AI v0.6.0-alpha — Technical Overhaul
EVE Combat AI — v0.6.0-alpha "Technical Overhaul"
The July technical-polish + bugfix release. Goes through the Nexus bug tracker and comments,
fixes the install pain, and adds a proper one-click control app. Built from user bug
reports and feedback on Nexus.
⭐ Headline: EVE Control Center (new installer + launcher + live monitor)
install.bat and the console-launcher are replaced by a single app (ships via GitHub, in
the backend bundle — the Nexus plugin still installs via Vortex as before):
- Auto-detects Starfield (Steam registry + library folders, with manual override).
- One Install button: drops
sfse_http.dllintoData\SFSE\Plugins, enables the EVE
plugin inPlugins.txt, writeseve_config.ini— all with robust quoted paths. No more
"path not found", no more truncated-.batfailures on non-English Windows. - Customizable LLM port (dropdown + field), GPU selector (NVIDIA CUDA / AMD Vulkan),
model dropdown (any.ggufyou drop in). - Live console (bottom half): streams Eve Core ↔ llama-server REST traffic
(/decide,/completion, …) so you can watch EVE think in real time —
timestamped, color-coded by category (combat / companion / director / llama),
with a search box andreq=Nhealth coloring. - In-game log feed: a
papyrustoggle tails your Starfield Papyrus log and folds the
EVE-relevant lines (our traces + EVE error stacks, no other-mod spam) into the same
console — so the LLM decisions and the in-game script behaviour line up on one timeline. - Start / Stop / Uninstall buttons.
Antivirus note: because it runs local servers, some AV may flag it (same false-positive
class as the.pyd). It's 100% local; nothing leaves your PC.
🐛 Bug fixes (from your reports)
Dropships / reinforcements
- Wrong faction fixed — a Crimson Fleet dropship reinforcing a Spacer POI (djoole). The
faction is now chosen by majority vote across the whole squad, not just the first body. - On/off switch —
ReinforcementOffkills dropships entirely while keeping the combat AI. - Lands in/through buildings — fixed. Before committing a landing, EVE scans nearby
structures and spirals the landing spot outward — up to 30 tries, each stepping
farther from you (~80 m → ~350 m) and rotating the bearing — taking the nearest clear
spot. In a building-dense POI it pushes out and around until it finds open ground instead of
dropping the ship on a roof. Only if it's completely boxed in all the way out to ~350 m does
it fall back to crew-only insertion (no ship = no clipping).ReinforcementCrewOnlyOn
forces crew-only if you never want the ship physics. (Distant drops are intentional — the crew
marches in.) - Less frequent — the "2-in-10-decisions" cap is kept and exposed as a tunable.
World Director (POIs)
- No POI mid-conversation. Director ticks are gated by the shared dialog check, so a POI
never assembles while you're talking to someone. - Own notification toggle —
DirectorNotifyOn/Off, independent of the combat channel. - Stability: the ghost-quest guard (below) stops a stale cross-version save from spawning a
second Director instance — the cause of duplicate/erratic POIs after an update. Start clean
(new save or the re-bind dance) and the Director runs as a single instance.
Swarm ⭐
- The swarm actually reaches you. Pulled creatures used to be aggroed toward a single
stale point and never re-driven, so "23 pulled" but nothing arrived. EVE now re-drives
every engaged swarm creature to your current position on a repeating beat (rush style +
200 % speed + sprint), so the swarm keeps converging as you move. - Creature-feature mode. Against alien creatures,
swarmis now the priority tactic —
when it's available the director keeps picking it (and it's exempt from the variety filter),
so fauna encounters become an 80s drown-you-in-bodies swarm. Human factions are unaffected
(normal suppress/cover/flank/regroup).
Dialog
- EVE no longer interrupts conversations. Combat dispatch, POI spawns and dropships are
all gated while you're in dialog — fixes the "stuck in chat with no exit" lockup in Neon
(liquidcool25). It resumes the instant the conversation ends.
Log spam
- "Unbound scripts cannot start timers" — gone. The orphaned ghost-quest instance can no
longer fire timers (guarded on init state). (djoole)
Companion
- Andreja keeps her gun. Companion
suppressno longer scripts a melee rush (that drove
the "drops weapon, runs in with fists"); it now holds ranged aggression, with a safe
fallback combat style + a boot warning if the style is unbound.
Setup
- Custom llama port actually works now. Eve Core read the port from
eve_config.ini
everywhere — it was hardcoded to8080in the compiled backend (djoole). Set
[llama] port = 8081and it's honored. (Eve Core's own port stays 7777 — baked into the
plugin.) - Uninstall fixed — now a Control Center button with robust paths (the old
uninstall.bat"path not found"). - Non-English Windows — build scripts converted to ANSI/CRLF so CMD stops dropping the
first characters of commands (the Korean install.bat fix, generalized).
Notifications
- Per-feature toggles — every system has its own now, all default off:
NotifyOn/Off(combat),ReinforcementNotifyOn/Off,CompanionNotifyOn/Off,
DirectorNotifyOn/Off. SeeEVE_CONSOLE_COMMANDS.md.
🔧 Under the hood
- All Papyrus scripts recompiled (
v0.6.0-alpha) and the backend.pydrebuilt with a new
sharedeve_settingsmodule for the port config. - New shared dialog gate (
EveInit.PlayerInDialog, via CassiopeiaIsMenuOpen). - Shared bounds-based clearance scan (
EveInit.CollectLargeStructures/PointClearOfStructures)
used by both the dropship landing and the POI placement. - Swarm gets a repeating drive timer (re-targets engaged creatures to the player), and the
combat prompt + action filter makeswarmthe priority pick vs creatures. - Ghost-quest guard (
eveInitialized) gates combat/timer/dispatch so a stale serialized
instance can't fire on a[None]host or duplicate the decision stream.
Update
Standard re-bind after updating (the usual stopquest → save → reload → startquest → save
per quest — see EVE_CONSOLE_COMMANDS.md). Re-run the Control Center Install once.
Known follow-ups (not in this build)
- ini-driven defaults for the per-feature toggles — the console toggles ship now; reading
their default states fromeve_config.inion boot is still to come. - Stable
EvePlugin.esmfilename (to retire the manual re-bind dance) — needs more in-game
testing of Starfield's binding serialization before it can be trusted; deferred. - Antivirus false positives on the
.pyd/ Control Center exe — code-signing is the fix;
still open.