Instance and add_child can't work

Godot Version

v3.5.3

Question

_ready()'s add_chird works.

wallgen()'s add_chird doesn’t work.

extends Spatial

var _maze_width : int
var _maze_height : int
const array_out_of_range = 2 #迷路外
const array_passage = 0 #通路
const array_wall = 1 #壁

# Declare member variables here. Examples:
# var a = 2
# var b = "text"







# Called when the node enters the scene tree for the first time.
func _ready():
	#pass # Replace with function body.
	var mywall = preload("res://scn/wall.tscn")
	self.translate(Vector3(0, 0, -5))
	var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	add_child(myw)
	print("置いた")

	

# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
	#pass



func wallgen() ->void:
	_maze_width = PlayerData._maze_width -2
	_maze_height = PlayerData._maze_height -2
	#_array = MazeArray.new(_maze_width,_maze_height)
	
		#_maze_width = Game._maze_width
		#_maze_height = Game._maze_height
	
	var mywall = preload("res://scn/wall.tscn")
	
	var mym = PlayerData.mazestrself
	var myma = []
	myma = mym.split(',')
	var mymai = []
	var myw : Spatial = null
	"""
	var myw = []
	for j in range(_maze_height):
		for i in range(_maze_width):
			myw.append(null)
			"""
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(0)
	
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai[i + j * _maze_width] = int(myma[i + j * _maze_width])
			if mymai[i + j * _maze_width] == array_wall:
				self.translate(Vector3(i, 0, j))
				#myw[i + j * _maze_width] = mywall.instance()
				myw = mywall.instance()
				#add_child(myw[i + j * _maze_width])
				add_child(myw)
				print(str(j) + "," + str(i) + "に壁を置いた")
	#_array.fill(array_wall)_maze_width
	


			#s += "%d,"%_array.getv(i,j)
			#mym += "%d,"%_array.getv(i,j)
			#print(s)
			#mym += "$"
		#mym = mym.replace("2,", "")
		#mym = mym.replace(",$", "$")
		#mym = mym.replace("1$$", "1")
		#mym = mym.replace("1$1", "line")
		#mym = mym.replace("$1", "1")
		#mym = mym.replace("line", "1$1")
		
			
			
		#var mypos = get_pos()
		#myw.set_pos(mypos)
			
			
		
	#self.translate(Vector3(0, 0, -5))
	#var mywall = preload("res://scn/wall.tscn")
	
	#var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#add_child(myw)
	#print("置いた")

— Debugging process started —
Godot Engine v3.5.3.stable.official.6c814135b - https://godotengine.org
OpenGL ES 2.0 Renderer: Mesa Intel(R) HD Graphics 615 (KBL GT2)

