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

60 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!

15 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 SCake.Reset Filter
michaelpstanich
Public post

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

Last update wasn't too long ago, but man was it a mess! Not the update itself but rather the situation surrounding it. If you aren't caught up, my last blog post was about Palworld and the packaging changes involving IO Store. This is the first release where I'm actually exporting both versions into the same package and just kinda hoping for the best, but also shortly after this post I do have another mod to reveal related to Palworld! (If you're in the Discord you've potentially already seen it ^.-) Short write up for this update as it's not super major, but it does feature a critical fix!
I'll admit the last update's release was a bit rushed near the end and that lead to a pretty nasty bug residing in some new functionality. I was already planning a small update to coincide with Altermatic but this critical fix made it even more important! AdjustProfiles unfortunately had a memory leak! @.@ It was reported by a community member, and their AdjustProfile reached 17mb!!! I wasn't able to find the source but did confirm it 'could' happen, just didn't know what exactly was causing it. So I did what any reasonable programmer would do... I re-wrote the entire implementation, leaving only tertiary code untouched. Benefit? AdjustProfile code is a lot faster and uses a more complex-to-make but quick-to-process system. Since the profiles would be experiencing bloat I invalidated all previous profiles with a version cut-off, so you'll need to re-adjust your alignment again. >.<

Additionally it was suggested to add another Gender, which we've dubbed "Andro". Andro is a setting for "Vagina Only" definition and is now fully supported within SCake!

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

Note :This update invalidates old AdjustProfiles since fixes were made.

Added :
  • "Andro (Vagina Only)" Sex Equip definition (Can be configured in JSON for compatibility as well)
  • AdjustProfile now records the last SCake_ModVersion it was saved on

Changed :
  • Doubled debug input's trace distance (how far the game scans for selections)

Changed/Fixed :
  • Cam Adjustments are now properly determined by EventID rather than AnimID, this should fix inconsistant behavior when animation events start on different stages (same cam position for the full event)

Fixed :
  • AdjustProfile saving null values ("0.0") in the SaveAdjust JSON
  • Cam Adjustments should now load from the SaveAdjust file properly
  • AdjustProfile save duplicating/not removing redundant entries and vastly improved performance (completely re-wrote large sections to use a new system similar to how I assign custom genders)

What's Next?

I... think multiplayer support? Or, rather, at least 'testing' multiplayer support and seeing how far I can get. There's been an increasing number of people interested in multiplayer support, and while I've been saying it's part of the plan I'd not made any major advances on it in a good while. So, I think it's a reasonable time to try and push on that front given the recent big update has given the game a large spike in players. In the immediate future however I have the other Palworld modding project to tend to as well, Altermatic! That mod will have its own post so I won't cover it here, but if you've been in the Discord you may have seen us testing it, and it's exciting! (Well, I'm enthusiastic about it at least >.<)

Current Road Map
1 ) Release Altermatic and work on integrations
2 ) Work on anim packs and try to expand releases
3 ) Test/work on multiplayer support
Comments  loading...
Like(0)
Sign Up or Log In to comment on this post
michaelpstanich
Public post

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


UPDATE 2024-06-28 :
PocketPair reverted their package changes which means the new io store packages are now broken and old packages are working again. I've release a repackaged version of SCake (0.4.1) and the Anim pak, downloadable through the same link as before!
---
Emergency update for SCake!!!
Well, not really an emergency per-say, but critical non-the-less! The large Sakurajima update for Palworld broke mods when they changed their packaging method for the game. This didn't break too much in terms of actual mod compatibility, but it does mean all mods need to be repackaged with 'Io Store' enabled, this includes SCake, Anim Packs, mesh replacers, ect. I was already working on a decently sized update before so there's still some really cool stuff in here, just sucks that a lot of other mods may take a bit to get updated!
Alright, so lets cover the Sakura in the room, what did SCake need for compatibility with the Sakurajima update? Well, 3 things, firstly I just had to re-package ProjectSugarCake with the new format (enabling 'Io Store' in UE5's packaging settings), which was simple enough, then the mod was able to start up. After that however, I quickly noticed after re-building my SCake_BasicsAnimPak into a new Anim Pack (also released along-side this update, called Spirit's Naughty Human Anims, though it's just the same animation with updated info for now X.x) the loader code for SCake no longer worked! This meant I had to build a new loader (wasn't too difficult since I already had the research for other potential methods) then create a translation layer that re-formatted existing file-paths so the JSON formatting didn't need to change.
Simple stuffs! Now, generally everything else 'seems' to work fine, but this update is slightly rushed with not a lot of testing so there could be some new bugs or issues with features, especially new features, but I guess that's why this is a DEV version, right!?
Anyways, other major additions, AdjustProfiles are now a thing! Currently SCake is only set up to have a single profile, but this allows position and camera adjustments between animations to carry over between animations/sessions! (Finally don't need to re-align every single time, it'll save and re-apply it now!). Made some major improvements and finally finished the Validators for registering and playing back animations! This means things should flow much more smoothly and help modders see where their anim-packs are failing better. Restrictions were also added for when animations can play to prevent breakage, along with some minor adjustments to positioning code. Added a ton of additional features for modders within the SDK and exposed a bunch of variables for easy access, this should allow more advanced Modules to be created! Of course there's more, check the Changelog for details!

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

