About Rust GPT
RustGPT integrates OpenAI's powerful ChatGPT directly into Rust, allowing players to interact with ChatGPT through the game chat. This unique plugin enhances the Rust gaming experience by providing color commentary on deaths, answering player questions, and more, all powered by the advanced capabilities of ChatGPT.
Features
- Color Commentary for Deaths: RustGPT adds an entertaining twist to gameplay by providing ChatGPT-powered color commentary on player deaths, with customizable settings for tone and content.
- ChatGPT Access: Players can use ChatGPT to ask questions or engage in conversation directly through the Rust game chat.
- Customizable Prompts and Responses: Server admins can customize the system's prompts and responses, tailoring the ChatGPT interaction to fit the server's theme or setting.
- Cooldown Management: To ensure fair usage and prevent spam, RustGPT includes a cooldown system that limits how often players can use the ChatGPT feature.
- Discord Integration: Optional integration with Discord via webhooks allows for broadcasting ChatGPT responses or death commentary directly to a Discord server.
- Configurable Settings: From API keys to response parameters, RustGPT offers extensive configuration options to customize the plugin's behavior and integration with OpenAI's API.
- User Permissions: Server admins can control who has access to the ChatGPT features through customizable permissions.
You should read this entire README if you are using this plugin for the first time.
Required OpenAI API Key
To run this project, you will need to get yourself a fancy OpenAI API key.
Installation
Copy the plugin RustGPT.cs into your Carbon or Oxide plugins folder.
When the plugin is first loaded it will generate a configuration file and the server console will say Please configure the plugin with the required OpenAI API key.
Configure the plugin in the RustGPT.json file located in you Oxide or Carbon configs folder.
Permissions
In console for oxide:
o.grant user <player_name_or_steam_id> RustGPT.chat
In console for Carbon:
c.grant user <player_name_or_steam_id> RustGPT.chat
Restart the plugin.
Using Oxide? Do this:
o.reload RustGPT.cs
Using Carbon? Do this:
c.reload RustGPT.cs
Do yourself a favor and make a local copy of your RustGPT.json file in case something goes wonky in future updates.
Usage/Examples
Question Patterns
This setting is designed to validate the chat message so only specified text triggers the API call.
Currently the default question structure is like this:
"Question Pattern": "!gpt"
This is an old method to trigger commands in rust. Basically, any chat message that contains the text "!gpt" will send that chat message through the API and trigger a response. You can edit this in the configuration file. Since this is capable of accepting regex expressions you can get crazy with it. For example:
"Question Pattern": "(who|what|when|where|why|how|is|are|am|do|does|did|can|could|will|would|should|which|whom).*?$"
This will look for a chat message that contains one of the various keywords and ends with a question mark.
"Question Pattern": ""
And incase you were wondering this will full send everything. Not recommended. If you have a well populated server and a lot of chat enthusiasts, this will cost you some money.
Commands
/models - admin only, lists the available models.