置いた
置いた
0,0に壁を置いた
0,1に壁を置いた
0,2に壁を置いた
0,3に壁を置いた
0,4に壁を置いた
0,5に壁を置いた
0,6に壁を置いた
0,7に壁を置いた
0,8に壁を置いた
0,9に壁を置いた
0,10に壁を置いた
0,11に壁を置いた
0,12に壁を置いた
0,13に壁を置いた
0,14に壁を置いた
0,15に壁を置いた
0,16に壁を置いた
0,17に壁を置いた
0,18に壁を置いた
0,19に壁を置いた
0,20に壁を置いた
0,21に壁を置いた
0,22に壁を置いた
0,23に壁を置いた
0,24に壁を置いた
0,25に壁を置いた
0,26に壁を置いた
0,27に壁を置いた
0,28に壁を置いた
0,29に壁を置いた
0,30に壁を置いた
1,0に壁を置いた
1,6に壁を置いた
1,18に壁を置いた
1,26に壁を置いた
1,30に壁を置いた
2,0に壁を置いた
2,2に壁を置いた
2,3に壁を置いた
2,4に壁を置いた
2,6に壁を置いた
2,8に壁を置いた
2,9に壁を置いた
2,10に壁を置いた
2,11に壁を置いた
2,12に壁を置いた
2,14に壁を置いた
2,15に壁を置いた
2,16に壁を置いた
2,17に壁を置いた
2,18に壁を置いた
2,20に壁を置いた
2,22に壁を置いた
2,23に壁を置いた
2,24に壁を置いた
2,26に壁を置いた
2,28に壁を置いた
2,30に壁を置いた
3,0に壁を置いた
3,2に壁を置いた
3,4に壁を置いた
3,6に壁を置いた
3,10に壁を置いた
3,12に壁を置いた
3,20に壁を置いた
3,22に壁を置いた
3,26に壁を置いた
3,28に壁を置いた
3,30に壁を置いた
4,0に壁を置いた
4,2に壁を置いた
4,4に壁を置いた
4,6に壁を置いた
4,7に壁を置いた
4,8に壁を置いた
4,10に壁を置いた
4,12に壁を置いた
4,13に壁を置いた
4,14に壁を置いた
4,15に壁を置いた
4,16に壁を置いた
4,17に壁を置いた
4,18に壁を置いた
4,19に壁を置いた
4,20に壁を置いた
4,22に壁を置いた
4,23に壁を置いた
4,24に壁を置いた
4,26に壁を置いた
4,28に壁を置いた
4,30に壁を置いた
5,0に壁を置いた
5,2に壁を置いた
5,6に壁を置いた
5,8に壁を置いた
5,12に壁を置いた
5,18に壁を置いた
5,20に壁を置いた
5,24に壁を置いた
5,26に壁を置いた
5,28に壁を置いた
5,30に壁を置いた
6,0に壁を置いた
6,2に壁を置いた
6,3に壁を置いた
6,4に壁を置いた
6,6に壁を置いた
6,8に壁を置いた
6,9に壁を置いた
6,10に壁を置いた
6,12に壁を置いた
6,14に壁を置いた
6,15に壁を置いた
6,16に壁を置いた
6,18に壁を置いた
6,20に壁を置いた
6,21に壁を置いた
6,22に壁を置いた
6,24に壁を置いた
6,26に壁を置いた
6,28に壁を置いた
6,30に壁を置いた
7,0に壁を置いた
7,4に壁を置いた
7,10に壁を置いた
7,14に壁を置いた
7,18に壁を置いた
7,22に壁を置いた
7,24に壁を置いた
7,28に壁を置いた
7,30に壁を置いた
8,0に壁を置いた
8,2に壁を置いた
8,4に壁を置いた
8,5に壁を置いた
8,6に壁を置いた
8,7に壁を置いた
8,8に壁を置いた
8,9に壁を置いた
8,10に壁を置いた
8,11に壁を置いた
8,12に壁を置いた
8,13に壁を置いた
8,14に壁を置いた
8,16に壁を置いた
8,17に壁を置いた
8,18に壁を置いた
8,19に壁を置いた
8,20に壁を置いた
8,22に壁を置いた
8,24に壁を置いた
8,25に壁を置いた
8,26に壁を置いた
8,27に壁を置いた
8,28に壁を置いた
8,30に壁を置いた
9,0に壁を置いた
9,2に壁を置いた
9,12に壁を置いた
9,16に壁を置いた
9,22に壁を置いた
9,24に壁を置いた
9,28に壁を置いた
9,30に壁を置いた
10,0に壁を置いた
10,2に壁を置いた
10,3に壁を置いた
10,4に壁を置いた
10,5に壁を置いた
10,6に壁を置いた
10,7に壁を置いた
10,8に壁を置いた
10,10に壁を置いた
10,11に壁を置いた
10,12に壁を置いた
10,14に壁を置いた
10,15に壁を置いた
10,16に壁を置いた
10,18に壁を置いた
10,19に壁を置いた
10,20に壁を置いた
10,21に壁を置いた
10,22に壁を置いた
10,24に壁を置いた
10,26に壁を置いた
10,27に壁を置いた
10,28に壁を置いた
10,30に壁を置いた
11,0に壁を置いた
11,4に壁を置いた
11,8に壁を置いた
11,10に壁を置いた
11,14に壁を置いた
11,18に壁を置いた
11,24に壁を置いた
11,30に壁を置いた
12,0に壁を置いた
12,1に壁を置いた
12,2に壁を置いた
12,4に壁を置いた
12,6に壁を置いた
12,8に壁を置いた
12,10に壁を置いた
12,12に壁を置いた
12,13に壁を置いた
12,14に壁を置いた
12,16に壁を置いた
1[…]
[output overflow, print less text!]

Can you be more specific as to what

