Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upon restart of editor, qodot_fgd.tres problem #162

Open
youredead117 opened this issue Jul 13, 2024 · 4 comments
Open

Upon restart of editor, qodot_fgd.tres problem #162

youredead117 opened this issue Jul 13, 2024 · 4 comments

Comments

@youredead117
Copy link

Hello, I'm reporting an issue with Qodot 4, I'm on Godot 4.2, latest steam version. I've downloaded Qodot from the AssetLib. When I run my godot project without Qodot installed, then install the addon, it works fine until I close Godot and re-open the project. Then whenever I hit the quick or full build buttons for a level it gives this error:

res://addons/qodot/src/nodes/qodot_map.gd:378 - Invalid call. Nonexistent function 'get_entity_definitions' in base 'Resource (QodotFGDFile)'.

Whenever this occurs no occluders or collision is built from the QodotMap node, only the meshes and lights (idk what other entities as I only have added lights).

So far the only fix is uninstalling Qodot addon, then reinstalling for every time I open the godot project.

The odd thing is that the code checks out, at least for me. I looked into the QodotMap node script, and the QodotFGDFile script, and they all have the functions and syntax blah blah. It shouldn't be giving this kind of error. The entity_fgd variable in QodotMap never gets replaced, heck even Ctrl clicking the function in QodotMap brings you to the correct function. Very bizarre.

@youredead117 youredead117 changed the title Upon restart of editor, godot_fgd.tres problem Upon restart of editor, qodot_fgd.tres problem Jul 14, 2024
@youredead117
Copy link
Author

youredead117 commented Jul 15, 2024

Update: Commenting line 67 - 70 fixes the issue, but omits the base fgd files' purpose. its just a bandage-fix. This time I got a different error:
res://addons/qodot/src/resources/game-definitions/fgd/qodot_fgd_file.gd:69 - Invalid call. Nonexistent function 'get_entity_definitions' in base 'Resource (QodotFGDFile)'.

Edit: the same issue is present with no colliders being built, but my custom entities in my own FGD get built. The console error isnt there anymore either. Sorry my first time bug hunting as such so expect this thread to be mostly me editing my own comments lol.

@youredead117
Copy link
Author

UPDATE: I fixed this issue fully by transferring all entity defs from the qodot_fgd.tres file to my custom fgd. I tried before this adding an export var "has_base" (a bool) then adding this:
if has_base:
search base fgd for entity defs
but somewhere it was still searching for entity defs in a base fgd that didnt exist, I enabled "has_base" on my custom fgd with qodot_fgd.tres as the base, and disabled "has_base" on qodot_fgd.tres, but still threw the same error. Anyways its fixed now YAY. still not closed though as its still a bug.

@italiatroller90
Copy link

Same problem here, but on Godot 4.3

@italiatroller90
Copy link

tried the comment from #156 and it works

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

No branches or pull requests

2 participants