+4 votes

Whenever I load the actual "game" scene of my project, I get multiple errors along the lines of:

ERROR: Another resource is loaded from path: res://Unit/UnitLogic.vs (possible cyclic resource inclusion) At: core\resource.cpp:78

It says it for a few visual scripts, gdscripts, and to one scene. This doesn't seem to cause any issues when playing/debugging, but is there a way to clean these up? I'm not sure how to go about that.

asked Mar 14, 2018 in Engine by rokato (16 points)

3 Answers

0 votes

I had the same problem and in my case it was a problem with file name.
I was loading a resource with capital letter: "Squares.gd" but on my drive I had "squares.gd". I've changed the filename and I don't have this error anymore.

answered Jan 29, 2019 by Rafa_GBG (14 points)
+1 vote

I got these when loading the same resource from different Threads with both:
ResourceLoader.load_interactive(path)
and:
ResourceLoader.load(path)
Switching to loading the resource once and using Resource::duplicate(...) worked for me.

Maybe see This github issue

answered Jun 4, 2019 by Larpon (22 points)
0 votes

I encountered this error because I was loading the same resource concurrently in different threads. I resolved it by wrapping the "load" call with a mutex lock to ensure threads never loaded the same resource synchronously.

So instead of this:

func load_my_resource(var path:String) -> Resource):
    load(path)

Something like this:

var mutex = Mutex.new()
...

func load_my_resource(var path:String) -> Resource):
    load_mutex.lock()
    var result = load(path)
    load_mutex.unlock()
    return result
answered Mar 29 by Poobslag (62 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.