Skip to content

Conversation

@PurSnake
Copy link
Contributor

@PurSnake PurSnake commented Oct 5, 2025

Co-Authored-By: @ComedyLost
They started it first and he made good start base, but i still kinda rewrote all that, BUT I want to show that them worked on it too!

Linked Issues

#6212

Associated Funkin PR

Assets PR: Link

Description

Janky a bit, but still...

This PR revives old CharacterPlayer class with cool features.
Preview your characters animations, including PlayAnimation event! (Also includes custom animation notekinds, since character's scripts are also loaded)

Also some optimization for ScriptEvent stuff and icons reloading.
(Also now NoteScript event)
And I HOPE no performance issues. (I tested and there was none :P)

Screenshots/Videos

image image

Funkin_9KwuHDh7ZL
Funkin_kMIPj8C8ej

!!!! Showcase video

This isn't the best thing I've written, but OH MY GOD, I did it all in two hours.

P.S. If changes are needed, I will make them immediately after requesting them.
(Like fix all characters scripts for this pr and etc)

@github-actions github-actions bot added size: large A large pull request with more than 100 changes. status: pending triage Awaiting review. pr: haxe PR modifies game code. labels Oct 5, 2025
@AbnormalPoof AbnormalPoof added the type: enhancement Involves an enhancement or new feature. label Oct 5, 2025
@EliteMasterEric EliteMasterEric added status: reviewing internally Under consideration and testing. and removed status: pending triage Awaiting review. labels Oct 6, 2025
@EliteMasterEric EliteMasterEric self-requested a review October 6, 2025 00:31
@EliteMasterEric
Copy link
Member

EliteMasterEric commented Oct 6, 2025

Fantastic, this is a great feature to finally clean up.

For the issue where characters expand out of the box, we could look into expanding the preview box to match the "full" size of the character based on its bounds. Or we could leave it, having the characters go out of the box is a little charming.

Note to self: BaseCharacter.debug is true if the character is not being used in a stage, so you can use if (debug) {} in any scripts which cause issues when used in the chart editor via the preview. Do you have a list of all the characters that are currently causing these kinds of issues? (Blazin' is a likely culprit).

EDIT: At some point I want to go into this PR and squash it, then I can edit the commit message to include Co-authored-by: ComedyLost <[email protected]>

@MightyTheArmiddilo
Copy link

Might not finish my version in favor of this one, it's great.

For the issue where characters expand out of the box, we could look into expanding the preview box to match the "full" size of the character based on its bounds. Or we could leave it, having the characters go out of the box is a little charming.

Expanding the box to the character's full bounds might cause the window to become BIG when it comes to things like BF's attack animation.

@ComedyLost
Copy link

All characters that are broken (that I could find)

  • All characters with a dark variant [Errors when trying to add the default variant]
  • Pico (Speaker Shooter) [Errors while trying to grab shooting chart]
  • Nene (All Versions) [Errors onUpdate while trying to add A-Bot stuff]
  • Otis [Same errors as Nene & Pico (Speaker Shooter)]
  • Spirit [Errors when trying to add to stage]
  • Blazin' characters [Errors when trying to hit a Blazin' specific notekind]
  • Tankman (Atlas) [Fully crashes the game]

@Hundrec Hundrec added topic: chart editor Related to the operation of the Chart Editor. topic: changes assets Modifies the assets submodule, or has an associated pull request in the funkin.assets repository. labels Oct 6, 2025
@Hundrec Hundrec linked an issue Oct 6, 2025 that may be closed by this pull request
3 tasks
@PurSnake PurSnake force-pushed the chart-buddies branch 3 times, most recently from 625a3e7 to a0c2e76 Compare October 7, 2025 14:43
@AbnormalPoof AbnormalPoof added status: reviewing internally Under consideration and testing. and removed status: reviewing internally Under consideration and testing. labels Oct 14, 2025
@Hundrec Hundrec added status: needs revision Cannot be approved because it is awaiting some work by the contributor. and removed status: reviewing internally Under consideration and testing. labels Oct 14, 2025
@Hundrec
Copy link
Member

Hundrec commented Oct 14, 2025

How is this doing? Does it function perfectly or still need some character fixes?

@AbnormalPoof AbnormalPoof force-pushed the chart-buddies branch 3 times, most recently from 46f6695 to 49856e7 Compare October 14, 2025 13:13
Copy link
Member

@AbnormalPoof AbnormalPoof left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just did a rebase on this, it works great with the asset changes!
I'll fix the characters myself internally.

@AbnormalPoof AbnormalPoof added status: reviewing internally Under consideration and testing. and removed status: needs revision Cannot be approved because it is awaiting some work by the contributor. labels Oct 14, 2025
@trayfellow
Copy link

trayfellow commented Oct 14, 2025

The trojan horse truly was the contributors we made along the way

you guys ARE the trojan horse

@Hundrec
Copy link
Member

Hundrec commented Oct 14, 2025

Yeah man
The contributors carry the patches

@NotHyper-474
Copy link
Contributor

We are all bros...

@PurSnake
Copy link
Contributor Author

I'm trying to hold back my tears

@biomseed
Copy link

Expanding the box to the character's full bounds might cause the window to become BIG when it comes to things like BF's attack animation.

Noticing 👀

@biomseed
Copy link

biomseed commented Oct 14, 2025

For the issue where characters expand out of the box, we could look into expanding the preview box to match the "full" size of the character based on its bounds.

That wouldn't work for things like Blazin' where overlap of sprites is part of the design.

@EliteMasterEric
Copy link
Member

EliteMasterEric commented Oct 19, 2025

Expanding the box too much would make it very big for things like bf-attack, but currently it doesn't expand ENOUGH for several characters like parents-christmas.

It should at least consistently hold the idle animations.

I'm also working on fixing all the characters that break when using them in the preview.

EDIT: The character preview seems to be updating its size to match the PREVIOUS character (this is obvious if you switch characters a bunch), the problem is that anything I tried didn't work, so this is probably a HaxeUI-related issue and not necessarily Funkin's fault.

@MightyTheArmiddilo
Copy link

EDIT: The character preview seems to be updating its size to match the PREVIOUS character (this is obvious if you switch characters a bunch), the problem is that anything I tried didn't work, so this is probably a HaxeUI-related issue and not necessarily Funkin's fault.

I was able to fix this myself in my closed PR (might redo it cuz I got nothing better to do) and all I did was move the code that resized the window out of the if statement reading the preview's dirty variable.

@Hundrec
Copy link
Member

Hundrec commented Oct 25, 2025

Mighty, can you add the fix to this PR through PurSnake?
That way your commit will make it in with the currently reviewed draft of the PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: haxe PR modifies game code. size: large A large pull request with more than 100 changes. status: reviewing internally Under consideration and testing. topic: changes assets Modifies the assets submodule, or has an associated pull request in the funkin.assets repository. topic: chart editor Related to the operation of the Chart Editor. type: enhancement Involves an enhancement or new feature.

Development

Successfully merging this pull request may close these issues.

Enhancement: Chart Editor Character Previews

9 participants