Nodal Points on GameObjects as Waypoints?

Hello there Im new to A* pathfinding project but am somewhat familiar with other systems and Ive been looking into this project and Im having difficulty wrapping my head around implementing this into my game.

Im aiming towards a rollercoaster tycoon kind of game. From what I understand each path (one square) has a node and waypoint, when connected making it a valid path to compute. Correct me if Im wrong but this is what I believe how it works rather than generating the whole mesh terrain as its procedural but itd be more memory efficient to compute only possible nodes and paths rather than regenerating the whole terrain that has big chunks of invalid nodes if I were to use the Node Grid generator. The system would would then only update the entire "grid (not sure what to call it because the grid would be unnecessary) when a user places a path rather than checking at a fixed/constant update.

I plan to of course use different height maps and notice that you have a multiple layered grid implemented in the Pro version so Im assuming this can be done with nodes as well.

Nodes are easier to maintain as gameobjects that can be manipulated at runtime without any issues a sell as having that Rollercoaster feel of individuals strictly following a path.

Looking forward towards your response and feedback to help get me started on this approach or any confusion I am undergoing (:

I am not quite sure what you are aiming for.
Is the goal to move a rollercoaster along its track or is this for individuals moving in the park?

@aron_granberg
Individuals moving along a path, something like in the image below. From what I understand the path is essentially a prefab or procedural mesh plane (1x1), and on top of it with a waypoint on it? Im working with 1x1x1 scale cube grids. Which the next floor is inaccessible unless I add a ramp

Heres a pathing flowchart I found
Flowchart

@aron_granberg sorry for the spam (i can only upload 2 links at a time per post)

Im asking: instead of using a grid to generate the node waypoints, is it possible to add a node to and object such as paths, rides, other prefabs? I understand your package uses the grids for terrain or procedural terrain but what about objects being placed like rides?

In this pic you can see node reference points where the unit would follow to walk along the ride etc.
Ride Node Example
Im sure this is the builtin pathsystem in unity like so in the manual but I just want to ensure if this is possible and how this compares to that of unity, I currently have 4 Pro but looking to upgrade to Unity 5 Pro.

Unity Navigation Manual Page

Alright so I just fixed this overnight. Never got randompath to work but I just simply generated a random vetctor3 then used an A to B Path call to that destination and it works as intended. (I had my head wrapped around the whole randompath got confused).

So now thats working Im having errors being called whenever the next node is searched for. Im afraid this will leak and dramatically have double calls for each unit and lag the game. The error reads:

ArgumentException: You have already claimed the path with that object (sim_v2 (SimAI)). Are you claiming the path with the same object twice?

This is my code, its a modified SearchPath functinon of the AIPath class. Everything else is the same. Just made few public variables like isSearchingDest

    public virtual void SearchPath()
{
	//finds the destination if not then generate next path node to destination below
	if (!isSearchingDest) {
		int spread = Mathf.FloorToInt (_unit.fatigue / 100); // the more tired the more dizzy and lost they are
		float aimStrength = (_unit.happiness + _unit.warmth);  //the more happy and comfort this individual is, the more likely they are to find their location
		float reference = _unit.willingness / 5;
		float referencefloor = Random.Range (transform.position.y - 2, transform.position.y + 2);
		Debug.Log ("Generated Path: " + Destination);
		Destination = new Vector3 (transform.position.x + Random.Range (-reference, reference), referencefloor, transform.position.z + Random.Range (-reference, reference));
		isSearchingDest = true;
	} else { 

		lastRepath = Time.time;
		canSearchAgain = false;

		//if destination is found then do this
		seeker.StartPath (GetFeetPosition (), Destination, OnPathComplete);
	}
}