wallgen()'s add_chird doesn’t work.

mean? Is there an error message in the debugger when you run it?
Also preload usually needs @onready preceding the declaration.

No Eroor Message.
But wallgen()'s add_chird doesn’t work.

extends Spatial

var _maze_width : int
var _maze_height : int
const array_out_of_range = 2 #迷路外
const array_passage = 0 #通路
const array_wall = 1 #壁
onready var mywall

# Declare member variables here. Examples:
# var a = 2
# var b = "text"







# Called when the node enters the scene tree for the first time.
func _ready():
	#pass # Replace with function body.
	mywall = preload("res://scn/wall.tscn")
	self.translate(Vector3(0, 0, -5))
	var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	add_child(myw)
	print("置いた")

	

# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
	#pass



func wallgen() ->void:
	_maze_width = PlayerData._maze_width -2
	_maze_height = PlayerData._maze_height -2
	#_array = MazeArray.new(_maze_width,_maze_height)
	
		#_maze_width = Game._maze_width
		#_maze_height = Game._maze_height
	
	#var mywall = preload("res://scn/wall.tscn")
	
	var mym = PlayerData.mazestrself
	var myma = []
	myma = mym.split(',')
	var mymai = []
	var myw : Spatial = null
	"""
	var myw = []
	for j in range(_maze_height):
		for i in range(_maze_width):
			myw.append(null)
			"""
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(0)
	
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai[i + j * _maze_width] = int(myma[i + j * _maze_width])
			if mymai[i + j * _maze_width] == array_wall:
				self.translate(Vector3(i, 0, j))
				#myw[i + j * _maze_width] = mywall.instance()
				myw = mywall.instance()
				#add_child(myw[i + j * _maze_width])
				add_child(myw)
				print(str(j) + "," + str(i) + "に壁を置いた")
	#_array.fill(array_wall)_maze_width
	


			#s += "%d,"%_array.getv(i,j)
			#mym += "%d,"%_array.getv(i,j)
			#print(s)
			#mym += "$"
		#mym = mym.replace("2,", "")
		#mym = mym.replace(",$", "$")
		#mym = mym.replace("1$$", "1")
		#mym = mym.replace("1$1", "line")
		#mym = mym.replace("$1", "1")
		#mym = mym.replace("line", "1$1")
		
			
			
		#var mypos = get_pos()
		#myw.set_pos(mypos)
			
			
		
	#self.translate(Vector3(0, 0, -5))
	#var mywall = preload("res://scn/wall.tscn")
	
	#var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#add_child(myw)
	#print("置いた")

— Debugging process started —
Godot Engine v3.5.3.stable.official.6c814135b - https://godotengine.org
OpenGL ES 2.0 Renderer: Mesa Intel(R) HD Graphics 615 (KBL GT2)

