godot – El diccionario sobreescribe el valor cada vez que intento agregar un objetos

Estoy usando Godot (su lenguaje es GDscript) para crear un videojuego y estoy tratando de hacer una persistencia de nodos entre cambio de escenas, he seguido tuytoriales de youtube pero no logro adaptarlos a mi proyecto asi que estoy creando el propio, el problema viene esque cada vez que mando a llamar la funcion el diccionario se sobreescribe dandome un solo valor y aun asi no funciona bien…

# estas funciones se encuentran dentro de un singleton(guardar_datos_nvl_tmp,cargar_datos_nvl_tmp)
var dicc_tmp_nvls = {}
func guardar_datos_nvl_tmp(nombre_lvl:String):
    var objs = get_tree().get_nodes_in_group("guardar")
    for t in objs:
        if !t.has_method("guardar_info"):
            print("el "+ t +"  no tiene el metodo pa guardar su info")
            continue
        dicc_tmp_nvls(nombre_lvl) = t.guardar_info()

func cargar_datos_nvl_tmp(nombre_lvl:String):
    var nombre_obj = get_tree().get_nodes_in_group("guardar")
    if dicc_tmp_nvls.has(nombre_lvl):                                                                                                     # != null:# == nombre_obj: #(nombre_obj)
        for t in nombre_obj:
                if t.nombre_obj+String(t.num_obj) != dicc_tmp_nvls(nombre_lvl)("nombre"):# and dicc_tmp_nvls(nombre_lvl)("nombre") != null:
                    t.queue_free()

#esta funcion (guardar_info) se encuentra dentro de los objetos que deseo guardar su informacion

var nombre_obj ="Moneda"
var num_obj = 0

func guardar_info(): #esto esta dentro del objeto a guardar su info
    item = nombre_obj+str(num_obj) #esto brinda el nombre del objeto
    dicc(item) = {
            "nombre":nombre_obj+String(num_obj),
            "position_x": position.x,
            "position_y": position.y,
    }
    GuardarPartida.dicc_tmp_nvls = dicc.duplicate(true)
    return dicc