thekye / eco-worldedit Goto Github PK
View Code? Open in Web Editor NEWThe World Edit Plugin For the Video Game ECO
The World Edit Plugin For the Video Game ECO
It can happen where you /undo one too many times and are stuck with the consequences of your mistake. Would be very handy to see a /redo as well to address that.
Repository and PR image
size 1280×640px
just use CommandsUtil.ClosestMatchingEntity to find the best item from a string. Then narrow it to take only blocks. This will make your /set block comand act the same way /give does
when pasting, the pasted object should be pasted in the direction the player is facing,
When pasting, the lowest point of the pasted object should be on the level or 1 level below where the player is standing at the time of pasting
Pasting doesn't delete plants trees
if player did error in import name Plugin must show files list what can be import
files list must show information from files
study and create a working version to test the potential of the technology application Parallel.ForEach
https://docs.microsoft.com/en-us/dotnet/api/system.threading.tasks.parallel.foreach?view=net-5.0
explore the issue of detecting and interacting with trees
(trees have script in model for interacting)
/drain = /replace water, empty
Not all commands have description in game, should be fixed so /we
or /worldedit
commands prints readable list
README needs update for list of commands and arguments, probably it need better formatting.
Would be good to localize WorldEdit.
In zip Release 2.0.1 have not Wand Tool icon, need add again
Since the game has a type of civic objects - contract, to avoid confusion in understanding the players, command needs to be renamed
add new commands:
these commands will greatly simplify the life of players using command /walls search claim borders and road builders
Objective: to study compression methods and choose the most suitable one for use on a game servers (minimum impact on the CPU)
add one command for execute all WE commands and write report in Log file with info about server, speed work each operation and errors.
Expanding the functionality of chat commands /setpos1 and /setpos2
description: the player can have a detailed construction scheme and he can set any coordinate on his own without tools or moving around the map.
cut = copy + del
command /undo must have parameter "count" for back few operations in turn
Would it be possible to make the selection when using the wand highlight? Possibly similar to how land claims do to show the selection visually?
Set block type Doesn't delete trees
We should prepare for it soon
Probably be nice to improve /paste or use similar command to paste creation in front of player not matter how far it was be copied.
Possible solution: use min position (corner) of selection as an anchor (0, 0, 0) and all blocks relatively to it, also store relative position of that anchor to the player.
We need to prepare for this update
Impenetrable Stone Block can be removed with the wand causing weird things. The set command needs a safety in it that if this type of block is selected it doesn't let you change it.
/up command used in Eco and have translated so it can be have potential problems
Does it make sense to move the "Schematics" folder from ../Schematics to ../Configs/Mods/WorldEdit/Schematics instead of the base directory like other mods so that hosting providers don't block access?
when creating a chain of rooms, an adjustment is required to align the walls
Check the compatibility of the mod releases with the versions of the game and make a table
add command /flip [direction]
horizontal and vertical flip
Probably would be handy?
How do you use the /set command to make asphalt roads? when using the name of the block it spawn the inventory version of it
/fixwater = fix water block to full
Reported by Hudson#0476 in Discord
[14:35:16.215] [42] [Error] [Eco] Newtonsoft.Json.JsonSerializationException: Error converting value "Eco.EM.Windows.PinkGlassCubeBlock, em-windows, Version=2.3.0.0, Culture=neutral, PublicKeyToken=null" to type 'System.Type'. Path 'Blocks[0].BlockType', line 1, position 240.
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndCreatorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectUsingCreatorWithParameters(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ObjectConstructor`1 creator, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList(IList list, JsonReader reader, JsonArrayContract contract, JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndCreatorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectUsingCreatorWithParameters(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ObjectConstructor`1 creator, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonSerializer.Deserialize[T](JsonReader reader)
at Eco.Mods.WorldEdit.Serializer.WorldEditSerializer.Deserialize[T](Stream stream)
at Eco.Mods.WorldEdit.Serializer.WorldEditSerializer.Deserialize(Stream stream)
at Eco.Mods.WorldEdit.Commands.ImportCommand.Execute(WorldRange selection)
at Eco.Mods.WorldEdit.Commands.WorldEditCommand.Invoke(WorldRange selection)
at Eco.Mods.WorldEdit.Commands.WorldEditCommand.Invoke()
at Eco.Mods.WorldEdit.WorldEditCommands.Import(User user, String fileName)
System.ArgumentException: Could not cast or convert from System.String to System.Type.
at Newtonsoft.Json.Utilities.ConvertUtils.EnsureTypeAssignable(Object value, Type initialType, Type targetType)
at Newtonsoft.Json.Utilities.ConvertUtils.ConvertOrCast(Object initialValue, CultureInfo culture, Type targetType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureType(JsonReader reader, Object value, CultureInfo culture, JsonContract contract, Type targetType)
after insertion, the doors are rotated correctly, but the animation always works in one direction
Add a new Command: Enable WE Debugging
This should record every action to a log file (should note the file could get really big) That is performed using world edit for debugging purposes
The schematics ouput are un reliable, they don't include world objects and could be better improved,
use the em framework file manager to better output schematics and allow for world objects,
optional:
allow storage based objects to keep their storage items?
Post comments on issues for this Command
Eco Version: 9.3.6
Plugin Version: 2.0.1
STR:
For the purpose of promoting a single universal Blueprints format, it is required to rename the folder to Blueprints
Make somewhere for schematics to be uploaded with screenshots and descriptions,
like an archive kinda thing where people can browse builds, download and upload
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.