onready var a = hoge

は以下のコードを簡略化した変数宣言ね

func _ready():
var a = hoge


_ready()って子ノードが全て準備できた後で実行される関数なんよ

だから、子ノードが保証されている必要があるときにonreadyを付けるって感じ

var sprite = $Sprite (エラーになるコード)
onready var sprite = $Sprite (正しいコード)