[Modpack] WorldEdit [worldedit]

Post Reply
sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

[Modpack] WorldEdit [worldedit]

by sfan5 » Post

WorldEdit is an in-game world editor. Use it to repair griefing, or just create awesome buildings in seconds.

Image
License: GNU AGPL v3
Basically, this means everyone is free to use, modify, and distribute the mod, as long as modifications are also licensed the same way.
Most importantly, the Affero variant of the GPL requires you to publish your modifications in source form, even if the mod is run only on the server, and not distributed.

Dependencies: none
GitHub: https://github.com/Uberi/Minetest-WorldEdit


Download

WorldEdit aims to be Rolling Release which means you can rely on the latest state of development working correctly. This is the preferred way of installation.
You can download a git snapshot here: ZIP file

If you for some reason prefer to have a "stable" version, please check below:
WorldEdit 1.3: ZIP file (release notes)
You can find older releases on Github.
Historic code snapshots (before 0.5) can be viewed here: https://github.com/Uberi/Minetest-World ... s/historic Setup instrutions

Enable the whole modpack from either the Main Menu or by editing world.mt.

Just grant the “worldedit” privilege to yourself or another player.
/grant <name> worldedit

Usage instructions

List of commands

If you're just beginning, take a look at the official tutorial.
The old tutorial can be found below, it's shorter and only explains the base concepts. Selecting a region
Type //p set and punch the two edges like in the image below.
Image
OR
Go to the first position and type //pos1
Go to the second position and type //pos2
OR
Type //fixedpos set1 <x> <y> <z> with the coordinates for P1.
Type //fixedpos set2 <x> <y> <z> with the coordinates for P2.

Filling a region

Type //set blockname and wait for “x Blocks set”

Replacing blocks

Type //replace blockname1 blockname2 and wait for "x Blocks replaced"

Stacking the selection

Type //stack direction amount and wait for "x Blocks stacked"
Valid Directions are: x y z ?
If the ? direction is given the current direction of the player is used.
You need to use a negative amount if you want to stack backwards

Moving the selection

Type //move direction amount and wait for "x Blocks moved"
Valid Directions are: x y z ?
If the ? direction is given the current direction of the player is used.
You need to use a negative amount if you want to move backwards

Copying the selection

Type //copy direction amount and wait for "x Blocks copied"
Valid Directions are: x y z ?
If the ? direction is given the current direction of the player is used.
You must use a negative amount if you want to copy backwards

Saving the selected nodes into a schematic file

Type //save filename and wait for "x Blocks saved"
The File is located in the world folder in the directory schems
Supports loading old and new WorldEdit Format!

Importing nodes from a schematic file

Type //load filename and wait for "x Blocks loaded"
The nodes will be loaded relative to P1
The File is read from the world folder in the directory schems
Last edited by sfan5 on Sat Jan 30, 2021 23:57, edited 10 times in total.
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
dannydark
Member
Posts: 428
Joined: Fri Aug 12, 2011 21:28
Location: Manchester, UK

by dannydark » Post

Whoa nice, although the first screenshot is just madness haha.

I will give this a try later ^_^

sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

Fun Fact about 1st Screenshot:
It took 2 minutes to set the blocks
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
Calinou
Member
Posts: 3169
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou
Location: Troyes, France
Contact:

by Calinou » Post

That IS awesome, great job... ;)
You should probably change its name to avoid confusion with Minecraft. Something like MESEdit? :P

MarkTraceur
Member
Posts: 103
Joined: Sat Dec 03, 2011 05:41
Location: San Francisco, CA
Contact:

by MarkTraceur » Post

When I followed your instructions, I got "permission denied" (or similar). weperms.txt created, logged in with the right name, weperms looks like

Code: Select all

{marktraceur}
Bug?
Last edited by MarkTraceur on Mon Dec 12, 2011 00:01, edited 1 time in total.
Mods: https://gitorious.org/marktraceur-minetest-mods
IRC: marktraceur on freenode

User avatar
Calinou
Member
Posts: 3169
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou
Location: Troyes, France
Contact:

by Calinou » Post

Would it be possible to have a //replace command?
Like: //replace dirt stone (replaces all dirt in selection with stone)

TBC_x
Member
Posts: 17
Joined: Wed Nov 02, 2011 13:18

by TBC_x » Post

Calinou wrote:That IS awesome, great job... ;)
You should probably change its name to avoid confusion with Minecraft. Something like MESEdit? :P
MessEdit :)

sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

MarkTraceur wrote:When I followed your instructions, I got "permission denied" (or similar). weperms.txt created, logged in with the right name, weperms looks like

Code: Select all

{marktraceur}
Bug?
Try copying weperms.txt into your current directory.
I'll make this better in the next version
Last edited by sfan5 on Mon Dec 12, 2011 06:19, edited 1 time in total.
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

Calinou wrote:Would it be possible to have a //replace command?
Like: //replace dirt stone (replaces all dirt in selection with stone)
That is possible.
I'll include it in the next version
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

MarkTraceur
Member
Posts: 103
Joined: Sat Dec 03, 2011 05:41
Location: San Francisco, CA
Contact:

by MarkTraceur » Post

Awesome. Celeron added something that should make it easier:

Code: Select all

    bd21f00        Add minetest.get_modpath(modname)
