You must be 18+ to visit this website
The content on this website is AGE RESTRICTED
Please confirm you are at least 18 years old of age. Otherwise leave the website.
I am over 18 years old
michaelpstanich profile
michaelpstanich
18+
michaelpstanich
I work in various mediums and will be releasing content ranging from safe for work to R18+ content including Art, Video Game Mods, Video Games and Dev builds, Technical Articles, Game/Tech related videos, AI Work, and whatever else I fancy and Subscribers request!
Subscribe
Send Message

Subscription Tiers

FREE
Follower

Join for free to receive email notifications about new posts submitted to paid tiers

33 subscribers SubscribeStar $0.00 tier
Unlock
$5
per month
Demi-God

Join and get full access to supporter content and the exclusive supporter role "Demi-God" on our discord!

11 subscribers SubscribeStar $5.00 tier ; Demi-God
Unlock

Features

  • Subscribers will help us create awesome content! (We're always up for suggestions too!)
  • Subscribers will get early access to content such as Dev builds and articles!
  • Subscribers will get QOL packages and exclusive content like behind the scenes content, image packs, and future previews!
Displaying posts with tag ProjectSugarCake.Reset Filter
michaelpstanich
Public post

Project Sugar Cake v0.2.1 DEV Released! (BETA) [Palworld Mod]

Yep, I botched the release a little bit. This is what I get for trying to finish up a release while super tired, but hey, only a day later and I have some exciting new stuffs to show anyways! This’ll be a quick one with no write up.

Last patch had a few bugs I didn’t catch and I also forgot to add the new Sexual Heat system into the save file (I was the big dumb Q.Q) so this update fixes those as well as adding some requested features for the SDK. There is a big new feature hidden here though (which is why it gets its own post ^.-), I added the ability for modules using SCake’s SDK to add arbitrary stats that can then save and load with SCake’s systems as well as integrate into the mod directly! I call these “ArbVariables” or Arbitrary Value Variables where modders can register an Name variable with an associated value which can then be seen and modified by any other mod by the name variable! For this first implementation I just added the ArbString which is enough for modders to do whatever they need to do, but in the future I’d like to add a float and int versions as well with more configuration options like automatic decay/buildup/caps/so on. This is not just a “sex” framework, but also a Stats Framework, and here’s the first major step in that!

SCake Version 0.2.1 DEV (Beta)

Added : API Function "SCake_TrackReturnAll" which returns all characters currently tracked by SCake (useful for initiating modules that need to apply/check status)
Added : API Function "SCake_CheckStat_SexHeat" which returns a character's Sexual Heat stat and if they currently have enough to be aroused
Added : API Function "SCake_Stat_AddSexHeat" which adds the specified amount to the character's Sexual Heat stat and returns their new value along with if they have enough to be aroused
Added : API Function "SCake_Stat_ArbChangeString" which adds/changes the arbitrary string to the designated character (useful for modules to start tracking their own systems)
Added : API Function "SCake_CheckStat_ArbString" which returns the arbitrary string associated with the given name for the designated character
Added : ArbString element to the Pal Tracking system, this allows modules to input arbitrary strings with a name for their own use cases, these can be set to persist in the save file as well so they can exist between sessions (modders will need to be extremely careful when using persist, only use it when absolutely neccesary)
Added : When Sexual Heat rises or lowers it will now set Sexual Heat to continue naturally in that direction (in other words, if Sexual Heat decreases it will continue to naturally decay until zero, then start going back up, alternatively if it goes up it will continue to increase, I planned this for last update but I forgot to implement it)
Added : API Function for starting animations now check for null and empty arrays, failing faster with proper error code returns (Also a slight optimization)

Changed : If an SCake stat value is zero or null it won't be included in SCake's pal save file anymore, saving space/processing time

Fixed : Stage Order not registering correctly when defined in the animation's .json, messing up animation playback
Fixed : An issue with the .json parser not parsing integers correctly has been fixed (Not aware of all this affected outside Stage Order)
Fixed : A potential soft lock issue if very specific params were passed in an animation .json import
Fixed : Sexual Heat not being included in the save file, thus lacking persistence (I forgot to add it, sorry!)

What’s Next?
Same as yesterday… though thinking about it over the day I really do want to start getting more animations going as well as maybe start on the Lusting system? We have the stats for it now so I can probably start getting that going and a lot of people are really interesting in potential breeding mechanics, so I may try to do that before worrying about furniture support.

Current Road Map
1 ) Investigate Breeding and Lusting mechanics
2 ) Work on making some animations
3 ) Introduce a built-in SCake Notif-system for animations to trigger certain effects (like changing arousal meshes or changing eyes/mouth)
4 ) Research sockets system for dynamic attachments and furniture support\

On Hold ) Work on multiplayer support
Comments  loading...
Like(0)
michaelpstanich
Public post

 Project Sugar Cake v0.2 DEV Released! (BETA) [Palworld Mod]


“I can finally move to smaller updates” I said with such confidence! I wasn’t lying, I ‘could’ have moved to smaller updates but that certainly didn’t happen here! I hit all my goals for 0.2 DEV and much more with a lot of exciting discoveries and breakthroughs! Built up a massive changelog again, originally it was just going to be an update with persistence figured out and a new saving function for existing stuffs, but it was a “just one more thing” situation (even while writing this doc I was like “OH, just… just one more thing!” This isn’t the best habit). But hey, maybe this is how updates to SCake will go, large updates with a lot of new stuffs?

IMPORTANT NOTICE!
This update changed the .json format, make sure to update your animation packs or else they may fail to update! On the Discord I've already posted updated .json files for all packs if you need a quick place to grab them. ^-^ (and I think everyone that's released a pack has updated their posts with the update .json files).
 - - - - -
