Jump to content

Gd.Kenni

Creator
  • Posts

    36
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Gd.Kenni

  1. Gd.Kenni

    Techtree

    It's not intended to replace the default tree, but I've added the fact that you can learn a blueprint if it's an item you've added to the tree. So logically, it's now possible to recreate a blueprint tree.
  2. Gd.Kenni

    Techtree

    Okay, so if I understand correctly, you also want a reward when each tree is completely unlocked (i talk my plugin). If that's it, I can implement it
  3. Gd.Kenni

    Techtree

    The plugin is not designed to recreate the Rust techtree; you can assign chat commands, console commands and economic rewards, but this requires the reward to be unlocked on the plugin's techtree. If you want a special feature, I can try to integrate it but I need to know exactly what behavior to ask for. Does this answer your question?
  4. Gd.Kenni

    Techtree

    Version 1.3.18

    36 downloads

    This plugin lets you create a customizable techtree. It's not designed to replace the default Rust techtree, but it does allow you to recreate it to 98%, unlocks plans and can be used to distribute rewards or unlock features in other plugins. If you use Oxide, Carbon Aliases if required ! Else ignore this. Feature TechTree customizable TechTree by Workbenchlevel Multiple rewards (ChatCommand / ConsoleCommand / Economics) Item custom support Unlock blueprints Reward if tree is all unlocked Adaptable size with scrolling No command to open Press the Use key R on the Workbench to open the Tech Tree Permissions techtree.use techtree.unlock.free techtree.unlock.instant Information Default data files are created on plugin load Helper Grid files are created on plugin load General Settings { "Settings": { "Wipe Player Data at Wipe": true, "Time For Unlock Node": 1.0, "Selected Theme": "Default", "Use Permissions ?": false, "Use Economics ?": false, "Unlock Blueprint If Item ?": true, "Grid Settings": { "height": 21, "width": 31 }, "Level Of Zoom": 1.5, "Use UI Editor (BETA version) ?": false } } Techtree Data ID: ID of the node. Parent: Parent node required to unlock this node. Image URL or Item: Image used, via URL or in-game item (ID/Skin). Type: Type of Image (URL or Item). Value: Url (string) if URL or ItemID and SkinID if Item. Grid Position: Node position on the grid (x, y). Ingame Name: In-game name for this node. Short Description: Short description of the node. Additionnal Description: List of descriptions. Price: Cost to unlock this node. Curency: Resource needed to pay the price (ID/Skin). Rewards: List of rewards obtained after unlocking. Type: Type of reward (ChatCommand, ConsoleCommand or Economics). Value: Value or command associated with the reward (string). "TechTree": [ { "ID": "A2", "Parent": "A1", "Image URL or Item": { "Type": "Url", "Value": "https://imgur.com/SRGgaKX.png" }, "Grid Position": { "x": 1.0, "y": 8.0 }, "Player Info": { "Ingame Name": "Name A2", "Short Description": "A short description", "Additionnal Description": [ "<color=#32CD32><b>First info</b></color>", "<color=#FFD700>additionnal info</color>", "Warning: <color=#DC143C>a other additionnal info</color>" ] }, "Price": 300, "Curency": { "Item ID": -804769727, "Skin ID": 2816495176 }, "Rewards": [ { "Type": "ChatCommand", "Value": "say Congratulations on unlocking A2!" }, { "Type": "ConsoleCommand", "Value": "c.grant user playerID perm.use" }, { "Type": "Economics", "Value": "6500" } ] }, ], "Extra": { "Reward On All Node Unlocked": [ { "Type": "ChatCommand", "Value": "say Congratulations, you all unlocked!" }, { "Type": "Economics", "Value": "20000" } ] } Image configuration exemple With URL : "Image URL or Item": { "Type": "Url", "Value": "https://imgur.com/SRGgaKX.png" }, With ITEM : "Image URL or Item": { "Type": "Item", "Value": { "Item ID": -1966748496, "Skin ID": 0 } }, Lang { ["CLOSE"] = "CLOSE", ["EDITMODE"] = "EDIT MODE", ["SAVE"] = "SAVE", ["ADD"] = "Add", ["REMOVE"] = "Remove", ["MODIFY"] = "Modify", ["CANCEL"] = "Cancel", ["CONFIRM"] = "Confirm", ["SELECT"] = "Select", ["NONE"] = "None", ["NOTAVAILABLE"] = "Not yet available", ["PLAYERMODE"] = "PLAYER MODE", ["UNLOCKED"] = "UNLOCKED", ["UNLOCK"] = "UNLOCK", ["CANT AFFORD"] = "CAN'T AFFORD", ["OPEN"] = "[R] OPEN", ["Workbench_1"] = "LEVEL 1", ["Workbench_2"] = "LEVEL 2", ["Workbench_3"] = "LEVEL 3", ["Engineering"] = "ENGINEERING", ["NO PERM"] = "You don't have permission." } Api (bool) IsNodeUnlocked(BasePlayer player, Workbench workbench, string nodeID) // Return if node is unlocked (Dictionary<string, bool>) GetUnlockState(BasePlayer player, Workbench workbench) // Return unlock dictionary (nodeID/bool) for player in Workbench (void) SetUnlockState(BasePlayer player, Workbench workbench, string nodeID, bool unlocked) // Set the unlocked/locked state (true/false) for a Workbench node (void) ResetUnlockState(BasePlayer player, Workbench workbench) // Resets all unlocks state on a Workbench. Hook private void OnNodeUnlocked(BasePlayer player, Workbench workbench, string nodeID) { Puts($"Node {nodeID} as been unlocked on workbench {workbench.Workbenchlevel} by {player.UserIDString}"); } Api and Hook exemple using Oxide.Core.Plugins; using System; using System.Collections.Generic; using UnityEngine; namespace Carbon.Plugins { [Info("TechTreeApi", "Gd.kenni", "1.0.0")] public class TechTreeApi : CarbonPlugin { [PluginReference] Plugin TechTree; private void OnNodeUnlocked(BasePlayer player, Workbench workbench, string nodeID) { Puts($"Node {nodeID} as been unlocked on workbench {workbench.Workbenchlevel} by {player.UserIDString}"); } [ConsoleCommand("IsNodeUnlocked")] private void IsNodeUnlockedCmd(ConsoleSystem.Arg arg) { BasePlayer player = arg.Player(); try { var prefab = GameManager.server.FindPrefab("assets/prefabs/deployable/tier 1 workbench/workbench1.deployed.prefab"); var bench = prefab.ToBaseEntity() as Workbench; var statu = TechTree?.Call<bool>("IsNodeUnlocked", player, bench, "Longsleeve T-Shirt"); Puts($"{statu}"); } catch (Exception ex) { PrintError($"Error on command: {ex.Message}"); } } [ConsoleCommand("GetPlayerUnlockState")] private void GetPlayerUnlockStateCmd(ConsoleSystem.Arg arg) { BasePlayer player = arg.Player(); var prefab = GameManager.server.FindPrefab("assets/prefabs/deployable/tier 1 workbench/workbench1.deployed.prefab"); var bench = prefab.ToBaseEntity() as Workbench; var playerStatus = TechTree?.Call<Dictionary<string, bool>>("GetPlayerUnlockState", player, bench); foreach (var kv in playerStatus) Puts($"{kv.Key} {kv.Value}"); } [ConsoleCommand("SetNodeUnlockState")] private void SetNodeUnlockStateCmd(ConsoleSystem.Arg arg) { BasePlayer player = arg.Player(); var prefab = GameManager.server.FindPrefab("assets/prefabs/deployable/tier 1 workbench/workbench1.deployed.prefab"); var bench = prefab.ToBaseEntity() as Workbench; TechTree?.Call("SetNodeUnlockState", player, bench, "Tank Top", true); } [ConsoleCommand("ResetUnlockState")] private void ResetUnlockStateCmd(ConsoleSystem.Arg arg) { BasePlayer player = arg.Player(); var prefab = GameManager.server.FindPrefab("assets/prefabs/deployable/tier 1 workbench/workbench1.deployed.prefab"); var bench = prefab.ToBaseEntity() as Workbench; TechTree?.Call("ResetUnlockState", player, bench); } } }
    $14.99
  5. Gd.Kenni

    Admin Pass

    What kind of administration needs to know the player's code? If you need to intervene, a simple "ent unlock” command is more than enough, isn't it?
  6. Gd.Kenni

    Loot Editor

    Would it be possible to add an option in the config file so that an item spawn is mandatory? For example, if I add the scrap, it will necessarily be in a crate If there was this option, it would be perfect
  7. Version 1.2.0

    9 downloads

    Penitentiary is a beautiful custom Rust monument inspired by the Prison Simulator video game. Prefab: ~ 4200 1 red door with fuse 2 green doors 1 desk with credit card 1 Chinook drop point __________ This monument is thought Vanilla pvp but can very well be used for Pve or Rp after some minor modifications. Electricity operational, which can be controlled. 36 cell. Some parts of the monument are radioactive. No NPCs. Changes can be made if requested. __________
    $7.50
    Very good plugin
2m

Downloads

Total number of downloads.

9.5k

Customers

Total customers served.

137.9k

Files Sold

Total number of files sold.

2.9m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.