置いた
置いた
0,0に壁を置いた
0,1に壁を置いた
0,2に壁を置いた
0,3に壁を置いた
0,4に壁を置いた
0,5に壁を置いた
0,6に壁を置いた
0,7に壁を置いた
0,8に壁を置いた
0,9に壁を置いた
0,10に壁を置いた
0,11に壁を置いた
0,12に壁を置いた
0,13に壁を置いた
0,14に壁を置いた
0,15に壁を置いた
0,16に壁を置いた
0,17に壁を置いた
0,18に壁を置いた
0,19に壁を置いた
0,20に壁を置いた
0,21に壁を置いた
0,22に壁を置いた
0,23に壁を置いた
0,24に壁を置いた
0,25に壁を置いた
0,26に壁を置いた
0,27に壁を置いた
0,28に壁を置いた
0,29に壁を置いた
0,30に壁を置いた
1,0に壁を置いた
1,6に壁を置いた
1,18に壁を置いた
1,26に壁を置いた
1,30に壁を置いた
2,0に壁を置いた
2,2に壁を置いた
2,3に壁を置いた
2,4に壁を置いた
2,6に壁を置いた
2,8に壁を置いた
2,9に壁を置いた
2,10に壁を置いた
2,11に壁を置いた
2,12に壁を置いた
2,14に壁を置いた
2,15に壁を置いた
2,16に壁を置いた
2,17に壁を置いた
2,18に壁を置いた
2,20に壁を置いた
2,22に壁を置いた
2,23に壁を置いた
2,24に壁を置いた
2,26に壁を置いた
2,28に壁を置いた
2,30に壁を置いた
3,0に壁を置いた
3,2に壁を置いた
3,4に壁を置いた
3,6に壁を置いた
3,10に壁を置いた
3,12に壁を置いた
3,20に壁を置いた
3,22に壁を置いた
3,26に壁を置いた
3,28に壁を置いた
3,30に壁を置いた
4,0に壁を置いた
4,2に壁を置いた
4,4に壁を置いた
4,6に壁を置いた
4,7に壁を置いた
4,8に壁を置いた
4,10に壁を置いた
4,12に壁を置いた
4,13に壁を置いた
4,14に壁を置いた
4,15に壁を置いた
4,16に壁を置いた
4,17に壁を置いた
4,18に壁を置いた
4,19に壁を置いた
4,20に壁を置いた
4,22に壁を置いた
4,23に壁を置いた
4,24に壁を置いた
4,26に壁を置いた
4,28に壁を置いた
4,30に壁を置いた
5,0に壁を置いた
5,2に壁を置いた
5,6に壁を置いた
5,8に壁を置いた
5,12に壁を置いた
5,18に壁を置いた
5,20に壁を置いた
5,24に壁を置いた
5,26に壁を置いた
5,28に壁を置いた
5,30に壁を置いた
6,0に壁を置いた
6,2に壁を置いた
6,3に壁を置いた
6,4に壁を置いた
6,6に壁を置いた
6,8に壁を置いた
6,9に壁を置いた
6,10に壁を置いた
6,12に壁を置いた
6,14に壁を置いた
6,15に壁を置いた
6,16に壁を置いた
6,18に壁を置いた
6,20に壁を置いた
6,21に壁を置いた
6,22に壁を置いた
6,24に壁を置いた
6,26に壁を置いた
6,28に壁を置いた
6,30に壁を置いた
7,0に壁を置いた
7,4に壁を置いた
7,10に壁を置いた
7,14に壁を置いた
7,18に壁を置いた
7,22に壁を置いた
7,24に壁を置いた
7,28に壁を置いた
7,30に壁を置いた
8,0に壁を置いた
8,2に壁を置いた
8,4に壁を置いた
8,5に壁を置いた
8,6に壁を置いた
8,7に壁を置いた
8,8に壁を置いた
8,9に壁を置いた
8,10に壁を置いた
8,11に壁を置いた
8,12に壁を置いた
8,13に壁を置いた
8,14に壁を置いた
8,16に壁を置いた
8,17に壁を置いた
8,18に壁を置いた
8,19に壁を置いた
8,20に壁を置いた
8,22に壁を置いた
8,24に壁を置いた
8,25に壁を置いた
8,26に壁を置いた
8,27に壁を置いた
8,28に壁を置いた
8,30に壁を置いた
9,0に壁を置いた
9,2に壁を置いた
9,12に壁を置いた
9,16に壁を置いた
9,22に壁を置いた
9,24に壁を置いた
9,28に壁を置いた
9,30に壁を置いた
10,0に壁を置いた
10,2に壁を置いた
10,3に壁を置いた
10,4に壁を置いた
10,5に壁を置いた
10,6に壁を置いた
10,7に壁を置いた
10,8に壁を置いた
10,10に壁を置いた
10,11に壁を置いた
10,12に壁を置いた
10,14に壁を置いた
10,15に壁を置いた
10,16に壁を置いた
10,18に壁を置いた
10,19に壁を置いた
10,20に壁を置いた
10,21に壁を置いた
10,22に壁を置いた
10,24に壁を置いた
10,26に壁を置いた
10,27に壁を置いた
10,28に壁を置いた
10,30に壁を置いた
11,0に壁を置いた
11,4に壁を置いた
11,8に壁を置いた
11,10に壁を置いた
11,14に壁を置いた
11,18に壁を置いた
11,24に壁を置いた
11,30に壁を置いた
12,0に壁を置いた
12,1に壁を置いた
12,2に壁を置いた
12,4に壁を置いた
12,6に壁を置いた
12,8に壁を置いた
12,10に壁を置いた
12,12に壁を置いた
12,13に壁を置いた
12,14に壁を置いた
12,16に壁を置いた
1[…]
[output overflow, print less text!]

