Palworld Mod – Project Sugar Cake v0.0.2 DEV Released (SDK now available!)

Finally got things done and stable? I think? Multi-character animations are now fully functional! Did a ton for this update, including the API system, new backend structures to make future additions much easier, the framework for a cache system to speed things up once we have thousands of animations, new validation systems for animation gathering/searches/playback, new complex climax animation handling, maybe more things? (Changelog a bit below ^-^)

Changed the default hotkeys for the temporary gameplay module integrated into SCake as well for triggering anims and such.
Input Definitions
- L : Start solo player anim event
- O : Stop any anim event involving player
- U : Show player sexual pleasure in reportUI
- K : Start anim event between player and target
- J : Select 2 targets and start an anim event between them
- I : Stop any anim event involving the target
In the future, once we have a UI and persistence these will be configurable. ^-^ (hopefully these work for now >.<)
- Full Change Log -
~ SCake Version 0.0.2 DEV ~
Note : Essentially Rebuilt the entire animation player and added the API systems, not everything is accessible yet but adding things in the future will be much easier once we know what to add

 Added : Animator now supports multiple characters at once (can play Human X Human, Pal X Human, Pal X Pal, whatever!)
Added : AI Handler to animator to help prevent AI breaking animations / conflicting (still has minor issues)
Added : Position handling to animator, should keep animation in the same place even if characters are pushed or pulled
Added : New validator should auto-sort and organize animating characters
Added : Additional validation for incompatible animations, should prevent any non-compatible animation (that have proper metadata) from playing
Added : More advanced climax handler, now supports specific slots orgasming to trigger specified animations within a registered animation event
Added : Pleasure gain for all characters in animations (was just the host player previously)
Added : Support for Post Climax animation playback after climax animations, skips and just ends if no post anim is found
Added : Support for 'included tags' and optionally requiring those tags when starting animations
Added : Basic stat tracking for characters where it's neccesary (no persistence between save loads yet >.<)
Added : Optimization systems to stat tracking so we only track what's needed (Basic so far, needs more advanced systems in the future)
Added : API Base for other mods to call and use SCake functions (such as starting/stopping animations, needs to be expanded on)
Added : API Call "SCake_StartAnimEvent_Basic" - Starts an animation between the supplied characters with minimal information
Added : API Call "SCake_StartAnimEvent_Advanced" - Starts an animations between the supplied characters with more advanced information
Added : API Call "SCake_StopAnim_PalTarget" - Stops any animation event the target character is involved in
Added : API Call "SCake_SendReportMessage" - Sends a report message to SCake's report UI, visible to the player
Added : API Call "SCake_CheckStat_Pleasure" - Returns the current Sexual Pleasure of the sent character
Added : API Call "SCake_Stat_AddPleasure" - Adds the specified amount to the target's Sexual Pleasure
Added : "Start animation between player and target" with default key "K"
Added : "Start animation between 2 targets" with default key "J"
Added : "Stop animation target is involved in" with default key "I"
Added : Pals play their "Happy" emote/action when animation events end (more advanced emotion handling could be added in the future)

Changed : "Start solo player animation" default key changed to "L"
Changed : "Stop player involved animation" default key changed to "O"
Changed : "Report player's sexual pleasure" default key changed to "U"
Changed : SyncPosition animation setting now defaults to disabled
Changed : Animation player was re-built and has much more advanced functions now with better duration tracking
Changed : Orgasms now add additional animation time so they don't conflict with normal stage progression
Changed : Reduced how quickly Sexual Pleasure decays when outside an animation event

Removed : A lot of debug notifications should no longer show up in the release build (sorry if I missed any >.<)

Fixed : Fixed animations only ever registering as "female solo human" animations
Fixed : Animation player getting stuck and freezing indefinately if cancelled improperly
Fixed : "Pals in Animation" tracker getting stuck if animation event was cancelled improperly
Fixed : Animating characters getting pushed/pulled or continueing movement if already in motion when animation starts
Fixed : Typos/misspellings in data structure

The SCake SDK / API

With this update came the SCake SDK! This SDK makes it very easy for other modders to access SCake’s API to trigger animations, stop them, or pull/modify data related to SCake! The API is a bit more limited for now, but the main functions (starting/stopping animations) is there, so if you’re a modder that’s interested it may be worth looking into.
To use the SDK, you’ll still need to set-up a modding environment for Palworld with UE5, but once that’s out of the way you just download the newest SCake SDK version, then extract the “mod” folder into your environment’s “Content” folder. Inside is a small example mod along with the “ProjectSugarCake” folder, which you do NOT want to include with your mod when you export your mod. The SDK functions by creating “dummy” assets where you can call within your blueprints/c++ mods, then when you run your mod in a game with SCake installed it will access the SCake API and run the required logic. It’s a fairly simple processes once you’re familiar with UE5, but if you ever need help don’t be afraid to reach out or post for help over in our discord! ^-^

Here’s some examples of how to use the API (check the SDK Readme or the SDK itself for more API calls and specifics)
Calling the SCake SDK from another mod (BP Example)

What’s Next?

I’ve been modifying my road map a bit, so things are in a bit of a different spot than before, primarily I want to try focusing on getting more animations onto the framework and getting the mod noticed a bit more. I need to contact a mod on Nexus Mods and see if the mod would be allowed over there (there’s some restrictions on Palworld mods and I’m not sure if Sugar Cake runs afoul to these) and will start making proper download pages on places like LoversLab since the mod is now properly usable, with one exception… That exception being animations. Currently we’ve still not had any animators output any animations for the framework, but in order for things to really get going we are going to need those, so we’re a bit stuck. It’s a 2 way issue, you need the framework for proper animations, but you need animations for the framework to be meaningful. So, I’ve shifted focus slightly to try and account for this and will most likely be making a few of my own animations (though I am very slow at it Q.Q).
 
Current road map
1 ) Create string parser for registering animations without BP modding
2 ) Investigate / implement equipment altering system (for unequiping weapons/armor)
3 ) Implement a basic UI with settings control (including position adjustments for anims)
4 ) Investigate persistence more and try to get stat persistence between save/loads
5 ) Investigate multiplayer compatibility
? ) Work on building new animations and tutorials for it
Not sure exactly what I’ll focus on after that, but we’ll see how things go over the next couple weeks and see what people request the most! If you have suggestions, please send them my way!