AshCrack's Wishlist
-
Explosive Gift
By boostypunk in Plugins
ExplosiveGift - add fun to your server!
This plugin turns ordinary gifts into real surprises. Now when a player opens a gift, not only useful loot, but also a real explosion! You never know what's inside - a valuable item or a trap.
ExplosiveGift is easy to customize. You choose which explosive items can be in the gift, with what chance they will appear, what the damage and blast radius will be. It's easy to install and doesn't load the server, and the explosions look realistic and do damage depending on the distance to the epicenter. The plugin is great for holiday events, raffles or just to add some excitement to the game. ExplosiveGift is a great way to surprise players, add more emotion and make every gift truly memorable. Gifts will no longer be boring - now they can be the start of a fun adventure! Install ExplosiveGift on your server and watch players open gifts with interest and caution, because now each of them can become a real test of luck!
-
Sound Library Api
Sound Library Api allows you to store & play recorded sounds for players, attach them to npcs, trigger them via in-game events
Use Sound Library API Encoder which allows you to convert any audio file to our own format (after converting the file, rename it and move it to /data/SoundLibraryApi):
Sound Library Encoder
Configuration:
{ "Scheduled message interval (seconds)": 900.0, "Audio events": { "ScheduledMessage": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "Welcome": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "PatrolHelicopter": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "Airdrop": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "CargoShip": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "Chinook": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "CrateHack": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "MissionStarted": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "MissionFinished": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "MissionFailed": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "DeepSeaEnter": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "DeepSeaLeave": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "DeepSeaOpened": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "DeepSeaClosed": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": true, "Audio files": [ "placeholder1", "placeholder2" ] }, "FishCaught": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "RouletteWin": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "RouletteLoss": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "ShopFrontTradeComplete": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "FeedbackReport": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] }, "PlayerReport": { "Enable audio event": true, "Global audio event (set false in order to be heard only by the player that triggered the audio event)": false, "Audio files": [ "placeholder1", "placeholder2" ] } } } Language:
{ "NoPermission": "<color=#e3e3e3>You do not have permission to use this command</color>", "AlreadyRecording": "<color=#e3e3e3>You're already recording. Please save or cancel your previous recording before starting a new one.</color>", "InvalidAddSyntax": "<color=#e3e3e3>Invalid Syntax. Ex: <color=#de8732>/sl add soundname</color></color>", "AddAlreadyExists": "<color=#e3e3e3>This sound already exists. </color><color=#e3e3e3>Please add <color=#de8732>overwrite</color> to your arguments to allow overwriting an existing sound.</color><color=#e3e3e3>Ex: <color=#de8732>sl add {{0}} overwrite</color></color>", "AddRecording": "<color=#e3e3e3>You can now start recording.\n</color><color=#e3e3e3>The recording will automatically start once your start sending audio.\n</color><color=#e3e3e3>Once you have completed you can use <color=#de8732>/sl save</color> or <color=#de8732>/sl cancel</color>.\n</color><color=#e3e3e3>You can listen to your recording using <color=#de8732>/sl play</color>\n</color><color=#e3e3e3>If you want to rerecord your recording use <color=#de8732>/sl reset</color></color>", "NotRecording": "<color=#e3e3e3>You're not currently recording.</color>", "RecordingSaved": "<color=#e3e3e3>We have saved your recording as '{0}'</color>", "CanceledRecording": "<color=#e3e3e3>We have canceled your recording</color>", "ResetRecording": "<color=#e3e3e3>Your recording has been reset.</color>", "PlayInvalidSyntax": "<color=#e3e3e3>Invalid Syntax. Ex: <color=#de8732>/sl play soundname</color> - to play the sound with the given name.</color>", "NoSoundFileFound": "<color=#e3e3e3>No sound file found with name '{0}'</color>", "HelpText": "<color=#e3e3e3>Allows players to record sound that can be played back to a player\n<color=#de8732>/sl add soundname</color> - to start the creation of a new sound.\n<color=#de8732>/sl npc add hookActionType fileName</color> - to add one or more filenames to a human npc (hook action types are: <color=#de8732>OnUseNPC/OnEnterNPC/OnLeaveNPC/OnHitNPC</color>)\n<color=#de8732>/sl npc remove hookActionType fileName</color> - to remove a filename from a human npc (hook action types are: <color=#de8732>OnUseNPC/OnEnterNPC/OnLeaveNPC/OnHitNPC</color>)\n<color=#de8732>/sl save</color> - to save your recorded sound.\n<color=#de8732>/sl reset</color> - to clear your current recording.\n<color=#de8732>/sl cancel</color> - to cancel your recording and not save.\n<color=#de8732>/sl play</color> - to player your current recording back to you.\n<color=#de8732>/sl</color> - to view this help text again.</color>", "AudioMessagesHelpText": "<color=#e3e3e3><color=#66B2FF>/audio send playerName audioName</color> - Sends an audio message to a player</color>\n<color=#e3e3e3><color=#66B2FF>/audio sendall audioName</color> - Sends an audio message to everyone on the server\n<color=#e3e3e3><color=#66B2FF>/audio sendlooped playerName audioName 2 (loop times amount)</color> - Sends a looped audio message to a player\n<color=#e3e3e3><color=#66B2FF>/audio sendalllooped audioName 2 (loop times amount)</color> - Sends a looped audio message to everyone on the server\n<color=#e3e3e3><color=#66B2FF>/audio files</color> - Shows a list of all audio files on the server\n<color=#e3e3e3><color=#66B2FF>/sl</color> - Shows the help page for the Sound Library API\n<color=#e3e3e3><color=#66B2FF>/audio help</color> - Shows these help messages", "PlayingText": "<color=#e3e3e3>Playing the file with the name of <color=#de8732>{0}</color></color>", "PlayingAudioMessageText": "<color=#e3e3e3>Playing the file with the name of <color=#66B2FF>{0}</color></color>", "InvalidTarget": "<color=#e3e3e3>Invalid target, try using his steamid/name</color>", "NullFileName": "<color=#e3e3e3>This file name is null, use /audio files</color>", "AvailableFileNames": "<color=#e3e3e3>Available files:\n<color=#66B2FF>{0}</color></color>", "FileNameNotFound": "<color=#e3e3e3><color=#66B2FF>{0}</color> does not exist, use <color=#66B2FF>/audio files</color></color>", "NpcNotFound": "<color=#e3e3e3>Couldn't find any human npc, make sure you have created one using <color=#de8732>/npc_add</color> and you are looking at it!</color>", "InvalidHookActionType": "<color=#e3e3e3><color=#de8732>{0}</color> is invalid, list of hook action types:<color=#de8732>\nOnUseNPC\nOnEnterNPC\nOnLeaveNPC\nOnHitNPC</color></color>", "NpcSoundAdded": "<color=#e3e3e3><color=#de8732>{0}</color> was added and will play when <color=#66B2FF>{1}</color> is triggered</color>", "NpcSoundRemoved": "<color=#e3e3e3><color=#de8732>{0}</color> was removed from this NPC!</color>", "FileNameAlreadyAdded": "<color=#e3e3e3><color=#de8732>{0}</color> was already added to this NPC!</color>" } Human NPC Integration example:
{ "Npc Data": { "303133854": { "Action type of the npc & Filenames that are played": { "OnUseNPC": [ "testing", "testing" ] } }, "986905907": { "Action type of the npc & Filenames that are played": { "OnEnterNPC": [ "testing" ] } }, "1543143931": { "Action type of the npc & Filenames that are played": { "OnHitNPC": [ "messagesound" ] } }, "1205925446": { "Action type of the npc & Filenames that are played": { "OnUseNPC": [ "testing", "pop" ], "OnHitNPC": [ "testing" ] } }, "45461627": { "Action type of the npc & Filenames that are played": { "OnUseNPC": [ "messagesound" ], "OnHitNPC": [ "messagesound" ] } }, "942954162": { "Action type of the npc & Filenames that are played": { "OnHitNPC": [ "waveeffect", "messagesound" ], "OnEnterNPC": [ "messagesound" ] } } } }
Human NPC Integration Video:
Permissions:
soundlibraryapi.use - In order to use /sl
soundlibraryapi.audio - In order to use /audio
Console Command:
audio.message
-
Hacker Kit
Adds hacker kit to the server. Just pick up a geiger counter and use it to hack.
Just get close to the crate and hold the left mouse button.
This plugin uses a geiger counter. Since this is not an item that players can usually get through loot, it is perfect for this purpose.
Just use a plugin like BetterLoot to insert a geiger counter into your loot tables and then any geiger counter picked up by the player can be used as a hacker kit.
Permissions:
hackerkit.use - required to use hacker kit
To assign a permission, use: oxide.grant <user or group> <name or steam id> hackerkit.use
To remove a permission, use: oxide.revoke <user or group> <name or steam id> hackerkit.use
(or just use the permission manager plugin)
Config file:
{ "Hack speed": 10, "Prohibition message": "You don't have permission to use hackerkit", "SFX prefab": "assets/prefabs/gamemodes/objects/capturepoint/effects/capturepoint_progress_beep.prefab" }
- #codelock
- #hackablecrate
- (and 17 more)
-
Dynamic Monuments [Jungle Bundle]
‼️Note: This is an add-on, not a standalone plugin. It requires the Dynamic Monuments plugin to be installed (sold separately).
🌴Enhance your Rust world with Jungle Bundle — a rich and immersive monument pack for the Dynamic Monuments plugin!
Explore dense jungle environments and mysterious ancient sites, or configure them to appear in any biome you prefer.
Included in the addon:
7 land monuments 1 coastal location 1 dam 2 modified in-game locations Player-placeable locations:
The Mayan Pyramid The Tree House Eye of the Jungle Eclipse Fort Bone Cape The Ancient Dam Installation Instructions:
Make sure you have the latest version of the Dynamic Monuments plugin installed Move the contents of the data/DynamicMonuments folder from the archive you downloaded into the oxide/data/DynamicMonuments folder on your server Reload the plugin
Check out the rest of my work: Adem's Codefling Library
Join the Mad Mappers Discord!
-
Space
The plugin allows players to visit a cold atmospheric Space void of gravity and oxygen, and visit an International Space Station!
A Space Station appears high in the sky, and is surrounded by Meteorites, Spaceships, and Balloons.
There is no gravity in Space, the temperature is very low and there is no oxygen.
You can get to Space by a Spaceship or by a Balloon which also spawn near roads or in loot tables.
The Space Station is guarded by customizable NPCs and a Space Bradley.
Outer Space
Meteorites, Crates, NPCs, Balloons and Spaceships will spawn in Outer Space near the Space Station, the number of each can be configured and customized.
In order to survive in Outer Space, the player will need a Spacesuit.
A Spacesuit can be customized to be any piece of clothing.
In the config you can customize items that will perform the functions of the Spacesuit in whole or in part.
To make space dark for players at any time of the day, use the NightVision plugin
Space Station
The Space Station consists of several compartments that are separated from each other by doors.
Optionally, the doors can be locked and they will need to be raided.
Inside the station there are crates with loot, NPCs, turrets, and fire turrets.
At the end of the corridor there are two doors that open with blue cards and one door that opens with red.
The spawn of the space station can be disabled. All objects on the space station are configured in the Data file of this station
Spaceship
The plugin includes spaceships that can spawn near roads, in Space, or can be added to loot tables.
The ship has separate settings for flying in the normal atmosphere and in zero gravity in Space.
It can shoot torpedoes, which will help the player in capturing the space station.
There are two seats in each spaceship.
Shuttle Control Guide:
Balloon
A balloon is an ordinary balloon with which you can ride into outer space.
The balloon can spawn near roads, in Space, or can be added to loot tables.
Also, this function can be applied to all balloons on the server.
If the balloon is in zero gravity, it can be used as an escape capsule!
If necessary, the player can enter, press a button, and be taken out of Space into the normal atmosphere.
Dependencies Required
NpcSpawn
Chat commands (only for administrators)
/spacestart – launches the event in a random configuration /spacestart <eventPresetName> – launches the event in the <eventPresetName> configuration /spacestop – stops the event /spawnshuttle – spawn the shuttle in your position /spawnaerostat – spawn the aerostat in your position /spacepoint – creates a custom spawn point of the event in your position (after that, you need to enable custom spawn points in the config)
Console commands (RCON only)
spacestart – launches the event in a random configuration spacestart <eventPresetName> – launches the event in the <eventPresetName> configuration spacestop – stops the event givepurplecard <userId> <amount> – gives a space card to a player giveshuttle <userId> <amount> – gives a shuttle to a player giveaerostat <userId> <amount> – gives a shuttle to a player givespacesuit <space_suit_preset> <userId> <amount> – gives <space_suit_preset> to a player
Config
plugin_en – example of plugin configuration in English station_en – example of station configuration in English plugin_ru – example of plugin configuration in Russian station_ru – example of station configuration in Russian
Dependencies (optional, not required)
True PVE PveMode GUI Announcements Notify DiscordMessages AlphaLoot CustomLoot Economics Server Rewards IQEconomic
Hooks
void OnSpaceEventStop() void OnSpaceEventStart()
API
bool IsPositionInSpace(Vector3 position) float GetMinSpaceAltitude() bool IsEventActive()
My Discord: adem9554
Join the Mad Mappers Discord here!
Check out more of my work here!