onready var mywall = preload("res://scn/wall.tscn")

Should be at top before ready. Remove from inside ready.

add_child() in _ready() doesn’t work unless GDScript is Auto Load.

it’s terrible. out of practice. attempt [int]
in godot 4.x it’s var myw = mywall.instantiate()

No Eroor Message.
add_child() in _ready() doesn’t work unless GDScript is Auto Load.
add_child() in wallgen() doesn’t work.

extends Spatial

onready var mywall = preload("res://scn/wall.tscn")

var _maze_width : int
var _maze_height : int
const array_out_of_range = 2 #迷路外
const array_passage = 0 #通路
const array_wall = 1 #壁


# Declare member variables here. Examples:
# var a = 2
# var b = "text"







# Called when the node enters the scene tree for the first time.
func _ready():
	#pass # Replace with function body.
	self.translate(Vector3(0, 0, -5))
	var mywall2 = preload("res://scn/wall.tscn")
	var myw2 = mywall2.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	add_child(myw2)
	print("置いた")
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
	#pass



func wallgen() ->void:
	_maze_width = PlayerData._maze_width -2
	_maze_height = PlayerData._maze_height -2
	#_array = MazeArray.new(_maze_width,_maze_height)
	
		#_maze_width = Game._maze_width
		#_maze_height = Game._maze_height
	
	#var mywall = preload("res://scn/wall.tscn")
	
	var mym = PlayerData.mazestrself
	var myma = []
	myma = mym.split(',')
	var mymai = []
	var myw : Spatial = null
	"""
	var myw = []
	for j in range(_maze_height):
		for i in range(_maze_width):
			myw.append(null)
			"""
	for j in range(_maze_height):
		for i in range(_maze_width):
			myma.append(0)
			
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(0)
	
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai[i + j * _maze_width] = int(myma[i + j * _maze_width])
			if mymai[i + j * _maze_width] == array_wall:
				self.translate(Vector3(i, 0, j))
				#myw[i + j * _maze_width] = mywall.instance()
				myw = mywall.instance()
				#add_child(myw[i + j * _maze_width])
				add_child(myw)
				print(str(j) + "," + str(i) + "に壁を置いた")
	#_array.fill(array_wall)_maze_width
	


			#s += "%d,"%_array.getv(i,j)
			#mym += "%d,"%_array.getv(i,j)
			#print(s)
			#mym += "$"
		#mym = mym.replace("2,", "")
		#mym = mym.replace(",$", "$")
		#mym = mym.replace("1$$", "1")
		#mym = mym.replace("1$1", "line")
		#mym = mym.replace("$1", "1")
		#mym = mym.replace("line", "1$1")
		
			
			
		#var mypos = get_pos()
		#myw.set_pos(mypos)
			
			
		
	#self.translate(Vector3(0, 0, -5))
	#var mywall = preload("res://scn/wall.tscn")
	
	#var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#add_child(myw)
	#print("置いた")

— Debugging process started —
Godot Engine v3.5.3.stable.official.6c814135b - https://godotengine.org
OpenGL ES 2.0 Renderer: Mesa Intel(R) HD Graphics 615 (KBL GT2)

置いた
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,1,0,1,1,1,0,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,0,1,0,1,1,0,1,0,1,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,1,0,1,0,1,0,1,1,1,0,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,0,1,0,1,0,1,1,0,1,0,0,0,1,0,1,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,1,1,0,1,1,1,0,1,0,1,1,1,0,1,0,1,1,1,0,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0,1,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,1,0,1,1,1,1,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,1,0,1,1,0,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,1,1,0,1,1,1,1,1,1,0,1,0,0,0,1,0,1,0,1,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,0,1,1,0,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,1,0,0,0,0,0,1,0,1,0,0,0,1,1,1,1,1,1,0,1,0,1,1,1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,0,1,0,1,1,1,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,1,0,1,0,1,0,0,0,1,1,0,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,1,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,1,1,0,1,0,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,0,1,0,1,0,1,1,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,1,0,1,1,1,1,1,0,1,0,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,1,1,0,1,1,1,1,1,1,1,0,1,0,1,1,1,0,1,1,1,0,1,0,1,0,1,1,1,0,1,0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,[…]
[output overflow, print less text!]
— Debugging process stopped —

