You’re having a good start

But detecting cheat engine nowadays is quite challenging. most basic detection methods can be easily bypassed by advanced hackers.
detecting only modules or running processes is not a guarantee anymore. attackers can rename, hide, or inject dynamically, so we really need to combine multiple techniques instead of relying on a single approach.
also, no matter how much we improve or harden the client side, there will always be people trying to hack and bypass it. client protection alone can never fully guarantee security.
what really matters is having proper validation on the server side as well.
this requires a good understanding of how the game works especially the data flow between client and server, and how values are processed or updated in the database.
since we already have realtime character data on both Agent and FieldServer, the server should always verify whether an action actually makes sense, regardless of what the client sends.
In short, the client should never be fully trusted. If the data or action received is not valid, the server should simply reject it immediately.