So I found what I think is a bug in the blueprint system.
Currently if I make a copy of a function change the copied functions name and can change the function itself all is fine.
But when I try to use the function when I compile it replaces it with the original function that was copied.
The copied function is unchanged I just cannot use it as it gets replaced every time I compile.