From 48d15433298b791602f57d0beeba7696c0fbe8d0 Mon Sep 17 00:00:00 2001 From: "j.foucher" Date: Fri, 17 Apr 2026 16:30:48 +0200 Subject: [PATCH] Reorganize Blueprint categories under ASTERION namespace, move bAutoStartBehavior to PersonalityComponent, add user documentation - Bulk rename Category/ClassGroup strings to ASTERION|PS_AI_ConvAgent|... and ASTERION|PS_AI_Behavior|... (284 occurrences, 24 files) so functions/properties/components group cleanly in Blueprint menus - Move bAutoStartBehavior from AIController to PersonalityComponent so the same AIController class can drive multiple NPC archetypes with per-instance scripted-mode override - Add PowerPoint user documentation for both plugins in Docs/ with generator scripts Co-Authored-By: Claude Opus 4.6 (1M context) --- Docs/PS_AI_Behavior_Documentation.pdf | Bin 0 -> 407648 bytes Docs/PS_AI_Behavior_Documentation.pptx | Bin 0 -> 485070 bytes Docs/PS_AI_ConvAgent_Documentation.pdf | Bin 0 -> 425379 bytes Docs/PS_AI_ConvAgent_Documentation.pptx | Bin 0 -> 454355 bytes Docs/gen_behavior_doc.js | 691 +++++++++++++++++ Docs/gen_convagent_doc.js | 711 ++++++++++++++++++ .../Private/PS_AI_Behavior_AIController.cpp | 11 +- .../Public/PS_AI_Behavior_AIController.h | 26 +- .../Public/PS_AI_Behavior_CombatComponent.h | 14 +- .../Public/PS_AI_Behavior_CoverPoint.h | 14 +- .../Public/PS_AI_Behavior_Interface.h | 28 +- .../PS_AI_Behavior_PerceptionComponent.h | 10 +- .../PS_AI_Behavior_PersonalityComponent.h | 26 +- .../PS_AI_Behavior_PersonalityProfile.h | 4 +- .../Public/PS_AI_Behavior_Settings.h | 2 +- .../PS_AI_Behavior_SplineFollowerComponent.h | 24 +- .../Public/PS_AI_Behavior_SplineNetwork.h | 12 +- .../Public/PS_AI_Behavior_SplinePath.h | 14 +- .../Public/PS_AI_Behavior_Statics.h | 2 +- .../Public/PS_AI_Behavior_TeamComponent.h | 8 +- .../PS_AI_ConvAgent/Public/PS_AI_ConvAgent.h | 10 +- .../Public/PS_AI_ConvAgent_BlueprintLibrary.h | 2 +- .../PS_AI_ConvAgent_BodyExpressionComponent.h | 24 +- .../Public/PS_AI_ConvAgent_Definitions.h | 30 +- .../PS_AI_ConvAgent_ElevenLabsComponent.h | 126 ++-- ...S_AI_ConvAgent_FacialExpressionComponent.h | 24 +- .../Public/PS_AI_ConvAgent_GazeComponent.h | 52 +- .../PS_AI_ConvAgent_InteractionComponent.h | 50 +- .../PS_AI_ConvAgent_InteractionSubsystem.h | 4 +- .../Public/PS_AI_ConvAgent_LipSyncComponent.h | 34 +- ..._AI_ConvAgent_MicrophoneCaptureComponent.h | 24 +- ...S_AI_ConvAgent_WebSocket_ElevenLabsProxy.h | 42 +- ...aphNode_PS_AI_ConvAgent_BodyExpression.cpp | 2 +- ...hNode_PS_AI_ConvAgent_FacialExpression.cpp | 2 +- .../AnimGraphNode_PS_AI_ConvAgent_Gaze.cpp | 2 +- .../AnimGraphNode_PS_AI_ConvAgent_LipSync.cpp | 2 +- ...GraphNode_PS_AI_ConvAgent_BodyExpression.h | 2 +- ...aphNode_PS_AI_ConvAgent_FacialExpression.h | 2 +- .../AnimGraphNode_PS_AI_ConvAgent_Gaze.h | 2 +- .../AnimGraphNode_PS_AI_ConvAgent_LipSync.h | 2 +- 40 files changed, 1723 insertions(+), 312 deletions(-) create mode 100644 Docs/PS_AI_Behavior_Documentation.pdf create mode 100644 Docs/PS_AI_Behavior_Documentation.pptx create mode 100644 Docs/PS_AI_ConvAgent_Documentation.pdf create mode 100644 Docs/PS_AI_ConvAgent_Documentation.pptx create mode 100644 Docs/gen_behavior_doc.js create mode 100644 Docs/gen_convagent_doc.js diff --git a/Docs/PS_AI_Behavior_Documentation.pdf b/Docs/PS_AI_Behavior_Documentation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5c4701169baf0eb3b8d9bc228b4f4c04665aabaf GIT binary patch literal 407648 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 z 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S(ofmW84LX6dpJB`*t+zhy{1 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 z zl16xmnUZ|F?8%|86m}~@wO+4G6_zkF#9Bm8r2M6)BA}wMb{T92NZ#4L9Urw6E48$d zma}DO?r}KSh;$qB0Ip3)RgV_4{~ZP7oy~ie)9z@PVrLT0pSaCCQ|vrO*DZ`Js!oa@ zO)7k*Wjb6RAV^%5%eP>Koh7pH*0to+hu`Gpok1ZNdmE_8XTXp#kZs|P2* z;;@nm`nMJ#{X^T`#%J)HT{_OBsO;6pJ4Foy@yY<>+d(bxp0NGSqs=uhNu)l%iW=4# zi;gH?@dWb^kC-1eoshy)MRFphwgML-ayw;a(BiQ;f=?5|Zx*a8mjfX90`ZAH$$ol3 zo_KawV)z~qHHbp;csTC@{i?uwy$kvXH!8)vC?3(tLY)=K-guWE$j-#~S7 z#6B>IZLT*ehW{{j8|o?VYU!A>(hP%*^IWWok{k9Qpe$2?PWw-~BD zu`L?eOAS&&)d{V%2-2IZ0gjSYW1laPJG?Fq?nzD#m08P zC<@@vF=0i)h$|XWqv`_9KVPy4_pO^w^N$IAyxG6)KghmdI>}pv$U4dKfM^RDI$!YQ zM3IUp?ITOeyNGJ{_H(e~r`)o-7GYM%W%fY*Uov1Xd3r({9?->9Rfp1NB;o;hb7R80 zm(Gl^FLk+4AFU6DqjD$e)D3sm;}Ez3KN%X{E71Cr&%nSf);>`Z6yWlJLBI%{H#+^* z&;2*k8b5l;il4$KyeAy`L>Kroy_LMUh$>3>*$664+de;U5W+C$TyO2#tdy8%K|}X6 zw0g+-L;U@M@GXb=WsyySDGEVie!k9S%!P>+VUG6}o;z$y1iS{%ibQbx8$R4WW+>!) z!vD1IAzc6DW{U7H4uCy=E}(;mbD1~U-DAP;cMT@#329)$i7j#aCN@rr0Ldhk$s4$v zLjr0iKTp%DbOFcOwtMSsZ(k-hs?eFOV0e;xZEKj>u&JxlWb3JJB`c><fco^7*SuiO1KXH-BGxl;H3&Hd(s-fE!?j z7=^95hoKC7#;>k&GR+NX27!%ncv8gVu7Z3+8C{(!{Jo_umzoa7Uw=M+oalo-DE523 zdYs$|fBh{u*Ov3V=ukmBHh;|H=-$#p#2x|y?WvB@!xut*c70#(rK>*>NL!2}F2Av+ zmTcXK#*$df1N&X(93mgjn`|61Yk(lyhf3}xZDh$*@AjEI%crf}*doZ$lmSX&Gh;Dl z0w-cqXE7df_?~GQkqXOYFLJ#G-n5q!l7kOA)xXhru?e*m^dPc9+1wDls79Nw~|8hZ3fYV%0wMJ z4|ro46MKx6ov@EV?^pp%YRj=S4ARP9fxO~%cx1$0qVy(m6*>tlLzoQr=OVrG zyZ!of9$a)60rdg$ujQdVv662Aew~JdCA8or1linU9t9k`>{Fr;g+jIoN^A1_?#6=Y zy_{9yyVhab%Eqs@9Q~%%(BwOg!zOX=LZ~_9FI2k@pT6Q&Zxc-hlBd-os2^>Jv(#4B z`tKEfI`a=T$&dauszC+kvGi7r@4_eO!sb6J6f^AFzE)ZDj1PA`%x6gC&H<)$e*NV3 zFBk;yJvd@Oo`X@HNb_%ruI=750`aWQNo7;I2W)miy;ZXk!9KOp63P^5i$jj zc1rz%AbrcOI^^5l$5c}{dEyw+(XTn*)zvQj4*q&qGVk>A%js}@p1U6IEr(KE*A{D1 zb;%Q_D}XPquC~k+Jl!0-gOk^Ye!&_uLYxN@G!A&&%53cD8ZcCQ?^PY{D=4;CLGHK> z;)&7Uj3+ywJ6V}J*b1G}(trXE6MUJAigV;SAnqNL9NeAPiJ(LP3|l!?yxdW zp;f+a2bmhT^?0hk3pWFO9-jdj%+?QKsJP~K`H6os8#2G+JK9#c)M=@8xmeBOYe@F^$Z0xA;F3GR;f^m7-)H9k(3z2${?BLeU$^~8kp30+0}l5gm8VfZ$FZ^!%14rj zuCDxEu!b$K-)UilAcRUg(Fi9(23IXmHuxhnoPmz6^h{Nv zBSs|p-K+>@C{HOZZCmv<=hMHbL@82V9=?Jk2{mH0#&L_kacF z9KQBo+P{eA71RF`=`q0Q%}?jmqxBM`@%ybq70iUG@`Q__@N!zM^h|=rvzSR+D0Brk z>4(r7a+F>NaUoa}zyyp$U`?JiaoMs} zgZ}6m+%Y}YrCW*2I0~tit~@u#41^J3A6BA<62=bULQ%vh?U^z?=3E*I>mo(NyBM}Y zdIq4hhp)j&=E$HxqvG9HY$M&T@A}mc@)*+s01VzvX&AN~P2^w0*Zy1bxnf(&Z4Ka+ zV1IO-F80k*8kOEPHH)mBUu!TfZuR_{{SR;wJ;|H2kzvOK;5Dc$-l0ma5Ex)~(iFyP zYW@W3K?Gn^{G6PRv4lS+n@1`}==-ayG*LaW#+hp?F_P{P7P7X2>z59sQ&hjt@uE!K zvpC>}7RfTgj&98&vE-hxY#xu)63LW?6Y5zQ}%nM zb-9iLp18bDJ?=V9$nB)59pRNmUU z#^xC=FRflLF+r}5_NMwVVRpss5!qiHAnwKIaV;g`bO8nf(-WhV)D^_+yz5y^zLxlR zj4xE~I!T^lA+volTYQB1WCi#G=D%4$V7mu-+>DRp#wF@ZKs1X%RwjQjvwWm2!jS79 z4e0B~mbDY<_P8CH8J^%-qWIR1UAZ>p)^h^b{?C30AqRh%Kb7a*<)uz{M|j32TOZz9lbEt`c)v}Cw@9oGHQiFl zV&X=}hTPEM#_Y7GSYzQ<=yEmM?WU7PKl)!vWj&3BvgXb@PfiqeG78u@%6dDXHP^zv zY%Z*+19{Y}Cyjrlr(QR%p*Fc`eGy10QQHyxj=qi(T?x?=diBP$%08*l(D6z&GDk0_ zd%kkl&wnH|Tx&A_TTg!-blUO$^lVGo1>Ss4B(wmABS|KBxY8b23i(A^mP_zX7 z;Jp0}ajOdl+c#kxZq;)@ERF;6+~;Tz_rel^B&U6Nm)$|3gK_=f$7^R+*wH|`!bz<8 zx_FZGAs;)_z7_TV>FzXnk8!^Lk&$K9w@R{mscp0Q0D&Z2t9axQZSd1FZ`$KGOoD4I_a@nvNiuS?W#Ff$Etb6qHrnWc8%y|N~rg(TtiOs4DZQCSe+XRxz27cmqy%LapE zW5YDh;s9D`@OO~DCFBxS&u>pTWbK-T45vjf2(S31`hMj9Vy#v(Vx*=FRmw7@mpF%Q zNAV_mRB3Ox7}eV=VE{RY71G71Z-B4CDeMck_qiy_1={I2FCtXz4BDvX4AK{9lmGdW;;)NsB0#ceb`+0`!?TE&e-by&aH#MJ>ma^LcxVb z`T>GMG$2blAX+4%xFi>;1)WF)4NXjilp-RjXEM>$J*VBH;JE#-TF>G-=VWXZYf`0e z%q>Y<+;Gh4{FG{b;;2ksam>-*4Epx9hd`p5kd)hW_SzuPhxPCPrgiPUo1O3;tOo(j zxu+*z9gX1R!Cp^n>>%_StjELVi zi%5fDR}s!&{gyQF8cVtQ4*pQB+Zel6WrX^HtH`4*Y6^D6j=XGB2OddH~f?rt# z(~xtOJ^^S7?TbC}`VKq>q&K7s&XD?QA~m0+f-8L;CG*plwITT3pSpR$x?ajVX#tLz zB2;b~_@G{2cD%PLRHOlFtOAX)x+*1o@Paxpg4Bv+QzoU96r2=`x#2}+cNx3m&sjQ>f}_xnM~U9jkm(wb-bG!{>H9N z`Zx5(*EWSwL(hiBcv1JK7UVe zU!1jPegpr(Zg-WCNs|`-T2GEFcSE_CdL7q+^?6yMbs4@zu0#!zH^uxD9$Nq z=rHhHZgG7631G-2=LKC*@in=IPp7*zXJN4U?ocWJ(#2*wcY2oSZ@(rNn zBbQ9oI&@(i;(UHhB_WAJ&ziMqjLm>Uk#Q{m9Z>XwV_@)z?!^qLGZdV{ZwGUfe@=QX zt1Hi+VBgNsXseLk+U~GW9p~Bn7Rr)mG{}{5Ot5>f1AZ(p`nkw_&JNn`ywPW0`%S!T zm;cG`a3eyD_{Pdo@1MolhIP;8Bpdey*a%tJY^)mG%fW!r$>XrtMP!kJwy1HmSnD;f zabzGrO`C@^Au0Wx8KK6ibWBoVyZsNs6~lV7wrbkb@pWaCR;?oO7U~LbC>kH-B}PWU z=z~qx@q&ECGtnpo8kjce!?aMJ*zCUimIh=(e&IfMWhTD0eLET6EyC?fw%0C_+zEtJ z<=X5|nbag8sGjXsq)t=nx{$o`NC?zBNrEAr5Q|l!s!CMAD^n(hw%k+JqdA;(mdfi7O5% zKf(O>xa^v_)19Y8)|f;uqraK8=|6Vce(WONz4{C)JHk&-n4qK)b4KVZ$qnWeUvo(+ z;=KYYTG7gmkgC9C?q)#ylVhTu<*AnTU2wc4CQcj3j<~1!@x=t-c#mE^ues4pI=G(Y zhGvG2Fxzc+wNu|AFQ7rCcO?9yI3t}Wmfok~^XzyU|CQXc%ocCyOF^=4Of21tk&c z&XyeyLWLB3JCsON?XbL8W%Jg%UcM=QhNr*N*;ltx-zJ0ioe=|}4m)NOht%^R`|ens z@CTo$`hR0JsG?8_K1*bTDp028q@+n`$O)4Cl4_XQW`%so7j740E$~nb^hK@>sO^^s z4Z+CC6j5OnP&*5meTCX%2#wQ8B7&QK>!kc#yNk3iCi1+jvvHO7OkzxG>(21Lq!n;{ z)4X4E-m^_Kf5&oAK^7I!YR45wh#yn6YE5B2BlF_5$WIZLGG~x@fYQe{nlY!!y%otH z;)29C@e(|}_dWTGC&Jt&@}PqxD=PnJzaa2DV@jgBZtPFE*)q;WtKaM7TSC!JdSTFq zd0k2K%GzGu*_vwWs;&|Tb?Xtge=fbHSrmtb)KE`Em|rZb=rB^A8wCTtF9>K3>`Lrs z|HVaSSiIp#hhasE(RhP?_0#yC6uk7AXO93EL#Xcg(+gz01I?djp=%bp zUu0N!ya1d}l%3>4zY4m_=;d^_hZppmi-~u_y_dASHIL>Fr>a`cd85SoOU`yn-m#xm zR%{~`tE(G4cX|_DXQ8wu759_Ef*HBoYf(M`;%LjsvmH5&R4vVQcpt>oJCz4 z_m~t3FPUI*BA;139~C3pzm#zL~I+)6f4~` zVQ>7iHR5sHs4=o_-b1saNFhSR-n+;IC-g#E$0~ypq2XZoMbBMq^!R)I;e()DW7Y=e zc_5tg*JOwZH+2rba2L?&IK&rq&=3V}y{1Oy1p8_$I3NG^`C8R{9s zKp6S$-65Ca5^^gDJCJK9`kc{yS9ZH};zQneE~cVuaQ z5und(y%5+k17W89n#wa`+|M={X6Um^pHd zwQ6%7ib#?IY{HKFacv%InhuE5~PLcI(H2rQvXF7z=Mr6PtdV#Jq2k-`!YGCRw z6piNrsdWyxBtcH|EQ%-CkL_=9JT*@e4B&urh%cKg+5?{Wf>2yMi?)6{P3TXVM|Qg# z%IXcbZvQup$Cblp_m<;`r&V)+X)Z()7o*`Z|Vvhp;3j(JJGxfL8uUX|?)d~J5n z_N;OCb9NAQ5=A)~=)5(kJPqr#v?_~InM#Fm4|Hvo>Jbo8N&Fzv3kE%nM$o6C)xp8} zOk9Rvd#x>^&6c*=K6->|I&qD}n&7i!XEj8bo^sgRnCLzCQyX=|finwnNm<3=yo(oa zHriKJ)FZ}k3ely!dgZ^ftMK=CME%0neGD|ID5j4q3U$hQCi=XrERB{HQZ$|lbSx`J zu+74}GQXhTk%vs6&qwp545XYBs$%_`d5*;LeC8=YPqvUBiL zyHelkABAN-@7nh-^>Wsyn6ILXsqJ>dJDw5hxDVZF%;J>TTE4N&& z+C@uMsnJ2s<>my=``?;}oK`n@@pJq+@x`z3szNIpNTb>(4RKXDIFB|st}H@)ft`6p zo-!NzLJYa(6-IEH4f1lJB?s(ll{HuUht%;xF$_7Ec^BxoM+c`hBv`tWl7a3QXPXb ziw?SlzcgAT*p%7=p4Skq)pNeZ?(4)<_ACNBlW_*egMx*wO${kNE^5xqVFZ8F7LvX$ zTDi$RSK$4+*|_HNJPz#RP&jT{VRe6lP{$eAyt%P~dn7mJFUkIXl(3ZTaQu#l_-tEe z8uxZM@zNSxzaq1e@H*%oP#A2qi4-y9M|94vJS_LCAaRWX2B1i9!?3+f*PazB?u%iN z|EL8NKrT3gUofZlZh*nvWuM*sGg`08*p%36^w9%jyCs^I^q8=V3z*Flx&rLS{-l6C9v_DeMt?esRJ0gFZ=-nFYDdcS<7?Ow3BiS{>>R+PE zxyD(wk}TFUXSpa*%a*lT(sG>zg@D0JZD16^#kqH9&mMZIFu%M~n2MfD8nIn$XMI|L z2NKT*eU6^#{D^b2&*5w+*SulD))8~(A#mq+-Ly~~J2AubUrQ+3RDP~?R$StctY-wh1f#^@k7yL)^fW zL?oli$|b=Bz;>gdma{hx+r%05Hoj=bzJztaLX#-zMhV8PrB?q?zvI89d9AaBb`&cL z;{BeL5Y{|ZQWG@ssc>GSxt^hgCjCIi&7+Y2?!<6#a|vsgK7qSpBjnLLT=8Qze{f?& zon6k(`1e!JWWBS>_34*eS9pzq)lxJjV^$+3(oa^8s5;VH6A&X8C z4eY26`m|n;|8(!6shzvIaR586RaB7ezEW<8qN5YMyzgVGpme6HCHzPa6n|4+XH$`{ zE)kWg2H0clqlCUcXwCxSJcy+c!KmdPuyo;Dje8kOwStf;u&Nw|&jh@-K&tyw74 zqqpAX73@}}T7`<)p%}Q^(fz!MXe6Ln9@O7^^FY6_AN+Tsw1xXzdcoI*r{WX0FoIB$LJqY6d#?wodk7PaOnzp1%}V;3`ZNmC{4xH-3F}kqfEtxubOcUO%<`NE=(+& z9NrhyF>Uk?Om@?=j~6kL_371Nt#uyFrDe>cQqk$7G1Mzz*BD5W`x8i89V$ntpXpzBX1gG^b}Z9gK9q7euIL)df zyb||JmHU(2=(&kT>1G`RMb2uynyTm4`nXv8uVKsCiLp7RF%L8bBW#0iN)(xle2`U@ z1OC;jk@l%VaNsvFM!!T7Jm-;`mo4^4A6%-U%?{}Lg)p#uoy=3$dwS}+!VR%V)+<}? zqd{|hzc4Frz6@kdYnpYHtAyX4o#*=a!EqB&kq3Q$5C5~xF)gJl2}rz+5%OK;q1Rt9 z*jbKP1nGJxLKwZcFe*A&#%M@HQ%TLLcIp6IwsRk$@Ag%#tp#Y0X1X44>*?!beHRJ( zPo;ZyXo{EaUL(BK^OUo%0v6J+`)n39;YY&!ieHpXlQbXMcpajvz`FH8?arYW*$on% z#;AJCdfAa5Z?cp@^sTm&wjqtTckes@v#nP570f1`= z%@2qgCLxbQCpms)wR7iG&Ro;}^bTSns;w@J8JS2i@ZPi2kw@@j&sn9!sZg|lGF)%Z zN|ArwzLY`SUZzTsokc}5$apqoq)OPU^z`R&Z$T)fL&|1rq<_Kh$bz^!hSwL=->Ea9 z&VZu$H&xo(40u-6mMkw)k6>i~flDUO`ChmE@TO6`kLiR;;H}QzCp%MQaB~kT7lwX~ z%?AqU-E&8!PX1!?48vi6%t()+Q}v$Yxq9^TJf_qh;I>j{k6mF!fIrToNN-Vj8`$p+ za5?u(fX-5fpWopq&rURQn}z~`TF^oBnZ&FK1zzKCEf)_R2DZL?g^`0=KW#U+by8Rb z$K%ixud&TJ85CH)3rsx-pmx~ETS(^H%bTuxW!(JgO!k935&r5a+S@f;Xx`g|4l5j) z!-Tdz8M9~r25Df_O#-LXtkfKC(Zcb4X0O;?Zeu|4cwQI55%Mm@5&VQDTy9BUT@yyy z9FCm*f*TawM?G6NJbGA&_gBCV+SwF+5Q~!%(qjQvdZRZ<>1#bx7~rP8xi$IjqiU>| zRTq~w^v~e3rEKHyp!EHJD7`(A&FaW~9QE|@?y;b~%D6&gx+*+IjdBP*Tj5_awD*@n z`F+?jCuI6GR!?;nhBk%rCexg1?bjWgha^mG%%?l$IF~xIK{3q7#!<}s@_DC$b`=2MO-mhij0c^c+Q4-#$a~ey+cW>E zD^`68NhufQGL~;~ex2x|`}hZ)>O>jPlsnxR=O#|Ip7|a&Im`}i6#VMnZ*hJz@F67> zk2&v-(vNjPDR*MHFqo)bfX<&`p&Hg%CEeb$K@kV%6t>08yK_}3b2!w2n8dK4I65w2 zSVBAq;@KxC``6{380(G_Fm)^>Bgo0`mF;XegZMMUae>}6w_$ku%rtk*4hY|2`URQx zj!tG6o_7L=kGS2l`~8{K$vz?PtgkhH2h4Zza4#v(GT3p!+gBP-NIT~bHPck(7f$%qkA z-xs zEMMq-&j$EOeBbmT!U=!Z-ohTnNP6PiF!s37W}p+hOb17+4=B+M@`9pKeNPd^?&lTp zQ@!00!m4Gm`rwz;=(qSSd)s*#;}L?V`A<*?soOM)1(=CEX(hNWILeR z4a&aggFi>zcJ*KP_dy}?gzOjZiKkYJyr@xPb)pUdzqgUtA{}P^QFcTXmT3ktt0(^V zTkX*7`{Y|8*|*pYy>C;?{81t#;>7kMe~XjnZ;Zy5ZE86cf$pt#0f8H^t@*>VZU1{F%bs^3V^vNM9nRNppMp6*9;$Nyt+yiozeo8fFnF2fmGeP%xB8(m0Dk z9wJSl8~YgIQf^VH8v!JEM<|T|innpY#+n~KdFWG8Zyc}AjWxszmskd5ADD)_$Wx@h zj?s)Vi8)*_N+p6*wW-svg{EuKrvQa}ZV{#k7eHgF2+>f-e=UU1M2$3LoNJ7K9|YZs z(NIGYyUx*2OWHl6i!?zkoP zAJ~+Mx?wl&odXKc9#lEt=!h~Vz+^N2^>4pYX4nlCKv|GF=;6LrahoIUM-tCM0x9w^ zkH8fKR-(U-{`>ykC(C`mm!=x(wGIjEjcykre> z=3lEYSeBpPlovk4Zo zt3ZNB$-^YX4U$ixl_ue%saP>ghnM*Kr;9UTkCMb7RrAIp2w1&6F|;G|K7#r(Pp$w; zWQ&P|*ZVK^3D*qBmMDjKPs)_c zSWv{Qs+!cVLZf?>fqz3uMvp5jDW+lO%fp{Gqre&3_kDi~bvqq{9l+bad>DR_AZKLc z!YBBH5Fc;)@4BOcCuc2D@=EBc&WMAPl`&C{EF7;waD1Mh?|3aY!%aq(JP?ftQI)&t zFm6DGDNz;zU$}B2(#44DOdL4Fi*tj=X zV$73F4_AyGw90Hl%*@BangP#+R9ik&xhp6xPsHtVwDp^C`ES+0f1&sO4+icZp7Xy@a{ri| z|6u|C53q7ftp6P&r<>4YHNpTF>dqfJy19QqDxHo*NfiqBS!hYv-(eCq9{BTHc$X+J_O}*^8=a42iOWvD-E{J)_#WC;8 zRX6y-$rl$fm(u$MZyY>CixX{QA-Jrjgx?~slq=-){g9kx_HL@N_2^4~U1pVaz_-hs z-scW$>TWin?4}TO1eJIDy9~>y?EV!5cEX)AaIUrL{U5@Mu$20G(q=a@U|y&3u(RfWcz#)qev$Hrd+BcZ_44Zrq> z$G=$4dczrFfT2@Q$*b5mHU3)Iox>9r%KQ94>$S~|)%Q&SbjdoFl7 z^7#ITg55-a|8{!nT-N6-*XsB0pU>ejk8<=h^Z<>oF&{+Z`0go<@ablly2`V)T4S!k zME>S!>OAea)5tGRO8Sqr;dSuls6I<(8wg`>I|G1)tf=R)&NJa9TgX4!IJ$Eb&6}Io zA@*nz5NDi=!(P7B* zKVvv?cT`>z=jhimKp7H>eEB)kBh(K*8i6jQXsbVi2kUGs7ewKoJK~R)n7W?hK;JI?@GkG8#c2w3E;hv0mib}5w%Fp*B zE41@PI{W%LHAegk*Jt5hmr17Tqm0G6SUoEiwh2=DE7#G1;MVrvP?2N5F5ee_5dVG~ z!d&|(&mIU$lr}}A_?mT6k3)T$rL^g~KiZ@%(OC5*hHj0t6eGdwFWo=C_BgLXtqn>` z*yns%$}M*;^&E!9EwAm8iFz1!m;D5-_XXCUta_y8Msf<6<_QX(qNbbpfF@e4>J?8# zzCoi-HRHR%Znt}Sc_YMI!H@IIIvcZ-jY=f%oRVqQjep+B&-JNnv)HMa_-ZBF&W%2! zmV2z%#WLkvuXVj4CYjt;v+E>J8OeE^@YSy5j05o@AbmFETMcRE!}3s@2&@PT*;*#q z0QM_>o=yLiu%Vq4NW)b^Uu?}IE*oo}1Wt7WEbS;*wW<7tT0pSTT@1uQI#n zB*SwS$}RfhPiDK>+;2j-h((?1s$v&3$~}G4=JQc8b8#u*>y&B}ZP>KEoO45UxZrW| zYsD@YD)6*Kpd*$Q!9i;*G0i52*#1YT^IrJCgT97v7SVm7aPoNoNe@)e z{e#IBzM$orh)07s#S=co$Rd1s9BXY4WCqz*zxrEF3Y`?5T{ww*ggQn+PkRS=^>;RW z(jPh0ZN>EaY5hd`_x9g zCFZ)fW4x;x=x3DJwe38C`_Oy@g>Pb-pi*_e$%0(<s zlvMY7)Ir_Gq5BD>`I|ETW*wsIkPvvbsOhqT<%(W&aeNvFLYFr~<|P)@AE&+Wuj%{v2vc~Rw z!|p4C70r+9XRge(tyS`D6UvHh)F0{WdsJ}jA3L$0(b~i?54C!jiH%%ux_&*@MdS&d z`J@rIN`x(XsNc{n{bPoi`aOI^n=2bncLg|3p5zzrT3oj#UEPQAfbA3H(b7H~`bX*V zeF`0VCA+je*jeS<9cdQE&uJS$G-uguRYoyRPycB(_4y@oEXgPWUr zeH&cTSb8Nt3yo$rl)efaa&C;}{`%#eBhLqZy3Tfi9lH|>hjcguEVaw&;(6Gbn-72D ztN7=DUVFlGa|+v|o<;l!xIx+GFN9l#;w|p3s{N{C_kCVb;#}fBJ!=kWeb9R#UjMx$ zk1DcR!7On2QPlEK(}&6fwgW+8(l@ivV{QTSoLdego9Oh=FPgzhSw+eBz%^aRd^u7j znJU?tc-^?*h2?!;#M+`*EzqIQ%jJ8mIQ>EGEWb_|rS4O3_fQdX-!~H;*o3IcKj+aW z_}uGX)=H-OTu0B+dm8mAH2?DXuVoL|6`4vnvaE!}jc6 z&|{x25m7HpyB+Yhs^d3||zM~cB$3BO<_>JWpCA&Bh zJS5MG+(>tY2YgmVKa*jhcGrgFHS4X8G`m!U?0`KdX@K-RyPS>sS>>#rWj9_E^OMNq zu+xt_Z{-sc6f-YKCg$zXD&$=n-*y0iSlHj*`5e4Gjux^medKRj!n=3lz(QPe6U4mp zEe`v|j|U#ochtkwono9rHVOM2R06BR6%^Jmix{ypbH8*Uz)H^{w`fXnW8c!hp;hnG zzdo5`a+zgfFV5K(Byo-7n-jku(iO6eWN!WL;dnHH{%HsdAL@*&Y{UAWKd zr-<@ca=(<__Sj(>q%DGvHD?;}@Z3d6;$xz_8j(Lg@QgiynaS`8!fLztWG_FhWhYyE zj&a|)(2eJ+e&?HF@$M~pW`LlM|1jflJ$xOZ1TrY<8Ry9UoG>@ak@mrML^#kUdIPvv z1*TwF=*6WSl;#xUnUj=(e{DOpq}2C-YfK}#&#xOq#vA!sSQLBDPN0RajO$chaOW^pK3od@l?n18D0xhrV$foq8gZ8y_4yPi zD}PMgDMg&e?PF$~0gMmD`fTr0g01kfzs<$6mVmswf<3{ougI{k(70F1`vzr|X8M|C zLF8=WH2AX{T-mNsp?lkaZPbByTY$|Jlp{jnG}N;LEKWw>HWPHXnbh_p!F$agiL>TXzJf64idbwM@lj5T-c`)T1b z_T{P*?;~IC_dUPmtH$&ddbhbfrnW0M$G3a;vEa>@_N4Di_(gA&Q`zY5xziEA5uPn4Vw;}f%Kyh3UEU1a=<8Zhv?rkT?tS?YMeEdZR&iH%@g2JLiRIfa zYh}*}`lRX98YFih#%I~Rm6|?^eK`AHii!37jA1!?@~xkIaQ@cY*RI6SBoA8Q=i;7! z$K)yY=uLciszToq_;5K^9t*2Jbs-e#{Jl7qge$7>m ztqFd+X1Kt!_4!`_R6wi0Rv7bq3ZnJK^Ea2jMKI2*gXQ^kg6tDIpWY|yoTYoe_hqt- zstuU#9cSv@9Mwg=H>7lC>3_EGM}47jKzrYfx_Abr@k)DJj!zh!Q=XAw^h~MFA8PLG zZAxPpJ@*CrxYJ}?((_J+9LsbTqqB&579XQ~_h{9RS+c(J-Kf#$ln3M~_?lPLgNy z;k-4j^tYa`XDxjAcl=su9``)Rda>gz#XRTdCj32aTRt>&O_4+D>s^H8XIWn zdgMW$a<-VwLrG?{O`exMI}N|~tOK*MDCED79brfKUixDv`8w9X_wYR|-iQ^?y794m zBp=69`A|NLkLH>D3O)%u%*_0x9mIlVXg5B?h7p6d4Bly|2z4f zk0=g`>&3a`muR)bbv~xnXEMQZK31SU?Ef z)@6!LEhutjWI9tvTBD+J3_mu)$jjw7!sTz|Wt%}|W-Dy9y?0mtqu#=%<;S)vvKJNP zIbEg#B&s&0R#z``g~hsh+DE#2Ui)PPs$A^qZ6BHHinSxNv005b;4X8t#cr$qjiK=N zqdzqDDUd#X(U#vBnN-EbW4mJ%AS5>A{xNU5jwT?OBV{=?u zK85U7A?>m$q)LS}CeOD=QCFqr%YXArBV1L}Y;nEO`o_O#{6o0SWs1q4R#-|}P+V;v zIa0LSM5oI!5{9Ed)-|=ZZ#?1`q6p-?=XF7MVM9;z6{x<8@MAo0>P&r)fN1#(;QmdUsC9cSP zYZ1n0iOp$^ayfF)d^vV!aSrv8-Qwzb5Vwmm?r5Y!-I~Q#k*VhX(E&E6W;NwdZ^6Ts zhKoIAC;}|#F2hMZnljYpC)JJG+UVc06YOI%bDc(S%TY41iA#hJ5-t~uLa=gZ zBQOTjVy&uM4fiO+-RMkj7Cc%7GaIH0YUmd;x?shi@cwbV?Nrk0>Y`d^il)JBt>uPc z9RN}Rx*|2d z^b*XJYWwJ-YWoD|P^(d$EayV&wN#pLHkOZ_n1ZY{mQriy%QI^oeEEc2=MD>Fw&fF@ zbsE=3kbEFRYs_8co^=&dd>{L0OiM7 zVZA2&EaFBn#*G{}UlrEtBE+F$>+lN@epMoN4;ecEAr=bR$*{FBBT#&588x{h$m|Gk z1Ug!2AsU*Lyz1by6LAAM+uDkUaBD5{%rd;|c~xzo!@9%BDNDwzLQL|jYV=1cjLV2pj4JFfskR~-k=N&xR_Eu?dcxXc^x_|ParGYB>erz-yd^=?6lPZ*$aT5`W3ke@1$M)PHx`qs99K>(-PAcF$C$wu7fZKag26BHG{?}5;&ZCQ z?Fq(mgxMbyy^JIfWn&YZ!p90HZk8h&$-fm!UT8;9VZKd_kqMaHV*3cP3ZG)^0(wlb zL6B7jGOCs-IyfZA71#$E;vd<;eP|UjNBigGh{7ALWikTpZE*#oL@_>1DHEV|5Hy;~ zf`7|UREoNXvdOGxS@vtNm{OsQocs~&3W*+Ffc;LS4~CC@kV+gt%VMz1W3TY_r<%7y zyJJbH_dH}@5asj1+ClpvjX!4Hfr-j;s+)VbCdJ0}4ruNhVt7|q2ZWqGfoQLQkVZ8; zwdg|HC!jRojPYhmrOnemrdGQw)=+L}^%y($6fK&-(Z_`86J;yPp;#z#hOw5l7>WBt zqK(_gyxKBExwv$R&a8G#Z|W>OrwUYs)>@2}E3K|Fj7$}Udc;<3v)C`O z)5S%P)aaiS<&ZsCWW+T*Af|IMgfVP4RQJ;)lrZS_G*_gZ_^MN*~ieHLxO)5vG#&uI#id?nY!3Wn}*^VtwXt4 zQ|*|`#qc)T5)Fr?ZyH?+tLex-IX@OH5mp^uZ5v#TC3rG+4?U*v@_cMnv?JM!t}d{` zg+>@nt{h|}A_hiNL@@=ZG_zuBC;LZxeT;wQu_AJSkt<4;<#c7JD8_supPZ_4;p8NVpwxH66@<7Z|3q>LYx zaa0*UDC2u&e5Z_WmGO--zE;Lp$~dBoFO_jv8DA*lkTMP`<8x(vri=s1_*5C6DC1*g ze58yImGOZx-dDzZ%6L~9?LAp z@q#k;D&u)&Jg1C3%Gj-pXO;1cGM-k(Q_9$-jGfBZp^SQE{8Jg*mGPu9wkcz)GU}93 zs|=SiwkYEXWjwBo$CUA?G9FRJ!^(I_84oJs0cG5;jC+-Fk1}eMu}K*ll(AkJcPnF^ zGS(_%jWX_1#%g8Usf;_6u}T@YE8{k0+^URQlyS2%Rw|=f88<0oxiXe1<3?pHRmKg< zSfY%@%2=d~zbRv(GOky~b;?+vjBAu}wKC=_W3DnPl`%&d<;s|?j9JPkQ^rhXT&av1 z$|zOFbY+w%qgWY5$|zLEG-VVhBVQR)l`%ybla-ODj7iGKQHE0)S199hWn?R3qB63S zk*SOfWsFzGWy%<*j4{d>t&B8fq$nd<84hJ6DPx#2hA3mOG6pGQpfWC2#sFpXS4N^T z5|q(T8GV%zuZ%uh$w(fk-N=fxrP#L^u3TFJ*9~yJi7V}JH?VTB1(*=y@9_KCxW?nU z1!%Y~Hg-f@wJM}ugwz?hRsoG!aCLwRVA2-W6(wiaYk#Xt_C)T`uG6lsD~fEL+*`XI zJMHzj)AhK^7F<6El=gb$JXO0E?rY(msx5%E0M<|1H3+%YxRx7N3thGOxc}9-zXeyD zcC}-kHisuimYb3zXKTrkGvZ3Kr^l6K7snN47sgG?E=b7Fj?YiZ*QO>+$&So@Hdm|2 zJ(#Oq9+#b+l+7o`O~_7~z;{pJn~Z;1ahcf}apSWq#`E~`d{a8FNawrLd3ic_r1P}6 z)a;RQBeGNClCvH4+U&Z()@eJmGHqsELL}TX4Yy~vR%Lke7tKDC7kpdxbnNvO&mtA$JQ|CuFUVHA3zZvRcTULhcZ#`$q+JL$Ynyt3At3rSRrGCj24nEWR#FJ zA*n(}3K=0JMM$y`hma&8!-WhJGE~SAA(sdlEM!n!yJ?VtLM|3EKuCWfiFNHVAPGYH z3D3Sl;)V1P5?9w2OFHi@B(|_E^GiK zQb<=JUFs|&A)SR-g>(|qQAmW44no=sX(yzukTycXg@g&Q2x%=OR7i-BR&}k%LV|?^ z2?-PuAjDsYpAfSUU5H7DCWH%N4iA)Yg9dOKoC1G>Kfp=wJ2(M;1HXb_z;SR4{0x2q zKZ2v+2k<@k4txu~0bhf!z!C5zI1Ii3hrmJbIrt150H1% zyaV0_Z-F<#8(=@!2VMuSfmgvR;AQX&LZv1cl80WXLiLqnr{XJP@ zT>%-BTzt7JdIDV?nYk{%FI~Bkbx9fP>N3GuXR4{` zl9DslRYkVLVb~tB8KUIGIvuSm+E%rFv+cpQdQ}@ zXIt}ILN|qO2{mmAeKu5kHuR0q&qGa)(BUa*v6XY@RnCizt*orH=J43cd2=f(=d#%U z_dopqx&Z$>A2fZXG|?q<(Hk)4&Yc%K7t$C6qf&n6l54Kvq{x-A;_Ihmk7mL%h6Xrb ztcZJn8#I7Z;7{-eI0=3SC%|vuSMUos4vvAJ!B5~va1{Iiz6aldZ^1Xdi1RsF+!F%9c@D6wzyanC_Z-D(^A9x+S23`fPfS18b z;6?BP*bANq&w)K)H+U921D*y?fn8uH*a7OnKf!kJB-jSFf;vzOTwn`$0z3{L1CN47 zz{B7n@E~{q+z;*r_kbF(32XrC!QEgTSPRyGyTEF2C%6Nw0=I+Pz^&jGa5Gp5s=-ZQ zIamhpEXg01lC71)s!E7)Kl!2MxN-zVI zg6W_H6oVpA2&RDokPoJUDPS_l1Cu}waDpqqF|2H%DKlRD^zb?SP`!Uw7d9e|UG5<2t zKzClVUwvh<5?0Bo*=qJ6dyfb3M2v$) z(Y?rX%G1+)+E71HM> z=q*NE%0v7*Q~WklrMZo*LXWIrYuP$>xBR8%DxY6!3jg(NgAuc-|N3*r-^ezhZ|`CE zvis5F53@(n&%)2^^B8-aZDF2)#a6Jk8A=Lg6*&<&4mJ<2R^Jv8OSU>e&uhbX9)Ou)WePTzlB_@Ogo~$X;Tvvwdjs z4`98_USn^ux7j;}`y=)R`;q<0K4)K}9}b{Tjr@PB3||5rY%&-Bu!@z=GJ4Q~I&RSffgm1&rUT6uoP=*wd_yYu1Q z%CE0qu=!8(Pb}CxfCZVY+J4Uo{*K?5EYPp5-p+G^UBRaPRRJ2;s}hW(^|V4^b)sKn zJ8=m`sEPTrNY;<7buEo`?qGJlwl1!92)$ajSOPlvKZEU1V{JJ7Jc;u}heg*y)>te( zIHcb6%-wGB_)+j{7$`3RQO@L9utT#kkhjz7xd4;*^`kmcBmVT0ojz3}d#etoTu zc9xJeWk}npFIir-<(@} zT{_cY?>S>_aX)u`bia@ew(#)C4xynPBF)x6kC?5elJ#k)HfrC*WhZyvczQ`(dZM)` zF>`vu_leOmUU;}IA{31fgci#~i}}Nde zdj$I3qHWUf(f$3B&1Ri*9T}jR663>+e@Tg`;NyaNY# z7x!Va_4Ga3u7*_luPLzGm`?@4tH}jP8#UpD2oqW)&9`?)LEL|F>qu{h%8(4z zeKD3mZKM6{HWr34nwZeOL%Wz5d$&-nUE6TfaiHn&hR5CCyFbWU^Wlw?)~AnJlbd&E z>7e~DOe4ofwcmwj zg*GgJ?{x%5^=fypO`Dj`J?nYIw(<1;`LE}#pNvTf`L6Rw>Nu)Rm@!pRrFW0L7(SS~ zEvQYqgJqPAQM#>VEQXR{g2tqD4*9OE^GMN!FUE$c*{N#MRimC87#1}kDlF8bCL~qX z^yBDtlS=O`AJVsEQ+b=-y?a{Rzwuo?CrzEw`^FFM%FMm*NVRj*Xnjcc*fGnVsl4Wy z8`5{V%jI|tW|tddH9)7A^yWZLL)5~|t%8#S zzBZZ6m?a|^MrcwJ)iH@%UW`BXq8yv8gOg1GUzd4fMTlszNyf~xnWvjxy{t%8*WFc#;PO>j8fC{6R->uwU?zz!7G4SW8ADC*U8C zKla{U%K;iPj!?hA;3H)S*Vy4Q#6VjnBpLISquJVFF0_O4kKFH=Lf!B1xYNgZoW6AR z>eFrhhqf<|kE%TXJ@0wv%yMSmw=9!PGLwBKGnpilZ6+jyK(@(3!WKaG<**eM*+djX z^rjZ8)*7qSPfKgDC<#jdm-Z)Wt;Jg}px4i>?T_EBwYJdKwnho$aG&=*Gf6;td;htW zv_nc?_KFj+ged;NA?q~4akKnl+Q!1gg4E-psVvwAzmwke$JAyLL5wJbU)+5;` zNkFA+Wf7L}N8^U$Y&F2%PPktwKuCl}h#yltOV?_YN;R)H88L>ta(cbl!pR&82OC$# z^&>a_XWXe*u?iVhDl~Gr+GNyf>Umy`5ThozmV}`&1tNR2lKd}hG@)oMK%3)iC`usC zVMzW!}Lze@NdAgmRUl0K8BPWuO@H@u@WpuFW1&%9`j0o ztOi63C=`o@qtTs#9RWuS1ug|Hg^W?^Dtc)pGqDsXju8}2E~eBXY$V2n%to-Lzx`2s zVEv&_(AozM0fF-Ib>c#R;_Ko?_7$k0StbfqK>$43%=no&q3#vNLMh7t%6LA{`I&y2 z_m3QPU+T628do)X=VyX`8t46^z$N{YqAM$xOKxZ?FDJ25K~QyyugU`51Fx>W_ssU1 zu7OwJx})}#w|#qG&(?NdPTRKLo^2gI_Q{uTFhA;?|KgW}M-cq5;PB{=HoyLGYv&_p zR^R#hez=|nx>GSk$Jm*KWSIaKeq9RI_^1Tg?7KLM#mB+NhR186@BGA>4EhxxQ}-)W?0{5O6U*BEWh z{(?`7&0N+regxT$sdazilF$!I9si(^(0mrKlKQgQ=g%tmRFIadIo+Rc!jd+rGHE^6pdj zWwmv*Wwkxs{M~OQ-$YCL|66~FQe#lPnC5XuT1z7>)um;%-5c8)?q6OfSL>7qZT1zt zk=B~hvbx#d015PhpBrfAQcfknumr1A90rJx*JG*@z^S)Be~U1tLUKS3`aV&Egib{M zkt~@(+<8pgiBHQOxVBUF0Kp`ZhAe@5D<#dxZLACyL^eV(}*OTa0@_ z!#~F&<6#2K9_rOrs|sb36Jc$Ze+2z9u2%&$zd{}+8)av^Je}4N1dwJiUUemkMrB=6 zI3!vo`Ir03V8mv#{3+Kf z4~HXVM9+#y9VTkG8u6qLLg>$xb-mEvyR9Sl(rErr^ zHR-0jcuCD*@4n9FqPA7F-#I*I?pmMsdm6h*o!7OaXS@}?;|ewuq(|}{GdqYZ4&L}D z9)ld;%=nTKQk{7Qy#)GU&~V&fQTjEUb6lTLb!VSfa=?1{3Ux@D!5JjeHflJ%b6g;c zxa{)+Sq9ivNPTj`s(pS4D2khrMPZce9FI-kb>bUyPtQN1Y&pE7_x?FWL-tU6c~;}h z&XVw&V9mPjQdYV1&HXd8bGcdK_S4I|n;$r}tz*x^h_$q{Ms!;2zPaBfX#MPszvCD2 z7?aMdBD@Ug89NyakZ0&dkSea)rAK{n8>Y(nvH7f#l}Zl|03R)_2B7^?GM$}?`v+@GOz6D z_h#&^%XK*s`_-2Jc(}#pJd~XoUi@(1iQ^s*Xk;C+PSA*j$zm2zjcC-wG?i{Jrs24e z$yRDP$C#l@-N|=ne!(S(IZ~ZOQT8LiENt!_~-lPFm zNOT)1)U0dTeSAZ(zxbtRx5&!J2Ay}f^iMvD%OZGUae zislDKwx1Zj`%d&fz~qTt-346y4SbAL3F~RTsnJ+LiYJCMt@)6Hos3(p1)1j_l_8m| zAm@EoLVHo87&UZB_(>3-s^fD=g)Su>%OT4=C%|e~&imj?8tp|vV^E9&gDHJXL;$%W z%R&vS!kTg{2}Bj;NyEc`W7+Z8i_aI$>1y%J7+$>l^pq_*A1X9@)uR??)83zNTl4CpJ=3=Sw5wr5qPQrru_5_e(K0u80DQ>8Y@!w6Cu;A7|OmpkFbKObvQB?#sHvU>2L2o4Vdr<}?*yWjWJ? znv_k-JIbpsRCO$Pw>%MhKdqN$Au+;oG!W<~7h}|L#TX{VEV0{5kg^2=0r}W!JlcbbIOERn-@Ss*dsn?+WFKwAlLsJb?mhtWbJ{^n^lVSPDtD zWZ~}vQwR67a~XKD6Hs1Jf>Ylmr^vD*OEL!g{JA=8P9{N-By{1;X_?Vg2l`^`J!aR; z8l-I5H9uUn_4Iw)4zCY2&T#o0n%V+$x>X%rd0Y}Z)>)CBy5fc2{_^(S3&L(oS}4;OVtF<@zOb(0p84he>5HN>*M~JZg+Y705VRMC zt9@i8ul(k9+bc_t|6;9SsQWa$;!FEb(2#ty#qK{DF_5X!t)uxAXt=8O7 zdh&`FeCzrT4;^$Uy_hQq0^OLO~+iJSyD0$&uP6RWw<~i8RAI z^~bPXvQhHgXvBg-Z#P=9{Q=K&3cbT<^7w;U2lpynrDfGQojs0{NW9=x_WeMOSLZ07 zTR*;?eXXL=r?ZsJYZ~8a4A%s@gg`!7Ln3yHbmJ7KJ2H-HFeD27cK2Pnm zw%`$b`T4Tx1;&#jNbflBR|3~HrDB})mfO~g{InfIn}ow#VyWv;e(So1_6;+#@>_*Qaz)}@Z#)8Z z$j^4(^>euH{@I@XNBRS`EB4KTnuT0RhAOVWV?eWo$(1~6Sj&5q#E5twLo*_)QtQ*W z#tjKghibO>yhMIX3N=uIlfqHzR$0hGgKJ!nmU7yB5<|INx>}CMTJ{`U z9b8m;WKi7#iP25zYH&?>;2^7f@E3cg@fvXf_u!9Lel1yj9jxRX@D3%_gp_r&rZea$ z?Zq998&qZs3vr(@cWSP2DKjCd!cB&vPp;uK*930DQs^?tRtWVrg||FqDepYT&Hd?| zXTC3g8FweVGg^9rFXPLn)-L|#+k3V+D|&0kw^RIr%L_mW@z%^@YQ$=RIaA2k*!JPE*AF3vxveo4)$bzdn`Y4v0!Od7s`D%7CN-W-n~ zQX0BZtu5Xvu&#iD+qbs`RZfng#rbthHNruj3Ip}mX#@vPe0=FgHv@l+< ztT(DP3|h<TkcH6#)jHnJGS&`Fhkgu%-Z=$=E?t;FAo96FKPJ!>QxGW2>nF`xpf7B+NDbUD ze)}1Dac82lc<|XHM?AF+06-LePK>bM8o&2bK%ZLnX+qUBu=#YLO3C!m+F#Gf5#v!R zFjn!~Fv24@ejQg~g|bsF=ZMjVLV;K~TG=o40HouNb0OMx#>~Vr+W3owlK@Fue8@ZP ztBt79+G+LSL@Kh%0a-0R-NrauC+j+X*DDZOa4MB#Oi91kI z!_>rS`7d=Xs6bOKp9(}-kfn=1iEMiC;8ItC(^i%q?4H%=5jVUghO7RJFJHfR|699i zSoT@WrNx%bARIn(kbPXLMDQDsNjVu8vyXN*6r9_E30QJQCsdIqkcx8~t{KU2p3UfP zHd;otD#xgt*J8|Rd$?2?M@m8R4U#TBt3$;cI&uj2`OOK{A*+Qfo zk>u(udlNrKFT$3LD$o8s7cT-c zzyG-YK*vkhFU!U_eD99k2PiXJ-uZ>rIQA&MJdusTj}zG#p2)_yR5tbn+wp(P##qQ@ z*^YmgjV1F`^2|iCMzu5dOXnaQsZhOolh(xZCM`BF3a7zgl8-742CK$S%2aEQjz3SN z2U1JcsY)2Op6bv#E|GDX1;C;6f!IIVedvpt$oVe%eKA#j!l zHF;i-)pk{|I!&X3b4o90@@5i`B~s(gItk&aW(4Io8OUU%p2mi_yL!oVAG#!SA|oF+TAKNcFFhTWtNxr(d#dvS z<&;rsC7p$|o92JV$u6F5a|zNuPu!F7rQqrCTdoRzd(Nm}pO6G8t|pSHTZ^hG5=aV# z4ct;(p?7l^l{MefS1P{9vh(K_bY*h~QuS4;-WuB?vCrl{HolCA11y4a4_=kbs7^5& z;M%NGnR$y=iTN)z9n4j;VH8icn37ChlFpx%Si?hf?l3b~1v55`PHFT>%;bKZc>M9L zv?^~UY>HkonXuGvKE(vk_)so6CqH`JW-ydRJVdzGg1EunT;Q^QWiyYu5{j#GJjzd6 ztAVNpilMhYe~aqnXaU`pDJ1vBZT7DOn+xh9S3<713c!p<1%8T&Qq|DZ>SlXPcATYb z*NSgZ8apt5UO}fP$?3d#1>IiX;>e7xb4nN9s=CBf(_Bkld|L}IcFbizyj6u08WTY- z%P1yMdBklX5Kk7Bfq~&~5d%#pC!|0W=bT`guKqgTQndZIT>on>|20<(LJ{EMceH;# zi}GMrlafTIw5Y-6x|uPvZo=Y{4O$8=2Kup?83R+(O)<4wEG=wI_A&AAs=qU9;o~dH zhwj{w-Z;H6Bg^J2x#P)IGWm7g{(TCqS(B0{wX>V$sn>%%uO{W$^Y7((byA)^|G(wQ ziffllyZ{~+LTn_}o?Ge~9J5$>WFlihs|tIgOEUTPm?r6^4R_s4#?kbY7m*(z~oS zxHK=gzBtm|I;#j3j<l`sW~v@hL`(aePAs#-OwpTwuw$26kS zBRiU~M9)epI8L^g(EVvb2@@|!xYNEA+?kL&W+v2{tAbh&NsWFAP{mvyzcmp9GI8(4pP-*QQTc$vMly<8kw zv()~$N}cj-#6HGaOPb4YNmEc#DBw4G@y1`+W8mW$vZslz$?xE$3XKh!S=k8k4ePp? zZlc5YP(W&$46|_^`Q(^DKO$Oly+_!=UVLk>k$u|zbjBKY&}+4NgYL9oj@6nI78Pu*gJ;O7Bb0~0*jDRt5o^b?R=WY{#*>G$_ zcQDw!A(p)26;oc&E4hD>xBxHV-e;x^9qOkV?Q=v>j7;fI#L@iTEJ_r5rL{0rfa{}{V><i;#V&^DIUiyG2_XK%6PTQd__#~;;EcimdOZ!1Oy9B;*d&NSM(xHnCJb4bM-ij+2D^o4yv}(f$dh#Tv=GR+2%myara-MU< zoac}u@c9P>Ax@A_;_!(h^^uf#MyMuqn6^i7?&hCvt_rR{dSBv>hv()O&3|~Im|ybE z!>=ytJ9*@(irx7e_CDFs`^?^TK7s{*0UC5uXi!^IG;9DG*58(f4M4;Cn`w{^R}}s_ zOdB_78qg38u77!V#~lyPAvE;k3ZUV&g}0#r8QCp(HkSw9Hc!fyc(i9oqp^;lJ#nMm z?r_@Rh2gM*RUo8TDosclu8``Ss_056aD}!p$TEfDu#j9Q%{~^Ab%ey*^-_^>K#@@% zsmNHl_PNrq$?Gd}KgT)dW#l{g?K{O8=*gDpyd&QuPKT`SOPLjKkiSglI|pbt!9nLc zWt>7qM?B>!6-Ry(kHsVGzPM4z$5q;9p666@xr{@I8)5fKw1)#^VyTc6Ap!a`utUZ< zjVKI1CFeR>p58_)C~vuiW6C{}rH9v_r6A)@7~>6_!{UDrum8srMccN?tdBj$4vKAP zk@$TuIW!wMs0I# zjC7h4L=LZj1}b;6)|opXz;d~7Ku|c~OWHvQh00*+G$)zOu}+!hv`$WQT1lt1I=^M@ zv^PKeA{tANj*^@%+WhX7|WG4$ca@*}><_+s&NAA3@0Cb?V;M zxbnoSjy$*a<4R&tUYQoB$w!zpsegA&r%Ow-k>5b((wrdGAy#LE%P}p_GwcZaARSI4 z?GK`nEAS(UVnbw5liepxaI*W33lpoQwoYM451hUUZY-&iz z_l>akpD?9q2Lx#^8Q%zzuYWPM8Sz3&bj#FcR(@Z&YJOdoJ36;c?R3~xPl%4P@^V+( z_P&zxMfbIZ=H|;Q&9Qz$NnlI9#$E6uCQlkch~*%0|q1T90aSZ0IO6p z^CgQ^qrfqi=dt1p3NUg8v-?gel^idZr(8&~{VS3ghKUUxRZ?eB2~!t3QY$G(Q^z(d z)`-7ay&9FRky%kdd>?$|Gh`=rLp;PtX_-qsoJWY~)iN2eXz&Y2l=uM^#|*HnD&-SN zqXCd1(}-bdBuK8}2Lz5~2885F>I+GO@kX+&KnY1Rk@y07<%Ji-#uw!M-QA+PyPHt) zO`xI-sNk3owE~XAQvvH=!JkChZmQY|EdXQ1RG3Z+>rGRRpb&Rc_OWL9=?e1zOn z3-_D@_cSrPDQ9Y}Qln9m8BWBHppxTiBQ}{B!lV(*5G$2>xm=?*8Z{cEo{)NgwsbW)hs2fa;I-MauMti{z)1u+(WdHtEh;&NG#b+3Dv7J*8Vv?@f#y=M zB~cfcVlHw1=0%RlRY~&9L_=mfj)ZaKk&AJ>V*k6Xcm<(oulVvsFqpfaLd#!;jKUz} zL9Qoh4`xp3r2i{yue;lTgP zSsR`c>=J5buASixbgiwOxwhH6(OfjWG|*6FwG=i61JjGF-12$%_vV+(xwm63Tmyag z&aPV2l$+PoAE{b2-3M2oJ{1wjWTtd3B{vhVQxPWOTD@Ln86cCH11gm=W$;GodNdk@ zq@iU17do6dAS9PjYd21v&m`i!X+E<$YsUK4`KvFKFKa2@Ft2mzyuNuz%uM?LUvp6s2{=73$RUScqo25s4C zcD3G9R8!<_DDz;sQno;=3FOM!gU|4`GB>_`^QJvW`aS?7(7LQrzn}2baq2}d05FXGOWZ{ z&Q4$gB3=`sC;*Q+Hu0h4_Q_0{o^fE|>VyB-{8Vw^S^3N3%fW}5AAcN;fE8NUH*gIX zXVRHG=@jD>la6YJp-{*kL3PK>DwLOgn%%`@l6;8K7&IOY)@WpgLHjH04knj@}P zrGD9@|4NLU0-wEd;p|zW=ONg91~zNxc9j4d?S?_Y{u*qR(ai$gKJlw3F{ui@c|>z+ zr-Mvr%9A0UJXEJL~nv@zxnsrc5 z2Od62PN&LpZ8G+XeR}AAMXFLfD_0~Z_U$088<>+dGuBXS|;FULzXj&E0sj*aH zr{*)47j@q?v+CjMJzQ{E{f4a%*3Bqb;P;ef_?yZ-GHu(|o+67K*Zt)ib)oNk|Blsx zsQ4R=&Q#h9yy!reO~8wZ@iJSb`BI+zRT+ib43`s(#+`;aTfG{{(g9ICXhsEuW>Thh zqz>}!B*(mP_6p(Z1l^*u)$1rLQ+IK6pFnq}PWA1SKkAmrNymvnM{;^8B{oP`++F;BYWW7O{>M+$Z|)1{&0HPo z>YmpEm4h3d!;f*bOa;@-^f3RFd{l?3hx`RIiKQ09n%cO!!(ZIdQS8TA6?XD>h2lAt za2d`jP%FvbL&<2(X*^)u(7LPj(N^3_ilh6CP~jVl9%I5Nqeqk~cSduovDH}JMJ*)6 zQ~;KjGa+EU8eXTdyNSRq&_W~{2o&~jD(p90iNZf(Fr*Yr9#mbS?~-;xfx4AGT`S}m z8xIKd?x8MtXGkcopnzW?OYXG(%7P|~))@3149H>dnlH`a_Rm-xwFkBT z6fLu7N1E~t_0yiVy0lz&V_idCV{K!d?6=lvR2#hvt_)X}o5ba^!cBvz|mWG^( z2{!!5OX8;wJb?5+7C&X*L$kyac**!>I|v| zGV@XOiAAuCx8?)fkw2mM5TN-EhM+_`yJOhlvDip>uu!bn#Y_&E#Q-rc^aEzT3IBlR zdL5Gw3v%f#1bUNnMgp7L-N-RHbVhqr#}7F%Ms~itwiCGjMV&soJWt$@-tnYsJe7swes<+u-qH+Re7Yx;ZJaw-j1%0! zfICY-Dtab!GT*E{<}n}xl<~xPh}d! zIcsiSaYkm)vuK%2+qJzjk5h^_@RF6Wa6w{I+a0SFj-p)g_Zr;_Vxe!cZ(VIIUub$jhYDb&{Ycv}ENmIw(YxgF#C;rJU55 z5K4{-kuih{>5Q4S7(Bktg6$6(}Ve> z7EYNKLaE;?NRA7YlWC!@Lz=QLZ78 zGmoOQmqeg|6B)sxEV+Tkf+q9l$RgETi6KIST9Uw9z|QhRLtx6mAp`BCZPitwxMqO( zo4`FDC0Fo?vf%_+BSnyKZ?mpDy@A9)47B?wkI- z@i{ox7298?`5a^{zAQvJ-1Nd4_@Xtel0fZhbwyi5{q~A-vEfXlj*F9K*j41?<5A?4 z>0z=TmnRvVae9R#ijpl~&w2&c-Y2|;bclKCk&~&amK@jX8K0YuA%pgYOfgdX%V0VY zWVwKMC)FqPrN_~&oY7tThg-gxtPKXEhI9V$Q1Cr_6O0G`-=Bxz>OjH?5nMUB$dU9< z_p=x?)7=wyFDYt0Adf3B`fgxE9Vp3@33e+h5O=9$eme4*)B8C1rVL8t+1~6KULQ>O zWbs8$5e2Faml5r_FfTeE|6|HYVh zqxFS^Ut`>*jAuJDJfNYX`44Tjv?}|^_?|)=X@|S1=N6D{hVA2mkMF@V!6Kq;GOzy5 z6&76NtJ8gP;P+A7)JvC-U2FjbCqHV zUll0@rk4JCbDm1&DN^$>U9S&$_w$!E+sj-RkE6Zu37(U)4@%jZgkmJT0eSNtqLoD{8^=~0o>?|$`z{9VYQKBR9Uph-scxy#fvPQf@g%5-=9JR6GzysVM!2* z`(>WV7N8a}52ARSmEfiKM}wEu#qv+qwd_m|8+sjY;~W=m2a5So24FgsIbRyaP%YR5 zyw;qDDP8FHQ@XjZ)0{@oi&bbv_4BPSj5`rhQ-5FYq;18XsuXmUl$0l|`(f}L^cs_B zYtuNQZs~l*z1(Q?IXOP3Y{#DqJQQ;3!JcE904c}7e1Vc1^IpF{R`s?8{V|Gkag&3;mvmd^<|IlN-1z>eoOXszm?V5PfLI%#CfB5O;9RTTi(%hjHB2Gyg^M2A!W0;( zs%3=n?PL-Wk4eR24SQ*Imaw*+@ci{g`M%Tf&AV81A<*ojYg-fvP4WAf=5v-slCfr) z?uUqin{T=GqrueU**1J;UvNLq4B@?iozbe0lTtw&a^|qbBF;X+v-EI^LZ0G$Ppp-O z^LOIOB+q+iZMW0PqH5naDxHEek99NfEMCR0x#_CFHJE$n_*!)?; zwtnEWk=-+HItBA60$syqLCQR?Z=nxykIcoL|aUl%8Zmm#Rzmz!t9ZJ`vb0l2@Hb_)huqIyaO8yspp;v5t90DbnM;VL#qD<& zXyf5*eq7V)`Uc%F2)4+GyL5bcHH9cC_B-+5gYM;yA5Vr@dLv30wt+zy+nM?T!! zYPL1D8aLopN-UU{sc7!eq5he-4ak(|BhhTg;&c`yvHMnQBSaFerlotvGk(v}Z}^Vc z{MKKhckijhc4HmwUpV(#q0h%ojakq78KhbO*4D_%?+bBGDNgNY$`KcS7_#%+CFffr zu4+TGe5X9~$Gp=fx)&F_z_(z23CZqezgj^5VCBvCBcjX;ge8f|sBAtE$7>S+czZcy z@9=d=?Kaa3vDD8it*l8k`dHEo@eR`Jfvxe){@ckGx6%vhN3G)yMO&kak*fzDTE)GU zo+lsYg7g8&6Oe{6d8XUnWhKs2>?9$LBXVA8Z=7pnaWtF*aJMYKq=m)vo{{rPZCe5A zw!q1D5%g%WuBx;x8C+VnAhKYy;E9gr{M#_}Z+qXYZ^|J*=XkTczusP>2&f~0GF;B(>`R%A3I0_ zaB_p3Q?Juun(dS;sb@>@kwuPf%S$S!w9O9t&+Gkm9k01D$c2rxD|lDVvvZ1pGMfxi zzdghEKG8*9b1hYir(5Q)*!Int>brxR@jKI5ib>)$*nrOMO?ZeQ}A zXE$Qj1s4UDACyR^IU$!DV<7l)vRGuvRzHU>a#YSo&Eg#QY)S|w14n>kn8g~75c9jy z+WVpX^_ai(>>Pf*td(5O;0R7Hw%jQ9R^CbBgLPA0q4t)4Mq7?O%lQ3~s2AUzS3^Sz z<@=$Li?8y&Otn+FNpW(&_*UcNf~Wh_z1cvg2jzR-MOiQ6r;Wor_Z?qI-&?I6QKU*q zPYJvk#><@#7TssTp|O?IoZlbQcV|0nJ1BzR-I}+p`kLL3+V8OLHYpy{3`VaiwhyCr zp*Gn_g{Bx?Y9n;cb{qrL+*8v5Y8e(#uXV>M2THg6xBL+*Jvr(dHWy^-?^(ONd|dOU z{iJ^;SS!MH&J3~Imj?bLHq>z;rBbl5amAsjdYS*8`-SMU&5E9@8-Xc-?}^*cbu{RV z@6v1FDP}T;Sz9NA*q6CqHt7oG_A9rHZY?0s!9otwPH<7TpjjsNp}G zMBrzH-w@w_8N3TUDb1WpHr6R81jrc6*FURtEhbPh_rmqVrboVZXG=I72g{Hn4 zledIJ^LZ4*1>kRcBS%BCTJT-IJ|;HWYoyyn4q*-nAw9vtsxyhEYLQW-daua`yA3Ty z!KoVddJ24E4Ky8B$o2}hWcd2`dRjI)e|X%?_S=r--f*gEa}vGk^VZ8xmPC@v0%Psl zLV0eBCl~J|7s4}Pf3ZQ@ZJJNjypBzpVRz_e6nR-C%tTF&F{k8VdobSkdTs*ra2;pH zSr6OI`z|1lMD=jB1MBQa?LyWm*AwB^yK^7pp92sV@S7=o=GB?PHQrs-O4J$@{0a&9 zSJJgu8{bq|SQ*W?lP)osu!g;8V$+vaZ_JX<^(V+j@VdDrp4O7TN&EtNxCfI%CELI1 z`(nX?UYFh#_WdUCzY@RoI1-w&YO?`;tp}yF>U&BOeNPHC2DO3>v+-n2*^aHaa-@o1 z*UVT)Owg{2yrRbj9cs^>)aL|~<@aYt?4o7&T9{L&f(vSs>|D}hnH-*q)RT(bICX}% zcBDKg(Bvr$xj*96J7SSc>3H6>msi5nIbr1-I^XZ_MT0_lGjHu?u$!4OnK4f-W~3?7!HZtnTp0VT%TQjpkV)A1e!l_q?eW8h zf7W_&k3CsY!-{Gc9*KvF>P-w#o3~ac6)7{KF-hHtLP~?$1hk9Sgh&S}87W9*RkAA$ z7nI|SNf34wuLZJXs_ZWULn12ae=}vA=x--!38;#NJi^u|{#&6u})^X-%%89$ofV6Dz_@vL@Qx z_3z)pTc$L%u@E_LIg~I`P*C}`19l{74$iEw$_0kh z5}nx7!Vw)rqf6aDO!xHkSW%{2Tti$$voE z|L@R$y1D+>O#g6k{O5XqncV-0`fFw5V*Aek9bz5gf1bs^SoK+%|LXw$wc)>p|3Bm3 zQU8$tG5)9Jzt8`z{{#77`aiV)ZTuVY|C0Ze=YOL9chA38{vXG{@^}4z9?5^6)IT5Z z-w*Zg)c=+8KRo}i|107Df&X{hzvaK<|6lUI=lSor|623ETmPm1k8QC2dmDUwOcLf+ zP9_da5>^IICSoQ=w#Ft*023QiCo^JJW@c{Ie@$43**Q2lx&BYq|2;2wZI$`^kCnr0 z&sJ?9;wW*-_728ZRMfAiREz~&{zx#!2$Ros)EsPVjjU*mb+e-t6^mdGWUPkXhWxs^ zKf#OO6BW*`U@Ezl!Zpti%dAEeZFmIFkExG`kJk^_?!)$w#)oCk%EplTsW-S!5F%GV ze@6@Z0jN-j$cBt9Kdu;Ph|=K$7yw;xSqwb+a~L-dZYd zbUD4>1RJ14_Lw%R|Gfz%-#7cz$O~)mNSN4sX36Ke>~Q(j4JP-AE#8*T*T-mW-*l&5 zG6z}TJKF=n2ci97ad*I$9qwNk)0 z)Eb5jSL|4S?8DDiIS=as3!eqNub_(_E=4s?96OP!P48hw-+8|_yCmdLTua{NS9L58 zb1o3vNuGk9Z5$lQg-#kOV!QZSsP{Y_mV1T@7UwZUBtI`gN%OC-4&@Z8Z+>gEVfgR> zv^_j_;G1y^guT?L(ldk3en&U4+S8om_TLwZ>)Jpz`E9o(?<=S0H!9+bejL1^x}}qZ zcbFYGV5NAh9w>9>&)4tI`Vhc%l56Tgwc$F99}2e2h?!UeM~uNHv{N`d1(p45v@vLb z%>{^8pAHxjY7Ac;i6(_o+p%lpuBuRM6Wb`}NGMBnPNAQy|F(vsk4jknvB_&JFmh}O z9hD$PBkDZ+Sjas=dM7?5|BHXd?aC0x)<2WZykox#Lvn^yMAs-&AeqKv}LxQ)8PSBNmhG|nxscQ4(W{37qur;b3btpY)vkRF~nFE7d+ z`m`q96AHPLDDWcjixSCQ%2`1-t{69|XfNq`z3xed6SwZ@=@f;#cNS!$WmVT^F_Yl% zvr`((NLYNzD9-}%7qW_1zDxMMflyhmlcv%4BTn^lmr6nQ7zr8ggm=~9`+XTj-y7qP z=Fuy5jR#qa#mx4x;>uO>>a$-3d^uMXbvi{iPeB6ib3iBVCS!sffjtG(_aB3_N`-Yf zN-rZ+$|{6xdmo3T9X7{4@A*1)4$w28%b@Dgi7~5Fy!uO|fPt8~O zQrP;rCku168^!+il(ZHxJ(BQ&AYz)~94SmhSD~|d^vdU8^2ya4tD)`At+`{e z0or1b(9(~7Hv@PXCDWcea%3Nm<7a-Zvn{_tevLK08TR-icr}$nOOrgH;krck^$@!^ zD3x}f)nwgqNw2|P?wtkjj2We;DGBcEBTgDR?3^_Q3z+j@GMo8eadq{3V!!L=$4vS8N*y_-Z(LYX`0PJ7c<){j19brf~vg}MV!VFTZizU`6&WyE9w$=GzL^r(Zs zwd8}`kL{Jx%`l){fFGFKE>6YJ%QMj z{9&(78w8MmIp^ZJw|eq9ndLbJ@NJU5@wB3(F@Q;&bd5?c$-Mz~l%GRq_u`PA z?YRW;?aZucPnduB$QiWZVTaPTa9G%tiFP-)z|BAWn2q?9`R3NiKYR~nq<20actB&i z(CW2aE^=MA*O@5MrcrJ;~!ae95>=S3H5& zuUt6c3SL`~KTCSX0Zq8N*lXlBsViC``E&p|zBFfVv00kHD%QG?BWZ)AJL$OvaBp6M;zU$r3OmX?p|xn=-m!|k zqA7f;(9uA}AK(?c;e22Ex*`AOMs)o>shd~vg-NM>a{1h1Q3Ith<6!J3Jgumydc(nt zx;EYJ=az0}#eHt|#n0ykcD}Gob*4BFAmwmmA z52uiD>5JwQ1y2JErvsh-q2l1aD>d57v7GG|n9qXB;1mNU(Q**|7)tDvm&~Mh!zQJc z_e5^pRnhp1{Jty03Ym9-h3Q^maVHjEj9Fg;bw3=$G0VeSD1p1N55nLBg?|54V38hO4)hK0Z=d&bHX@6|je_~A`fP#m z>m6a3C&!pebB-VP5Z!_Z9z!XnsH7jwM|=S@N{_rp?-NRrhA5#I(9oT^p1d9jbdOms z;J`xNtIei@W)FhS+~#|^3utd^Nm~!XImEx0xEge)D+zi>j=<8-!E6d5U2KT0f?$uf zy@pG1tV{&!?9km>nzqZZA=U=>qgU#z@4mCfpz<{z4?;5VH8nN0Vp%mR>!cTpYTTRZJYWuhl$MPC4? z%Wm6+ZvXb=qX>@Vi<_0en^MvETE2l6?04m!b^nP^!8wN(G#^1pa1{guOsqZzi?5!0gs*+PogB^BpbrIYg>aBY*i@ z0m>U^b0xso=L_b~6f&il%Gq!OZJgG}>75zjcvO2ovA^WS9J{$6IPsXkJ|-TIxhlsC zf~n3|`_{-V_B-VczyEyGaqFCVPtS&b?(#M*-WGKfh1V-{~^4By@|LZIZbR zd)(PJdgzcJ?)vI_U*MANst>-Dt~lQpiFO%z>K)~EPdx`td}CLe5wJ}4BD|>7&p(6p zuGb;m2iw*>FHcD1T-HCg6)kqElIk@nd~lZg7Ee#bIeAxXcbVn#FeSCkpUyaMzaYJ3 zgz+KfIjl72I?gG-ROGOfoY>yktJjG)g)xht1Z>!1$qw^UxT!)%kutJrCN|P?X*&mI+r7_TDg0ZNB!8zW{lXZ# zA5r)Q=6gPny9_ldk`E<1D--3Ty@o5OxA7PP54mI-o4qtxnI~A8-&!pf8@pG@-kRkn zLNBM()*(0Kj3f#$i!`BaMsyCTYzUqnhP4qYIO^uIIr+Vz%NnnEH04NU%fUY(Du?s>BI< zQ*(wOM++%@li2kM^xX&{7pz~4zwtY!W(uWOn(MRW5>kQwH>=(kN~9P+?GE3dwci~$ z3x>Mzh7`$Nkh|aYzg$xS3hI=%DEHnK5u}-wDlmRY4RqsIXne?ur9m+l$ff+Dryk7C zf`+ye9ApALYlbU?4}#(KXEak`Xvc%4O2ZJwZ81ou5ghg7?#q`gsBho>RdrE#nQa2Y z6hk;Fg3@XR+t=H5lIwTSDr-=`^c`Nca!L7Km8v7!*ypsMtjelE1%_F%$p0j*6Z4b$ zsyy&1F8DzPHR@p|RX_rO3F=o@qVnIyL#2EbhfZd*w1#Gu>c6^luYG_)pdtKACJn%b zcR>=@r-p+OA!%}^O%%nT50+?AG^S=WiMcVeGC1pBDy`kG#i-?|H66SNU$@rt{BiBk zNClO5aiavAP^(RGe{03HS-b|NVIyJ6?YAHJAPHVF1q*tyzPsE0m;!cJ|8n_w+52su z^E&T%aLiLyq6Q3*ek~ODIeA|-kEFXvSwMJwr|>#?v1P>I@14Uz{4LZ0D+>4gN$0J> zQ>@ta?Y<3(F$CET+G8^5XjkrN+ersnt&fAN%iO1hu&Lm19pZcb;pJ=f%Cqm{9rl?Z z@-fy&_l=!h@_4rM!Z_Qhg=JYeEgdi=AC zTp0LN5X+@C$>GT0;njO}@f%BqFTUN~8>)>!N2G_JM$~j2K*;75*mY4@Q?qM*V#fYW zvZya1TO&!<#acn#*!R5+1A;Jh!UOq9pE#m4e|Vbs%||>T?Y|IOwH=O z@gKO7B9|6Ygc)k-0XdFa%$A)~>)UBTtR+h;ct%r(vg!pTw(jJLy_&Wk0=+{NW(spM z2Agftr@eEI-D35f616xMBburDOn)*8^yz=8&uD8V(rYp==#p9GMr1VRh;Slp(SGdNv|73o?(^1GGlUIIu;I}WxaC!?+AXDXj?erZJlLt z_t1&@WqnMcQryqw`_nWVsWnl=sVDwthK(|VfN+GXglxNs!d(5i+^?a%QOdGq5;`c} zFGOdxH0FkV2TBHHcG}5Xa|hJsc1xA_@xWl!%QkMg3HiTWv+UpUXMTnl?Q~E|noOu? zEHs3tb2LR9DH$+p0IF!E@WRm)gzH7MxjUC>sw)2WEHQg#7yJLrR)WVRjKQTuDmS!Hz z%^ry$iZh73?PzORLDhYN=3%VJEo-BGK;&3EL+eMxd;O$A%ynV5ByEKLuYu zbHa3=xha?K^Nd8Tl^>uM(@M=nC)Sk%8uoycj*3&z>Usyc@`L@V`%RdqOOLAi3(2wZ zkFV~d=dr-ELDzb+Q35W6m4+AVmG$TcXE^aeJl@?XbrB(+^&}nj_g^KdE~J}*UeM#p zoci9sU3q)MN+c^p&miUNK(z&>U!o-|0oUS`2t}EP`}2LgFoz zX2TvNpt_Q_yt(oT4HOp|#>c8{R2a=i9tIDm6jciz2QuLlwY6mtV4SAA@%v><`yTW}=+j@eA=LPwWHhkO|E`sj#!e0@m$bR7Z0RAB;WDe?)x$3aL*&B z-OXR$9p8vl~>u6W1g1jm8+J`(w6I0qF2e-I~Ucc za;nk}-}PgdgUZK1qh+UKVqR&~GISM;Qe)LFO|*v%k0FU?%9E<^v++1F*WG7-+*W-| zaGK^zGn=W%ilLOJEW@O!%~dFymk5qH6H+NzlbZUeNaXZs4QOq`WQA!BX^m<1M@=1A z_gSJ$afjHG&5=N6Ky9EBfEz%TR+lEhY{Fu~YQl_cDr1Vf@GZkHagaTcCdnL583CjZ zGzO9b#el+qFF-#4JirC$2IK;&15=Yzt;q3|*+CFMYM>Ml4rm8_2fU^Bri!Fh07w9T z0Kx!203-mD(wCAgfhZwtWVnzOCl#IY4-_suQ$ond#M~dJ_+uzgHK3dMZ5)gSiUACz zMYFv1fcZhLfK68KzPU-K#A88#9-H?7m;!_a`1tjldCUe>(6Ta$6)<>CJthN^0f<<= zd%yyq?$iwDO2qp)i0bGeJ@) zto%Jrf}qW`3!`T|P$%Gld40kO3zP-$HE9btb^)#fnpxIIoe)8cz>G8(*7bfTG7vI= zH?@gPXUd5H)X4BTJhq8Nr_YH4qyo@NYht$kWns9|??eHT0Mey$GV4q_X^j2WE|leN z>Y@lYBLHavWm6ZJb;cXg|8`GO0bsFKT7_l$J3)dFfct>4)JapGn9{goZJ=XnGHccZ z7z;=Nh)Ba^VKCP0Vb3uq1Ze}g0muxf&Qf=P`m|pxSp)0|#{eJ?P!os?WJ~?Utiq}ZE9!?>M}QmNHRg_7KVGOWv94qXruN_Z(H)F_gZ{D5l&?&rxUbj#TlG^K9wIN(>7Hbxn z^5zK*tOU*uasf(y3HY$Em{y*HrqmF_NK5OT&~vSfordKd+03RIxDE|}namj+va4i1 zDBC8ejv(=!iEr9JIQ8!#iulR|Wc;YrerhG=36!yfm-&)gI0=tjNeL^QV1?bakgkxT z!_^0K1Xm&|Go*G=(SLc^OeMm_#L+Qq{?g1-2~(r{_iKb^F+Htv|3E`|Rz^f*M>Mf6 zcA4Zb*iCdUHg;8n5W)T1=gHW(0$CCN-GC&oHbIo+&BV9X=m^XB9o6PV}=WOw)XaOeZE+Co${ zljY>1K0$QXBXeh`tqVM7eopD(e8l5}CyMYfOjM`m?3HLCyzc{D;ddbB_^W}jit=@} zecCn?+Vmvwy!mf^&NX(Hx8zvfx1QG6KuYeB2>&#J*`BDM|CaVxGa_-@pSw`J3UNhczI6>yo{e)SOm!dL6=nzWWsl&@#^s;x zE$>GNfk3h=RIkYU5Bzszz23zuWG~pwJ{GR3Bsa7%yRaCJu!1_^cN3j;%V+eJneN`N zrKEUq6b{p?4&vE%;o^o-OVm|?jU|@P6oYqmh}uy+-Gq&vup57y4l~Xz@|Q3ztZXXj zx#ll8y>S?6FYfe}d_H;cIb(b9$pJFW{<$q-nf+}3`^8rgWSAnLdxq5c3hf=^pa_itQ2QB#(gOu8GoJ477<=(pi9gIeTQ9KG^lUTCv;%e)b%tWF4jPM~)N? z?J3<|C8aCAkAKcKl+$n6MPl)iUg~jmOrz9?g5(#(*YIytN`uIR_$64G#d6_hdr?U>m&E*~&`0vMBhhdS$u*twQ^{v%2Dz~b83rve z8NUYQO96T^%?;a1z8>aH;0-v`idY>vYhOHC$FoXyRJ`uoKRQnua=llxMJfZgDy|5| z`@75e?$}XNCDK3j7{20siVV`{SV>gt5DfbcxD@?O^8@*T@N%sGcfB0;!b_AX&hro+ zmuL`9X(KJ5Zxv#k<2TWg0n|7j1pJP)R1mRJ^P&ZZ6J33zO3N ztIVI8MbuBvCv9y?i++=f z!%Hl-z@2Nw#rdBPHVr!-=2Og}AtW`yFLU_(#@$@O_ZL(hC|W&cfw8Isdy!I5vS6)P z(tIQu8s;tjIKe$pDn-$&Kkmi@%k`5MQy9m#`6{)-W-^tCZ!bR(RUk*OQ@Ube?-&|E)cI`W}#(Zx9q%8h}1oTwUf zDAt~e>CU!#W3iGu#1f)A{B(0)PiUTxsqD9?C>Gy3W)1{^P+5=ot1SWVOmdY`No#{4 z$dnOR-XvgnhEDMW>< zQ-DMOX6DTQ%a^oLBHA7(=qZ8|S#NNPr*4aTLZX&|_D*})5-23t4N;yS2(y&~-TTTQ z!NJv{_fgY3?KN-wed+rAhNGBcN&iMU5>ldI02e#fcBU=4NKSsPT}i{;{TYDe%zUf= z%gn}xXHx%Fa-lxc#e2od^oorOX#^&qKu@H57{6m1uikf~DJy0FQM}^<9d*pXK^0!B z>!wsnV2=hphUf<0UJ}wo zYg(V6%kyDIqf7364aqtC@`yQO4Hl|ZLDO&U=_+`x{wN(#I2*Y7~xe9Vv@_IV-xO#~E#k(1v(=Xi2G~B$Cu|*S0eSqf^d>nysVk*vryn?f`fHAD530zLw z_YQD8_pXt{NphvOY6{y)?`ORDa=PM`b7i0!`N3jT^dz_Aa+!(gLFj~UtFytcpW`f+ z05|=)*qP|YGLCoiukkmdjNy@@VX$5H_UL)uUPZP66DeF$g z=|lb*T6vy;pW-Yp0o!QBEP6B61CAq(7l(?UV_c>RCga}haFx<|`FN2-=FF+I=FCG- z5(4POGdjv)`iO^rpBAd*7ktLAl2RLt`@y z9^SRz?^}~s4(cKvEk#S2Qk>{s*&OGS@)2Xid@wD`Wr@ePI$EPOG50L-qwKcQb?6l> zG9b0{O)_H6IHOQ;90IiG@|moqzol4(4yPt-Jtz+JQ(C8hbMnJL^f%?r$I+I5Y_vh#3wQ3 zTHb~Wa~+&Cv{8OGb-;bTc_Z0~v5D5oq-;8_>zcQXvF4xH>nO9fIhJ|^*mEftATss( zRev}`$oB)Sal_NF`5m`;8TO42!%MB60@}-t%?IsY2jiKoo0n{90LnCJ))Bx3$;jTP zKp`8U7HWS#^55FMDvDnf`xlZFE5cO=w5%;lpA)|_e-dvOKQA_1Y;(5MI&WHk>uQ@a zWaxY%;r9A?;5Uu8D?M#$-xN?F$`(v>Kitc_egEkGc;mkee0nUb;ET21+6lq`M1-98 zsX_Z%Ny&-yhMZ5k=a1Il4$|NE&2Af)UOFDq=#0PU(Qp;>-k8Z$&a-@-Rejd zsz%Pr%P``y)jtnpHeV$Ni)o2}^_ABAkUZwcw_JMssRv317k`Wru&HO2-j5b5L^0@R zbKhN^NG4-sh#zy_tVd|fk}{5lm3(o|!<+d~ZBWaXWx^l$a0;w+#FO7T%!5B4y!;jD zDXOeyX3pbSuUs6Tc`45Eg`4ahpi!(0jw-*zJOKc!RpkV zpMUhAWd6IkFo0s-v=jnH2)8v)25VLkrjKfsPOdAo$AiwaD+eUayB;T^-;8hu$+yLy zv^(4KRL2pN=^LXR9n!W?n>7Th_%a73hFjVTXOhcl_m7#4<%BI&uRO)eCJ2-r-RB#f zTv@Ge`&oZUk*jO=RK;XLn7-Nknwrhee$e8M4p&h|+YIH!jA=XeSo7i^BSekmh{<4d z4lJHMH5bi7{_ewQXmOW-)*d5-RylS3e1^_Dkn5TvYQ};VTG|hdgKGw<{W;Y_?U|%3 ze$Ofegtl$O;}u$k4%)4#wmT%#v8cVejSC9DpUO5<@j`9ThUfgbF5kj3%?vp8O7^@U zw~w%Ax!T2%=jw`vSbs^u;aY?^{F!HtW0ertrC&)(oIw{JwRYyGI}|zSJC8;8`S4^( zHP296s4XQM#DA37?5JIR zw-s#8W!*Ir7pg9^xszFY-)nDD$;e2lT#I(tN@iwypezs7o4@_;QP7Y*nl0QS`Pzk; z9GAB8kqg#>RGTuEF28g5PlY-!&)l8U#3DQcY{)C9nES2VyA`31OX%iH_*NGDlC$GVKv3>x(V9aVcHrY-gK~rSve= zmytK|v`=Hb@;A@JqDHk96QaQmxu;C^?z{zf!nl&(Wy=dAOJ$2uc}yIee$o*T!b#QK zeeqo|PtokWWi9ZP#IU+(sj`Tlsn3bsJNW@1wCcjBGlOtz5Q&>*bbR`T-%N&g^QRn> z+umYnN&Gto0NuP{hg+5|yZqyw7PEqJ439}R?>Az@8BdqV+tod=w3%qL!@$k6put4> zpbhu3>QCEgnHN&?U86UFT)W<~_gJ~-YR2X3hE5EBc6xW|@imp~;U<7i(VXnCcxkY1 z*;l<99@VX}5Q_g~PQ+StG%<2=w&-;3UW^heja`P$FDP|7?&E52MCBN2PK`nK_7`;h z^vBca&+<6V8_yEXD%FhW-$SXw0#vv^tt6Q;^~c3XBDo?PaO)h!K6nJf=W(nDXZM{f z{A>r<;{z|xjjHO=RKcXPUfGDDi5MxZFeTB>Y=d^vHHN!$x0i?)!S@3y=UQz>^!32D z^6^Hy-%Imvwa=t#PvHS$(uMBmCzH*7FF(Mc`5E}%8yZ@NLvL_4YX%7j2LOYC4gl`R zpoy^TvF|s2j1%_S0f7-rrceQ`DqlYmRUpkJ_JKbcn-oA^azO|m1I=k`>)-Zgl8)3_ zJf$fZi;p43y4JgHM_NxM+Awoc9e2NJndm)?-&xO;{i#OTaPz%;tsc*G?=13?9`dhb z6X9a<)$;7OdC{Q%p>{GJA(nN2vp|vd+~_D{wPPt@Djvr6o$AC+tvP<9J9(>rk;HW& zSaRIvj~NN-G7W+zag16`=J(J+d8e847OvJHshqe1wmmG+aqXFZ+I78r&YW#5?WDG} zVUxx&+NMpLrOalhYXbt1BK<;=I7W>eJnNAv^SBDCVd%qK)^kNn+s zzlWT<9Kh&NesW6=u7MddF`T2r9P1Q}bX(A*tpBP8w*!jrf<}XQN?Jf5;YbtaFE1@` zQGzI&JmCE)9WSSA|B}L>O*#l97_;mxEZQCd-dSHCC)t{X_hH9tnaf2UT}e@?G)Vg@ z!N+8F*O6lyiLanq+`zX`q5(uR*g-!IX4gn7`=p%Kk?tG(IE$Eb%K9z6PhIzqVHedK zkvTGFCrI&wtm2c6o`Ar31L?CbE{P4QJ7GXq<<;Rqqb3F?ZXAM?b(7hgM_f>^0#l@} zmtiWy3}N@9k#WbP(JW-mC#rDT2#tb^J(eFzUuF?dq}zb1N$=wnZGFDSI;BolfQjH` zc2p%FgDI(Q9fB{_u>u<(r#J`xe!G_O3vCbfpth)4SK*UxL9W2DBDMzsX$x9F*Xm@W z{}~TBoYXTrd=UX)+|*;fG;9?mvE`>;sLW;sXQWiE;;COk*!gHb7*GSxCP5g&T&&{A zBV4e<>&ydFi_k4ST9a^+ZxNO+o-g_kvn3AMoA}skeq%HU6=mc*@V1{c#tajsHS(kS zWsyjP*C_)`%=nn1ryl`E|Nq!~^ROPfuJPLtGL;aTNVAH*^Nv`Yzevae){qx_SY!)?br+)md4N;kL2?xdYZ5yRs$arLs$J(*tv1xkcm<_63xf8_e+m}g= zQtaAPnQSF`WSK{-W|>TL&)Y1Sr!6WTGj$JpwAn`Q;iQzzWUpQ|#`Kf)woILE_x2po zm34XFXCK_q5HTusv+UamNA+?_n=2L{nSRdUP1*w^t;x*Jn3Bpfw(DoKYka&C{8eLz z!CC*L$LFP1>7}?;C0=zENhqzW{(K=_RYzvt#o|Y=F5H{ui6FI%bh@YUDl*m;RvpnIlv8zCPO` z6LPQJ)}UX~LpbL~*A(7D-v%Y`JYUNIMbDe*2Wq`aH?&Ot%|H2+HzD-+)%8O|o!sj$ z+G|c$>xvScxFXdqXXqoX3lr^*@S2m&WCSyMQf^C+Uw?S-{dM`r=6`hGU%eyY#hzFR ziGzW?Dvhbv)Z9788WSx)*60Q0&oi6Ty4Nmgd%N)ScYCkeudCL4zxnz0R_#5_{Hb+T zXRZ`6b5DmoODP)QI4B4B@(b7bY0TFxxPHf7-tOA?p2x+{Iy85kDvlnu`0WMr6T`#f zR=kj3w3B1I>4eOhK&NXK_dNApY|3Ds^;k8r>e+U`J3sS!=0AMpv9#FY!@F~ut*aca zUi#w@XkAl!r)vG;*OPN%ho7yge49Bmp;q&!Sow_K>P1~uuQHsS!e6-8xvqM-Q=;{F ze}wG{s~$$vT&FA9HoRZQ8n|W6w)uqz&XxrYx$6@yrJoUf(yDpylhT*tPb}C`?zM2M zj!RR%Q~Z;@WWGc|RowH3ZmUY{^j^BiEIJg@Vq@PYZ!nc}sijh3v+?%qEwR<^{~O zdp%FXhx2_zj$H%qbB=Uf+lYwi4;v!Co$QGIIzB2@bD!b$U8jtiKe4uXe&)DW?)5Lv z-1q!iYPv@0eYxoQx#|~J#4$akna2g1;&W%!T2$DDtoHd@b#!_DE5S=fuLIc69D}~Y17Mzzhivu(^UOt z*XTvOFrB@6mqonF#ZoT=_5o?}5B`;zIzQY_t}T0R;%lze<^Nk((oe$OD{I4r6;FMh zPq1+3i+Q<^AC^%tRWCDI^7wK^V`IIQ2X8e^vd#XG`EJqLp5yYjoOfq?Yqqvj9py(j zPQ9nP&Sdyx#lYTSk2$xhm4_Ym?jU zYVG}e@@nz*2uBNM`RzX0p}o2z-e1e>9;F}HZTN9i-3ZNe8R70}Dnkv!&q!Zgm-W+4 zmRar^JtO93WI|xjIMejQO0829){X7`RBP4tc4~H9!Q1YZ355l#x;;a}1|FZ@cUxXI zN&Ly?1InTI-aY6z6_9Q9MQJJ9AuB`beyW7M-IJ~b#-|n^i)a6-5kI*6bLF34DTFp*2C9p7hIjpJTxoJG<36#+`04T#B!uUaxUDJee`&9@%`rV@psb> zw-;oZ6mI@#lcO>Hz>Vm|#m#MPBVSzmJm+MJl+{}M*$0~nP3|0@v_(qRb%W*o+e|~V z;|8B5+Yf!@cGUEZTHYx8g{o#X7BiMA&&*9WlN6tI^G4?62MR5sHXX_4Y~TA8P5M86 zfBt?lp?ZA4x4E6p)1_M7(yAoaWC*ooO3Mxmc1J!`$t-zqJyx*o+ncx5i41jvn-6>{QmR(3c)426 z=5x%G(G4ND&QHJa?706rU0u@)@>y{W)BW}xjfr#H_1x3q`l{td%XU7<6L~DUx>Dt? zPH%mLc<7d}yoRtZi#|$xo^(#CHA=X`F)mE!LG;3Vm+DsON+no?UC3yNoXME< z`7`t8O$ZB*F$|ivu!9qud0n#j*N=v!{Tpl>>e8QI@{!XU&7LsUei+-`>gR|nCJ~oc zlqZ-4rj2QId?9N(Z~D|BUNJh$BbfaWzw&HE+{JUs8+>)XJZV)d&L1+LV|IF8^!8iI zRUV(sGD=S}77cT)xAIGFNVd}HoaP!;H}z8N$uP(4xt>lF`ns!f>n5&Kb?Wq1I68*! z;+wHaTV{_`#ahN*&m$J=*Oj}Dg=J#?ZMBYyX_sSGv!{TQ7Cz+)_ zI?H7hj27p_-A!*8acG0KhQ>3ykIRDft~q^uK0)T+E&07sW^4zMeg~ zI8q{OjD326MRfKj|CXIAuQXm6Uy=N+&eC;U#U8nx&dIebT~)b@UHY?E?l0YTDCq98 zn&qwPT`9j`$f}D78q#jrWm}|sKG%`mJF|zYbN0%?>#>hjMT>eal$1Ug^SwFp&JM@o zU59Q)WhXRFzTvkpCTd5f-&f(cXqzb;#d$Bz&;D*xZL>9_$!kl>h9G!>V(mtsR z&%*DQUwhiI`St1&g-h9C5n*2frDyl$H8O~&tAbNx;bTo)~!9m)#jLd3vUbl z!Btr^qV(YI+%@9bd92elH6f#VPJ~?UGH$#xpcpJG+8FbpN$S|zD`V`Q4Ru?)eRr}% zfl<=b_H{PS#!p8ozq%UV|0%Rw&TZ4vV%sP4y4Ej<(DoIqe^g-}vvdHL51H~B>V+WY-&@cPd`&nRExzQ|3M)PFuVM{lCp#$UzO#G4r!}jOVSdi@x_^$GX#hvg$6) zm=OCQ#e4tpYcbci*>o3VeVFzAlHsu(MdoOr&%qjJMN+4>vnX1KM!;^jW9ca_mQ^Kh(g&zC~uKC{o_(nrqtP4Rm$u`qn@ zrL)eDF09Gb4gXbQ=C!3xtw%WHiHzkiLxo#rf-h0is7%M-G zrqg1HP5#jjyt)f>yw6W;J|5B5R`NR1dRV38$#d~p5$yMX(&2PSUpOcoi(e7E&2$vD; z>PF5B9$aAv6e}+4sB_C;J&)0TDrfrW5xfxlt$5}t{D|W5^K+iC#)Lii&^_C1wBqaU&(9KU-M6d1DAFITAhxW1^FG$KXNi*g_u3qH zI`e$gBA@iF(a$&z`=f)WIJj?$&>sCLchU4cbJHr?to>UgzAWEzFH`ly=iRCwf|%EL z>P^T^ue@XH6|T$M=wa@B!!$=sQg&t0%-7p~eeJzgF4`QGo+cI)GQxYC^{SIU$1V*F zUjOuTo9zCW||;^~45m)_MKK9W{@zc6ym z=2sf07H+QRf6(4;X7f`aFDNwQlIHZYt3poLShn^5*>NOy=<=AgpZhrL#-%Q{xUgSQ zx@@TK(;LlUvTBW|cYJRA@nN2wTgxT0%7Ith?wXaa#dW51zN_lK)lk`9mMbc=;`GO5 zyT+#-Z%^t|ww#eRG_GSU+A9xmr_C2qA%di=U^f?bJN=11QnAI)xv$u&+|@cHU1kIip2Nt&-w z>UsFBNx|h2rG4G2*M$D=Gkm2y5PY^+<8lAu=jY#sJ>GgOI>fhgM)jwMy;5x>A7ANx z942LRl;^kMzNcjI@avy%-M%{MoQdZB;o~g*Cr_`m8t=bx@rMwl)Z|;=yn3vsT^+E} z%Vn?DE1uK*q~G59(}Z5TZ4Pn8t_HJ1=l#6>a*OnP@oD`cZQHfV&&^jhwbi*ZZ^Pb0 z;(3}X+vA5YvnMs?etV*S?b&|MC68w3t#UEouQP9WXlbGMt#NGCtALQagC$z~-WoPC zhhMrkVZ(r$#ZhhX!gQ9xiKZ|E(~Pt414bX-Q}keFVaVnqg=)*w91aDyE%ArAB9~GZ zs{b6L@YU@72Vq}XReAC9$Ci4pH?e#>TJ`$#w})@*R<^0w$^}NS<2*U) zE0&5m2WD73Z#BL<-S4$&N~) zezHZ~(0g3QOV1y}M?RbNk+*iO#`XIa#?KC27x4&J9X7hOMalm{*|FK#yEQdKzby}~ ziL>P!o=dJ;nwWK<=-$h1I&L*RUmq0?gbd5Ks&Tw;{BfhA#CN%;t#8j;xi(v!e&-)% zH6yAnVZobofS^<^$ELnx2+jD{ayXd1v~A_Jk2Z>=0zyCOsnG71!+ZREWFcQc$o7@ zU2XcNn0Z^v&zhvjnFdOapZ3S%?!)`y-HCxio)0a*{7rQO-@D@K6|bF<+wbb-*nK;4 z{#w!XUspPOC%+HvEE4IIo4ey|W+%J7N>;}>SZam}^Q>&PSA_bgz9r-Cv2TPq_{KGf zImY!GjMrYr7Oxqa`F8pD(A~`r@J!Ks^Sg}Jh!`Km6x2K(UF&sUaHbl>*G0Q*+G@J zzifohG^XZmVQ9s#{LCMvQ}CnfOX6%t3&re|`qNWJ1a!P+ZeDS&?pP4FyG3{_(pb`H zdgBaca@3azGMgv4rmL4$XjyKLoZ%L~cDCH!j_bK=Kbprjd50Iq`SqSVe?P55^pI#r zjcqkw*HX3Z>Z^}eFK>D^&c-u*_L6}Z*8_!44pXh7+Xb8vQ})+Rm1W7?PgGd%;vcT( zU~AHJ#)Eriofz|X%}M3FM}^%fWv!a|_qSE?$Byk!oM|0?GFaU$w|A<^N}qE_iZX=d z7vIaAO}cS<>VxgKd&fpksk&t;a_;W%7xP0+zMOB^v|-$XGlqs@J9gUXX0l@x4K`(; z*Jq!xJGXz)y~5qPydLQ}G9_tWl#Z@Gws~7nefIN;t^TP=i_bXNPkp_mDM$aOP z837#Ual34T!6cCx>Dt)5IHmRb$E{y&J)SI_^kqq}?F@t5!|WZeW@_2D$SIm^$XzR} zc(eOUX4K)#!)?7sHKxD0*sJ?FtAOD=(7ms7+YiTK^ED-x*E)mE?Ahgt0FVOE!}(j zp9q_l^5AEqL?ol0ZMd>->DOb~%Bs9&EiZI(cXKq=#1mVu?0VBxq%0$@^ZZ7J@L=?> z;mkvKj-@VN@^RLcfr#hKn=^~G*Ja0b#=Lr)=wVr8x+dk@$AYi@%vg)AX%o$jEsm_X z(E8Y-oN0Y}vLx<+C;5az3_4UeSV~7&!RO; zBUd~M4i?Pq_@oxMNHwKe>{{gQMa>H;!)A-!8qj#5p7r(3!>xBezH3$5-@5#nLz!CE z&HA=cZqf(sTn^}8crv$auW9-5OUc{^-i+%3=Pq7~80A+Iv9w1fyMDpKPWT(6&4!Jj`rnh}(>qO0to!ncL9&y}oex(o((+Uu(wJ z`9<#xt21xc@h`^2vBw3?4?X>$KFoFf_X`_CmPgsyeZFi~5@~X7VSsa$yMM_z!9d#X$!j21GS{9t;FP~ zRfuZ8*#FjMP+<0MPJ8FU40;pV`nx?%SyfBwsPW{N zIp1H8U$OP!%$pAxd0sP5FL*IB_-yzz*6@!?+#B0ou`*RBY}wT)Dz+pJA_32S=+nZ#TT~B-b}9tUtS1*ZSwm-tTQ^T8~Ys4X9qWsylnh1I=Xy+}#;% ziyz9(bPiWrkt|UdH#6a#(w-;pJ3@!T#>yXI?3q_KYZ_=ZckIk9W`Yl14kb{+*Tm8G&QcAA9u`Z^@{xm zitaFMOWxS7um3F<=0B$6n9)5cr{x*SB}zueV#SSj?a-T;Jz|6Vx}0+}3v8~2Rt>AU z%gZa&SejD!SksmhVCK>L=)j|rs+NVTuU~Z@s`TSz?2F!jM^mOqCbsUdz31|5qFqP+ z?On;nr*FP+?S5snw^UR66n9tlhdDW(Pvo_8GD?TM7QMf4!s-IaSJztvHs^w*47^{T zeX(1?EN^q1z}v9q%7)v_%(=@={TI$UR4XRhQez~uuY6oid+oK(BDP!4n1R^P3JuY* zQ;w|Mu(e{@vXJB%Q@M=Vjf|BxO-i+<`#vvTF?+7F_E7e`^Qsa`#&#piog-Cht<-+q zNG~gy@p8*q!(W>ir~Di)`o3G0Xf55bU`kyQ^US-(E1!S5HjFTuKK!w{Mb^i2Q9<8C z-Xuk2+kMlV$add-|4sL+f>E7CzZ@$n7*zvXxHfxclx(c6(;oXO>Xv8hIfu$ruIi^X zGnx`xKmS&F{d504hZ}ik4rqQ`@yx4jcg%|we~c>Mj?P*C=yiu|MB$V*Aohk|~<^{*1r; zL3$we+0E)tzHy;HuFbdGd!_nk`-YzxLr+dwNZ?-P$YgKz&xBdQ~vM~M=@h|i0u9fuH-LCss$B*c=Q2A-<)sWn; zRj(=c{pm8+{f9>S@yrNLvSH1i`h1ar#ZmzeBPwP&P0zoO6=VA_A|Uaiw6|RGzLEDz z`O81s&zrd_H)f;zbcb^>#&vE+Qmr*wAH)w{9GdfS)crq}O_To^y2Qkr+?(Yzazl3h zqh#YbwkA>m3vv&ii3w85o}%U?Dcfm%-;?9guP5!?{NDQhFxHuu8cuQxvwW7_SGaWc zsO|mWkQHB7yLio$l*-}%9yv)_25C0T+UKIvbTQ_%PEz;52Q1_t zi+9gg8zFlzLw(wn6N&Cpufs+@HTfYmFSX8|9m7lC_~pvfxc$XDi>654@s)n+nLa^w z&F-WVl3fL{U##^Dzu)=wxa;*OH{LUihjPpA$UPKld|t2B@0GE+J%U|*>(|K3W8&gd zN`38aJw4ldIW6?vxK%Ed4kJ6)*9B;mUq0Z!BqUK|{p6rIO{aFp{d%JF=&OnG?FrdC zw;mj_I@I{-56Qf+C>OP3(`Sci{8W4J>~mU#%?|Tn-hE%LsxbdQAf9SG1K8p9e<+_Rww5W1IM`b*V zoLoKO#r@e`MJX*yU+y}0rLCs%mAvs$_cVJGef7*~`+Hwno%1DSEuIVTsC-5AK-Gkg+L-mFPpuUJZ;y6oH1+}fXymt<#N zR)1dPU$d(uHez_{{KpY8FUR|QdVAU5&wE4GhOaG8b|scA^Ljn)^^@X@+wVLc*mm!6 z#CpEi`Hr{KR^&6E%e=mP{95jI^Uhti$4kPWoRSwQl9s>?CSo~`}U-kdaBWV^HLKtgBV+qVTW zKGAG#Th-=~7M#j=*?hT4BX&l4-aIPzz3r9j^61OMPS$gS_sw4S>iNd^-);E;ws+Sw zOz79!^F-{*-6NZmRn%(dJ~awh`$kxB(C~tZ#@cx!I`s@yM?N&Oma>svGdy^|)!66C zY6&|e4M*ReCHi##vWZ5|4($=u-ZV1)(_zPhCDLc)0^$|J_vKw|5N*0*KQlN{Iq8=A zv)Tji%ZJ896mc&N#4oQL?^oq&JX`3}c|crjXx@* zBH-^7H9Pi_v&;YdZ}#v8k>?9Ljjr17o~-v#H?gAn?T3IjBDt00|K#1gex$8o))s4< zm+h)sQ{s5OC(2I0%Ae@4%YD(|CEL^-HJ%KF{u+NNIUxGKiPOkp|1GecO^~09mbpuy zqqAe6qn7o?b%B(?-hA;tO#a^k+Ue+T@pE)q?-D4#&c)5cM^~Yh{pMW`kRcwxvueTQbgBEiRTZ{S-{8@X6zpwK~Cl`M`a}Otf-vD3Nz}x5L zm-udW@n7QW;Y0n!&v&E0{J;M-oz3IwP@nmCRvj&>3V*B8f2sL530g^Kr+?}0x6$A0 zFU_5uv|PMgyj^?(1E8MFzv}7iq#fuH=;fmKSK}FY1^(j?ULKUP+Fp)6Zn_FvW;?sM zI&Sm|RM1=E7r4dL#b=?l{1Shc0Qiz4)lC1Wq?d=@KmPF7SG4~9W%!emzl&p_um3+j zZtb$+pQZf!gS2n_m4^DpzjDH#o&Vi4|G(6C(D(m`4G#nNUoAgqbZl|-gH~t!)#{K) z+wdPvV&m)U^&bupdTyP630#aI;G`al!Q#zkaAq_4HcYNIo2AXyIq0_Nub&kf}5{m(WsH`g}ub=pXcSTiHNjT=3jwFLq$hsic( z&*qsJ@Mm*O42)(QFnIH4&u4K>nC$r+F5AfXFEt0}r4$8;nNL8VqmPrz|Kw|b%Zn&4 z|9|1XG5;6JkpJI8{-aj@-{$(?=K7CX;6Foc7ZVBEUwnFmGTfmT%NUBUTdkZZy@}IA-`11%*WMNUhrRkHd?7; z%x1E=9D%@q4_hW9*fGI&>F>KGz5n+VP{4m5(VQb>@cwS`ZAsIu-CS7lRpvo=FHiew zOj}ImWsj-zAH3^LTgb{#h;*77wbM)5#7z2i{N*zTlNKJ>#c|)iU}pQzrtkUZtGD$H zbZ^zGxYpV`5c>AJ@Ox0-n``IJeJQ>ZmH4}Om0eQzjuWFTj{iE6v8_(5IZIac*RbpF zX4%!wa*%tsX<^}~gI;59)?cvB&au7`Z|xdw?Ga&}uNvc*{XFb!TJ}Ji=QZKR=>c&C zx6f=n6VM+~;bEONa%0-Ag0#Ga!dSub24jo8LoLddTb$0fXx>Or00sW`zBkyXn9)kb6;BZX`!!Q3qPow*Rg@u%?W*U=SE_woN-$2 zzJN^uNxC^<@wz(pTYKwfH$Mnio1d3EZ1Jv$3d?PddA$Mby7*U>n_vF!s|eSulhEmk z4Y)AZ@8+7SV^^2_y#MBat;n9+R{O_CPFmi#+|(6 zm9vJDStD(aPkA18*iZ9$<)KBHsX?-t0x$>_+{nO?W7b5;`=kzCX{@#rtDi7{9p7a~tSkm-l?3@Ta zzY$+{6>YloOW4fcP@!>L|4YQ#wesV_4E)Bg8Xxhj^wCdWsl@h)&4psSZe3xF+jaXZ zV_1(PyeLVCZGs;F6F#`*K5Yd5mSEc0No#f9h~}1}u%l=7WHjHw@Qh0LvyuIO8q*1PHYc%R6~3qv}><~lMp zcNA2WK04Cathw1dEnwE0@r&vl>_>jTHQZ1C&8V_==e@$_mxAUyT@!Rf_m!OJ5-l9l zTGi7N>D0Gyi>%$PNf)G#?mWF#QfHLqoxHAb=fa!ojkgSS2*1+BDr{8iUDrRdP^`7j zq_pr&u?K(qd3}*4(|gAphZm0bEt$)^ZMmvXQGY|{sa*Ag-4T-7_e;JzDi)4PtsnkM zWX5alP;GVDzR$1Lt!e)jA!!*MaqQLuh@&xbWxe$)*Vf<*{om|==WqLZc!rLOhFIu` zHMggBaofV$yJBy@9}Lvt1R2EBi6CwNS9pykb?THuM%F`s>3hFUx{nl+J3fP zc9rC)?K`%0DawWobg^YGZ(Q@E=h2IGeOlja*Na)~jVLb3^%MQQQ@?KWkFuA#cX|vj z_IG}hyIVLzw5U$df$uP*)Dr9C$*$!d`gqL^O}K=qs|_c8#Q{W#2keU zM%SbLBz7x?hVSlN->scBF(hx&9Ch#09hH(Ddo?E5X9OC3j=n14eZqg5Df8|}-<9AhdYatb{cze-UWT_(TJ$;)uuO!T+}wWUE%i2fBY#F=sqvS+(UYt+ zGraHaEqJraSkFPK_6|IH}6q6CT?gFmaB;s^?Qh|EB#3gH5bIW1~Eu$Nlw>oN0gm zN5v0Dis5%9irrm`53IkuZ!9#Lr%`cq6=*%t^m$B{R6H|7VEou!VTtD9aa2)H)eeu$ z+_OOP>C6nPzgo9x<{snT@E8d>1!?2PXwj)w${F@XX%9bSK1nKnKi|kdy79@`s=vb?9Q5KrF=>K%*ATeeY&$$&cNR?7JiA2ZDi%ktBfA4yM9#l1A}2k zRMSXs73LXbM+=}r!;CWbL{Exm2ERLht99dJ#oX%5J?@jAs;yYBI6OH-UgdrG_)T36 zg6m?ef%&!3SrP*Z*^64kr%XAcu+Vh!-ghGF53Z;Q{kkIO!+g$P`CdCKDyD>JtBfAj zej#FRL*0~g*Do{o3o;CiPQa+C&!`Mv_mn5^WVAk7Ok#t=2cs$SS2TVdc~KFYD$g=< z{pqKOahqW$QqKS3WvRo53`z7sLS8{R5@NC2FS;Ma!pOPz` zvQoREqUYGLwhWaGmxBFto<~mda%Lp#yWeOAtM1MO@13W!J@S)v##=;M*9FRWJaRTz z%-cEAZ{#bJ1Fw*UL>p ze%Z`!dEo4OT{gHxl6T-i*hS1Tz2Hbw2pA) z3zIu`{c@CgGwS>8h)o-}FEYxx)SxmwJgR=?7TM_$rjFt|qct2yyw^=x_Q`fr%dS<9 z_N(eW?8jS{1axWY440|%UK!fhyluRWxYq5lU1QEg9;#Qi7jLcOZjpSqqq^RF%kXy* zo9pF%j4Zl3w^nxZx1nA;&AaqML{c5chKR1Lclt3|FI=mR{X_O@iP(>cSMMxaTPu?@ z_Lt)O8^&+y=DZsHzC`?jOws0peX9$_LwDZPxhDCeMRo4iCFd`wpZ6QW((PuyDl%EW zz1Yy(^IqnQ#i?d>N35xz&_8v@`l27}Qp~7wm6Z$u8Tr=ERX=?#WHF8|0-Leo2q6TA&o?F7uT4L2?EBA@xVwsdQkTrWryP~zArD=)|b^*$2I*UPf=ui`tFc5idJu5 zZd}(_XzwuT)AXmh)Z+X@Y{Bh`rw3Lf{gEj%lZ_X^iVjP1cg{YMGapjrM(;2^eJWvN zR%de?L#@Ir`^Oy99d+GMl$BzJiCc~K(feYiNACxOXGvHoQcI@j)aBO$o!xSsYV9p3 zFx11OzPr0KO3CZ=sfO{IYh=oHPm)kAI-LM@&s8$GpB0-^+gvvH$dt0t5a4amerAgZ zwe)Sgx^eQ-(=HbaW%jEp*c!z}%Ss3p%Hl0jLxP$wT}-3?=5M4FwLt7W%dAU!mV%+t zF5h%#(=}(09XYJlt~2ZWyr3T)3wB(1IZtNh!nvLM%nleTMRlerc{OK_txZ||^R80y zQ`@zpnjaV(Fuc24ZHkqqg3u@`+5{G%1BQXo?vtU80SD5lWlA7ntDwH%?(XPG=9lJf zz0-MP{nP6PD-1=V7f704lz123D!p5Mox#|)x<`TqiNLZA3VV!g07w$5ut-yan#Qe~ zqyM?mu5e!V=Vj-)mHh*j|FyENQ}o&txN>rWM&0PS*O_7m)HBu?!P43-cSvMF;kAiT zEY!|UVO7XkWrJb>DTPXnXDK3rq!Uzq`v8k)`{<1YIVUozEH?C8@D@YqIu&=&ghAz z&IzI65osqGKU~)ICY;QL4Rh9)_q%d?;_F8_Wm4PbtZ|7|&Y`i%n&XwzCm-DDzhq?G zu1kL74o2-+GSus=a`E2xOMmBVINq{keD-aRwZ-kd`}+Gl4aR4UelUM^*7yeoasr9C zs7dM5(}sPmcNUDkKi|-Oh+EgTBSGa}o0X0osgh{EzwPL7w>!(%7APvdnkCo0cCo{d z<~u=a%tdJmQyZnc7mX=jrzEq_ho8KdnoVmQP67cZ=GCi@_dz?M=>av!of(O_sM8+7G?@hjsj_ zrNyVI36^&}w~RR&;Z`qo;d`{o1u4Dy1pA_q4m+pbdZ(yfr)56E+o?x#iN;Ed zQFfXmL<~w^+y7Q69GV*;xu|5Hp0N9Qa>yv&yi@kP+grQl6#BOQywLy7zDP*h^$(QzUcr|j(>xTi0e@i6HT{|~q#QWR) zE^f%7mu~|vX%&BlVszUeCSR>dhoisg;*QA0#r;F{OZ0w7gj%$!%xEuD-5lGLVj~># ztK{k?6-(!y7s>tOLn95lRQrb(M|ig{{urBDCpw%SDKu6_78Ghnld7)USF&V zevjTrx0KcHdi2Ar?#X){dfHP(3{J1(9k|nYFj?uKk?!u6i8qxVEmTTuGe0*==brV4 zSyR3$X)h8TWc;Sn~)gRGBICSVPWB|y*3iX3dUNyqkAeZI{TK|9P)g9rt`y? zHFqVW)vW9?N{kl4=klA5iJGn2pJb^qy=<07{7Qv;MiG6dS4?b7TEKj|R^ghF=ua`r z4}t0DU^9NJXW*#FY-Q=iN{O9aO3`W(RxshQ(Gy*i zA1%y`f2i_wX~s#TaZm;G6cHEY9+=_2ca+>`eZ4TZA;IaH-GlKThu%~QF4bQb|7pbJ z1HMl)PbW`&(zGclx8M2N^O%HqeT9QYYG-m|1K0XnEIy!LG(JH-gLBKo!MUe1S!p}9 zycm5x%wZiV-exglVnSy80!0Zc>2-=B7u$>`A2~m>m#OEMmj5tUfW_;eZ@bdDqplA38xJIBLU-&Ao>=_G zNNcx4&+4?c*(t@t`&=s)>uu3J8<-a3HL*tNl9_YDL-I)Ah8kI)+ZE33n6 zo%^P{`~NAAUe|py<*w_>2c!I&pYLm$yjN|?`-5gnGy!k5?q_ov-ZlvLItlM7?76pj z)kK@!ofnndWxTI#{4MUn;m=L7{wrOydbe(ph&P;s2#q0^M=*5BbH6eeLQ!TG3v0BAW=9M?B?!Q-?R?zRXGjiAO z&yD;5lOL*%V`F>XcSdgQGhBB4+Mmc1elz}5D@Xq7D~?gG8czLm19}GI1F-);4lPCdbu1H zmnaujH6FeFpm%vhUM^2SuQNv|Al6APgTbY@71WMFZ)YxpOY|?7#o^NR<+AuZ`dEV# z96o)l!89V)aV{TzUzXOUTt1u3D`azsa)o?iErA*fi0=sn#5&G}TXl4Oc?>48Uhx<# zCS5lm3NhAr3=Yt4@L1zPGt>Kn$KVm|$7Aq`b%@6x>&#;aiMHaw@IZ~r?ZSX|<`Vk@Cai1pJp+@$M`Qv- zCM0FB?h@aFb)1yZ_bNOVlUVOTMvPt11J-f!dx#!PL=PCdWL`uMSi^{Pz&BFHLS$@2 zM%NegU?F<25ItCk9x$%Rx*&SM+DW7XZjmxX4>qC)8_@&iAo)Fd{dlk>5@TE-Aeap8 z!bbFfIYX4eLG<7tdT{7<<_QEm`W%FEfrDfjNPobZNT#FfOMMT~1AdR3$P26`Wr!ZI zw;?YDd`;jt44`3*n4$*^$=mF~=nHSN6hv)%oJCPUm z_k(3TfskBt1VU`hf&KX4ywJ|Dw4EeIu$IUR`$j57;vhd4b8KjIJB>5wMX=hv*?h^niUBnHSMR zNa_IqCh~$+g2+fcSYXf4%LVHNkiXPsrpG zdoCdh*73o6Gbopd=z;K@+Di>CgUUeuMfUJZG`#?F_mJiT${cL)c8z_mKWT zc+Nt2&O&(3LU_*NAbJpthq@pBJ z&VY=t*`dw|&%q;xluPQtMtDy7Zs_{5!IweGNIlpH&)JB5&L%j`XD|r=0laJ^e4yY} z1|I-X7lh|*#6D-koFVffdLTS!BRq!(pS15moeAF()EVJ98{s({;W_2ECF+duoDGjv z$#nF21a%>}Pszx6&PI4n`F+STkp4h;PMviSc@dto5&N8t@SKg<=WI5j2f=;N7vVX0 zg30V%5S~-*O!OO^YmhQzeh}P;atXVe&)_3#CwYEE<)x1oK7%~J1UEXd zx1jPOdLTTf&eaIrz^))=$a+O^AIc>-4fP}T=zJzjE?S>MUV_t*j@X;=nQ(fCp^&K4r`gWx_@XL>tB{Rlf0c7KQ+${{!n>4-fNpUDQhg1$fHAoe*2;W?Z> z5&Cive>(^9x5FtFnU~-+)Q>oe=7SrP>?3Mz8r=4f4%&IJZgBht>&svnY&Q^|a}fKS zLolAoi|Ik{H%N!@oI`M$&m?UKkP+jQ`W}5fF*gqtYRI zAUx+FJm(-hr_QnlmjNejgl`UH#JL*Oh2S)wDTMvY;JySIaTZPGMf5;;&Ovz2L3qwV z>~jucpK}QALtPM_a}b_$5T0`gJ08AA*xh_^uhHi;$cQsnDlfTSaR}~H>FE7N$>`&c zk|E;?;W-E4Ift;t`QS>U+qF;zVxMye?o;XL>j5Q0^dPuTr9<>Uc+Nq1&Ovz2A^h@C z2Eua=VxMym`gx$@Dt25*}1eefgYc|x6;65cI_laD>FHfZ- z=Q$VQITztMTpS_wMR?9d>~qSlp!X#gvCrXV3oRX7_aW|}@xe7ru610*KIanLhc-ZX z&P906MR?9dc+Ms4Zm1t|zl0AiU;2In>Vnwk)QwG|tq}X1i`eH}g8Nh%$a|up^Zp7UbK3s?+_m0$E96~pQ=WufgNr&ix_}k%z6PcIbKC}zMb1uSjF2QNg zjo2sh!Cg%E6;Nd$dLTUKBKA3#U_5*e;W-!KITztM)kj3zBRuCKJcmndNM58r5T0`h zc0*ec_m)66gy&p@=Ujy6T!iObgy&p@=Ujy6T!iObgy&p@=aj#MXlI1yT!iOb#NW;( z7!PfQ@SKbA94@MobwPN}MR?9dc+N$5&P906MR-o#VFS>Voi`V#?rtgED|AG`p6~ zMD9EC5S~*$OZxYiz<|NugSsI0Igj8zl@1wK2+w&4&v^*Xc?i#W2+w&4&v^*Xc?i#W zh<(l@IL(J67Q%l3#~<`Qhc-ZX&O>+(j}>Tb4|xer^Wpe|>|e^KO7s!JbLd-I8GJZ$ zKwgy%ej=hS^*qJ9X^DSsG|j^H%33(=;0 zIMyKd**wHP=MjvDc0qW~BRCCZ5I!i_Nx>eD=wF2AJc8YDZ5>!a-ky#*lJ9^pCMKt<9a;|k$9+_oa~B0Ps%J4iZYy+U{nHwI{Vp`D37;=>UJ zvUVaor}~KAE^x|+$msQhGRQLwwh%ePfRiiad-S=$XA5C&(Z>s%?jU)|{-AuwgdPab zsXHfRIY!Tx!$49Y-w4i+%& zdsI3^55zu)odhi}yiy`KBVY)L^F}BGvCn~A#P{Ig6R8Knb66E=d8slGJrJJ53_lORLRT=|H-X5c{0E z_dmE?$V>Qmpq&w(^AY=;PcWX!i|9dcS^&qF^g4qK_)F-4@SKnEoR9FFdY3g=U#K6# zb3VdzKEiW8!gD^sb6AOqy9*#g?k?~Vp7Rl&Q)gp@9t6+f1qZurw7ZZa_Q?D$Pk|M5uWo2 zyBlux5%w0mWJK&OKEiW8VxRL7`&>Y98pOm;>0^kxZ$ZlF^B2m1 zc|N#J1@K0U-S`q@(i<${_3j0US+`c7Ookxd7q00P(j|K8nG0hBAmb z10?_hh;}Ayc4&Ko@sted4}#NB2F!)QWq=mIior7Kd*pgW&B4KXQ0b8VAna~v6=KeS zjOcUt9>IM|M(;ODhKwu1?iRqc7E)g%Cc$UPEVg+fZ#q=E;7#%p2MR;vRuSIr+lj5S|MN zn;qJjxJOHUkJLj*a35ZfBRr?#wb1JnWiJVaJ0Wh~rdV82LS< zKM9a%17p9=}@Q{~d@Ct!0(dl0UalY0;$VxJ2U zf4h+2K9q~_oZ3?pZIAF=NciQc?;+!g;69a(t}nuo?@LY)a+adT4?R%gb!gDJA(BN_*9l~=eW(}DR=?{eGLWJi+gy%wp=R(9j7ZQx8 z>P+atgt<$vGsp-%Kt|{RGGcy!jNV7^$ z=a3H3gXB4+Bj!2Ci1i9&#JB<(q6figuo{8M^!1e5V-A*4p^%XNAbAeykp3Vz4VEeJ za&Q?SgYhz0Mm-;-j~4+vX&@NDA>*o1d6E7gc@F82{vde{>5%>)c@F95<3#{Z6$pJf za6y*Tm*BJjo(z!svY}mwwjy~B;h>QIAbAeyka0!w9MU1HtQj{>>xguF<9kUWQU$owFA4(aIq2K6I(4l-n15satuBIAnWIiy4MAUF+e z0Ja*vP09FSRJn*AB+nt77NQ5qb4Z8iLGm2Z(c4)7*XoJ&1+Kg!>kG+q_#UDM$#W(+ zJV~aIJco3M9t5Waa9y4pyNF*3zDL&=+MeV&$Phh9p2K+=q6cZ8Lpu6+ffs<}Iu619 zkai|{4&OucAbAeyNId|KMB4*=5E;o2SSXQn0 ziqO6X=@6b%ao=eBD-a=iAUuaiq_n)?og{qM0=SBe)EVJ9b-qB>1<`}B*+Dmg`;-jP zgRr}ye#9LI0hf$JN_~&6FD0Y*8zn>ZAkNt#9l?D{hV%!)X{aCJy9O^Xu$veg2+!fr zm279y-wt&_^dPtobtdg|kkQ9I)Q@ByTmdKd2N0x@tRKR2IABH6A^m~y9ElGHp$+Nd z1-#>g4-am{kUk2?OV=0Lh2TCVqpxd}4ABGOITPVI9K_Pv06g_D&j*hKkbxaKSO(=H zJZB<2XCgd@AjGtCsqZ0rkoGyGL&g=tb0)%bct}c?i}0LD*xe8cnB)gsha>qxy<;ZU zA%gp$FT!(pG)l`WfUDgEYpGzYWPcz$hl6L@_n=(DW~XHIaSx|6Fh2(OIfOoj^?tC7 z%8T>|!EVS4`$Qry!gF~1O4gaQ&zVSkIFKRZ3gI~u;W-tzg6KDd=SX}wxKBgxHwY1m z*yl)mI7mmXSJeGodR?eE+oX)%Z&bOY9`Hz(%!}}xj1LE=YQXcs{RT1^&x2)9E@GcU zFlwY+L=WOz98T_tyT2fVaX^%d@SKbV2d93-c!oM7_Bj<7n`mc(`&3>;4}|APd^pI9 z^asLoBt9G!tevbMVxJ@N;UF*49|+IMIC7vb!gDh28?-aYJRbG#iRd@Nj)yV`?o%?P zKM1=UPHRb<1g=w)>m&=|IT;HMPI`&`Gt`B!<0%=^9|+Hp_;8RH=?{eGEQIGsd^q?X zGOiH&9ElGH+fzgjgy$@T=am12m@^2^$+&OO&g8xhu52UyhVYz)@SKJ4oJH~+0?3l< znh@HV7^eu&sr8T07vVV>_e}uTsp)e8WQe^_#i=C9KzL5Zk%KWw@*D!J(D!fxxN=M~ z8Ho=E-$TX~!FVW_;Isg)E7RK)WJKFjd69XJ@SKJ4oJDXNZcGrqG`KMVtflua5+4ps zE0X6(d^ku)ANNoOan~MhWf1pxz{8F3oO(k}?{hMa9F>>s4|qsL=0)stBt9INjpRO& zddoAoE}#dojtk%#Ex89KW5z+95&Im84+nAg>Ej;CAbq89#g$wmkoa)$J#t(j@!=pH zU0w=>*&fblZ8 zkKon=aVG)tB0PsfNV4A$p0g2uI~g+$%7w8pxGq$=$oxQfPR5a=^3wGM8RBn8;=@5Y zWPTt#XCwAGJftGqh49N$bwS1z!D%6fx+^}oT|fqXK3E3dL+o=lVxJ@N;UF(Et_XI+ z%p&i3KweA_(yk@r$U$gQ#NQ4Nq=@z-vA+=u!h_Bk0J z4$6QzJ$UTGPiVm%ufa0vdzc>NxI*H?flHb`f1wPRgM-Tu!g&BvE@Gc^5T289p(Bt9H`4;fd8eNM)GgBy1wL*a+NkUm1} zb0j_-9CaY;6=I(w@!=pZq6figu$+l=Ft`y2^L+69fObZBj>Lz9bjY|OI1ObGwlmy1 zg!x96i|K)kD}?7rd^jc&9}Z*)KL}1k{Rp226=I*XXULdw(0+)&orBotWZX9>1Nb|* zU4-D5NBW4cBw<~#D{})!$CT-KLBQAoe56E zZCm0z3S`K66c^z+7vVV>M-JMB;56(kh&ydU@cGjBu~c4652Qa3`<#pq2W61!8iddw z=L`}b4vuw^{y=z+#D{~th#rW2PR0Eg%sjZ&Oq}n-t!BcWhPFcNb1uSjGL9UTmtH?8 z16kKF+nGAIA6#en9>Q}ZJ{+W@>r3TD<_B_qPR56Wo89D^2>w{4e-WNjzbixNf!OC{ z+&8!>4r>H$ErzfVq<<2L4+ls7$hbmyj>Lz9y!3v9_9N_gkP)1Qo9u87Mz1scATv!y zcn4Ws)!;Kcy4A41~8!S|4Hh437S4+nV>JqW)%+|DM> z#i4%Wy1}PnSqyGJDla*%koa(rj?@EwA(l2*;iqp&TZoVOL6G=xux%p!a7cVONJow< z>TL^s-Js4dNg18f@PdOl=L8vY&WXf_gSwFOgGbo$(9Q&>;gtw+jsr5}90z{voYVt3 zKj$I-cG%bIs*g*X4)P9YaM~J^2i4O)eRG`x<2J^J7>K!%)0@erQ#5Pv%oAC8H{hXWZht`MHX#*^0eaKoCoM*%YA z9x_}6pyh@3LwL?Zcn+IeT3&b|M$UaWKBBiDl!5RZi4OWtXu)bIBY;~wET86OVH0DsQlGT>L(z)l$~qsk@qK;px})k|`{ zf?t6m>PNkOpw}6Gc?ppb;|iWJ6YCXRl_dKYi4O<$L-as+4!_butBVkxA`|;MIP@a- zz({;JXl8Pr!>^#w%7E8uh<%R4hl6y89)#TuuNDbA8Dz+vUL-yo#7si^1K~MDuBGV# zmKA9)fWd{d6~c2QJ{WypsC%)A5}>HY5(g^KeMke!*vXN1vQ=*ciAUnT&_v zx$wi$w*MaFc@l@<`KjdR!VgCoxBOlSo(n%5ZDl+pKNo&D+DaUP=aWZ{J{bG*kx3ka z=OkQheA8Cqm>3Umb^J(Mi9_%_XN>E-qV1@Ik4)kixF0=iQu{L!=X2Sch3aR z&m=!TlX^Jehr`C4SFl{xu}mC&4-Z++V2#)$KNo&Dj%Lhxl{>!5n8ya|t=K@8dg>xe zpUQr_@WUOEuvQys+w=3-V9gX8$a2SKku7Z{4#9Kbhr@2ex7g_KL&)rXX!6Jrhv0eg zh0>?-x#Ki8@{Og$7Mbjy!bl;{YvZ=qka^YfZfs<4q}$Cqf05;R1NS47^&$B=r-G}` z*bUciu@M>X{6)6dwK&?iMNjf`P6iIU@wwQ*ZaAHaYIdD|jyaa2zF*I0VmyAC9&XhvetN4@cV;Tl#d= z%|+I5X3>-J5Iko?V)l#Rx$whbxBVV0c4eJQelGlQ3-@dvBjJZbZ;l6>6g3X!LCz_a zwTgej4~J~VA^dRY&G9&w{9O3qj&iT>h;8KY_$PQS{BY>ac_sXC=*{s6*ZuHC@Lc%e zI0h+kblgurOMWi=aOgGvGH!hj1)1%koOj%hUHN`4{BY<=9Fm_4KOAk_TwCnQc=Ubr z#KD>_a}rtZ04=gSPwLx+9}Yc8lQS-Q@_W^B8vn9y)_tDm z(DJ+%@8U~aM~h6xqvL+`1kZ&Z4!t&C@Oj)76@p+!$`MKcv z;DW=y!9NcBRk*@R-!C>=yo*fY5Ih%tIDD4z5Iko$xAsB&V|^6=kny5ZW${n&T=?P8 zlQ;y=g&&T#BM$m+tPf;kog*8+R|%`f`!e62TD+9-wK3xB{a?jGO(<>0&KKwNkxN?T;P z1G&ohYTD<<3r?c+JQP_t$y-~tOIm(T6vw@`3?|Hxb4K>JFNgi7$IrX{dUbKJefRit zw}E}&WPAVgblA|#oBQqSuMba~>=5Mdn-3SaL_-DF+12UE-PO&@yQ}9X*Vo6d?v7qu zQyhJBd--pTkDJTO_3GQ<)Bf;dzk67(I3dI)-Fo%x+3lOV_3F2f4qLDOk9*s<``!1= bZ?CrR?{^RH4qx~;J=Z+voCamne?0#M-al?* literal 0 HcmV?d00001 diff --git a/Docs/PS_AI_Behavior_Documentation.pptx b/Docs/PS_AI_Behavior_Documentation.pptx new file mode 100644 index 0000000000000000000000000000000000000000..114aee8ca443d73db48d4ee7d779939df35c01c5 GIT binary patch literal 485070 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�Ae%JGzwKe+5Z9h|& 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 z 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

