The G300 mouse offers two different ways to manage button assignments:
Onboard memory — The button assignments and DPI levels are written to the memory of the mouse. This setting allows you to configure the mouse on one computer, and then use your mouse on a different computer with no additional software or configuration. This setting is also useful if you wish to only use one set of button configurations for all applications/games on your computer. Please see answer 360023242554 for more tips.
Automatic Game Detection — The button assignments and DPI levels are individually configured for every application and game on your computer. This setting is recommended for advanced users and for when you want to assign specific keystrokes for each application on the computer. Please see answer 360023242554 for more tips.