# /datum/jps_node

The JPS Node datum represents a turf that we find interesting enough to add to the open list and possibly search for new tiles from

## Vars | |

f_value | The A* node weight (f_value = number_of_tiles + heuristic) |
---|---|

heuristic | The A* node heuristic (a rough estimate of how far we are from the goal) |

jumps | How many steps it took to get here from the last node |

node_goals | Nodes store the endgoal so they can process their heuristic without a reference to the pathfind datum |

number_tiles | How many steps it's taken to get here from the start (currently pulling double duty as steps taken & cost to get here, since all moves incl diagonals cost 1 rn) |

previous_node | The node we just came from |

tile | The turf associated with this node |

## Var Details

### f_value

The A* node weight (f_value = number_of_tiles + heuristic)

### heuristic

The A* node heuristic (a rough estimate of how far we are from the goal)

### jumps

How many steps it took to get here from the last node

### node_goals

Nodes store the endgoal so they can process their heuristic without a reference to the pathfind datum

### number_tiles

How many steps it's taken to get here from the start (currently pulling double duty as steps taken & cost to get here, since all moves incl diagonals cost 1 rn)

### previous_node

The node we just came from

### tile

The turf associated with this node