Cobalt Essentials V1.7.6 [RELEASE]

Cobalt Essentials
Cobalt Essentials is a serverside plugin which adds all of the “essentials” for a server, it aims to be a modular approach to permissions and server management, everything is designed to easily expanded to support additional plugins which can add new commands, permissions, or various other features through Cobalt Essentials as to consolidate everything into one ‘home’

Out of the box, Cobalt Essentials supports:

  • Whitelist
  • Vehicle Whitelist/Blacklist
  • Vehicle Spawn permissions
  • Bans
  • Permissions system
  • Commands
  • A robust extensions system
  • RCON support - Currently undergoing a rework/maintenance
  • CobaltDB a custom built noSQL solution

If you have any suggestions at all, please don’t hesitate to let me know!

Furthermore, Cobalt Essentials aims to be easily expandable, if you want to implement more features, like new commands you can simply create another plugin with the new stuff you’d like and once it’s done set up the permissions and commands through Cobalt Essentials.

How it works:
Cobalt Essentials works in a fairly basic way, permissions are handled through a number called a ‘permission level’ Every permission, command and, registered user has an assigned level, unregistered users are given a default permission level (usually 1). If your permission level meets or exceeds the permission level of the requested command or permission flag, you will be allowed permission to do whatever you are doing, otherwise, you will not.

RCON
Cobalt Essentials supports any RCON client that is q3 / MW4M compliant, the best option out there, is Icecon, which can be found here. Icecon is highly customizable, and can even be used in command line to create scripts!

Download
Cobalt Essentials GitHub
Cobalt Essentials, like most of my other mods/scripts is open source under a GPLv3 license.
To install Cobalt Essentials, place the contents of the github in Resources\Server\CobaltEssentials

Cobalt Essentials Guide
Courtesy of @Dudekahedron, we have a guide for setting up your 1.4.X Cobalt Essentials
It can be found here!
note: This will be updated to 1.5.x soon.

Cobalt Essentials 1.4.0 Config Conversion
If You’re having problems updating your config from 1.3.X to 1.4.0, the easiest way to deal with it is to keep your old CobaltConfig.lua and drop it in your CobaltEssentials/lua folder. When you start the server, it should freak out and post a warning about it running in compatibility mode, let the server fully start, and either delete, rename, or move your old CobaltConfig.lua The next time you start the server, the warning should be gone, and, your permissions should be ported over to the new json system (Located in CobaltEssentials/CobaltDB)

Discord
Join our discord here!

Contributors: @Dudekahedron

6 Likes

1.4.10-1.4.11A
Various bug fixes by I and Dudekahedron including a fix to the vehicles getting wrongfully deleted on edit
fix to Config being deleted seemingly randomly
partial start on a fix to another possible config delete scenario.

1 Like

@Preston Always focus on your school work. Im in a similar boat to you. Focus on the work first bud. You can always come back to this in time. Good luck :slight_smile:

1 Like

I’m gonna be honest, this one is actually kind of hard for me to say, I’ve been racking my brain over it for a few days now, and regrettably, I think I’ve made up my mind, The thing is, Cobalt Essentials is taking up a lot of my time, more specifically, I’ve been putting it over school, which as I’m sure you guys know, isn’t a good idea, my grades have visibly dropped, I’m in my senior year, this is it and I’m not doing so well. I still intend to develop Cobalt Essentials, and it will still release updates for it. But for the sake of my future, I need to take a step back. 1.4 was the last of the major updates I’ve had planned, I wanted to get this build stable before I made any decisions, and honestly, I’d say 1.4.9 is stable. So to put it simply, expect Cobalt Essentials updates to slow down, from here on out school comes first.

I hope you guys understand, as always thank you for the support.
- Preston Elam (Cobalt)

5 Likes

1.4.9
Fixed chat messages causing errors (not sure how this slid under the radar?)
Added stop command
Fixed vehicle part bans not working (from Dudekahedron in 1.4.8b)

1.4.8
Fixed Cobalt Essentials in some multi-server environments
server.cfg now displayed & editable as an object in code, updates will not save.

Sorry about everything, after an absurd amount of version number climbing, Cobalt Essentials 1.4.7 is stable on the new servers. Sorry for the wait, if you have any problems whatso ever, don’t be afraid to reply here, join our discord, or just message me directly on discord @Preston#3615

Here’s the summed up changelog
1.4.0 > 1.4.7 Changelog
Patched for server version 1.0
Instabilities fixed
Phantom Cars fixed
player:hasPermission() Fixed (I am really stupid and had one of the variables global)
implemented playersDB, a database generated for each player used to store information/metrics on a player.
Implemented lastName field to player permissions to help figure out who a player is without just looking at their playerID.

