GithubHelp home page GithubHelp logo

sisilicon / worldedit-be Goto Github PK

View Code? Open in Web Editor NEW
250.0 12.0 33.0 9.5 MB

A Minecraft Bedrock addon port of the famous WorldEdit mod for Minecraft: Java Edition.

License: GNU General Public License v3.0

TypeScript 78.48% Python 3.78% CMake 0.15% C++ 1.88% GDScript 15.71%
minecraft minecraft-addon worldedit minecraft-bedrock-edition minecraft-bedrock-addon

worldedit-be's Introduction

WorldEdit: Bedrock Edition

Build Workflow Documentation Status Python code style: black Python Imports: isort Support me on Patreon Donate Twitter Follow Discord

This is a Minecraft Bedrock addon port of the famous WorldEdit mod for Minecraft: Java Edition. The addon comes with custom commands to make building easier, and more fun! Not only are there commands, but also items to make it easier for anyone on any device to use this. Please note that this addon requires experimental features. To be on the safe side, make a backup of your world.

Installation

Locally

First you must download the mcaddon file. You can find one in the release section. After which, you open it with Minecraft and it will be imported into your game. Once there, choose a world you want to apply this addon to, and add the behaviour pack (the resource pack should apply automatically). The "Beta APIs" experimental feature must also be enabled. Beta APIs And that's it! Your world is ready for WorldEdit.

Aternos server

To properly add this addon to the server, you first need to upload an already existing world with the required experimental features enabled (Do NOT add the addon to the world directly). You must then install the addon separately in the server's packs folder. Read more about how aternos handles addons and experimental features here and here.

Features

WorldEdit currently has the following features.

  • Clipboard manipulation (Cut, Copy, Paste)
  • Masking blocks from certain actions
  • Manipulating region selections
  • Navigation commands and the Navigation Wand
  • Generating shapes
  • Multiblock patterns
  • Undo and Redo
  • Brushes for painting/affecting blocks
  • Manipulating biomes
  • Exporting and imports structures

Planned

These features will be added in the near future.

  • More brushes and tools
  • More selection shapes
  • More selection operations
  • Palettes
  • Basically, Java Parity

Documentation

The addon comes with a quick start on how to use WorldEdit in Settings > How to Play while you're in the world. There's a more in-depth documentation over at the project's docs page: https://worldedit-be-docs.readthedocs.io

Contribution

See CONTRIBUTING.md

License

This addon is under the GPLv3 license. This means that you:

  • CAN modify, copy and distribute this addon.
  • CAN use it privately or for commercial use.
  • CAN'T change the license of your modified version.
  • CAN'T make the modified source code closed.
  • HAVE TO indicate any changes in the modified version.

You also don't HAVE to credit me, but it would be great if you did to help support my work! 😁

Special Thanks

The backbone of this addon's code is a heavily modified version of notbeer's GameTest API Wrapper.

And thanks to the original creator of the WorldEdit mod "sk89q" and EngineHub as a whole. They developed and excellent mod, and I'm just simply making a version of it work on bedrock. They're the real heroes. :)

Support

I know you already saw the badge at the top, but it took time and effort to make this addon, so if you can, please support me by becoming a Patreon, or donating via PayPal!

worldedit-be's People

Contributors

crackedmatter avatar fynn93 avatar lukaspah avatar minionguyjpro avatar pabloalexis611 avatar sisilicon avatar ultr4anubis avatar xupapercup avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

worldedit-be's Issues

[BUG] 1.19 Breaking Changes to manifest.json Module Type (probable fix)

Description
In the upcoming Bedrock 1.19, the javascript module type has been changed to just script, and a "language" attribute has been added.
The following format is now used:
"modules": [ { "description": "JavaScript module code", "language": "javascript", "type": "script", "uuid": "<your UUID>", "version": [0, 0, 1], "entry": "scripts/main.js" } ],

See the section titled "GameTest Framework (Experimental)" under "Technical Updates" near the end of this article:
https://feedback.minecraft.net/hc/en-us/articles/5992865608205-Minecraft-Beta-Preview-1-19-0-30-31

Steps to reproduce (and probable fix)
When attempting to install the current 0.5.0 release .mcaddon an error is given regarding module one having an incorrect type element (see screenshot).