Ti_che. Don’t understand. You can have documentation for any version of Godot? You’re writting in 4.x

pridurok, naydi bereg

I tried it with Godot 4.2
But it didn’t work.
I reverted the project to Godot v3.5.3 in Git.
I need Godot v3.x for iPhone Safari and WebGL 1.0

because your code doesn’t have a location in here. if you want to range your locations. you have to make a position settings for your walls. you see that you prepared your range. but, it never applies to anything but print. are you even getting an error?

No Error Code.
But add_child only one wall.

extends Spatial

onready var mywall = preload("res://scn/wall.tscn")

var _maze_width : int
var _maze_height : int
const array_out_of_range = 2 #迷路外
const array_passage = 0 #通路
const array_wall = 1 #壁



# Declare member variables here. Examples:
# var a = 2
# var b = "text"







# Called when the node enters the scene tree for the first time.
func _ready():
	pass # Replace with function body.
	#self.translate(Vector3(0, 0, -5))
	#var mywall2 = preload("res://scn/wall.tscn")
	#var myw2 = mywall2.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#var main_node = get_tree().root.get_child(0)
	#main_node.add_child(myw2)
	#print("置いた")
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
	#pass



func wallgen():
	_maze_width = PlayerData._maze_width -2
	_maze_height = PlayerData._maze_height -2
	#_array = MazeArray.new(_maze_width,_maze_height)
	
		#_maze_width = Game._maze_width
		#_maze_height = Game._maze_height
	
	#var mywall = preload("res://scn/wall.tscn")
	
	var mym = PlayerData.mazestrself
	var myma = []
	myma = mym.split(',')
	var mymai = []
	var myw
	var main_node
	for j in range(_maze_height):
		for i in range(_maze_width):
			myma.append("")
			
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(0)
	
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai[i + j * _maze_width] = int(myma[i + j * _maze_width])
			if mymai[i + j * _maze_width] == array_wall:
				self.translate(Vector3(i, 0, j))
				#myw[i + j * _maze_width] = mywall.instance()
				myw = mywall.instance()
			#add_child(myw[i + j * _maze_width])
				main_node = get_tree().root.get_child(0)
				main_node.add_child(myw)
				print(str(j) + "," + str(i) + "に壁を置いた")
	#_array.fill(array_wall)_maze_width
	


			#s += "%d,"%_array.getv(i,j)
			#mym += "%d,"%_array.getv(i,j)
			#print(s)
			#mym += "$"
		#mym = mym.replace("2,", "")
		#mym = mym.replace(",$", "$")
		#mym = mym.replace("1$$", "1")
		#mym = mym.replace("1$1", "line")
		#mym = mym.replace("$1", "1")
		#mym = mym.replace("line", "1$1")
		
			
			
		#var mypos = get_pos()
		#myw.set_pos(mypos)
			
			
		
	#self.translate(Vector3(0, 0, -5))
	#var mywall = preload("res://scn/wall.tscn")
	
	#var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#add_child(myw)
	#print("置いた")

— Debugging process started —
Godot Engine v3.5.3.stable.official.6c814135b - https://godotengine.org
OpenGL ES 2.0 Renderer: Mesa Intel(R) HD Graphics 615 (KBL GT2)