Some major changes made it into this update thanks to some fun discoveries. Let’s start with the first major change, the .json format has been updated and old .json files will fail to load so they need to be updated (I’ll be distributing my own updated .json files and have even updated the old ScakeBasics pak specifically for this, since I haven’t gotten the new animation back going yet). I’ve already spoken with those I know of who’ve made animation packs available so this isn’t ‘sudden’ or unexpected (I even asked for feedback on the changes! ^-^) and they should be updating their packs officially when they can.
Ok, so quickly, let’s run down the new major features list, Persistence is figured out! So now SCake creates save files in the .json format within the AnimJSON folder, which was the main feature planned for this update. Inside the AnimJSON folder of the install is a new “__Create_Load_List__.bat” file that automatically fills the _LoadList.json so you can just run this and no longer need to manually fill the list (hoping this reduces people being confused by a good amount, but probably not X.x). New custom stat tracking system is fully in-place with new methods allowing tracking of characters that are not even active in-game. New “Sexual Heat” system, heat builds up over time and makes characters aroused with affect on sexual pleasure during erotic animations, toggles between rising and falling depending on recent activities, such as having an orgasm will switch heat to begin resetting back to zero. Support for Morph Targets which integrates into the new Heat system; this requires models to support it but if a Morph Target on the mesh is called “Aroused” then SCake will automatically change that Morph Target depending on Heat and for Animation Events. Added a new animation progression mode, “Pleasure Progression Mode” allows animations to progress through stages depending on the average Sexual Pleasure of participants! I also quickly added the changing of eyes/mouths displayed on pals during Animation Events! Quite a hefty update!

Download Links!
GDrive Folder : https://drive.google.com/drive/folders/1vYfgMom7UJs2OmJ5B4FGQTMYEOR0n9Vr?usp=drive_link
Mega Folder : https://mega.nz/folder/9hZQ2IIR#Ou77tq4qQxw9UBQsozh6zg

- Project Sugar Cake -
- Full Changelog -
SCake Version 0.2.0 DEV (Beta)

Note : This updated the format and data for .json files, all animation packs must be updated to the new format (I already contacted anim-pack creators, view the new templates to see the changes and format)
Note : This update adds persistence! If the new _SCake_Save_.json files are not saving/loading properly, let me know!
Note : This update adds support for MorphTarget Models to modify 'bodies' dynamically based on the new Sexual Heat system and for animations!

