v1.1.0-rc1 - this fucking update was long overdue lmfao
Pre-releaseWe've been working on this on and off and it started to take a lot more than we wanted... which is Bad. But, it wasn't in vain, we managed to add so many new things, fix many (i hope) things, and overall just improved stuff.
With this now we are entering the testing phase, a LOT of weird stuff happened and we ended up with things like an entire Flixel 6 update! (and SDL3 but who really gaf lmao). Here are some important changes I could list on the top of my head.
[Engine & Dependencies]
- Updated SDL2 to SDL3
- Flixel 6 (6.1.2, with backward compatibility) (Flixel)
- Updated both lime and openfl to newer versions
- flixel-animate update (Flixel)
- cne-hxvlc updated to 2.3.0
- Forked FunkinModchart into its own CNE fork
- Incremented API version by 1 (now on version 3) MAKE SURE TO UPDATE YOUR MODPACK.INI!!!
- Subsequently added a warning screen if the API version is outdated on the current mod
[Library & Class Changes]
- FlxView3D (Away3D) optimization (crashes in this release i think)
- angleFactor on FunkinSprite & FunkinText
- zoomFactor on FunkinText
- FlxTrail backward compatibility (Flixel)
- Rework Audio, FlxSound Stuff (Flixel)
- FlxGraphic.defaultDestroyOnNoUse added (Flixel)
[Rendering & Shaders]
- Added uncapped FPS option (scroll to the max amount of FPS in options)
- Shaders remade to use newer GLSL versions (if your gpu supports it)
- CustomShader deprecated in favor of FunkinShader.fromFile() (dont worry it still exists just uhm itd be nice if you guys moved on to the next thing okay?)
- ADDED MORE BLEND MODES!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (Flixel)
[Audio]
- Fix SoundFrontEnd.pause bugging out FlxSound time interpolation (Flixel)
- Fix proximityPan & proximityEnabled (Flixel)
[Assets & Build]
- Switch to source assets if the game folder has no assets folder
- Auto-switch to source assets when detected, regardless of TEST_BUILD flag
- Add IMPORT_BLACKLIST to Config.hx for hscript (DON'T WORRY IT'S UNUSED IT'S JUST FOR COMPATIBILITY)
- New multiple spritesheets loading (Paths.getMultiFrames([array]))
- Subsequently added
<spritesheet>node for character xml (no option in the editor yet)
[Scripting]
- Force .pack scripts to run as hscript type
- onPostInputUpdate is now an event (InputSystemEvent)
- Implement hxWebSockets (hi LJ sdgksjdfkjeksjfkjksf JAJAJAJAJAJA)
[Editors & Tools]
- Characters can now be changed in the Stage Editor
- New mod list sorting system that should be fairly scriptable
[UI & Input]
- Toggle fullscreen with F11 (not customizable for now, tentative)
- using UITextBoxes should feel a lot better
- Fix autopause (Flixel)
[HScript-Improved] (changes in the library itself)
- Made Important bugfixes and optimizations, some of them are:
- Static properties now must have their static accessors as well (i.e. you need to declare their
get_/set_function static). - Fixed an issue that setting
nullvalues to properties will throw an error. - Now you can define multiple interfaces in custom classes (sugar syntax).
- Optimized variable lookup by using a cache system (Thanks HEIHUAa).
- Static properties now must have their static accessors as well (i.e. you need to declare their
- Implemented warning reporting. Some cases like duplicated custom class declarations will be ignored and will send a warning.
- and many other optimizations performed (some of them by HEIHUAa, thank you :3).
- Added enum abstracts (with implicit values for
StringandInt) and full qualified paths to classes (i.e. allows you to reference them directly, i.e.flixel.FlxG.switchState()) (Thanks HEIHUAa). - Added Regular expresion support (i.e.
var reg = ~/[A-Z0-9._%-]+/i;). - Added String Interpolation (
var str = 'Hello $str1', ${getStr()};). - Added static imports (i.e.
import haxe.io.Path.normalize;(Thanks T-Bar).
i wrote most of this - hero
Now with this out of the way here's a bunch of PRs!
- [LANG] Add Portuguese by @Bitto1070 in #703
- fix meta loading in Chart.parse or idk what should i call this by @betpowo in #741
- Bump dawidd6/action-download-artifact from 2 to 6 in /.github/workflows by @dependabot[bot] in #750
- cam movement keybind quanted & added a local keybind by @KolzeYT in #739
- Clear Static Vars Map on Mod Switch by @rodney528 in #740
- onPostPlayerMiss by @rodney528 in #742
- Not Include "Sys" on non-sys targets by @Jamextreme140 in #758
- fixed character editor anim bug that happened when adding a new anim by @KolzeYT in #757
- HScript Update - Static Import by @Jamextreme140 in #765
- Add Nix shell configuration for compiling using Nix by @r6915ee in #760
- Improvement to the playAnim function by @chronicsilly in #776
- Improved Tankman Run Script + HScript Warning by @Jamextreme140 in #773
- Use sh alternatives and fix change directory in building shell scripts by @r6915ee in #769
- Add default font customization flags for FunkinText by @r6915ee in #762
- Don't use resetSprite as a static extension by @KarimAkra in #748
- Fix Icon anim/transition offsets by @M1-Aether in #747
- add flags to default imports by @chronicsilly in #782
- playanim if it was good by @chronicsilly in #781
- Fix MOD_ICON's misleading config comments by @hifishlol in #759
- push event to event list only if it doesnt exists yet by @lasystuff in #785
- I HATE CAMZOOMMULTI by @chronicsilly in #792
- Add onCloseSubState to MusicBeatState so that scripts can know when a SubState closes, and can even prevnt it by @ItsLJcool in #789
- Change FunkinModchart version to a more stable one. by @dotaxel in #800
- Option stufff for camer abop event idk by @chronicsilly in #811
- Add
onCloseSubStatescript event toMusicBeatSubstateby @richTrash21 in #817 - Add variation to Week.hx so it works in storymode by @Mooshie318 in #783
- Input System Rewrite by @maplesyruppppppp in #810
- Expand animation swapping function to support all variants by @Jurtaa in #822
- Ensure ghost is removed before deleting animation in character editor by @Jurtaa in #828
- Fix events file not being removed when all global events are deleted by @Jurtaa in #826
- Fixslop by @chronicsilly in #827
- Support for
hxvlc 2.0.0and higher by @richTrash21 in #818 - KeybindsOptions: Default categories accessible outside of the state, translation support for custom options by @Bitto1070 in #780
- Minor FPS Optimizations by @HEIHUAa in #820
- Prevent empty difficulty strings from accidentally existing by @Jurtaa in #832
- Save total of each rating to unused hits parameter in SongScore by @Jurtaa in #831
- Quick fix allowing hits to be counted even if showRating is false by @Jurtaa in #835
- Improve Accurate VocalsResync by @HEIHUAa in #833
- Don't pause persistent sounds in
FunkinParentDisablerby @richTrash21 in #840 - Fixed an issue with incorrect note.type in the "Export For Psych Engine" option. by @HEIHUAa in #841
- Use 'arch -x86_64' to force-compile on macOS 14/15 by @MRK2009 in #846
- attempt to fix hold note positions by changing the values in strum.hx by @LeonGamerPS1 in #842
- Input Improvements & Fixes by @HEIHUAa in #837
- UTF-8 by @HEIHUAa in #855
- Add a way of "cancelling" updateSustainClip by @sillyburg in #856
- Improve documentation generation scripts by @r6915ee in #814
- More accurate compilation error reports by @HEIHUAa in #861
- the fucking sfx delay that i hate by @KolzeYT in #864
- change the anim ghost from first frame to last by @KolzeYT in #870
- Removing CoolUtil.quantize from note budgeting by @HEIHUAa in #874
- repair ScriptableShader.shader = null by @HEIHUAa in #877
- optimize updateInput by @HEIHUAa in #878
- NoteGroup optimize by @HEIHUAa in #881
- fastSinCos - note by @HEIHUAa in #889
- flixel-animate implementation by @YoshiCrafter29 in #893
- Always use lastest FunkinModchart's release version by @dotaxel in #895
- Allow string values for radio buttons in options menu :D by @NebulaStellaNova in #896
- Re-implement onDraw functionality for FunkinSprite by @ItsLJcool in #897
- Character script, references fix. by @rodney528 in #871
- Fix NaN check in RadioButton options by @dotaxel in #899
- flixel-animate fix for cutscenes by @drfiffi in #907
- Better mouse overlapping function for CoolUtil by @Bitto1070 in #813
- that was supposed to be an flxobject ok by @Bitto1070 in #908
- Optimize Stress GF texture atlas by @MaybeMaru in #911
- optimize __notePerStrum by @HEIHUAa in #901
- Improved text handling and keyboard input functionality for UITextBox by @TerameTechYT in #900
- Charter/Editor additions and fixes by @TheZoroForce240 in #793
- add "onPostEvent" call by @sillyburg in #914
- Fixed / Refactored SysZip to actually work, and store compressed entries without uncompressing an entire zip by @ItsLJcool in #761
- Add Text displaying if the user is running an Experimental Version of CodenameEngine by @ItsLJcool in #933
- better mathutil because who doesnt like maths by @HeroEyad in #913
- Charter/Editor Add ability to copy selected items by Alt-dragging. by @HEIHUAa in #918
- noteAngle rewrite (+ -scrollSpeed fix) by @betpowo in #857
- Enable Mac OS Universal support, update hxvlc & actions dependencies, and also fix some other stuff by @MRK2009 in #931
- Fix component alphabets using the width of the wrong component by @Bitto1070 in #937
- "Delete Stacked Notes" functionality for the chart editor by @Bitto1070 in #935
- Fix game crash when creating a difficulty by @Bitto1070 in #943
- Optimize arrow handling by @HEIHUAa in #941
- Add ability to set custom alternate animation suffix by @r6915ee in #882
- Fix Commit Number in Main Menu by @NebulaStellaNova in #950
- Change the default value of "Multiplicative?" in the "Camera Zoom" event to be false. by @ADA-Funni in #974
- Zoomfactor on FunkinText by @HeroEyad in #1011
- Ratings event addition to the engine by @arer-as in #1015
- Add a flag related to Icon Movement on the Healthbar by @Circuitella in #1005
- read description by @sillyburg in #1016
- BloomEffect by @HEIHUAa in #894
- Add IMPORT_BLACKLIST to Config.hx by @Jamextreme140 in #1026
centeredCamerafor characters (fixes atlas cam pos) by @betpowo in #1027- Add "Select Strumline" Feature to Chart Editor by @Kobalts19 in #1017
- add jsdoc in httputil by @HeroEyad in #1003
- Use environment variables to change the Haxe version on both
release&debugeasily and set hxcpp compile cache without the "~" symbol by @MRK2009 in #1000 - Fix UITextBox to play sounds correctly when using C, V, or X keys by @r6915ee in #984
- Add camera offsets to the "Camera Movement" event. by @ADA-Funni in #972
- add global uistate fallback to allow scripting in non uistates by @TheZoroForce240 in #967
- Fixed charter editors by @HEIHUAa in #965
- Quantized sustain keybinds by @Bitto1070 in #956
- onPostInputUpdate is now an event by @betpowo in #948
- FunkinText zoomFactor fix by @Bitto1070 in #1019
- saves "centercam" to xml by @drfiffi in #1035
- Add angleFactor to FunkinSprite and FunkinText by @BloomEld in #1031
- EventManager-Optimization by @HEIHUAa in #964
- Fix a minor issue in StrumLine by @HEIHUAa in #958
- String buf by @HEIHUAa in #924
- Default Animation FPS For Characters by @peepeemann69 in #994
- Allows you to change the character in the Stage Editor. by @g3n-zu in #909
- fix zoom event to actually set to the final zoom when complete by @Bitto1070 in #955
- Add sum calculation functionality to dev CLI setup subcommand by @r6915ee in #953
- Fix Event UI Script for .pack files by @Bitto1070 in #906
- Update macOS from 14 to 15 in the workflow by @MRK2009 in #1039
- fix down/negative scroll again Hopefully by @betpowo in #1043
- script optimization by @HEIHUAa in #1044
- Add mod list sorting system by @r6915ee in #971
- "Swap Event Sides" option for charter by @Bitto1070 in #954
- Fix gitaroo man easter egg appearing while testing a chart by @KolzeYT in #1048
- Fix error caused by modifying Flags.MAX_SPLASHES by @HEIHUAa in #963
- Add 'CLASSIC' ease to Camera Zoom event by @sillyburg in #1053
- add blend modes to stage xmls + script defaults by @betpowo in #1059
- multiple spritesheets (no editor) by @betpowo in #1061
- Change funkin-modchart to codename fork by @KolzeYT in #1065
New Contributors
- @Bitto1070 made their first contribution in #703
- @dependabot[bot] made their first contribution in #750
- @M1-Aether made their first contribution in #747
- @hifishlol made their first contribution in #759
- @lasystuff made their first contribution in #785
- @richTrash21 made their first contribution in #817
- @Mooshie318 made their first contribution in #783
- @Jurtaa made their first contribution in #822
- @LeonGamerPS1 made their first contribution in #842
- @sillyburg made their first contribution in #856
- @drfiffi made their first contribution in #907
- @MaybeMaru made their first contribution in #911
- @TerameTechYT made their first contribution in #900
- @arer-as made their first contribution in #1015
- @Circuitella made their first contribution in #1005
- @Kobalts19 made their first contribution in #1017
- @BloomEld made their first contribution in #1031
- @peepeemann69 made their first contribution in #994
- @g3n-zu made their first contribution in #909
Full Changelog: v1.0.1...v1.1.0-rc1