Options to restrict crafting per groupSuggestion
Can you restrict crafting per group? Or another mod that can do this? I have an RP server and want some groups to be able to craft certains weapons and other not

Is there a way to allow only"vip" to craft certin things like holiday event stuff?

Anyone know of a way to assign certain items to to a group so only they can craft them? For example I want only my "vip" members to be able to craft the snowman or w/e items. I have looked at blocker and crafting controller but i cant find the command specifically for a group to have it unlocked

Not currently supported maybe in future versions.

oh man I really hope so that would would open up so much! thanks for the reply :)

+1 on this suggestion :)

+1 on this suggestion

I also would like this feature willing to donate $30 to get the feature expediated.

Yep id also love this feature

Merged post

Hey guys, update on this one - Easy Research does what your after except just stops them learning the blueprint. Maybe give that a try and send some love Khans way because he's added the feature as a request. Good for RP servers

I have added this feature if anyone wants it. Discord ID Khan#8615

Merged post

using WebSocketSharp;    < Add Line 6>

<Take this section and add these >
        public class CraftingData
        {
            public bool canCraft;
            public bool canResearch;
            public bool useCrafteRateMultiplier;
            public float craftTime;
            public int workbenchLevel;
            public ulong defaultskinid;
            public string SetPermission;  < Add Line 27>
            [JsonIgnore] < Add Line 28>
            public string PrefixPermission => "craftingcontroller." + SetPermission;   < Add Line 29>

            public CraftingData()
            {
                canCraft = true;
                canResearch = true;
                useCrafteRateMultiplier = true;
                craftTime = 0;
                workbenchLevel = -1;
                defaultskinid = 0;
                SetPermission = "";  <Add line 39>
            }
        }

<Scroll down further to private void OnServerInitialized() And add this for each loop right underline 123>

            foreach (var perm in config.CraftingOptions.Values)
            {
                if (perm.SetPermission.IsNullOrEmpty()) continue;
            
                if (permission.PermissionExists(perm.PrefixPermission, this)) continue;

                permission.RegisterPermission(perm.PrefixPermission, this);
            }


<Inside the Lang.RegisterMessages section on line 168 Add right below ["NoPerms"]>

                ["NoPerms2"] = "You don't have {0} permission to craft this item.",

<All the way down to a region called Hooks right under it on line 449 add>

        public CraftingData FindPerm(string item)
        {
            CraftingData crafting;
            return config.CraftingOptions.TryGetValue(item, out crafting) ? crafting : null;
        }

<Finally a little more down, private object OnItemCraft() on line 459 right below int freeslots = FreeSlots(player); Add this>

            CraftingData crafting = FindPerm(task.blueprint.targetItem.shortname);
            if (crafting == null) return null;
            if (!crafting.SetPermission.IsNullOrEmpty() && !permission.UserHasPermission(player.UserIDString, crafting.PrefixPermission))
            {
                task.cancelled = true;
                foreach (var item in task.takenItems.Where(x => x.amount > 0)) task.owner.GiveItem(item);
                Message(crafter.IPlayer, "NoPerms2", crafting.SetPermission);
                return false;
            }

 

And that's all it takes to add this feature request.