Solution:
If the type is changed to "script" and the "language": "javascript", line is added to the scripts module entry within the BP manifest.json, the addon appears to import and function without any other errors (as of Preview 1.19.0.33).

Expected behavior
Addon should import without errors.

Minecraft version
Bedrock Preview 1.19.x.x

Screenshots
https://i.imgur.com/XG5romE.png

Device and operating system
Win 10 desktop, RTX, Bedrock Preview

[BUG] Using the ;help command, without page reference, leads to page NaN of 8.

Description

If you use the command ;help, it takes you to help page NaN of 8.

Similarly, although tangentially related, using a help page of 0 or less returns a TypeError in chat as read property '0' is undefined.

Steps to reproduce

  1. Open chat.
  2. Use command ;help
  3. See error.

Expected behavior
Expected that the help page 1 would be displayed, as that is the first of the help pages.
Alternatively, would have been reasonable to have been given information on either ;help <page number> and/or ;help [command: CommandName] and/or ;? [command: CommandName]

Screenshots
Chat message resulting from using ';help'

Content logs
N/A.

Minecraft version
1.17.41

Device and operating system
PC, Windows 10

Additional info

[BUG] No permissions

Description
i turn on the addon and i dont have permissions

Steps to reproduce

i type in /tag @p add builder
/give @p wand
and i select the object
and i dont have permission" you dont have permission to use this command"
pls help

Expected behavior

Minecraft version
1.17.41

Device and operating system
windows 10 | amd ryzen 1600af | gtx 1160s | 16gb ram 3200mhz

Unable to replace with coloured stained-glass

I selected glass block with the axe (pos 1 and 2)
When I try to replace the blocks with other blocks or even stained_glass, it works fine.
When trying to replace with a coloured stained-glass i.e.: light_blue_stained_glass OR red_stained_glass it doesn't, none of the coloured stained-glass appears to work.

There is no error it just says: 0 blocks have been changed.

Nothing works

I installed this mod today and i did everything right with enabling the mod BE and RE and activating the experimental options but after I load it in a world, and do /tag @s add builder , it doesn't do anything but I'm sure it adds me as a builder cuz if I do it again it says I'm already, I do ;wand and doesn't do anything, and even if I do /give and give myself the navigation and select wand, they don't do anything

Im running version 1.17.40 on windows 10

Addon replies sounds like variables

Describe the bug
Addon replies sounds like variables, I don't know if this is a bug or not but shouldn't they be proper messages instead?

To Reproduce
Steps to reproduce the behavior:

  1. Just do any command involving WE

Expected behavior
An proper message instead of generic variable like naming replies?

Screenshots
Screenshot_20211107-011248_Minecraft

Content Logs (if applicable):
Paste content logs from Minecraft here.

Minecraft Version:
1.17.41 (Android)

Additional context

[REQUEST] Make an Item for deselecting the selected area

So, I have a skygen and I use world edit to make new islands. I use the ;kit command to get all the tool items. But I have to always type a command to deselect. Please include an Item in the kit to deselect easily. thank you.

Add Replace command

Add a replace command to allow filling in complex areas easier. Similar to the Java world edit command.

[BUG] Does Not Work Properly for Users with Multiple Spaces in Name (with fix)

Description
If a player has more than one space in their name, then this will not work properly.

Steps to reproduce

  1. Have a username with more than one space in it (e.g., "but me iBryguy").
  2. Attempt to use tools from this program (i.e. brushes, settings, fill, copy, etc).
  3. See errors in program's behavior.

Expected behavior
Tool should work regardless of the user's username.

Screenshots
N/A

Content logs
N/A

Minecraft version
1.18

Device and operating system
PC

Additional info
I've encountered several previous issues, and with some free time decided to attempt to find their source. After fiddling with some of the code, I found the main problem: player.nameTag.replace(" ", "_").
This works sufficiently when a player has one or fewer spaces, but not if they have two or more. The fix is to replace all instances of player.nameTag.replace(" ", "_") with player.nameTag.replaceAll(" ", "_");.

For convenience, here are all instances I've found:

In src/server/modules/region.ts
Line 21

In src/server/modules/player_util.ts
Line 32
Line 98
Line 147
Line 161
Line 179

Says 'You don't have the permission to execute this command' when type ';help

Description
I was trying to use this addon but when i typed ';help' or ';pos1', it said
'You don't have the permission to execute this command'