Added : New "__Create_Load_List__.bat" file in AnimJSON which updates the _LoadList.json when activated (May only work on Windows, skips files starting with an underscore)
Added : API Function "SCake_AdjustAnimCamPos" which adjusts the camera postion for the player while in an animation
Added : API Function "SCake_TraceForPal" which uses the camera position and rotation to scan for pals, useful for debug code (Not always accurate so other methods are recommended for proper selections or interactions with pals)
Added : API Dispatcher "SCake_ED_EventOrgasm" and "SCake_ED_PalOrgasm" which trigger when an Animation Event / Character triggers climax/orgasm
Added : API Dispatcher "SCake_ED_PalAroused" which triggers when a character reaches enough 'Heat' to become properly aroused (Horny status ^.-)
Added : API Dispatcher "SCake_ED_TrackPalEnabled" and "SCake_ED_TrackPalDisabled" which trigger when a pal is either enabled or disabled in the new tracking system (Note : Pals do not instantly start tracking or instantly stop tracking when they become valid/invalid, do not use this for validity checks! Use 'IsValid' through UE naively instead!)
Added : Holding the camera control keys during animations now repeats, making adjustments easier
Added : Report for failed JSON load now shows the json entry that failed to load
Added : Setting "Invulnerable During Anims" which makes characters unable to be harmed during Animation Events until the end, enabled by default
Added : Automatic CharacterID conversions for compatible pals (This means animation compatibiltiy can now define the base pal CharacterID and all variables that are compatible should be detected, input CharacterIDs for variants can still be registered with default size detection)
Added : When animations are started characters will now move to the ground
Added : Register now also shows fail count similar to success counts
Added : Settings will now save into a .json file within the ~mods folder allowing them to be saved and loaded between sessions (The file name should be _SCake_SaveSystem.json)
Added : Global camera adjustment to save file so it persists between sessions (individual camera adjustments will be added in the future when persistence/cache is set up for it)
Added : Character Stats now track Sexual Encounter counts (Increases if there are more than 1 characters in an erotic animation)
Added : Character Stats now track Orgasm counts (increases every time the character has an orgasm)
Added : New dynamic pal stat tracking, all active pals should now be captured and have SCake's stats applied (Mostly just Sexual Pleasure and Heat for now)
Added : Pal SCake Stats will now save into a .json file within the ~mods folder, enabling persistence (should save as _SCake_SavePal.json, the amount of memory this system takes over long play sessions will need to be monitored, but shouldn't be too bad)
Added : Sexual Heat system, this affects the desire and sensitivity to sexual activity (slowly increases until orgasm is eventually reached or a heat reduction event occurs, then decreases rapidly to 0 then begins rising again with values over 100% increasing much slower)
Added : "Aroused" Morph Target to framework, the "Aroused" morph increases as Heat increases, and sets to 100% when in erotic animations, useful for erections or arousal based body modifiers (morphtarget names could potentially become editable in the future)
Added : Sexual Pleasure gained in erotic animations is now affected by Heat (Heat acts as a multiplier with an offset, at 0% Heat gain is at 80%, 100% = 100%, 200% = 120%, 300% = 140%)
Added : Facial expression control to Animation Player, changes expression for supported characters while animations play (Currently sets a static expression but will be configurable by animations in future versions)
Added : "Pleasure Stage Progression" SCake Setting, while enabled stages will also progress through average sexual pleasure from all participants based on duration weight
Added : "Pleasure Progression Mode" to the Animation Player and SCake Settings, when enabled stages in animations are allowed to progress when the average Sexual Pleasure reaches a threshold calculated from duration weight of each stage (defaults on, only tries to progress looping animations, Max Event Duration is still respected and will progress regardless of this setting)

Changed : The Animation UI should now show the player's display name instead of "Player"
Changed : The Animation UI should now show all players as "Player" instead of "Character" (useful in multiplayer)
Changed : The Animation UI should now attempt to find the proper in-game name to display if no nickname is set for a pal
Changed : Made major changes to the .json structure for easier creation, optimize parsing, and removing some variables that will go unused, old .json files will fail to register (Simplified the structure to run off order dependent arrays, so params still require slot specifications if they can contain multiple entries per-slot, check included templates to adjust your own .json files)
Changed : JSON parser improvements/optimizations, let me know of any weirdness or fails when it shouldn't
Changed : Limited the number of json registers per frame (will only try to load and pass 10 json sets per frame, this will slow down the register but ensures HDD users won't experience stutter when we start loading thousands of animations, register still only processes 1 animation/event per frame, this only affects sending to the register when we load the .json files)
Changed : Register automatic start time reduced to 3 seconds (was 8 before, can be changed in the _SCake_SaveSystem_.json)
Changed : Animation Events that fail to start animations will now immediately destroy themselves instead of waiting (optimization)
Changed : Overhauled stats handling backend, now runs based on game time and defaults were updated to reflect this
Changed : Pals now start with random Sexual Pleasure (No more than 20%)
Changed : Animation Player now uses the new stats tracking system to apply and track stats like pleasure, this makes effects based on Game-Time just like other stats, Sexual Pleasure defaults was adjusted for this
Changed : Adjusted some setting descriptions and displays to better align with systems and changes
Changed : "Event Duration" is now "Max Event Duration", though the behavior is effectively the same but will make more sense as more features are added

Removed : "ByName" variables when registering animations (The intended system didn't work and using CharacterID instead just makes a lot more sense)

Fixed : "Hold Down (K key) to start anim with summoned pal" now properly disables when disabling Debug Input
Fixed : Characters in animations should no longer become eligible for another animation if multiple start anim events are triggered on them
Fixed : Instances where animations took too long to process their start function and would fail to set all parameters properly
Fixed : JSON loader failing to load files from the LoadList if they had .json in the entry
Fixed : Menu scrolling offset being slightly off allowing a slow drift downward
Fixed : Report text that shows up should now properly wrap when the text extends too far
Fixed : Project Sugar Cake should no longer run any logic while in the Main Menu or outside a saved game (Only starts up the UI, though the API should be accessible)
Fixed : Characters who orgasm once will not properly have their sexual pleasure checked in subsequent orgasm checks
Fixed : Animation Player getting stuck in an orgasm loop if pleasure gain was set too high
Fixed : FootIK interupting normal animation flow when animating certain sections of certain characters (FootIK should be disabled during anims now)
Fixed : Slopes causing characters to tilt while animating, causing alignment issues (Looks a bit odd given characters will now float a bit more in some situations, but much better than alignment not working)
Fixed : Stages "Speed Mod" value should now properly affect the duration of non-looping animations
Fixed : Climaxes not adjusting duration properly if no climax variant was included with the animation
Fixed : General optimizations across most systems

Dealing with “Bones” and “Boners”

I have my monthly update coming up in a few days which will talk about data structures for games and some interesting methods I’ve been experimenting with lately, which does actually reference SCake since I used those systems in the new tracking system here. But given I have so much writing to do on that, I’ma save my typing hands a bit of effort here and just briefly touch on something the community has been hoping to solve. I’m calling it, “The Boner Problem.” This has to do with the typically male member where we usually have some curve and can move it up and down for action, but with how Palworld is currently set up there’s a couple of issues, meshes are effectively static. We can technically add additional bones, but doing so breaks compatibility and it may be too early to set up standards given we don’t know what comes next (we are constantly making new discoveries or figuring out new systems).
However, some community members (Temtem and Boko specifically) encouraged me strongly to look into Morph Targets, and after a small bit of research we got it working in-game rather quickly! For those unaware of what Morph Targets (known in Blender as Shape Keys) are, to breifly explain, it allows you to deform or modify a mesh in real time using the individual vector points of the mesh rather than using armature bones. It’s a rather old-school technique but it’s very powerful and used in a lot of games for things like body morphs or facial expressions. This allows model makers to make soft/erect versions of ‘certain aspects’ to allow a ‘neutral’ and ‘aroused’ version (my simple example would be like making a soft/hard version of the penis/nipples). This has some other creative uses as well, and for SCake I’ve set it up so the Morph Target named “Aroused” will automatically be updated through the Sexual Heat system.
But there is a catch, in the future I’ll need to make this kind of thing configurable through something like maybe another loadable .json setting since these Morph Targets are referenced directly by name within the model asset itself. This means we have to standardize naming to allow this sort of thing to work properly and we can’t always guarantee creatives will make their models with SCake in mind. There’s also the other aspect of the Boner Problem, and that is actually animating it in animations. Unfortunately adding bones isn’t a viable method for reasons I’ve explained in previous postings so instead community members are looking into some form of dynamic penis system, which would allow attaching a penis onto models instead of baking them in. This could allow quite a lot of flexibility and avoids a ton of issues but also comes with its own challenges. I’ve been considering looking into it myself but I’ve been relatively busy with other features and getting things working as expected, so I haven’t quite gotten to it. Hopefully that second half of The Boner Problem is easy to solve with a bit of thinking, we’re blazing through figuring all this out so it wouldn’t surprise me if it happens sooner rather than later!

What’s Next?

I’ve had to put multiplayer support a bit on hold since I still don’t have a proper way to test any of it, so instead I’m going to be focusing on making a couple of animations in a new Anim Pak while working on adding features that will allow animators/users to spice up animations a bit.
Current Road Map
1 ) Research sockets system for dynamic attachments and furniture support
2 ) Introduce a built-in SCake Notif-system for animations to trigger certain effects (like changing arousal meshes or changing eyes/mouth)
3 ) Work on making some animations
On Hold ) Work on multiplayer support
Comments  loading...
Like(0)
michaelpstanich
Public post

Project Sugar Cake v0.1.0 DEV Released! (BETA) [Palworld Mod]

BETA SCake Logo - BETA Release Announcement