Notes :
  • The Sakurajima 0.3.1 update broke older mods and SCake's old loader function, this means all mods need to be re-packaged to the new format before they will work correctly, this includes Anim Packs. I've created a translation layer within SCake to the new loader format so the old JSON format should continue to work!
  • This update works on major improvements to various validators to ensure animations register and playback correctly, if something was incorrectly set in animation pack .json files before but wasn't validated, they may now fail to register or behave differently

Added :
  • Made a new Loader and Translation layer for loading animations after the "Sakurajima 0.3.1" Game Update (Old loader stopped working and this new loader won't work on older versions of the game) .. - "ActLocations" has been added to API Function "SCake Get Compat Events" .. - "ActLocations" has been added to API Function "SCake Start Anim Event" .. - API Function "SCake Get Compat Events" now accounts for the input Aggressors and Act Types/Locations input (Note : Animations without Aggressors or ActTypes/Locations configured as expected will not return with these optional parameters) .. - API Function "SCake_GetPalComp" which pulls the associated PalComp for the referenced Pal Character (PalComp stores all tracked data for a character, use this reference to pull that data without a function call)
  • Added Variables to the SDK for direct reference, this allows modders to directly reference these variables without any API calls, many of which were not exposed previously by a function call
    • ProjectSugarCake Var Exposed : Pal_Player, Pal_PlayerController, SCake_ModVersion, Data_EventCompArray, System_InputState, Data_PalsInAnim, Data_PalCompMap, Key_Menu, Key_Select, Key_Up, Key_Down, Key_Left, Key_Right
    • SCake_PalComp Var Exposed : PalReference, InstanceID, CharacterID, SexualPleasure, CloseToOrgasm, SexCount, OrgasmCount, SexHeat, IsAroused
    • SCake_EventComp Var Exposed : PalList, EventID, AnimID, NonErotic, Aggressors, AnimRoot, PlayAnimDuration, PalsHaveOrgasmed
  • Validator now checks for Mounted/Gliding state for all characters and checks if player characters are currently riding, will invalidate these states for animations to prevent various issues
  • SCake's internal version number now shows in the start-up message pop-up
  • API Dispatcher "SCake_ED_AnimSwitch" which is called any time an Animation Event switches animations
  • Finished all critical validation for the Animation Register, now should check and validate all critical parameters and prevent registering broken animations while also purging some out-of-scope data (note if an anim json file has incorrect data it could still cause playback errors, this validation only prevents incomplete or invalid data passing)
  • Finished validation for Animation Event Register, now checks and validates all parameters to ensure they are consistent while setting variables automatically instead of making assumptions (this means stuff like actor count, compatability, NonErotic, ect. all validate and set automatically) .. - "NPCID" and "BPClass" for 'Human' characters can now optionally be used in JSON configuration for animation packs, allowing defining animations for very specific Human NPCs .. - "Player" can now be used in JSON configurations for animation packs, allowing specifically only allowing the Player character (Note "Human" still includes the player)
  • Positional Adjustments are now saved for each animation into an AdjustProfile, which is saved as a JSON config file named "_SCake_AdjustProfile_Slot0.json" which stores position adjustments made for each character within an animation, this allows positional adjustments to save across Events/sessions
  • Camera position is now saved per-animation and saves with the AdjustProfile (the JSON that stores position adjustments) .. - "Use Global Cam Adjustment" added to Preference Settings, while enabled the cam position reverts to using a global position and ignores the new AdjustProfile system .. - "All HumanIDs Match" added to the System Settings, while enabled "Human NPC" IDs will all be compatible with one another (all considered as "Human" like before this update)
  • "Player Matches HumanIDs" added to System Settings, while enabled the player will be compatible with all "Human NPC" IDs, including 'Human' and 'Player', otherwise only the player is only compatible with 'Player' in CharacterID compatibility checks (Enabled as the default behavior but allows future support for Player Unique animations when players use replacers that are non-human or have unique anatomy and wish to configure which anims do/don't work manually or install anim paks dedicated to that replacer)

Changed :
  • Re-enabled animation asset validation in the register with new code that reduces redundancy and should be much more efficient (A very small number of users may experience increased load times from this change thanks to a strange UE5 bug, however that increase shouldn't be nearly as long as before, I tried running validation as a batch to work around this issue but then I ran into yet another UE5.1 bug that prevented that method from working so we're just going to have to deal with it)
  • SCake's UI should now show through the Loading Screen and in-game menus (Done for debug purposes, this behavior will most likely change again in the future) .. - When registering Animation or Events, Invalid Climax Variants will now cause the Anim/Event fail to register (previously just removed the climax var, to make the experience more straightforward and enable better debugging this has changed, also allows some optimizations during playback)
  • Default behavior for camera handling during player involved animation events now uses the new AdjustProfile by default (may need to adjust the camera each time a new animation crops up depending on your preferences, or enable the "Use Global Cam Adjustment" setting)
  • API Dispatcher "SCake_ED_AnimStart" now calls after an Animation Event has actually started playing an animation rather than during initialization, this ensures all parameters are set by the time the Dispatcher is sent

Removed :
  • API Function "SCake_GetEventCompParams" is no longer in the API since it's made redundant with variables now exposed (removing the function is better for future compatibility)
  • "Auto Save Frequency" in Game Settings removed since it's a normal in-game setting now

Fixed :
  • Human Sex Equip settings not being switchable in the menu (Caused by mis-named callback variable)
  • Added additional validation checks for when an invalid UniqueID is passed, allowing earlier failures with more predictable behavior
  • If an animation fails to load during playback, an error is now displayed in the UI and the animation should end. This check also forces the animation to load before attempting playback, which should fix the rare instance of animations refusing to play even if they are installed properly
  • Animation Handler should now only try to unequip equipment when an animation is starting and not when an animation ends
  • Removed a fail case where the camera could be adjusted if the player bugged out the UI and was able to be in an animation while controlling another animation (This bug was inaccessible without external modules)
  • When controlling an animation the menu entries should now properly update if the Animation Event switches to an animation with a different slot order


What's Next?

We all expected the Sakurajima update to break stuff, however I don't think we quite expected it to break literally every single mod! So this puts me in a bit of a strange position and has basically forced an immediate shift in focus. After the update was announced I decided to hold out on a couple of things just to see what the update changed and how things progressed, specifically I waited on working with the Lust Module and Model Replacer idea, just doing a bit of internal game research in the mean time while working on SCake itself. This ended up being a double edged sword... I didn't expect all mods to break, I just expected 'aspects' of mods to break, but since they all broke this means the framework our community was using for gender-based model replacers no longer works! This means I'm immediately shifting focus on trying to build the flexible model replacer framework. It would have been nice if I already had a framework rolling, but it's also good to know I don't have to re-build things after a ton of work, especially since Palworld now has a new 'skin' system and.. hats? So I'll be able to freely investigate how those things affect these systems and maybe add support/compatibility directly into the design of the framework!
After that I'd like to work a bit on getting multiplayer working, but I have a feeling the model replacer framework is going to take a good bit of time to get rolling. I do have another 'secret' release coming up though, nothing too interesting, but it 'may' spark some additional interest... maybe?

Current Road Map
1 ) Build Model Replacement Framework
2 ) Work on anim packs and try to expand releases
3 ) Consider/Test multiplayer support
Comments  loading...
Like(0)
Sign Up or Log In to comment on this post
michaelpstanich
Public post

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

