Skip to content

You thought it was a regular CYF update...But it was me, IO!

Compare
Choose a tag to compare
@RhenaudTheLukark RhenaudTheLukark released this 16 May 00:55
· 27 commits to master since this release

OwO What's this? A new CYF release? And it adds file manipulation?! Oh boy oh boy!

Yeah, basically we decided to trust the users a bit more and added a way for modders to manipulate files, as long as they are contained within your mod! Aren't we generous? :D

And that's not all we added! This release comes with a couple of changes that'll make everyone's life easier (or make some more stuff possible!), including text scaling, modifiable player stats or even...erm...I guess that's it for the VERY big changes!

As usual, we'll give you the full changelog since CYF v0.6.2.2 so you can see how much time and love we poured into this new version of Create Your Frisk! Cheers!

IMPORTANT NOTE: If you're upgrading from v0.6.2.2, please copy the new Default folder over your current one.

Scroll to the bottom for downloads.


Major Changes:

  • The Misc. Object
    • Added Misc.OSType to tell which OS the user is on
    • Added Misc.OpenFile, which creates a new instance of The File Object (see below)
      • Added Misc.FileExists to check if a file exists before reading from it
      • Added Misc.ListDir which gives you the names of all files or folders in a given path
  • The File Object
    • Added the File object, which allows creating, reading from and writing to files!
    • Limited to ONLY your Mod folder
    • Can be found in "The Misc. Object" in the documentation
  • Battles
    • The hitbox debugger now only activates with "H" if the regular Debugger is already open (F9)
    • Added BattleDialogue as a shortcut to BattleDialog, so new users don't have to remember to use the "typo"
  • The Overworld
    • Added support for the Item Box menu from Undertale (see "Overworld - The Inventory Object")
      • Added this as an example event in the Overworld test map
    • Added Sprite Objects to the Overworld
    • Added Text Objects to the Overworld
  • The Player Object
    • Player.atk and Player.def can now be modified
    • Player.ResetStats has been added, which resets the player's Max HP, ATK and/or DEF to their original values
    • Player.SetMaxHPShift now takes an optional argument to prevent any sound from playing
  • The Sprite Object
    • Added sprite.xpivot and sprite.ypivot
  • Text Objects
    • Added Text.Scale, xscale and yscale!
    • Added 3 shortcut functions:
      • Text.SetTail --> Text.SetSpeechThingPositionAndSide
      • Text.SetWaitTime --> Text.SetAutoWaitTimeBetweenTexts
      • Text.Remove --> Text.DestroyText (we know you guys have been waiting for this one :P)
  • Enemy Scripts
    • Added isactive to monster scripts, which tells you if a monster is active
    • Removed the third argument in Move and MoveTo, as it was actually a leftover argument that did nothing

Bug Fixes:

  • Battles
    • Fixed a memory leak related to waves. You should no longer have increased memory usage as more and more waves are played!
    • The debugger and bullet hitbox displays are now properly "attached" to the camera, and will always stay in the same place on-screen, even during screen shakes and when moving the camera manually
    • Added error messages for many operations that would normally give you a big scary "send this code to the developers" screen
    • Fixed BattleDialog, encountertext, deathtext and Text Objects playing the text sound for the space character " "
  • The Overworld
    • Fixed a bug where an encounter entered from the Overworld would always ignore unescape
  • Enemies
    • Fixed a totally-blank error message that showed when a monster script failed to load a sprite
    • Fixed enemy speech bubbles having incorrect sizes in their XML files, which broke automatic line breaks.
      You can thank @CMD_God#0490 in the Discord server for this!
    • Fixed BindToArena doing nothing on encounter start
  • The Bullet Object
    • Fixed being unable to call bullet.sprite.Dust
    • Fixed a bug where calling bullet.sprite.SetAnimation on a bullet might make it incorrectly scaled in future waves
    • Calling bullet.sprite.Remove will now call bullet.Remove instead of erroring
    • Bullet hitboxes now account for bullet.sprite.rotation and bullet.sprite.SetPivot properly, for both pixel-perfect and non-pixel-perfect bullets
    • Fixed a pixel-perfect collision bug causing ppcollision hitboxes to be displaced on the first frame the bullet exists
    • Pixel-perfect collision detection no longer lags 1 frame behind where the bullet currently is
  • The Audio Object
    • Fixed the volume argument for Audio.PlaySound always being ignored
  • The Player Object
    • Fixed a bug where the player's hitbox would stay at the bottom-left corner of their image, when using an image bigger than 16x16 pixels
    • Fixed Player.SetMaxHPShift's third argument setting the player's max HP to weird values when Player.lv was > 1
  • The Inventory Object
    • Fixed a bug where calling Inventory.AddItem, rather than Inventory.SetInventory, would have the added items carry over to other mods
    • Fixed Inventory.AddItem giving an incorrect error message if you haven't called Inventory.AddCustomItems first
  • The Text Object
    • Fixed a major bug where [instant:stopall] and playerskipdocommand were completely ignored by text objects
    • Fixed a rare bug where the auto-line breaking feature of text objects would start to chop off the last few characters of text
  • The Documentation
    • Fixed some enormous misinformation about the pixel-perfect collision system, and re-wrote it to be understandable by everyone
  • Moonsharp
    • Made dofile give more precise errors

Downloads: