Why isnt setting the global position working? Previously my items were relative to the player by node hierarchy. But for items like bombs this is not ideal so i tried to add the items to the world scene, but when i try to adjust the position of the item to the players position it doesnt work and i see the sword in the top left corner of the screen the worlds origin. Entity Script func use item(item) var newitem item.instance() newitem.own self newitem.global position global position not setting the position of the item correctly newitem.add to group(str(newitem.get name(), self)) get node( quot .. quot ).add child(newitem) if get tree().get nodes in group(str(newitem.get name(),self)).size() gt newitem.maxamount newitem.queue free() Sword Script func ready() type own.type anim.connect( quot animation finished quot ,self, quot destroy quot ) anim.play(str( quot swing quot ,own.spritedir)) if own.has method( quot state swing quot ) own.state quot swing quot func destroy(animation) if own.has method( quot state swing quot ) own.state quot default quot queue free() It seems like it should work but with an engine like godot there could be several reasons why a certain thing is not working. https github.com MonkeyToiletLadder wendingo could it be that in my animation player i set the sword positions as key frames and thats why its not working?