I’m going to begin work on an update that implements the new lua features we got with server version 1.0 That may either be version 1.5.0 or 1.4.8 keep your eyes peeled.

as always, thanks for the support,
-Preston Elam (Cobalt)

1 Like

What a good plugin.

Incredible!

1 Like

1.4.0 is released! If you need any help setting it up at all, please ask here, or join my discord! I’ll release more soon.

4 Likes

Wow you are really knocking this out of the park!

2 Likes

Awesome work!

1 Like

@Preston Excited about 1.4.0 public release! Really turns things up to 11, server-side.

1 Like

Cobalt Essentials 1.4.0 - Objects & Databases Update: Release notes

Implemented CobaltDB, a custom, purpose built, noSQL solution for CobaltEssentials & it’s extensions.
Implemented statusdetail command
Implemented setting permissions for specific parts on a vehicle by making the key partlevel:[genericPartName] the value is the required permission level.
Implemented CobaltCompat.lua for porting your old CobaltConfig.lua
Retired CobaltConfig.lua, if you leave your CobaltConfig in place, it will port your config to the new system & run in a compatibility mode until it’s deleted. While in compatibility mode, some features will not work.
Major Rewrite
Players are now stored as objects
rconClients are kind of objects, they now have the method canExecute() which checks if a requested command is available in RCON
Any player permissions (Bans, Mutes, Permission Level) now save when the server restarts.
Extensions now pass a player object to events instead of the ID
Most of the functions in CobaltEssentials.lua are deprecated and have been replaced.
Extensions are now loaded in CobaltEssentials/LoadExtensions.cfg
Anything that was previously stored in the config is now stored in JSON, which is located in CobaltEssentials/CobaltDB/
Reworked Console output of certain events

With that out of the way, Cobalt Essentials 1.4.0 is poised to release soon, keep your eyes open! If you are interested in trying it, It’s currently open for a public beta, you can check the public-beta branch of the github for access. Should you choose to run this public beta, please be smart, It is a beta, things can and will break, do not put it on a server that needs a high uptime, and please if you’re leaving the server unattended, put it on a restart script.

I look forward to being able to officially release this version, at first glance it looks like a smaller update, but in reality, this is almost a complete rewrite of anything that existed before Cobalt Essentials 1.3.0, and inclusion of one of the biggest features we’ve been missing (databases). As always, if you have any questions, feel free to DM me on discord @Preston#3615

Regardless, thanks for the support as always, Love you guys.
-Preston Elam (Cobalt)

4 Likes

Just a small little update, 1.4.0 is currently in development, as a teaser, it should bring Databases, object oriented players, and a bunch of small improvements, keep your eyes open.

3 Likes

IT IS HERE, today is the day COBALT ESSENTIALS 1.3.0 IS RELEASED

1.3.0: Vehicles & RCON ; Server Overhaul
-Implemented /setperm to change permission levels in realtime, this is useful for event moderation
-Added Per-player spawn caps
-Added mutli-value permissions
-Implemented a system to allow unlimited players to join a server, but only x many can spawn cars
-Implemented extensions system
-Implemented RCON
-Command Rewrite
-Extended Config Options to suit the aforementioned

1 Like

Cobalt Essentials has a discord now! Here

1 Like

Everything is looking good! CE 1.2.7 is stable, as for CE 1.3.0 I need to sort out a stack-overflow resulting from long sessions, If anyone is interested in demoing the 1.3.0 beta DM me on discord @Preston#3615, just be aware, it is prone to crashing specifically on longer sessions; I went to sleep and the server crashed overnight, so it is not currently stable.

1 Like

I am aware of the current problem relating to CobaltEssentials, I can however assure you that, this is a problem with the most recent update of beamMP’s server client; it is out of my control, the last update for beamMP update broke the ability to get player IDs on when they join, the next beamMP update will fix this problem. Also, I will be ready to release 1.3.0 when the new update comes out.

1 Like

1.3.0 [BETA] : Vehicles & RCON ; Server Overhaul
-Implemented /setperm <id> <permlvl> to change permission levels in realtime, this is useful for event moderation
-Added per-vehicle permissions [IN LIVE BUILD]
-Added Per-player spawn caps
-Added mutli-value permissions
-Implemented a system to allow unlimited players to join a server, but only x many can spawn cars
-Implemented extensions system
-Implemented RCON
-Command Rewrite
-Extended Config Options to suit the aforementioned
-Implement server-wide vehicle cap -counting cars is currently difficult due to the unreliable getPlayerVehicles() function.

2 Likes