Steps to reproduce

Expected behavior
I expected it will work well.
Screenshots
Uploading image.png…

Content logs
I don't see any
Minecraft version
1.18
Device and operating system
LG Gram
Windows 11
Additional info

[BUG] Setting item's tools drop roughly 15 seconds after using "Back" tool

Description
After using the Setting item's "Back" tool to return to normal inventory, the individual setting tools drop at the location the user used the "Back" tool.

Steps to reproduce

  1. Use the wooden pickaxe to add the individual tools to hotbar.
  2. Use the Settings tool.
  3. Use the "Back" tool.
  4. Wait ~15 seconds. (Possibly upwards of 20 seconds).

Expected behavior
No items drop.

Screenshots

Image of items floating after dropping from original player location when "Back" tool was used.

Content logs

N/A.

Minecraft version
1.17.41

Device and operating system
PC, Windows 10.

Additional info

[REQUEST] Line command

A new command that allows users to make lines.

it takes the both the pos1 and pos2 co-ords and makes a line.

Ideally it can create diagonal lines aswell

Block Placement

I can't place colored blocks, idk if it happens for glass, wool, etc but for concrete, I can only place "concrete" which is white.

History was still being recorded

Description

Steps to reproduce

Expected behavior

Screenshots

Content logs

Minecraft version 1.18.2

Device and operating system

Additional info

[REQUEST] Implement ;fill command

Is your feature request related to a problem? Please describe.
The //fill command in java WorldEdit makes blocks that fill an area across and downward. Useful for filling water or lava bodies, among other things.
https://youtube.com/shorts/v-eG-ZusOvs?feature=share

Describe the solution you'd like
The fill command must be implemented. Currently there's no plan on how, but I'll update this as go along.

Describe alternatives you've considered
Using the ;set command can set blocks in a selection, but it doesn't have the same flood fill approach that //fill does.

[REQUEST/BUG] - ;flip, ;set, ;replace

Hi!
The flip command is missing the up / down function. At least I couldn't find a way to flip up a selected area. This makes it impossible to create a floating island, for example.
One more thing. Some new types of stairs cannot be created/replaced in all directions. ;set deepslate_brick_stairs:1 = deepslate_brick_stairs:2 = :3 = :4 etc.

[REQUEST] An option to clear the mask

Is your feature request related to a problem? Please describe.

I set a mask to fill part of an area, then I tried to clear the mask to fill another area, but I couldn't find a way to do it.

Describe the solution you'd like

A way to get rid of the current mask, not just the global mask.

Describe alternatives you've considered

Being able to use a command like ;mask none or ;mask clear to get rid of the mask.

[REQUEST] (optional argument for the Stack command)

When using the stack command, I've found that the selection only stacks downwards.

This can be quite problematic and would be better if an optional argument was available to determine whether to stack up or down.

[BUG] Fill operation does not recognize the block to for filling properly

Description

  • Fill operation does not recognize the block for filling properly, and will consider that air should be filled (but the attempt to fill air will then fail)
  • ;set does not work

Steps to reproduce

  1. Launch a world w/ WorldEdit-BE enabled properly
  2. Attempt to do the regular fill procedure via the kit for the first time
  3. Do different selection, choose another block, and use the fill tool

Expected behavior
The action should be done properly.

Screenshots

Content logs

16:52:24[Scripting][warning]-[LOG] [08:52:24 AM] * has been given worldedit permissions.

16:52:34[Scripting][warning]-[LOG] [08:52:34 AM] Processing command ';pos2 221 66 -34' for ''

16:52:34[Scripting][warning]-[LOG] [08:52:34 AM] Time taken to execute: 0ms (0 secs)

16:52:39[Scripting][warning]-[LOG] [08:52:39 AM] Processing command ';pos2 221 76 -32' for ''

16:52:39[Scripting][warning]-[LOG] [08:52:39 AM] Time taken to execute: 0ms (0 secs)

16:52:41[Scripting][warning]-[LOG] [08:52:41 AM] Processing command ';pos1 221 74 -33' for '*'

16:52:41[Scripting][warning]-[LOG] [08:52:41 AM] Time taken to execute: 0ms (0 secs)

(user selected desired block for filling: netherrack, which is not air)