0,0に壁を置いた
0,1に壁を置いた
0,2に壁を置いた
0,3に壁を置いた
0,4に壁を置いた
0,5に壁を置いた
0,6に壁を置いた
0,7に壁を置いた
0,8に壁を置いた
0,9に壁を置いた
0,10に壁を置いた
0,11に壁を置いた
0,12に壁を置いた
0,13に壁を置いた
0,14に壁を置いた
0,15に壁を置いた
0,16に壁を置いた
0,17に壁を置いた
0,18に壁を置いた
0,19に壁を置いた
0,20に壁を置いた
0,21に壁を置いた
0,22に壁を置いた
0,23に壁を置いた
0,24に壁を置いた
0,25に壁を置いた
0,26に壁を置いた
0,27に壁を置いた
0,28に壁を置いた
0,29に壁を置いた
0,30に壁を置いた
1,0に壁を置いた
1,6に壁を置いた
1,18に壁を置いた
1,26に壁を置いた
1,30に壁を置いた
2,0に壁を置いた
2,2に壁を置いた
2,3に壁を置いた
2,4に壁を置いた
2,6に壁を置いた
2,8に壁を置いた
2,9に壁を置いた
2,10に壁を置いた
2,11に壁を置いた
2,12に壁を置いた
2,14に壁を置いた
2,15に壁を置いた
2,16に壁を置いた
2,17に壁を置いた
2,18に壁を置いた
2,20に壁を置いた
2,22に壁を置いた
2,23に壁を置いた
2,24に壁を置いた
2,26に壁を置いた
2,28に壁を置いた
2,30に壁を置いた
3,0に壁を置いた
3,2に壁を置いた
3,4に壁を置いた
3,6に壁を置いた
3,10に壁を置いた
3,12に壁を置いた
3,20に壁を置いた
3,22に壁を置いた
3,26に壁を置いた
3,28に壁を置いた
3,30に壁を置いた
4,0に壁を置いた
4,2に壁を置いた
4,4に壁を置いた
4,6に壁を置いた
4,7に壁を置いた
4,8に壁を置いた
4,10に壁を置いた
4,12に壁を置いた
4,13に壁を置いた
4,14に壁を置いた
4,15に壁を置いた
4,16に壁を置いた
4,17に壁を置いた
4,18に壁を置いた
4,19に壁を置いた
4,20に壁を置いた
4,22に壁を置いた
4,23に壁を置いた
4,24に壁を置いた
4,26に壁を置いた
4,28に壁を置いた
4,30に壁を置いた
5,0に壁を置いた
5,2に壁を置いた
5,6に壁を置いた
5,8に壁を置いた
5,12に壁を置いた
5,18に壁を置いた
5,20に壁を置いた
5,24に壁を置いた
5,26に壁を置いた
5,28に壁を置いた
5,30に壁を置いた
6,0に壁を置いた
6,2に壁を置いた
6,3に壁を置いた
6,4に壁を置いた
6,6に壁を置いた
6,8に壁を置いた
6,9に壁を置いた
6,10に壁を置いた
6,12に壁を置いた
6,14に壁を置いた
6,15に壁を置いた
6,16に壁を置いた
6,18に壁を置いた
6,20に壁を置いた
6,21に壁を置いた
6,22に壁を置いた
6,24に壁を置いた
6,26に壁を置いた
6,28に壁を置いた
6,30に壁を置いた
7,0に壁を置いた
7,4に壁を置いた
7,10に壁を置いた
7,14に壁を置いた
7,18に壁を置いた
7,22に壁を置いた
7,24に壁を置いた
7,28に壁を置いた
7,30に壁を置いた
8,0に壁を置いた
8,2に壁を置いた
8,4に壁を置いた
8,5に壁を置いた
8,6に壁を置いた
8,7に壁を置いた
8,8に壁を置いた
8,9に壁を置いた
8,10に壁を置いた
8,11に壁を置いた
8,12に壁を置いた
8,13に壁を置いた
8,14に壁を置いた
8,16に壁を置いた
8,17に壁を置いた
8,18に壁を置いた
8,19に壁を置いた
8,20に壁を置いた
8,22に壁を置いた
8,24に壁を置いた
8,25に壁を置いた
8,26に壁を置いた
8,27に壁を置いた
8,28に壁を置いた
8,30に壁を置いた
9,0に壁を置いた
9,2に壁を置いた
9,12に壁を置いた
9,16に壁を置いた
9,22に壁を置いた
9,24に壁を置いた
9,28に壁を置いた
9,30に壁を置いた
10,0に壁を置いた
10,2に壁を置いた
10,3に壁を置いた
10,4に壁を置いた
10,5に壁を置いた
10,6に壁を置いた
10,7に壁を置いた
10,8に壁を置いた
10,10に壁を置いた
10,11に壁を置いた
10,12に壁を置いた
10,14に壁を置いた
10,15に壁を置いた
10,16に壁を置いた
10,18に壁を置いた
10,19に壁を置いた
10,20に壁を置いた
10,21に壁を置いた
10,22に壁を置いた
10,24に壁を置いた
10,26に壁を置いた
10,27に壁を置いた
10,28に壁を置いた
10,30に壁を置いた
11,0に壁を置いた
11,4に壁を置いた
11,8に壁を置いた
11,10に壁を置いた
11,14に壁を置いた
11,18に壁を置いた
11,24に壁を置いた
11,30に壁を置いた
12,0に壁を置いた
12,1に壁を置いた
12,2に壁を置いた
12,4に壁を置いた
12,6に壁を置いた
12,8に壁を置いた
12,10に壁を置いた
12,12に壁を置いた
12,13に壁を置いた
12,14に壁を置いた
12,16に壁を置いた
12,1[…]
[output overflow, print less text!]
— Debugging process stopped —

