v3.0.0 - 20th August 2024
**RoleplayBot v3.0.0** is our biggest and best update yet, with countless improvements to commands, new additions and even design changes. To eliminate bugs and issues we have decided to rewrite all commands from scratch, during this process we made continuous improvements and squashed alot of bugs!
## **Civilian Module Updates;**
- Migrated all Civilian commands and implemented subcommands;
- `/civilianinfo` -> `/civilian info`
- `/createcivilian` -> `/civilian create`
- `/deletecivilian` -> `/civilian delete`
- `/editcivilian` -> `/civilian edit`
- Changes to creating a Civilian Character;
- Now, when creating a civilian character, instead of stating their age and date of birth we only ask for the date of birth. That way we can find the civilian characters age based on the current calendar year.
- We have made it so the first character of both the forename and surname must also be a capital letter otherwise an error message is displayed.
- We have also made adjustments to our validation checks, to ensure that civilian characters remain inside the boundaries of realism whilst also allowing customisation!
- Civilian characters now also display their height and weight using both the metric and imperial system to accompany for almost all Roleplay regions.
- You can now also choose your civilian characters blood type, which is displayed on medical records and a new command `/medical_profile`.
- Added the __*Active Civilian System*__;
- Users can set their active civilian character with `/civilian set_active`, this will be used in all commands such as `/arrest` and `/fine` to minimise the need to constantly check a users civilian character and overall improve roleplay quality.
- This system allows us to use new technology that wouldn't be possible otherwise, such as adding Buttons to the `/civilian info` command to dynamically view all of your vehicles, firearms and criminal/medical history.
- You can always remove your active civilian character with `/civilian remove_active`.
- Changes to viewing a civilian characters information;
- Previously, we had multiple commands to view all firearm information, all vehicle information and all of the characters medical records and police records.
- But now, you just run `/civilian info` and use the buttons attached to view all of your vehicles, firearms and history.
- The system utilises __pagination__ which allows you to navigate through different pages of your information, allowing us to bypass discords message limit.
- Changes to deleting a civilian character;
- A new confirmation message will be displayed when trying to delete a civilian, you must select either yes or no to confirm the deletion. This prevent accidental deletion or the deletion of an incorrect character.
- New Limits;
- We have added a maximum limit of civilian characters you can have inside your server under the free plan, this limit has been currently set to `100` characters across the entire server. If you reach 100 civilians you will be unable to create any more.
- Added __`/civilian list`__;
- This command allows you to list all of your civilian characters that are registered to your account, deceased or not.
- We always strive to improve, and that's why we have crushed countless bugs and improved slow running code inside the Civilian Module.
## **Firearm Module Updates;**
- Migrated all Firearm commands and implemented subcommands;
- `/civilianinfo firearm` -> `/firearm info`
- `/registerfirearm` -> `/firearm register`
- `/unregister` -> `/firearm unregister`
- `/editcivilian firearm` -> `/firearm edit`
- Changes to our serial number generation algorithms;
- We have changed the way our serial numbers get generated, to make the roleplay experience more realistic, now you will find serial numbers such as `16EQLNPP2AYY1719881312`. The starting letters signify the firearm ID (`16`), followed by a random combination of uppercase letters and numbers (`EQLNPP2AYY`) with the last string of numbers being the firearm created unix timestamp (`1719881312`). These changes help us to ensure a random serial number is generated every time!
- Changes to deleting a firearm;
- A new confirmation message will be displayed when trying to delete/unregister a firearm, you must select either yes or no to confirm the deletion of a firearm. This prevent accidental deletion or the deletion of an incorrect firearm.
- Profanity checks;
- We have decided to implement profanity checks throughout many of our modules and commands, this is to ensure that all the data we store is clean and doesn't breach our guidelines. It also ensures that our bot remains rated as PG.
- New Limits;
- We have added a maximum limit of registered firearms you can have inside your server under the free plan, this limit has been currently set to `100` firearms across the entire server. If you reach 100 firearms you will be unable to register any more.
- We always strive to improve our modules, and that's why we have completely rewritten the firearm module, including better code, more consistent checks and better error messages.
## **Vehicle Module Updates;**
- Migrated all Vehicle commands and implemented subcommands;
- `/civilianinfo vehicle` -> `/vehicle info`
- `/register vehicle` -> `/vehicle register`
- `/unregister` -> `/vehicle unregister`
- `/editcivilian vehicle` -> `/vehicle edit`
- Changes to deleting a vehicle;
- A new confirmation message will be displayed when trying to delete/unregister a vehicle, you must select either yes or no to confirm the deletion of a vehicle. This prevent accidental deletion or the deletion of an incorrect vehicle.
- New Limits;
- We have added a maximum limit of registered vehicles you can have inside your server under the free plan, this limit has been currently set to `100` vehicles across the entire server. If you reach 100 vehicles you will be unable to register any more.
- Profanity checks;
- We have decided to implement profanity checks throughout many of our modules and commands, this is to ensure that all the data we store is clean and doesn't breach our guidelines. It also ensures that our bot remains rated as PG.
## **Fire Department Module Updates;**
- Changed the name of some Fire Department commands;
- `/bloodpressure` -> `/blood_pressure`
- `/hospital-records` -> `/hospital_records`
- Added `/medical_profile` command;
- Medics can now check a civilian characters medical profile, consisting of the civilians blood type, weight, height, gender and current address. This information can be very vital to medical personnel when needing to administer the correct drugs in a roleplay situation, and that's why we have made it a new command!
- Added __Text to Speech (TTS)__ for `/pass`; **[[RoleplayBot+ Exclusive]](https://roleplaybot.xyz/premium)**
- RoleplayBot+ subscribers can utilise Text to Speech (TTS) announcements when the `/pass` command is ran. Before the PASS alarm sound is activated, the bot will announce *"Attention all units, PASS alarm activated, unit <name> is in distress, respond to <location>"*. This include some limitations in the field length, along with profanity checks.
- Added the __Action Reply System__ to certain commands;
- Users can now respond to actions through commands by pressing a button on the command embed, this will allow them to respond accordingly to the command. Commands that support this currently in the Fire Department module are; `/administer`, `/aed`, `/blood_pressure`, `/cpr`, `/examine`, `/oxygen` and `/pulse`.
- Changes to viewing a civilians hospital records;
- Now, when viewing a civilians hospital records through `/hospital_records` you can use the attached buttons to cycle through the pages of admissions.
- The system utilises __pagination__, allowing civilians to have pages of admissions.
- Profanity checks;
- We have decided to implement profanity checks throughout many of our modules and commands, this is to ensure that all the data we store is clean and doesn't breach our guidelines. It also ensures that our bot remains rated as PG.
## **Social Media Module Updates;**
- Changes to the __Twitter system__;
- You are now able to create **Twitter accounts** to post on twitter with using `/tweet`. To create an account use `/twitter_account create` and fill in the details
- You are able to view other peoples accounts and information on twitter using `/twitter_account view`.
- You can delete your own twitter account using `/twitter_account delete`
- From now, a twitter account will be required to post a tweet. We have also reworked the design for the tweet post giving it a fresh look!
- Re-implemented the __TOR system__;
- You can now post anonymously using the TOR browser, `/tor`, which does not require an account or username to keep everything anonymous. We have however included the posting users ID in the footer of the TOR post, to ensure the system is not abused inside communities.
- Profanity checks;
- We have decided to implement profanity checks throughout many of our modules and commands, this is to ensure that all the data we store is clean and doesn't breach our guidelines. It also ensures that our bot remains rated as PG.
## **General Module Updates;**
- Added the __Phone number module__; **[[RoleplayBot+ Exclusive]](https://roleplaybot.xyz/premium)**
- RoleplayBot+ subscribed servers can now utilise phone numbers for calling and texting, this employs another level of realism into your community.
- Everyone is able to generate their own personal phone number with `/phone_number generate`, view their phone number with `/phone_number view` and delete it with `/phone_number delete`
- Users are also able to text phone numbers using the command `/text phone_number` and entering the number. Through the text command to owner of the phone number is hidden to prevent out of character roleplay.
- In addition to this, phone numbers can be called using `/call phone_number` where the owner of the phone number is pinged along with a message. They are able to either accept the call or decline it, calls are automatically declined after *60 seconds*.
- Bug fixes and changes;
- We have worked very hard to crush plenty of bugs in the general module and also improved how commands run.
- Some commands have had slight name adjustments;
- `/weapon rack` -> `/rack_weapon`
- `/weapon unrack` -> `/unrack_weapon`
- `/vehicle lock` -> `/lock_vehicle`
- `/vehicle unlock` -> `/unlock_vehicle`
- Removal of the __CAD/MDT Patrol System (`/patrol`)__;
- After long consideration, we have decided to completely remove the CAD/MDT Patrol system, formally accessed with the command `/patrol`. This has been done because we are looking at a wider range of integrations for the future, leaving this panel to be obsolete.
- Added the **Emergency Broadcast System**;
- The command `/emergency_broadcast` can be used to broadcast an emergency message. The emergency options currently available are; AMBER Alert, Road Closure, Large Fire, Flood, Hazardous and Mass Casualty Situation. More will be added in the future, any suggestions are appreciated!
## **Emergency Calling Module Updates;**
- Changes to 9-1-1 and 3-1-1 calls;
- All 9-1-1 and 3-1-1 calls now have buttons directly attached to them, these buttons allow On Duty units to respond or dismiss the call.
- Using the respond button will notify the calling user, that you will be responding to their call. It also edits the notification message to tell other units that you have acknowledged the call, once a call is marked as responding the dismiss button will be disabled.
- Using the dismiss button will notify the calling user, that you have dismissed their call. It also edits the notification message to tell other units that the call has been dismissed. The respond button will also be disabled once the call is dismissed.
## **Staff Module Updates;**
- Changes to the __Configuration system__;
- We have decided to completely rework the bots configuration and how it sends messages. Previously, logs utilised webhooks, which became very temperamental and reduced our possibilities moving forward. That is why we have decided to switch completely to *channel-based logging*, removing the need for webhooks all together.
- You can now choose your own custom **On Duty** role in the configuration command, along with 3 other roles; *Law Enforcement*, *Fire Department* and *Medical*. These roles will be used to restrict certain commands, therefore only users that have that role will be able to execute those command actions.
- We have worked very hard to fix countless issues and bugs with our configuration system, ensuring that it will run much smoother for everyone!
- We have improved the `/view_config` command to make it visual more appealing and also include more, important information such as your civilian, firearm and vehicle account along with currently disabled modules.
- Changes to the __Disable Module system__;
- We have decided to restrict the ability to disable individual commands using the bot, as this can be done using Discord. Instead you can disable the use of entire modules that you don't need or don't use. This can be done with `/disable` and easily re-enabled again with `/enable`.
- Added the __`/clear_on_duty` command__;
- You can now clear all the users with the on duty role, maybe at the end of a roleplay session, using one simple command! The progress is expected to take a longer time if you have a bigger server with lots of members.
- Added the __Manage Data system__;
- As a community owner you can now manage every bit of data inside your server, this includes civilian characters, firearms, vehicles, records, etc. Take control entirely through the new system.
- View any part of the data created inside your server, with new data view commands; __`/data view civilian`__, __`/data view vehicle`__, __`/data view firearm`__ and __`/data view case`__. All using either the civilian name, vehicle plate, firearm serial number or the ID that was assigned to it on creation.
- You can now delete specific data inside your server, with our new data delete commands; __`/data delete civilian`__, __`/data delete vehicle`__, __`/data delete firearm`__ and __`/data delete case`__. All using either the civilian name, vehicle plate, firearm serial number or the ID that was assigned to it on creation.
- You can also now clear or delete specific regions of data inside your server, with our new data clear commands; __`/data clear civilians`__, __`/data clear vehicles`__, __`/data clear firearms`__ and __`/data clear cases`__. We urge you to use all of these commands sensibly, as the actions are irreversible. But don't worry, because we have included confirmation messages and even logging to all of the actions to protect your community.
- Added the __`/clear_records` command__;
- You can now clear a civilians characters specific records, this includes the subcommands of; `/clear_records arrests`, `/clear_records citations`, `/clear_records fines`, `/clear_records hospital_admissions`.
- This allows servers administrators to control civilian character and better manage the server, this system is directly apart of our data management module, where you are able to manage specific parts of the servers data.
## **Economy Module Updates;**
- Migrated some economy commands;
- `/store add-item` -> `/store add_item`
- `/store edit-item` -> `/store edit_item`
- `/store remove-item` -> `/store remove_item`
- `/remove-item` -> `/remove_item`
- `/add-item` -> `/add_item`
- `/add-money` -> `/add_money`
- `/remove-money` -> `/remove_money`
- Added __`/store clear`__;
- With this command you can clear your entire servers economy store, this will delete every item and can not be recovered.
- Added __Store Import/Export Options__;
- You can now export your entire server economy store (`/store export`), which will create a save of the store, allowing it to be imported and used in other servers. (`/store import`)
- This feature does not yet allow the transfer of *role restricted items*, as all items transferred will be available for everyone to purchase. You can edit items with `/store edit_item`.
- Added __Economy Work Modules__;
- You can now add Jobs for users to work inside your server with `/job add`.
- Jobs can also be removed with `/job remove` or viewed with `/job view`
- Users can work a specific job with the command `/work`, the job system operates on an hourly payment system, where users can enter the amount of hours they have worked (1 to 10 hours) and get paid for that exact amount of work. This is why we generally recommend you set required roles for each job (Which can be done through `/job add`) and keep an eye on the economy logs!
- Changes to `/add_item` and `/give`;
- Added a quantity item for the amount of an item you want to give/add to a user.
- Changes to `/pay`;
- Added an optional comment/reference field that can be used to indicate what the transaction is for in logs.
- Added `/pay impound` to pay your vehicle impound fee.
- Minor Improvements/Changes;
- We have made minor improvements and changes to every economy command and system to make it run better and look better than it did before!
- Add the __Auction Module__; **[[RoleplayBot+ Exclusive]](https://roleplaybot.xyz/premium)**
- RoleplayBot+ subscribers can now utilise auctions for their servers economy, where users are able to bid on items in the auction and receive them.
- The current auction house can be viewed with `/auction view` and it will show every item.
- Auctions can be started with the command `/auction start`. Anyone is able to start an auction if there isn't already one active in the server.
- Items can then be added to the auction through `/auction add_item`. A starting bid can be specified along with the quantity of the item you wish to add. The item will then be removed from the users inventory, to prevent it being used whilst on auction.
- Items can be removed from the active auction with `/auction remove_item` or will be automatically added back to the user if nobody bids on the item.
- Bids can be placed on items through `/auction bid`. The bid must be greater than the previous bid and also be higher than the starting bid, the users balance is also checked during bidding to ensure they can currently afford the item.
- Once the auction ends, either automatically once the duration has ended or manually through `/auction end` then the current bid leaders for items will receive the item and have the bid value removed from their balance. The bid value is added to the item owners bank balance in one seamless transaction. If a user cannot afford the bid once the auction ends (e.g; they spend the money after placing the bid) then they will not receive the item and instead the item will be given back to the owner.
- Both the owner and bid leaders for items will receive DMs once the auction is ended, telling them either they have received the item/money or that they haven't receive the item due to an issue.
- All steps and actions are logged through the economy logs to ensure moderators can keep track of everything!
## **Law Enforcement Module Updates;**
- Added __Text to Speech (TTS)__ for `/panic` **[[RoleplayBot+ Exclusive]](https://roleplaybot.xyz/premium)**;
- RoleplayBot+ subscribers can utilise Text to Speech (TTS) announcements when the `/panic` command is ran. After the panic alert is sounded, the bot will announce *"Attention all units, panic button activated, unit <name> is in distress, respond to <location>"*. This include some limitations in the field length, along with profanity checks.
- Profanity checks;
- We have decided to implement profanity checks throughout many of our modules and commands, this is to ensure that all the data we store is clean and doesn't breach our guidelines. It also ensures that our bot remains rated as PG.
- Changes the `/radar`;
- We have decided to change from using MPH to measure speed to KPH, this matches the bots general theme of being primarily American-based.
- Changes to `/bolo`;
- Migrated the command `/clearbolo` to `/bolo clear`.
- Added a new subcommand, __`/bolo issue`__, which works the same was as the old `/bolo` command.
- Added a new subcommand, __`/bolo check`__, where law enforcement can manually check if a civilian character has an active BOLO, along with the BOLO reason.
- Added __Civilian Flags__;
- Civilians can now be assigned certain flags through the command `/flag add`. The flags currently supported are; Armed & Dangerous, Felon, Mental, Dangerous, Convicted Sex Offender and Known Terrorist/Affiliations.
- Flags can be removed with `/flag remove`.
- Civilian flags are displayed on their record and when searched with `/lookup`.
- Changes to `/lookup`;
- Added the option to view the civilian characters history, on the command `/lookup civilian`. A select menu will allow you to switch between the history you want to view.
- BOLO's and civilians flags are displayed in a separate embed for `/lookup civilian`.
- Added a new subcommand, __`/lookup case`__. This allows you to lookup certain case details using their ID. Cases include; Hospital Admissions, arrests, fines, citations, 9-1-1 calls and 3-1-1 calls.
- Added the __Evidence/Confiscation Module__; **[[RoleplayBot+ Exclusive]](https://roleplaybot.xyz/premium)**
- RoleplayBot+ subscribers can now utilise a confiscation and evidence module, apart of the Law Enforcement module.
- You can confiscate an item from a users inventory with `/confiscate`. Upon running the command the users inventory will be shown in a pagination embed to allow you to cycle through pages of the users inventory, another button will also be visible at the bottom to *Confiscate* an item. Once you press the button you must enter the items name, this will remove the item and all of its quantity from the users inventory and add it to the *evidence locker*.
- You can view a users evidence locker through `/evidence`, which will display all of the users confiscated item in a pagination embed to allow you to cycle through pages of the users confiscated items. Another button will be displayed at the bottom to *Hand Over* the item, once pressed you will be prompted to enter the items name. Once entered the item and all its quantity will be given back to the user.
- This system can be utilised in a roleplay setting when Law Enforcement personnel wish to seize an item, whether this be for investigation or because the person is under arrest. That's up to you to decide!
- Added the __Clock-in/out Module__;
- Gives you the ability to clock in at the start of your patrol through `/on_duty` and then clock out at the end of your patrol with `/off_duty`.
- The total patrol time will be logged in our database, which you can view at any time using __`/view_patrol`__. Just make sure to remember your patrol ID which is visible at the bottom of the On Duty and Off Duty embeds. Alternatively, excluding the patrol ID field will display all of your previous patrols.
- This feature can be disabled specifically using the `/disable module` command and selecting **Clock-in/out Module**. (This was added due to a [Poll](https://discord.com/channels/945681941213089814/963728512668282890/1263104390974275614))
- Countless design improvements and changes to make this command better for you!
v3.0.1 - 21st September 2024
This is a patch update that only includes some minor changes to commands, the website and bug fixes.
## French Translation Efforts
- We have decided to discontinue French translation efforts due to a lack of resources and the correct personnel. Therefore, all translation efforts inside each command has been removed along with some fully translated commands such as (`/ping` and `/credits`)
## Minor Website Changes
- Updated the SEO tags inside all of our public pages for better optimisation and statistics.
- Changes to our backend webhooks that control how RoleplayBot+ subscriptions are handled automatically, includes new additions when invoice payments fail with new error prevention modules to ensure we don't run into any problems.
- Updates the Terms of Service page, view below for more information.
## Terms of Service Update (Effective: 21/09/2024)
- We have updates our "Payments & Subscriptions" term to include the following:
- *We hold the ability to automatically charge your payment method on file and, if required, suspend your access to the service if your payment method fails. During the suspension period we will attempt to automatically charge your payment method on file up to 8 times within 7 days. If payments still fail after this, your account will be terminated, following our termination procedure.*
v3.0.2 - 23rd September 2024
This is a patch update that includes only bug fixes
## Bug Fixes
- **Bug #011 -** Implemented a fix for a bug that affected `/add_money`, `/pay` and some auction functions. Details: Using /add_money will result in a configData not found error. We can confirm this is because of a type error in our recent v3.0.1 update. Ref: https://discord.com/channels/945681941213089814/977489194966462484/1287680417364967424
- **Bug #010 -** Implemented a fix for a bug that affected the `/add_item` command. Details: > Using `/add_item` on a user other than yourself will result in the item *not being added*. The action is still logged in the economy_logs channel but the item is not added to the users inventory. We can confirm this is **NOT** an issue with the `/inventory view` commands. Ref: https://discord.com/channels/945681941213089814/977489194966462484/1279951501623558145
v3.0.3 - 2nd October 2024
This is a minor patch update which includes some slight service adjustments, enhancements to stability and some internal (behind the scenes) changes.
## Bot Changes
- Removed profanity checks from the following commands;
- `/store add_item`
- `/store edit_item`
- `/tweet`
- `/twitter_account create`
- This is to allow you more customisation with twitter account descriptions and item names/descriptions.
## Backend Website Changes
- Made some changes to the backend processing and Stripe webhooks to improve subscription automations.
- You will now receive an email if we are unable to automatically charge your card to continue your subscription.
- We will now attempt to automatically charge your card 8 times within 7 days, according to our Terms of Service
- Expect more email alerts and integrations coming soon!
- Minor service improvements and general tweaks to ensure everything is running smoothly!
v3.0.4 - 19th October 2024
Another minor patch update!
## Bug Fixes
- **Bug #013 -** Implemented a fix for a bug that affected `/clear_on_duty`, which caused a slight calculation error because the user hadn't clocked out manually. Ref: https://discord.com/channels/945681941213089814/977489194966462484/1297176739574972417
- Implemented a fix for a bug that affected our Recurring Subscription System (RSS) for RoleplayBot+. Subscribers now overdue on subscription payments will receive 1 email per monthly period to notify them before suspending the subscription.
- **Bug #012 -** Fixed a bug with the `/pay person` command. Where the users balance would become the amount paid, plus the current bank balance of the user. This has now been resolved. Ref: https://discord.com/channels/945681941213089814/977489194966462484/1295022583950872676