16:52:47[Scripting][warning]-[LOG] [08:52:47 AM] Processing command ';replace air air' for '*'

16:52:47[Scripting][warning]-[WARN] [08:52:47 AM] A ticking area could not be created for job # 0

16:52:47[Scripting][warning]-[LOG] [08:52:47 AM] Time taken to execute: 4ms (0.004 secs)

16:52:50[Scripting][warning]-[LOG] [08:52:50 AM] Processing command ';replace air air' for '*'

16:52:50[Scripting][warning]-[WARN] [08:52:50 AM] A ticking area could not be created for job # 1

16:52:50[Scripting][warning]-[LOG] [08:52:50 AM] Time taken to execute: 2ms (0.002 secs)

16:52:51[Scripting][warning]-[LOG] [08:52:51 AM] Processing command ';rep

Minecraft version

1.19.0

Device and operating system

Windows 11, Build 25131

Additional info

[BUG] Softlock with brush UI menu

Description
When teaching my friend how to use it we were both setting up a brush at the same time and when we got to ‘confirm’ when we clicked it, it didn’t proceed to let us out of the settings. The version this is was 0.5.0.

Steps to reproduce
Steps to reproduce the behavior:

  1. Have both players at confirm stage of brush editing
  2. Use the confirm button
  3. See error

Expected behavior
No softlock

Minecraft version
1.18.12

[REQUEST] (Deselect air block)

When copying and pasting a region, all the air blocks get copied and pasted as well. When trying to move one thing to another place, sometimes the air blocks end up destroying the surrounding builds.

It would be awesome if there was a way to filter out the air blocks from selections as they can be annoying.

The "how to play" help page dosent.

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Content Logs (if applicable):
Paste content logs from Minecraft here.

Minecraft Version:
[e.g. 1.17.41]

Additional context
Add any other context about the problem here.

Increase maximum region size

Could you give me instructions on how to increase the maximum region size? I have a really good PC and I am trying to work on a big project.

select large areas cause the game to crush or lag

𝗘𝘃𝗶𝗹𝗸𝗶𝗹𝗹𝗲𝗿𝟯𝟮𝟭: "i think you should make selections clear itself once you 700blocks away from the selected areas bec i keep forgetting to do ;sel then for example i teleport 1000 blocks away then i select a new area but then it crashes my entire pc then i gotta restart it"
or you can just add a limit to the selection and a message telling the user that the selected area is too large.

Issue

When i type and enter ;wand nothing happens
I tagged myself as builder and i was holding an wooden axe in my hand

[BUG] TypeError on attempted brush use

Description
After setting up a brush tool, any attempts to use the initialized tool result in the following error:
TypeError: Unsupported or out of bounds value sent to function argument [0]

