Do you think I could just leave this part blank and it'd be okay? We're just going to replace the whole thing with a header image anyway, right?
You are not logged in.
Pages: 1
Hey. I'm making a world editing bot that doesn't require any commands. It's designed to understand the English language and do what you ask.
The problem I have with a lot of bots is that they contain mundane commands such as ".replace 13 15 +r". My goal is to replace that with "switch the up boosts with up gravity".
It's not like "oh my god this is the best thing ever", it's just a small step in making world development smarter, easier, and quicker.
Current features:
_________________
• Understands which block you want based on a short description
• Replace all (Source)
• Fill (Source)
• Draw circle (Source)
• Troll (for art - needs work) (Source)
• Move all (Source)
Planned features:
_________________
• Ambiguity help / Prompt for clarification if the command has multiple meanings.
• Regional commands instead of global commands.
• Save, load, rename, kill, and other basic functions.
• Simple events (e.g. "if someone says __, kick them")
• Undo / Redo commands and blocks you place yourself.
• Enhanced undo: make a correction to your previous statement instead of "undo" and then retyping the command.
Source:
_________________
View source on Github (1 file, 672 lines)
_________________
I'm open to suggestions and other valuable comments.
Also, if you're feeling bored, then you can help by making functions explained in the "Planned features" section. I'd recommend you fork it on Github and then make a pull request but you can also make a function and upload to Pastebin.
Yeah, well, you know that's just like, uh, your opinion, man.
Offline
but can we also type in the block ID?
Sounds great!
Offline
I know the lack of that feature has annoyed me in the past for something very similar to this.
If this was open-sourced (for example on GitHub) with a Visual Studio solution I think it would attract a lot of interest from the community (myself included) to work on it.
I might have something that could assist you in the "undoing" feature.
Offline
I've uploaded it to Github as suggested:
Yeah, well, you know that's just like, uh, your opinion, man.
Offline
That's nice idea, but I would recommend using regex. It's what I'm using in my 1st bot (still work in progress). It allows so many possible ways to say commands and if ussed correctly won't activate them during normal chatting. If you add to that some nice respones from bot you can have nice chat with it.
Here is nice example of that system:
Regex: "(clear|clean) .*(this|world|level|map|everything)"
Commands that activate it:
"Hey bot. Please clear this world from all blocks for me!"
"Could you be so nice and clean everything?"
"Egh clear this ****"
Of course it works also with stuff like: "blablabla clean I so here and blablabla map" but for me that's not a problem
If you wanted to make sure it only works when you talk to bot you could add "bot" or something like this to regex. This system has no limits!
Ps. You could change list of players to simple regex list of them placed under 1 group and later just get it after match from that group. It's so simple but powerful.
Offline
That's nice idea, but I would recommend using regex. It's what I'm using in my 1st bot (still work in progress). It allows so many possible ways to say commands and if ussed correctly won't activate them during normal chatting. If you add to that some nice responses from bot you can have nice chat with it.
Here is nice example of that system:
Regex: "(clear|clean) .*(this|world|level|map|everything)"
Commands that activate it:
"Hey bot. Please clear this world from all blocks for me!"
"Could you be so nice and clean everything?"
"Egh clear this ****"Of course it works also with stuff like: "blablabla clean I so here and blablabla map" but for me that's not a problem
If you wanted to make sure it only works when you talk to bot you could add "bot" or something like this to regex. This system has no limits!Ps. You could change list of players to simple regex list of them placed under 1 group and later just get it after match from that group. It's so simple but powerful.
Regex aside, you know how powerful English is, that a simple system like that won't work. Let's take your system as example, "Clear this part" would clear the whole world, and so does "Clear everything but the arts" which the arts are totally undefinable, while it will also clear the whole world in contrast to the original target.
So yeah, this idea may sound cool, but it's almost impossible.
Regex aside, you know how powerful English is, that a simple system like that won't work. Let's take your system as example, "Clear this part" would clear the whole world, and so does "Clear everything but the arts" which the arts are totally undefinable, while it will also clear the whole world in contrast to the original target.
So yeah, this idea may sound cool, but it's almost impossible.
Yeah of course. I know that's almost impossible to do that but it fits my needs and works better than using arguments like Tako did in his example. I'm just throwing here my simple idea
Offline
Thanel wrote:That's nice idea, but I would recommend using regex. It's what I'm using in my 1st bot (still work in progress). It allows so many possible ways to say commands and if ussed correctly won't activate them during normal chatting. If you add to that some nice responses from bot you can have nice chat with it.
Here is nice example of that system:
Regex: "(clear|clean) .*(this|world|level|map|everything)"
Commands that activate it:
"Hey bot. Please clear this world from all blocks for me!"
"Could you be so nice and clean everything?"
"Egh clear this ****"Of course it works also with stuff like: "blablabla clean I so here and blablabla map" but for me that's not a problem
If you wanted to make sure it only works when you talk to bot you could add "bot" or something like this to regex. This system has no limits!Ps. You could change list of players to simple regex list of them placed under 1 group and later just get it after match from that group. It's so simple but powerful.
Regex aside, you know how powerful English is, that a simple system like that won't work. Let's take your system as example, "Clear this part" would clear the whole world, and so does "Clear everything but the arts" which the arts are totally undefinable, while it will also clear the whole world in contrast to the original target.
So yeah, this idea may sound cool, but it's almost impossible.
You could define regions, say after art is done go through and box them to define the region and categorize it under "Art". Then a command such as "Clear all except art" would be viable.
Offline
Regex aside, you know how powerful English is, that a simple system like that won't work. Let's take your system as example, "Clear this part" would clear the whole world, and so does "Clear everything but the arts" which the arts are totally undefinable, while it will also clear the whole world in contrast to the original target.
So yeah, this idea may sound cool, but it's almost impossible.
I wouldn't call English "powerful", just complex. And of course, something that is complex is not necessarily impossible to understand. There's nothing magical about how we interpret English. Therefore, there's no reason to assume it's impossible to translate that interpretation into code. It's not a new idea, in fact there is an entire branch of software dedicated to this idea of interpreting, called "virtual intelligence software".
As for your "Clear this part" bug, that's just ambiguity. Depending on the scenario, even a human wouldn't be 100% confident in what you meant. However, it's still readable. I propose that you can read the phrase "this part", or even just "this". It's just a matter of analyzing how you would receive the phrase in a bunch of different scenarios.
Yeah, well, you know that's just like, uh, your opinion, man.
Offline
remove all of the 883 blocks and replace those with 993 blocks then delete them thanks!!. replace all 883 with 993 please. Oh sorry could you move all of those blocks right seven blocks? Wait wait sorry cancel that last thing
I will not be adding support for multiple commands in one message. Once you add "and"s it gets a lot more tricky to parse.
Yeah, well, you know that's just like, uh, your opinion, man.
Offline
Added Troll, Draw Circle, Move, and Fill.
Also, you must preface all commands with "bot," so it knows you're talking to it.
Examples:
• bot, troll green brick on top of brown brick.
• bot, draw a circle with radius 49
• bot, move the map 10 blocks left
• bot, fill with plate iron bg
Yeah, well, you know that's just like, uh, your opinion, man.
Offline
Pages: 1
[ Started around 1732708603.2985 - Generated in 0.132 seconds, 12 queries executed - Memory usage: 1.57 MiB (Peak: 1.74 MiB) ]