Coordinates Struct for Flow Field Pathfinding... am I doing this right?
I have no knowledge about Unity3d, so here are some general comments.
If world.SectorSize is constant throughout the session, you can change some of the properties to readonly fields and calculate them in the constructor:
public readonly int SectorX;
public readonly int SectorY;
public readonly FlowFieldSector Sector;
...


public Coordinates(int worldX, int worldY, FlowFieldWorld world)
{
  this.worldX = worldX;
  this.worldY = worldY;
  this.world = world;
  SectorX = worldX % world.SectorSize;
  SectorY = worldY % world.SectorSize;
  Sector =  world.Sectors[worldX / world.SectorSize, worldY / world.SectorSize];
}

Doing so with Sector, Cost, Integration and Flow requires of cause that these objects are reference types and not replaced - if they are updated while the Coordinates instance lives. It is probably just a micro optimization - but everything counts?


public bool Equals(Coordinates other)
{
  return worldX == other.worldX &amp;&amp; worldY == other.worldY;
}


This is actually an implementation of IEquatable&lt;Coordinates&gt; so you can add this interface to the inheritance list:
public struct Coordinates : IEquatable&lt;Coordinates&gt;


In respect to the DRY-principle you could do the following changes:
The copy constructor can call the other constructor:
public Coordinates(Coordinates source) : this(source.worldX, source.worldY, source.world)
{
}

The comparison operators can call Equals(Coordinates other):
public static bool operator ==(Coordinates left, Coordinates right)
{
  return left.Equals(right);
}