I have been struggling with the Filtering enabled concept and what needs to be done to convert old scripts and or tools into filtering enabled tools or scripts. If any of you know any advice or good tutorials please leave them below.
Adapting or transitioning an old system to support filtering is a very general concept. There is no single method or universal method to do this, you have to comprehend what the old system does and restructure it to support filtering. One thing you could do is hire someone to convert these old systems/scripts to support filtering.
General Tips
Special effects such as UI elements, particles, sounds etc are handled on the client. Do not hinder the server’s performance by letting the server handle effects synonymous to the above.
All authentication is done on the server, but that doesn’t mean the client can’t do checks. It’s a common misconception to not add any authentication methods to the client because exploiters could easily read the deciphered code and create a workaround, while this is true, there are still exploiters who cannot do this.
The server only gets requests, not commands. The client should never have authority over the server. A good exmaple is letting the client tell the server how much an item is supposed to be. This structure is very wrong, never let the client decide how much an item is supposed to be.
Create a replication/networking model. I probably named it wrong, but basically a network model is how you plan to run the replication. An example would be:
Client Clicks Button → Client Authenticates → Client Fires Remote Function/Event → Server Gets Event Signal → Server Authenticates → Server Processes Request
This model will help you plan out what needs to be done so you can easily track which side needs a patch or revision.
User Experience or Sercurity? There are instances where you would have to decide UX over security or vise versa. I believe in the concept of “there is no perfect replication model” simply because we are limited to what we can work with. If you are playing an animation, you do not need to heavily secure it to the point it would hinder UX, animations are meant to please the player. If you are handling a purchase, it’s more of security, players won’t care about the fancy animations when making a purchase, they’re focusing on the item being purchased.
These are only some of many things to consider when creating a FE supported system, I’d suggest you search for existing topics as there are a lot of useful threads that have serveral methods/solutions. Do not limit yourself to the forum, you may also search on Google, you never know what you may find.