Steps to reproduce

  1. Initialize a brush, spherical or cylindrical. (For simplicity, we'll say ';brush 1 sphere stone 4'. Any brush, radius, and material still causes the issue from my experience).
  2. Equip an initialized brush. (Such as a wooden shovel brush that we just initialized).
  3. Attempt to use the brush.
  4. See error.

Expected behavior

Expected the brush would create a sphere (or cylinder, if that was selected) of the chosen material.

Screenshots

Picture of the error.

Content logs

N/A. (Unfortunately, I was unable to find the location of Minecraft's content logs.)

Minecraft version

1.17.41
Addendum: I've updated my game to 1.18, and the issue remains the same.

Device and operating system

PC, Windows 10.

Additional info

;help [command:Command] doesn't work!

I type ;help set or ;help cyl it doesn't show the info it needs to it just says "Showing page NaN of 6". There are also no examples that I can see. Also when I pick a spot and do ;set wool["color":"green"] it shows an error and if I put a space between the l in wool and [ it only makes the selected area white wool.

Hope this message doesn't come off too Karen sounding.

please add ;line to make lines. and ;fill

Is your feature request related to a problem? Please describe.
no not a problem. just wanting //line and //fill but with the addon

Describe the solution you'd like
idk im not a programmer. i just want ;line and ;fill LOL

Describe alternatives you've considered
there arent any. this is the best world edit addon ive ever seen

Additional context
idk

Update to latest version

Does not work on latest version. It won’t install on the latest version of minecraft and gives me a version error, could you update it soon?

[BUG] Settting item's individual settings tools do not work if player has moved

Description

After using the Settings tool, the tools it gives do not function if the player has moved.

Steps to reproduce

  1. Add a wooden pickaxe to inventory in order to receive WorldEdti tools (including the Settings tool).
  2. Use the settings tool.
  3. Move.
  4. Try to use any of the given tools.
  5. See error.

Expected behavior

The expected behavior is that the tools will still function even if the player has moved.

Screenshots

Not applicable.

Content logs

N/A. (Unable to locate them, I apologize).

Minecraft version
1.17.41

Device and operating system
PC, Windows 10

Additional info

[REQUEST] Exporting structures to other worlds

Is your feature request related to a problem? Please describe.
Sometimes, you'd want to move a build from one to another, but because of Minecraft Bedrock's limitations, this isn't easily doable.

Describe the solution you'd like
What can be done, is that the user will have a structure block from which they will export a region from. Then from webpage, the file can be packed into a behaviour pack. This behaviour pack can then be imported into Minecraft, and be used in any world the user wishes to use the structure in.

Describe alternatives you've considered
Besides making behaviour packs yourself, there isn't really much a user can do to transfer structures.

Additional context
Due to relying on structure block export feature, this can only be used on Windows and Android versions of Minecraft.

[BUG] Game shows an error under zh-cn language

Description

At Launch, Minecraft shows the following message:
[Localization][warning]-Line: 200 - Invalid lang file format. New line character was found while parsing key: '§ehttps://worldedit-be-docs.readthedocs.io§r'.

Steps to reproduce

  1. Set game language to Chinese (Simplified)
  2. Restart Minecraft

Expected behavior

No error should appear

Screenshots

image

Minecraft version

1.18.12

Device and operating system

Windows 11 Build 22543

[BUG] Undo sometimes does not work

Description
When using the addon on a world, it will randomly stop working and a message pops up every time when tying to run a command.

The message "History is still being recorded" pops up and never fixes it self. The only way to fix it is to restart the world

Cannot place a block at pos1 and pos2 after running several commands. And the addon breaks also.

I used ;set air command to clear area, everything worked fine at the first few times but after 2-3 times of executing the command the system gets weird. Commands don't work anymore and selection area doesn't glow with particle. And can't place anything at the exact points that i set as pos1 and 2. Gravel and sand can be placed to the point via gravity and entities like torches also can be but none of full blocks. I couldn't find the way to make the corrupted worlds back to normal without removing the addon, they remains corrupted despite of reloading or doing anything.

It gives some error messages when i try to run a command .. if I remember right they're like below

<Script Engine> Script Engine whispers to you: Failed to get property 'nameTag' or <Script Engine> Script Engine whispers to you: Failed to find request (?) I am not sure about this one. Used version is 1.17.40 but same happened in 1.17.34 And it happened multiple times in multiple worlds, without any other addon, or with other addons

Toggleable Debug messages

Allow the Debug messages when the world is loaded up or when a player joins to be toggleable

This would be extremely helpful to those who are using the addon on a server otherwise it clogs up chat with debug messages.

[BUG] Dependency detection issue [1.19.x]

Description

When installing WorldEdit: Bedrock Edition on Windows 10/11, the behavior pack is unable to recognize the presence of its main dependency (it's bundled resource pack).

Steps to reproduce

[This bug does not print to the Log from my understanding. The error list given by the game's Storage section is already bad enough.]

  1. Install the .mcpack which contains the behavior and resource packs on a Win10 or Win11 system with Bedrock Edition installed.
  2. Open the Settings menu, and navigate to the Storage section.
  3. Show the behavior pack list.

You should see a yellow exclamation mark on the list header button as well as on the WorldEdit behavior pack entry. Additionally, to confirm further, you can select the yellow exclamation mark button to find two duplicate errors pointing to the resource pack.

Expected behavior

I expected the pack to, well, function properly. But due to this issue, the pack will not load in a world at all (shows the red "One or more behavior or resource packs failed to load." message in chat upon world load).

Screenshots

An igmur album post-based visualization can be found here.

Content log(s)

N/A

Game version

1.19.0

Device and operating system

HP Pavilion Desktop 590-p0xxx, Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz, 2808 Mhz, 6 Core(s), 6 Logical Processor(s); Windows 11 Home.

Additional info

The pack was working perfectly fine one singular game update ago.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.