Mods: https://gitorious.org/marktraceur-minetest-mods
IRC: marktraceur on freenode

sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

MarkTraceur wrote:Awesome. Celeron added something that should make it easier:

Code: Select all

    bd21f00        Add minetest.get_modpath(modname)
We need a new dev release
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

kahrl
Member
Posts: 236
Joined: Fri Sep 02, 2011 07:51
Location: Rös̓̇chenhof

by kahrl » Post

Hmm. Shouldn't weperms.txt be per-world? I'm not sure if the mod directory is guaranteed to be writeable.

User avatar
celeron55
Administrator
Posts: 536
Joined: Tue Apr 19, 2011 10:10
GitHub: celeron55
IRC: celeron55

by celeron55 » Post

kahrl wrote:Hmm. Shouldn't weperms.txt be per-world? I'm not sure if the mod directory is guaranteed to be writeable.
There should probably be minetest.get_worldpath() for this kind of usage?

kahrl
Member
Posts: 236
Joined: Fri Sep 02, 2011 07:51
Location: Rös̓̇chenhof

by kahrl » Post

Hmm.

Suggestion 1:
  • There's a new world subdirectory, say world/moddata.
  • Define a function minetest.read_file(filename) which reads a file below world/moddata and returns its contents as a string (or an array of lines?). Similarly, define minetest.write_file(filename, contents).
  • Disable io.open and all other functions from from the io library. This should make it a bit safer to install random mods.
    • Also make sure minetest.{read,write}_file don't accept filenames that contain a directory separator or start with a dot.
    • And there's os.execute,os.remove, ...
or

Suggestion 2:
  • Like suggestion 1, but instead of minetest.read_file and minetest.write_file, define minetest.open_file(filename, mode) which opens a file under world/moddata and returns a file handle. This might mean that some functions from the io module would need to stay enabled.
or

Suggestion 3:
  • Restrict all filesystem access from lua and give mods some kind of access to the sqlite database.
Last edited by kahrl on Mon Dec 12, 2011 19:16, edited 1 time in total.

User avatar
Calinou
Member
Posts: 3169
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou
Location: Troyes, France
Contact:

by Calinou » Post

Suggestion 4: Suggestion 1 or 2, but with a dialog if the mod wants to write/delete something.
Like, a menu showing up: "Do you want to allow modname to write modstuff.extension? Reason: reason".

sfan5
Moderator
Posts: 4115
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

I like Suggestion 4, but there should be a Button "Yes for all (only modname)"
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

Gatharoth
Member
Posts: 196
Joined: Thu Dec 22, 2011 02:54

by Gatharoth » Post

Is there going to be a remove feature? (or if there already is by like //set [some block that is equal to nothing])

User avatar
dannydark
Member
Posts: 428
Joined: Fri Aug 12, 2011 21:28
Location: Manchester, UK

by dannydark » Post

@Gatharoth you could do "//set air" ^_^

Gatharoth
Member
Posts: 196
Joined: Thu Dec 22, 2011 02:54

by Gatharoth » Post

dannydark wrote:@Gatharoth you could do "//set air" ^_^
Last time I tried "//set air" I was getting an error that it couldn't replace the block(s). And now today, it replaces them. >.< Oh well. Good mod anyway :D

User avatar
IPushButton2653
Member
Posts: 666
Joined: Wed Nov 16, 2011 22:47
Location: Mississippi
Contact:

by IPushButton2653 » Post

I got the "You haven't got the permission for that" error. How do I fix it???

Gatharoth
Member
Posts: 196
Joined: Thu Dec 22, 2011 02:54

by Gatharoth » Post

IPushButton2653 wrote:I got the "You haven't got the permission for that" error. How do I fix it???
read below
sfan5 wrote:Create a weperms.txt in the bin folder.
Now add {username} to the file, for each user who should be able to use WorldEdit.
Last edited by Gatharoth on Sun Jan 08, 2012 06:11, edited 1 time in total.

User avatar
IPushButton2653
Member
Posts: 666
Joined: Wed Nov 16, 2011 22:47
Location: Mississippi
Contact:

by IPushButton2653 » Post

I did that, I made a weperms.txt file and added my username in the brackets as so: {John_Lennon}. It didn't work so I just put the name "test" in there, and it still didn't work. I am on windows, if that helps anything.

Gatharoth
Member
Posts: 196
Joined: Thu Dec 22, 2011 02:54

by Gatharoth » Post

its case sensitive, so the login name has to equal the name in the weperms.txt

so unless your login name for the server (including local) is "John_Lennon". Then idk. (if you're not using local, then you should also put it in the server's bin folder)

User avatar
IPushButton2653
Member
Posts: 666
Joined: Wed Nov 16, 2011 22:47
Location: Mississippi
Contact:

by IPushButton2653 » Post

I still can't get it to work for me. Please help!!!

User avatar
jordan4ibanez
Member
Posts: 1925
Joined: Tue Sep 27, 2011 18:44
GitHub: jordan4ibanez
IRC: jordan4ibanez
In-game: jordan4ibanez

by jordan4ibanez » Post

this works..but its weird lol
Cottleston Cottleston Cottleston Pie, A fly can't bird, but a bird can fly. Ask me a riddle and I reply Cottleston Cottleston Cottleston Pie.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 4 guests