Fix perception, patrol, and spline following for PS_AI_Behavior
Perception: - Configure senses in BeginPlay + RequestStimuliListenerUpdate (not constructor) - Filter threats by team attitude: only Hostile actors generate threat - Skip Friendly and Neutral actors in CalculateThreatLevel and GetHighestThreatActor - All Hostile actors are valid threats regardless of TargetPriority list Blackboard: - Use SetValueAsEnum/GetValueAsEnum for BehaviorState key (was Int) Patrol: - Auto NavMesh patrol when no manual waypoints defined - Project HomeLocation onto NavMesh before searching random points - Fallback to NPC current position if HomeLocation not on NavMesh Spline following: - Choose direction based on NPC forward vector vs spline tangent (not longest distance) - Skip re-search if already following a spline (prevent BT re-boucle) - Reverse at end: wait for NPC to catch up before inverting direction - Use NPC actual CharacterMovement speed for target point advancement - Face toward target point (not spline tangent) to prevent crab-walking in turns - Junction switching: direction continuity check, 70% switch chance, world gap tolerance - Debug draw: green sphere (target), yellow line (gap), cyan arrow (tangent), text overlay - Add GetWorldDirectionAtDistance to SplinePath Editor: - Add Placeable to SplinePath and CoverPoint UCLASS - Add PersonalityProfileFactory for Data Asset creation - Add EnsureBlackboardAsset declaration Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
65
Build_Plugin.bat
Normal file
65
Build_Plugin.bat
Normal file
@@ -0,0 +1,65 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
:: ─── Configuration ──────────────────────────────────────────────────────────
|
||||
set UE_ROOT=C:\Program Files\Epic Games\UE_5.5
|
||||
set UPROJECT=E:\ASTERION\GIT\PS_AI_Agent\Unreal\PS_AI_Agent\PS_AI_Agent.uproject
|
||||
set PLATFORM=Win64
|
||||
set CONFIG=Development
|
||||
set TARGET=PS_AI_AgentEditor
|
||||
|
||||
:: ─── Colors ─────────────────────────────────────────────────────────────────
|
||||
set GREEN=[92m
|
||||
set RED=[91m
|
||||
set YELLOW=[93m
|
||||
set RESET=[0m
|
||||
|
||||
:: ─── Banner ─────────────────────────────────────────────────────────────────
|
||||
echo.
|
||||
echo %GREEN%============================================%RESET%
|
||||
echo PS_AI_Agent - Plugin Build
|
||||
echo Target: %TARGET% %PLATFORM% %CONFIG%
|
||||
echo %GREEN%============================================%RESET%
|
||||
echo.
|
||||
|
||||
:: ─── Verify paths ───────────────────────────────────────────────────────────
|
||||
if not exist "%UE_ROOT%\Engine\Binaries\ThirdParty\DotNet\8.0.300\win-x64\dotnet.exe" (
|
||||
echo %RED%ERROR: UE5.5 dotnet not found at %UE_ROOT%%RESET%
|
||||
echo Check UE_ROOT path in this script.
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
if not exist "%UPROJECT%" (
|
||||
echo %RED%ERROR: .uproject not found: %UPROJECT%%RESET%
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:: ─── Build ──────────────────────────────────────────────────────────────────
|
||||
echo %YELLOW%Building %TARGET% (%CONFIG%)...%RESET%
|
||||
echo.
|
||||
|
||||
"%UE_ROOT%\Engine\Binaries\ThirdParty\DotNet\8.0.300\win-x64\dotnet.exe" ^
|
||||
"%UE_ROOT%\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" ^
|
||||
%TARGET% %PLATFORM% %CONFIG% ^
|
||||
-Project="%UPROJECT%" ^
|
||||
-WaitMutex ^
|
||||
-FromMsBuild
|
||||
|
||||
set BUILD_EXIT=%ERRORLEVEL%
|
||||
|
||||
echo.
|
||||
if %BUILD_EXIT% EQU 0 (
|
||||
echo %GREEN%============================================%RESET%
|
||||
echo BUILD SUCCEEDED
|
||||
echo %GREEN%============================================%RESET%
|
||||
) else (
|
||||
echo %RED%============================================%RESET%
|
||||
echo BUILD FAILED (exit code: %BUILD_EXIT%)
|
||||
echo %RED%============================================%RESET%
|
||||
)
|
||||
|
||||
echo.
|
||||
pause
|
||||
exit /b %BUILD_EXIT%
|
||||
Reference in New Issue
Block a user