could be a wrong use of

for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(0)

try to check it versus;

for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(-1)

mayeb that’s how it’s supposed to be. That’s why I don’t speak Godot 3.5

Maybe you want to try something like this.
https://kidscancode.org/godot_recipes/4.x/games/first_2d/index.html

This is the complete sample;

You download it. import to Godot and press play

I mean this is the start index
https://kidscancode.org/godot_recipes/4.x/games/first_2d/first_2d_01/index.html

I am grateful to you.
It works.

extends Spatial

onready var mywall = preload("res://scn/wall.tscn")

var _maze_width : int
var _maze_height : int
const array_out_of_range = 2 #迷路外
const array_passage = 0 #通路
const array_wall = 1 #壁



# Declare member variables here. Examples:
# var a = 2
# var b = "text"







# Called when the node enters the scene tree for the first time.
func _ready():
	pass # Replace with function body.
	#self.translate(Vector3(0, 0, -5))
	#var mywall2 = preload("res://scn/wall.tscn")
	#var myw2 = mywall2.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#var main_node = get_tree().root.get_child(0)
	#main_node.add_child(myw2)
	#print("置いた")
# Called every frame. 'delta' is the elapsed time since the previous frame.
#func _process(delta):
	#pass



func wallgen():
	_maze_width = PlayerData._maze_width -2
	_maze_height = PlayerData._maze_height -2
	#_array = MazeArray.new(_maze_width,_maze_height)
	
		#_maze_width = Game._maze_width
		#_maze_height = Game._maze_height
	
	#var mywall = preload("res://scn/wall.tscn")
	
	var mym = PlayerData.mazestrself
	var myma = []
	myma = mym.split(',')
	var mymai = []
	var myw
	var main_node
	for j in range(_maze_height):
		for i in range(_maze_width):
			myma.append("")
			
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai.append(-1)
	
	for j in range(_maze_height):
		for i in range(_maze_width):
			mymai[i + j * _maze_width] = int(myma[i + j * _maze_width])
			if mymai[i + j * _maze_width] == array_wall:
				#self.translate(Vector3(i, 0, j))
				#myw[i + j * _maze_width] = mywall.instance()
				myw = mywall.instance()
			#add_child(myw[i + j * _maze_width])
				main_node = get_tree().root.get_child(0)
				main_node.add_child(myw)
				myw.translate(Vector3(i, 0, j))
				print(str(j) + "," + str(i) + "に壁を置いた")
	#_array.fill(array_wall)_maze_width
	


			#s += "%d,"%_array.getv(i,j)
			#mym += "%d,"%_array.getv(i,j)
			#print(s)
			#mym += "$"
		#mym = mym.replace("2,", "")
		#mym = mym.replace(",$", "$")
		#mym = mym.replace("1$$", "1")
		#mym = mym.replace("1$1", "line")
		#mym = mym.replace("$1", "1")
		#mym = mym.replace("line", "1$1")
		
			
			
		#var mypos = get_pos()
		#myw.set_pos(mypos)
			
			
		
	#self.translate(Vector3(0, 0, -5))
	#var mywall = preload("res://scn/wall.tscn")
	
	#var myw = mywall.instance()
	#var mypos = get_pos()
	#myw.set_pos(mypos)
	#add_child(myw)
	#print("置いた")

Sorry. I almost forgot about you. It’s just the way they built the computer’s programing case with the same use for integral number. Except when the value is accepted at 1. The use of integral number 0 to -1 comes as the use case. So, anything later is 0 to -0.5 for the intermediate. In this case it’s used as the entire appended array. So it’s actually for the range in your case. It’s used as AUTO. But, also not considered as backwards. There’s something else for that.

I apologize. I’m loosing track. It’s use is; -1 for auto, and; 0 for off.