I only tested these bugs on FearlessRP servers in Garry's Mod. Even though most of that stuff is harmless to server, you could get banned for using them because they are considered as exploits.
If you try /givemoney 0 to a player, you'll get an error. To truly give $0 to someone, try something like that /givemoney 0.00293032
r_screenoverlay is a console command that only work when the server has sv_cheats set to 1. A way to use it without having sv_cheats 1 is to type the following in chat:
/";r_screenoverlay effects/combine_binocoverlay.vmt
.. BOOM, magic. (You can change effects/combine_binocoverlay.vmt to any effects you desire, you can check a list of effects on google..)
To remove the effect, type in chat:
/";r_screenoverlay 0
You can do the same thing through the console:
cmd say "/;r_screenoverlay effects/combine_binocoverlay.vmtt
or
"say ""/;r_screenoverlay effects/combine_binocoverlay.vmtt
(Notice the extra 't' at the end of the command)
To remove it, same concept:
"say ""/;r_screenoverlay 00
or
cmd say "/;r_screenoverlay 00
(Notice the extra '0')
Weed bug:
Let's say you have 25 weeds in your inventory, go see the guy that buys weeds (Zaakaria?!) and when he ask you the amount you want to sell, type in something like that: 24.000909230923
After that, what's going to happen is that your current money will update and have decimal numbers. But there's more, if you check in your inventory, you'll see that you have no weed... But actually, you do. Because you sold 24.000909230923 weed when you had 25, you now have 0.999090769077 weed, but it won't showed because it's rounded and it's considered as 0. From now on, keep selling small amount like 0.1 for a while. Eventually, it will tells you that you don't have enough weed, then start giving a smaller amount like 0.001... etc.. Whenever you want, you can still use the weed you have in your inventory even though it appears you no weed. To do so, use this command in chat:
/inventory weed use 1
When you take out a weapon and you don't wanna display a message like:
SomePlayer took a weapon out of his inventory, you can type this in console
alias "say" "echo DisplayMessageBypassed"
Now after you alias the command say, you won't be able to chat with other player, to be able to use the command say again, you can either close and start your game again or use the command say_team "Message" instead of say "Message".
That's it! Have fun and don't hesitate to experiment on your own to find new stuff.