I’ve got a fairly large update today for Project Sugar Cake, and with it I’m officially taking the mod out of Alpha status, and into BETA! What does that mean exactly? Well, typically Alpha means the project is still lacking fundamentals and the base framework which everything is built off of is incomplete, however with this update all of those base systems are finally complete and now it’s all about adding onto the base framework that’s been built! There’s still some systems that are not really implemented quite yet, like persistence (I have to build a json parser for it) and multiplayer support is still an unknown (I don’t really have a proper way to test it yet), but animation playback, validation systems, asset handling, input and UI management, and the stats system all have their base built and tested even if they may be somewhat lacking in usage or have some non-functioning aspects. However, from here it’s mostly just building onto these systems and making extensions when needed. There’s still a lot of work to do, but I firmly believe we’re now at a state with SCake where it’s genuinely usable given you have animations packs to install!
This update’s big features are related to the new UI and input system with refinements to all other aspects of the mod. SCake now has a custom input system that ties into a custom UI that allows settings configuration, seeing installed animations/events, and even adjusting animation playback with position and camera control! There’s a ton of changes and tweaks under the hood not mentioned in the changelog either with many optimizations and code simplifications that will make updating various sections of the mod much easier as well as improve performance. This was certainly one of those updates where I kept telling myself “oh, just one more quick addition” over and over and over… One particular thing I had to stop myself from continuing on is validation since it was taking a lot of time to research and get going, so the systems are there but not fully implemented or are disconnected/unused in the current build, so you can still start anims in cases where things will break and some strangeness can still happen. But overall, excited to see this update release! (I also made a quick logo and display set up to make posts not just a bunch of text, though I’m not super happy with them. Just another thing to improve over time I suppose.. ^-^)
- Project Sugar Cake -
- Full Changelog -
SCake Version 0.1.0 DEV (Beta)
Note : Mods using the SCake SDK/API will need to be updated to the new API functions and reference the new actor "ProjectSugarCake"
Note : Updated templates provided with SCake to reflect changes in data structure
Note : Menu UI requires keyboard input for now, I messed up when building the assets so click actions don't call-back properly and were removed
Note : Non-standard debug keys may not be reported in changelogs from this point forward (I constantly change them depending on what I'm working on, so trying to track them will get difficult as things get more complex)


Added : In JSON data for 'size" parameters, entering 'default' now automatically converts to the default size param for the defined CharacterID (if one exists, otherwise None is returned)
Added : API Event "SCake_StopAnim_EventRef" which stops the Animation Event of the given Event Reference
Added : API Function "SCake_InterpretError" which converts a returned error code into a readable string (Used for passing into UI or make debugging easier)
Added : API Function "SCake_GetPalAnim" which searches for a given pal and returns if they are in an animation and the event reference if so
Added : API Function "SCake_GetEventCompParams" which returns variables from the provided Event Reference collected by functions/Dispatchers
Added : API Dispatcher "SCake_ED_AnimStart" which sends when animations start with the Event Reference (If you store this value remember to check if it's valid and if the animation is still playing before trying to pull data)
Added : API Dispatcher "SCake_ED_AnimEnd" which sends when animations end with the Event Reference (Do not store the returned reference and pull your data immediately as Event References will delete themselves a short bit after an animation ends)
Added : New input system implemented with input states allowing new menu and position control (Default keys are U=Menu O=Select I=up k=Down J=Left L=Right)
Added : Fully custom menu system implemented, use the Menu key (U by default) to open and up/down/left/right keys to interact with it (I/K/J/L by default) (No API access yet as some revisions still need to be made before it's dynamic features are usable)
Added : "Settings" menu to SCake Main Menu
Added : "Animation Event Duration" to the Settings Menu (controls how long Animation Events aim to last in seconds)
Added : "Pleasure Gain Rate" to the Settings Menu (controls how quickly Sexual Pleasure is gained in Erotic Animation Events)
Added : "Pleasure Decay Rate" to the Settings Menu (controls how quickly Sexual Pleasure is lost while not in an Erotic Animation Event)
Added : "Pleasure For Orgasm" to the Settings Menu (controls how much Sexual Pleasure is required for this character to have an orgasm)
Added : "Pleasure Loss On Orgasm" to the Settings Menu (controls how much Sexual Pleasure is reduced when characters have an orgasm)
Added : "Allow Debug Input" to the Settings Menu (controls if the debug controls for SCake are enabled, will be disabled by default in the future)
Added : Animation List to the SCake Menu which shows the "AnimName" of all Animations Registered with parameters showing in the description box (If no anim name is found the "UniqueEventID" is displayed instead)
Added : Animation Event List to the SCake Menu which shows the "EventName" of all Animation Events Registered with parameters showing in the description box (If no anim name is found the "UniqueEventID" is displayed instead)
Added : New Animation Menu which shows up with 'climax progress bars' for participants in the selected animation (Player animations will already be selected)
Added : Animation menu which allows adjusting the position of characters in animations, also allows ending animations if "Allow Debug Input" is enabled (Currently does not save or have any persistence)
Added : The Game UI will now hide by default when the player enters an animation (and should re-appear after the animation ends)
Added : Attempts to hide the in-game UI when a player animation starts (should re-appear when the animation is over)
Added : If a player is in an animation the camera position can now be controled with W/A/S/D/Q/E keys (Keys display in the animation UI, position saves between animations and should return to normal after the player animation ends, sometimes the game disables these keys or locks the camera and the camera function may stop working)
Added : With debug input enabled, when holding down SCake's Down Input key (K by default) if no valid target is found SCake will now try to start an anim with the summoned pal instead (sometimes fails since the reference is invalid, seems to be a game bug but resummoning your pal usually fixes it)

Changed : UI entry point to be slightly higher up (helps make the new menu more visible when there's more entries in the list)
Changed : SCake_StartAnimEvent_Basic is now a function and now returns if the animation started and the order+references of pals in the animation
Changed : SCake_StartAnimEvent_Advanced is now a function and has return values just like the Basic version
Changed : Some debug inputs were added and others changed key defaults
Changed : Event references will remain valid for a short period after animations end instead of instantly deleting themselves (useful for pulled data after an animation ends and to allow manual scanning of animations ending without losing access to data)
Changed : "O" debug key now opens the Animation Menu for the Target Pal

Removed : "TransformBySize" no longer includes Rotation, simplifying the data structure a small amount (Rotation is already included with the "TransformAllOffset" and there shouldn't be a need for a rotation by size)
Removed : The Testing Angel has departed, shall she forever grace us with great debugging and moral support!

Fixed : The default _LoadList.json had tabs instead of spaces for the 2 additional entry slots causing errors in some cases, changed them to spaces
Fixed : Animations were not validating in cases where all characters in an animation were valid for all slots
Fixed : Certain parameters not being set to default when registering Animation Events with JSON when those values were not defined
Fixed : "SpeedMod" in stages having no effect
Fixed : Instances where the animation slot sorting would fail and result in animations breaking or not playing properly
Fixed : Global Climax Variants not functioning properly (I forgot to connect a node >.>)
Fixed : Drastically optimized the positioning code within the Animation Player (Also simplified implementation without any loss in functionality)
Fixed : "TransformBySize" not parsing from JSON correctly
Fixed : Corrected many positional issues caused by using inconsistent sources for the positioning (Still never found the 'exact' cause, but new code works so whatever)
Fixed : Some instances where SCake's control overrides were being overwritten by external forces (SCake still fails to prevent certain actions that breaks animations)
Fixed : Player being able to aim and throw a pal sphere while in an animation, breaking the animation playback
Fixed : Player being able to interact with other pals while in an animation, potentially causing a soft lock state while breaking AI and animation playback
Fixed : Characters (including the player) being able to crouch while in animations (Normally didn't break animation playback but could break AI or cause camera issues for the player) 

SCake Branding

When it comes to my projects I really like the idea of giving each one their own identity and branding profile to sort of have a specific feel to them. While I don’t want to make them overbearing within the mod itself, I do like to try and create a specific feel and theme with visual aspects and wording. With Project Sugar Cake I’m taking a mix of inspirations both directly from Palworld’s lore and breeding system (Cake is used for breeding in-game, hence the mod’s name with Sugar added) while playing on the ‘Sugar’ aspect in a bit more literal way even though it’s implied all but innocent. For mod pages and distribution I’ve made a quick Title and Logo visual, it’s not quite up to my own standards yet as I made it relatively quickly but it’s something I can improve over time.
SCake Branding Cover (BETA)

The font is designed to look somewhat like a retro bakery style font with a bit of strangeness to it with spiked bottoms and thick edges giving a strange and conflicting aesthetic, to hint at the other implications from the mod, while the logo is inspired by obviously cake, but also features an egg to imply the breeding aspect and a general shape inspired by the incubators. Within the docs I also features this inspiration from the incubators with shapes used in title headers like so (_) Title (_) . I’m sure most people don’t notice, but I feel it gives a certain look to it that gives personality. 
Within the game I’ve taken more of just a color approach for now since including more assets was out of scope at this stage. A lot of the visuals for the UI are placeholder, but I hope to expand upon these theme concepts within the UI itself at some point if I ever get the chance and justification to do so.
In-Game SCake Menu Sample (BETA)

Currently the menus don’t really blend into the game very much, and I haven’t decided if that’s a good thing or not. Having a custom visual UI is nice to give it that extra flair but I am considering making it tie more into the game’s own visual style while introducing some nice theming on-top. I could also just go all in on my own custom look, but as fun as that might be it is probably not just out of scope for the project at this stage but also probably not really something everyone would want either. So in the future I’ll be looking into how to make the UI integrate better with the game itself and introduce some theming that both falls in-line with the game AND SCake’s general theming.
I know this stuff probably isn’t super interesting to most people, but I have a background in graphic design, this is kind of my jam! (Thank you for putting up with my little nerd out!)

What’s Next?

The next to immediate things to work on that were featured on my checklist is getting persistence working and investigating multiplayer compatibility, so these are the next 2 steps, but other than that I want to take some time actually making my own animations using SCake while also sorting through everything that’s still left to do and organizing a plan. So for the next update we’ll most likely have much more persistence set up, stuff like settings saving, animation customization, that sort of thing, though for multiplayer I really need a test environment set up before I can really do much on that end. I’ve spoken to some peoples about getting a multiplayer test server set up (which would be super awesome!) but it would really be a good idea for me to figure out a local set-up for testing this sort of thing as well, especially given my usual workflow of ‘test the thing, oh thing broke, immediately try to fix and re-run application’… I know, bad habit, but it’s been working so far! For persistence I already have a system tested, I just need to actually implement it and see if it works in all instances. Aside from those 2 things, I also need to work on more validation to prevent animations starting in situations that could break the game. The validation stuffs will really just be trial and error while people start to use the mod more, finding every instance where the game can break will be a challenge and there’s definitely going to be some edge cases out there.
Overall though, I really need to re-organize the project and get my internal docs in order (they’re a complete mess X.x). Specifically I really need to sort the ‘planned features’ list into a checklist of things I need to get done in a more general sense, something where I can both use as a general guide while also having something to display publicly.
Current Road Map
1 ) Work on Validation and Persistence
2 ) Work on Multiplayer Support
3 ) Re-organize my internal docs and figure out the next best step...
? ) Make animations!
If you have any animation suggestions, we’ve set up channels in the Discord for ideas! Feel free to take a peek and maybe make some requests!
Comments  loading...
Like(1)
michaelpstanich
Public post

 Monthly Update Post! March 31+1 – Probably too sweet for showtime.

After 31 days of eating nothing but sugar cake, I can say that this certainly isn’t a sustainable diet! I’m been shaking non-stop, I can’t sleep, and I can see into the 9tth dimension! I’m definitely ok though, I’m sure this will all play out well into the future, just look, I can shake up a smoothy REALLY well now!~ No more tired arms, I just… shake… endlessly… (I my have a sugar overdose). BUT I MUST PREVAIL, THE POST MUST GO ON! The keys, so close together, but I have a backspace key, let’s get this going!!!

Delectable Treats

> The project of goodness that is a sugary Cake <
Project Sugar Cake 0.0.3DEV (Latest Release Links) :
GDrive : https://drive.google.com/drive/folders/1vYfgMom7UJs2OmJ5B4FGQTMYEOR0n9Vr?usp=drive_link
LoversLab Dev Thread : https://www.loverslab.com/topic/225549-project-sugar-cake-sex-and-stat-framework-gameplay-mod/
I just couldn’t help myself spending nearly all my time on Project Sugar Cake! Well, ok, ‘most’ of my time on Sugar Cake, but still, some major progress this month! SCake saw the release of 0.0.3DEV this month which not only has the multi-actor animations from 0.0.2DEV (also new this month) but also a custom JSON parser to make importing animations easier than ever! Huge changes under the hood but finally SCake is at a point now where I can make smaller additions and fixes and after the UI base gets implemented then I can move to the smaller updates with quicker output rather than the longer drawn out update cycle we’ve had since the initial launch. Bigger news however, since SCake now has all the animation systems in place and easier importing quite a few animators (and people hoping to get into animating) have gained interest in making stuff for the project, and many of us have been collaborating over in the Discord to make it all happen! This is effectively the starting point for SCake where we’re seen animator support and the framework is properly usable, however that’s not to say SCake is even remotely close to ‘done’ as there’s still a lot of work to be done. Systems to finish, methods to polish, and an API to expand, there’s more work but now development can focus a bit more on extra features and polish since we’re past the ‘minimum viable product’ phase. Overall really excited!
(Also a huge shout out to everyone that’s been collaborating and being supportive over in our Discord! I hope we can continue to inspire more people to be creative and friendly!)
Although the method for importing animations for SCake has been vastly simplified with the introduction of the JSON parser (you just import your animations and montages in UE5 then use JSON to configure them, no scripting or blueprints required now!) getting everything set up and understanding how things work is still a bit of a learning curve. As such, to ensure we have a great resource to point people to (and so people that don’t want to communicate still have a resource to look to for help) I’ve created an in-depth tutorial starting from knowing nothing about Palworld modding, to importing animations for SCake and getting them going in-game! The guide in total is pretty long, however if you’re already experienced with Palworld modding a decent amount of the getting started stuff can be skipped or skimmed over. It may look long and demanding, but the processes are relatively simple, so if you’re interested I recommend giving it a look!
Additionally, this is the first article publishing to my site with the new formatting! I haven’t the generic stuff like the nav and footer, but this gives an idea of what articles will look like on the site going forward. If you get the chance to check it out on my site, please let me know your thoughts!
> The crumbling internet cookie <
https://www.michaelpstanich.com/
I did a lot of research and internal development for the website (and a potential second web project, but I won’t bother talking more about that till I have something to show since it may never actually exist at this stage). Development on the site redesign for michaelpstanich.com has been a bit slower than I would have liked since I’ve been spending so much time on Project Sugar Cake, but I’m slowly nailing things down. One major leap this month was setting up format translation layers so that uploading, updating, and general maintenance of blog posts and articles is much simpler. With these new systems in place it should be a lot quicker and easier for me to start posting updates and articles over on the site without huge time investments. I still need to set up proper template systems, but I’m focusing on the main page and navigation for now. I will most likely be overhauling the main page with a temporary landing page that has links to all my modern stuffs and features a list for posts, while hosting the old site at michaelpstanich.com/old so it’s still accessible while I refresh everything and migrate any content I see desire-able. (I really want to get things set up enough that I can use my own site as a distribution source, Project Sugar Cake, several articles, and image posts do not currently meet my goal of 3 distribution platforms.)
> Intelligent baked goods made of synthetic material <
I’ve fallen a bit behind on AI stuff lately given I’ve had my focus on much more creative projects lately, but I haven’t abandoned anything! This month I experimented more with how to continue with a custom trained model as I build a custom database for images. I.. can’t remember if I announced that project? Basically I’m still working on making AI models! Despite CivitAI staff trying to harass me and intimidate me into leaving the industry, I’ve not given into their vile behavior and still have ambitious goals! (seriously, I’ve had to block at least 30 Discord accounts from them constantly trying to harass me, it’s getting REALLY pathetic at this point.) I’ve also been making some moves to updating some existing AI models, although SD1.5 has been slowly falling out of favor with many moving to PonyXL and Animagine 3.1, many SD1.5 models still offer some incredible quality with unique styles and concepts not seen in XL models, and with my own models focusing on trying to be very different in style this holds especially true. SpiritMix - Soft and Cutesy will most likely be the next update in this regard as I’ve refined a lot of my systems since releasing that model, and have some additional mix knowledge/resources I think will improve the overall model to put it more in-line with my other output. Additionally I will be hosting my models on my own site as well, I have some concepts in my head but I’m currently investigating how to implement them before really refining the design.
> Pouring in a little heart <
Just wanted to leave a little note here about Succubus Heart! I had been planning to make some updates to Succubus Heart for a few weeks now, but I keep getting distracted and focusing on Project Sugar Cake, probably a bit too much in-fact. Just wanted to leave a note here that I’ll be pushing for an update soon and didn’t intend to go without one for so long, I know people are waiting! I’m really sorry about that! Although I do try to gauge interest for what projects I should focus on (with SCake having a huge amount of interest, especially when compared to Succubus Heart) I don’t do this with the intention of ignoring other projects. It’s really just that SCake is in early development and has a lot of fundamental features that need to be implemented, while Succubus Heart is, arguably, a fully featured mod that doesn’t ‘need’ updates to be usable. Either way, I still feel bad! >.<

On the Display Shelf

Ingredients

Statement : Project Sugar Cake Related : “See you all in ‘5/10/15’ years when all this is actually released!”
Response : So this has been a re-occurring sentiment I’ve been seeing related to Project Sugar Cake, and it’s a bit disheartening. Now I’m not telling people to not expect long development time for stuff like this in a usual sense, and it’ll take a while to get animations rolling for all the combinations people may want, but to say we’ve made so little progress that it’ll take another 5+ years feels a bit mean spirited. SCake is released AND usable in its current form as is, and it’s been 2 months! We’re speeding through all this stuff in a VERY quick (and honestly kind of impressive) pace, and I’m very proud of the work I’ve been able to put in! I feel a lot of this feeling probably comes from people not realizing SCake is actually out however, I see a lot of comments about ‘when it releases’ or ‘whenever they finally put up the download’ but SCake has been downloadable since February? I’m wondering if people just assume it’s not available or if they’re getting projects confused? Either way, not really an ‘answer’ but more of a response so something I’ve found a bit puzzling, hopefully it’ll clear up eventually as currently it seems to be causing a lot of confusion, which could impact our appeal to animators since if they don’t think it’s available they may not be interested, when in reality SCake is functional and ready for animations!
Question : Project Sugar Cake Related : “Are you being paid to develop Project Sugar Cake?”
Answer : This question caught me off guard as I thought I was very upfront about the costs of the project, but let me re-iterate, Project Sugar Cake is supported entirely through donations (https://subscribestar.adult/michaelpstanich ^.-) and my own desire to develop the mod. I personally like taking on interesting projects and I saw Palworld as a potential candidate with “PSC” receiving the most interest out of all the projects I proposed. I also had a personal bias toward making Project Sugar Cake because I’ve been in the modding space a long time and have seen a very concerning pattern over the last couple of years where teams with ill intentions (or maybe those who are misguided) end up starting these kinds of projects but do so in a very closed off manner and end up shutting out other creatives from making similar content. The early Palworld modding scene was a disaster, quite honestly, and I saw that it was very likely the potential of Palworld modding in this category was going to be completely squandered by teams working in such a closed off and hostile manner. As such, a large part of my motivation is to offer a more open and community focused alternative, to show people that the modding scene doesn’t have to die off as some closed-off hostile wasteland, but instead we can encourage more collaboration and prop each other up to new heights!
Now, to be clear, it’s not like I wouldn’t like to receive more donations (making this kind of work my full-time job is a dream I’d love to accomplish) but I won’t push it on anyone. I put in the work to try and offer as much value as possible with the hopes that some day it may pay off, but if it doesn’t it’s not all that big of a deal. Life moves on, ya know? And if nothing else, I get some sick portfolio pieces!
Comments  loading...
Like(0)
michaelpstanich
Public post

SCake Guide : How to set up animating and import animations

New Guide posted, related to Project Sugar Cake!
This new guide shows how to get animations set up for Palworld and integrate them with SCake starting from square one. It's a fairly thorough guide with a lot of detail in segments and I tried my best to clarify a lot of things so that first time modders don't get too lost.

The guide is available on my site and through GDrive!
Website Direct Link : https://www.michaelpstanich.com/article/SCake_HowToMakeAnimsGuide.html
GDrive Docs Version : https://docs.google.com/document/d/19lh8IooHKKpmVTixP2scgWIVfZboUedNf2JDmJp5hsA/edit?usp=drive_link

I had originally planned to also post it here as a post, however the length is too long and the format doesn't really work, so hopefully having links is good enough!

Additional Note : I messed around with some new scripts to import onto my website and have some new formatting going on. The redesign still isn't up (and won't be for a while longer) but if you do check out the website version, please let me know what you think of the formatting and colors!
Comments  loading...
Like(0)
michaelpstanich
Public post

 Project Sugar Cake v0.0.3DEV Released! (New JSON Parser and easier imports!) [Palworld Mod]

(entry also available on my personal site : https://www.michaelpstanich.com//blogpost/2024-03-21_Project_Sugar_Cake_0.0.3_DEV_Released.html )
It’s been a good while since I’d made a string parser, but I’m glad I at least had some sort of previous experience! Would have certainly taken longer if I hadn’t (manually managing search depth is a pain >.<) even if it still took longer than expected. What am I referring too? Project Sugar Cake can now register animations through .json files! I’ve added a quick how-to to the ReadMe and placed templates in “~mods/AnimJSON” within the mod’s release package and install. Now SCake comes with the previously mentioned AnimJSON folder where these register .json files will be placed, any .json files you wish to have load in-game must be added to the new “_LoadList.json” file, then when SCake loads in-game it will use that load list to pull the appropriate .json files, parse the .json as a string and properly pass that string to the register to parse and convert into animation data. I won’t go over all the metadata stuff here (there’s a lot) but one of the templates explains each parameter and those templates show how to format things, so it shouldn’t be too difficult to get started! I recommend using a JSON editor with auto-correction and error checking, I used the online editor https://jsoneditoronline.org/ to help speed up the process, and I recommend it! (Easy to understand interface and has both a raw text mode as well as a ‘tree’ mode with more intuitive visuals).

What’s really exciting about this is that .json import options are not just for animators, but users as well! Users can edit or create their own .json metadata files to customize existing animations, create alternate versions, and make their own full events using any combination of animations they like! In the future I’d like to have a UI for this, but that’s still quite far off, but the .json importer does have support within the API so once a UI is up we can implement a ‘refresh .json import’ option or something so you can edit .json files and have them re-import without having to reload your game!

I also updated the Scake_BasicsAnimPak to be compatible with the new version and now supports .json import options. SCake SDK got updated to the new version with the new API call for .json imports.

Download Links!
GDrive Folder - https://drive.google.com/drive/folders/1vYfgMom7UJs2OmJ5B4FGQTMYEOR0n9Vr?usp=drive_link
Mega Folder - https://mega.nz/folder/9hZQ2IIR#Ou77tq4qQxw9UBQsozh6zg

- Project Sugar Cake -
- Full Change Log -
SCake Version 0.0.3 DEV
Note : Data structure had changes this update, BP mods will need to be recompiled with the newest SDK release

Added : JSON string and data parser for registering animations, now you can create JSON files and place them in the ~mods/AnimJSON then add the file name to the "_LoadList.json"
 - - - - - If any errors are in the JSON file's formating it will fail to load (BP limitation)
 - - - - - Animations no longer need to be LogicMods and can be installed like any replacer mod, though BP registeration is still available
 - - - - - Users can create their own JSON files or edit existing ones to create their own events or customize animations
 - - - - - Templates are now included with SCake's main installation
 - - - - - "_LoadList.json" is required, however it is split up in distribution to prevent overwritting player's customized json when updating the mod
Added : SCake_RegisterAllJSON to the API, call this to re-register all JSON animations listed in the _LoadList
Added : "Speed Default" in registered animations now functional
Added : "StartTime" in registered animations now functional
Added : "Speed Mod" in Stages now functional
Added : Keybind K (Start animation between 2 targets) will now try to start a solo animation if the same character is selected twice
Added : "AddTags" in AnimEvent now functional (Appends additional tags to the event in addition to those added in the animations)
Added : Animation Register now sends a total successful registered count whenever there is a pause while registering

Changed : Simplified "Act Types" and introduced "Act Location" to make registering animations easier and allow easier future additions
Changed : "HasPostClimax" for registering events is now set to false by default
Changed : "EquipLocation" is now a 'name' variable type to support socket/bone names and not just presets (Equip system is still non-functional)
Changed : When characters path to animate, even a failed move (When 'Move Failed' would display) will still trigger the animation (characters will just teleport, helps the mod feel less inconsistent and buggy. This issue isn't really with the framework, it's just the quick and dirty AI which bugs out a lot.)

Removed : Anim and AnimEvent Registered messages from showing in ReportUI (Still shows failed registers with error codes)
Removed : Equip Location enum is removed and now invalid (we parse a name variable now instead to allow custom bone/slot names)

Fixed : Sexual Pleasure going into the negatives after an animation (accidentally shipped the wrong build which had this bug >.<)
Fixed : Register component not automatically starting after a game load if a register API function is never called
Fixed : "Stage Order" being ignored and erroring out if the animation playing didn't play through stages linearly
- - - - - Note : This Stage Order bug also broke things like play-time, animaiton playback, post-climax anims, all should hopefully be fixed now
Fixed : Stage Duration for non-looping animations setting to 0 seconds when the number of stages exceeded actor count (Was a very silly mistake X.x)
Fixed : AnimVersion number not working properly (Technically also fixed the internal version number not working correctly, but this means nothing front-end)
- SCake SDK -
- Full Change Log -

0.0.3
Updated for Data Structure changes in SCake 0.0.3
Removed "EquipLocation" Enum as it's no longer used by SCake
Added SCake_RegisterAllJSON function
Added missing register functions to the example mod
Updated ReadMe with variable types
- SCake_BasicAnimPak -
- Full Change Log -

BasicsAnimPack 0.0.3
Added : Now includes SCake_BasicAnimPak.json for installing with SCake's json importer
Changed : Recompiled for SCake 0.0.3 DEV
Changed : UniqueAnimID and name information
Changed : Updated Climax metadata

JSON Handling Limitations / Struggles

There’s some limitations to JSON handling in regards to mods, in a normal game project you would just create your own tools and custom nodes to handle this kind of thing or import a plugin but when working with Palworld modding I’ve decided to stick entirely to BP mods to ensure maximum compatibility and hopefully ensure better future support. This leads to some problems, because UE5’s file handling blueprints for files outside the typical asset register (which would require packaging then assets to pull from) is extremely limited, we have to use UE5’s native JSON importer. “So what’s the big deal, doesn’t UE5 have JSON parser nodes already?” Why yes, it does, except they don’t actually function properly! UE5’s native JSON support is abysmal, so instead I use it only to load the JSON and convert it into a string, then I built a fully custom string parser that searches through the string and pulls the data into a data map, which we can then search and use. I take advantage of search depth (tracking start and end points of datasets to separate them) and any with a depth above 0 would be parsed as a JSON string, then I parse those strings whenever the data needs to be pulled and put it into its own datamap. As this process goes on, I store the data pass it into the Animation Register. Well, technically I pull the full JSON string and pass that to the register, then the register calls the parser functions, but you get the idea! (probably?)

Either way, I’m super happy with this method as it’s very flexible and surprisingly fast, and it’s not even had an optimization pass yet! (I need to re-sort fail states so things fail faster if they are going to at all, add null checks to skip logic, and use more skips in places so repetition isn’t required and we don’t process unneeded variables.) Because we parse things into a data map, we can even ignore arbitrary data left in the .json so people can leave comments in there if it helps, similar to how I have the description template set up, though I recommend keeping them to a minimum or remove them before distribution to reduce memory overhead. I also have it planned to process them in batches, currently it just tries to load them all at once which isn’t that great memory wise, but given we’re still lacking animations that can come in a later update!
( Some of the larger SCake JSON parser trees in v0.0.3DEV )

But there are limitations.

Most of UE5’s file tools for blueprints is actually a plugin, and palworld doesn’t include it! This means we’re very limited on what we can do via blueprints (and I am still not confident C++ mod support will uphold compatibility, especially since SCake needs to have the SDK easily accessible/usable). This has 2 major effects, first we can’t dynamically pull arbitrary assets that are not within pak files and part of the regular asset registry so we have to put the .json into the provided _LoadList.json file so we know which files to pull. We can define a custom path to load from, but we can’t efficiently search a directory without either C++ or plugins (we can technically do it through manual crawling, but by doing so many search calls we could trigger anti-virus safety protocols, it’s also extremely slow). The second issue is when getting the strings themselves. When loading assets it needs to be a defined type, in C++ we just define the type but this isn’t exposed to blueprints without the optional plugin which we can’t use, so this is why I use the JSON function within UE5 to pull the asset itself. This means we have to follow UE5’s JSON import rules, which are very strict and it means JSON files can’t have any formatting errors at all or else it will fail to import. If I could pull the asset directly I could just pull it as a string and try to auto-correct small errors (I already do this to a certain extent with how my parser is built) but I don’t currently know a method within my current scope and limitations. Hopefully we can get around these 2 hurdles at some point, maybe I’ll cave and finally do some C++ stuff while keeping this fallback in-case things break in the future, but for now I think these 2 issues are ones we can live with and things are more than usable! (I just like to make things the best they can be >.< Why do I have to care so much Q.Q)

What’s Next?

I’m still following the same plan, but will most likely work on the next few steps in a more free-flow fashion. I want to start implementing very basic versions of various functions to try and get more of the framework filled out and create the baseline, as shown here with how much sooner this update released compared to the last version change, once the base structure is built and complete it becomes much easier to put out new additions and modifications. While making the parser and researching how UE5 handles files via blueprints I found some major leads toward what I could do about persistence and this could pave the way for the rest of the framework to truly be out of Alpha! Though, I shouldn’t understate how much work is really still left to do, I have a feeling a lot of the other parts of the framework will still need to be entirely custom and there’s still planned features for the animation player that isn’t complete yet, there’s also gender swapping systems that could help (it was believed the OK Framework was going to be the solution, but it requires more manual work and isn’t all that flexible so a new solution may still be required. Having it built into the framework also isn’t a bad idea.)

Oh, I got completely side tracked, the actual next step, like, right after I make this release, is to work on tutorials for importing animations into Palworld and how to integrate them with SCake! There’s still not really any good resources for this, so it look like it’s my time to step up and take the torch. Let’s burn some stuffs!~ ^-^ (Fire is pretty.. what were we talking about again?)

Current Road Map
1 ) Create basic tutorials for importing animations and registering them with SCake
2 ) Investigate / implement equipment altering system (for unequipping 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
Comments  loading...
Like(2)

The subscription gives you:
  • Access to Creator's profile content.
  • Ability to support your Creator by contributing – one-time or recurring.
  • Means to reaching out to the Creator directly via Instant Messenger.

Creator Stats

43 subscribers
23 posts

Goals

$42 of $500
per month
(Monthly Goal) Would ensure part-time work on projects and ensure a constant flow of updates to content without worries of financial strain or burn-out.
$42 of $800
per month
(Monthly Goal) Would provide the potential to go full time, working on projects and producing content as seen fit by subscribers!

Other Creators

This website uses cookies to improve your experience while you navigate through this website. Continue to use this website as normal if you agree to the use of cookies. View our Privacy Policy for the details. By choosing "I Accept", you consent to our use of cookies.