Why can i not find the player position?

Oops, my bad, I forgot that the boomerang wasn’t being added as a child of the player. Instead of getting the player in the boomerang node, you should set the player_p variable in the player script after you set the position:

func shoot():
	var bomerang = BOMERANG_scene.instantiate()
	bomerang.position = position
	bomerang.player_p = self
	get_parent().add_child(bomerang)
	print("boom")
	bomerang.bomerang_direction = (position -get_global_mouse_position()).normalized()

Then in the boomerang script:

var player_p : Node2D