WARNING!!
DemiBOT is still undergoing alpha production. Some features may not be complete and could possibly be a bit buggy. If you'd like to contribute or send me a bug report, you can DM me on Discord @ loonatic#1337 . Please note that not everything is final, and could possibly change in the next update!
- +Prefix may now be more than one character long, so a prefix of ";12" is now allowed.
- +Added a prototype menu for sysinfo. Check it out using
;sysinfo storage
- ! Note: There are still a bunch of missing features on DemiBOT. I'll implement them sometime in the future when I'm confident enough. Thanks for understanding :-)
Work in progress list:
- Change avatar command (;chava)
- Concise menus for different areas in ;sysinfo
- Change status via command and/or json config
- Refining ;help. It's missing some things. I know.
- ;upload failing to upload response
- And like... a million other things :]
- +Added threadpooling - this means that DemiBOT can run up to eight commands at the same time, if the other commands take lot of time to process.
- +DemiBOT now has a limit on how many concurrent commands a user can run: by default, only one concurrent command can be ran per user (this can be changed in config)
- +DemiBOT has a five second timeout now to CMDCommand -- it will immediately stop the process after five seconds and let the user know, although this can be configured in the botconfig.json
- +Implemented a UploadFile command. Use ;upload to upload files (less than 8MB) to Discord. DemiBOT by default will put ./downloads/ as the root of ;upload.
- +Implemented a double left click command.
- +Custom prefix can be set in botsettings.json.
- +Config option made to set custom channels where only DemiBOT will listen in. If you have "any" in the config, it will listen to any channel.
- ~Fix command count HashMap with a ConcurrentHashMap to protect against race conditions.
- ~Made sure ;cmd commands will only output when debug mode is on.
NOTE: Many commands are undergoing experimental mode right now! If a command does not work as desired, chances are it's still being worked on. You can always shoot me a DM on discord (noted above) for any inquiries.
- +We can now set multiple trusted users and owners in the config. When debug mode is set to
true
, the bot will only listen to it's owners. - +We can now also set multiple trusted Discord servers (soon I'll make channels) in the config. DemiBOT will only listen to commands in trusted servers, by trusted users/owners.
- +Implemented a feature in DemiBOT's configuration to set the custom file path for output images (such as ;ss or ;rs), and downloads (wget command coming soon!) By default, images and videos generated by the bot will now be located in
/output
. - +Implemented a small feature where you can change the status of DemiBOT. Still a work in progress.
- +All new commands are respectively added in
;help
- ~Fixed crash relating to config when elements are missing from the json (probably because of a newer update). If a required element is missing from the json, DemiBOT will automatically implement that missing element with it's corresponding default parameters.
- +Implemented
Debug Mode
(WIP) into the configuration. Check below for more information. WARNING: UNFINISHED! x - +Fixed major bug regarding running the discord bot on a headless instance. Will force java.awt to set "headless" to "false" even if the computer is actually headless. If you're still having a problem running on a headless Linux device, I recommend running
export DISPLAY=:0
and then restarting the bot. More information coming soon. - +Added ASCII header art. You can view the source in
/resources/titleart
and/resources/setupart
. - +Implemented a "Debug" mode into the configuration file. Debug mode would only be used for diagnosing and investigating bugs. With Debug mode enabled, messages and other information will be outputted from the DemiBOT console window. If you're having issues starting up DemiBOT, make sure
"DebugMode":
exists inbotconfig.json
and is rather set totrue
orfalse
. (Don't worry, I'll eventually make a better fix for this later :p) - +Implemented changelogs! Older changelogs coming soon :)
- -Removed
/resources/asciiart
.
- +Implemented more features into
botconfig.json
!!botconfig
is loaded with new customizable options, including:ServerID
(WIP) Server ID where the bot will listen into. WARNING: UNFINISHED AND NOT WORKING! xOwnerID
The Bot Owner's ID. The bot by default will only listen to it's owner.UserIDs
(WIP) Users that the bot will listen to. WARNING: UNFINISHED AND NOT WORKING! x
- +The Discord bot will automatically make a new
botconfig.json
if it doesn't exist already or is null. - +Currently working on a first time setup feature! TBA and WIP.
- ~Tweaked
CMDCommand.java
for multi/cross-platform support.
- +Implemented a WIP "File Checker" method in the CommandUtil class. The concept for this method is to ensure that the required binaries (such as ffmpeg.exe for Windows) existed and could be reachable by Java.
- +Added cross-platform support for ffmpeg, setting the default desktop interface + input device in correlation to what OS DemiBOT is being ran on.
- +Added Unix support.
- +The CMD command is now functional and ready to go! DemiBOT will now send a message with the output of a command given with ;cmd.
- ~Fixed CMD bug related to flags being passed with arguments.
- +Thanks to Disyer, compiling to a fatjar (standalone binary) is now possible and easier to use. Check the "Compiling" section of the README for user instruction.
- +Added other WIP dependencies (wget, nircmd, ffmpeg) for windows... will be useful in the future.
- +Implemented WIP record screen (;rs) command. (ffmpeg is required)
- +Implemented WIP "Run as command prompt" (;cmd) command.
- +Migrated all the files from the private repository to this public GitHub repository. DemiBOT was originally idealed to be open-source for all to use, and eventually a framewokr for many other social platforms in the future.
- +Functional commands include[d] (but not limited to):
- Screenshotting
- Keypress
- Typing
- Left/Right clicking
- WIP System Information
- Ping
- Running remote applications
- Moving the mouse
- Help Command
- +Implemented Readme for the first time.