Last Updated: 20210709 0901 (UTC+8)
DXC DSBot Project Update Nov`20
Disclaimer! - The Contents and Links are Outdated and is nolonger check for validity! Proceed at your own discretion!
This will be more than a notice... Of what that was done from 23rd to 24th of November.
Many things were changed to fully implement the new logic. As such new features for the echo type commands:
The <>say command has undergone new changes and a new command <>echo exists alongside the say command; not with just this update as the only update. There were upgrades to include attachments. The latest code deletes successful attempts when the code is run by deleting the original message in all three echo type commands. What if the user sends a message with pictures? or even attachments? These pictures will be lost when the bot deletes the message.
Hence upon swift implementation of the logic to <>echo, <>shout and <>whisper became upgraded. able to take in pictures, as pure args even without any messages and send them to the local text channel or the user PM. Thus I am proud to present to you, the bot capable of crossing boundaries, all just to say shout and whisper to you in the next level, echoing thru the megaphone to send you a message.
<>say / <>echo - 3 of 4 will be successful. 1 of 4 will hit no args error(when no message and no attachments)
<>shout / <>mega - 3 of 10 will be successful, able to send a message to a designated text channel. 5 of 10 will only be able to function like the say/echo command and send the message to the current text channel. 2 of 10 will hit errors: one being no args error(no msg and no attachments), the other being invalid args(1 args thats a valid channel tag but no attachments)
<>whisper / <>message - mirrors the shout/mega commands however, its 3 of 10 success is the message being able to send to a recipent of your choosing. 5 of 10 is the fallback that i had implemented weeks prior, without any tag, the command will result in the bot sending that message to you PM. The remaining 2 of 10 is simply no args error(no msg and no pics) and invalid args(only one arg that is a valid usr tag but no pics)
For any of these to work, when there is no tags (channel or user), these conditions have to be fulfilled:
No tag: there must be at least one args: any message that is not a whitespace character or an attachment
Have valid tag as the first args: must have at least two args (as the first one is a tag; ) or an attachment
Next is the refinement of the <>datetime command.
Ignoring all the command logic behind the naming, the whole thing has been reworked to not take in anymore args other than "-h -help" because it can be confusing. The command still works with how it does, with a reworked backend on the fixed YYYY MM DD HH:mm:ss format, adding AM or PM hebind the time as well as addinf the day of week in front of the date. The datetime command can be called via 9 commands:
datetime
date, time
year, month, day, hour, minute, second
None have any 's' behind, to ensure that it is the base form and not just any other language barriers of any certain words. I have did it on purpose to ensure none of the commands have singular or pural issues, other than those that cannot be avoided. My English is bad, hence I would not even be sure if any of the commands are which is which and what are what. Just know that I avoid and 'S'es.
Base Commands: test, version(ver,build,patch,release), ping(and a ton of them 48 in total), datetime (and 8 othersl see above), echo(say), mega(shout), message(whisper), punch. Not to forget the outdated help. Those Updated and/or Upgraded are in Bold
Raw Commands: Updated UwU and urmomgey. Outdated Are you ready? and Am I ready?
Social Commands:
New: deluxe(dxchiam,dxcellon,dxcc,download,support): these sites in the DXC Network yes
Older ones need work, too troublesome to list them one by one here
SUDO Commands, just look below. 3x response summary. 8x response editor. 1 functions like version command. another 1 handles activity control - online offline etc...
Thus this end my patch notes...
What was done between dates Nov 13 to 15 was the implementation of tags (-???) where ??? will have the bot or some other processes be chosen and filtered. Hence instead of moving to 0.2.7, we moved to 0.3.0.
This mostly affects the Admin and SUDO commands where command DXRoot actually calls for all bots but by adding a -m or a -p will make only the selected bot to execute the said command. Developing from there, some changes were implemented on existing commands:
General Response (gr) has been changed and upgraded to General User Response (gur) and the original scope and target updated for non-DXC users
Creator Response (cr) has been changed and upgraded to Creator User Response (cur) and the original scope and target updated for DXC users
Private Response (pr) has been changed and upgraded to Private Environment Response (per) with it being fully implemented into the code targets: PM/DMs
Server Response (sr) has been changed and upgraded to Server Environment Response (ser) with it being fully implemented into the code targets: Server Text Channels
Upgrades to commands with regards to response when the reset args was used: Base Command Response (bcr), Raw Command Response (rcr), Social Command Response (scr), Admin Command Response (acr)
New Commands Added: User Response Summary (urs), Environment Response Summary (ers) and Command Response Summary (crs)
A new datetime command in base commands:
datetime has 3 components. datetime, date and time.
datetime displays the system date and time by defaullt; if have args, will only take in "date" or "time" that will work the same way as below
date displays date by default; if have args, will only take in "year" or "month" or "day"
time displays time by default; if have args, will only take in "hour" or "minute" or "second"
what these args do is self explainatory
The new selector logic has also transformed existing base commands: <>test, <>version(ver/build/patch/release), <>ping(there are now too many; using bpmf dtnl 8*6), the new <>datetime(date/time) command. However, <>say, <>shout, <>whisper and <>punch have complex logic and will require time to be updated. One more thing is the spliter. In the past this was used (/ +/) now it has been updated to (/\s+/) affecting all white spaces instead of just a normal space.
Not to forget about the changes to deny <>shout, <>whisper and <>punch to be executed in PM/DMs as these are quite the social commands meant for the pinging and interaction between other users. Other miscs are the ping pongs now can be stacked. Just don't place any invalid args, you will see a face. So is the UwU and OwO commands in raw.
The social commands went through updating. where the older DXChiam/DXCellon/DXCC commands are merged into a single file, now also accepting DXC Downloads and DXC Support args to reply anyone who dares enter the command. The command ><><deluxe will call the menu and provide no links.
Finally, the Qing counter. Implemented a "urmomgey" raw command that will scold anyone who dares type... (see the quotes)
Today is a great day for my bot development progress. With a number of improvements to the Base commands (<> commands)
Confirmed the completetion of several commands:
<>test command (the very first command; where the bot will tell you, the user, that it is alive and well)
<>version command (inherited from the Admin and Root (SUDO) commands, to display the current version/build/patch of the bot)
As of now: in "0.2.6-indev-2011.08":
Release refers to the whole thing.
Version refers to "0.2.6"
Build refers to "indev" also note that execution of the command it is replaced by the bots 3 alphanumeric code
Patch refers to "2011.08"
<>punch command (which have been completed some time ago, that uses a lot of tag based logic and back end logic to determine if the user tagged is valid and even have bot level integration which displays a specific message: up to 6 different types - when the user executes the command)
The 3 Echo type commands: <>say <>shout <>whisper
<>say now deletes the original message sent by the user if the executed message is not an error or help message.
<>whisper now also deletes the original message sent by the user if the executed message is not an error (due to not having any arguments, having an invalid tag, tagging of a bot) or help message. It will only under the 3 conditions will it delete the user executed message:
No Tag = Sending the message to the user who executed the command (Built on User Tag Themself)
User Tag Themself = Sending the message to the user who executed the command (Built on Original Idea)
Orginal Idea (User tags another valid user; not bot) = Send two messages: one to the tagged user, another as a reciept (To counter spamming; because what you give (spam) is what you will get comrade!)
Finally we have the <>shout command which have been left to mirror the <>say command for some time. Until today.
No tag = Execute like the <>say command (Built on Tag Current Channel)
Tagging the Current Channel = Also, execute like the say command (Built on Original Idea)
Original Idea (User tags another text channel in the same server; not a different channel in a different server) = Execeute command, with the message sent to the tagged channel instead of the channel that bot received the command
One thing to note is the <>shout command requires the bot to have Send Messages permission on the target channel for it to work, a message will be said sent at the sendinf channel if the permissions are not met. One issue realised at point of writing is the bot also requires the Manage Messages permission in order to delete messages. So, stay safe. Do not crash my bots.