It’s been a few weeks since I asked this, and I finally figured it out by combing through the vector structs.
For anyone who might also have this problem:
In your struct you need to add a operator override== , and then outside your struct, a GetTypeHash. My mistake was using the GetTypeHash inside my method.
ie
struct FStructName
{
int x;
int y;
bool operator==(const FStructName& a) const
{
return x == a.x && y == a.y;
}
}
// end of struct
FORCEINLINE uint32 GetTypeHash(const FStructName& b)
{
return FCrc::MemCrc_DEPRECATED(&b, sizeof(FStructName));
}
There is a non-deprecated version of that Memcrc, but since epic are using it in all theirs, I just went with it.