A~xkJ@x2UuWwX=w+4v1`w)aM0KGFILF76pH<+&g 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 z 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

I0QBUVnbf>SZi0iR-)XhqvGH^9KiPe!t|`bc?8O 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μ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żV|zTo)m5&=R4$_u&|Rnfk|z1pBM%1%$uy0T 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

V>3Nih4JQpa1HyzdSQ=-kqwu75M< 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 z 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 z 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 W(Z@p|DU&%2|J!w5CgXk;-~K;JMf;fm literal 0 HcmV?d00001 diff --git a/Docs/gen_behavior_doc.js b/Docs/gen_behavior_doc.js new file mode 100644 index 0000000..d9c9ac4 --- /dev/null +++ b/Docs/gen_behavior_doc.js @@ -0,0 +1,691 @@ +// PS_AI_Behavior User Documentation Generator +// Palette: Warm Terracotta (terracotta #B85042, sand #E7E8D1, sage #A7BEAE) + +const pptxgen = require("pptxgenjs"); +const pres = new pptxgen(); + +pres.layout = "LAYOUT_WIDE"; // 13.333 x 7.5 inch + +// ─── Color Palette ───────────────────────────────── +const TERRA = "B85042"; +const TERRA_D = "7A3229"; +const SAND = "E7E8D1"; +const SAND_LT = "F5F5EA"; +const SAGE = "A7BEAE"; +const SAGE_D = "5F7566"; +const WHITE = "FFFFFF"; +const CHARCOAL = "2E2A26"; +const GOLD = "D4A84B"; + +// ─── Font ────────────────────────────────────────── +const FONT_H = "Calibri"; +const FONT_B = "Calibri"; + +// ─── Master slide backgrounds ────────────────────── +pres.defineSlideMaster({ + title: "CONTENT", + background: { color: SAND_LT }, + objects: [ + { rect: { x: 0, y: 0, w: 13.333, h: 0.35, fill: { color: TERRA } } }, + { rect: { x: 0, y: 7.15, w: 13.333, h: 0.35, fill: { color: TERRA } } }, + { text: { + text: "PS_AI_Behavior — User Documentation", + options: { x: 0.3, y: 7.18, w: 8, h: 0.3, fontSize: 10, color: SAND, fontFace: FONT_B } + } }, + { text: { + text: "ASTERION", + options: { x: 11.5, y: 7.18, w: 1.5, h: 0.3, fontSize: 10, color: SAND, fontFace: FONT_B, align: "right", bold: true } + } }, + ], +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 1 — TITLE +// ═══════════════════════════════════════════════════════════════════ +let s = pres.addSlide(); +s.background = { color: TERRA }; +s.addShape(pres.ShapeType.rect, { x: 0, y: 3.3, w: 13.333, h: 0.05, fill: { color: GOLD } }); +s.addText("PS_AI_Behavior", { x: 0.6, y: 2.2, w: 12, h: 1.2, fontSize: 60, bold: true, color: WHITE, fontFace: FONT_H }); +s.addText("Personality-Driven NPC AI for Unreal Engine", { x: 0.6, y: 3.5, w: 12, h: 0.6, fontSize: 22, color: SAND, fontFace: FONT_B, italic: true }); +s.addText("User Documentation", { x: 0.6, y: 4.4, w: 12, h: 0.5, fontSize: 18, color: SAND, fontFace: FONT_B }); +s.addText("Civilians • Enemies • Protectors • Cover System • Splines", { x: 0.6, y: 5.2, w: 12, h: 0.4, fontSize: 14, color: SAND, fontFace: FONT_B }); +s.addText("ASTERION • 2026", { x: 0.6, y: 6.6, w: 12, h: 0.4, fontSize: 12, color: SAND, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 2 — OVERVIEW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Plugin Overview", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); + +s.addText("What it does", { x: 0.5, y: 1.7, w: 6, h: 0.4, fontSize: 18, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "Personality-driven AI for NPCs", options: { bullet: true, fontSize: 14 } }, + { text: "Three archetypes: Civilian, Enemy, Protector", options: { bullet: true, fontSize: 14 } }, + { text: "Trait-based reactions: Courage, Aggressivity, Caution", options: { bullet: true, fontSize: 14 } }, + { text: "Tactical combat + cover system + EQS", options: { bullet: true, fontSize: 14 } }, + { text: "Spline-based patrol networks", options: { bullet: true, fontSize: 14 } }, + { text: "Interface-driven — no Pawn class dependency", options: { bullet: true, fontSize: 14 } }, +], { x: 0.5, y: 2.1, w: 6, h: 3, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 8 }); + +s.addShape(pres.ShapeType.roundRect, { x: 7, y: 1.7, w: 5.8, h: 4.8, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Primary Use Case", { x: 7.2, y: 1.9, w: 5.4, h: 0.4, fontSize: 16, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("Populate your world with intelligent NPCs that perceive threats, evaluate risk based on personality, and respond appropriately — civilians flee from gunfire, enemies engage in tactical combat, protectors defend civilians.", { + x: 7.2, y: 2.4, w: 5.4, h: 1.7, fontSize: 13, color: SAND, fontFace: FONT_B, italic: true +}); +s.addText("Key Differentiators", { x: 7.2, y: 4.2, w: 5.4, h: 0.4, fontSize: 16, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText([ + { text: "Data-driven personality profiles", options: { bullet: true, fontSize: 12 } }, + { text: "Built-in cover cycle state machine", options: { bullet: true, fontSize: 12 } }, + { text: "Spline network with junction detection", options: { bullet: true, fontSize: 12 } }, + { text: "Gaze bridge to ConvAgent (reflection)", options: { bullet: true, fontSize: 12 } }, +], { x: 7.2, y: 4.7, w: 5.4, h: 1.7, color: SAND, fontFace: FONT_B, paraSpaceAfter: 4 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 3 — CORE ARCHITECTURE +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Core Architecture", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); + +s.addText("The plugin is built around four concepts:", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const pillars = [ + { title: "Interface", subtitle: "IPS_AI_Behavior_Interface", desc: "Implemented on host project Pawns. Zero compile dependency — identity, team, combat, movement." }, + { title: "NPC Type", subtitle: "Civilian / Enemy / Protector", desc: "Determines team, spline access, default tree. Enemies can be disguised (hostile=false)." }, + { title: "State", subtitle: "Behavior State enum", desc: "Idle, Patrol, Alerted, Combat, Fleeing, TakingCover, Dead, Scripted. Written to Blackboard." }, + { title: "Profile", subtitle: "PersonalityProfile data asset", desc: "Traits, thresholds, target priority, speed per state, default BT." }, +]; +pillars.forEach((p, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.2 + row * 2.3; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 6.0, h: 2.1, fill: { color: TERRA }, rectRadius: 0.1 }); + s.addText(p.title, { x: x + 0.2, y: y + 0.15, w: 5.6, h: 0.45, fontSize: 20, bold: true, color: GOLD, fontFace: FONT_H }); + s.addText(p.subtitle, { x: x + 0.2, y: y + 0.6, w: 5.6, h: 0.35, fontSize: 12, color: SAND, italic: true, fontFace: "Consolas" }); + s.addText(p.desc, { x: x + 0.2, y: y + 1.0, w: 5.6, h: 1.0, fontSize: 12, color: SAND, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 4 — NPC TYPES & TEAM ID +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("NPC Types & TeamId", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Identity drives perception, targeting, and access control.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +// Three NPC cards +const npcs = [ + { name: "CIVILIAN", color: SAGE, id: "0x00", desc: "Non-hostile. Flees. Allied with Protector." }, + { name: "ENEMY", color: TERRA, id: "0x10", desc: "Hostile. Tactical combat. Can be disguised." }, + { name: "PROTECTOR", color: SAGE_D, id: "0x20", desc: "Police / guard. Defends Civilians." }, +]; +npcs.forEach((n, i) => { + const x = 0.5 + i * 4.3; + s.addShape(pres.ShapeType.roundRect, { x: x, y: 2.15, w: 4.0, h: 2.2, fill: { color: n.color }, rectRadius: 0.1 }); + s.addText(n.name, { x: x + 0.2, y: 2.3, w: 3.6, h: 0.5, fontSize: 22, bold: true, color: WHITE, align: "center", fontFace: FONT_H }); + s.addText(`TeamId = ${n.id}`, { x: x + 0.2, y: 2.85, w: 3.6, h: 0.35, fontSize: 14, color: WHITE, align: "center", italic: true, fontFace: "Consolas" }); + s.addText(n.desc, { x: x + 0.2, y: 3.3, w: 3.6, h: 0.95, fontSize: 12, color: WHITE, align: "center", fontFace: FONT_B }); +}); + +// TeamId encoding +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 4.6, w: 12.3, h: 2.3, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("TeamId Encoding", { x: 0.7, y: 4.7, w: 12, h: 0.4, fontSize: 16, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("uint8 = (high nibble: NPCType) | (low nibble: Faction 0-15)", { x: 0.7, y: 5.1, w: 12, h: 0.3, fontSize: 13, color: SAND, italic: true, fontFace: "Consolas" }); + +s.addText([ + { text: "Same type + same faction → Friendly (allies)", options: { bullet: true, fontSize: 12 } }, + { text: "Same type + different faction → Hostile (rival gangs)", options: { bullet: true, fontSize: 12 } }, + { text: "Civilian ↔ Protector → always Friendly", options: { bullet: true, fontSize: 12 } }, + { text: "Everything else → Hostile", options: { bullet: true, fontSize: 12 } }, + { text: "Disguised Enemy (hostile=false) → TeamId 0x01 (civilian disguise)", options: { bullet: true, fontSize: 12 } }, +], { x: 0.7, y: 5.45, w: 12, h: 1.4, color: SAND, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 5 — BEHAVIOR STATES +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Behavior States", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Enum written to Blackboard, drives BT branching.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const states = [ + { name: "Idle", desc: "Resting / waiting. Proximity gaze active." }, + { name: "Patrol", desc: "Wandering on waypoints or splines." }, + { name: "Alerted", desc: "Suspicious, heightened awareness." }, + { name: "Combat", desc: "Engaged with a threat, attacking." }, + { name: "Fleeing", desc: "Running away from danger." }, + { name: "TakingCover", desc: "Behind tactical cover during combat." }, + { name: "Dead", desc: "NPC deceased, all systems shut down." }, + { name: "Scripted", desc: "Manual override (conversations, cinematics)." }, +]; +states.forEach((state, i) => { + const col = i % 4; + const row = Math.floor(i / 4); + const x = 0.5 + col * 3.15; + const y = 2.2 + row * 2.3; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 2.95, h: 2.1, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.08 }); + s.addShape(pres.ShapeType.rect, { x: x, y: y, w: 2.95, h: 0.55, fill: { color: TERRA } }); + s.addText(state.name, { x: x, y: y + 0.05, w: 2.95, h: 0.5, fontSize: 16, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(state.desc, { x: x + 0.15, y: y + 0.7, w: 2.65, h: 1.3, fontSize: 11, color: CHARCOAL, valign: "top", fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 6 — AI CONTROLLER +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("AI Controller", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("APS_AI_Behavior_AIController — the central orchestrator.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Auto-setup on Possession", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "Discovers PersonalityComponent on Pawn", options: { bullet: true, fontSize: 12 } }, + { text: "Computes TeamId from NPCType + Faction", options: { bullet: true, fontSize: 12 } }, + { text: "Initializes Blackboard with required keys", options: { bullet: true, fontSize: 12 } }, + { text: "Binds gaze bridge to ConvAgent (if present)", options: { bullet: true, fontSize: 12 } }, + { text: "Starts BT (unless bAutoStartBehavior = false)", options: { bullet: true, fontSize: 12 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.5, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 4 }); + +s.addText("Key Methods", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "StartBehavior() / StopBehavior()", options: { bullet: true, fontSize: 12 } }, + { text: "SetBehaviorState() / GetBehaviorState()", options: { bullet: true, fontSize: 12 } }, + { text: "SetTeamId() — runtime team change", options: { bullet: true, fontSize: 12 } }, + { text: "GetBehaviorPerception()", options: { bullet: true, fontSize: 12 } }, + { text: "GetPersonalityComponent()", options: { bullet: true, fontSize: 12 } }, +], { x: 7, y: 2.55, w: 6, h: 2.5, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 4 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.2, w: 12.3, h: 1.8, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Gaze Bridge (Proximity)", { x: 0.7, y: 5.3, w: 12, h: 0.35, fontSize: 14, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("Reflection-based integration with PS_AI_ConvAgent. During Idle/Patrol, NPC glances at nearby actors within GazeProximityRadius. Configurable duration and cooldown. Auto-pauses during active conversations.", { + x: 0.7, y: 5.7, w: 12, h: 1.25, fontSize: 12, color: SAND, italic: true, fontFace: FONT_B +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 7 — PERSONALITY COMPONENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Personality Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Runtime traits & state reactions for the NPC.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +// Traits triangle +s.addText("The Three Traits", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); + +const traits = [ + { name: "Courage", desc: "0 = coward, 1 = fearless", effect: "Gates flee threshold & cover advancement", color: "C9463A" }, + { name: "Aggressivity", desc: "0 = peaceful, 1 = violent", effect: "Drives attack threshold, combat/cover cycle", color: "D4803A" }, + { name: "Caution", desc: "0 = reckless, 1 = prudent", effect: "Flee threshold, cover duration, spline threat", color: "7C9D7B" }, +]; +traits.forEach((t, i) => { + const y = 2.6 + i * 0.95; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 1.8, h: 0.8, fill: { color: t.color }, rectRadius: 0.08 }); + s.addText(t.name, { x: 0.5, y: y + 0.1, w: 1.8, h: 0.3, fontSize: 14, bold: true, color: WHITE, align: "center", fontFace: FONT_H }); + s.addText(t.desc, { x: 0.5, y: y + 0.45, w: 1.8, h: 0.3, fontSize: 10, color: WHITE, align: "center", italic: true, fontFace: FONT_B }); + s.addText(t.effect, { x: 2.4, y: y + 0.15, w: 4.2, h: 0.6, fontSize: 12, color: CHARCOAL, valign: "middle", fontFace: FONT_B }); +}); + +s.addText("Properties & Events", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "Profile — PersonalityProfile DataAsset", options: { bullet: true, fontSize: 12 } }, + { text: "bAutoStartBehavior — per-NPC override", options: { bullet: true, fontSize: 12 } }, + { text: "RuntimeTraits — editable at runtime", options: { bullet: true, fontSize: 12 } }, + { text: "PerceivedThreatLevel — replicated", options: { bullet: true, fontSize: 12 } }, + { text: "CurrentState — replicated with OnRep", options: { bullet: true, fontSize: 12 } }, + { text: "EvaluateReaction() / ApplyReaction()", options: { bullet: true, fontSize: 12 } }, + { text: "ModifyTrait() / GetTrait()", options: { bullet: true, fontSize: 12 } }, + { text: "ForceState() — scripting override", options: { bullet: true, fontSize: 12 } }, + { text: "OnBehaviorStateChanged delegate", options: { bullet: true, fontSize: 12 } }, +], { x: 7, y: 2.55, w: 6, h: 4.5, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 8 — PERSONALITY PROFILE +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("PersonalityProfile DataAsset", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 32, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("The behavioral recipe — one profile per NPC archetype.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const profileCats = [ + { title: "Identity", items: ["ProfileName", "NPCType", "Faction (0-15)"] }, + { title: "Traits", items: ["Courage (0-1)", "Aggressivity (0-1)", "Caution (0-1)"] }, + { title: "Thresholds", items: ["FleeThreshold", "AttackThreshold", "AlertThreshold", "ThreatDecayRate"] }, + { title: "Combat", items: ["TargetPriority[]", "MinAttackRange / MaxAttackRange", "CombatCoverCycleDuration"] }, + { title: "Movement", items: ["SpeedPerState map", "DefaultWalkSpeed"] }, + { title: "Behavior", items: ["DefaultBehaviorTree (soft ref)"] }, +]; +profileCats.forEach((c, i) => { + const col = i % 3; + const row = Math.floor(i / 3); + const x = 0.5 + col * 4.15; + const y = 2.2 + row * 2.3; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 3.95, h: 2.1, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.08 }); + s.addText(c.title, { x: x + 0.15, y: y + 0.1, w: 3.65, h: 0.35, fontSize: 14, bold: true, color: TERRA, fontFace: FONT_H }); + s.addShape(pres.ShapeType.rect, { x: x + 0.15, y: y + 0.45, w: 0.35, h: 0.04, fill: { color: GOLD } }); + s.addText(c.items.map(t => ({ text: t, options: { bullet: true, fontSize: 11 } })), + { x: x + 0.15, y: y + 0.55, w: 3.65, h: 1.4, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 3 }); +}); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 6.85, w: 12.3, h: 0.35, fill: { color: TERRA }, rectRadius: 0.04 }); +s.addText("Example presets: Cowardly Villager • Aggressive Guard • Rival Gang Member", { x: 0.7, y: 6.88, w: 12, h: 0.3, fontSize: 11, color: SAND, italic: true, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 9 — COMPONENTS OVERVIEW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Components", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Attach to Pawns as needed — most are optional.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const components = [ + { name: "Personality", desc: "Traits, profile, state reactions", required: true }, + { name: "Perception", desc: "AI Perception wrapper, threat computation", required: "auto" }, + { name: "Team", desc: "Identity for non-AI pawns (player)", required: false }, + { name: "Combat", desc: "Attack events, fire/kill delegates", required: false }, + { name: "Spline Follower", desc: "Spline walking, junction detection", required: false }, +]; +components.forEach((c, i) => { + const y = 2.2 + i * 0.9; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 3.5, h: 0.8, fill: { color: TERRA }, rectRadius: 0.08 }); + s.addText(c.name, { x: 0.5, y: y, w: 3.5, h: 0.8, fontSize: 16, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + + s.addShape(pres.ShapeType.roundRect, { x: 4.2, y: y, w: 7.0, h: 0.8, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.06 }); + s.addText(c.desc, { x: 4.4, y: y + 0.1, w: 6.8, h: 0.6, fontSize: 13, color: CHARCOAL, valign: "middle", fontFace: FONT_B }); + + let tagText = c.required === true ? "Required" : (c.required === "auto" ? "Auto" : "Optional"); + let tagColor = c.required === true ? TERRA : (c.required === "auto" ? SAGE_D : GOLD); + s.addShape(pres.ShapeType.roundRect, { x: 11.4, y: y + 0.2, w: 1.4, h: 0.4, fill: { color: tagColor }, rectRadius: 0.08 }); + s.addText(tagText, { x: 11.4, y: y + 0.2, w: 1.4, h: 0.4, fontSize: 11, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 10 — PERCEPTION COMPONENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Perception Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Sight, hearing, damage senses — auto-configured.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Senses", { x: 0.5, y: 2.15, w: 4, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "Sight — vision cone + line of sight", options: { bullet: true, fontSize: 13 } }, + { text: "Hearing — noise events with tags", options: { bullet: true, fontSize: 13 } }, + { text: "Damage — damage received tracking", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 4, h: 2, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Threat Scoring", { x: 4.8, y: 2.15, w: 4, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "Target priority (from Profile)", options: { bullet: true, fontSize: 13 } }, + { text: "Recent damage weight", options: { bullet: true, fontSize: 13 } }, + { text: "Proximity weight", options: { bullet: true, fontSize: 13 } }, + { text: "Target persistence (80% score hold)", options: { bullet: true, fontSize: 13 } }, +], { x: 4.8, y: 2.55, w: 4.2, h: 2.2, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Key Methods", { x: 9.3, y: 2.15, w: 3.5, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "GetHighestThreatActor()", options: { bullet: true, fontSize: 12 } }, + { text: "CalculateThreatLevel()", options: { bullet: true, fontSize: 12 } }, + { text: "GetThreatLocation()", options: { bullet: true, fontSize: 12 } }, + { text: "ClassifyActor()", options: { bullet: true, fontSize: 12 } }, +], { x: 9.3, y: 2.55, w: 3.5, h: 2, color: CHARCOAL, fontFace: "Consolas", paraSpaceAfter: 4 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.15, w: 12.3, h: 1.85, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Perception / Threat Resolution", { x: 0.7, y: 5.25, w: 12, h: 0.35, fontSize: 14, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("Detects ALL affiliations → filters by Hostile attitude. Supports separate ThreatTarget (e.g. AimTargetActor sphere) vs. owning Pawn. Line-of-sight tracking with last-known-position memory.", { + x: 0.7, y: 5.65, w: 12, h: 1.3, fontSize: 12, color: SAND, italic: true, fontFace: FONT_B +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 11 — COMBAT COMPONENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Combat Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Attack execution, cooldown, damage events.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Properties", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "AttackRange — max distance (cm)", options: { bullet: true, fontSize: 13 } }, + { text: "AttackCooldown — minimum between attacks", options: { bullet: true, fontSize: 13 } }, + { text: "AttackDamage — base damage value", options: { bullet: true, fontSize: 13 } }, + { text: "CurrentTarget — replicated", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.3, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Methods & Events", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "CanAttack() — cooldown check", options: { bullet: true, fontSize: 13 } }, + { text: "IsInAttackRange() — distance test", options: { bullet: true, fontSize: 13 } }, + { text: "ExecuteAttack() — apply damage + multicast", options: { bullet: true, fontSize: 13 } }, + { text: "OnAttackExecuted (multicast)", options: { bullet: true, fontSize: 13 } }, + { text: "OnDamageReceived (server-only)", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.5, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.3, w: 12.3, h: 1.7, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Combat Type", { x: 0.7, y: 5.4, w: 12, h: 0.35, fontSize: 14, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("NPC's combat type (Melee / Ranged) comes from IPS_AI_Behavior::GetBehaviorCombatType(). Melee = rush the target (no cooldown between re-positions). Ranged = maintain distance, use cover cycle, peek to fire.", { + x: 0.7, y: 5.75, w: 12, h: 1.2, fontSize: 12, color: SAND, italic: true, fontFace: FONT_B +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 12 — WORLD ACTORS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("World Actors", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Placed by level designers — drive navigation and tactics.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const actors = [ + { name: "SplinePath", desc: "Placeable spline defining a navigation corridor. Filtered by NPCType. Bidirectional, with priority for junction selection." }, + { name: "SplineNetwork", desc: "WorldSubsystem — auto-detects intersections between SplinePath actors. Provides navigation queries, threat-aware switching." }, + { name: "CoverPoint", desc: "Manually placed tactical position. Cover or HidingSpot type, quality score, crouch flag, max occupants, type filter." }, +]; +actors.forEach((a, i) => { + const y = 2.2 + i * 1.5; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 12.3, h: 1.35, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.1 }); + s.addShape(pres.ShapeType.rect, { x: 0.5, y: y, w: 3.5, h: 1.35, fill: { color: TERRA } }); + s.addText(a.name, { x: 0.5, y: y, w: 3.5, h: 1.35, fontSize: 20, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(a.desc, { x: 4.2, y: y + 0.15, w: 8.4, h: 1.05, fontSize: 13, color: CHARCOAL, valign: "middle", fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 13 — BEHAVIOR TREE SERVICES & TASKS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Behavior Tree — Services & Tasks", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 30, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Reusable BT nodes — build custom trees per NPC type.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Services (root-level)", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +const services = [ + { name: "UpdateThreat", desc: "Queries perception, writes threat BB keys" }, + { name: "EvaluateReaction", desc: "Computes state from traits + threat" }, + { name: "UpdateGaze", desc: "Manages eye contact, ConvAgent bridge" }, +]; +services.forEach((svc, i) => { + const y = 2.55 + i * 0.7; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 2.3, h: 0.55, fill: { color: SAGE_D }, rectRadius: 0.06 }); + s.addText(svc.name, { x: 0.5, y: y, w: 2.3, h: 0.55, fontSize: 12, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(svc.desc, { x: 2.9, y: y, w: 3.7, h: 0.55, fontSize: 11, color: CHARCOAL, valign: "middle", fontFace: FONT_B }); +}); + +s.addText("Tasks (leaves)", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +const tasks = [ + { name: "FollowSpline", desc: "Drives SplineFollower" }, + { name: "FindAndFollowSpline", desc: "Auto-locate + follow" }, + { name: "Patrol", desc: "Cycle PatrolPoints" }, + { name: "FindCover", desc: "Manual + procedural cover" }, + { name: "CoverShootCycle", desc: "Cover → peek → fire cycle" }, + { name: "Attack", desc: "Chase + attack (Melee/Ranged)" }, + { name: "FleeFrom", desc: "Move away from threat" }, +]; +tasks.forEach((task, i) => { + const y = 2.55 + i * 0.58; + s.addShape(pres.ShapeType.roundRect, { x: 7, y: y, w: 2.3, h: 0.45, fill: { color: TERRA }, rectRadius: 0.06 }); + s.addText(task.name, { x: 7, y: y, w: 2.3, h: 0.45, fontSize: 11, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(task.desc, { x: 9.4, y: y, w: 3.5, h: 0.45, fontSize: 10, color: CHARCOAL, valign: "middle", fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 14 — COVER SYSTEM +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Cover System", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Manual CoverPoints + procedural raycast fallback + EQS refinement.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const coverCols = [ + { + title: "Manual CoverPoints", + items: ["Placed by level designer", "Type: Cover or HidingSpot", "Quality score (0–1)", "MaxOccupants, Crouch flag", "Type filter (Any / Civ / Enemy / Protector)"] + }, + { + title: "Procedural", + items: ["Fallback if no manual points", "Raycast sampling around threat", "LOS blockage test", "Advancement bias toward threat"] + }, + { + title: "EQS Refinement", + items: ["OnCircle generator around cover", "LineOfSight filter", "Distance + quality tests", "Optional firing position refine"] + }, +]; +coverCols.forEach((c, i) => { + const x = 0.5 + i * 4.28; + s.addShape(pres.ShapeType.roundRect, { x: x, y: 2.2, w: 4.08, h: 3.1, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.1 }); + s.addText(c.title, { x: x + 0.2, y: 2.3, w: 3.78, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); + s.addShape(pres.ShapeType.rect, { x: x + 0.2, y: 2.72, w: 0.4, h: 0.04, fill: { color: GOLD } }); + s.addText(c.items.map(t => ({ text: t, options: { bullet: true, fontSize: 11 } })), + { x: x + 0.2, y: 2.85, w: 3.78, h: 2.3, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 3 }); +}); + +// Cover cycle state machine +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.55, w: 12.3, h: 1.45, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Cover Cycle State Machine (CombatSubState)", { x: 0.7, y: 5.65, w: 12, h: 0.35, fontSize: 14, bold: true, color: GOLD, fontFace: FONT_H }); + +const subStates = ["Engaging", "AtCover", "MovingToFire", "Peeking", "ReturningToCover", "Advancing"]; +subStates.forEach((sub, i) => { + const x = 0.7 + i * 2.0; + s.addShape(pres.ShapeType.roundRect, { x: x, y: 6.15, w: 1.9, h: 0.7, fill: { color: TERRA_D }, rectRadius: 0.05 }); + s.addText(sub, { x: x, y: 6.15, w: 1.9, h: 0.7, fontSize: 11, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 15 — INTERFACE (IMPLEMENTERS GUIDE) +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("IPS_AI_Behavior_Interface", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("What your Pawn must implement (C++ or Blueprint).", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const ifCats = [ + { + title: "Identity", + items: ["GetBehaviorNPCType()", "SetBehaviorNPCType()", "IsBehaviorHostile()", "SetBehaviorHostile()"] + }, + { + title: "Movement", + items: ["SetBehaviorMovementSpeed()", "GetBehaviorMovementSpeed()", "SetBehaviorCrouch()"] + }, + { + title: "State Feedback", + items: ["OnBehaviorStateChanged()", "IsTargetActorValid()", "GetBehaviorThreatActor()"] + }, + { + title: "Combat", + items: ["BehaviorStartAttack()", "BehaviorStopAttack()", "CanBehaviorAttack()", "GetBehaviorCombatType()"] + }, +]; +ifCats.forEach((c, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.2 + row * 2.4; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 6.0, h: 2.2, fill: { color: TERRA }, rectRadius: 0.1 }); + s.addText(c.title, { x: x + 0.2, y: y + 0.15, w: 5.6, h: 0.4, fontSize: 16, bold: true, color: GOLD, fontFace: FONT_H }); + s.addText(c.items.map(t => ({ text: t, options: { bullet: true, fontSize: 12 } })), + { x: x + 0.2, y: y + 0.6, w: 5.6, h: 1.55, color: SAND, fontFace: "Consolas", paraSpaceAfter: 3 }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 16 — SETUP WORKFLOW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Setup Workflow", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("From zero to a behaving NPC in 6 steps.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const bsteps = [ + { num: "1", title: "Personality Profile", desc: "Create DataAsset — traits, thresholds, DefaultBehaviorTree." }, + { num: "2", title: "Implement Interface", desc: "Pawn: implement IPS_AI_Behavior_Interface (identity, combat, movement)." }, + { num: "3", title: "Add Components", desc: "Pawn: add PersonalityComponent. Optional: Combat, SplineFollower." }, + { num: "4", title: "Behavior Tree", desc: "Branch on BehaviorState. Add services UpdateThreat + EvaluateReaction at root." }, + { num: "5", title: "Set AIController", desc: "Pawn's AIController class = APS_AI_Behavior_AIController." }, + { num: "6", title: "Place World Actors", desc: "Optional: SplinePaths, CoverPoints, SplineNetwork (auto)." }, +]; +bsteps.forEach((step, i) => { + const y = 2.2 + i * 0.78; + s.addShape(pres.ShapeType.ellipse, { x: 0.5, y: y, w: 0.7, h: 0.7, fill: { color: GOLD } }); + s.addText(step.num, { x: 0.5, y: y, w: 0.7, h: 0.7, fontSize: 24, bold: true, color: TERRA, align: "center", valign: "middle", fontFace: FONT_H }); + s.addShape(pres.ShapeType.roundRect, { x: 1.4, y: y, w: 11.4, h: 0.7, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.05 }); + s.addText(step.title, { x: 1.6, y: y + 0.05, w: 3.5, h: 0.3, fontSize: 13, bold: true, color: TERRA, fontFace: FONT_H }); + s.addText(step.desc, { x: 1.6, y: y + 0.35, w: 11.2, h: 0.35, fontSize: 11, color: CHARCOAL, italic: true, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 17 — BLACKBOARD KEYS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Blackboard Keys", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Auto-created by the AIController — use in your BT decorators and tasks.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const bbKeys = [ + { name: "BehaviorState", type: "Enum", desc: "Current state (Idle, Combat, etc.)" }, + { name: "ThreatActor", type: "Object", desc: "Current highest-scored threat" }, + { name: "ThreatLocation", type: "Vector", desc: "Last known threat position" }, + { name: "ThreatLevel", type: "Float", desc: "Perceived threat (0–1+)" }, + { name: "CoverLocation", type: "Vector", desc: "Target cover position" }, + { name: "CoverPoint", type: "Object", desc: "Current CoverPoint actor" }, + { name: "PatrolIndex", type: "Int", desc: "Current patrol waypoint index" }, + { name: "HomeLocation", type: "Vector", desc: "Spawn / home point" }, + { name: "CurrentSpline", type: "Object", desc: "Active SplinePath" }, + { name: "SplineProgress", type: "Float", desc: "Distance along current spline" }, + { name: "CombatSubState", type: "Enum", desc: "Cover cycle sub-state (Peeking, etc.)" }, + { name: "LastKnownTargetPosition", type: "Vector", desc: "LOS-lost target memory" }, + { name: "PreferCover", type: "Bool", desc: "Combat/cover cycle toggle" }, + { name: "ConversationPaused", type: "Bool", desc: "Active dialogue pause flag" }, +]; +bbKeys.forEach((k, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.2 + row * 0.62; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 1.8, h: 0.5, fill: { color: TERRA }, rectRadius: 0.05 }); + s.addText(k.name, { x: x, y: y, w: 1.8, h: 0.5, fontSize: 10, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Consolas" }); + s.addShape(pres.ShapeType.roundRect, { x: x + 1.85, y: y + 0.1, w: 0.6, h: 0.3, fill: { color: GOLD }, rectRadius: 0.05 }); + s.addText(k.type, { x: x + 1.85, y: y + 0.1, w: 0.6, h: 0.3, fontSize: 9, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(k.desc, { x: x + 2.55, y: y, w: 3.7, h: 0.5, fontSize: 10, color: CHARCOAL, valign: "middle", italic: true, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 18 — NETWORKING +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Networking", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Server-authoritative AI, minimal replication for visuals.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Server-only", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "All AI planning & decision-making", options: { bullet: true, fontSize: 13 } }, + { text: "Threat evaluation, state transitions", options: { bullet: true, fontSize: 13 } }, + { text: "Perception stimuli processing", options: { bullet: true, fontSize: 13 } }, + { text: "Path selection, cover choice", options: { bullet: true, fontSize: 13 } }, + { text: "Combat targeting", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.7, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Replicated to clients", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "CurrentState (OnRep fires delegate)", options: { bullet: true, fontSize: 13 } }, + { text: "PerceivedThreatLevel (HUD/debug)", options: { bullet: true, fontSize: 13 } }, + { text: "CurrentTarget (anims/visuals)", options: { bullet: true, fontSize: 13 } }, + { text: "CurrentSpline, bIsFollowing", options: { bullet: true, fontSize: 13 } }, + { text: "OnAttackExecuted (multicast)", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.7, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.4, w: 12.3, h: 1.6, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Character movement syncs via CharacterMovementComponent. Spline follower updates server-side, position replicates naturally. Clients receive enough state for animation and HUD without any AI logic running locally.", { + x: 0.7, y: 5.6, w: 12, h: 1.2, fontSize: 13, color: SAND, italic: true, fontFace: FONT_B, valign: "middle" +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 19 — INTEGRATION WITH CONVAGENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Integration with PS_AI_ConvAgent", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 28, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Optional — behavior and conversation plugins talk via reflection.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +const integrations = [ + { title: "Gaze Bridge", desc: "AIController discovers GazeComponent on the Pawn, sets target during Idle/Patrol (proximity gaze) and forwards current threat during Combat." }, + { title: "Conversation Pause", desc: "When ConvAgent is conversing, AI planning pauses — NPC stops moving, waits. Local VAD detects user speech." }, + { title: "Disguise Reveal", desc: "Enemy NPC with IsBehaviorHostile=false starts as Civilian TeamId. Flips to hostile via interface when triggered by dialogue." }, + { title: "Forced State", desc: "ConvAgent LLM can invoke tools that call ForceState(Scripted) or ForceState(Fleeing) for narrative control." }, +]; +integrations.forEach((item, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.2 + row * 2.3; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 6.0, h: 2.1, fill: { color: SAND }, line: { color: TERRA, width: 1 }, rectRadius: 0.1 }); + s.addText(item.title, { x: x + 0.2, y: y + 0.15, w: 5.6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); + s.addShape(pres.ShapeType.rect, { x: x + 0.2, y: y + 0.58, w: 0.4, h: 0.04, fill: { color: GOLD } }); + s.addText(item.desc, { x: x + 0.2, y: y + 0.7, w: 5.6, h: 1.3, fontSize: 12, color: CHARCOAL, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 20 — DEBUG TOOLS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Debug Tools", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: TERRA, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: GOLD } }); +s.addText("Visualize state, perception, and targeting at runtime.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: CHARCOAL, italic: true, fontFace: FONT_B }); + +s.addText("Per-NPC Debug", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "PersonalityComponent.bDebug — floating text", options: { bullet: true, fontSize: 13 } }, + { text: "Name, NPCType, TeamId, State", options: { bullet: true, fontSize: 13 } }, + { text: "ThreatLevel, ThreatActor", options: { bullet: true, fontSize: 13 } }, + { text: "Hostile, active spline", options: { bullet: true, fontSize: 13 } }, + { text: "SplineFollower debug sphere (green)", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.8, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Global Logging", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: TERRA, fontFace: FONT_H }); +s.addText([ + { text: "CVar: ps.ai.Behavior.Debug 1", options: { bullet: true, fontSize: 13 } }, + { text: "Toggles verbose logs globally", options: { bullet: true, fontSize: 13 } }, + { text: "LogPS_AI_Behavior category", options: { bullet: true, fontSize: 13 } }, + { text: "BTView / AIDebug (Unreal built-in)", options: { bullet: true, fontSize: 13 } }, + { text: "EQS Visualizer for cover queries", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.8, color: CHARCOAL, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.5, w: 12.3, h: 1.5, fill: { color: TERRA }, rectRadius: 0.1 }); +s.addText("Pro tip", { x: 0.7, y: 5.6, w: 12, h: 0.35, fontSize: 14, bold: true, color: GOLD, fontFace: FONT_H }); +s.addText("Enable bDebug only on specific NPCs (or via a debug HUD key). Global debug logs can be overwhelming in crowded scenes. The floating text is cheap but accumulates.", + { x: 0.7, y: 5.95, w: 12, h: 1.0, fontSize: 12, color: SAND, italic: true, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 21 — SUMMARY +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide(); +s.background = { color: TERRA }; +s.addShape(pres.ShapeType.rect, { x: 0, y: 2.5, w: 13.333, h: 0.05, fill: { color: GOLD } }); +s.addText("Summary", { x: 0.6, y: 0.8, w: 12, h: 1.2, fontSize: 54, bold: true, color: WHITE, fontFace: FONT_H }); +s.addText("Complete NPC behavior stack for tactical game AI.", { x: 0.6, y: 2.0, w: 12, h: 0.5, fontSize: 18, color: SAND, italic: true, fontFace: FONT_B }); + +const bsummary = [ + { h: "Personality-driven", t: "Three traits modulate every decision" }, + { h: "Cover-aware", t: "Manual CoverPoints + procedural fallback + EQS" }, + { h: "Spline navigation", t: "Network with junction detection, type filtering" }, + { h: "Perception built-in", t: "Sight + hearing + damage, priority-based threat" }, + { h: "Server-authoritative", t: "Minimal replication, client just animates" }, + { h: "Plugin-friendly", t: "Gaze bridge to ConvAgent, interface-only dependency" }, +]; +bsummary.forEach((item, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.6 + col * 6.2; + const y = 3.0 + row * 1.4; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 5.9, h: 1.2, fill: { color: TERRA_D }, line: { color: GOLD, width: 1 }, rectRadius: 0.1 }); + s.addText(item.h, { x: x + 0.2, y: y + 0.1, w: 5.5, h: 0.4, fontSize: 18, bold: true, color: GOLD, fontFace: FONT_H }); + s.addText(item.t, { x: x + 0.2, y: y + 0.55, w: 5.5, h: 0.6, fontSize: 12, color: SAND, italic: true, fontFace: FONT_B }); +}); + +s.addText("ASTERION • PS_AI_Behavior • 2026", { x: 0.6, y: 6.9, w: 12, h: 0.4, fontSize: 12, color: SAND, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SAVE +// ═══════════════════════════════════════════════════════════════════ +pres.writeFile({ fileName: "PS_AI_Behavior_Documentation.pptx" }) + .then(name => console.log(`Generated: ${name}`)) + .catch(err => { console.error(err); process.exit(1); }); diff --git a/Docs/gen_convagent_doc.js b/Docs/gen_convagent_doc.js new file mode 100644 index 0000000..4d829c8 --- /dev/null +++ b/Docs/gen_convagent_doc.js @@ -0,0 +1,711 @@ +// PS_AI_ConvAgent User Documentation Generator +// Palette: Midnight Executive (navy #1E2761, ice blue #CADCFC, white) + +const pptxgen = require("pptxgenjs"); +const pres = new pptxgen(); + +pres.layout = "LAYOUT_WIDE"; // 13.333 x 7.5 inch + +// ─── Color Palette ───────────────────────────────── +const NAVY = "1E2761"; +const NAVY_DARK = "141B45"; +const ICE = "CADCFC"; +const ICE_DEEP = "7892D6"; +const WHITE = "FFFFFF"; +const GREY = "3A3F5C"; +const LIGHT_GREY= "F5F7FC"; +const ACCENT = "F9A825"; // warm gold accent + +// ─── Font ────────────────────────────────────────── +const FONT_H = "Calibri"; +const FONT_B = "Calibri"; + +// ─── Master slide backgrounds ────────────────────── +pres.defineSlideMaster({ + title: "CONTENT", + background: { color: LIGHT_GREY }, + objects: [ + { rect: { x: 0, y: 0, w: 13.333, h: 0.35, fill: { color: NAVY } } }, + { rect: { x: 0, y: 7.15, w: 13.333, h: 0.35, fill: { color: NAVY } } }, + { text: { + text: "PS_AI_ConvAgent — User Documentation", + options: { x: 0.3, y: 7.18, w: 8, h: 0.3, fontSize: 10, color: ICE, fontFace: FONT_B } + } }, + { text: { + text: "ASTERION", + options: { x: 11.5, y: 7.18, w: 1.5, h: 0.3, fontSize: 10, color: ICE, fontFace: FONT_B, align: "right", bold: true } + } }, + ], +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 1 — TITLE +// ═══════════════════════════════════════════════════════════════════ +let s = pres.addSlide(); +s.background = { color: NAVY }; +s.addShape(pres.ShapeType.rect, { x: 0, y: 3.3, w: 13.333, h: 0.05, fill: { color: ACCENT } }); +s.addText("PS_AI_ConvAgent", { x: 0.6, y: 2.2, w: 12, h: 1.2, fontSize: 60, bold: true, color: WHITE, fontFace: FONT_H }); +s.addText("Conversational AI for MetaHumans in Unreal Engine", { x: 0.6, y: 3.5, w: 12, h: 0.6, fontSize: 22, color: ICE, fontFace: FONT_B, italic: true }); +s.addText("User Documentation", { x: 0.6, y: 4.4, w: 12, h: 0.5, fontSize: 18, color: ICE_DEEP, fontFace: FONT_B }); +s.addText("ElevenLabs • MetaHuman • Listen Server", { x: 0.6, y: 5.2, w: 12, h: 0.4, fontSize: 14, color: ICE_DEEP, fontFace: FONT_B }); +s.addText("ASTERION • 2026", { x: 0.6, y: 6.6, w: 12, h: 0.4, fontSize: 12, color: ICE_DEEP, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 2 — OVERVIEW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Plugin Overview", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); + +s.addText("What it does", { x: 0.5, y: 1.7, w: 6, h: 0.4, fontSize: 18, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "Full conversational AI NPC integration for Unreal Engine", options: { bullet: true, fontSize: 14 } }, + { text: "Real-time voice capture, turn-taking, TTS playback", options: { bullet: true, fontSize: 14 } }, + { text: "Emotion-driven MetaHuman animations (face, body, gaze)", options: { bullet: true, fontSize: 14 } }, + { text: "Multiplayer support with speaker arbitration", options: { bullet: true, fontSize: 14 } }, + { text: "Tool system for LLM-triggered game actions", options: { bullet: true, fontSize: 14 } }, +], { x: 0.5, y: 2.1, w: 6, h: 2.6, color: GREY, fontFace: FONT_B, paraSpaceAfter: 8 }); + +s.addShape(pres.ShapeType.roundRect, { x: 7, y: 1.7, w: 5.8, h: 4.8, fill: { color: NAVY }, rectRadius: 0.1 }); +s.addText("Primary Use Case", { x: 7.2, y: 1.9, w: 5.4, h: 0.4, fontSize: 16, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("Interactive, emotionally expressive voice NPCs that listen to players, respond with contextual answers, express emotion through facial animation and body language, and trigger physical actions based on conversation flow.", { + x: 7.2, y: 2.4, w: 5.4, h: 1.7, fontSize: 13, color: ICE, fontFace: FONT_B, italic: true +}); +s.addText("Key Differentiators", { x: 7.2, y: 4.2, w: 5.4, h: 0.4, fontSize: 16, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText([ + { text: "Full-duplex Server VAD or push-to-talk", options: { bullet: true, fontSize: 12 } }, + { text: "Adaptive pre-buffering & speculative TTS", options: { bullet: true, fontSize: 12 } }, + { text: "Spectral lip sync + artist-driven poses", options: { bullet: true, fontSize: 12 } }, + { text: "Opus codec + distance LOD for multiplayer", options: { bullet: true, fontSize: 12 } }, +], { x: 7.2, y: 4.7, w: 5.4, h: 1.7, color: ICE, fontFace: FONT_B, paraSpaceAfter: 4 }); + +s.addText("\"Drop components on a MetaHuman, configure a few data assets, and talk.\"", { + x: 0.5, y: 5.3, w: 6, h: 0.6, fontSize: 13, color: NAVY, italic: true, fontFace: FONT_B, bold: true +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 3 — ARCHITECTURE DIAGRAM +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Architecture", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); + +s.addText("Component chain on a MetaHuman NPC", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +// Input row +const boxY = 2.4; +const boxH = 1.0; +const boxes = [ + { x: 0.5, label: "Microphone\nCapture", sub: "VAD • 16kHz" }, + { x: 2.6, label: "Interaction\nComponent", sub: "Agent select\n(player side)" }, + { x: 4.7, label: "ElevenLabs\nComponent", sub: "WebSocket\nTurn-taking" }, + { x: 6.8, label: "Lip Sync\nComponent", sub: "Spectral\nFFT → visemes" }, + { x: 8.9, label: "Facial Expr.\nComponent", sub: "Emotion\ncurves" }, + { x: 11.0, label: "Body Expr.\nComponent", sub: "Gesture\nanim blend" }, +]; +boxes.forEach((b, i) => { + s.addShape(pres.ShapeType.roundRect, { x: b.x, y: boxY, w: 2.0, h: boxH, fill: { color: NAVY }, rectRadius: 0.1 }); + s.addText(b.label, { x: b.x, y: boxY + 0.1, w: 2.0, h: 0.5, fontSize: 13, bold: true, color: WHITE, align: "center", fontFace: FONT_H }); + s.addText(b.sub, { x: b.x, y: boxY + 0.58, w: 2.0, h: 0.4, fontSize: 9, color: ICE, align: "center", fontFace: FONT_B }); +}); + +// Arrows between boxes +for (let i = 0; i < boxes.length - 1; i++) { + const ax = boxes[i].x + 2.0; + s.addShape(pres.ShapeType.line, { x: ax, y: boxY + 0.5, w: 0.1, h: 0, line: { color: ACCENT, width: 2 } }); +} + +// Gaze row +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 4.0, w: 2.0, h: boxH, fill: { color: ICE_DEEP }, rectRadius: 0.1 }); +s.addText("Gaze\nComponent", { x: 0.5, y: 4.1, w: 2.0, h: 0.5, fontSize: 13, bold: true, color: WHITE, align: "center", fontFace: FONT_H }); +s.addText("Eyes • Head\n• Body", { x: 0.5, y: 4.58, w: 2.0, h: 0.4, fontSize: 9, color: WHITE, align: "center", fontFace: FONT_B }); + +// AnimGraph pipeline +s.addText("→ AnimGraph (Face + Body)", { x: 2.8, y: 4.2, w: 4.5, h: 0.5, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText("FacialExpression → LipSync | Gaze → BodyExpression", { x: 2.8, y: 4.65, w: 8, h: 0.4, fontSize: 12, color: GREY, italic: true, fontFace: FONT_B }); + +// Project settings layer +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.6, w: 12.3, h: 0.9, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); +s.addText("PROJECT SETTINGS — API Key • Server Region • Global Context Prompt", { x: 0.7, y: 5.75, w: 12, h: 0.3, fontSize: 13, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText("Data Assets: AgentConfig • EmotionPoseMap • LipSyncPoseMap • BodyPoseMap • ActionSet • Tool", { x: 0.7, y: 6.1, w: 12, h: 0.3, fontSize: 11, color: GREY, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 4 — ELEVENLABS COMPONENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("ElevenLabs Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("The core conversation engine — WebSocket, turn-taking, audio pipeline.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Key Properties", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "AgentConfig — identity, voice, tools", options: { bullet: true, fontSize: 12 } }, + { text: "TurnMode — ServerVAD / Client (push-to-talk)", options: { bullet: true, fontSize: 12 } }, + { text: "MicChunkDurationMs (50–250 ms)", options: { bullet: true, fontSize: 12 } }, + { text: "AudioPreBufferMs / bAdaptivePreBuffer", options: { bullet: true, fontSize: 12 } }, + { text: "bAllowInterruption, bPersistentSession", options: { bullet: true, fontSize: 12 } }, + { text: "SoundAttenuation (optional 3D audio)", options: { bullet: true, fontSize: 12 } }, + { text: "AudioLODCullDistance / LipSyncLODDistance", options: { bullet: true, fontSize: 12 } }, +], { x: 0.5, y: 2.55, w: 6, h: 3.6, color: GREY, fontFace: FONT_B, paraSpaceAfter: 4 }); + +s.addText("Key Methods", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "StartConversation() / EndConversation()", options: { bullet: true, fontSize: 12 } }, + { text: "StartListening() / StopListening()", options: { bullet: true, fontSize: 12 } }, + { text: "SendTextMessage() — text without voice", options: { bullet: true, fontSize: 12 } }, + { text: "InterruptAgent() — force stop mid-speech", options: { bullet: true, fontSize: 12 } }, + { text: "ForceDisableConversation(Action) — blend to neutral", options: { bullet: true, fontSize: 12 } }, + { text: "ForceEnableConversation() — re-enable", options: { bullet: true, fontSize: 12 } }, + { text: "FeedExternalAudio() — external mic source", options: { bullet: true, fontSize: 12 } }, +], { x: 7, y: 2.55, w: 6, h: 3.6, color: GREY, fontFace: FONT_B, paraSpaceAfter: 4 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 6.2, w: 12.3, h: 0.75, fill: { color: NAVY }, rectRadius: 0.08 }); +s.addText("Major events: OnAgentConnected • OnAgentTranscript • OnAgentTextResponse • OnAgentStartedSpeaking • OnAgentEmotionChanged • OnAgentActionRequested • OnActiveSpeakerChanged • OnReadyForAction", { x: 0.7, y: 6.3, w: 12, h: 0.55, fontSize: 11, color: ICE, fontFace: FONT_B, italic: true }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 5 — MICROPHONE CAPTURE +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Microphone Capture Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Captures, resamples, and performs local voice activity detection.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Audio Pipeline", { x: 0.5, y: 2.2, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "WASAPI 48kHz stereo float32 input", options: { bullet: true, fontSize: 13 } }, + { text: "Resample to 16kHz mono float", options: { bullet: true, fontSize: 13 } }, + { text: "Convert to int16 LE byte stream", options: { bullet: true, fontSize: 13 } }, + { text: "Delivered via multicast delegate", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.6, w: 6, h: 2.4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 6 }); + +s.addText("Voice Activity Detection", { x: 7, y: 2.2, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "VolumeMultiplier — mic gain", options: { bullet: true, fontSize: 13 } }, + { text: "VoiceActivityThreshold — RMS threshold", options: { bullet: true, fontSize: 13 } }, + { text: "VoiceOnsetTime — debounce on speech start", options: { bullet: true, fontSize: 13 } }, + { text: "VoiceSilenceTime — debounce on end", options: { bullet: true, fontSize: 13 } }, + { text: "OnUserVoiceActivityChanged event", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.6, w: 6, h: 2.4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 6 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.4, w: 12.3, h: 1.4, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); +s.addText("Public API", { x: 0.7, y: 5.5, w: 12, h: 0.3, fontSize: 13, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText("StartCapture() • StopCapture() • IsCapturing()", { x: 0.7, y: 5.85, w: 12, h: 0.3, fontSize: 13, color: GREY, fontFace: "Consolas" }); +s.addText("The component auto-opens the default input device. Output is consumed by ElevenLabsComponent (or InteractionComponent, which relays via Server RPC in networked games).", { x: 0.7, y: 6.2, w: 12, h: 0.55, fontSize: 11, color: GREY, italic: true, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 6 — LIP SYNC +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Lip Sync Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Spectral analysis of agent audio → 15 OVR visemes → ARKit blendshapes.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("How it works", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "FFT on agent audio stream", options: { bullet: true, fontSize: 13 } }, + { text: "Estimates 15 OVR viseme weights", options: { bullet: true, fontSize: 13 } }, + { text: "Maps to ARKit blendshapes (jawOpen, mouthFunnel…)", options: { bullet: true, fontSize: 13 } }, + { text: "Optional: custom PoseMap with artist-crafted poses", options: { bullet: true, fontSize: 13 } }, + { text: "Thread-safe curve output for AnimGraph", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 3.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Key Properties", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "LipSyncStrength — overall intensity", options: { bullet: true, fontSize: 13 } }, + { text: "SmoothingSpeed (35–65) — viseme interp", options: { bullet: true, fontSize: 13 } }, + { text: "SpeechBlendDuration — fade in/out", options: { bullet: true, fontSize: 13 } }, + { text: "EmotionExpressionBlend (0–1) — emotion bleed through mouth", options: { bullet: true, fontSize: 13 } }, + { text: "EnvelopeAttackMs / EnvelopeReleaseMs", options: { bullet: true, fontSize: 13 } }, + { text: "PoseMap — optional artist override", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 3.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 6.2, w: 12.3, h: 0.75, fill: { color: NAVY }, rectRadius: 0.08 }); +s.addText("AnimGraph placement (Face AnimBP): Live Link → FacialExpression → LipSync → mh_arkit_mapping_pose", { x: 0.7, y: 6.3, w: 12, h: 0.55, fontSize: 12, color: ICE, fontFace: FONT_B, italic: true, bold: true }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 7 — FACIAL EXPRESSION +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Facial Expression Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Emotion-driven face animation via real-time AnimSequence sampling.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Design", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "Plays AnimSequences in real-time (looping)", options: { bullet: true, fontSize: 13 } }, + { text: "Extracts emotion curves (eyes, brows, cheeks, mouth mood)", options: { bullet: true, fontSize: 13 } }, + { text: "Injects into AnimGraph via FacialExpression AnimNode", options: { bullet: true, fontSize: 13 } }, + { text: "Lip sync overrides mouth area during speech", options: { bullet: true, fontSize: 13 } }, + { text: "3 intensity levels: Normal / Medium / Extreme", options: { bullet: true, fontSize: 13 } }, + { text: "Crossfades between emotions", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 3.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Properties", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "EmotionPoseMap — data asset of AnimSequences", options: { bullet: true, fontSize: 13 } }, + { text: "ActivationBlendDuration (default 0.5s)", options: { bullet: true, fontSize: 13 } }, + { text: "EmotionBlendDuration — crossfade time", options: { bullet: true, fontSize: 13 } }, + { text: "bActive — auto-managed by conversation", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 7, y: 5.0, w: 5.8, h: 1.5, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); +s.addText("Emotions covered", { x: 7.15, y: 5.1, w: 5.6, h: 0.3, fontSize: 13, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText("Joy • Sadness • Anger • Fear • Surprise • Disgust • Neutral", { x: 7.15, y: 5.45, w: 5.6, h: 0.9, fontSize: 12, color: GREY, italic: true, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 8 — BODY EXPRESSION +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Body Expression Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Upper-body gestures and posture driven by emotion + speaking state.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Animation lists per emotion", { x: 0.5, y: 2.15, w: 6.3, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); + +const animLists = [ + { name: "Idle", desc: "Played while listening (not speaking)" }, + { name: "Normal", desc: "Low-intensity speaking anims" }, + { name: "Medium", desc: "Medium-intensity speaking" }, + { name: "Extreme", desc: "High-intensity speaking" }, +]; +animLists.forEach((a, i) => { + const y = 2.7 + i * 0.75; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 1.5, h: 0.55, fill: { color: NAVY }, rectRadius: 0.05 }); + s.addText(a.name, { x: 0.5, y: y, w: 1.5, h: 0.55, fontSize: 13, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); + s.addText(a.desc, { x: 2.15, y: y + 0.05, w: 4.6, h: 0.45, fontSize: 12, color: GREY, valign: "middle", fontFace: FONT_B }); +}); + +s.addText("Key Properties", { x: 7.2, y: 2.15, w: 5.8, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "BodyPoseMap — emotion → anim lists", options: { bullet: true, fontSize: 13 } }, + { text: "ActivationBlendDuration (0.5s)", options: { bullet: true, fontSize: 13 } }, + { text: "EmotionBlendDuration (1.0s)", options: { bullet: true, fontSize: 13 } }, + { text: "BlendWeight (0–1)", options: { bullet: true, fontSize: 13 } }, +], { x: 7.2, y: 2.55, w: 5.8, h: 2, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("AnimNode behaviour", { x: 7.2, y: 4.7, w: 5.8, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "Override mode, per-bone mask", options: { bullet: true, fontSize: 12 } }, + { text: "Default BlendRootBone = spine_02", options: { bullet: true, fontSize: 12 } }, + { text: "Excludes neck_01 (Gaze handles it)", options: { bullet: true, fontSize: 12 } }, + { text: "Lower body passes through upstream", options: { bullet: true, fontSize: 12 } }, +], { x: 7.2, y: 5.1, w: 5.8, h: 2, color: GREY, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 9 — GAZE +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Gaze Component", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Multi-layer look-at: body • head • eyes.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const layers = [ + { name: "BODY", ratio: "full 360°", desc: "Actor yaw — follows target around the character" }, + { name: "HEAD", ratio: "limited", desc: "Head bone yaw + pitch, clamped" }, + { name: "EYES", ratio: "limited", desc: "ARKit eye curves, fine targeting" }, +]; +layers.forEach((l, i) => { + const y = 2.3 + i * 1.1; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 2.2, h: 0.9, fill: { color: NAVY }, rectRadius: 0.08 }); + s.addText(l.name, { x: 0.5, y: y + 0.05, w: 2.2, h: 0.4, fontSize: 18, bold: true, color: WHITE, align: "center", fontFace: FONT_H }); + s.addText(l.ratio, { x: 0.5, y: y + 0.48, w: 2.2, h: 0.3, fontSize: 11, color: ACCENT, align: "center", italic: true, fontFace: FONT_B }); + s.addText(l.desc, { x: 3.0, y: y + 0.15, w: 5.0, h: 0.7, fontSize: 13, color: GREY, valign: "middle", fontFace: FONT_B }); +}); + +s.addText("Key Properties", { x: 8.5, y: 2.15, w: 4.5, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "TargetActor — who to look at", options: { bullet: true, fontSize: 12 } }, + { text: "MaxHeadYaw / MaxHeadPitch", options: { bullet: true, fontSize: 12 } }, + { text: "MaxEyeHorizontal / MaxEyeVertical", options: { bullet: true, fontSize: 12 } }, + { text: "BodyInterpSpeed / HeadInterpSpeed / EyeInterpSpeed", options: { bullet: true, fontSize: 12 } }, + { text: "HeadAnimationCompensation (0.9)", options: { bullet: true, fontSize: 12 } }, + { text: "EyeAnimationCompensation (0.6)", options: { bullet: true, fontSize: 12 } }, + { text: "BodyDriftCompensation (0.8)", options: { bullet: true, fontSize: 12 } }, + { text: "NeckBoneChain — multi-bone distribution", options: { bullet: true, fontSize: 12 } }, +], { x: 8.5, y: 2.55, w: 4.5, h: 4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 10 — INTERACTION COMPONENT +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Interaction Component (Player)", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 32, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Placed on the player pawn — selects NPCs, routes mic, manages gaze.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Selection Logic", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "Proximity + view cone detection", options: { bullet: true, fontSize: 13 } }, + { text: "MaxInteractionDistance (300 cm default)", options: { bullet: true, fontSize: 13 } }, + { text: "ViewConeHalfAngle (45° default)", options: { bullet: true, fontSize: 13 } }, + { text: "SelectionStickyAngle — hysteresis", options: { bullet: true, fontSize: 13 } }, + { text: "ConversationSwitchDelay — anti-flicker", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 3, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Auto-management", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "bAutoStartConversation — open WS on select", options: { bullet: true, fontSize: 13 } }, + { text: "bAutoManageListening — mic open/close", options: { bullet: true, fontSize: 13 } }, + { text: "bAutoManageGaze — set agent gaze to player", options: { bullet: true, fontSize: 13 } }, + { text: "bAutoPassiveGaze — out-of-range passive tracking", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.8, w: 12.3, h: 1.2, fill: { color: NAVY }, rectRadius: 0.08 }); +s.addText("Events: OnAgentSelected • OnAgentDeselected • OnNoAgentInRange", { x: 0.7, y: 5.95, w: 12, h: 0.3, fontSize: 13, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("Methods: GetSelectedAgent() • ForceSelectAgent() • StartConversationWithSelectedAgent() • SendTextToSelectedAgent() • ClearSelection()", { x: 0.7, y: 6.3, w: 12, h: 0.55, fontSize: 11, color: ICE, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 11 — DATA ASSETS OVERVIEW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Data Assets", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Reusable configuration assets for agent identity, animations, and tools.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const dataAssets = [ + { name: "AgentConfig", desc: "Agent identity, voice, LLM model, tools", color: NAVY }, + { name: "EmotionPoseMap", desc: "Emotion → facial AnimSequences (3 levels)", color: NAVY }, + { name: "LipSyncPoseMap", desc: "15 OVR visemes → mouth poses", color: NAVY }, + { name: "BodyPoseMap", desc: "Emotion → body gesture anim lists", color: NAVY }, + { name: "ActionSet", desc: "Actions the agent can trigger", color: ICE_DEEP }, + { name: "Tool", desc: "Custom LLM tools with parameters", color: ICE_DEEP }, +]; +dataAssets.forEach((d, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.2 + row * 1.5; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 6.0, h: 1.3, fill: { color: d.color }, rectRadius: 0.1 }); + s.addText(d.name, { x: x + 0.2, y: y + 0.2, w: 5.6, h: 0.4, fontSize: 18, bold: true, color: ACCENT, fontFace: FONT_H }); + s.addText(d.desc, { x: x + 0.2, y: y + 0.65, w: 5.6, h: 0.6, fontSize: 12, color: ICE, italic: true, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 12 — AGENT CONFIG DETAILS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("AgentConfig (ElevenLabs)", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Complete agent definition — editable in Content Browser with API buttons.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const configCats = [ + { title: "Identity", items: ["AgentID", "AgentName"] }, + { title: "Voice", items: ["VoiceID / VoiceName", "TTSModelID", "Stability • Similarity • Speed"] }, + { title: "LLM", items: ["LLMModel (gemini-2.5-flash default)", "Language (en default)"] }, + { title: "Behavior", items: ["CharacterPrompt (personality)", "FirstMessage (greeting)", "TurnTimeout, MaxTurns"] }, + { title: "Latency", items: ["TurnEagerness (Eager/Normal/Patient)", "bSpeculativeTurn"] }, + { title: "Tools", items: ["Tools[] array of Tool assets", "ActionSet integration"] }, +]; + +configCats.forEach((c, i) => { + const col = i % 3; + const row = Math.floor(i / 3); + const x = 0.5 + col * 4.15; + const y = 2.2 + row * 2.15; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 3.95, h: 1.95, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); + s.addText(c.title, { x: x + 0.15, y: y + 0.1, w: 3.65, h: 0.35, fontSize: 14, bold: true, color: NAVY, fontFace: FONT_H }); + s.addShape(pres.ShapeType.rect, { x: x + 0.15, y: y + 0.45, w: 0.35, h: 0.04, fill: { color: ACCENT } }); + s.addText(c.items.map(t => ({ text: t, options: { bullet: true, fontSize: 11 } })), + { x: x + 0.15, y: y + 0.55, w: 3.65, h: 1.3, color: GREY, fontFace: FONT_B, paraSpaceAfter: 2 }); +}); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 6.55, w: 12.3, h: 0.45, fill: { color: NAVY }, rectRadius: 0.05 }); +s.addText("Editor: Voice picker • Model picker • LLM picker • Create / Update / Fetch Agent buttons", { x: 0.7, y: 6.6, w: 12, h: 0.35, fontSize: 11, color: ICE, fontFace: FONT_B, italic: true, bold: true }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 13 — POSE MAPS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Pose Maps", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Three pose-map data assets map abstract states → AnimSequences.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +// Emotion +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 2.15, w: 4.0, h: 4.5, fill: { color: NAVY }, rectRadius: 0.1 }); +s.addText("EmotionPoseMap", { x: 0.6, y: 2.3, w: 3.8, h: 0.4, fontSize: 17, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("Emotion → facial AnimSequences\n(3 intensity levels per emotion)", { x: 0.6, y: 2.7, w: 3.8, h: 0.8, fontSize: 11, color: ICE, italic: true, fontFace: FONT_B }); +s.addText([ + { text: "Joy (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Sadness (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Anger (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Fear (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Surprise (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Disgust (N / M / E)", options: { bullet: true, fontSize: 11 } }, + { text: "Neutral (N / M / E)", options: { bullet: true, fontSize: 11 } }, +], { x: 0.7, y: 3.7, w: 3.7, h: 2.8, color: ICE, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// LipSync +s.addShape(pres.ShapeType.roundRect, { x: 4.7, y: 2.15, w: 4.0, h: 4.5, fill: { color: NAVY }, rectRadius: 0.1 }); +s.addText("LipSyncPoseMap", { x: 4.8, y: 2.3, w: 3.8, h: 0.4, fontSize: 17, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("15 OVR visemes →\nphoneme AnimSequences", { x: 4.8, y: 2.7, w: 3.8, h: 0.7, fontSize: 11, color: ICE, italic: true, fontFace: FONT_B }); +s.addText([ + { text: "sil • PP • FF • TH • DD", options: { bullet: true, fontSize: 11 } }, + { text: "kk • CH • SS • nn • RR", options: { bullet: true, fontSize: 11 } }, + { text: "aa • E • ih • oh • ou", options: { bullet: true, fontSize: 11 } }, + { text: "MetaHuman MHF_* recommended", options: { bullet: true, fontSize: 11 } }, + { text: "Shareable across characters", options: { bullet: true, fontSize: 11 } }, +], { x: 4.9, y: 3.5, w: 3.7, h: 2.9, color: ICE, fontFace: FONT_B, paraSpaceAfter: 4 }); + +// Body +s.addShape(pres.ShapeType.roundRect, { x: 8.9, y: 2.15, w: 4.0, h: 4.5, fill: { color: NAVY }, rectRadius: 0.1 }); +s.addText("BodyPoseMap", { x: 9.0, y: 2.3, w: 3.8, h: 0.4, fontSize: 17, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("Emotion → body anim lists\n(Idle / N / M / E per emotion)", { x: 9.0, y: 2.7, w: 3.8, h: 0.8, fontSize: 11, color: ICE, italic: true, fontFace: FONT_B }); +s.addText([ + { text: "Idle: listening animations", options: { bullet: true, fontSize: 11 } }, + { text: "Normal: light speaking", options: { bullet: true, fontSize: 11 } }, + { text: "Medium: expressive speaking", options: { bullet: true, fontSize: 11 } }, + { text: "Extreme: emphatic speaking", options: { bullet: true, fontSize: 11 } }, + { text: "Random selection per loop", options: { bullet: true, fontSize: 11 } }, + { text: "Continuous variety", options: { bullet: true, fontSize: 11 } }, +], { x: 9.0, y: 3.7, w: 3.8, h: 2.8, color: ICE, fontFace: FONT_B, paraSpaceAfter: 3 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 14 — TOOLS & ACTIONSETS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Tools & ActionSets", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("LLM-triggered actions that bridge conversation → gameplay.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Tool asset", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "ToolName — snake_case identifier", options: { bullet: true, fontSize: 13 } }, + { text: "ToolDescription — when LLM should use it", options: { bullet: true, fontSize: 13 } }, + { text: "PromptFragment — appended system prompt", options: { bullet: true, fontSize: 13 } }, + { text: "Parameters[] — typed LLM arguments", options: { bullet: true, fontSize: 13 } }, + { text: "ToolID auto-populated on Create", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.8, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Built-in Tools", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "set_emotion(emotion, intensity)", options: { bullet: true, fontSize: 13 } }, + { text: "perform_action(action) — from ActionSet", options: { bullet: true, fontSize: 13 } }, + { text: "Custom tools — any parameters", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 5.4, w: 12.3, h: 1.6, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); +s.addText("Action flow", { x: 0.7, y: 5.5, w: 12, h: 0.3, fontSize: 14, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText("1. LLM decides to call a tool (e.g. perform_action(\"flee\"))\n2. Plugin fires OnAgentActionRequested(\"flee\")\n3. Game calls ForceDisableConversation(\"flee\") → animations blend to neutral\n4. OnReadyForAction(\"flee\") fires → play gameplay montage\n5. Game calls ForceEnableConversation() when done", { x: 0.7, y: 5.85, w: 12, h: 1.1, fontSize: 11, color: GREY, fontFace: "Consolas" }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 15 — ANIMGRAPH INTEGRATION +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("AnimGraph Integration", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Four AnimNodes auto-discover components — no manual wiring.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +// Face AnimBP chain +s.addText("Face AnimBP", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +const faceChain = [ + { label: "Live Link", color: ICE_DEEP }, + { label: "Facial\nExpression", color: "E88B3E" }, + { label: "Gaze\n(eyes only)", color: "5E7AC7" }, + { label: "Lip Sync", color: "3EB086" }, + { label: "mh_arkit\n_mapping", color: GREY }, +]; +faceChain.forEach((n, i) => { + const x = 0.5 + i * 2.55; + s.addShape(pres.ShapeType.roundRect, { x: x, y: 2.65, w: 2.3, h: 1.0, fill: { color: n.color }, rectRadius: 0.1 }); + s.addText(n.label, { x: x, y: 2.75, w: 2.3, h: 0.8, fontSize: 12, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); +}); + +// Body AnimBP chain +s.addText("Body AnimBP", { x: 0.5, y: 4.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +const bodyChain = [ + { label: "Locomotion\n/ Idle", color: ICE_DEEP }, + { label: "Gaze\n(head rot)", color: "5E7AC7" }, + { label: "Body\nExpression", color: "B85042" }, + { label: "Output Pose", color: GREY }, +]; +bodyChain.forEach((n, i) => { + const x = 0.5 + i * 3.2; + s.addShape(pres.ShapeType.roundRect, { x: x, y: 4.65, w: 2.9, h: 1.0, fill: { color: n.color }, rectRadius: 0.1 }); + s.addText(n.label, { x: x, y: 4.75, w: 2.9, h: 0.8, fontSize: 12, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: FONT_H }); +}); + +s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: 6.15, w: 12.3, h: 0.85, fill: { color: NAVY }, rectRadius: 0.08 }); +s.addText("Why this order?", { x: 0.7, y: 6.2, w: 12, h: 0.3, fontSize: 13, bold: true, color: ACCENT, fontFace: FONT_H }); +s.addText("Emotion curves set mood (brows, eyes, cheeks). Lip sync overrides mouth during speech. Gaze head rotation runs before body expression so it doesn't fight arms.", { x: 0.7, y: 6.55, w: 12, h: 0.4, fontSize: 11, color: ICE, italic: true, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 16 — PROJECT SETTINGS +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Project Settings", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Project Settings → Plugins → PS AI ConvAgent - ElevenLabs", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const settings = [ + { name: "API_Key", desc: "ElevenLabs API key — required for authentication" }, + { name: "ServerRegion", desc: "Global / US / EU / India" }, + { name: "CustomWebSocketURL", desc: "Override WebSocket URL (advanced)" }, + { name: "bVerboseLogging", desc: "Verbose WebSocket logging (development)" }, + { name: "GlobalContextPrompt", desc: "Shared context injected as dynamic variables for all agents" }, +]; + +settings.forEach((setting, i) => { + const y = 2.3 + i * 0.85; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 3.5, h: 0.65, fill: { color: NAVY }, rectRadius: 0.05 }); + s.addText(setting.name, { x: 0.5, y: y, w: 3.5, h: 0.65, fontSize: 13, bold: true, color: ACCENT, align: "center", valign: "middle", fontFace: "Consolas" }); + s.addText(setting.desc, { x: 4.2, y: y + 0.05, w: 8.6, h: 0.55, fontSize: 12, color: GREY, valign: "middle", fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 17 — SETUP WORKFLOW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Setup Workflow", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("From zero to a talking MetaHuman in 5 steps.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const steps = [ + { num: "1", title: "Project Settings", desc: "Enter API_Key, pick ServerRegion." }, + { num: "2", title: "Data Assets", desc: "Create AgentConfig, EmotionPoseMap, LipSyncPoseMap, BodyPoseMap." }, + { num: "3", title: "NPC Components", desc: "Add ElevenLabs + Mic + LipSync + FacialExpr + BodyExpr + Gaze on the MetaHuman." }, + { num: "4", title: "AnimGraphs", desc: "Wire AnimNodes in Face + Body AnimBPs. Components auto-discover." }, + { num: "5", title: "Player Pawn", desc: "Add InteractionComponent. Bind selection events to UI. Play." }, +]; +steps.forEach((step, i) => { + const y = 2.25 + i * 0.9; + s.addShape(pres.ShapeType.ellipse, { x: 0.5, y: y, w: 0.8, h: 0.8, fill: { color: ACCENT } }); + s.addText(step.num, { x: 0.5, y: y, w: 0.8, h: 0.8, fontSize: 28, bold: true, color: NAVY, align: "center", valign: "middle", fontFace: FONT_H }); + s.addShape(pres.ShapeType.roundRect, { x: 1.6, y: y, w: 11.2, h: 0.8, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.05 }); + s.addText(step.title, { x: 1.8, y: y + 0.1, w: 3.5, h: 0.3, fontSize: 14, bold: true, color: NAVY, fontFace: FONT_H }); + s.addText(step.desc, { x: 1.8, y: y + 0.4, w: 11, h: 0.35, fontSize: 11, color: GREY, italic: true, fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 18 — NETWORKING +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Networking & Multiplayer", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 34, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Listen Server model — server owns WebSocket, clients relay via RPCs.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +s.addText("Audio Pipeline", { x: 0.5, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "Client mic → Server RPC (Opus-encoded)", options: { bullet: true, fontSize: 13 } }, + { text: "Server forwards to ElevenLabs WebSocket", options: { bullet: true, fontSize: 13 } }, + { text: "Agent audio → Multicast RPC to all clients", options: { bullet: true, fontSize: 13 } }, + { text: "Clients decode Opus → procedural sound wave", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 2.55, w: 6, h: 2.4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Speaker Arbitration", { x: 7, y: 2.15, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "SpeakerSwitchHysteresis — min silence before switching", options: { bullet: true, fontSize: 13 } }, + { text: "SpeakerIdleTimeout — clear active speaker", options: { bullet: true, fontSize: 13 } }, + { text: "NetActiveSpeakerPawn replicated for gaze", options: { bullet: true, fontSize: 13 } }, + { text: "Only active speaker's audio forwarded to LLM", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 2.55, w: 6, h: 2.4, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Level of Detail (LOD)", { x: 0.5, y: 5.1, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "AudioLODCullDistance — skip audio at distance", options: { bullet: true, fontSize: 13 } }, + { text: "LipSyncLODDistance — skip lip sync at distance", options: { bullet: true, fontSize: 13 } }, + { text: "Active speaker always full quality", options: { bullet: true, fontSize: 13 } }, +], { x: 0.5, y: 5.5, w: 6, h: 1.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +s.addText("Replicated State", { x: 7, y: 5.1, w: 6, h: 0.4, fontSize: 16, bold: true, color: NAVY, fontFace: FONT_H }); +s.addText([ + { text: "bNetIsConversing", options: { bullet: true, fontSize: 13 } }, + { text: "NetConnectedPawns[]", options: { bullet: true, fontSize: 13 } }, + { text: "CurrentEmotion + CurrentEmotionIntensity", options: { bullet: true, fontSize: 13 } }, +], { x: 7, y: 5.5, w: 6, h: 1.5, color: GREY, fontFace: FONT_B, paraSpaceAfter: 5 }); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 19 — FORCE DISABLE FLOW +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("ForceDisableConversation Flow", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 30, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Clean handoff between conversation and gameplay actions.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const flow = [ + { step: "LLM Tool Call", desc: "perform_action(\"flee\")" }, + { step: "OnAgentActionRequested", desc: "Event fires on ElevenLabs component" }, + { step: "ForceDisableConversation", desc: "Blend out face/body/gaze animations" }, + { step: "OnReadyForAction", desc: "All components have reached neutral" }, + { step: "Play Gameplay", desc: "Montage / behavior switch" }, + { step: "ForceEnableConversation", desc: "Resume conversation when done" }, +]; +flow.forEach((f, i) => { + const y = 2.2 + i * 0.75; + s.addShape(pres.ShapeType.roundRect, { x: 0.5, y: y, w: 4, h: 0.6, fill: { color: NAVY }, rectRadius: 0.08 }); + s.addText(f.step, { x: 0.5, y: y, w: 4, h: 0.6, fontSize: 13, bold: true, color: WHITE, align: "center", valign: "middle", fontFace: "Consolas" }); + s.addText("→", { x: 4.6, y: y + 0.05, w: 0.5, h: 0.5, fontSize: 22, color: ACCENT, align: "center", valign: "middle", bold: true, fontFace: FONT_H }); + s.addText(f.desc, { x: 5.2, y: y + 0.05, w: 7.6, h: 0.5, fontSize: 13, color: GREY, italic: true, valign: "middle", fontFace: FONT_B }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 20 — EVENTS CHEAT SHEET +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide({ masterName: "CONTENT" }); +s.addText("Events Cheat Sheet", { x: 0.5, y: 0.6, w: 12, h: 0.8, fontSize: 36, bold: true, color: NAVY, fontFace: FONT_H }); +s.addShape(pres.ShapeType.rect, { x: 0.5, y: 1.45, w: 0.6, h: 0.06, fill: { color: ACCENT } }); +s.addText("Blueprint-assignable delegates on ElevenLabs component.", { x: 0.5, y: 1.65, w: 12, h: 0.4, fontSize: 14, color: GREY, italic: true, fontFace: FONT_B }); + +const eventCols = [ + { + title: "Connection", + items: ["OnAgentConnected", "OnAgentDisconnected", "OnAgentError"] + }, + { + title: "Dialogue", + items: ["OnAgentTranscript", "OnAgentTextResponse", "OnAgentPartialResponse", "OnAgentStartedGenerating"] + }, + { + title: "Audio", + items: ["OnAgentStartedSpeaking", "OnAudioPlaybackStarted", "OnAgentStoppedSpeaking", "OnAgentInterrupted"] + }, + { + title: "State / Actions", + items: ["OnAgentEmotionChanged", "OnAgentActionRequested", "OnAgentClientToolCall", "OnActiveSpeakerChanged", "OnReadyForAction", "OnAgentResponseTimeout"] + }, +]; +eventCols.forEach((c, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.5 + col * 6.3; + const y = 2.15 + row * 2.45; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 6.0, h: 2.25, fill: { color: LIGHT_GREY }, line: { color: NAVY, width: 1 }, rectRadius: 0.08 }); + s.addText(c.title, { x: x + 0.2, y: y + 0.1, w: 5.6, h: 0.3, fontSize: 14, bold: true, color: NAVY, fontFace: FONT_H }); + s.addShape(pres.ShapeType.rect, { x: x + 0.2, y: y + 0.42, w: 0.35, h: 0.04, fill: { color: ACCENT } }); + s.addText(c.items.map(t => ({ text: t, options: { bullet: true, fontSize: 11 } })), + { x: x + 0.2, y: y + 0.52, w: 5.6, h: 1.7, color: GREY, fontFace: "Consolas", paraSpaceAfter: 2 }); +}); + +// ═══════════════════════════════════════════════════════════════════ +// SLIDE 21 — CLOSING / SUMMARY +// ═══════════════════════════════════════════════════════════════════ +s = pres.addSlide(); +s.background = { color: NAVY }; +s.addShape(pres.ShapeType.rect, { x: 0, y: 2.5, w: 13.333, h: 0.05, fill: { color: ACCENT } }); +s.addText("Summary", { x: 0.6, y: 0.8, w: 12, h: 1.2, fontSize: 54, bold: true, color: WHITE, fontFace: FONT_H }); +s.addText("A complete conversational AI stack for Unreal Engine.", { x: 0.6, y: 2.0, w: 12, h: 0.5, fontSize: 18, color: ICE, italic: true, fontFace: FONT_B }); + +const summary = [ + { h: "Real-time", t: "Spectral lip sync, speculative TTS, adaptive pre-buffering" }, + { h: "Expressive", t: "Emotion-driven face/body animation via AnimSequences" }, + { h: "Multiplayer", t: "Listen Server + Opus codec + distance LOD + speaker arbitration" }, + { h: "Data-driven", t: "Reusable PoseMaps, AgentConfigs, Tools, ActionSets" }, + { h: "Bridgeable", t: "Behavior plugin gaze bridge, ForceDisable handoff for gameplay" }, + { h: "BP-friendly", t: "All components blueprintable, rich event system" }, +]; +summary.forEach((item, i) => { + const col = i % 2; + const row = Math.floor(i / 2); + const x = 0.6 + col * 6.2; + const y = 3.0 + row * 1.4; + s.addShape(pres.ShapeType.roundRect, { x: x, y: y, w: 5.9, h: 1.2, fill: { color: NAVY_DARK }, line: { color: ACCENT, width: 1 }, rectRadius: 0.1 }); + s.addText(item.h, { x: x + 0.2, y: y + 0.1, w: 5.5, h: 0.4, fontSize: 18, bold: true, color: ACCENT, fontFace: FONT_H }); + s.addText(item.t, { x: x + 0.2, y: y + 0.55, w: 5.5, h: 0.6, fontSize: 12, color: ICE, italic: true, fontFace: FONT_B }); +}); + +s.addText("ASTERION • PS_AI_ConvAgent • 2026", { x: 0.6, y: 6.9, w: 12, h: 0.4, fontSize: 12, color: ICE_DEEP, fontFace: FONT_B }); + +// ═══════════════════════════════════════════════════════════════════ +// SAVE +// ═══════════════════════════════════════════════════════════════════ +pres.writeFile({ fileName: "PS_AI_ConvAgent_Documentation.pptx" }) + .then(name => console.log(`Generated: ${name}`)) + .catch(err => { console.error(err); process.exit(1); }); diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Private/PS_AI_Behavior_AIController.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Private/PS_AI_Behavior_AIController.cpp index 8e8699d..aa309c1 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Private/PS_AI_Behavior_AIController.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Private/PS_AI_Behavior_AIController.cpp @@ -81,7 +81,12 @@ void APS_AI_Behavior_AIController::OnPossess(APawn* InPawn) SetupBlackboard(); - if (bAutoStartBehavior) + // Read auto-start from PersonalityComponent (defaults to true if no component) + const bool bAutoStart = PersonalityComp + ? PersonalityComp->bAutoStartBehavior + : true; + + if (bAutoStart) { StartBehavior(); } @@ -89,7 +94,7 @@ void APS_AI_Behavior_AIController::OnPossess(APawn* InPawn) { // Stay in Scripted state — no BT, no services, controlled externally SetBehaviorState(EPS_AI_Behavior_State::Scripted); - UE_LOG(LogPS_AI_Behavior, Log, TEXT("[%s] bAutoStartBehavior=false — entering Scripted state."), + UE_LOG(LogPS_AI_Behavior, Log, TEXT("[%s] bAutoStartBehavior=false (from Profile) — entering Scripted state."), *GetName()); } @@ -97,7 +102,7 @@ void APS_AI_Behavior_AIController::OnPossess(APawn* InPawn) TryBindGazeComponent(); UE_LOG(LogPS_AI_Behavior, Log, TEXT("[%s] Possessed Pawn '%s' — TeamId=%d, AutoStart=%d."), - *GetName(), *InPawn->GetName(), TeamId, (int32)bAutoStartBehavior); + *GetName(), *InPawn->GetName(), TeamId, (int32)bAutoStart); } void APS_AI_Behavior_AIController::OnUnPossess() diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_AIController.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_AIController.h index 9081275..450bb80 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_AIController.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_AIController.h @@ -48,7 +48,7 @@ public: uint8 TeamId = FGenericTeamId::NoTeam; /** Set the team ID at runtime. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Team") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Team") void SetTeamId(uint8 NewTeamId); // ─── IGenericTeamAgentInterface (inherited from AAIController) ──── @@ -59,10 +59,6 @@ public: // ─── Configuration ────────────────────────────────────────────────── - /** If false, the Behavior Tree does NOT start on possess. Call StartBehavior() manually. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Behavior") - bool bAutoStartBehavior = true; - /** Behavior Tree to run. If null, uses the Profile's DefaultBehaviorTree. */ UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Behavior") TObjectPtr BehaviorTreeAsset; @@ -78,45 +74,45 @@ public: // ─── Gaze Configuration ──────────────────────────────────────────── /** Detection radius for proximity gaze (cm). NPC glances at nearby actors within this range. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Gaze", meta = (ClampMin = "100.0", ClampMax = "1500.0")) + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Gaze", meta = (ClampMin = "100.0", ClampMax = "1500.0")) float GazeProximityRadius = 400.0f; /** Maximum duration (seconds) the NPC looks at a proximity target before releasing. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Gaze", meta = (ClampMin = "0.5", ClampMax = "30.0")) + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Gaze", meta = (ClampMin = "0.5", ClampMax = "30.0")) float GazeMaxDuration = 3.0f; /** Cooldown (seconds) before re-targeting the same actor after releasing. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Gaze", meta = (ClampMin = "0.0", ClampMax = "30.0")) + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Gaze", meta = (ClampMin = "0.0", ClampMax = "30.0")) float GazeCooldown = 5.0f; /** Enable/disable proximity gaze (NPC glances at nearby actors in Idle/Patrol). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Gaze") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Gaze") bool bEnableProximityGaze = true; // ─── Component Access ─────────────────────────────────────────────── - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") UPS_AI_Behavior_PerceptionComponent* GetBehaviorPerception() const { return BehaviorPerception; } - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") UPS_AI_Behavior_PersonalityComponent* GetPersonalityComponent() const { return PersonalityComp; } // ─── Blackboard Helpers ───────────────────────────────────────────── /** Write the current behavior state to the Blackboard. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Blackboard") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Blackboard") void SetBehaviorState(EPS_AI_Behavior_State NewState); /** Read the current behavior state from the Blackboard. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Blackboard") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Blackboard") EPS_AI_Behavior_State GetBehaviorState() const; /** Start (or restart) the Behavior Tree. If state is Scripted, transitions to Idle. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void StartBehavior(); /** Stop the Behavior Tree and enter Scripted state. NPC stays alive and perceptible. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void StopBehavior(); protected: diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CombatComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CombatComponent.h index 05bb16a..9b10dbf 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CombatComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CombatComponent.h @@ -17,7 +17,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnDamageReceived, float, Damage, A * * Attach to the NPC Pawn alongside PersonalityComponent. */ -UCLASS(ClassGroup = "PS AI Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Combat")) +UCLASS(ClassGroup = "ASTERION|PS_AI_Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Combat")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_CombatComponent : public UActorComponent { GENERATED_BODY() @@ -52,21 +52,21 @@ public: // ─── Delegates ────────────────────────────────────────────────────── /** Fired on ALL machines (server + clients) when an attack is executed. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Combat") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Combat") FOnAttackExecuted OnAttackExecuted; /** Fired on server when damage is received. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Combat") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Combat") FOnDamageReceived OnDamageReceived; // ─── API ──────────────────────────────────────────────────────────── /** Whether the NPC can currently attack (cooldown elapsed). Server-only. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Combat") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Combat") bool CanAttack() const; /** Whether the target is within attack range. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Combat") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Combat") bool IsInAttackRange(AActor* Target) const; /** @@ -74,14 +74,14 @@ public: * cooldown, and multicasts cosmetic event to all clients. * @return True if the attack was executed. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Combat") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Combat") bool ExecuteAttack(AActor* Target); /** * Called when this NPC takes damage. Updates threat perception. * Hook this into the owning Actor's OnTakeAnyDamage. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Combat") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Combat") void NotifyDamageReceived(float Damage, AActor* DamageInstigator); // ─── Replication ──────────────────────────────────────────────────── diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CoverPoint.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CoverPoint.h index d7d2056..b297ef3 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CoverPoint.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_CoverPoint.h @@ -88,23 +88,23 @@ public: // ─── API ──────────────────────────────────────────────────────────── /** Can this point be used by the given NPC type? */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") bool IsAccessibleTo(EPS_AI_Behavior_NPCType NPCType) const; /** Is there room for one more occupant? */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") bool HasRoom() const; /** Try to claim this point for an NPC. Returns true if successful. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") bool Claim(AActor* Occupant); /** Release this point (NPC leaves cover). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") void Release(AActor* Occupant); /** Get the facing direction (forward vector of the actor). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") FVector GetCoverDirection() const; /** @@ -113,11 +113,11 @@ public: * @param ThreatLocation Where the threat is. * @return Combined score 0.0 to 1.0. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") float EvaluateAgainstThreat(const FVector& ThreatLocation) const; /** Enable/disable at runtime (e.g. barricade destroyed). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Cover") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Cover") void SetEnabled(bool bNewEnabled); #if WITH_EDITOR diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Interface.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Interface.h index 6aee683..d3921e9 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Interface.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Interface.h @@ -44,11 +44,11 @@ public: // ─── NPC Type ─────────────────────────────────────────────────────── /** Get this NPC's type (Civilian, Enemy, Protector). */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") EPS_AI_Behavior_NPCType GetBehaviorNPCType() const; /** Set this NPC's type. Called by gameplay logic or plugin actions. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void SetBehaviorNPCType(EPS_AI_Behavior_NPCType NewType); // ─── Hostility ────────────────────────────────────────────────────── @@ -58,14 +58,14 @@ public: * An infiltrated Enemy with IsHostile=false appears as Civilian to the perception system. * When SetHostile(true) is called, the NPC reveals itself and TeamId changes. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") bool IsBehaviorHostile() const; /** * Set hostility state. Typically called by gameplay scripts or ConvAgent actions. * Implementors should update their TeamId accordingly. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void SetBehaviorHostile(bool bNewHostile); // ─── Movement ─────────────────────────────────────────────────────── @@ -80,13 +80,13 @@ public: * * @param NewSpeed Desired walk speed in cm/s. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void SetBehaviorMovementSpeed(float NewSpeed); /** * Get the Pawn's current movement speed (cm/s). */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") float GetBehaviorMovementSpeed() const; /** @@ -98,7 +98,7 @@ public: * @param NewState The new behavioral state. * @param OldState The previous behavioral state. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void OnBehaviorStateChanged(EPS_AI_Behavior_State NewState, EPS_AI_Behavior_State OldState); // ─── Target Validation ────────────────────────────────────────────── @@ -113,7 +113,7 @@ public: * @param TargetActor The actor to validate. * @return True if the actor can still be targeted. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") bool IsTargetActorValid(AActor* TargetActor) const; // ─── Combat ───────────────────────────────────────────────────────── @@ -125,21 +125,21 @@ public: * * @param Target The actor to attack. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void BehaviorStartAttack(AActor* Target); /** * Order the Pawn to stop attacking. * Called when the BT exits the Attack task (state changed, target lost, etc.). */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void BehaviorStopAttack(); /** * Query whether the Pawn can currently attack the target (has ammo, weapon ready, etc.). * If false, the BT will keep the NPC in combat stance but won't call BehaviorStartAttack. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") bool CanBehaviorAttack(AActor* Target) const; // ─── Stance ───────────────────────────────────────────────────────── @@ -151,7 +151,7 @@ public: * * @param bCrouch True = crouch, False = stand up. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") void SetBehaviorCrouch(bool bCrouch); // ─── Combat Style ─────────────────────────────────────────────────── @@ -162,7 +162,7 @@ public: * Melee NPCs rush the target; Ranged NPCs use cover and maintain distance. * Default: Melee. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") EPS_AI_Behavior_CombatType GetBehaviorCombatType() const; // ─── Actor Resolution ────────────────────────────────────────────── @@ -177,6 +177,6 @@ public: * * @return The actor to use as threat source / target. */ - UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "PS AI Behavior") + UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "ASTERION|PS_AI_Behavior") AActor* GetBehaviorThreatActor() const; }; diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PerceptionComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PerceptionComponent.h index 991b2dc..a37f159 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PerceptionComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PerceptionComponent.h @@ -14,7 +14,7 @@ * * Automatically added by PS_AI_Behavior_AIController — you don't need to add it manually. */ -UCLASS(ClassGroup = "PS AI Behavior", meta = (DisplayName = "PS AI Behavior - Perception")) +UCLASS(ClassGroup = "ASTERION|PS_AI_Behavior", meta = (DisplayName = "PS AI Behavior - Perception")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_PerceptionComponent : public UAIPerceptionComponent { GENERATED_BODY() @@ -32,7 +32,7 @@ public: * If empty, uses default [Protector, Player, Civilian]. * @return The most threatening actor, or nullptr if none perceived. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Perception") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Perception") AActor* GetHighestThreatActor(const TArray& TargetPriority); /** Convenience overload — reads priority from the Pawn's PersonalityProfile. */ @@ -42,7 +42,7 @@ public: * Compute an aggregate threat level from all currently perceived hostile stimuli. * Returns 0.0 (no threat) to 1.0+ (extreme danger). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Perception") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Perception") float CalculateThreatLevel(); /** @@ -50,7 +50,7 @@ public: * @param OutLocation Filled with the threat location if any threat exists. * @return True if a threat was found. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Perception") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Perception") bool GetThreatLocation(FVector& OutLocation); /** @@ -82,7 +82,7 @@ protected: * Uses IsPlayerControlled() for Player, IPS_AI_Behavior interface or * PersonalityComponent for NPC type. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Perception") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Perception") static EPS_AI_Behavior_TargetType ClassifyActor(const AActor* Actor); private: diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityComponent.h index eb4fa6f..a8501f4 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityComponent.h @@ -22,7 +22,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnBehaviorStateChanged, EPS_AI_Beh * * Attach to the NPC Pawn/Character. */ -UCLASS(ClassGroup = "PS AI Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Personality")) +UCLASS(ClassGroup = "ASTERION|PS_AI_Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Personality")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_PersonalityComponent : public UActorComponent { GENERATED_BODY() @@ -36,6 +36,14 @@ public: UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Personality") TObjectPtr Profile; + /** + * If false, the Behavior Tree does NOT start on possess. + * Use this for NPCs controlled externally (conversations, cinematics). + * Call StartBehavior() on the AIController to activate manually. + */ + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Personality") + bool bAutoStartBehavior = true; + /** * Master debug toggle for this NPC. * When enabled, draws floating text above the NPC's head with: @@ -73,7 +81,7 @@ public: // ─── Delegates ────────────────────────────────────────────────────── /** Fired when the behavioral state changes (on server AND clients via OnRep). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Personality") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Personality") FOnBehaviorStateChanged OnBehaviorStateChanged; // ─── API ──────────────────────────────────────────────────────────── @@ -82,7 +90,7 @@ public: * Evaluate the NPC's reaction based on current traits and perceived threat. * Returns the recommended behavioral state. Server-only. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") EPS_AI_Behavior_State EvaluateReaction() const; /** @@ -90,23 +98,23 @@ public: * Server-only: state is replicated to clients via OnRep. * @return The new behavioral state. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") EPS_AI_Behavior_State ApplyReaction(); /** Get a runtime trait value (returns 0.5 if undefined). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") float GetTrait(EPS_AI_Behavior_TraitAxis Axis) const; /** Modify a runtime trait by delta, clamped to [0, 1]. Server-only. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") void ModifyTrait(EPS_AI_Behavior_TraitAxis Axis, float Delta); /** Force a specific state (e.g. from conversation agent action). Server-only. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") void ForceState(EPS_AI_Behavior_State NewState); /** Get the NPC type from the interface or profile. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") EPS_AI_Behavior_NPCType GetNPCType() const; /** @@ -114,7 +122,7 @@ public: * Driven by the Combat/Cover cycle timer based on Aggressivity vs Caution. * Used by the IsCoverNeeded BT decorator. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") bool ShouldPreferCover() const { return bPreferCover; } // ─── Replication ──────────────────────────────────────────────────── diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityProfile.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityProfile.h index d23a18b..8e23634 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityProfile.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_PersonalityProfile.h @@ -160,11 +160,11 @@ public: /** * Get the score for a given trait axis. Returns 0.5 if the axis is not defined. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") float GetTrait(EPS_AI_Behavior_TraitAxis Axis) const; /** Get the speed for a given state. Returns DefaultWalkSpeed if state not in SpeedPerState. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Personality") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Personality") float GetSpeedForState(EPS_AI_Behavior_State State) const; /** UPrimaryDataAsset interface */ diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Settings.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Settings.h index 4d42a7b..918a4ab 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Settings.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Settings.h @@ -10,7 +10,7 @@ * Project-wide settings for the PS AI Behavior plugin. * Accessible via Project Settings -> Plugins -> PS AI Behavior. */ -UCLASS(config = Game, defaultconfig, meta = (DisplayName = "PS AI Behavior")) +UCLASS(config = Game, defaultconfig, meta = (DisplayName = "ASTERION|PS_AI_Behavior")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_Settings : public UDeveloperSettings { GENERATED_BODY() diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineFollowerComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineFollowerComponent.h index 60754da..4468eb2 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineFollowerComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineFollowerComponent.h @@ -32,7 +32,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnSplineEndReached, * * Attach to the NPC Pawn. Works with or without the AI Controller. */ -UCLASS(ClassGroup = "PS AI Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Spline Follower")) +UCLASS(ClassGroup = "ASTERION|PS_AI_Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior - Spline Follower")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_SplineFollowerComponent : public UActorComponent { GENERATED_BODY() @@ -109,15 +109,15 @@ public: // ─── Delegates ────────────────────────────────────────────────────── /** Fired when approaching a junction. Use to make custom spline selection. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Spline Follower") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") FOnApproachingJunction OnApproachingJunction; /** Fired when the NPC switches to a different spline. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Spline Follower") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") FOnSplineChanged OnSplineChanged; /** Fired when the NPC reaches the end of a spline (if bReverseAtEnd is false). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI Behavior|Spline Follower") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") FOnSplineEndReached OnSplineEndReached; // ─── API ──────────────────────────────────────────────────────────── @@ -128,24 +128,24 @@ public: * @param bForward Direction of travel. * @return True if successfully started. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") bool StartFollowing(APS_AI_Behavior_SplinePath* Spline, bool bForward = true); /** * Start following the given spline from a specific distance. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") bool StartFollowingAtDistance(APS_AI_Behavior_SplinePath* Spline, float StartDistance, bool bForward = true); /** Stop following the current spline. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") void StopFollowing(); /** Pause/resume without losing state. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") void PauseFollowing(); - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") void ResumeFollowing(); /** @@ -154,15 +154,15 @@ public: * @param DistanceOnNew Distance along the new spline to start from. * @param bNewForward Direction on the new spline. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") void SwitchToSpline(APS_AI_Behavior_SplinePath* NewSpline, float DistanceOnNew, bool bNewForward = true); /** Get the effective walk speed (considering spline override). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") float GetEffectiveSpeed() const; /** Get progress as a 0-1 ratio. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline Follower") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline Follower") float GetProgress() const; protected: diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineNetwork.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineNetwork.h index 9930383..6f42a11 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineNetwork.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplineNetwork.h @@ -35,7 +35,7 @@ public: * Called automatically after world initialization. Can be called again * if splines are added/removed at runtime. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") void RebuildNetwork(); // ─── Queries ──────────────────────────────────────────────────────── @@ -49,7 +49,7 @@ public: * @param OutDistance Distance along the spline to the closest point. * @return True if a spline was found within MaxDistance. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") bool FindClosestSpline(const FVector& WorldLocation, EPS_AI_Behavior_NPCType NPCType, float MaxDistance, APS_AI_Behavior_SplinePath*& OutSpline, float& OutDistance) const; @@ -57,7 +57,7 @@ public: /** * Get all splines of a given category. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") TArray GetSplinesForCategory( EPS_AI_Behavior_NPCType Category) const; @@ -73,7 +73,7 @@ public: * @param CautionScore Optional: NPC's caution trait (0-1). Higher = prefer quieter paths. * @return The chosen spline (could be the same if staying is best). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") APS_AI_Behavior_SplinePath* ChooseSplineAtJunction( APS_AI_Behavior_SplinePath* CurrentSpline, int32 JunctionIndex, EPS_AI_Behavior_NPCType NPCType, @@ -81,11 +81,11 @@ public: float CautionScore = 0.5f) const; /** Total number of splines in the network. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") int32 GetSplineCount() const { return AllSplines.Num(); } /** Total number of junctions detected. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|SplineNetwork") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|SplineNetwork") int32 GetJunctionCount() const { return TotalJunctions; } private: diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplinePath.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplinePath.h index 23f55b4..ddba1df 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplinePath.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_SplinePath.h @@ -94,7 +94,7 @@ public: // ─── API ──────────────────────────────────────────────────────────── /** Can the given NPC type use this spline? */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") bool IsAccessibleTo(EPS_AI_Behavior_NPCType NPCType) const; /** @@ -104,7 +104,7 @@ public: * @param OutWorldPoint World location of the closest point on the spline. * @return Distance from WorldLocation to the closest spline point. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") float GetClosestPointOnSpline(const FVector& WorldLocation, float& OutDistance, FVector& OutWorldPoint) const; @@ -115,24 +115,24 @@ public: * @param bForward Travel direction (true = increasing distance). * @return Array of upcoming junctions. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") TArray GetUpcomingJunctions( float CurrentDistance, float LookAheadDist, bool bForward) const; /** Total spline length. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") float GetSplineLength() const; /** Get world location at a distance along the spline. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") FVector GetWorldLocationAtDistance(float Distance) const; /** Get world rotation at a distance along the spline. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") FRotator GetWorldRotationAtDistance(float Distance) const; /** Get world-space tangent direction at a distance along the spline. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Spline") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Spline") FVector GetWorldDirectionAtDistance(float Distance) const; #if WITH_EDITOR diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Statics.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Statics.h index f65686b..db6007a 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Statics.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_Statics.h @@ -35,7 +35,7 @@ public: * @param Loudness Noise loudness (default 1.0). Scales with HearingRange. * @param MaxRange Override max hearing range (0 = use sense default). */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Perception", + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Perception", meta = (WorldContext = "WorldContext", DefaultToSelf = "Shooter")) static void ReportGunfire(UObject* WorldContext, FVector Location, AActor* Shooter, bool bIsEnemyFire = false, diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_TeamComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_TeamComponent.h index 253e3d0..8848ace 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_TeamComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_Behavior/Source/PS_AI_Behavior/Public/PS_AI_Behavior_TeamComponent.h @@ -21,7 +21,7 @@ * Enemy (Team 2) — Protectors and Civilians react * Protector (Team 3) — Allied with Civilians, hostile to Enemies */ -UCLASS(ClassGroup = "PS AI Behavior", meta = (BlueprintSpawnableComponent, +UCLASS(ClassGroup = "ASTERION|PS_AI_Behavior", meta = (BlueprintSpawnableComponent, DisplayName = "PS AI Behavior Pawn Identity")) class PS_AI_BEHAVIOR_API UPS_AI_Behavior_TeamComponent : public UActorComponent { @@ -31,16 +31,16 @@ public: UPS_AI_Behavior_TeamComponent(); /** Role of this actor in the behavior system. Determines team affiliation. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Team") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Team") EPS_AI_Behavior_NPCType Role = EPS_AI_Behavior_NPCType::Civilian; /** Faction within the same role. Same role + different faction = rivals. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI Behavior|Team", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_Behavior|Team", meta = (ClampMin = "0", ClampMax = "15")) uint8 Faction = 0; /** Change role at runtime. */ - UFUNCTION(BlueprintCallable, Category = "PS AI Behavior|Team") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_Behavior|Team") void SetRole(EPS_AI_Behavior_NPCType NewRole) { Role = NewRole; } /** Returns the TeamId derived from the current Role. */ diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent.h index 9b4b75d..877e6c1 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent.h @@ -36,7 +36,7 @@ public: * Obtain from https://elevenlabs.io – used to authenticate WebSocket connections. * Keep this secret; do not ship with the key hard-coded in a shipping build. */ - UPROPERTY(Config, EditAnywhere, Category = "PS AI ConvAgent|ElevenLabs API") + UPROPERTY(Config, EditAnywhere, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs API") FString API_Key; /** @@ -45,18 +45,18 @@ public: * - US: force US servers (api.us.elevenlabs.io). * - EU / India: Enterprise-only data residency endpoints. */ - UPROPERTY(Config, EditAnywhere, Category = "PS AI ConvAgent|ElevenLabs API") + UPROPERTY(Config, EditAnywhere, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs API") EPS_AI_ConvAgent_ElevenLabsRegion ServerRegion = EPS_AI_ConvAgent_ElevenLabsRegion::Global; /** * Override the ElevenLabs WebSocket URL entirely. Leave empty to use ServerRegion setting. * Example: wss://custom-proxy.example.com/v1/convai/conversation?agent_id=YOUR_ID */ - UPROPERTY(Config, EditAnywhere, AdvancedDisplay, Category = "PS AI ConvAgent|ElevenLabs API") + UPROPERTY(Config, EditAnywhere, AdvancedDisplay, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs API") FString CustomWebSocketURL; /** Log verbose WebSocket messages to the Output Log (useful during development). */ - UPROPERTY(Config, EditAnywhere, AdvancedDisplay, Category = "PS AI ConvAgent|ElevenLabs API") + UPROPERTY(Config, EditAnywhere, AdvancedDisplay, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs API") bool bVerboseLogging = false; /** @@ -65,7 +65,7 @@ public: * Injected at conversation start via dynamic variables — changes take effect * on the next conversation without re-syncing agents. */ - UPROPERTY(Config, EditAnywhere, Category = "PS AI ConvAgent|Global Prompt", + UPROPERTY(Config, EditAnywhere, Category = "ASTERION|PS_AI_ConvAgent|Global Prompt", meta = (MultiLine = "true", ToolTip = "Context prompt shared by all agents.\nDescribe the world, era, common rules.\nChanges take effect on next conversation start (no re-sync needed).")) FString GlobalContextPrompt; diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BlueprintLibrary.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BlueprintLibrary.h index fbe67e7..0982128 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BlueprintLibrary.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BlueprintLibrary.h @@ -24,7 +24,7 @@ public: * This allows per-instance override without modifying the Skeletal Mesh asset. * @param SkelMeshComp The target Skeletal Mesh Component. * @param AnimBPClass The AnimBlueprint class to use as post-process (nullptr to clear). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Utilities", + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Utilities", meta = (DisplayName = "Set Post Process Anim Blueprint")) static void SetPostProcessAnimBlueprint(USkeletalMeshComponent* SkelMeshComp, TSubclassOf AnimBPClass); diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BodyExpressionComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BodyExpressionComponent.h index e4b9312..91bb22b 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BodyExpressionComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_BodyExpressionComponent.h @@ -55,7 +55,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnBodyExpressionChanged, // 4. The component listens to conversation lifecycle + emotion events. // 5. The AnimNode reads GetSnapshot() and blends the upper body pose. // ───────────────────────────────────────────────────────────────────────────── -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Body Expression") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_BodyExpressionComponent : public UActorComponent { @@ -68,28 +68,28 @@ public: /** Body pose map asset containing body animation lists per emotion. * Create a dedicated PS_AI_ConvAgent_BodyPoseMap asset in the Content Browser. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|BodyExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression", meta = (ToolTip = "Body Pose Map asset with animation lists per emotion.\nRight-click Content Browser > Miscellaneous > PS AI ConvAgent Body Pose Map.")) TObjectPtr BodyPoseMap; /** Whether body expressions are currently active (read-only). * Managed automatically: activates on conversation connect, deactivates on disconnect. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|BodyExpression") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression") bool bActive = false; /** How long (seconds) to blend in/out when conversation starts/ends. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|BodyExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression", meta = (ClampMin = "0.05", ClampMax = "3.0")) float ActivationBlendDuration = 0.5f; /** Crossfade duration (seconds) when switching between animations. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|BodyExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression", meta = (ClampMin = "0.1", ClampMax = "3.0", ToolTip = "How long (seconds) to crossfade between animations.\n0.5 = snappy, 1.5 = smooth.")) float EmotionBlendDuration = 1.0f; /** Overall blend weight for body expressions. 1.0 = full, 0.5 = subtle. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|BodyExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression", meta = (ClampMin = "0.0", ClampMax = "1.0", ToolTip = "Overall blend weight for body expressions.\n1.0 = full, 0.5 = subtle.")) float BlendWeight = 1.0f; @@ -97,12 +97,12 @@ public: // ── Debug ──────────────────────────────────────────────────────────────── /** Enable debug logging for this component. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; @@ -117,22 +117,22 @@ public: } /** Get the active emotion. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|BodyExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression") EPS_AI_ConvAgent_Emotion GetActiveEmotion() const { return ActiveEmotion; } /** Get the active emotion intensity. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|BodyExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression") EPS_AI_ConvAgent_EmotionIntensity GetActiveIntensity() const { return ActiveEmotionIntensity; } /** True when the agent is currently speaking (body uses N/M/E lists). */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|BodyExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression") bool IsSpeaking() const { return bIsSpeaking; } // ── Events ─────────────────────────────────────────────────────────────── /** Fired when the body expression changes (emotion + intensity). * Only fires when the emotion actually differs from the previous one. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|BodyExpression|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|BodyExpression|Events") FOnBodyExpressionChanged OnBodyExpressionChanged; /** Current activation blend alpha (0 = fully inactive, 1 = fully active). diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_Definitions.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_Definitions.h index 2271f49..d69ebe8 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_Definitions.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_Definitions.h @@ -91,11 +91,11 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_ConversationInfo_ElevenLabs GENERATED_BODY() /** Unique ID of this conversation session assigned by ElevenLabs. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString ConversationID; /** Agent ID that is responding. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString AgentID; }; @@ -108,15 +108,15 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_TranscriptSegment_ElevenLabs GENERATED_BODY() /** Transcribed text. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString Text; /** "user" or "agent". */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString Speaker; /** Whether this is a final transcript or a tentative (in-progress) one. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool bIsFinal = false; }; @@ -155,15 +155,15 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_ClientToolCall_ElevenLabs GENERATED_BODY() /** Name of the tool the agent wants to invoke (e.g. "set_emotion"). */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString ToolName; /** Unique ID for this tool invocation — must be echoed back in client_tool_result. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString ToolCallId; /** Raw JSON parameters as key-value string pairs. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") TMap Parameters; }; @@ -177,11 +177,11 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_AgentAction_ElevenLabs GENERATED_BODY() /** Action identifier sent by the LLM (e.g. "flee", "draw_weapon"). Keep short, snake_case. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString Name; /** Human-readable description — helps the LLM understand when to use this action. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") FString Description; }; @@ -210,23 +210,23 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_ToolParameter_ElevenLabs /** Parameter identifier (snake_case). Must match the name expected by the client code. * Examples: "emotion", "intensity", "action", "target_name" */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Parameter name (snake_case).\nThe key sent in the tool call JSON.")) FString Name; /** Data type for this parameter. Maps to JSON Schema "type". */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Data type: String, Integer, Number, or Boolean.")) EPS_AI_ConvAgent_ToolParamType Type = EPS_AI_ConvAgent_ToolParamType::String; /** Whether this parameter is required in the tool call. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "If true, the LLM must provide this parameter.")) bool bRequired = true; /** Description passed to the LLM explaining what this parameter is * and how to extract or determine its value from the conversation. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (MultiLine = "true", ToolTip = "LLM prompt describing this parameter.\nGuides the LLM on what value to provide.")) FString Description; @@ -234,7 +234,7 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_ToolParameter_ElevenLabs /** Optional predefined values the LLM can choose from. * If empty, the LLM can use any value of the specified type. * Examples: ["joy","sadness","anger"] for emotion, ["low","medium","high"] for intensity. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Predefined enum values (optional).\nIf set, the LLM must choose from these.")) TArray EnumValues; }; diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_ElevenLabsComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_ElevenLabsComponent.h index 6651248..66ba3ac 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_ElevenLabsComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_ElevenLabsComponent.h @@ -139,7 +139,7 @@ DECLARE_MULTICAST_DELEGATE_OneParam(FOnAgentAudioData, const TArray& /*PC // 4. React to events (OnAgentTranscript, OnAgentTextResponse, etc.) in Blueprint. // 5. Call EndConversation() when done. // ───────────────────────────────────────────────────────────────────────────── -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent - ElevenLabs Conv") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_ElevenLabsComponent : public UActorComponent { @@ -153,18 +153,18 @@ public: /** Agent configuration data asset. * When set, the AgentID is resolved from this asset at conversation start. * Create one via Content Browser → right-click → Miscellaneous → PS AI ConvAgent Agent Config. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Agent configuration data asset.\nOverrides the AgentID string below when set.")) TObjectPtr AgentConfig; /** ElevenLabs Agent ID used for this conversation. Leave empty to use the default from Project Settings > PS AI ConvAgent - ElevenLabs. * Overridden by AgentConfig if set. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "ElevenLabs Agent ID. Leave empty to use the project default from Project Settings.\nOverridden by AgentConfig if set.")) FString AgentID; /** How turn-taking is managed between the user and the agent.\n- Server VAD (recommended): ElevenLabs automatically detects when the user stops speaking.\n- Client Controlled: You manually call StartListening/StopListening (push-to-talk with a key). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Turn-taking mode.\n- Server VAD: ElevenLabs detects end-of-speech automatically (hands-free).\n- Client Controlled: You call StartListening/StopListening manually (push-to-talk).")) EPS_AI_ConvAgent_TurnMode_ElevenLabs TurnMode = EPS_AI_ConvAgent_TurnMode_ElevenLabs::Server; @@ -174,38 +174,38 @@ public: * The agent remembers the full conversation context between interactions. * When false (ephemeral), each StartConversation opens a fresh WebSocket session * and EndConversation closes it. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Keep the WebSocket open across conversation cycles.\n- True: agent remembers the full conversation between interactions.\n- False: each StartConversation opens a new session.")) bool bPersistentSession = true; /** Automatically open the microphone as soon as the WebSocket connection is established. Only applies in Server VAD mode. In Client (push-to-talk) mode, you must call StartListening manually. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Auto-open the microphone when the conversation starts.\nOnly applies in Server VAD mode. In push-to-talk mode, call StartListening() manually.")) bool bAutoStartListening = true; /** How many milliseconds of microphone audio to accumulate before sending a chunk to ElevenLabs. Lower values reduce latency but may degrade voice detection accuracy. Higher values are more reliable but add delay. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Latency", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Latency", meta = (ClampMin = "20", ClampMax = "500", ToolTip = "Mic audio chunk duration sent to ElevenLabs.\n- 50-80ms: lower latency, less reliable voice detection.\n- 100ms (default): good balance.\n- 150-250ms: more reliable, higher latency.")) int32 MicChunkDurationMs = 100; /** Allow the user to interrupt the agent while it is speaking.\n- In Server VAD mode: the microphone stays open during agent speech and the server detects interruptions automatically.\n- In Client (push-to-talk) mode: pressing the talk key while the agent speaks sends an interrupt signal.\n- When disabled: the user must wait for the agent to finish speaking before talking. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ToolTip = "Allow the user to interrupt the agent while it speaks.\n- Server VAD: mic stays open, server detects user voice automatically.\n- Push-to-talk: pressing the talk key interrupts the agent.\n- Disabled: user must wait for the agent to finish.")) bool bAllowInterruption = true; /** Enable the OnAgentTranscript event, which provides real-time speech-to-text of what the user is saying. Disable if you don't need to display user speech to reduce processing overhead. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fire OnAgentTranscript with real-time speech-to-text of user speech.\nDisable if you don't need to display what the user said.")) bool bEnableUserTranscript = true; /** Enable the OnAgentTextResponse event, which provides the agent's complete text response once fully generated. Disable if you only need the audio output. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fire OnAgentTextResponse with the agent's complete text once fully generated.\nDisable if you only need the audio output.")) bool bEnableAgentTextResponse = true; /** Enable the OnAgentPartialResponse event, which streams the agent's text word-by-word as the LLM generates it. Use this for real-time subtitles that appear while the agent speaks, rather than waiting for the full response. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fire OnAgentPartialResponse with streaming text fragments as the LLM generates them.\nIdeal for real-time subtitles. Each event gives one text chunk, not the accumulated text.")) bool bEnableAgentPartialResponse = false; @@ -214,7 +214,7 @@ public: * When adaptive mode is on, the system starts here and can only decrease * (never increase) as it measures that chunks arrive fast enough. * Set to 0 to disable pre-buffering entirely. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Latency", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Latency", meta = (ClampMin = "0", ClampMax = "4000", ToolTip = "Pre-buffer delay (ms) — your safe 'worst case' value.\nAdaptive mode can only decrease from here, never increase.\nSet 0 to disable pre-buffering entirely.")) int32 AudioPreBufferMs = 300; @@ -223,13 +223,13 @@ public: * lowers the pre-buffer when TTS chunks arrive fast enough. * The system can only decrease from AudioPreBufferMs — never increase. * Resets to AudioPreBufferMs at the start of each conversation. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Latency", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Latency", meta = (EditCondition = "AudioPreBufferMs > 0", ToolTip = "Automatically lower pre-buffer when connection is good.\nCan only decrease, never increase beyond AudioPreBufferMs.\nResets each conversation.")) bool bAdaptivePreBuffer = true; /** Safety timeout: if the server does not start generating a response within this many seconds after the user stops speaking, fire OnAgentResponseTimeout. Set to 0 to disable. A normal response starts within 0.1-0.8s. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ClampMin = "0.0", ToolTip = "Seconds to wait for a server response after the user stops speaking.\nFires OnAgentResponseTimeout if exceeded. Normal latency is 0.1-0.8s.\nSet to 0 to disable. Default: 10s.")) float ResponseTimeoutSeconds = 10.0f; @@ -237,7 +237,7 @@ public: /** Maximum auto-reconnection attempts on unexpected WebSocket disconnect. * Uses exponential backoff (1s, 2s, 4s, ... up to 30s). * Set to 0 to disable auto-reconnection. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs", meta = (ClampMin = "0", ToolTip = "Auto-reconnect attempts on unexpected disconnect.\n0 = disabled. Uses exponential backoff.")) int32 MaxReconnectAttempts = 5; @@ -248,7 +248,7 @@ public: * When set, the agent's audio playback will be spatialized in 3D — volume * and panning change based on distance and direction from the listener. * Leave null for non-spatialized (2D) audio (default, same as before). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|ElevenLabs|Audio", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Audio", meta = (ToolTip = "Sound attenuation for 3D spatialized audio.\nLeave null for non-spatialized (2D) playback.")) USoundAttenuation* SoundAttenuation = nullptr; @@ -256,104 +256,104 @@ public: /** Enable debug logging for this component. * When false, only key events (init, errors, state changes) are logged. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; /** Show a separate latency debug HUD with detailed per-turn timing breakdown. * Independent from bDebug — can be enabled alone via CVar ps.ai.ConvAgent.Debug.Latency. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebugLatency = false; // ── Events ──────────────────────────────────────────────────────────────── /** Fired when the WebSocket connection is established and the conversation session is ready. Provides the ConversationID and AgentID. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the connection to ElevenLabs is established and the conversation is ready to begin.")) FOnAgentConnected OnAgentConnected; /** Fired when the WebSocket connection is closed (gracefully or due to an error). Provides the status code and reason. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the connection to ElevenLabs is closed. Check StatusCode and Reason for details.")) FOnAgentDisconnected OnAgentDisconnected; /** Fired on any connection or protocol error. The error message describes what went wrong. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires on connection or protocol errors. The ErrorMessage describes the issue.")) FOnAgentError OnAgentError; /** Fired with real-time speech-to-text of the user's voice. Includes both tentative (in-progress) and final transcripts. Requires bEnableUserTranscript to be true. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Real-time speech-to-text of the user's voice.\nIncludes tentative and final transcripts. Enable with bEnableUserTranscript.")) FOnAgentTranscript OnAgentTranscript; /** Fired once when the agent's complete text response is available. This is the full text that corresponds to the audio the agent speaks. Requires bEnableAgentTextResponse to be true. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "The agent's complete text response (matches the spoken audio).\nFires once when the full text is ready. Enable with bEnableAgentTextResponse.")) FOnAgentTextResponse OnAgentTextResponse; /** Fired repeatedly as the LLM generates text, providing one word/fragment at a time. Use for real-time subtitles. Each call gives a new fragment, NOT the accumulated text. Requires bEnableAgentPartialResponse to be true. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Streaming text fragments as the LLM generates them (word by word).\nIdeal for real-time subtitles. Enable with bEnableAgentPartialResponse.")) FOnAgentPartialResponse OnAgentPartialResponse; /** Fired when the agent begins playing audio (first audio chunk received). Use this to trigger speech animations or UI indicators. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the agent starts speaking (first audio chunk). Use for lip-sync or UI feedback.")) FOnAgentStartedSpeaking OnAgentStartedSpeaking; /** Fired when audio playback actually starts — AFTER any pre-buffering delay. * Unlike OnAgentStartedSpeaking (first chunk arrival), this fires when audio is audible. * Use this for body/gesture animations that should be synced with audible speech. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when audio playback actually starts (after pre-buffering).\nSynced with audible speech. Use for body animations.")) FOnAudioPlaybackStarted OnAudioPlaybackStarted; /** Fired when the agent finishes playing all audio. Use this to re-open the microphone (in Server VAD mode without interruption) or update UI. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the agent finishes speaking. Use to re-open the mic or update UI.")) FOnAgentStoppedSpeaking OnAgentStoppedSpeaking; /** Fired when the agent's speech is interrupted (either by the user speaking over it, or by a manual InterruptAgent call). The audio playback is automatically stopped. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the agent is interrupted mid-speech. Audio is automatically stopped.")) FOnAgentInterrupted OnAgentInterrupted; /** Fired when the server starts generating a response (before any audio arrives). Use this for "thinking..." UI feedback. In push-to-talk mode, the microphone is automatically closed when this fires. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the server starts generating (before audio arrives).\nUse for 'thinking...' UI. Mic is auto-closed in push-to-talk mode.")) FOnAgentStartedGenerating OnAgentStartedGenerating; /** Fired if the server does not start generating a response within ResponseTimeoutSeconds after the user stops speaking. Use this to show a "try again" message or automatically re-open the microphone. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires if the server doesn't respond within ResponseTimeoutSeconds.\nUse to show 'try again' or re-open the mic automatically.")) FOnAgentResponseTimeout OnAgentResponseTimeout; /** Fired when the agent changes emotion via the "set_emotion" client tool. The emotion is set BEFORE the corresponding audio arrives, giving you time to smoothly blend facial expressions. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the agent sets an emotion (joy, sadness, surprise, fear, anger, disgust).\nDriven by the 'set_emotion' client tool. Arrives before the audio.")) FOnAgentEmotionChanged OnAgentEmotionChanged; /** Fired when the LLM triggers a perform_action tool call. * ActionName is the identifier from the ActionSet (e.g. "flee", "draw_weapon"). * Handle this in Blueprint to play animations, trigger AI behavior, etc. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the agent triggers a physical action.\nActionName matches the Name field from the ActionSet Data Asset.")) FOnAgentActionRequested OnAgentActionRequested; /** Fired for client tool calls that are NOT automatically handled (i.e. not "set_emotion", not "perform_action"). You must call GetWebSocketProxy()->SendClientToolResult() to respond. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires for custom client tool calls (not set_emotion, not perform_action).\nYou must respond via GetWebSocketProxy()->SendClientToolResult().")) FOnAgentClientToolCall OnAgentClientToolCall; /** Fired when the active speaker changes in a multi-player shared conversation. * NewSpeaker is null when no one is speaking (idle timeout). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when the speaking player changes.\nNewSpeaker is null when no one is speaking.")) FOnActiveSpeakerChanged OnActiveSpeakerChanged; @@ -361,26 +361,26 @@ public: * components back to neutral. The NPC is fully idle and the game can start * the physical action (flee, draw weapon, etc.). * Call ForceEnableConversation() later to allow conversation again. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when all animation components have returned to neutral after ForceDisableConversation().\nThe agent is ready for a game action.")) FOnReadyForAction OnReadyForAction; /** Fired when this agent starts passively tracking a nearby player (head/eyes gaze). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when this agent starts passively tracking a nearby player.\nTriggered by proximity awareness — the agent is not selected for conversation.")) FOnAgentPassiveGazeStarted OnPassiveGazeStarted; /** Fired when this agent stops passively tracking a player (left range or selected). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events", meta = (ToolTip = "Fires when this agent stops passively tracking a player.\nThe player left range or selected this agent for active conversation.")) FOnAgentPassiveGazeStopped OnPassiveGazeStopped; /** The current emotion of the agent, as set by the "set_emotion" client tool. Defaults to Neutral. */ - UPROPERTY(ReplicatedUsing = OnRep_Emotion, BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(ReplicatedUsing = OnRep_Emotion, BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") EPS_AI_ConvAgent_Emotion CurrentEmotion = EPS_AI_ConvAgent_Emotion::Neutral; /** The current emotion intensity. Defaults to Medium. */ - UPROPERTY(ReplicatedUsing = OnRep_Emotion, BlueprintReadOnly, Category = "PS AI ConvAgent|ElevenLabs") + UPROPERTY(ReplicatedUsing = OnRep_Emotion, BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") EPS_AI_ConvAgent_EmotionIntensity CurrentEmotionIntensity = EPS_AI_ConvAgent_EmotionIntensity::Medium; // ── Raw audio data (C++ only, used by LipSync component) ──────────────── @@ -392,26 +392,26 @@ public: /** True when one or more players are in conversation with this NPC. * Replicated to all clients for UI feedback, gaze, LOD, etc. */ - UPROPERTY(ReplicatedUsing = OnRep_ConversationState, BlueprintReadOnly, Category = "PS AI ConvAgent|Network") + UPROPERTY(ReplicatedUsing = OnRep_ConversationState, BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|Network") bool bNetIsConversing = false; /** All player pawns currently in conversation with this NPC. * Multiple players can share the same agent — audio is routed via speaker arbitration. * Replicated to ALL clients for gaze target and LOD distance checks. */ - UPROPERTY(ReplicatedUsing = OnRep_ConversationState, BlueprintReadOnly, Category = "PS AI ConvAgent|Network") + UPROPERTY(ReplicatedUsing = OnRep_ConversationState, BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|Network") TArray> NetConnectedPawns; /** The player currently speaking (active audio sender). Null if no one is speaking. * Used by GazeComponent for target switching — the NPC looks at whoever is talking. * Replicated to ALL clients so gaze updates everywhere. */ - UPROPERTY(ReplicatedUsing = OnRep_ActiveSpeaker, BlueprintReadOnly, Category = "PS AI ConvAgent|Network") + UPROPERTY(ReplicatedUsing = OnRep_ActiveSpeaker, BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|Network") TObjectPtr NetActiveSpeakerPawn = nullptr; // ── Multi-player speaker arbitration (server only) ────────────────────── /** Minimum seconds of silence from the current speaker before allowing a speaker switch. * Prevents rapid ping-pong switching when both players make brief sounds. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Network|MultiPlayer", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Network|MultiPlayer", meta = (ClampMin = "0.0", ClampMax = "5.0", ToolTip = "Minimum silence from current speaker before switching to another.\nPrevents rapid gaze flip-flop.")) float SpeakerSwitchHysteresis = 0.3f; @@ -419,7 +419,7 @@ public: /** Seconds after last speech before the active speaker is cleared. * When cleared, gaze returns to the last speaker position (or closest connected player). * Set to 0 to never clear (last speaker stays active indefinitely). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Network|MultiPlayer", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Network|MultiPlayer", meta = (ClampMin = "0.0", ToolTip = "Seconds of silence before clearing the active speaker.\n0 = last speaker stays active indefinitely.")) float SpeakerIdleTimeout = 3.0f; @@ -428,14 +428,14 @@ public: /** Distance (cm) beyond which remote clients stop receiving agent audio entirely. * The speaking player always receives full audio regardless of distance. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Network|LOD", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Network|LOD", meta = (ClampMin = "0", ToolTip = "Distance beyond which audio is culled for non-speaking players. 0 = no cull.")) float AudioLODCullDistance = 3000.f; /** Distance (cm) beyond which remote clients skip lip-sync / emotion processing. * Audio still plays (if within AudioLODCullDistance) but without facial animation. * The speaking player always gets full lip-sync regardless of distance. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Network|LOD", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Network|LOD", meta = (ClampMin = "0", ToolTip = "Distance beyond which lip-sync is skipped for non-speaking players. 0 = no LOD.")) float LipSyncLODDistance = 1500.f; @@ -514,25 +514,25 @@ public: * Open the WebSocket connection and start the conversation. * If bAutoStartListening is true, microphone capture also starts once connected. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void StartConversation(); /** Close the WebSocket and stop all audio. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void EndConversation(); /** * Start capturing microphone audio and streaming it to ElevenLabs. * In Client turn mode, also sends a UserTurnStart signal. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void StartListening(); /** * Stop capturing microphone audio. * In Client turn mode, also sends a UserTurnEnd signal. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void StopListening(); /** @@ -540,11 +540,11 @@ public: * The agent will respond with audio and text just as if it heard you speak. * Useful for testing in the Editor or for text-based interaction. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendTextMessage(const FString& Text); /** Interrupt the agent's current utterance. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void InterruptAgent(); /** @@ -565,7 +565,7 @@ public: * * @param ActionName The action to perform once neutral (passed through to OnReadyForAction). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void ForceDisableConversation(const FString& ActionName); /** @@ -573,7 +573,7 @@ public: * Clears the disabled flag so the InteractionComponent can auto-start * a new conversation on the next tick (if the player is still looking). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void ForceEnableConversation(); /** @@ -583,7 +583,7 @@ public: * The component must be connected and listening (StartListening called) for audio to be sent. * @param FloatPCM Float32 samples, 16000 Hz mono (same format as MicrophoneCaptureComponent output). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void FeedExternalAudio(const TArray& FloatPCM); /** Receive mic audio from a specific player with speaker arbitration. @@ -592,13 +592,13 @@ public: // ── State queries ───────────────────────────────────────────────────────── - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsConnected() const; - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsListening() const { return bIsListening; } - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsAgentSpeaking() const { return bAgentSpeaking; } /** True when the agent is speaking OR the server hasn't confirmed the full response yet. @@ -606,21 +606,21 @@ public: * produce more audio (e.g. during TTS inter-batch gaps). */ bool IsAgentSpeakingOrPending() const { return bAgentSpeaking || (bAgentGenerating && !bAgentResponseReceived); } - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") const FPS_AI_ConvAgent_ConversationInfo_ElevenLabs& GetConversationInfo() const; /** True while conversation is force-disabled (ForceDisableConversation was called). * While disabled, StartConversation and ServerJoinConversation are blocked. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsConversationDisabled() const { return bConversationDisabledByAction; } /** True while audio is being pre-buffered (playback hasn't started yet). * Used by the LipSync component to pause viseme queue consumption. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsPreBuffering() const { return bPreBuffering; } /** Access the underlying WebSocket proxy (advanced use). */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") UPS_AI_ConvAgent_WebSocket_ElevenLabsProxy* GetWebSocketProxy() const { return WebSocketProxy; } // ───────────────────────────────────────────────────────────────────────── diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_FacialExpressionComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_FacialExpressionComponent.h index 5cfbe69..93d5173 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_FacialExpressionComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_FacialExpressionComponent.h @@ -35,7 +35,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnExpressionChanged, // 4. Emotion animations crossfade smoothly (configurable duration). // 5. The AnimNode reads GetCurrentEmotionCurves() and injects them into the pose. // ───────────────────────────────────────────────────────────────────────────── -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Facial Expression") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_FacialExpressionComponent : public UActorComponent { @@ -48,23 +48,23 @@ public: /** Emotion pose map asset containing emotion AnimSequences (Normal / Medium / Extreme per emotion). * Create a dedicated PS_AI_ConvAgent_EmotionPoseMap asset in the Content Browser. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|FacialExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression", meta = (ToolTip = "Dedicated Emotion Pose Map asset.\nRight-click Content Browser → Miscellaneous → PS AI ConvAgent Emotion Pose Map.")) TObjectPtr EmotionPoseMap; /** Whether facial expressions are currently active (read-only). * Managed automatically: activates on conversation connect, deactivates on disconnect. * The underlying emotion playback keeps running so reactivation is seamless. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|FacialExpression") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression") bool bActive = true; /** How long (seconds) to blend in/out when bActive changes. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|FacialExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression", meta = (ClampMin = "0.05", ClampMax = "3.0")) float ActivationBlendDuration = 0.5f; /** Emotion crossfade duration in seconds. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|FacialExpression", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression", meta = (ClampMin = "0.1", ClampMax = "3.0", ToolTip = "How long (seconds) to crossfade between emotions.\n0.5 = snappy, 1.5 = smooth.")) float EmotionBlendDuration = 0.5f; @@ -73,12 +73,12 @@ public: /** Enable debug logging for this component. * When false, only key events (init, errors, state changes) are logged. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; @@ -86,7 +86,7 @@ public: /** Get the current emotion curves evaluated from the playing AnimSequence. * Returns a COPY — safe to call from any thread (AnimNode worker thread). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|FacialExpression") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression") TMap GetCurrentEmotionCurves() const { FScopeLock Lock(&EmotionCurveLock); @@ -94,15 +94,15 @@ public: } /** Get the active emotion. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|FacialExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression") EPS_AI_ConvAgent_Emotion GetActiveEmotion() const { return ActiveEmotion; } /** Get the active emotion intensity. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|FacialExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression") EPS_AI_ConvAgent_EmotionIntensity GetActiveIntensity() const { return ActiveEmotionIntensity; } /** Check if a curve name belongs to the mouth area (overridden by lip sync). */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|FacialExpression") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression") static bool IsMouthCurve(const FName& CurveName); // ── Events ─────────────────────────────────────────────────────────────── @@ -111,7 +111,7 @@ public: * Subscribe in Blueprints to react to expression changes (trigger animations, * particles, sounds, etc.). Only fires when the emotion actually differs * from the previous one. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|FacialExpression|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|FacialExpression|Events") FOnExpressionChanged OnExpressionChanged; /** Current activation blend alpha (0 = fully inactive, 1 = fully active). diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_GazeComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_GazeComponent.h index 22f5fe2..c22c5f4 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_GazeComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_GazeComponent.h @@ -58,7 +58,7 @@ struct PS_AI_CONVAGENT_API FPS_AI_ConvAgent_NeckBoneEntry // 5. Set TargetOffset for actors without a skeleton (e.g. (0,0,160) for // eye-level on a simple actor). // ───────────────────────────────────────────────────────────────────────────── -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Gaze") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_GazeComponent : public UActorComponent { @@ -71,24 +71,24 @@ public: /** The actor to look at. Can be any actor (player, prop, etc.). * Set to null to smoothly return to neutral. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ToolTip = "Target actor to look at.\nSet to null to return to neutral.")) TObjectPtr TargetActor; /** When false, all gaze outputs smoothly blend to neutral (passthrough). * The underlying tracking keeps running so reactivation is seamless. * Managed automatically: activates on conversation connect, deactivates on disconnect. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|Gaze") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|Gaze") bool bActive = true; /** How long (seconds) to blend in/out when bActive changes. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0.05", ClampMax = "3.0")) float ActivationBlendDuration = 0.5f; /** When false, body rotation is frozen — only head and eyes track the target. * Useful to have the agent notice the player (eyes+head) before fully engaging (body). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ToolTip = "Enable body rotation toward the target.\nWhen false, only head and eyes track.")) bool bEnableBodyTracking = true; @@ -96,7 +96,7 @@ public: * When enabled, TargetOffset is ignored and the agent looks at the midpoint * between the target pawn's eye bones. * Fallback chain: eye bones → head bone → PawnViewLocation → FallbackEyeHeight. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ToolTip = "Auto-target the pawn's eye bones for eye contact.\nFallback: eye bones > head bone > PawnViewLocation > FallbackEyeHeight.")) bool bAutoTargetEyes = true; @@ -104,7 +104,7 @@ public: * AND the target is not a Pawn. For Pawns without skeleton, GetPawnViewLocation() * is used instead (accounts for BaseEyeHeight automatically). * Only applies to non-Pawn actors (props, triggers, etc.). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (EditCondition = "bAutoTargetEyes", ClampMin = "0", ToolTip = "Height offset (cm) for non-Pawn targets without skeleton.\nPawns use BaseEyeHeight automatically.\nOnly used as last-resort fallback for non-Pawn actors.")) float FallbackEyeHeight = 160.0f; @@ -112,7 +112,7 @@ public: /** Offset from the target actor's origin to aim at. * Only used when bAutoTargetEyes is false. * E.g. (0,0,160) for eye-level on a simple actor. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (EditCondition = "!bAutoTargetEyes", ToolTip = "Offset from target actor origin.\nE.g. (0,0,160) for eye-level.\nOnly used when Auto Target Eyes is disabled.")) FVector TargetOffset = FVector(0.0f, 0.0f, 0.0f); @@ -127,44 +127,44 @@ public: // so small movements around the target don't re-trigger higher layers. /** Maximum head yaw rotation in degrees. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "90")) float MaxHeadYaw = 40.0f; /** Maximum head pitch rotation in degrees. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "90")) float MaxHeadPitch = 30.0f; /** Maximum horizontal eye angle in degrees. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "90")) float MaxEyeHorizontal = 15.0f; /** Maximum vertical eye angle in degrees. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "90")) float MaxEyeVertical = 10.0f; // ── Smoothing speeds ───────────────────────────────────────────────────── /** Body rotation interpolation speed (lower = slower, more natural). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0.1", ClampMax = "20")) float BodyInterpSpeed = 4.0f; /** Head rotation interpolation speed. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0.1", ClampMax = "20")) float HeadInterpSpeed = 4.0f; /** Eye movement interpolation speed (higher = snappier). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0.1", ClampMax = "20")) float EyeInterpSpeed = 5.0f; /** Interpolation speed when returning to neutral (TargetActor is null). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0.1", ClampMax = "20")) float ReturnToNeutralSpeed = 3.0f; @@ -178,7 +178,7 @@ public: * 1.0 = head always points at target regardless of animation. * 0.0 = gaze is additive on top of animation (old behavior). * Default: 1.0 for conversational AI (always look at who you talk to). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "1")) float HeadAnimationCompensation = 0.9f; @@ -186,7 +186,7 @@ public: * 1.0 = eyes frozen on gaze target, animation's eye movement removed. * 0.0 = animation's eyes play through, gaze is additive. * Intermediate (e.g. 0.5) = smooth 50/50 blend. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "1")) float EyeAnimationCompensation = 0.6f; @@ -195,7 +195,7 @@ public: * counter-rotates the gaze to keep the head pointing at the target. * 1.0 = full compensation — head stays locked on target even during bows. * 0.0 = no compensation — head follows body movement naturally. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "0", ClampMax = "1")) float BodyDriftCompensation = 0.8f; @@ -204,12 +204,12 @@ public: /** Enable debug logging for this component. * When false, only key events (init, errors, state changes) are logged. * When true, additional diagnostic info is logged based on DebugVerbosity. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; @@ -217,7 +217,7 @@ public: * Green = head bone → target (desired). * Cyan = computed gaze direction (body yaw + head + eyes). * Useful for verifying that eye contact is accurate. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (EditCondition = "bDebug")) bool bDrawDebugGaze = false; @@ -228,14 +228,14 @@ public: * 0 = mesh faces +X (default UE convention) * 90 = mesh faces +Y * -90 = mesh faces -Y */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze", meta = (ClampMin = "-180", ClampMax = "180")) float MeshForwardYawOffset = 90.0f; // ── Head bone ──────────────────────────────────────────────────────────── /** Name of the head bone on the skeletal mesh (used for eye origin calculation). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze") FName HeadBoneName = FName(TEXT("head")); // ── Neck bone chain ───────────────────────────────────────────────────── @@ -244,7 +244,7 @@ public: * Order: root-to-tip (e.g. neck_01 → neck_02 → head). * Weights should sum to ~1.0. * If empty, falls back to single-bone behavior (HeadBoneName, weight 1.0). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Gaze") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Gaze") TArray NeckBoneChain; // ── Getters (read by AnimNode) ─────────────────────────────────────────── @@ -252,7 +252,7 @@ public: /** Get current eye gaze curves (8 ARKit eye look curves). * Returns a COPY scaled by activation alpha — safe to call from any thread. * NOTE: Prefer FillCurrentEyeCurves() for hot paths to avoid per-frame allocation. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Gaze") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Gaze") TMap GetCurrentEyeCurves() const { FScopeLock Lock(&GazeDataLock); diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionComponent.h index 873a324..9f1d234 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionComponent.h @@ -45,7 +45,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnNoConvAgentInRange); // 4. Mic management is auto-detected (no manual flag needed on agents). // 5. Agents manage their own WebSocket connections independently. // ───────────────────────────────────────────────────────────────────────────── -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Interaction") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_InteractionComponent : public UActorComponent { @@ -57,7 +57,7 @@ public: // ── Configuration ───────────────────────────────────────────────────────── /** Maximum distance (cm) at which an agent can be selected. Agents beyond this are ignored. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ClampMin = "0", ToolTip = "Max distance in cm to interact with an agent.\nAgents beyond this distance are never selected.")) float MaxInteractionDistance = 300.0f; @@ -65,7 +65,7 @@ public: /** Half-angle (degrees) of the view cone used for agent selection. * The cone is centered on the pawn's view direction (camera or control rotation). * Agents outside this cone are not considered unless they are the current sticky selection. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ClampMin = "0", ClampMax = "180", ToolTip = "Half-angle of the view cone (degrees).\nAgents outside this cone are not selected.\n45 = 90-degree total FOV.")) float ViewConeHalfAngle = 45.0f; @@ -73,7 +73,7 @@ public: /** Wider half-angle (degrees) used for the currently selected agent. * This provides hysteresis so the player can look slightly away from * the current agent without losing selection (prevents flickering). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ClampMin = "0", ClampMax = "180", ToolTip = "Sticky cone half-angle for the current agent (degrees).\nMust be >= ViewConeHalfAngle for hysteresis to work.\n60 = agent stays selected until 120-degree total cone is exceeded.")) float SelectionStickyAngle = 60.0f; @@ -81,14 +81,14 @@ public: /** Height offset (cm) added to the agent's origin for the view cone check. * Agent origins are typically at foot level; this shifts the target point * up to chest/head height so close-range look-at checks don't fail. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ClampMin = "0", ToolTip = "Height offset (cm) above the agent origin for the view cone check.\nPrevents losing selection at close range because the camera looks above the agent's feet.\n150 = roughly chest height for a MetaHuman.")) float AgentEyeLevelOffset = 150.0f; /** When false, only distance matters for selection (no view cone check). * The closest agent within MaxInteractionDistance is always selected. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ToolTip = "Require the player to look at an agent to select it.\nWhen false, the closest agent within range is always selected.")) bool bRequireLookAt = true; @@ -97,20 +97,20 @@ public: /** Automatically set/clear the agent's GazeComponent TargetActor * when the agent is selected/deselected. When false, gaze must * be managed from Blueprint (e.g. on conversation start). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (ToolTip = "Automatically point the agent's gaze at the pawn on selection.\nDisable for manual control (e.g. set target only when conversation starts).")) bool bAutoManageGaze = true; /** Delay (seconds) before setting the agent's gaze target after selection. * 0 = immediate. Useful to let the agent "notice" the player with a beat. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (EditCondition = "bAutoManageGaze", ClampMin = "0", ToolTip = "Seconds to wait before the agent looks at the pawn.\n0 = immediate.")) float GazeAttachDelay = 0.0f; /** Delay (seconds) before clearing the agent's gaze target after deselection. * 0 = immediate. Useful to have the agent keep looking briefly as the player leaves. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (EditCondition = "bAutoManageGaze", ClampMin = "0", ToolTip = "Seconds to wait before the agent stops looking at the pawn.\n0 = immediate.")) float GazeDetachDelay = 0.0f; @@ -119,20 +119,20 @@ public: * with head+eyes (and optionally body). This creates natural "awareness" * without requiring an active conversation. * Also controls the passive gaze retained after switching conversations. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (EditCondition = "bAutoManageGaze", ToolTip = "Agents in range but not selected will passively track the player.\nAlso applies to retained gaze after switching conversations.")) bool bAutoPassiveGaze = true; /** In passive gaze mode, the agent's head and eyes follow the player. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (EditCondition = "bAutoManageGaze && bAutoPassiveGaze", ToolTip = "Enable head+eyes tracking in passive gaze mode.")) bool bPassiveGazeHeadEyes = true; /** In passive gaze mode, the agent's body also turns toward the player. * When false, only head and eyes track — the body stays in its default animation. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Gaze", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Gaze", meta = (EditCondition = "bAutoManageGaze && bAutoPassiveGaze", ToolTip = "Enable body rotation in passive gaze mode.\nWhen false, only head and eyes track.")) bool bPassiveGazeBody = false; @@ -142,7 +142,7 @@ public: /** How long (seconds) the player must look at a different agent before switching * during an active conversation. Prevents accidental switches when glancing around. * Only applies when a conversation is active (bNetIsConversing). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ClampMin = "0.0", ClampMax = "5.0", ToolTip = "Seconds the player must look at another agent before switching mid-conversation.\nPrevents accidental switches when glancing around.\n0 = instant switch.")) float ConversationSwitchDelay = 1.0f; @@ -153,7 +153,7 @@ public: * via StartConversationWithSelectedAgent() (e.g. on a key press). * Set to false when you have multiple agents in a scene to prevent them * all from greeting the player simultaneously. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction", meta = (ToolTip = "Auto-start the WebSocket when an agent is selected by proximity.\nSet to false to require explicit interaction (call StartConversationWithSelectedAgent).\nUseful with multiple agents to prevent simultaneous greetings.")) bool bAutoStartConversation = true; @@ -162,48 +162,48 @@ public: /** Automatically call StartListening/StopListening on the agent's * ElevenLabsComponent when selected/deselected. When false, listening * must be managed from Blueprint. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Interaction|Listening", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Listening", meta = (ToolTip = "Automatically open/close the agent's mic turn on selection.\nDisable for manual control (e.g. push-to-talk).")) bool bAutoManageListening = true; // ── Debug ──────────────────────────────────────────────────────────────── /** Enable debug logging for this component. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = selection changes only, 1 = candidate evaluation, 2 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; // ── Events ──────────────────────────────────────────────────────────────── /** Fired when a new agent enters selection. Use this to set gaze targets, show UI, etc. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|Interaction|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Events", meta = (ToolTip = "Fires when a new agent is selected.\nSet gaze targets, update UI, etc.")) FOnConvAgentSelected OnAgentSelected; /** Fired when the previously selected agent loses selection. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|Interaction|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Events", meta = (ToolTip = "Fires when the current agent is deselected.\nClear gaze targets, hide UI, etc.")) FOnConvAgentDeselected OnAgentDeselected; /** Fired when no agent is within range or view cone. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|Interaction|Events", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|Interaction|Events", meta = (ToolTip = "Fires when no agent meets the distance/view criteria.")) FOnNoConvAgentInRange OnNoAgentInRange; // ── Blueprint API ───────────────────────────────────────────────────────── /** Get the currently selected agent (null if none). */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|Interaction") UPS_AI_ConvAgent_ElevenLabsComponent* GetSelectedAgent() const; /** Manually select a specific agent, bypassing distance/view checks. * Pass null to clear the selection. Automatic selection resumes next tick. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Interaction") void ForceSelectAgent(UPS_AI_ConvAgent_ElevenLabsComponent* Agent); /** Start the WebSocket conversation with the currently selected agent. @@ -211,18 +211,18 @@ public: * interacts (e.g. presses a key, enters a trigger zone). * Does nothing if no agent is selected or the agent is already connected. * Also starts mic capture and listening automatically. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Interaction") void StartConversationWithSelectedAgent(); /** Send a text message to the currently selected agent. * The agent responds with audio and text, just as if it heard the player speak. * Handles network relay automatically (works on both server and client). * Does nothing if no agent is selected or not connected. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Interaction") void SendTextToSelectedAgent(const FString& Text); /** Clear the current selection. Automatic selection resumes next tick. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Interaction") void ClearSelection(); // ── Network relay RPCs ─────────────────────────────────────────────────── diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionSubsystem.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionSubsystem.h index 486812f..1cec6a1 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionSubsystem.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_InteractionSubsystem.h @@ -29,11 +29,11 @@ public: void UnregisterAgent(UPS_AI_ConvAgent_ElevenLabsComponent* Agent); /** Get all currently registered agent components (weak pointers, may contain stale entries that are cleaned on access). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|Interaction") TArray GetRegisteredAgents() const; /** Get the number of registered agents. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|Interaction") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|Interaction") int32 GetNumRegisteredAgents() const; private: diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_LipSyncComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_LipSyncComponent.h index ac6aa2c..d029674 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_LipSyncComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_LipSyncComponent.h @@ -39,7 +39,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnPS_AI_ConvAgent_VisemesReady); * 3. Conversation starts → lip sync works automatically. * 4. (Optional) Bind OnVisemesReady for custom Blueprint handling. */ -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Lip Sync") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_LipSyncComponent : public UActorComponent { @@ -61,16 +61,16 @@ public: /** Whether lip sync is currently active (read-only). * Managed automatically: activates on conversation connect, deactivates on disconnect. * The underlying audio analysis keeps running so reactivation is seamless. */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|LipSync") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|LipSync") bool bActive = true; /** How long (seconds) to blend in/out when bActive changes. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "0.05", ClampMax = "3.0")) float ActivationBlendDuration = 0.5f; /** Overall mouth movement intensity multiplier. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "0.0", ClampMax = "3.0", ToolTip = "Lip sync intensity.\n1.0 = normal, higher = more expressive, lower = subtler.")) float LipSyncStrength = 1.0f; @@ -78,13 +78,13 @@ public: /** Scales the audio amplitude driving mouth movement. * Lower values produce subtler animation, higher values are more pronounced. * Use this to tone down overly strong lip movement without changing the shape. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "0.5", ClampMax = "1.0", ToolTip = "Audio amplitude scale.\n0.5 = subtle, 0.75 = balanced, 1.0 = full.\nReduces overall mouth movement without affecting viseme shape.")) float AmplitudeScale = 1.0f; /** How quickly viseme weights interpolate towards new values each frame. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "35.0", ClampMax = "65.0", ToolTip = "Smoothing speed for viseme transitions.\n35 = smooth and soft, 50 = balanced, 65 = sharp and responsive.")) float SmoothingSpeed = 50.0f; @@ -95,7 +95,7 @@ public: * When the agent is NOT speaking, lip sync releases all mouth curves so the * FacialExpressionComponent's emotion curves (including mouth) can show through. * When the agent starts speaking, lip sync smoothly takes over mouth curves. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "0.05", ClampMax = "1.0", ToolTip = "Blend duration when speech starts/stops.\nDuring silence, emotion facial curves control the mouth.\nDuring speech, lip sync takes over.")) float SpeechBlendDuration = 0.15f; @@ -108,7 +108,7 @@ public: * 0.0 = lip sync completely overrides expression curves (old behavior). * 1.0 = emotion fully additive on expression curves during speech. * 0.5 = balanced blend (recommended). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "0.0", ClampMax = "1.0", ToolTip = "Emotion bleed-through during speech.\n0 = pure lip sync, 0.5 = balanced, 1 = full emotion on expression curves.\nOnly affects expression curves (smile, frown, etc.), not lip shape.")) float EmotionExpressionBlend = 0.5f; @@ -118,7 +118,7 @@ public: /** Envelope attack time in milliseconds. * Controls how fast the mouth opens when speech starts or gets louder. * Lower = snappier onset, higher = gentler opening. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "1.0", ClampMax = "50.0", ToolTip = "Envelope attack (ms).\n5 = snappy, 10 = balanced, 25 = gentle.\nHow fast the mouth opens on speech onset.")) float EnvelopeAttackMs = 10.0f; @@ -126,7 +126,7 @@ public: /** Envelope release time in milliseconds. * Controls how slowly the mouth closes when speech gets quieter. * Higher = smoother, more natural decay. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ClampMin = "10.0", ClampMax = "200.0", ToolTip = "Envelope release (ms).\n25 = responsive, 50 = balanced, 120 = smooth/cinematic.\nHow slowly the mouth closes between syllables.")) float EnvelopeReleaseMs = 50.0f; @@ -135,12 +135,12 @@ public: /** Enable debug logging for this component. * When false, only key events (init, errors, state changes) are logged. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; @@ -152,7 +152,7 @@ public: * When assigned, curve data is extracted at BeginPlay and replaces the * hardcoded ARKit blendshape mapping with artist-crafted poses. * Leave empty to use the built-in ARKit mapping (backward compatible). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ToolTip = "Reusable pose map asset.\nAssign your MHF_* AnimSequences once, reuse on all MetaHumans.\nLeave empty for built-in ARKit mapping.")) TObjectPtr PoseMap; @@ -160,19 +160,19 @@ public: /** Fires every tick when viseme data has been updated. * Use GetCurrentVisemes() or GetCurrentBlendshapes() to read values. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|LipSync", + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|LipSync", meta = (ToolTip = "Fires each frame with updated viseme data.\nCall GetCurrentVisemes() or GetCurrentBlendshapes() to read values.")) FOnPS_AI_ConvAgent_VisemesReady OnVisemesReady; // ── Getters ─────────────────────────────────────────────────────────────── /** Get current OVR viseme weights (15 values: sil, PP, FF, TH, DD, kk, CH, SS, nn, RR, aa, E, ih, oh, ou). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|LipSync") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|LipSync") TMap GetCurrentVisemes() const { return SmoothedVisemes; } /** Get current ARKit blendshape weights (MetaHuman compatible: jawOpen, mouthFunnel, mouthClose, etc.). * Thread-safe: returns a snapshot updated each tick. Safe to call from anim worker threads. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|LipSync") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|LipSync") TMap GetCurrentBlendshapes() const { FScopeLock Lock(&BlendshapeLock); @@ -181,7 +181,7 @@ public: /** True when the agent is currently producing speech audio. * When false, lip sync releases mouth curves to let emotion curves through. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|LipSync") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|LipSync") bool IsSpeaking() const { return bIsSpeaking; } /** Current speech blend alpha (0 = silent/emotion mouth, 1 = lip sync mouth). diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_MicrophoneCaptureComponent.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_MicrophoneCaptureComponent.h index 68a4d02..adb09e3 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_MicrophoneCaptureComponent.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_MicrophoneCaptureComponent.h @@ -22,7 +22,7 @@ DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnPS_AI_ConvAgent_VoiceActivityChan * Modelled after Convai's ConvaiAudioCaptureComponent but stripped to the * minimal functionality needed for conversational AI agents. */ -UCLASS(ClassGroup = "PS AI ConvAgent", meta = (BlueprintSpawnableComponent), +UCLASS(ClassGroup = "ASTERION|PS_AI_ConvAgent", meta = (BlueprintSpawnableComponent), DisplayName = "PS AI ConvAgent Microphone Capture") class PS_AI_CONVAGENT_API UPS_AI_ConvAgent_MicrophoneCaptureComponent : public UActorComponent { @@ -32,7 +32,7 @@ public: UPS_AI_ConvAgent_MicrophoneCaptureComponent(); /** Multiplier applied to the microphone input volume before sending to the agent. Increase if the agent has trouble hearing you, decrease if your audio is clipping. Default: 1.0 (no change). */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|MicCapture", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|MicCapture", meta = (ClampMin = "0.0", ClampMax = "4.0", ToolTip = "Microphone volume multiplier.\n1.0 = no change. Increase if the agent can't hear you, decrease if audio clips.")) float VolumeMultiplier = 1.0f; @@ -52,50 +52,50 @@ public: // ── Local Voice Activity Detection ────────────────────────────────── /** RMS threshold above which audio is considered voice. Adjust based on mic sensitivity and environment noise. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Voice Activity", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Voice Activity", meta = (ClampMin = "0.001", ClampMax = "0.2")) float VoiceActivityThreshold = 0.015f; /** Time (seconds) RMS must stay above threshold before declaring speech onset. Prevents false triggers from clicks/bumps. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Voice Activity", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Voice Activity", meta = (ClampMin = "0.01", ClampMax = "1.0")) float VoiceOnsetTime = 0.1f; /** Time (seconds) RMS must stay below threshold before declaring speech ended. Prevents cutting off between words. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Voice Activity", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Voice Activity", meta = (ClampMin = "0.1", ClampMax = "3.0")) float VoiceSilenceTime = 0.5f; /** Whether the user is currently speaking (local VAD, independent of ElevenLabs server). */ - UPROPERTY(BlueprintReadOnly, Category = "PS AI ConvAgent|Voice Activity") + UPROPERTY(BlueprintReadOnly, Category = "ASTERION|PS_AI_ConvAgent|Voice Activity") bool bIsUserSpeaking = false; /** Fired when voice activity changes. Use to pause NPC movement, trigger animations, etc. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|Voice Activity") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|Voice Activity") FOnPS_AI_ConvAgent_VoiceActivityChanged OnUserVoiceActivityChanged; // ── Debug ──────────────────────────────────────────────────────────────── /** Enable debug logging for this component. * When false, only key events (init, errors, state changes) are logged. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug") + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug") bool bDebug = false; /** Verbosity level when bDebug is true. * 0 = minimal extras, 1 = normal debug, 2 = detailed, 3 = per-frame data. */ - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PS AI ConvAgent|Debug", + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ASTERION|PS_AI_ConvAgent|Debug", meta = (ClampMin = "0", ClampMax = "3", EditCondition = "bDebug")) int32 DebugVerbosity = 1; /** Open the default capture device and begin streaming audio. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|MicCapture") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|MicCapture") void StartCapture(); /** Stop streaming and close the capture device. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|MicCapture") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|MicCapture") void StopCapture(); - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|MicCapture") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|MicCapture") bool IsCapturing() const { return bCapturing; } // ───────────────────────────────────────────────────────────────────────── diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_WebSocket_ElevenLabsProxy.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_WebSocket_ElevenLabsProxy.h index 6654443..f0cdfe4 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_WebSocket_ElevenLabsProxy.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgent/Public/PS_AI_ConvAgent_WebSocket_ElevenLabsProxy.h @@ -69,31 +69,31 @@ public: // ── Events ──────────────────────────────────────────────────────────────── /** Called once the WebSocket handshake succeeds and the agent sends its initiation metadata. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_Connected OnConnected; /** Called when the WebSocket closes (graceful or remote). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_Disconnected OnDisconnected; /** Called on any connection or protocol error. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_Error OnError; /** Raw PCM audio coming from the agent — feed this into your audio component. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_AudioReceived OnAudioReceived; /** User or agent transcript (may be tentative while the conversation is ongoing). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_Transcript OnTranscript; /** Final text response from the agent (complements audio). */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_AgentResponse OnAgentResponse; /** The agent was interrupted by new user speech. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_Interrupted OnInterrupted; /** @@ -101,15 +101,15 @@ public: * starts generating. Fires well before audio. The component uses this to stop the * microphone if it was restarted before the server finished processing the previous turn. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_ResponseStarted OnAgentResponseStarted; /** Fired for every agent_chat_response_part with the streaming text fragment. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_ResponsePart OnAgentResponsePart; /** Fired when the agent invokes a client tool. Handle the call and reply with SendClientToolResult. */ - UPROPERTY(BlueprintAssignable, Category = "PS AI ConvAgent|ElevenLabs|Events") + UPROPERTY(BlueprintAssignable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs|Events") FOnPS_AI_ConvAgent_ElevenLabs_ClientToolCall OnClientToolCall; // ── Lifecycle ───────────────────────────────────────────────────────────── @@ -121,21 +121,21 @@ public: * @param AgentID ElevenLabs agent ID. Overrides the project-level default when non-empty. * @param APIKey API key. Overrides the project-level default when non-empty. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void Connect(const FString& AgentID = TEXT(""), const FString& APIKey = TEXT("")); /** * Gracefully close the WebSocket connection. * OnDisconnected will fire after the server acknowledges. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void Disconnect(); /** Current connection state. */ - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") EPS_AI_ConvAgent_ConnectionState_ElevenLabs GetConnectionState() const { return ConnectionState; } - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") bool IsConnected() const { return ConnectionState == EPS_AI_ConvAgent_ConnectionState_ElevenLabs::Connected; } // ── Audio sending ───────────────────────────────────────────────────────── @@ -148,7 +148,7 @@ public: * * @param PCMData Raw PCM bytes (16-bit LE, 16kHz, mono). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendAudioChunk(const TArray& PCMData); // ── Turn control (only relevant in Client turn mode) ────────────────────── @@ -158,7 +158,7 @@ public: * Sends a { "type": "user_activity" } message to the server. * Call this periodically while the user is speaking (e.g. every audio chunk). */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendUserTurnStart(); /** @@ -166,7 +166,7 @@ public: * No explicit API message — simply stop sending user_activity. * The server detects silence and hands the turn to the agent. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendUserTurnEnd(); /** @@ -174,11 +174,11 @@ public: * Useful for testing or text-only interaction. * Sends: { "type": "user_message", "text": "..." } */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendTextMessage(const FString& Text); /** Ask the agent to stop the current utterance. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendInterrupt(); /** @@ -189,12 +189,12 @@ public: * @param Result A string result to return to the agent. * @param bIsError True if the tool execution failed. */ - UFUNCTION(BlueprintCallable, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintCallable, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") void SendClientToolResult(const FString& ToolCallId, const FString& Result, bool bIsError = false); // ── Info ────────────────────────────────────────────────────────────────── - UFUNCTION(BlueprintPure, Category = "PS AI ConvAgent|ElevenLabs") + UFUNCTION(BlueprintPure, Category = "ASTERION|PS_AI_ConvAgent|ElevenLabs") const FPS_AI_ConvAgent_ConversationInfo_ElevenLabs& GetConversationInfo() const { return ConversationInfo; } /** Latest WebSocket round-trip latency reported by the server (ms). diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.cpp index 4fa27e8..57e3da6 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.cpp @@ -21,7 +21,7 @@ FText UAnimGraphNode_PS_AI_ConvAgent_BodyExpression::GetTooltipText() const FString UAnimGraphNode_PS_AI_ConvAgent_BodyExpression::GetNodeCategory() const { - return TEXT("PS AI ConvAgent"); + return TEXT("ASTERION|PS_AI_ConvAgent"); } FLinearColor UAnimGraphNode_PS_AI_ConvAgent_BodyExpression::GetNodeTitleColor() const diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.cpp index d031b5c..06b8d79 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.cpp @@ -20,7 +20,7 @@ FText UAnimGraphNode_PS_AI_ConvAgent_FacialExpression::GetTooltipText() const FString UAnimGraphNode_PS_AI_ConvAgent_FacialExpression::GetNodeCategory() const { - return TEXT("PS AI ConvAgent"); + return TEXT("ASTERION|PS_AI_ConvAgent"); } FLinearColor UAnimGraphNode_PS_AI_ConvAgent_FacialExpression::GetNodeTitleColor() const diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_Gaze.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_Gaze.cpp index b784537..9c43df9 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_Gaze.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_Gaze.cpp @@ -21,7 +21,7 @@ FText UAnimGraphNode_PS_AI_ConvAgent_Gaze::GetTooltipText() const FString UAnimGraphNode_PS_AI_ConvAgent_Gaze::GetNodeCategory() const { - return TEXT("PS AI ConvAgent"); + return TEXT("ASTERION|PS_AI_ConvAgent"); } FLinearColor UAnimGraphNode_PS_AI_ConvAgent_Gaze::GetNodeTitleColor() const diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_LipSync.cpp b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_LipSync.cpp index 827916b..623a86b 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_LipSync.cpp +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Private/AnimGraphNode_PS_AI_ConvAgent_LipSync.cpp @@ -20,7 +20,7 @@ FText UAnimGraphNode_PS_AI_ConvAgent_LipSync::GetTooltipText() const FString UAnimGraphNode_PS_AI_ConvAgent_LipSync::GetNodeCategory() const { - return TEXT("PS AI ConvAgent"); + return TEXT("ASTERION|PS_AI_ConvAgent"); } FLinearColor UAnimGraphNode_PS_AI_ConvAgent_LipSync::GetNodeTitleColor() const diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.h index 545066c..d76b721 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_BodyExpression.h @@ -10,7 +10,7 @@ /** * AnimGraph editor node for the PS AI ConvAgent Body Expression AnimNode. * - * This node appears in the AnimBP graph editor under the "PS AI ConvAgent" category. + * This node appears in the AnimBP graph editor under the "ASTERION|PS_AI_ConvAgent" category. * Place it in the character's Body AnimBP after upstream body animations * (idle, locomotion). It blends emotion-driven body poses onto the upper body * while passing the lower body through unchanged. diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.h index 683cc13..e893990 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_FacialExpression.h @@ -10,7 +10,7 @@ /** * AnimGraph editor node for the PS AI ConvAgent Facial Expression AnimNode. * - * This node appears in the AnimBP graph editor under the "PS AI ConvAgent" category. + * This node appears in the AnimBP graph editor under the "ASTERION|PS_AI_ConvAgent" category. * Place it BEFORE the PS AI ConvAgent Lip Sync node in the MetaHuman Face AnimBP. * It auto-discovers the PS_AI_ConvAgent_FacialExpressionComponent on the owning Actor * and injects CTRL_expressions_* curves for emotion-driven facial expressions. diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_Gaze.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_Gaze.h index bbb5491..12165f5 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_Gaze.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_Gaze.h @@ -10,7 +10,7 @@ /** * AnimGraph editor node for the PS AI ConvAgent Gaze AnimNode. * - * This node appears in the AnimBP graph editor under the "PS AI ConvAgent" category. + * This node appears in the AnimBP graph editor under the "ASTERION|PS_AI_ConvAgent" category. * Place it AFTER the PS AI ConvAgent Facial Expression node and BEFORE the * PS AI ConvAgent Lip Sync node in the MetaHuman Face AnimBP. * diff --git a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_LipSync.h b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_LipSync.h index 3b64e14..cdb0e2d 100644 --- a/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_LipSync.h +++ b/Unreal/PS_AI_Agent/Plugins/PS_AI_ConvAgent/Source/PS_AI_ConvAgentEditor/Public/AnimGraphNode_PS_AI_ConvAgent_LipSync.h @@ -10,7 +10,7 @@ /** * AnimGraph editor node for the PS AI ConvAgent Lip Sync AnimNode. * - * This node appears in the AnimBP graph editor under the "PS AI ConvAgent" category. + * This node appears in the AnimBP graph editor under the "ASTERION|PS_AI_ConvAgent" category. * Drop it into your MetaHuman Face AnimBP between the pose source and the * Control Rig node. It auto-discovers the PS_AI_ConvAgent_LipSyncComponent on the * owning Actor and injects CTRL_expressions_* curves for lip sync.