_implementation error

I am relatively new to unreal and I understand c++ but replication has been frustrating me a lot I followed unreals (Multiplayer Programming Quickstart Guide) word for word but whenever I create a UFUNCTION(Server, Replicated) it gives me error over in cpp so i created new blank project and wrote bellow but errors still arise.

###Character.h
UFUNCTION(reliable, server)
void ServerFunction();

###Character.cpp
Character::ServerFunction()
{
// do something
}

I have looked at all other UE4 answer hub answers but none of them work and I have #include “Net/UnrealNetwork.h” #include “Engine/Engine.h” now if it is something simple please don’t abuse me

There are a few rules/conventions that you need to be aware of when using C++ in Unreal which are enforced by the macro system. One such rule is that functions declared as Server in the header file should be implemented in the corresponding cpp file with an “_Implementation” suffix added to the function name. So your Character.cpp should look like this:

  Character::ServerFunction_Implementation()
   {
            // do something
   }

This is explained here in the docs, which has also added a great intro to multiplayer in C++ recently that covers all this and more. I recommend that you start with this to get familiar with these coding conventions (look for how HandleFire() is implemented). Hope that helps.