wojtossfm / godot_scml_importer

MIT License
33 stars 6 forks source link

Tried importing a character and got hit with thousands of errors. Trying to run the SCML file makes a blank scene and gives an "Error while loading file" #27

Closed dustingunn closed 5 months ago

dustingunn commented 9 months ago

Most of the errors were a repeat of the first one here:

res://addons/import_scml/import_plugin.gd:202 - Invalid get index 'folder' (on base: 'Dictionary'). res://addons/import_scml/import_plugin.gd:202 - Invalid get index 'folder' (on base: 'Dictionary'). res://addons/import_scml/import_plugin.gd:202 - Invalid get index 'folder' (on base: 'Dictionary'). res://addons/import_scml/import_plugin.gd:202 - Invalid get index 'folder' (on base: 'Dictionary'). res://addons/import_scml/import_plugin.gd:202 - Invalid get index 'folder' (on base: 'Dictionary'). res://addons/import_scml/import_plugin.gd:404 - Assertion failed. scene/resources/packed_scene.cpp:1053 - Parameter "p_scene" is null. scene/resources/packed_scene.cpp:1053 - Parameter "p_scene" is null. core/io/file_access.cpp:807 - Condition "f.is_null()" is true. Continuing. core/io/file_access.cpp:807 - Condition "f.is_null()" is true. Continuing.

An older save file of the character did import, but only the first animation. Could be related to that older save file using less features, such as hitboxes, events, sound events or properties.

wojtossfm commented 9 months ago

Can you post a simple reproduction archive with an scml file and some placeholder images showcasing this? What version of godot and spriter are you using?

dustingunn commented 9 months ago

SCML_Example.zip I'm using Godot 4.2 and the newest version of Spriter Pro (updated by Steam)

dustingunn commented 9 months ago

Here's an empty Godot project with the addon and SCML project imported:

SCML Example Godot Project.zip

wojtossfm commented 9 months ago

So most of the issues as far as I can see stem from:

There is also something awkward happening in the animation time that I have yet to identify. Not sure if/when I can find a clean solution but I figured I would give you this feedback in case it helps you adjust your spriter project to get it to work in the interim.

dustingunn commented 9 months ago

Is there a way to switch entities? Like the Spriter feature allowing different kinds of characters and animation sets in 1 SCML file.

wojtossfm commented 9 months ago

Depends what you mean by that. I have had spriter files with e.g. texture swaps in animations for eyes and that should be supported. Likewise I've had an scml file with 3 character variants and that would also load in as 3 characters in one scene file.

https://craftpix.net/freebies/free-minotaur-tiny-style-2d-sprites/ this show-cases the eyes in the "idle blinking" animation. I'm afraid I couldn't quickly find a ready free example for the 3 characters in one file that I could share.

If you mean something else then I'm afraid I would need you to elaborate more.

wojtossfm commented 9 months ago

I've made a branch with at least some fixes but not everything that you are using is supported. You can try using https://github.com/wojtossfm/godot_scml_importer/tree/27-importing-issues and read the amended README