Zero Gamemode - Empty Base Gamemode - Script
πΊ Video in progress
Zero Gamemode offers a blank, minimalist base, ready to be enriched by stand-alone Gmod addons, giving designers the freedom to develop their vision without being restricted by the bulky tools included in traditional gamemodes. Often, these tools are simply hidden but always present. Our aim is to provide a healthy foundation for projects. Why hide what's already included in gamemodes with addons when you can avoid making your customers download a complete gamemode.
❮
❯
Description of Zero Gamemode - Empty Base Gamemode
Summary:- π What is Zero Gamemode - Empty Base Gamemode for Gmod?
- 0οΈβ£ Zero overlay of redundant features for better performance
- βοΈ Customize the name of your Gamemode
- βοΈ Install Zero Gamemode in Garry's Mod
- β‘ Speed up loading and reduce server load
- π Choice of built-in active hook removal
- ποΈ Reduced gamemodes folder size
- β οΈ About compatibility with Gmod addons
π What is Zero Gamemode - Empty Base Gamemode for Gmod?
Zero Gamemode isn't an Addon but a blank and minimalist project base designed to meet the needs of users of my standalone addons and to be enhanced by Gmod addons. Its goal is to provide a solid and clean foundation, giving creators the freedom to develop their own vision without being burdened by bulky and unnecessary tools and features found in the multitude of gamemode layers. If you're installing gamemodes just to override them with addons, then you should question if your gamemode is still necessary.
For others, if it's just about having a gamemode to be categorized and gain visibility among DarkRP servers, you can rename "Zero Gamemode" to "DarkRP", without the downsides of DarkRP and all the layers underneath. So by simply renaming the "Zero Gamemode" folder, you can customize the name of your project according to your preferences. Even if you choose to be listed in the DarkRP category without having installed DarkRP. Some do this with my Zworld Afterlife gamemode.
The main goal is to create a healthy foundation for projects, offering flexibility and ease of development. I believe it's inefficient to install a complete gamemode and then try to customize it using addons to replace each module. In the case of DarkRP, for example, one might try to replace the F4 menu or the Tabmenu, etc. What I propose with Zero Gamemode is to stop struggling to hide what we don't want with other Gmod addons as overlays, by reducing the number of gamemode layers to the bare minimum to greatly optimize servers by installing only the necessary addons that allow you to build your own project/universe with only the essentials.
Conclusion: Zero Gamemode was born out of the need to offer an alternative to my clients who are looking to move away from DarkRP while retaining the flexibility and performance of my individual Gmod addons. By offering an empty and flexible gamemode base, Zero Gamemode paves the way for a new era of Gmod server creation. With a simplified structure, optimized performance, and smart resource management, Zero Gamemode enables server creators to unleash their creativity and offer unique gaming experiences to their community.
See the wiki to see which Gmod addon adds which functionality.
0οΈβ£ Zero overlay of redundant features for better performance
In the example where you install a Scoreboard to hide the DarkRP Scoreboard, while the DarkRP Scoreboard already overlays that of Sandbox and so on... π€ Such overlays are abundant at various levels.
I describe this practice as "overlaying redundant features". It's a practice where features are added to a gamemode to hide or replace existing features, often without real added value since you'll end up installing an addon to replace them. It's with this vision that I designed Zworld Afterlife.
In the context of Garry's Mod (Gmod), where addons and mods can be added to modify gameplay, this practice can be observed when addons are installed to hide or replace basic game or gamemode features.
In the given example, installing a Scoreboard to hide the DarkRP Scoreboard, which in turn hides that of Sandbox, and so on, creates a cascade of unnecessary replacements. This adds unnecessary weight, potential conflicts between features, compatibility issues, and resource overhead.
I consider this practice a bad one because it adds complexity to the system without real benefit, making maintenance and troubleshooting more difficult in the long run. Zero Gamemode aims to eliminate all of this.
βοΈ Customize the name of your Gamemode
Why rename your Gamemode on your Gmod server?
Sometimes, for visibility's sake, some rename Helix to DarkRP, or Zworld to DarkRP to appear in the DarkRP server list, since players' first reflex is to only look at servers in that list, causing original projects to lose visibility.
And I don't think you want a project called Zero Gamemode either.
Freely renamable, Zero Gamemode offers the ability to create a custom gamemode to appear in the server list with an easily customized name. This approach allows servers to stand out without having the drawbacks.
βοΈ Install Zero Gamemode in Garry's Mod
Install Zero Gamemode into the /gamemodes folder of your Gmod server.
My Nor Admin Mod administration system already contains a menu to spawn my tools or open menus of my other Gmod addons, allowing you not to need the Sandbox Gamemode to spawn my NPCs merchants, for example.
β‘ Speed up loading and reduce server load
The practice of overlaying features can have negative impacts on loading time and server load.
Reducing resource load:
By removing features, it can reduce the resource load needed to run the server to free up processing power for other tasks.
Server query optimization:
By reducing the number of queries and processes needed to handle redundant features, it can speed up server loading and response.
Simplifying initial loading:
By reducing the number of gamemode layers and therefore features to load when starting the server, it can speed up the initial loading time. The less there is to load, the faster the server can start. Note that everything on the client side is also initialized by the multiple layers of gamemodes.
Fewer hooks and timers:
By reducing the number of hooks and timers, the server CPU is less taxed, which also contributes to response speed and freeing up resources. Note that when the server CPU is overloaded, everyone's ping increases.
Note that if the overlay introduces additional unoptimized or poorly designed features, it can instead slow down loading and increase server load. So, keep in mind not to install everything and anything. Zero Gamemode shouldn't be used as a band-aid on a hemorrhage.
π Choice of built-in active hook removal
Even without any gamemode, hooks are already active. Sometimes, you may not need them, as they are often intended for original features. You can uncomment the hooks in the init.lua (server-side hooks) and cl_init.lua (client-side hooks) files to activate them in the code to eliminate unnecessary hooks, thereby reducing server load and improving its stability and overall performance. This built-in feature allows server administrators to maintain a cleaner and more efficient gaming environment. This practice has proven itself in Zworld Afterlife. Do not remove hooks without knowing what they are for.
ποΈ Reduced gamemodes folder size
Original size of Gamemode folders: Base + Sandbox + DarkRP = 666 files / 161 folders = 9580.54 KB
New size of Gamemode folders: Base + Zero_Gamemode = 82 files / 15 folders = 316 KB
β οΈ About compatibility with Gmod addons
Addons should be able to function independently, without a gamemode, and not rely on other gamemodes' APIs to function.
On my part, I guarantee the proper functioning of my Gmod addons available in the Originahl Scripts store, since I am able to provide support in case of issues with my products.
Path: garrysmod/addons/zero_gamemode
- The AddWorkshop function is automatically added to the script server file and can be deactivated from the configuration file. : resource.AddWorkshop( 3247126639 )
- To add gmod workshop resources to your collection : Zero Gamemode - Empty Base Gamemode [Content Only] | Gmod Workshop
+gamemode <gamemode_name>
In the case of Zero gamemode, you'll use :
+gamemode zero_gamemode
This command tells Garry's Mod server to start using the specified gamemode (in this case, βzero_gamemodeβ). Be sure to include this command in your startup parameters or enter it in the console when you start your server.
Gmod Items Shops - NPC Dealer Allows creating the NPC that will buy the ore.
Gmod Items Packs Allows you to quickly create entities, minerals are already included, but you can add more variety yourself.
Gmod Items Packs The entity for the wood resource is already included if you haven't already created it.
DeriveGamemode(βsandboxβ)
This will give you access to the sandbox tools while retaining the Zero Gamemode features.
hook.Remove("PlayerLoadout", "DisableDefaultWeapons")