I think I’ve just settled into doing large updates for SCake, honestly. Wasn’t really the plan but, honestly, there hasn’t been enough movement in lewd Palworld modding to really justify more intense releases or pressing features. But you’re not here for the preamble, so let’s get sweet!

Alright, so this is another big version release similar to SCake 0.2 DEV, though there’s no ‘breaking’ compatibility like last time (those JSON changes were necessary though >.<). This update focused on getting some validation working properly, implementing preferences and gender options, as well as requested feature additions like animation selection/switching. My personal favorite additions this update is the custom gender settings and the new expressions settings for animations. With custom gender settings you can define how a M/F character will actually be recognized by SCake, this allows you to make all pals, regardless of the in-game gender, be recognized as a single gender, swapped genders, futa types, ect! This will be super helpful if you use replacers which replace both in-game genders, or if you want some futa body goodness. Expression settings (FaceExpress/Climax) allows animators to set the facial animation of characters in an animation, which should help make some animations more expressive and interesting!
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.3 DEV (Beta)
(Note : This version temporarily removes the Animation Montage validation when registering animations. If you're making anim packs, ensure the animations play properly in-game before releasing your pack if possible.)

Added : Whether Sexual Heat is rising or lowering is now recorded by the save file (was just defaulting to always increase)
Added : API Function "SCake_StartAnimEvent" which gives access to all animation options at once with defaults (Passing no EventID will scan for a random animation to play, similar to other start anim functions)
Added : API Function "SCake_ValidForAnim" which checks if a character is valid to start an Animation Event (I'm transitioning validity checks into these kinds of functions for more general use and reduce redundancy)
Added : API Function "SCake_GetCompatEvents" which returns the EventID for compatible animations for the passed params
Added : FaceExpress and FaceExpressClimax to JSON for animations while allows setting the facial expression for while the animation is playing and for orgasms respectively (check the templates for possible settings)
Added : A hidden setting "Set_ReportRegFails" was added to the SaveSystem file, switch this to true and a long string will be sent to the report output covering all failed Anim/Event Register returns, may be useful if animations fail to register and you need to debug which failed (Note : The parser wasn't designed with these returns in mind so it may not always return useful data, to enable you must edit the SaveSystem JSON for the save you are testing on)
Added : Compatibility checker now checks the Size parameter registered with Animation Events
Added : "Excluded Tags" is now functional when starting animations through the API
Added : "Preference Settings" submenu to SCake's main menu (Note : Most preference settings will be checked with the compatibility checker, if a mod starts anims while bypassing compatibility checks these may not function as intended)
Added : "Block Female Only Anims" to Preference Settings, attempts to block/invalidate anims with 'Female on Female' intentions
Added : "Block Male Penetrated Anims" to Preference Settings, attempts to block/invalidate anims with 'Male on Male' intentions
Added : "Block Straight Anims" to Preference Settings, attempts to block/invalidate anims with 'Male on Female' or 'Female on Male' intentions (This also blocks all futa animations if futa flags are set)
Added : SCake's UI now supports menu pages, can navigate between pages through a defined count
Added : Animations should now fail to start with characters that are knocked out/dead (Technically a fix for characters partially reviving when triggering SCake animations as well)
Added : Animations will now fail to start with characters that are in a sleeping state (Technically also a fix for sleep animation issues, if you want to start animations with sleeping characters try waking them up first)
Added : Animations now end when a character involved takes damage
Added : SCake now has the ability to assign arbitrary genders separate from the game's assignment, only used when specifically checking gender through SCake
Added : "Change Gender Assignments" to the Preference Settings which 'should' list all possible CharacterIDs and allows manual assignment of SCake genders, which should save into the SaveSystem JSON file. (Note : All 'human' characters share the same ID within SCake, which includes the player as human)
Added : "Game Settings" submenu to SCake's Main Menu which covers Palworld native settings
Added : "Auto Save Frequency" to the Game Settings menu which alter's the in-game auto save frequency (In effect also changes SCake's auto save frequency since SCake saves alongside the game's normal save)
Added : When animations switch during playback (like when switching stages) compatibility will be re-checked and slots re-assigned (allows dynamic Animation Event switching and arbitrary animation playback, as well as fixes slots not aligning properly through events)
Added : Human NPCs (well, non-pals at least) now show their BP_Class when their name is displayed for easier finding/editing in SCake's settings (This change will most likely be temporary until better solutions are found, most notable place this shows up is in the control animation menu)
Added : If no facial expression is set for an animation, default behavior will now take over with 'HalfClose' defaulting for animation playback and "Close" defaulting for orgasms
Added : The Animation Control menu now shows the currently playing animation event
Added : Placed an example LoadList in the AnimJSON folder, "_LoadList_Example.json" which shows how to build the load list and includes all currently known released anim packs

Changed : SCake now loads animations synchronysly instead of async like before, this will cause the loading screen to stall and take a bit longer. (Discovered some odities and people kept complaining about the async loading, so we're just going to do it all in a single frame for now)
Changed : SCake's default loading method for spawning the "ProjectSugarCake" actor (Using a new Subsystem Injection method which should have SCake load sooner than before but also load more reliably in multiplayer by bypassing UE4SS's injection method, UE4SS is still required and the old method is used as a fallback should subsystem injection fail)
Changed : Sexual Heat is now gained during Erotic Animations independant of natural Sexual Heat gain, this rate is x25 stronger than natural generation and stacks
Changed : Moved validity checks outside of the Animation Player so it runs before an animation even tries to start (this is an optimization, if you bypass the API and try to start an animation directly from the EventComp, it may now fail to start/play correctly, if there's a valid reason not to use the API ensure you are validating everything is compatible beforehand)
Changed : "Valid For Animation" checks and systems overhauled for better modularity and additions (should also perform faster in situations where multiple compatibility checks must take place within reasonable actor limits, however large numbers of actors (more than 4) in a single scene may perform worse in some situations but will not suffer from random failures)
Changed : Character arrays passed for animation playback should now act in a deterministic way (Compatibility is now done in a non-random way, previously while the functions were linear in comparing compatibility they were passed as TMaps, which do not resolve into a deterministic array meaning outcomes where seemingly random, the Pal Character Array is now passed directly and not altered through-out the process.)
Changed : "Settings" are now "System Settings" to help differenciate between other new settings menus
Changed : Animation List and Animation Event List in the menu now divides into pages with 20 entries per-page (Should be much easier to navigate, note the page sorting is not consistent because of how UE5 handles hashing)
Changed : In instances where the game doesn't assign a gender, 'Male' will now be used by default (Only affects like, 2 human NPCs at the time of writing, felt this was the best option to make compatibility settings work closer to expectation but may still cause some strangeness. More advanced methods/exceptions will need to be implemented in the future.)
Changed/Fixed : Minor UI related things (spacing, readability, typo fixes, ect)
Changed/Fixed : While in an Erotic Animation, characters who orgasm will now continue decreasing in Sex Heat and no longer gain the increase for being in the animation itself until reaching zero or triggering an increase in Sex Heat from another source to trigger Sex Heat back into a rising state.

Removed (Techincally?) : Removed multiplier to Natural Sexual Heat generated while in Erotic Animations (Was technically broken in 0.2.1 since I had incomplete changes left in there)
Removed : API Function "SCake_StartAnimEvent_Advanced" is no longer available, use the new "SCake_StartAnimEvent" API Function which includes all the same variables and more
Removed : Register no longer validates if Animation Montage paths are valid (This validation step will become a debug option in the future, the current validator causes some issues for some players and extends loading time as it calls the Asset Registry, no idea why)
Removed : Characters no longer play the "Happy" action after anims (This also added SAN and affected AI behavior, may replace with a more dynamic system)

Fixed : Sexual Heat triggering a decrease when values were too close to 0.0 (Float percision error I didn't account for, now fixed)
Fixed : Natural Sexual Heat progression should now properly increase instead of constantly causing a decrease. (was caused by float percision error)
Fixed : "Valid For Animation" checks should no longer suffer from sporadic behavior/failures when comparing actor counts above 3
Fixed : After checking the Animation Event List, closing the menu without backing out first, then entering a player involved animation should no longer get the description box stuck on-screen with the details of the last viewed Event item
Fixed : Animation Events should now properly cull duplicate tags (worked before, but some variable changes broke the function somehow)
Fixed : Player should no longer have duplicate references within the tracker, fixing a number of issues (May not be fixed for mulitplayer, was caused by extra IDs being coded to point toward players when loading a game, current fix makes an exception and ignores these IDs)
Fixed : Aroused morph for the player should no longer act unpredictibly or 'flicker' (caused by duplicate reference fix)
Fixed : "SCake_ED_PalAroused" will now only call if a character went from not aroused to aroused as intended (Was calling any time Sex Heat changed before)
Fixed : Sex Heat getting stuck increasing after a character had been in an Erotic Animation
Fixed : The animation player now calculates its on-tick/per-frame functions after physics have applied, preventing a couple of issues (Fixes some odd positional flicker when playing at high framerates, fixes expressions not always applying correctly, fixes some logic interfering with other functions which tick during physics)
Fixed : CharacterID should no longer parse incorrectly within SCake's logic code fixing strange inconsistencies and lucky/alpha pal compatibility (For example, 'JetDragon' should not register as compatible with other other IDs that end with 'Dragon')
Fixed : Automatic compatibiltiy checker for CharacterIDs should now work for Lucky/Boss/Variants properly (Fixed with internal CharacterID processing fix)
Fixed : SCake should no longer run as if it's in-game when entering a game then heading back to the title screen (implemented a better title screen detection method)
Fixed : Animation Events now correct slots while switching animations/stages so Events that don't have slots aligned through-out should now correct themselves during playback (as-in, if slot 1 switches to slot 0 from stage 1-2, the animation should correct itself rather than breaking or stopping the animation)
Fixed : Animation Events not starting with proper offsets configured on an animation's start (was only applying offsets after the first stage had started, should now load properly on the first stage as well)
Fixed : Animation Player should now properly track how many characters have orgasmed and how many times
Fixed : Expressions not applying to all characters in an animation at all times, also fixed expressions applying too rapidly causing some strangeness (Most notice-able on the player if their expression was forcefully changed)
Fixed : Animation Player calculating character positions multiple times per-frame
Fixed : Animation Player causing some AI weirdness (SCake's Action Override had some flags set that could change AI behavior in some rare cases)

What’s Next?
Ok, so I’m going to talk a lot on ‘what I would like to do’ but can’t guarantee any of this will actually become a reality soon or anything. My goals from last week didn’t end up happening as priorities shifted as requests for the same few features did show up a lot, so in regards to SCake itself I’m effectively on the same goals as last release. However, there’s some other things I’d like to work on besides just SCake, specifically I want to actually get some animations out (I’ve been really slow about it X.x) and introduce breeding/lusting. Breeding may end up being part of SCake itself as an integrated feature, which would make sense, but for Lusting this would be a gameplay module where different pals would automatically ‘lust’ after other characters automatically as their Sexual Heat rises higher and higher while also introducing random sexual encounters. We’re still lacking a lot of animation compatibility so one feature I was looking at implementing was a system for “animation sets”, TemTemLover has been making animations that are cross compatible with each-other to cover a large number of pals all in one go. While I had talked about this type of things in the past and started my own system for it, I think integrating this kind of thing for automatic configuration in SCake would be a great idea as well, but I don’t know how complicated this would be to implement in a user friendly way so I’m still not sure if I want to officially add this to the plans quite yet.
Additionally, I spent a rather embarrassing amount of time researching and reverse engineering Palworld to learn more about its internal systems beyond what I needed to just see what was possible and, man, there’s a LOT that’s possible. One of the more interesting things I investigated related to SCake however, is the idea of making a more dynamic and SCake compatible model replacer mod framework. There is currently 2 frameworks that sort of do this kind of thing, one is for player textures and another is for pals and their models, however both of these are limited in ways I don’t really like and may not be sufficient in the long-term should Palworld lewd mods ever really take a strong hold. So, I’ve been discussing the possibility of shifting some focus on making a model/texture replacer framework that is much more dynamic with json configuration and SCake integrations with additional unique features like supporting additional genders (SCake integration exclusive) or configuring body morphs and clothing set-ups. This would, of course, be another massive project so I’m not promising anything, but the more I think about it the more interesting it sounds, so I may take a stab at it to see where it leads!
Current Road Map
1 ) Create Lust Module
2 ) Work on making some animations (seriously)
3 ) Research sockets system for dynamic attachments and furniture support
4 ) Investigate/prototype model replacer framework
On Hold ) Work on multiplayer support
On Hold ) Introduce a built-in SCake Notif-system for animations to trigger certain effects (like changing arousal meshes or changing eyes/mouth)
Comments  loading...
Like(1)
Sign Up or Log In to comment on this post
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(2)
Sign Up or Log In to comment on this post
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(1)
Sign Up or Log In to comment on this post
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(2)
Sign Up or Log In to comment on this post

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.
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.