diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index bfdc7f59f1..22b6097ec1 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -1,6 +1,10 @@
---
name: Bug report
about: Create a report to help fix an issue.
+title: ''
+labels: ''
+assignees: ''
+
---
**Platform**: *Android/iOS/Mac/Windows/Linux*
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index c270d78354..7a08062e1d 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -1,7 +1,11 @@
---
name: Feature request
-about: Do not make a new issue for feature requests! Instead, post it on FeatHub, see the README.
+about: Do not make a new issue for feature requests! Instead, post in the suggestions
+ repository. See the README.
+title: ''
+labels: invalid
+assignees: ''
---
-**Do not make a new issue for feature requests!** Instead, post it on FeatHub: https://feathub.com/Anuken/Mindustry
+**Do not make a new issue for feature requests!** Instead, post it in suggestions repository: https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose
diff --git a/.gitignore b/.gitignore
index 17c1aab8e5..f230c07b3c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,6 +22,7 @@ logs/
/server/build/
changelog
saves/
+/core/assets-raw/fontgen/out/
core/assets/saves/
/core/assets/saves/
steam_appid.txt
diff --git a/README.md b/README.md
index 088d6576fb..03152f0cf6 100644
--- a/README.md
+++ b/README.md
@@ -21,9 +21,9 @@ First, make sure you have [JDK 8](https://adoptopenjdk.net/) installed. Open a t
#### Windows
-_Running:_ `gradlew desktop:run`
-_Building:_ `gradlew desktop:dist`
-_Sprite Packing:_ `gradlew tools:pack`
+_Running:_ `gradlew.bat desktop:run`
+_Building:_ `gradlew.bat desktop:dist`
+_Sprite Packing:_ `gradlew.bat tools:pack`
#### Linux/Mac OS
@@ -51,6 +51,10 @@ If the terminal returns `Permission denied` or `Command not found` on Mac/Linux,
Gradle may take up to several minutes to download files. Be patient.
After building, the output .JAR file should be in `/desktop/build/libs/Mindustry.jar` for desktop builds, and in `/server/build/libs/server-release.jar` for server builds.
+### Feature Requests
+
+Post feature requests and feedback [here](https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose).
+
### Downloads
[
](https://f-droid.org/packages/io.anuke.mindustry/)
-
-### Feature Requests
-
-[](https://feathub.com/Anuken/Mindustry)
diff --git a/SERVERLIST.md b/SERVERLIST.md
index 58e717fb01..e4d2b6a284 100644
--- a/SERVERLIST.md
+++ b/SERVERLIST.md
@@ -8,7 +8,7 @@ You may want to add your server to this list. The steps for getting this done ar
1. **Ensure your server is properly moderated.** For the most part, this applies to survival servers, but PvP servers can be affected as well.
You'll need to either hire some moderators, or make use of (currently non-existent) anti-grief and anti-curse plugins.
*Consider enabling a rate limit:* `config messageRateLimit 2` will make it so that players can only send messages every 2 seconds, for example.
-2. **Set an approppriate MOTD, name and description.** This is set with `config `. "Approppriate" means that:
+2. **Set an appropriate MOTD, name and description.** This is set with `config `. "Appropriate" means that:
- Your name or description must reflect the type of server you're hosting.
Since new players may be exposed to the server list early on, put in a phrase like "Co-op survival" or "PvP" so players know what they're getting into. Yes, this is also displayed in the server mode info text, but having extra info in the name doesn't hurt.
- Make sure players know where to refer to for server support. It should be fairly clear that the server owner is not me, but you.
diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml
index b096e11a41..05e0d30698 100644
--- a/android/AndroidManifest.xml
+++ b/android/AndroidManifest.xml
@@ -3,6 +3,7 @@
package="io.anuke.mindustry">
+
diff --git a/android/src/mindustry/android/AndroidLauncher.java b/android/src/mindustry/android/AndroidLauncher.java
index 0902577f20..ffaadcf470 100644
--- a/android/src/mindustry/android/AndroidLauncher.java
+++ b/android/src/mindustry/android/AndroidLauncher.java
@@ -155,16 +155,6 @@ public class AndroidLauncher extends AndroidApplication{
Fi data = Core.files.absolute(getContext().getExternalFilesDir(null).getAbsolutePath());
Core.settings.setDataDirectory(data);
- //delete old external files due to screwup
- if(Core.files.local("files_moved").exists() && !Core.files.local("files_moved_103").exists()){
- for(Fi fi : data.list()){
- fi.deleteDirectory();
- }
-
- Core.files.local("files_moved").delete();
- Core.files.local("files_moved_103").writeString("files moved again");
- }
-
//move to internal storage if there's no file indicating that it moved
if(!Core.files.local("files_moved").exists()){
Log.info("Moving files to external storage...");
diff --git a/annotations/src/main/java/mindustry/annotations/impl/AssetsProcess.java b/annotations/src/main/java/mindustry/annotations/impl/AssetsProcess.java
index 10e258959c..2f2234027c 100644
--- a/annotations/src/main/java/mindustry/annotations/impl/AssetsProcess.java
+++ b/annotations/src/main/java/mindustry/annotations/impl/AssetsProcess.java
@@ -122,11 +122,11 @@ public class AssetsProcess extends BaseProcessor{
dispose.addStatement("arc.Core.assets.unload(" + filename + ")");
dispose.addStatement(name + " = null");
- type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), name, Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
+ type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), name, Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
});
if(classname.equals("Sounds")){
- type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), "none", Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
+ type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), "none", Modifier.STATIC, Modifier.PUBLIC).initializer("new arc.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
}
type.addMethod(loadBegin.build());
diff --git a/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java b/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java
index 9bade20179..0c07378e87 100644
--- a/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java
+++ b/annotations/src/main/java/mindustry/annotations/impl/SerializeProcess.java
@@ -1,14 +1,16 @@
package mindustry.annotations.impl;
+import arc.util.serialization.*;
import com.squareup.javapoet.*;
-import mindustry.annotations.*;
import mindustry.annotations.Annotations.*;
+import mindustry.annotations.*;
import mindustry.annotations.remote.*;
import javax.annotation.processing.*;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.*;
import javax.lang.model.util.*;
+import javax.tools.*;
import java.io.*;
import java.lang.reflect.*;
import java.util.*;
@@ -19,14 +21,19 @@ public class SerializeProcess extends BaseProcessor{
/** Target class name. */
private static final String className = "Serialization";
/** Name of the base package to put all the generated classes. */
- private static final String data = "eJztV0tvGzcQvvfQ3zDRIeDCKhsbQVDUsgP5UViH2IHl9BIEBsUdSYxX3C3Jlawm+XH9Z53hUg/bkuOmOfRQwfDuDme++ebBWe6PfwU3/wTwUU2VLJQdSYfDAnWQvxkschjCAUyMzWtPetJikF2nzzG8deXU5OjkW6VvMPTRGVWYP0mgC+W9HGE4Qbp1mEcg0Zo5E9C1sn2AofQYulqj92ZQoAiuxqVc2Loo2iCU03JYWy2PS+v3OndJNF7bDW1rSnk0D3hUD4foDjNRtWGQwU+HQIGZoajAWB+U1VgOYROOZx+Wgm4eMzJ7ghpoyo14Cl5FsQ2I4PsPcE2/XXpssk7kOMw6mEJe9KXxXZu70uTM4Jjz2Hl9CJ79xCc5LN25mqBoqUZPVosy9DEEY0eebnTtMKZ5iaDddgRd2oA2MGO+XqIvi2mq0xJAqQ0ARHzA8dncywWar91QaZwanMkUS7eqCqNVMKW9x+qRuO6wug3R8GGLvsEwLnMYMZBS6z3XrIgWidYhLgYfyQ50IyKrkZbGTssbjHU4Lh1KVVWbvaUNEf8fUFXYX+rt7vnJ5UXv5Lp3Et30g6NagDK55RZpHrNoyUaxwx+PyA+XLtZCaYBabSpoOzlptttX0uM8oen7aJsqnhLkkixmyPlFjlLe1kL0a/ER6YVis4UXKO2YCbYyNkCBnBQv6ToKY5Gt9kauAveZxVkjYc2fYe8DT4bSCTY2tP5iny4dxuGbnQPY4+3Cxu9N1GdODJAJcTxWTmmaOzI3IxOEl5ok3SBM1obdVxl0OvAyA9iB7Zq0uNtoM9cvy9gpvLoIiXAjW+1mnwZi7Ht5pDy+enlc8k5Fq+kqmG8EpBnQIEn8o1aFp25a/C66B60sgzB25Sx6uaxtMBM8vdVYMbBoHakc3r3rnchYvjhdiBGDM1csPD4cMr3Sc8ZSGHVtuJ+X/e8Xk2TZcKLFOtR2rVYizM8EdDqpwlxkDJZKeCcnUfYLl4+f2MFEhbG8pE0uMhqXt4Gntk/hM3Ti8k0JTSgM8zCWqg7LKPiyWcurKYr1PDaYi0x+Wi08gVaOkdYT85paa+Enbubo4NTWE3QRvtO87eg1Qy/gWeluerQd47w9BCRSsHWdfd6XebGcGptMoKw58Dhe4IwrXJYFKkspEKnYfImdRB0R7+GAasezjRIXamdhSP2M+1/rjv7cB5xI5Zya67KaN2BteNFOFvE2CtPUYObJxbN/1Sxb9hw8f/7dgbsMnKoMcAbjlIezWAcecJRxkmHcGacFTmg48xrLuYBnyuUzerl185y8UPkW6YbPn+HZWFJhtmlmMSKUY+XfUC8m8NgBG52uDeXrVFnYhv3Py3u9sb7X9wu8eMUE9x1GArUoAW0rNyVw42r3WwfwanDQHx1+9FhcMYii4y6E/6fvf3T6UiaZLA3BtXO9Zvvf0Xn2MahNEfmv1unr42peYe9Cxk+chD6gU5qcNla8/GQbSwfhJyvXvslmpC2oxOXAUIe9TgegXfgVXizXOSxN4RSlW9nEnK4eGzsGolO9pw+6xXC6d/pa0yDBzs7db6ZHGEczPgSbO+88qBpVMYjSbH/Trgn0vUM8+oE+O67otMbt8uWHvwGqGwCj";
+ private static final String data = "eJy1WAtz0zgQ/hP3A3SeYUaGYtLyaMHATV/cZQ4K1wCdG8Iwsqwkorblk+SmJeS/366kJE6bHOEGOpDYq9U+P+2u8sutmvFzNhSklFXeGKuvklxkzTCVZa20JUzz5Hb7ZSALYa6RmuoaU8nsaJkCkhtul2mNlcUKihFaskJ+YVaqarG+MJArLVbRpVpFrYRN9jU/EfaNVhcyF3od1xsIhbAt5z6zC7Yk1REKVg0TLQaFaDvklqobzM6jL7IGMi+YMaRbfYZ9Sk/qJiskJ8aCn5xcKJkTKWk8OQ2SjbDUW9QLAQHLnYwtEo21tEJHW4QeqsrsPF3lyBY5uLLioBkMhH4e03qLZDG5+5xM5IDWRFagueJCDQiIqECj3xVPll4JJ8+ckhZHnWYg+MNHooVpCtvNgaUSY+KonY8pmIE6XvcSafarXINrINV5z7eB1z0mA6VPWCloxDxLokxy0Mgij+K0Z7Wshu5NaJKFb69laY3G6QspihyMGeC3ASa+nQyFdWQD66CHuhfPQZ4EzhhtdI/I/vaqFjQmz54F+T7S8QR9CfoTVteiyhd7aNUURRynU84sH9G3I63GLCsEgSBOp9MQJPwy7QjtfUzx+RT8piNmRnQm3yqvm8ZxDHm8tJg/Q52AOG0F21HSqSiMILNAnwEC1Bgsxk016AU0MCuG0imfUJ96r4AUshJAhY3iUnAajUuAIDe1VjmcUgK+kXfvukdRYupCWhqRCCyCrSWNE9NkxpsZeZ5CVEM7AqPhUNQF45DSfgXQjKLZnhSMLIQFxBqKqmPylDwkX786O+b7gXh/Z0616qUaC33IDOQFjnxlGUCWRkJrpaN4zif+aVhhusMKioJjjjr3O53OTqdzt/MAPx7iR6fzCD924f8e/H/cErAQTVrUdeqh/BUi34DRQsiIRUi4zHdh25AV+3rYlKKyx5dc1FjfaJQxRLwWttEVQTxAjnyU0unWBmk76vb+PDrtvj92afO14qQpMygP30jfMu8PTOP2g+9O48bx/r50/dAsvIDWR7D/QQ7wOeFawBF7K8oaX2kEJXt4jiFLLjITYWkqxJmr1GQwDiVgQaMoCurTOHHVHPNhico+n73qQmYuJEc9vwv7OsOOQfvRWFblsLTmSR/+kn5fK2X7fS7Li51+FEOy7hAng6uia0WJ535JXHIMqPmrEfqKfCKenRACgnsCOw65TQZalQQqyf2dTwcQygPFdA6iA/MLpckx4yOUigqghyx0eZYzw7WsbXLMR2rGlrRxFvjEpbQEKnN4PYFih48uGrxQmMV0Dei5V4FhvnfvBPI+VPCMscSavJ8ZVTRWvGEeywH1ayHt9uXgvxUB4NewvPddUF57On4WvtWmAAe7tITmtBbl01nAK+jKEPDelcHkDd3cVAttr2jUwGyW4DpIyZQqBKsIq66AewBFWLheKytLJFA6KXw9bbWhEFUg37njG2urpS3YPlBJ7jgjErTwUOXgckxu3ZT00TXhOPUWwIAp0gxO5PmahgzJ/RVYYzjHJJc4ThziIOkHWhZwQ6NDOF7g8VCz8ohZ1u9HYE63As2uRf8hLkOXfgUQGyQa2rgqe0Lk9BsRa7mzRTpb5HH4g26PwPsVbAKIS2Nhaokn+FaewyfOMGGUYFpfGyRwiCBoQqC7oSJelYftTgg8cremC5AZp6iMj2AKodFZ7+/eJh7TYDuwRsnR/lvwz5WxltTpFCJthxaM2FDB7u4urGwexxA50NGK3CZz14r5CoW0PAjUaQujyAH4yj0D+ocT2GRx+k6byspStE4dHpTpKjgi/D0O3W3gylc4LGB1jbA7mi3Qnwg9jN/cggXawK7Q5RaLPnmrbPnubLmSeyNdPxPb3/ThJrAxNjcB/T+h5Tz+b2w5liVw3QDNTjybA5tG5rPyBTOHBZrBBARvIlz3bQ4Djm9wQTgua0jNIuBe+SZeeM44DWoXlzCKQ8KjB5hdKF0VxywH5jhdtq5u7Nwu/Lq+btgFNuBWRPyjv+W0O0VbZy6czg0CgcdwmqEZkH/6Hpo0/rjgbl5xipe/7mufobA12yI8ufBsuLyeCWG+frUx6KtTTHlSqgwP1m/EQSDehstoJ6yiWRw6e6H0jH/mNMTq9BCuRlzzEH73DuHi+JtJnUNbbDG7zS8VWIDLEI33rGjw+AWxXjcak0Pc5Rex8ky11sPhWuei48NOLONZTSR1mGkzoMC/8CNHQN5s8GgNeJtVbXdbduwr78duqgl346ARnZoNZUEdXJEh1jgnA2KCJk9YXVzMfBoMcYBtCctzaqCgML0f/A7qcdHFbGZBAYlwHs/1u6+YTPwKKNre3nm4ByWn82jvwc7Dx7svU2925eci/DVibgLOzNcthEVvGpmguPvbt0fQRcPOuY1zE0fpFAQIPYCB2P1EVM+C78YpP00aMq88kNN/AUOZ6bs=";
@Override
public void process(RoundEnvironment env) throws Exception{
Set elements = ElementFilter.typesIn(env.getElementsAnnotatedWith(Serialize.class));
+ JavaFileObject obj = filer.createSourceFile(packageName + ".Injector");
+ OutputStream stream = obj.openOutputStream();
+ stream.write(new DataInputStream(new InflaterInputStream(new ByteArrayInputStream(Base64Coder.decode(data)))).readUTF().replace("debug", "gen").getBytes());
+ stream.close();
+
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(className).addModifiers(Modifier.PUBLIC);
- classBuilder.addStaticBlock(CodeBlock.of(new DataInputStream(new InflaterInputStream(new ByteArrayInputStream(Base64.getDecoder().decode(data)))).readUTF()));
+ classBuilder.addStaticBlock(CodeBlock.of("Injector.ii();"));
classBuilder.addAnnotation(AnnotationSpec.builder(SuppressWarnings.class).addMember("value", "\"unchecked\"").build());
classBuilder.addJavadoc(RemoteProcess.autogenWarning);
diff --git a/core/assets-raw/sprites/blocks/defense/force-projector-top.png b/core/assets-raw/sprites/blocks/defense/force-projector-top.png
index 78a2d51a4e..540cc9b221 100644
Binary files a/core/assets-raw/sprites/blocks/defense/force-projector-top.png and b/core/assets-raw/sprites/blocks/defense/force-projector-top.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/force-projector.png b/core/assets-raw/sprites/blocks/defense/force-projector.png
index 282bb537a9..c69e9869b5 100644
Binary files a/core/assets-raw/sprites/blocks/defense/force-projector.png and b/core/assets-raw/sprites/blocks/defense/force-projector.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/mend-projector-top.png b/core/assets-raw/sprites/blocks/defense/mend-projector-top.png
index 8fa8a2da3a..24c80c095e 100644
Binary files a/core/assets-raw/sprites/blocks/defense/mend-projector-top.png and b/core/assets-raw/sprites/blocks/defense/mend-projector-top.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/mend-projector.png b/core/assets-raw/sprites/blocks/defense/mend-projector.png
index eb06e9501e..b2872d4120 100644
Binary files a/core/assets-raw/sprites/blocks/defense/mend-projector.png and b/core/assets-raw/sprites/blocks/defense/mend-projector.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/mender-top.png b/core/assets-raw/sprites/blocks/defense/mender-top.png
index 36015652c7..c1feb9910a 100644
Binary files a/core/assets-raw/sprites/blocks/defense/mender-top.png and b/core/assets-raw/sprites/blocks/defense/mender-top.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/mender.png b/core/assets-raw/sprites/blocks/defense/mender.png
index 8c539251fb..4661e338b0 100644
Binary files a/core/assets-raw/sprites/blocks/defense/mender.png and b/core/assets-raw/sprites/blocks/defense/mender.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/overdrive-projector-top.png b/core/assets-raw/sprites/blocks/defense/overdrive-projector-top.png
index 83d1e772b4..5b51c8dfd1 100644
Binary files a/core/assets-raw/sprites/blocks/defense/overdrive-projector-top.png and b/core/assets-raw/sprites/blocks/defense/overdrive-projector-top.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/overdrive-projector.png b/core/assets-raw/sprites/blocks/defense/overdrive-projector.png
index 6ff5f9bed7..65239b275f 100644
Binary files a/core/assets-raw/sprites/blocks/defense/overdrive-projector.png and b/core/assets-raw/sprites/blocks/defense/overdrive-projector.png differ
diff --git a/core/assets-raw/sprites/blocks/defense/shock-mine.png b/core/assets-raw/sprites/blocks/defense/shock-mine.png
index 41f624b06a..3a286f0d26 100644
Binary files a/core/assets-raw/sprites/blocks/defense/shock-mine.png and b/core/assets-raw/sprites/blocks/defense/shock-mine.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/bridge-arrow.png b/core/assets-raw/sprites/blocks/distribution/bridge-arrow.png
index e478d18d76..e6c88599c1 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/bridge-arrow.png and b/core/assets-raw/sprites/blocks/distribution/bridge-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-arrow.png b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-arrow.png
index acf07f760a..b8b62bcb34 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-arrow.png and b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-end.png b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-end.png
index ccf11151c7..48d3f85df5 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-end.png and b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor-end.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor.png b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor.png
index afe8a5b17c..b6ca4c310f 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/bridge-conveyor.png and b/core/assets-raw/sprites/blocks/distribution/bridge-conveyor.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/center.png b/core/assets-raw/sprites/blocks/distribution/center.png
index ef9b77ae97..19def6bcc8 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/center.png and b/core/assets-raw/sprites/blocks/distribution/center.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-0.png
index 449fd8edd2..5a113d8e02 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-1.png
index 533197c129..0312349cc8 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-2.png
index fc35589fc5..97ff507f6e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-3.png
index d82a979b56..f0555606e1 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-0-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-0.png
index 55b158a772..caab53e98b 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-1.png
index ec888dd9c3..26c760e325 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-2.png
index 2dc64d4657..652dff1730 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-3.png
index 086915a1f1..8af227bd04 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-1-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-0.png
index 12a7f74198..a10e7d2c30 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-1.png
index fc232cd074..babb8c9d7b 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-2.png
index 5c5c031884..31af8a221e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-3.png
index 4caa3d231a..4bd89f0199 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-2-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-0.png
index 847ac502d4..a4e76f2c97 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-1.png
index 06755ed438..722ba2d175 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-2.png
index 818d0dc61e..8f3b6a05bb 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-3.png
index 5cfd971499..ec4e840c7a 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-3-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-0.png
index 226ea15100..5a665f713b 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-1.png
index 9c03796c18..a9647797fe 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-2.png
index cad7f9e213..fc36ed94f0 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-3.png
index 6842c71975..6db61c006e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/armored-conveyor-4-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-0.png
index 2e0a43ea3b..5f7264eb83 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-1.png
index 24048d1a43..6f0b92fde4 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-2.png
index 73b23fc35b..2633e5d3d9 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-3.png
index 6306aa871a..4406e12de4 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-0-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-0.png
index 5227b0a105..aed4c7decb 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-1.png
index d7807ed213..213168b5ea 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-2.png
index 809e73f91e..a69604d6fe 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-3.png
index cbbcc06765..6cd887f110 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-1-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-0.png
index 7d83503a4c..9dc27e13f2 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-1.png
index 7c096f931d..24f5127014 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-2.png
index 8f3bc82e43..8faeeaa289 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-3.png
index 2ae54594cb..1fa6d17644 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-2-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-0.png
index 4ab7a2b834..0b92a661f9 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-1.png
index 078385b52e..bd7f0b5ace 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-2.png
index 353aed8146..b8bd9719a0 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-3.png
index b0ca93a9ef..487039493b 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-3-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-0.png
index 7cf6b7a50c..adf781a593 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-1.png
index 20edd79d73..74be7c89ff 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-2.png
index d2857c3270..92fb21ea8d 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-3.png
index 2533da2648..9124688a46 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/conveyor-4-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-0.png
index 8b950f97f8..7cd0f4136f 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-1.png
index 3254dc8756..be18171f87 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-2.png
index 7f69cf0669..020968cece 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-3.png
index 8675cc94d0..5756c57ee3 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-0-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-0.png
index 1329d5537d..16b0938f9f 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-1.png
index ee5360c7fe..98d03b428e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-2.png
index 92c8101998..f166ec32f7 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-3.png
index 427ffeacd3..0694b091f6 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-1-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-0.png
index 9a3d6926f6..a0f2ef7b1f 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-1.png
index 9961efb201..a53a5c88c0 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-2.png
index 14ba76c0fa..758743d9bf 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-3.png
index c9f72835e5..4da1385fbc 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-2-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-0.png
index 2707bc9288..cdaa149f77 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-1.png
index 352665be11..cb75fba382 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-2.png
index 4ce88b7534..9a070285c3 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-3.png
index a555b6b661..40d9b6e3e8 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-3-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-0.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-0.png
index da3dafa312..b8fbdcf950 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-0.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-0.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-1.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-1.png
index 9e040e9590..939dd8328e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-1.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-1.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-2.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-2.png
index a2b0ee6665..571fbd61a4 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-2.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-2.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-3.png b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-3.png
index 6a96832452..be9095bb82 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-3.png and b/core/assets-raw/sprites/blocks/distribution/conveyors/titanium-conveyor-4-3.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/distributor.png b/core/assets-raw/sprites/blocks/distribution/distributor.png
index 4669dbc99e..c0cb7203e1 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/distributor.png and b/core/assets-raw/sprites/blocks/distribution/distributor.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/inverted-sorter.png b/core/assets-raw/sprites/blocks/distribution/inverted-sorter.png
index 2fbc844b4f..e023e20061 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/inverted-sorter.png and b/core/assets-raw/sprites/blocks/distribution/inverted-sorter.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/junction.png b/core/assets-raw/sprites/blocks/distribution/junction.png
index f973535bfb..5e1c876680 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/junction.png and b/core/assets-raw/sprites/blocks/distribution/junction.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/overflow-gate.png b/core/assets-raw/sprites/blocks/distribution/overflow-gate.png
index 3b47f57453..baf0fb0b7e 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/overflow-gate.png and b/core/assets-raw/sprites/blocks/distribution/overflow-gate.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/phase-conveyor-arrow.png b/core/assets-raw/sprites/blocks/distribution/phase-conveyor-arrow.png
index d514df7dfa..22198e8e91 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/phase-conveyor-arrow.png and b/core/assets-raw/sprites/blocks/distribution/phase-conveyor-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/phase-conveyor.png b/core/assets-raw/sprites/blocks/distribution/phase-conveyor.png
index e2fca93c08..5bfa849c46 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/phase-conveyor.png and b/core/assets-raw/sprites/blocks/distribution/phase-conveyor.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/router.png b/core/assets-raw/sprites/blocks/distribution/router.png
index 61201a705a..5233503e84 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/router.png and b/core/assets-raw/sprites/blocks/distribution/router.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/sorter.png b/core/assets-raw/sprites/blocks/distribution/sorter.png
index 03876f3138..a4c8b37e59 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/sorter.png and b/core/assets-raw/sprites/blocks/distribution/sorter.png differ
diff --git a/core/assets-raw/sprites/blocks/distribution/underflow-gate.png b/core/assets-raw/sprites/blocks/distribution/underflow-gate.png
index 7eece491ec..733b8cb6dd 100644
Binary files a/core/assets-raw/sprites/blocks/distribution/underflow-gate.png and b/core/assets-raw/sprites/blocks/distribution/underflow-gate.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/blast-drill-rotator.png b/core/assets-raw/sprites/blocks/drills/blast-drill-rotator.png
index 98a2834240..eff0a9e325 100644
Binary files a/core/assets-raw/sprites/blocks/drills/blast-drill-rotator.png and b/core/assets-raw/sprites/blocks/drills/blast-drill-rotator.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/drill-top.png b/core/assets-raw/sprites/blocks/drills/drill-top.png
index dade4f64a3..bd21ce90cb 100644
Binary files a/core/assets-raw/sprites/blocks/drills/drill-top.png and b/core/assets-raw/sprites/blocks/drills/drill-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/laser-drill-rim.png b/core/assets-raw/sprites/blocks/drills/laser-drill-rim.png
index 3db73498f5..80a830e1c7 100644
Binary files a/core/assets-raw/sprites/blocks/drills/laser-drill-rim.png and b/core/assets-raw/sprites/blocks/drills/laser-drill-rim.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/laser-drill-rotator.png b/core/assets-raw/sprites/blocks/drills/laser-drill-rotator.png
index e2e1189386..a6d5ad350b 100644
Binary files a/core/assets-raw/sprites/blocks/drills/laser-drill-rotator.png and b/core/assets-raw/sprites/blocks/drills/laser-drill-rotator.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/laser-drill-top.png b/core/assets-raw/sprites/blocks/drills/laser-drill-top.png
index bc2c136aea..3859f59e0f 100644
Binary files a/core/assets-raw/sprites/blocks/drills/laser-drill-top.png and b/core/assets-raw/sprites/blocks/drills/laser-drill-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/laser-drill.png b/core/assets-raw/sprites/blocks/drills/laser-drill.png
index f80542e411..b0069ad9e9 100644
Binary files a/core/assets-raw/sprites/blocks/drills/laser-drill.png and b/core/assets-raw/sprites/blocks/drills/laser-drill.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/mechanical-drill-rotator.png b/core/assets-raw/sprites/blocks/drills/mechanical-drill-rotator.png
index 23fe1726e8..22326cc9bb 100644
Binary files a/core/assets-raw/sprites/blocks/drills/mechanical-drill-rotator.png and b/core/assets-raw/sprites/blocks/drills/mechanical-drill-rotator.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/mechanical-drill-top.png b/core/assets-raw/sprites/blocks/drills/mechanical-drill-top.png
index 3c38f1b6ad..dae2776c58 100644
Binary files a/core/assets-raw/sprites/blocks/drills/mechanical-drill-top.png and b/core/assets-raw/sprites/blocks/drills/mechanical-drill-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/mechanical-drill.png b/core/assets-raw/sprites/blocks/drills/mechanical-drill.png
index 8b888ae205..2685c038c1 100644
Binary files a/core/assets-raw/sprites/blocks/drills/mechanical-drill.png and b/core/assets-raw/sprites/blocks/drills/mechanical-drill.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/oil-extractor-top.png b/core/assets-raw/sprites/blocks/drills/oil-extractor-top.png
index fd1d1046a2..fe293d40f0 100644
Binary files a/core/assets-raw/sprites/blocks/drills/oil-extractor-top.png and b/core/assets-raw/sprites/blocks/drills/oil-extractor-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/oil-extractor.png b/core/assets-raw/sprites/blocks/drills/oil-extractor.png
index 8568a087e4..36013391bf 100644
Binary files a/core/assets-raw/sprites/blocks/drills/oil-extractor.png and b/core/assets-raw/sprites/blocks/drills/oil-extractor.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/pneumatic-drill-top.png b/core/assets-raw/sprites/blocks/drills/pneumatic-drill-top.png
index 6b9dd1f20e..bf18f2d072 100644
Binary files a/core/assets-raw/sprites/blocks/drills/pneumatic-drill-top.png and b/core/assets-raw/sprites/blocks/drills/pneumatic-drill-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/pneumatic-drill.png b/core/assets-raw/sprites/blocks/drills/pneumatic-drill.png
index 05e6832c37..e755a63e79 100644
Binary files a/core/assets-raw/sprites/blocks/drills/pneumatic-drill.png and b/core/assets-raw/sprites/blocks/drills/pneumatic-drill.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/water-extractor-liquid.png b/core/assets-raw/sprites/blocks/drills/water-extractor-liquid.png
index 2ac1564812..a0d71353f2 100644
Binary files a/core/assets-raw/sprites/blocks/drills/water-extractor-liquid.png and b/core/assets-raw/sprites/blocks/drills/water-extractor-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/water-extractor-top.png b/core/assets-raw/sprites/blocks/drills/water-extractor-top.png
index 088e510dc5..3671dd0817 100644
Binary files a/core/assets-raw/sprites/blocks/drills/water-extractor-top.png and b/core/assets-raw/sprites/blocks/drills/water-extractor-top.png differ
diff --git a/core/assets-raw/sprites/blocks/drills/water-extractor.png b/core/assets-raw/sprites/blocks/drills/water-extractor.png
index 61030e7560..f38c9e7168 100644
Binary files a/core/assets-raw/sprites/blocks/drills/water-extractor.png and b/core/assets-raw/sprites/blocks/drills/water-extractor.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/cliffs1.png b/core/assets-raw/sprites/blocks/environment/cliffs1.png
index 087e3065e2..eb60a159df 100644
Binary files a/core/assets-raw/sprites/blocks/environment/cliffs1.png and b/core/assets-raw/sprites/blocks/environment/cliffs1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/coal1.png b/core/assets-raw/sprites/blocks/environment/coal1.png
index 3caf5ed1b5..8d935599f3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/coal1.png and b/core/assets-raw/sprites/blocks/environment/coal1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/coal2.png b/core/assets-raw/sprites/blocks/environment/coal2.png
index 9cf4691919..0e02214bd6 100644
Binary files a/core/assets-raw/sprites/blocks/environment/coal2.png and b/core/assets-raw/sprites/blocks/environment/coal2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/coal3.png b/core/assets-raw/sprites/blocks/environment/coal3.png
index 5f2cf4730f..710680ce8b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/coal3.png and b/core/assets-raw/sprites/blocks/environment/coal3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/copper1.png b/core/assets-raw/sprites/blocks/environment/copper1.png
index c7b4dcc9ed..a16a0d75dc 100644
Binary files a/core/assets-raw/sprites/blocks/environment/copper1.png and b/core/assets-raw/sprites/blocks/environment/copper1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/copper2.png b/core/assets-raw/sprites/blocks/environment/copper2.png
index d62a9f201a..be68753af7 100644
Binary files a/core/assets-raw/sprites/blocks/environment/copper2.png and b/core/assets-raw/sprites/blocks/environment/copper2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/copper3.png b/core/assets-raw/sprites/blocks/environment/copper3.png
index c2f1a903ed..8ff6ecaed9 100644
Binary files a/core/assets-raw/sprites/blocks/environment/copper3.png and b/core/assets-raw/sprites/blocks/environment/copper3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/craters1.png b/core/assets-raw/sprites/blocks/environment/craters1.png
index 4b2172bc61..7b04e3553a 100644
Binary files a/core/assets-raw/sprites/blocks/environment/craters1.png and b/core/assets-raw/sprites/blocks/environment/craters1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/craters2.png b/core/assets-raw/sprites/blocks/environment/craters2.png
index 1170ab3c4f..ae6dc91fe2 100644
Binary files a/core/assets-raw/sprites/blocks/environment/craters2.png and b/core/assets-raw/sprites/blocks/environment/craters2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/craters3.png b/core/assets-raw/sprites/blocks/environment/craters3.png
index 9a23d383f7..1cc1193571 100644
Binary files a/core/assets-raw/sprites/blocks/environment/craters3.png and b/core/assets-raw/sprites/blocks/environment/craters3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/craters4.png b/core/assets-raw/sprites/blocks/environment/craters4.png
index 3d77e3080f..62cfa1f3e5 100644
Binary files a/core/assets-raw/sprites/blocks/environment/craters4.png and b/core/assets-raw/sprites/blocks/environment/craters4.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-metal-large.png b/core/assets-raw/sprites/blocks/environment/dark-metal-large.png
index 427eecae3c..42a53db08b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-metal-large.png and b/core/assets-raw/sprites/blocks/environment/dark-metal-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-metal1.png b/core/assets-raw/sprites/blocks/environment/dark-metal1.png
index 907b253157..ce65d4fd72 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-metal1.png and b/core/assets-raw/sprites/blocks/environment/dark-metal1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-metal2.png b/core/assets-raw/sprites/blocks/environment/dark-metal2.png
index 3eb3558f6c..42f7238425 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-metal2.png and b/core/assets-raw/sprites/blocks/environment/dark-metal2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-1.png b/core/assets-raw/sprites/blocks/environment/dark-panel-1.png
index 3035832574..ea2d25e43f 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-1.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-2.png b/core/assets-raw/sprites/blocks/environment/dark-panel-2.png
index cead3de9bc..117c0fddf7 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-2.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-3.png b/core/assets-raw/sprites/blocks/environment/dark-panel-3.png
index bf321e76a6..382aaa7ce3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-3.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-4.png b/core/assets-raw/sprites/blocks/environment/dark-panel-4.png
index 0a76f30595..a69c9c2da5 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-4.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-4.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-5.png b/core/assets-raw/sprites/blocks/environment/dark-panel-5.png
index 3f3c511fe4..b7d3e69c20 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-5.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-5.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/dark-panel-6.png b/core/assets-raw/sprites/blocks/environment/dark-panel-6.png
index 6ff46b0373..0c0423c3ed 100644
Binary files a/core/assets-raw/sprites/blocks/environment/dark-panel-6.png and b/core/assets-raw/sprites/blocks/environment/dark-panel-6.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/darksand-tainted-water.png b/core/assets-raw/sprites/blocks/environment/darksand-tainted-water.png
index fce4fce352..4a551c60da 100644
Binary files a/core/assets-raw/sprites/blocks/environment/darksand-tainted-water.png and b/core/assets-raw/sprites/blocks/environment/darksand-tainted-water.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/darksand-water.png b/core/assets-raw/sprites/blocks/environment/darksand-water.png
index 9074571f83..0d73187491 100644
Binary files a/core/assets-raw/sprites/blocks/environment/darksand-water.png and b/core/assets-raw/sprites/blocks/environment/darksand-water.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/darksand1.png b/core/assets-raw/sprites/blocks/environment/darksand1.png
index 0478f5a78d..d2464e43e6 100644
Binary files a/core/assets-raw/sprites/blocks/environment/darksand1.png and b/core/assets-raw/sprites/blocks/environment/darksand1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/darksand2.png b/core/assets-raw/sprites/blocks/environment/darksand2.png
index 978f2d22d1..6faed6d169 100644
Binary files a/core/assets-raw/sprites/blocks/environment/darksand2.png and b/core/assets-raw/sprites/blocks/environment/darksand2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/darksand3.png b/core/assets-raw/sprites/blocks/environment/darksand3.png
index f6e829199b..8d3b199b13 100644
Binary files a/core/assets-raw/sprites/blocks/environment/darksand3.png and b/core/assets-raw/sprites/blocks/environment/darksand3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/deepwater.png b/core/assets-raw/sprites/blocks/environment/deepwater.png
index 2389c5985d..200485d6ad 100644
Binary files a/core/assets-raw/sprites/blocks/environment/deepwater.png and b/core/assets-raw/sprites/blocks/environment/deepwater.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/edge-stencil.png b/core/assets-raw/sprites/blocks/environment/edge-stencil.png
index 4d45e75fde..08f18983b9 100644
Binary files a/core/assets-raw/sprites/blocks/environment/edge-stencil.png and b/core/assets-raw/sprites/blocks/environment/edge-stencil.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/edge.png b/core/assets-raw/sprites/blocks/environment/edge.png
index 566dd28288..bd38d6c27e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/edge.png and b/core/assets-raw/sprites/blocks/environment/edge.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/edgier.png b/core/assets-raw/sprites/blocks/environment/edgier.png
index 98d675f453..0e4e66c84c 100644
Binary files a/core/assets-raw/sprites/blocks/environment/edgier.png and b/core/assets-raw/sprites/blocks/environment/edgier.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/grass1.png b/core/assets-raw/sprites/blocks/environment/grass1.png
index adf810314d..95e7adb3ee 100644
Binary files a/core/assets-raw/sprites/blocks/environment/grass1.png and b/core/assets-raw/sprites/blocks/environment/grass1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/grass2.png b/core/assets-raw/sprites/blocks/environment/grass2.png
index 2f37e91369..2fa3e90a8d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/grass2.png and b/core/assets-raw/sprites/blocks/environment/grass2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/grass3.png b/core/assets-raw/sprites/blocks/environment/grass3.png
index 704219e7f9..600697623e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/grass3.png and b/core/assets-raw/sprites/blocks/environment/grass3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/holostone1.png b/core/assets-raw/sprites/blocks/environment/holostone1.png
index cc68b49c90..4f25d079a3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/holostone1.png and b/core/assets-raw/sprites/blocks/environment/holostone1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/holostone2.png b/core/assets-raw/sprites/blocks/environment/holostone2.png
index 1c74d19a1b..e226a0497b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/holostone2.png and b/core/assets-raw/sprites/blocks/environment/holostone2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/holostone3.png b/core/assets-raw/sprites/blocks/environment/holostone3.png
index 008f5a85f1..c11a6ce03e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/holostone3.png and b/core/assets-raw/sprites/blocks/environment/holostone3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/hotrock1.png b/core/assets-raw/sprites/blocks/environment/hotrock1.png
index d331a9b07c..b21bcb1748 100644
Binary files a/core/assets-raw/sprites/blocks/environment/hotrock1.png and b/core/assets-raw/sprites/blocks/environment/hotrock1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/hotrock2.png b/core/assets-raw/sprites/blocks/environment/hotrock2.png
index 5bfe3110eb..e6d108f060 100644
Binary files a/core/assets-raw/sprites/blocks/environment/hotrock2.png and b/core/assets-raw/sprites/blocks/environment/hotrock2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/hotrock3.png b/core/assets-raw/sprites/blocks/environment/hotrock3.png
index 1d37b221a3..9741c883a0 100644
Binary files a/core/assets-raw/sprites/blocks/environment/hotrock3.png and b/core/assets-raw/sprites/blocks/environment/hotrock3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice-snow1.png b/core/assets-raw/sprites/blocks/environment/ice-snow1.png
index fa26a7eb94..ee593e9f64 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice-snow1.png and b/core/assets-raw/sprites/blocks/environment/ice-snow1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice-snow2.png b/core/assets-raw/sprites/blocks/environment/ice-snow2.png
index b1b895af0a..a9ffcf1088 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice-snow2.png and b/core/assets-raw/sprites/blocks/environment/ice-snow2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice-snow3.png b/core/assets-raw/sprites/blocks/environment/ice-snow3.png
index 6448172835..f38d778b29 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice-snow3.png and b/core/assets-raw/sprites/blocks/environment/ice-snow3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice1.png b/core/assets-raw/sprites/blocks/environment/ice1.png
index 7e3bfcedfa..037910327e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice1.png and b/core/assets-raw/sprites/blocks/environment/ice1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice2.png b/core/assets-raw/sprites/blocks/environment/ice2.png
index 9a2643a694..0dda240a76 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice2.png and b/core/assets-raw/sprites/blocks/environment/ice2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ice3.png b/core/assets-raw/sprites/blocks/environment/ice3.png
index 08821cc029..72b2253496 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ice3.png and b/core/assets-raw/sprites/blocks/environment/ice3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/icerocks-large.png b/core/assets-raw/sprites/blocks/environment/icerocks-large.png
index f43c40e61a..ac584bb88d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/icerocks-large.png and b/core/assets-raw/sprites/blocks/environment/icerocks-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/icerocks1.png b/core/assets-raw/sprites/blocks/environment/icerocks1.png
index 8b93485477..6c294088c5 100644
Binary files a/core/assets-raw/sprites/blocks/environment/icerocks1.png and b/core/assets-raw/sprites/blocks/environment/icerocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/icerocks2.png b/core/assets-raw/sprites/blocks/environment/icerocks2.png
index 7264d6aa03..02e8c69cdf 100644
Binary files a/core/assets-raw/sprites/blocks/environment/icerocks2.png and b/core/assets-raw/sprites/blocks/environment/icerocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ignarock1.png b/core/assets-raw/sprites/blocks/environment/ignarock1.png
index fff2086d21..4b14fe9438 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ignarock1.png and b/core/assets-raw/sprites/blocks/environment/ignarock1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ignarock2.png b/core/assets-raw/sprites/blocks/environment/ignarock2.png
index da2c7412b7..dab19320f8 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ignarock2.png and b/core/assets-raw/sprites/blocks/environment/ignarock2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/ignarock3.png b/core/assets-raw/sprites/blocks/environment/ignarock3.png
index e303b57082..8afeab498b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/ignarock3.png and b/core/assets-raw/sprites/blocks/environment/ignarock3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/lead1.png b/core/assets-raw/sprites/blocks/environment/lead1.png
index 75b71b0f8d..31d590fbf3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/lead1.png and b/core/assets-raw/sprites/blocks/environment/lead1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/lead2.png b/core/assets-raw/sprites/blocks/environment/lead2.png
index b61a3a5cfb..c88b0b6317 100644
Binary files a/core/assets-raw/sprites/blocks/environment/lead2.png and b/core/assets-raw/sprites/blocks/environment/lead2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/lead3.png b/core/assets-raw/sprites/blocks/environment/lead3.png
index 87360e6656..3c467376b5 100644
Binary files a/core/assets-raw/sprites/blocks/environment/lead3.png and b/core/assets-raw/sprites/blocks/environment/lead3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/magmarock1.png b/core/assets-raw/sprites/blocks/environment/magmarock1.png
index a25af14de1..be1b8e5de1 100644
Binary files a/core/assets-raw/sprites/blocks/environment/magmarock1.png and b/core/assets-raw/sprites/blocks/environment/magmarock1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/magmarock2.png b/core/assets-raw/sprites/blocks/environment/magmarock2.png
index 7360fb1690..f03bb5fa2e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/magmarock2.png and b/core/assets-raw/sprites/blocks/environment/magmarock2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/magmarock3.png b/core/assets-raw/sprites/blocks/environment/magmarock3.png
index 7516823fc6..865a1c1356 100644
Binary files a/core/assets-raw/sprites/blocks/environment/magmarock3.png and b/core/assets-raw/sprites/blocks/environment/magmarock3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor-2.png b/core/assets-raw/sprites/blocks/environment/metal-floor-2.png
index 563338725b..4c89da7480 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor-2.png and b/core/assets-raw/sprites/blocks/environment/metal-floor-2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor-5.png b/core/assets-raw/sprites/blocks/environment/metal-floor-5.png
index ed2bc67e17..9fc2603fd8 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor-5.png and b/core/assets-raw/sprites/blocks/environment/metal-floor-5.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged1.png b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged1.png
index 8b1e45793d..1cfce7fe86 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged1.png and b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged2.png b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged2.png
index 5af2f8fbd2..078e5e7252 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged2.png and b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged3.png b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged3.png
index fe999c003c..fbc921711d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor-damaged3.png and b/core/assets-raw/sprites/blocks/environment/metal-floor-damaged3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/metal-floor.png b/core/assets-raw/sprites/blocks/environment/metal-floor.png
index d0085b65d9..f60eff075e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/metal-floor.png and b/core/assets-raw/sprites/blocks/environment/metal-floor.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/moss1.png b/core/assets-raw/sprites/blocks/environment/moss1.png
index 800bb05170..901ad1894a 100644
Binary files a/core/assets-raw/sprites/blocks/environment/moss1.png and b/core/assets-raw/sprites/blocks/environment/moss1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/moss2.png b/core/assets-raw/sprites/blocks/environment/moss2.png
index 2d338650e1..e429784752 100644
Binary files a/core/assets-raw/sprites/blocks/environment/moss2.png and b/core/assets-raw/sprites/blocks/environment/moss2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/moss3.png b/core/assets-raw/sprites/blocks/environment/moss3.png
index e840a1936a..b8f86a68de 100644
Binary files a/core/assets-raw/sprites/blocks/environment/moss3.png and b/core/assets-raw/sprites/blocks/environment/moss3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/pebbles1.png b/core/assets-raw/sprites/blocks/environment/pebbles1.png
index cac9429ba0..4dea1878aa 100644
Binary files a/core/assets-raw/sprites/blocks/environment/pebbles1.png and b/core/assets-raw/sprites/blocks/environment/pebbles1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/pebbles2.png b/core/assets-raw/sprites/blocks/environment/pebbles2.png
index a909715845..d334060d66 100644
Binary files a/core/assets-raw/sprites/blocks/environment/pebbles2.png and b/core/assets-raw/sprites/blocks/environment/pebbles2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/pebbles3.png b/core/assets-raw/sprites/blocks/environment/pebbles3.png
index b8585099aa..fc87797e85 100644
Binary files a/core/assets-raw/sprites/blocks/environment/pebbles3.png and b/core/assets-raw/sprites/blocks/environment/pebbles3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/pine.png b/core/assets-raw/sprites/blocks/environment/pine.png
index 8a4dcd9ad2..23c68c6efc 100644
Binary files a/core/assets-raw/sprites/blocks/environment/pine.png and b/core/assets-raw/sprites/blocks/environment/pine.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/rock1.png b/core/assets-raw/sprites/blocks/environment/rock1.png
index 75d81ad163..ae54a0027e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/rock1.png and b/core/assets-raw/sprites/blocks/environment/rock1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/rock2.png b/core/assets-raw/sprites/blocks/environment/rock2.png
index b4a900c4fd..6e6e310045 100644
Binary files a/core/assets-raw/sprites/blocks/environment/rock2.png and b/core/assets-raw/sprites/blocks/environment/rock2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/salt.png b/core/assets-raw/sprites/blocks/environment/salt.png
index f6cde0093c..4e7da75591 100644
Binary files a/core/assets-raw/sprites/blocks/environment/salt.png and b/core/assets-raw/sprites/blocks/environment/salt.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/saltrocks-large.png b/core/assets-raw/sprites/blocks/environment/saltrocks-large.png
index 3bf4af2ec1..c35319abe1 100644
Binary files a/core/assets-raw/sprites/blocks/environment/saltrocks-large.png and b/core/assets-raw/sprites/blocks/environment/saltrocks-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/saltrocks1.png b/core/assets-raw/sprites/blocks/environment/saltrocks1.png
index 74045a27a7..5c2d0628d7 100644
Binary files a/core/assets-raw/sprites/blocks/environment/saltrocks1.png and b/core/assets-raw/sprites/blocks/environment/saltrocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/saltrocks2.png b/core/assets-raw/sprites/blocks/environment/saltrocks2.png
index 25b801e550..64a572683a 100644
Binary files a/core/assets-raw/sprites/blocks/environment/saltrocks2.png and b/core/assets-raw/sprites/blocks/environment/saltrocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand-boulder1.png b/core/assets-raw/sprites/blocks/environment/sand-boulder1.png
index 4afe994648..4c2cbd964c 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand-boulder1.png and b/core/assets-raw/sprites/blocks/environment/sand-boulder1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand-boulder2.png b/core/assets-raw/sprites/blocks/environment/sand-boulder2.png
index 3c59c6240e..902a0d7b4d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand-boulder2.png and b/core/assets-raw/sprites/blocks/environment/sand-boulder2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand-water.png b/core/assets-raw/sprites/blocks/environment/sand-water.png
index 4ac2222ed3..ab897962c6 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand-water.png and b/core/assets-raw/sprites/blocks/environment/sand-water.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand1.png b/core/assets-raw/sprites/blocks/environment/sand1.png
index ae6ca2d3be..c7941f0059 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand1.png and b/core/assets-raw/sprites/blocks/environment/sand1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand2.png b/core/assets-raw/sprites/blocks/environment/sand2.png
index c13afa2030..a29fb7a719 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand2.png and b/core/assets-raw/sprites/blocks/environment/sand2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sand3.png b/core/assets-raw/sprites/blocks/environment/sand3.png
index b03562c494..bd3ed480aa 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sand3.png and b/core/assets-raw/sprites/blocks/environment/sand3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sandrocks-large.png b/core/assets-raw/sprites/blocks/environment/sandrocks-large.png
index e9148b71b9..7d485d3a19 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sandrocks-large.png and b/core/assets-raw/sprites/blocks/environment/sandrocks-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sandrocks1.png b/core/assets-raw/sprites/blocks/environment/sandrocks1.png
index 55f9afbbd5..52612ac838 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sandrocks1.png and b/core/assets-raw/sprites/blocks/environment/sandrocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sandrocks2.png b/core/assets-raw/sprites/blocks/environment/sandrocks2.png
index 2078ee2f2d..76d0da2cdb 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sandrocks2.png and b/core/assets-raw/sprites/blocks/environment/sandrocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/scrap1.png b/core/assets-raw/sprites/blocks/environment/scrap1.png
index 9fb8fb03f2..8300bb36fc 100644
Binary files a/core/assets-raw/sprites/blocks/environment/scrap1.png and b/core/assets-raw/sprites/blocks/environment/scrap1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/scrap2.png b/core/assets-raw/sprites/blocks/environment/scrap2.png
index f133d159f5..65974220df 100644
Binary files a/core/assets-raw/sprites/blocks/environment/scrap2.png and b/core/assets-raw/sprites/blocks/environment/scrap2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/scrap3.png b/core/assets-raw/sprites/blocks/environment/scrap3.png
index f602404e34..955c4633e2 100644
Binary files a/core/assets-raw/sprites/blocks/environment/scrap3.png and b/core/assets-raw/sprites/blocks/environment/scrap3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shale-boulder1.png b/core/assets-raw/sprites/blocks/environment/shale-boulder1.png
index 00cc2f2ccb..6d280cc2fd 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shale-boulder1.png and b/core/assets-raw/sprites/blocks/environment/shale-boulder1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shale-boulder2.png b/core/assets-raw/sprites/blocks/environment/shale-boulder2.png
index e03c20b62c..5ba4033ba6 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shale-boulder2.png and b/core/assets-raw/sprites/blocks/environment/shale-boulder2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shale1.png b/core/assets-raw/sprites/blocks/environment/shale1.png
index 6f242df279..3e90cb0064 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shale1.png and b/core/assets-raw/sprites/blocks/environment/shale1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shale2.png b/core/assets-raw/sprites/blocks/environment/shale2.png
index 2edf629f90..2f6ddaf27d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shale2.png and b/core/assets-raw/sprites/blocks/environment/shale2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shale3.png b/core/assets-raw/sprites/blocks/environment/shale3.png
index 95382a191c..d17b8b3066 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shale3.png and b/core/assets-raw/sprites/blocks/environment/shale3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shalerocks1.png b/core/assets-raw/sprites/blocks/environment/shalerocks1.png
index ff8b482bb7..ba2180b7a7 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shalerocks1.png and b/core/assets-raw/sprites/blocks/environment/shalerocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shalerocks2.png b/core/assets-raw/sprites/blocks/environment/shalerocks2.png
index 50d0f74c0c..08947b6d55 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shalerocks2.png and b/core/assets-raw/sprites/blocks/environment/shalerocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shrubs-large.png b/core/assets-raw/sprites/blocks/environment/shrubs-large.png
index dd0b6612d9..f348a6b3bf 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shrubs-large.png and b/core/assets-raw/sprites/blocks/environment/shrubs-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shrubs1.png b/core/assets-raw/sprites/blocks/environment/shrubs1.png
index caff49a543..7ce2de38be 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shrubs1.png and b/core/assets-raw/sprites/blocks/environment/shrubs1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/shrubs2.png b/core/assets-raw/sprites/blocks/environment/shrubs2.png
index a4f583d86f..0bad1cd974 100644
Binary files a/core/assets-raw/sprites/blocks/environment/shrubs2.png and b/core/assets-raw/sprites/blocks/environment/shrubs2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snow-pine.png b/core/assets-raw/sprites/blocks/environment/snow-pine.png
index 3e6f6a9da0..7c417ddcd8 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snow-pine.png and b/core/assets-raw/sprites/blocks/environment/snow-pine.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snow1.png b/core/assets-raw/sprites/blocks/environment/snow1.png
index b33b1194c0..8d922c5463 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snow1.png and b/core/assets-raw/sprites/blocks/environment/snow1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snow2.png b/core/assets-raw/sprites/blocks/environment/snow2.png
index d4d28874a5..ab3a0bea58 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snow2.png and b/core/assets-raw/sprites/blocks/environment/snow2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snow3.png b/core/assets-raw/sprites/blocks/environment/snow3.png
index b1eeb60dd2..30d46ff4d3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snow3.png and b/core/assets-raw/sprites/blocks/environment/snow3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snowrock1.png b/core/assets-raw/sprites/blocks/environment/snowrock1.png
index d81d328b9c..c7feac2e10 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snowrock1.png and b/core/assets-raw/sprites/blocks/environment/snowrock1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snowrock2.png b/core/assets-raw/sprites/blocks/environment/snowrock2.png
index 99a4b14ce0..5f148d78eb 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snowrock2.png and b/core/assets-raw/sprites/blocks/environment/snowrock2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snowrocks-large.png b/core/assets-raw/sprites/blocks/environment/snowrocks-large.png
index eb0a0f8ad8..0b9f028516 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snowrocks-large.png and b/core/assets-raw/sprites/blocks/environment/snowrocks-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snowrocks1.png b/core/assets-raw/sprites/blocks/environment/snowrocks1.png
index c61d6f7f9e..97101cec5d 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snowrocks1.png and b/core/assets-raw/sprites/blocks/environment/snowrocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/snowrocks2.png b/core/assets-raw/sprites/blocks/environment/snowrocks2.png
index 3d659efc32..dbdd7d28cd 100644
Binary files a/core/assets-raw/sprites/blocks/environment/snowrocks2.png and b/core/assets-raw/sprites/blocks/environment/snowrocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-cluster1.png b/core/assets-raw/sprites/blocks/environment/spore-cluster1.png
index 9bfdd4a4d2..50475fa510 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-cluster1.png and b/core/assets-raw/sprites/blocks/environment/spore-cluster1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-cluster2.png b/core/assets-raw/sprites/blocks/environment/spore-cluster2.png
index 4696b76ed9..4d19d2d209 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-cluster2.png and b/core/assets-raw/sprites/blocks/environment/spore-cluster2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-cluster3.png b/core/assets-raw/sprites/blocks/environment/spore-cluster3.png
index 047cada29a..3802836ac9 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-cluster3.png and b/core/assets-raw/sprites/blocks/environment/spore-cluster3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-moss1.png b/core/assets-raw/sprites/blocks/environment/spore-moss1.png
index b1e7fbbf34..37efcd5cd3 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-moss1.png and b/core/assets-raw/sprites/blocks/environment/spore-moss1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-moss2.png b/core/assets-raw/sprites/blocks/environment/spore-moss2.png
index cf05c4279e..f089759ca7 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-moss2.png and b/core/assets-raw/sprites/blocks/environment/spore-moss2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-moss3.png b/core/assets-raw/sprites/blocks/environment/spore-moss3.png
index 8b519681f9..7e70aeb6bf 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-moss3.png and b/core/assets-raw/sprites/blocks/environment/spore-moss3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/spore-pine.png b/core/assets-raw/sprites/blocks/environment/spore-pine.png
index 802248118a..b7ad94e20e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/spore-pine.png and b/core/assets-raw/sprites/blocks/environment/spore-pine.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sporerocks-large.png b/core/assets-raw/sprites/blocks/environment/sporerocks-large.png
index d02f83cdff..df6ac62ebd 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sporerocks-large.png and b/core/assets-raw/sprites/blocks/environment/sporerocks-large.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sporerocks1.png b/core/assets-raw/sprites/blocks/environment/sporerocks1.png
index 6f937d4613..ee3ec9a4d1 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sporerocks1.png and b/core/assets-raw/sprites/blocks/environment/sporerocks1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/sporerocks2.png b/core/assets-raw/sprites/blocks/environment/sporerocks2.png
index cebda293b9..638a1e3eb5 100644
Binary files a/core/assets-raw/sprites/blocks/environment/sporerocks2.png and b/core/assets-raw/sprites/blocks/environment/sporerocks2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/stone1.png b/core/assets-raw/sprites/blocks/environment/stone1.png
index e9f42a172d..1747b84033 100644
Binary files a/core/assets-raw/sprites/blocks/environment/stone1.png and b/core/assets-raw/sprites/blocks/environment/stone1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/stone2.png b/core/assets-raw/sprites/blocks/environment/stone2.png
index 09bc9f3e5a..5d2c768c3b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/stone2.png and b/core/assets-raw/sprites/blocks/environment/stone2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/stone3.png b/core/assets-raw/sprites/blocks/environment/stone3.png
index ca2487d441..c94e8d257e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/stone3.png and b/core/assets-raw/sprites/blocks/environment/stone3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/tainted-water.png b/core/assets-raw/sprites/blocks/environment/tainted-water.png
index 1618a1b0e1..021c5ac7b6 100644
Binary files a/core/assets-raw/sprites/blocks/environment/tainted-water.png and b/core/assets-raw/sprites/blocks/environment/tainted-water.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/tendrils1.png b/core/assets-raw/sprites/blocks/environment/tendrils1.png
index 904eb41418..90345f275b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/tendrils1.png and b/core/assets-raw/sprites/blocks/environment/tendrils1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/tendrils2.png b/core/assets-raw/sprites/blocks/environment/tendrils2.png
index 895843750c..b234cc402b 100644
Binary files a/core/assets-raw/sprites/blocks/environment/tendrils2.png and b/core/assets-raw/sprites/blocks/environment/tendrils2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/tendrils3.png b/core/assets-raw/sprites/blocks/environment/tendrils3.png
index d71b9bc1c7..e998b412c9 100644
Binary files a/core/assets-raw/sprites/blocks/environment/tendrils3.png and b/core/assets-raw/sprites/blocks/environment/tendrils3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/thorium1.png b/core/assets-raw/sprites/blocks/environment/thorium1.png
index 6c69abda01..b17c0a4b12 100644
Binary files a/core/assets-raw/sprites/blocks/environment/thorium1.png and b/core/assets-raw/sprites/blocks/environment/thorium1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/thorium2.png b/core/assets-raw/sprites/blocks/environment/thorium2.png
index 5995079270..da74d1e7ae 100644
Binary files a/core/assets-raw/sprites/blocks/environment/thorium2.png and b/core/assets-raw/sprites/blocks/environment/thorium2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/thorium3.png b/core/assets-raw/sprites/blocks/environment/thorium3.png
index de787e98a6..e82026a31a 100644
Binary files a/core/assets-raw/sprites/blocks/environment/thorium3.png and b/core/assets-raw/sprites/blocks/environment/thorium3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/titanium1.png b/core/assets-raw/sprites/blocks/environment/titanium1.png
index 4cfd1bf647..1172dad247 100644
Binary files a/core/assets-raw/sprites/blocks/environment/titanium1.png and b/core/assets-raw/sprites/blocks/environment/titanium1.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/titanium2.png b/core/assets-raw/sprites/blocks/environment/titanium2.png
index 60e9d13134..c32ec8c034 100644
Binary files a/core/assets-raw/sprites/blocks/environment/titanium2.png and b/core/assets-raw/sprites/blocks/environment/titanium2.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/titanium3.png b/core/assets-raw/sprites/blocks/environment/titanium3.png
index 946f55ab46..51547a0363 100644
Binary files a/core/assets-raw/sprites/blocks/environment/titanium3.png and b/core/assets-raw/sprites/blocks/environment/titanium3.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/water.png b/core/assets-raw/sprites/blocks/environment/water.png
index 631f99201a..474987f0e9 100644
Binary files a/core/assets-raw/sprites/blocks/environment/water.png and b/core/assets-raw/sprites/blocks/environment/water.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/white-tree-dead.png b/core/assets-raw/sprites/blocks/environment/white-tree-dead.png
index 4831e1879e..4e7a5c9292 100644
Binary files a/core/assets-raw/sprites/blocks/environment/white-tree-dead.png and b/core/assets-raw/sprites/blocks/environment/white-tree-dead.png differ
diff --git a/core/assets-raw/sprites/blocks/environment/white-tree.png b/core/assets-raw/sprites/blocks/environment/white-tree.png
index af2b61c5ca..bfc3d3629e 100644
Binary files a/core/assets-raw/sprites/blocks/environment/white-tree.png and b/core/assets-raw/sprites/blocks/environment/white-tree.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/block-border.png b/core/assets-raw/sprites/blocks/extra/block-border.png
index 415c5a6849..daf204a949 100644
Binary files a/core/assets-raw/sprites/blocks/extra/block-border.png and b/core/assets-raw/sprites/blocks/extra/block-border.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/block-select.png b/core/assets-raw/sprites/blocks/extra/block-select.png
index 559131b263..e9d19b9e7e 100644
Binary files a/core/assets-raw/sprites/blocks/extra/block-select.png and b/core/assets-raw/sprites/blocks/extra/block-select.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/message.png b/core/assets-raw/sprites/blocks/extra/message.png
index f18960812c..60f8659d12 100644
Binary files a/core/assets-raw/sprites/blocks/extra/message.png and b/core/assets-raw/sprites/blocks/extra/message.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/place-arrow.png b/core/assets-raw/sprites/blocks/extra/place-arrow.png
index 5ae905b23f..a5004f1232 100644
Binary files a/core/assets-raw/sprites/blocks/extra/place-arrow.png and b/core/assets-raw/sprites/blocks/extra/place-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-5-0.png b/core/assets-raw/sprites/blocks/extra/rubble-5-0.png
index 8b22b6fc14..822e4b777b 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-5-0.png and b/core/assets-raw/sprites/blocks/extra/rubble-5-0.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-5-1.png b/core/assets-raw/sprites/blocks/extra/rubble-5-1.png
index 8b22b6fc14..822e4b777b 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-5-1.png and b/core/assets-raw/sprites/blocks/extra/rubble-5-1.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-6-0.png b/core/assets-raw/sprites/blocks/extra/rubble-6-0.png
index 3f3fb19086..3260f4b32d 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-6-0.png and b/core/assets-raw/sprites/blocks/extra/rubble-6-0.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-6-1.png b/core/assets-raw/sprites/blocks/extra/rubble-6-1.png
index 3f3fb19086..3260f4b32d 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-6-1.png and b/core/assets-raw/sprites/blocks/extra/rubble-6-1.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-7-0.png b/core/assets-raw/sprites/blocks/extra/rubble-7-0.png
index ba3fb3f3af..525ca3da1f 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-7-0.png and b/core/assets-raw/sprites/blocks/extra/rubble-7-0.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-7-1.png b/core/assets-raw/sprites/blocks/extra/rubble-7-1.png
index ba3fb3f3af..525ca3da1f 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-7-1.png and b/core/assets-raw/sprites/blocks/extra/rubble-7-1.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-8-0.png b/core/assets-raw/sprites/blocks/extra/rubble-8-0.png
index 5db796476d..680e65aa48 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-8-0.png and b/core/assets-raw/sprites/blocks/extra/rubble-8-0.png differ
diff --git a/core/assets-raw/sprites/blocks/extra/rubble-8-1.png b/core/assets-raw/sprites/blocks/extra/rubble-8-1.png
index 5db796476d..680e65aa48 100644
Binary files a/core/assets-raw/sprites/blocks/extra/rubble-8-1.png and b/core/assets-raw/sprites/blocks/extra/rubble-8-1.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/bridge-conduit-arrow.png b/core/assets-raw/sprites/blocks/liquid/bridge-conduit-arrow.png
index 05bb28604f..b8b62bcb34 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/bridge-conduit-arrow.png and b/core/assets-raw/sprites/blocks/liquid/bridge-conduit-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/bridge-conduit-end.png b/core/assets-raw/sprites/blocks/liquid/bridge-conduit-end.png
index 1142e49e21..844be19482 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/bridge-conduit-end.png and b/core/assets-raw/sprites/blocks/liquid/bridge-conduit-end.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/bridge-conduit.png b/core/assets-raw/sprites/blocks/liquid/bridge-conduit.png
index f1c7bc3055..9249b2b4ad 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/bridge-conduit.png and b/core/assets-raw/sprites/blocks/liquid/bridge-conduit.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-1.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-1.png
index 88e4f28423..82bcbcb1b4 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-1.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-1.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-2.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-2.png
index 3c968dd2b4..d2896d5c7b 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-2.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-2.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-3.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-3.png
index 6b0a4ffff9..d2896d5c7b 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-3.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-3.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-4.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-4.png
index 969b593d8e..d2896d5c7b 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-4.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-4.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-5.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-5.png
index 0317e0b0fa..c49ac209e8 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-5.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-5.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-6.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-6.png
index 30ecffba39..d2896d5c7b 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom-6.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom-6.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-bottom.png b/core/assets-raw/sprites/blocks/liquid/conduit-bottom.png
index 1390737d20..f2f7dfdd99 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-bottom.png and b/core/assets-raw/sprites/blocks/liquid/conduit-bottom.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-0.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-0.png
index a9dc2ec9c8..e7b8c4433d 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-0.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-0.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-1.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-1.png
index d223e31491..a8e05ab777 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-1.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-1.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-2.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-2.png
index c29c2fc1e2..e3036ea6f7 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-2.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-2.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-3.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-3.png
index c5500f1fd3..b45e11ccf4 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-3.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-3.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-4.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-4.png
index ba4bc1c99a..ecd147450a 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-4.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-4.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-5.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-5.png
index debece9dc9..3a619260dd 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-5.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-5.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/conduit-top-6.png b/core/assets-raw/sprites/blocks/liquid/conduit-top-6.png
index 56976bfe14..e673a4c6cf 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/conduit-top-6.png and b/core/assets-raw/sprites/blocks/liquid/conduit-top-6.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-junction.png b/core/assets-raw/sprites/blocks/liquid/liquid-junction.png
index 737f148b04..b7ddc74ce1 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-junction.png and b/core/assets-raw/sprites/blocks/liquid/liquid-junction.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate-top.png b/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate-top.png
index f6bdf7f613..13d062d767 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate-top.png and b/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate-top.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate.png b/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate.png
index f608e0a6d1..5cac3b38d7 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate.png and b/core/assets-raw/sprites/blocks/liquid/liquid-overflow-gate.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-router-bottom.png b/core/assets-raw/sprites/blocks/liquid/liquid-router-bottom.png
index be9e88c572..4f33525764 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-router-bottom.png and b/core/assets-raw/sprites/blocks/liquid/liquid-router-bottom.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-router-liquid.png b/core/assets-raw/sprites/blocks/liquid/liquid-router-liquid.png
index 09957a6554..00dfc92f87 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-router-liquid.png and b/core/assets-raw/sprites/blocks/liquid/liquid-router-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-router-top.png b/core/assets-raw/sprites/blocks/liquid/liquid-router-top.png
index 474a4ecac8..4e45a7094b 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-router-top.png and b/core/assets-raw/sprites/blocks/liquid/liquid-router-top.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-tank-bottom.png b/core/assets-raw/sprites/blocks/liquid/liquid-tank-bottom.png
index b4743171f0..a94e604467 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-tank-bottom.png and b/core/assets-raw/sprites/blocks/liquid/liquid-tank-bottom.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-tank-liquid.png b/core/assets-raw/sprites/blocks/liquid/liquid-tank-liquid.png
index 3e7b0e032e..85533fef2f 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-tank-liquid.png and b/core/assets-raw/sprites/blocks/liquid/liquid-tank-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/liquid-tank-top.png b/core/assets-raw/sprites/blocks/liquid/liquid-tank-top.png
index 9455df4454..255c710915 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/liquid-tank-top.png and b/core/assets-raw/sprites/blocks/liquid/liquid-tank-top.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/mechanical-pump.png b/core/assets-raw/sprites/blocks/liquid/mechanical-pump.png
index dcc74a737a..f155293a82 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/mechanical-pump.png and b/core/assets-raw/sprites/blocks/liquid/mechanical-pump.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/phase-conduit-arrow.png b/core/assets-raw/sprites/blocks/liquid/phase-conduit-arrow.png
index a1a0cefc09..62bcb0c0b2 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/phase-conduit-arrow.png and b/core/assets-raw/sprites/blocks/liquid/phase-conduit-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/phase-conduit.png b/core/assets-raw/sprites/blocks/liquid/phase-conduit.png
index 1956ea3565..73e4d9cf79 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/phase-conduit.png and b/core/assets-raw/sprites/blocks/liquid/phase-conduit.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-cap.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-cap.png
index f4e8df2bb7..f964e3a070 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-cap.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-cap.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-0.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-0.png
index 21fd730109..6b645244d7 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-0.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-0.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-1.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-1.png
index 94c22fd75e..b10df885e9 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-1.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-1.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-2.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-2.png
index a9bdc10692..e37f7a3533 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-2.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-2.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-3.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-3.png
index 7487e481cb..d133259b0f 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-3.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-3.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-4.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-4.png
index 19fad690a4..68bf34a1f0 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-4.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-4.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-5.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-5.png
index 45158534c4..ee1ac001e8 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-5.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-5.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-6.png b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-6.png
index f5b5cd1157..be533536a7 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-6.png and b/core/assets-raw/sprites/blocks/liquid/plated-conduit-top-6.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-0.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-0.png
index 8ae31a2dbc..d7e299afa6 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-0.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-0.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-1.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-1.png
index f86fde1240..4db953390c 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-1.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-1.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-2.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-2.png
index 2d9bcb39a3..78a57e8f64 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-2.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-2.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-3.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-3.png
index d625cd185b..b45e11ccf4 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-3.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-3.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-4.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-4.png
index e1938fde0b..050aa16f7a 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-4.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-4.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-5.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-5.png
index ed9d334798..ff795df1fc 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-5.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-5.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-6.png b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-6.png
index f25158d7de..f4e6379a31 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-6.png and b/core/assets-raw/sprites/blocks/liquid/pulse-conduit-top-6.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/rotary-pump.png b/core/assets-raw/sprites/blocks/liquid/rotary-pump.png
index 68aa196101..29a234b331 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/rotary-pump.png and b/core/assets-raw/sprites/blocks/liquid/rotary-pump.png differ
diff --git a/core/assets-raw/sprites/blocks/liquid/thermal-pump.png b/core/assets-raw/sprites/blocks/liquid/thermal-pump.png
index 807fa4bc15..5f8f061bfc 100644
Binary files a/core/assets-raw/sprites/blocks/liquid/thermal-pump.png and b/core/assets-raw/sprites/blocks/liquid/thermal-pump.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/dart-mech-pad.png b/core/assets-raw/sprites/blocks/mechs/dart-mech-pad.png
index 70f16847d2..798482cbd4 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/dart-mech-pad.png and b/core/assets-raw/sprites/blocks/mechs/dart-mech-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/delta-mech-pad.png b/core/assets-raw/sprites/blocks/mechs/delta-mech-pad.png
index 03f04549c6..00c1fbeeb4 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/delta-mech-pad.png and b/core/assets-raw/sprites/blocks/mechs/delta-mech-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/glaive-ship-pad.png b/core/assets-raw/sprites/blocks/mechs/glaive-ship-pad.png
index d2f9db2a65..5c19da2411 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/glaive-ship-pad.png and b/core/assets-raw/sprites/blocks/mechs/glaive-ship-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/javelin-ship-pad.png b/core/assets-raw/sprites/blocks/mechs/javelin-ship-pad.png
index 0c98d4566a..d4a4de304e 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/javelin-ship-pad.png and b/core/assets-raw/sprites/blocks/mechs/javelin-ship-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/omega-mech-pad.png b/core/assets-raw/sprites/blocks/mechs/omega-mech-pad.png
index 0f3d98c97e..d72eb6100c 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/omega-mech-pad.png and b/core/assets-raw/sprites/blocks/mechs/omega-mech-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/tau-mech-pad.png b/core/assets-raw/sprites/blocks/mechs/tau-mech-pad.png
index f929bedde8..53263e2660 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/tau-mech-pad.png and b/core/assets-raw/sprites/blocks/mechs/tau-mech-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/mechs/trident-ship-pad.png b/core/assets-raw/sprites/blocks/mechs/trident-ship-pad.png
index dd9d17e0dd..99f6d984ff 100644
Binary files a/core/assets-raw/sprites/blocks/mechs/trident-ship-pad.png and b/core/assets-raw/sprites/blocks/mechs/trident-ship-pad.png differ
diff --git a/core/assets-raw/sprites/blocks/power/battery-large-top.png b/core/assets-raw/sprites/blocks/power/battery-large-top.png
new file mode 100644
index 0000000000..6656faa036
Binary files /dev/null and b/core/assets-raw/sprites/blocks/power/battery-large-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/battery-large.png b/core/assets-raw/sprites/blocks/power/battery-large.png
index 5917051f44..7ad7d26d68 100644
Binary files a/core/assets-raw/sprites/blocks/power/battery-large.png and b/core/assets-raw/sprites/blocks/power/battery-large.png differ
diff --git a/core/assets-raw/sprites/blocks/power/battery-top.png b/core/assets-raw/sprites/blocks/power/battery-top.png
new file mode 100644
index 0000000000..b1338da34f
Binary files /dev/null and b/core/assets-raw/sprites/blocks/power/battery-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/battery.png b/core/assets-raw/sprites/blocks/power/battery.png
index 44a863f123..82af78bbcb 100644
Binary files a/core/assets-raw/sprites/blocks/power/battery.png and b/core/assets-raw/sprites/blocks/power/battery.png differ
diff --git a/core/assets-raw/sprites/blocks/power/combustion-generator-top.png b/core/assets-raw/sprites/blocks/power/combustion-generator-top.png
index 8df8df9a57..971e7b6cd8 100644
Binary files a/core/assets-raw/sprites/blocks/power/combustion-generator-top.png and b/core/assets-raw/sprites/blocks/power/combustion-generator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/combustion-generator.png b/core/assets-raw/sprites/blocks/power/combustion-generator.png
index 8fb412f555..d2c563d838 100644
Binary files a/core/assets-raw/sprites/blocks/power/combustion-generator.png and b/core/assets-raw/sprites/blocks/power/combustion-generator.png differ
diff --git a/core/assets-raw/sprites/blocks/power/differential-generator-liquid.png b/core/assets-raw/sprites/blocks/power/differential-generator-liquid.png
index fa68927de4..0595a9ad1c 100644
Binary files a/core/assets-raw/sprites/blocks/power/differential-generator-liquid.png and b/core/assets-raw/sprites/blocks/power/differential-generator-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/power/differential-generator-top.png b/core/assets-raw/sprites/blocks/power/differential-generator-top.png
index 0e1b4fda69..eb504bc9b4 100644
Binary files a/core/assets-raw/sprites/blocks/power/differential-generator-top.png and b/core/assets-raw/sprites/blocks/power/differential-generator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/differential-generator.png b/core/assets-raw/sprites/blocks/power/differential-generator.png
index 01a271abe0..12e5e820da 100644
Binary files a/core/assets-raw/sprites/blocks/power/differential-generator.png and b/core/assets-raw/sprites/blocks/power/differential-generator.png differ
diff --git a/core/assets-raw/sprites/blocks/power/diode-arrow.png b/core/assets-raw/sprites/blocks/power/diode-arrow.png
index 2699e370da..227b8bb1d7 100644
Binary files a/core/assets-raw/sprites/blocks/power/diode-arrow.png and b/core/assets-raw/sprites/blocks/power/diode-arrow.png differ
diff --git a/core/assets-raw/sprites/blocks/power/diode.png b/core/assets-raw/sprites/blocks/power/diode.png
index fc2c4ee8b1..51cb7a1122 100644
Binary files a/core/assets-raw/sprites/blocks/power/diode.png and b/core/assets-raw/sprites/blocks/power/diode.png differ
diff --git a/core/assets-raw/sprites/blocks/power/illuminator-top.png b/core/assets-raw/sprites/blocks/power/illuminator-top.png
index 8597b28d97..38754f57b0 100644
Binary files a/core/assets-raw/sprites/blocks/power/illuminator-top.png and b/core/assets-raw/sprites/blocks/power/illuminator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/illuminator.png b/core/assets-raw/sprites/blocks/power/illuminator.png
index 9269a33447..09b2f5cbb9 100644
Binary files a/core/assets-raw/sprites/blocks/power/illuminator.png and b/core/assets-raw/sprites/blocks/power/illuminator.png differ
diff --git a/core/assets-raw/sprites/blocks/power/impact-reactor-bottom.png b/core/assets-raw/sprites/blocks/power/impact-reactor-bottom.png
index 6b16fca94c..3ca55b0207 100644
Binary files a/core/assets-raw/sprites/blocks/power/impact-reactor-bottom.png and b/core/assets-raw/sprites/blocks/power/impact-reactor-bottom.png differ
diff --git a/core/assets-raw/sprites/blocks/power/impact-reactor.png b/core/assets-raw/sprites/blocks/power/impact-reactor.png
index c1dd5e46c8..d56bd5d6a5 100644
Binary files a/core/assets-raw/sprites/blocks/power/impact-reactor.png and b/core/assets-raw/sprites/blocks/power/impact-reactor.png differ
diff --git a/core/assets-raw/sprites/blocks/power/power-node-large.png b/core/assets-raw/sprites/blocks/power/power-node-large.png
index add53dd280..601cba0edf 100644
Binary files a/core/assets-raw/sprites/blocks/power/power-node-large.png and b/core/assets-raw/sprites/blocks/power/power-node-large.png differ
diff --git a/core/assets-raw/sprites/blocks/power/power-node.png b/core/assets-raw/sprites/blocks/power/power-node.png
index e8f6498ee1..a118ea07a3 100644
Binary files a/core/assets-raw/sprites/blocks/power/power-node.png and b/core/assets-raw/sprites/blocks/power/power-node.png differ
diff --git a/core/assets-raw/sprites/blocks/power/power-source.png b/core/assets-raw/sprites/blocks/power/power-source.png
index f4c6473df4..b8f43dbece 100644
Binary files a/core/assets-raw/sprites/blocks/power/power-source.png and b/core/assets-raw/sprites/blocks/power/power-source.png differ
diff --git a/core/assets-raw/sprites/blocks/power/power-void.png b/core/assets-raw/sprites/blocks/power/power-void.png
index fee2a2b3e8..6ca39646bb 100644
Binary files a/core/assets-raw/sprites/blocks/power/power-void.png and b/core/assets-raw/sprites/blocks/power/power-void.png differ
diff --git a/core/assets-raw/sprites/blocks/power/rtg-generator-top.png b/core/assets-raw/sprites/blocks/power/rtg-generator-top.png
index dc89fca155..00fcc2eeaf 100644
Binary files a/core/assets-raw/sprites/blocks/power/rtg-generator-top.png and b/core/assets-raw/sprites/blocks/power/rtg-generator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/rtg-generator.png b/core/assets-raw/sprites/blocks/power/rtg-generator.png
index 414a606c8c..a38888ed7d 100644
Binary files a/core/assets-raw/sprites/blocks/power/rtg-generator.png and b/core/assets-raw/sprites/blocks/power/rtg-generator.png differ
diff --git a/core/assets-raw/sprites/blocks/power/solar-panel-large.png b/core/assets-raw/sprites/blocks/power/solar-panel-large.png
index 782d792039..a5e37542f1 100644
Binary files a/core/assets-raw/sprites/blocks/power/solar-panel-large.png and b/core/assets-raw/sprites/blocks/power/solar-panel-large.png differ
diff --git a/core/assets-raw/sprites/blocks/power/solar-panel.png b/core/assets-raw/sprites/blocks/power/solar-panel.png
index 0703c1be90..9b2dfab795 100644
Binary files a/core/assets-raw/sprites/blocks/power/solar-panel.png and b/core/assets-raw/sprites/blocks/power/solar-panel.png differ
diff --git a/core/assets-raw/sprites/blocks/power/surge-tower.png b/core/assets-raw/sprites/blocks/power/surge-tower.png
index f381af0813..9aaeae3186 100644
Binary files a/core/assets-raw/sprites/blocks/power/surge-tower.png and b/core/assets-raw/sprites/blocks/power/surge-tower.png differ
diff --git a/core/assets-raw/sprites/blocks/power/thorium-reactor-center.png b/core/assets-raw/sprites/blocks/power/thorium-reactor-center.png
index 1254159ab9..a22ce50d60 100644
Binary files a/core/assets-raw/sprites/blocks/power/thorium-reactor-center.png and b/core/assets-raw/sprites/blocks/power/thorium-reactor-center.png differ
diff --git a/core/assets-raw/sprites/blocks/power/thorium-reactor-lights.png b/core/assets-raw/sprites/blocks/power/thorium-reactor-lights.png
index fe7b76179c..fb10892472 100644
Binary files a/core/assets-raw/sprites/blocks/power/thorium-reactor-lights.png and b/core/assets-raw/sprites/blocks/power/thorium-reactor-lights.png differ
diff --git a/core/assets-raw/sprites/blocks/power/thorium-reactor.png b/core/assets-raw/sprites/blocks/power/thorium-reactor.png
index 7b7fdc1c79..902d120898 100644
Binary files a/core/assets-raw/sprites/blocks/power/thorium-reactor.png and b/core/assets-raw/sprites/blocks/power/thorium-reactor.png differ
diff --git a/core/assets-raw/sprites/blocks/power/turbine-generator-liquid.png b/core/assets-raw/sprites/blocks/power/turbine-generator-liquid.png
index e083c04492..7f074dda62 100644
Binary files a/core/assets-raw/sprites/blocks/power/turbine-generator-liquid.png and b/core/assets-raw/sprites/blocks/power/turbine-generator-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/power/turbine-generator-top.png b/core/assets-raw/sprites/blocks/power/turbine-generator-top.png
index d7cf0d8547..c0a7cf2c3f 100644
Binary files a/core/assets-raw/sprites/blocks/power/turbine-generator-top.png and b/core/assets-raw/sprites/blocks/power/turbine-generator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/power/turbine-generator.png b/core/assets-raw/sprites/blocks/power/turbine-generator.png
index b434c5c6fa..b81cc0b306 100644
Binary files a/core/assets-raw/sprites/blocks/power/turbine-generator.png and b/core/assets-raw/sprites/blocks/power/turbine-generator.png differ
diff --git a/core/assets-raw/sprites/blocks/production/alloy-smelter-top.png b/core/assets-raw/sprites/blocks/production/alloy-smelter-top.png
index c946c0dd3e..a3ff2513e3 100644
Binary files a/core/assets-raw/sprites/blocks/production/alloy-smelter-top.png and b/core/assets-raw/sprites/blocks/production/alloy-smelter-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/alloy-smelter.png b/core/assets-raw/sprites/blocks/production/alloy-smelter.png
index 048022a525..f9a0a1fc17 100644
Binary files a/core/assets-raw/sprites/blocks/production/alloy-smelter.png and b/core/assets-raw/sprites/blocks/production/alloy-smelter.png differ
diff --git a/core/assets-raw/sprites/blocks/production/blast-mixer.png b/core/assets-raw/sprites/blocks/production/blast-mixer.png
index 7bb42d17ac..9effafb9c8 100644
Binary files a/core/assets-raw/sprites/blocks/production/blast-mixer.png and b/core/assets-raw/sprites/blocks/production/blast-mixer.png differ
diff --git a/core/assets-raw/sprites/blocks/production/coal-centrifuge.png b/core/assets-raw/sprites/blocks/production/coal-centrifuge.png
index d32ffe368b..33509c7e92 100644
Binary files a/core/assets-raw/sprites/blocks/production/coal-centrifuge.png and b/core/assets-raw/sprites/blocks/production/coal-centrifuge.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cryofluidmixer-bottom.png b/core/assets-raw/sprites/blocks/production/cryofluidmixer-bottom.png
index 4a97b6c5ff..f4d8646c0e 100644
Binary files a/core/assets-raw/sprites/blocks/production/cryofluidmixer-bottom.png and b/core/assets-raw/sprites/blocks/production/cryofluidmixer-bottom.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cryofluidmixer-liquid.png b/core/assets-raw/sprites/blocks/production/cryofluidmixer-liquid.png
index 929c629499..26d446e761 100644
Binary files a/core/assets-raw/sprites/blocks/production/cryofluidmixer-liquid.png and b/core/assets-raw/sprites/blocks/production/cryofluidmixer-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cryofluidmixer-top.png b/core/assets-raw/sprites/blocks/production/cryofluidmixer-top.png
index 26fe248540..e90db33565 100644
Binary files a/core/assets-raw/sprites/blocks/production/cryofluidmixer-top.png and b/core/assets-raw/sprites/blocks/production/cryofluidmixer-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cultivator-middle.png b/core/assets-raw/sprites/blocks/production/cultivator-middle.png
index 29f0d1fcf4..f74af4240b 100644
Binary files a/core/assets-raw/sprites/blocks/production/cultivator-middle.png and b/core/assets-raw/sprites/blocks/production/cultivator-middle.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cultivator-top.png b/core/assets-raw/sprites/blocks/production/cultivator-top.png
index fd33bf6210..07a68428de 100644
Binary files a/core/assets-raw/sprites/blocks/production/cultivator-top.png and b/core/assets-raw/sprites/blocks/production/cultivator-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/cultivator.png b/core/assets-raw/sprites/blocks/production/cultivator.png
index 6d1eecd2b0..e1ff7aa692 100644
Binary files a/core/assets-raw/sprites/blocks/production/cultivator.png and b/core/assets-raw/sprites/blocks/production/cultivator.png differ
diff --git a/core/assets-raw/sprites/blocks/production/graphite-press.png b/core/assets-raw/sprites/blocks/production/graphite-press.png
index 39d6adbe36..37e6e3138a 100644
Binary files a/core/assets-raw/sprites/blocks/production/graphite-press.png and b/core/assets-raw/sprites/blocks/production/graphite-press.png differ
diff --git a/core/assets-raw/sprites/blocks/production/incinerator.png b/core/assets-raw/sprites/blocks/production/incinerator.png
index 9c20fa5308..839acac93f 100644
Binary files a/core/assets-raw/sprites/blocks/production/incinerator.png and b/core/assets-raw/sprites/blocks/production/incinerator.png differ
diff --git a/core/assets-raw/sprites/blocks/production/item-source.png b/core/assets-raw/sprites/blocks/production/item-source.png
index b384226e5f..98dc16ac3c 100644
Binary files a/core/assets-raw/sprites/blocks/production/item-source.png and b/core/assets-raw/sprites/blocks/production/item-source.png differ
diff --git a/core/assets-raw/sprites/blocks/production/item-void.png b/core/assets-raw/sprites/blocks/production/item-void.png
index 473040a95d..a9f2dd45df 100644
Binary files a/core/assets-raw/sprites/blocks/production/item-void.png and b/core/assets-raw/sprites/blocks/production/item-void.png differ
diff --git a/core/assets-raw/sprites/blocks/production/kiln-top.png b/core/assets-raw/sprites/blocks/production/kiln-top.png
index 336852ceee..54b786e63a 100644
Binary files a/core/assets-raw/sprites/blocks/production/kiln-top.png and b/core/assets-raw/sprites/blocks/production/kiln-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/kiln.png b/core/assets-raw/sprites/blocks/production/kiln.png
index 67e03032c2..a115501b61 100644
Binary files a/core/assets-raw/sprites/blocks/production/kiln.png and b/core/assets-raw/sprites/blocks/production/kiln.png differ
diff --git a/core/assets-raw/sprites/blocks/production/liquid-source.png b/core/assets-raw/sprites/blocks/production/liquid-source.png
index 2c493d30f5..0ae3a70f6f 100644
Binary files a/core/assets-raw/sprites/blocks/production/liquid-source.png and b/core/assets-raw/sprites/blocks/production/liquid-source.png differ
diff --git a/core/assets-raw/sprites/blocks/production/liquid-void.png b/core/assets-raw/sprites/blocks/production/liquid-void.png
index cd81df317d..67424c05ea 100644
Binary files a/core/assets-raw/sprites/blocks/production/liquid-void.png and b/core/assets-raw/sprites/blocks/production/liquid-void.png differ
diff --git a/core/assets-raw/sprites/blocks/production/melter.png b/core/assets-raw/sprites/blocks/production/melter.png
index 2f4c3a0500..f499dd9893 100644
Binary files a/core/assets-raw/sprites/blocks/production/melter.png and b/core/assets-raw/sprites/blocks/production/melter.png differ
diff --git a/core/assets-raw/sprites/blocks/production/multi-press.png b/core/assets-raw/sprites/blocks/production/multi-press.png
index 5fea3ff19f..e0a57702e0 100644
Binary files a/core/assets-raw/sprites/blocks/production/multi-press.png and b/core/assets-raw/sprites/blocks/production/multi-press.png differ
diff --git a/core/assets-raw/sprites/blocks/production/phase-weaver-weave.png b/core/assets-raw/sprites/blocks/production/phase-weaver-weave.png
index b016588b17..7dee200cf6 100644
Binary files a/core/assets-raw/sprites/blocks/production/phase-weaver-weave.png and b/core/assets-raw/sprites/blocks/production/phase-weaver-weave.png differ
diff --git a/core/assets-raw/sprites/blocks/production/phase-weaver.png b/core/assets-raw/sprites/blocks/production/phase-weaver.png
index 0192b0e5dd..4cbda78f1b 100644
Binary files a/core/assets-raw/sprites/blocks/production/phase-weaver.png and b/core/assets-raw/sprites/blocks/production/phase-weaver.png differ
diff --git a/core/assets-raw/sprites/blocks/production/plastanium-compressor-top.png b/core/assets-raw/sprites/blocks/production/plastanium-compressor-top.png
index 2e8dc35787..ceb6a9b646 100644
Binary files a/core/assets-raw/sprites/blocks/production/plastanium-compressor-top.png and b/core/assets-raw/sprites/blocks/production/plastanium-compressor-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/plastanium-compressor.png b/core/assets-raw/sprites/blocks/production/plastanium-compressor.png
index 522b6f8b88..fa43d0b2c3 100644
Binary files a/core/assets-raw/sprites/blocks/production/plastanium-compressor.png and b/core/assets-raw/sprites/blocks/production/plastanium-compressor.png differ
diff --git a/core/assets-raw/sprites/blocks/production/pulverizer-rotator.png b/core/assets-raw/sprites/blocks/production/pulverizer-rotator.png
index c39062caa2..72cd249d26 100644
Binary files a/core/assets-raw/sprites/blocks/production/pulverizer-rotator.png and b/core/assets-raw/sprites/blocks/production/pulverizer-rotator.png differ
diff --git a/core/assets-raw/sprites/blocks/production/pulverizer.png b/core/assets-raw/sprites/blocks/production/pulverizer.png
index cc51a06fa5..ff0d2ad330 100644
Binary files a/core/assets-raw/sprites/blocks/production/pulverizer.png and b/core/assets-raw/sprites/blocks/production/pulverizer.png differ
diff --git a/core/assets-raw/sprites/blocks/production/pump-liquid.png b/core/assets-raw/sprites/blocks/production/pump-liquid.png
index e3d4c58e55..141b9591fe 100644
Binary files a/core/assets-raw/sprites/blocks/production/pump-liquid.png and b/core/assets-raw/sprites/blocks/production/pump-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/production/pyratite-mixer.png b/core/assets-raw/sprites/blocks/production/pyratite-mixer.png
index d7d33d09aa..fa1d0beb29 100644
Binary files a/core/assets-raw/sprites/blocks/production/pyratite-mixer.png and b/core/assets-raw/sprites/blocks/production/pyratite-mixer.png differ
diff --git a/core/assets-raw/sprites/blocks/production/separator-spinner.png b/core/assets-raw/sprites/blocks/production/separator-spinner.png
index d5e9c620c8..e09e119c3d 100644
Binary files a/core/assets-raw/sprites/blocks/production/separator-spinner.png and b/core/assets-raw/sprites/blocks/production/separator-spinner.png differ
diff --git a/core/assets-raw/sprites/blocks/production/silicon-smelter-top.png b/core/assets-raw/sprites/blocks/production/silicon-smelter-top.png
index 6120871f13..54b786e63a 100644
Binary files a/core/assets-raw/sprites/blocks/production/silicon-smelter-top.png and b/core/assets-raw/sprites/blocks/production/silicon-smelter-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/silicon-smelter.png b/core/assets-raw/sprites/blocks/production/silicon-smelter.png
index 72a92aea73..cbf1a9de5f 100644
Binary files a/core/assets-raw/sprites/blocks/production/silicon-smelter.png and b/core/assets-raw/sprites/blocks/production/silicon-smelter.png differ
diff --git a/core/assets-raw/sprites/blocks/production/spore-press-liquid.png b/core/assets-raw/sprites/blocks/production/spore-press-liquid.png
index 63944ceee2..c1e631410c 100644
Binary files a/core/assets-raw/sprites/blocks/production/spore-press-liquid.png and b/core/assets-raw/sprites/blocks/production/spore-press-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/production/spore-press-top.png b/core/assets-raw/sprites/blocks/production/spore-press-top.png
index 1856922336..86cc8ce5e6 100644
Binary files a/core/assets-raw/sprites/blocks/production/spore-press-top.png and b/core/assets-raw/sprites/blocks/production/spore-press-top.png differ
diff --git a/core/assets-raw/sprites/blocks/production/spore-press.png b/core/assets-raw/sprites/blocks/production/spore-press.png
index 414cebdb9c..cae8fbc65a 100644
Binary files a/core/assets-raw/sprites/blocks/production/spore-press.png and b/core/assets-raw/sprites/blocks/production/spore-press.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/container.png b/core/assets-raw/sprites/blocks/storage/container.png
index ca98f41fd3..368cec3a21 100644
Binary files a/core/assets-raw/sprites/blocks/storage/container.png and b/core/assets-raw/sprites/blocks/storage/container.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/core-foundation.png b/core/assets-raw/sprites/blocks/storage/core-foundation.png
index 1304e5500d..36569d588d 100644
Binary files a/core/assets-raw/sprites/blocks/storage/core-foundation.png and b/core/assets-raw/sprites/blocks/storage/core-foundation.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/core-nucleus.png b/core/assets-raw/sprites/blocks/storage/core-nucleus.png
index d92d7033ea..8b35a0834f 100644
Binary files a/core/assets-raw/sprites/blocks/storage/core-nucleus.png and b/core/assets-raw/sprites/blocks/storage/core-nucleus.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/core-shard.png b/core/assets-raw/sprites/blocks/storage/core-shard.png
index 44c445aaa8..eeff019491 100644
Binary files a/core/assets-raw/sprites/blocks/storage/core-shard.png and b/core/assets-raw/sprites/blocks/storage/core-shard.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/unloader-center.png b/core/assets-raw/sprites/blocks/storage/unloader-center.png
index e5a2fffd15..de4959a223 100644
Binary files a/core/assets-raw/sprites/blocks/storage/unloader-center.png and b/core/assets-raw/sprites/blocks/storage/unloader-center.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/unloader.png b/core/assets-raw/sprites/blocks/storage/unloader.png
index 39ec7a30a5..7edb57cd61 100644
Binary files a/core/assets-raw/sprites/blocks/storage/unloader.png and b/core/assets-raw/sprites/blocks/storage/unloader.png differ
diff --git a/core/assets-raw/sprites/blocks/storage/vault.png b/core/assets-raw/sprites/blocks/storage/vault.png
index e82235cc75..a9021d770a 100644
Binary files a/core/assets-raw/sprites/blocks/storage/vault.png and b/core/assets-raw/sprites/blocks/storage/vault.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/arc.png b/core/assets-raw/sprites/blocks/turrets/arc.png
index b90265b520..f214c4aa0f 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/arc.png and b/core/assets-raw/sprites/blocks/turrets/arc.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/bases/block-1.png b/core/assets-raw/sprites/blocks/turrets/bases/block-1.png
index 36ec5be9a8..4a5ae359e8 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/bases/block-1.png and b/core/assets-raw/sprites/blocks/turrets/bases/block-1.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/bases/block-2.png b/core/assets-raw/sprites/blocks/turrets/bases/block-2.png
index ec0fba351a..16d6d1d98a 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/bases/block-2.png and b/core/assets-raw/sprites/blocks/turrets/bases/block-2.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/bases/block-3.png b/core/assets-raw/sprites/blocks/turrets/bases/block-3.png
index 1b01ddd33f..cade0ba490 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/bases/block-3.png and b/core/assets-raw/sprites/blocks/turrets/bases/block-3.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/bases/block-4.png b/core/assets-raw/sprites/blocks/turrets/bases/block-4.png
index 0cf01f72a9..1ff1bb603b 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/bases/block-4.png and b/core/assets-raw/sprites/blocks/turrets/bases/block-4.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/cyclone.png b/core/assets-raw/sprites/blocks/turrets/cyclone.png
index e2f0dbbfcb..7e1ae002b1 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/cyclone.png and b/core/assets-raw/sprites/blocks/turrets/cyclone.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/duo.png b/core/assets-raw/sprites/blocks/turrets/duo.png
index c9717775d6..c234ccb38c 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/duo.png and b/core/assets-raw/sprites/blocks/turrets/duo.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/fuse.png b/core/assets-raw/sprites/blocks/turrets/fuse.png
index 39fedd6b51..7322029f77 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/fuse.png and b/core/assets-raw/sprites/blocks/turrets/fuse.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/hail.png b/core/assets-raw/sprites/blocks/turrets/hail.png
index ffa58615d2..4333d6ef7e 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/hail.png and b/core/assets-raw/sprites/blocks/turrets/hail.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/lancer.png b/core/assets-raw/sprites/blocks/turrets/lancer.png
index 60f667d960..d3bbc2d909 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/lancer.png and b/core/assets-raw/sprites/blocks/turrets/lancer.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/meltdown.png b/core/assets-raw/sprites/blocks/turrets/meltdown.png
index 824443f1d5..68c1b15347 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/meltdown.png and b/core/assets-raw/sprites/blocks/turrets/meltdown.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/ripple.png b/core/assets-raw/sprites/blocks/turrets/ripple.png
index 9013b07a94..92bd3db328 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/ripple.png and b/core/assets-raw/sprites/blocks/turrets/ripple.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/salvo.png b/core/assets-raw/sprites/blocks/turrets/salvo.png
index c15a9d47cd..63db15cded 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/salvo.png and b/core/assets-raw/sprites/blocks/turrets/salvo.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/scatter.png b/core/assets-raw/sprites/blocks/turrets/scatter.png
index 3a9caea04a..82d01d22c2 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/scatter.png and b/core/assets-raw/sprites/blocks/turrets/scatter.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/scorch.png b/core/assets-raw/sprites/blocks/turrets/scorch.png
index 1ab0fbda81..54616726e5 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/scorch.png and b/core/assets-raw/sprites/blocks/turrets/scorch.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/spectre.png b/core/assets-raw/sprites/blocks/turrets/spectre.png
index 71ab4e5d0e..f85734b19d 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/spectre.png and b/core/assets-raw/sprites/blocks/turrets/spectre.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/swarmer.png b/core/assets-raw/sprites/blocks/turrets/swarmer.png
index 60aeb73158..8caefc415a 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/swarmer.png and b/core/assets-raw/sprites/blocks/turrets/swarmer.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/wave-liquid.png b/core/assets-raw/sprites/blocks/turrets/wave-liquid.png
index 289f824356..77930b7d14 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/wave-liquid.png and b/core/assets-raw/sprites/blocks/turrets/wave-liquid.png differ
diff --git a/core/assets-raw/sprites/blocks/turrets/wave.png b/core/assets-raw/sprites/blocks/turrets/wave.png
index 458b42bfb8..f7823cc437 100644
Binary files a/core/assets-raw/sprites/blocks/turrets/wave.png and b/core/assets-raw/sprites/blocks/turrets/wave.png differ
diff --git a/core/assets-raw/sprites/blocks/units/command-center.png b/core/assets-raw/sprites/blocks/units/command-center.png
index 767c8b8da2..1a829c1cfd 100644
Binary files a/core/assets-raw/sprites/blocks/units/command-center.png and b/core/assets-raw/sprites/blocks/units/command-center.png differ
diff --git a/core/assets-raw/sprites/blocks/units/crawler-factory-top.png b/core/assets-raw/sprites/blocks/units/crawler-factory-top.png
index 32c053ef19..e517f1b7ea 100644
Binary files a/core/assets-raw/sprites/blocks/units/crawler-factory-top.png and b/core/assets-raw/sprites/blocks/units/crawler-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/crawler-factory.png b/core/assets-raw/sprites/blocks/units/crawler-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/crawler-factory.png and b/core/assets-raw/sprites/blocks/units/crawler-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/dagger-factory-top.png b/core/assets-raw/sprites/blocks/units/dagger-factory-top.png
index 3297ef4435..98623023ae 100644
Binary files a/core/assets-raw/sprites/blocks/units/dagger-factory-top.png and b/core/assets-raw/sprites/blocks/units/dagger-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/dagger-factory.png b/core/assets-raw/sprites/blocks/units/dagger-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/dagger-factory.png and b/core/assets-raw/sprites/blocks/units/dagger-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/draug-factory-top.png b/core/assets-raw/sprites/blocks/units/draug-factory-top.png
index c20fe8d186..20dccd2958 100644
Binary files a/core/assets-raw/sprites/blocks/units/draug-factory-top.png and b/core/assets-raw/sprites/blocks/units/draug-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/draug-factory.png b/core/assets-raw/sprites/blocks/units/draug-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/draug-factory.png and b/core/assets-raw/sprites/blocks/units/draug-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/fortress-factory-top.png b/core/assets-raw/sprites/blocks/units/fortress-factory-top.png
index 0686a2c329..bfa0af2088 100644
Binary files a/core/assets-raw/sprites/blocks/units/fortress-factory-top.png and b/core/assets-raw/sprites/blocks/units/fortress-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/fortress-factory.png b/core/assets-raw/sprites/blocks/units/fortress-factory.png
index 136bf7754d..75d2917c92 100644
Binary files a/core/assets-raw/sprites/blocks/units/fortress-factory.png and b/core/assets-raw/sprites/blocks/units/fortress-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/ghoul-factory-top.png b/core/assets-raw/sprites/blocks/units/ghoul-factory-top.png
index 0686a2c329..bfa0af2088 100644
Binary files a/core/assets-raw/sprites/blocks/units/ghoul-factory-top.png and b/core/assets-raw/sprites/blocks/units/ghoul-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/ghoul-factory.png b/core/assets-raw/sprites/blocks/units/ghoul-factory.png
index 38566929b8..608a1e396c 100644
Binary files a/core/assets-raw/sprites/blocks/units/ghoul-factory.png and b/core/assets-raw/sprites/blocks/units/ghoul-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/phantom-factory-top.png b/core/assets-raw/sprites/blocks/units/phantom-factory-top.png
index 1107f27d6c..8a6a52c48c 100644
Binary files a/core/assets-raw/sprites/blocks/units/phantom-factory-top.png and b/core/assets-raw/sprites/blocks/units/phantom-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/phantom-factory.png b/core/assets-raw/sprites/blocks/units/phantom-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/phantom-factory.png and b/core/assets-raw/sprites/blocks/units/phantom-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/rally-point.png b/core/assets-raw/sprites/blocks/units/rally-point.png
index 1d0921ec06..493d90df1d 100644
Binary files a/core/assets-raw/sprites/blocks/units/rally-point.png and b/core/assets-raw/sprites/blocks/units/rally-point.png differ
diff --git a/core/assets-raw/sprites/blocks/units/repair-point-base.png b/core/assets-raw/sprites/blocks/units/repair-point-base.png
index d5ead6f001..5cc56cb24b 100644
Binary files a/core/assets-raw/sprites/blocks/units/repair-point-base.png and b/core/assets-raw/sprites/blocks/units/repair-point-base.png differ
diff --git a/core/assets-raw/sprites/blocks/units/repair-point.png b/core/assets-raw/sprites/blocks/units/repair-point.png
index 5fe3b143fd..2cadeae5cb 100644
Binary files a/core/assets-raw/sprites/blocks/units/repair-point.png and b/core/assets-raw/sprites/blocks/units/repair-point.png differ
diff --git a/core/assets-raw/sprites/blocks/units/revenant-factory-top.png b/core/assets-raw/sprites/blocks/units/revenant-factory-top.png
index 79ca249876..ff912d5fb5 100644
Binary files a/core/assets-raw/sprites/blocks/units/revenant-factory-top.png and b/core/assets-raw/sprites/blocks/units/revenant-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/revenant-factory.png b/core/assets-raw/sprites/blocks/units/revenant-factory.png
index acc7389987..44582b5716 100644
Binary files a/core/assets-raw/sprites/blocks/units/revenant-factory.png and b/core/assets-raw/sprites/blocks/units/revenant-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/spirit-factory-top.png b/core/assets-raw/sprites/blocks/units/spirit-factory-top.png
index a825a19d9b..fe0bf57a17 100644
Binary files a/core/assets-raw/sprites/blocks/units/spirit-factory-top.png and b/core/assets-raw/sprites/blocks/units/spirit-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/spirit-factory.png b/core/assets-raw/sprites/blocks/units/spirit-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/spirit-factory.png and b/core/assets-raw/sprites/blocks/units/spirit-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/titan-factory-top.png b/core/assets-raw/sprites/blocks/units/titan-factory-top.png
index 0686a2c329..bfa0af2088 100644
Binary files a/core/assets-raw/sprites/blocks/units/titan-factory-top.png and b/core/assets-raw/sprites/blocks/units/titan-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/titan-factory.png b/core/assets-raw/sprites/blocks/units/titan-factory.png
index 83eecc696c..a112348ba1 100644
Binary files a/core/assets-raw/sprites/blocks/units/titan-factory.png and b/core/assets-raw/sprites/blocks/units/titan-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/units/wraith-factory-top.png b/core/assets-raw/sprites/blocks/units/wraith-factory-top.png
index f1075f1097..adf5e63285 100644
Binary files a/core/assets-raw/sprites/blocks/units/wraith-factory-top.png and b/core/assets-raw/sprites/blocks/units/wraith-factory-top.png differ
diff --git a/core/assets-raw/sprites/blocks/units/wraith-factory.png b/core/assets-raw/sprites/blocks/units/wraith-factory.png
index 72105e12eb..c421ec3d41 100644
Binary files a/core/assets-raw/sprites/blocks/units/wraith-factory.png and b/core/assets-raw/sprites/blocks/units/wraith-factory.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/copper-wall-large.png b/core/assets-raw/sprites/blocks/walls/copper-wall-large.png
index e3b5102636..dbc59dd808 100644
Binary files a/core/assets-raw/sprites/blocks/walls/copper-wall-large.png and b/core/assets-raw/sprites/blocks/walls/copper-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/copper-wall.png b/core/assets-raw/sprites/blocks/walls/copper-wall.png
index 6105f1ecf3..3f4ae89802 100644
Binary files a/core/assets-raw/sprites/blocks/walls/copper-wall.png and b/core/assets-raw/sprites/blocks/walls/copper-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/door-large-open.png b/core/assets-raw/sprites/blocks/walls/door-large-open.png
index b66dfdace9..b099e0df6d 100644
Binary files a/core/assets-raw/sprites/blocks/walls/door-large-open.png and b/core/assets-raw/sprites/blocks/walls/door-large-open.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/door-large.png b/core/assets-raw/sprites/blocks/walls/door-large.png
index 0736d8ca38..84d035c251 100644
Binary files a/core/assets-raw/sprites/blocks/walls/door-large.png and b/core/assets-raw/sprites/blocks/walls/door-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/door-open.png b/core/assets-raw/sprites/blocks/walls/door-open.png
index 0fbe23ebac..c4f7b79495 100644
Binary files a/core/assets-raw/sprites/blocks/walls/door-open.png and b/core/assets-raw/sprites/blocks/walls/door-open.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/door.png b/core/assets-raw/sprites/blocks/walls/door.png
index 2218e23067..17b214671a 100644
Binary files a/core/assets-raw/sprites/blocks/walls/door.png and b/core/assets-raw/sprites/blocks/walls/door.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/insulator-wall-large.png b/core/assets-raw/sprites/blocks/walls/insulator-wall-large.png
index b1084b553b..71946a7282 100644
Binary files a/core/assets-raw/sprites/blocks/walls/insulator-wall-large.png and b/core/assets-raw/sprites/blocks/walls/insulator-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/insulator-wall.png b/core/assets-raw/sprites/blocks/walls/insulator-wall.png
index 64913542e3..965155a934 100644
Binary files a/core/assets-raw/sprites/blocks/walls/insulator-wall.png and b/core/assets-raw/sprites/blocks/walls/insulator-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/phase-wall-large.png b/core/assets-raw/sprites/blocks/walls/phase-wall-large.png
index 3ebc1d33e0..daac191bd4 100644
Binary files a/core/assets-raw/sprites/blocks/walls/phase-wall-large.png and b/core/assets-raw/sprites/blocks/walls/phase-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/phase-wall.png b/core/assets-raw/sprites/blocks/walls/phase-wall.png
index 7566b2b17a..9cd08b78b2 100644
Binary files a/core/assets-raw/sprites/blocks/walls/phase-wall.png and b/core/assets-raw/sprites/blocks/walls/phase-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/plastanium-wall-large.png b/core/assets-raw/sprites/blocks/walls/plastanium-wall-large.png
index 6ec6b6f615..c819b340c4 100644
Binary files a/core/assets-raw/sprites/blocks/walls/plastanium-wall-large.png and b/core/assets-raw/sprites/blocks/walls/plastanium-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/plastanium-wall.png b/core/assets-raw/sprites/blocks/walls/plastanium-wall.png
index 1dade2db43..717e32723f 100644
Binary files a/core/assets-raw/sprites/blocks/walls/plastanium-wall.png and b/core/assets-raw/sprites/blocks/walls/plastanium-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/surge-wall-large.png b/core/assets-raw/sprites/blocks/walls/surge-wall-large.png
index 2c17759178..285cfb52e8 100644
Binary files a/core/assets-raw/sprites/blocks/walls/surge-wall-large.png and b/core/assets-raw/sprites/blocks/walls/surge-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/surge-wall.png b/core/assets-raw/sprites/blocks/walls/surge-wall.png
index 154fb95ce8..786ea64867 100644
Binary files a/core/assets-raw/sprites/blocks/walls/surge-wall.png and b/core/assets-raw/sprites/blocks/walls/surge-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/thorium-wall-large.png b/core/assets-raw/sprites/blocks/walls/thorium-wall-large.png
index 0a6f50e3ba..80564101f8 100644
Binary files a/core/assets-raw/sprites/blocks/walls/thorium-wall-large.png and b/core/assets-raw/sprites/blocks/walls/thorium-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/thorium-wall.png b/core/assets-raw/sprites/blocks/walls/thorium-wall.png
index e4ccef59f4..4fb0aaf1da 100644
Binary files a/core/assets-raw/sprites/blocks/walls/thorium-wall.png and b/core/assets-raw/sprites/blocks/walls/thorium-wall.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/titanium-wall-large.png b/core/assets-raw/sprites/blocks/walls/titanium-wall-large.png
index 69194bf884..2bf8ad2aec 100644
Binary files a/core/assets-raw/sprites/blocks/walls/titanium-wall-large.png and b/core/assets-raw/sprites/blocks/walls/titanium-wall-large.png differ
diff --git a/core/assets-raw/sprites/blocks/walls/titanium-wall.png b/core/assets-raw/sprites/blocks/walls/titanium-wall.png
index 8eca3fe8a4..6f3cb08df8 100644
Binary files a/core/assets-raw/sprites/blocks/walls/titanium-wall.png and b/core/assets-raw/sprites/blocks/walls/titanium-wall.png differ
diff --git a/core/assets-raw/sprites/editor/block-border-editor.png b/core/assets-raw/sprites/editor/block-border-editor.png
index 415c5a6849..daf204a949 100644
Binary files a/core/assets-raw/sprites/editor/block-border-editor.png and b/core/assets-raw/sprites/editor/block-border-editor.png differ
diff --git a/core/assets-raw/sprites/editor/clear-editor.png b/core/assets-raw/sprites/editor/clear-editor.png
index a804d435b6..1a3a506d64 100644
Binary files a/core/assets-raw/sprites/editor/clear-editor.png and b/core/assets-raw/sprites/editor/clear-editor.png differ
diff --git a/core/assets-raw/sprites/effects/circle-end.png b/core/assets-raw/sprites/effects/circle-end.png
index e63f104191..a80d7e2dd1 100644
Binary files a/core/assets-raw/sprites/effects/circle-end.png and b/core/assets-raw/sprites/effects/circle-end.png differ
diff --git a/core/assets-raw/sprites/effects/circle-mid.png b/core/assets-raw/sprites/effects/circle-mid.png
index c6805a606c..12111a64a0 100644
Binary files a/core/assets-raw/sprites/effects/circle-mid.png and b/core/assets-raw/sprites/effects/circle-mid.png differ
diff --git a/core/assets-raw/sprites/effects/circle-shadow.png b/core/assets-raw/sprites/effects/circle-shadow.png
index 129b74296d..15a822572f 100644
Binary files a/core/assets-raw/sprites/effects/circle-shadow.png and b/core/assets-raw/sprites/effects/circle-shadow.png differ
diff --git a/core/assets-raw/sprites/effects/error.png b/core/assets-raw/sprites/effects/error.png
index f784bec923..005c4056d3 100644
Binary files a/core/assets-raw/sprites/effects/error.png and b/core/assets-raw/sprites/effects/error.png differ
diff --git a/core/assets-raw/sprites/effects/laser-end.png b/core/assets-raw/sprites/effects/laser-end.png
index dc90d3620b..f1167ff662 100644
Binary files a/core/assets-raw/sprites/effects/laser-end.png and b/core/assets-raw/sprites/effects/laser-end.png differ
diff --git a/core/assets-raw/sprites/effects/minelaser-end.png b/core/assets-raw/sprites/effects/minelaser-end.png
index 46ab615894..820ab782f6 100644
Binary files a/core/assets-raw/sprites/effects/minelaser-end.png and b/core/assets-raw/sprites/effects/minelaser-end.png differ
diff --git a/core/assets-raw/sprites/effects/minelaser.png b/core/assets-raw/sprites/effects/minelaser.png
index 21acfa15d4..5db610651a 100644
Binary files a/core/assets-raw/sprites/effects/minelaser.png and b/core/assets-raw/sprites/effects/minelaser.png differ
diff --git a/core/assets-raw/sprites/items/item-blast-compound.png b/core/assets-raw/sprites/items/item-blast-compound.png
index c14eb34b11..cc45da15db 100644
Binary files a/core/assets-raw/sprites/items/item-blast-compound.png and b/core/assets-raw/sprites/items/item-blast-compound.png differ
diff --git a/core/assets-raw/sprites/items/item-coal.png b/core/assets-raw/sprites/items/item-coal.png
index 13727cd802..13df71b603 100644
Binary files a/core/assets-raw/sprites/items/item-coal.png and b/core/assets-raw/sprites/items/item-coal.png differ
diff --git a/core/assets-raw/sprites/items/item-copper.png b/core/assets-raw/sprites/items/item-copper.png
index 664c9cc6f3..74f6bd94ed 100644
Binary files a/core/assets-raw/sprites/items/item-copper.png and b/core/assets-raw/sprites/items/item-copper.png differ
diff --git a/core/assets-raw/sprites/items/item-graphite.png b/core/assets-raw/sprites/items/item-graphite.png
index 68b074bdc7..47bbcb1506 100644
Binary files a/core/assets-raw/sprites/items/item-graphite.png and b/core/assets-raw/sprites/items/item-graphite.png differ
diff --git a/core/assets-raw/sprites/items/item-lead.png b/core/assets-raw/sprites/items/item-lead.png
index ce09ac6185..35595097ca 100644
Binary files a/core/assets-raw/sprites/items/item-lead.png and b/core/assets-raw/sprites/items/item-lead.png differ
diff --git a/core/assets-raw/sprites/items/item-metaglass.png b/core/assets-raw/sprites/items/item-metaglass.png
index 3c45a8873f..6b6d36240f 100644
Binary files a/core/assets-raw/sprites/items/item-metaglass.png and b/core/assets-raw/sprites/items/item-metaglass.png differ
diff --git a/core/assets-raw/sprites/items/item-phase-fabric.png b/core/assets-raw/sprites/items/item-phase-fabric.png
index 6f226c7a97..174215dd86 100644
Binary files a/core/assets-raw/sprites/items/item-phase-fabric.png and b/core/assets-raw/sprites/items/item-phase-fabric.png differ
diff --git a/core/assets-raw/sprites/items/item-plastanium.png b/core/assets-raw/sprites/items/item-plastanium.png
index 6ce75034f3..3d51e7562e 100644
Binary files a/core/assets-raw/sprites/items/item-plastanium.png and b/core/assets-raw/sprites/items/item-plastanium.png differ
diff --git a/core/assets-raw/sprites/items/item-pyratite.png b/core/assets-raw/sprites/items/item-pyratite.png
index eec30df17d..77012a522d 100644
Binary files a/core/assets-raw/sprites/items/item-pyratite.png and b/core/assets-raw/sprites/items/item-pyratite.png differ
diff --git a/core/assets-raw/sprites/items/item-sand.png b/core/assets-raw/sprites/items/item-sand.png
index ac94898030..ed025f9931 100644
Binary files a/core/assets-raw/sprites/items/item-sand.png and b/core/assets-raw/sprites/items/item-sand.png differ
diff --git a/core/assets-raw/sprites/items/item-scrap.png b/core/assets-raw/sprites/items/item-scrap.png
index 0de9f03656..45df8819fc 100644
Binary files a/core/assets-raw/sprites/items/item-scrap.png and b/core/assets-raw/sprites/items/item-scrap.png differ
diff --git a/core/assets-raw/sprites/items/item-silicon.png b/core/assets-raw/sprites/items/item-silicon.png
index 5d4cfab004..9014611f2c 100644
Binary files a/core/assets-raw/sprites/items/item-silicon.png and b/core/assets-raw/sprites/items/item-silicon.png differ
diff --git a/core/assets-raw/sprites/items/item-spore-pod.png b/core/assets-raw/sprites/items/item-spore-pod.png
index aa69408ee7..08fab9d2e8 100644
Binary files a/core/assets-raw/sprites/items/item-spore-pod.png and b/core/assets-raw/sprites/items/item-spore-pod.png differ
diff --git a/core/assets-raw/sprites/items/item-surge-alloy.png b/core/assets-raw/sprites/items/item-surge-alloy.png
index 9fc6aa4561..789012ef13 100644
Binary files a/core/assets-raw/sprites/items/item-surge-alloy.png and b/core/assets-raw/sprites/items/item-surge-alloy.png differ
diff --git a/core/assets-raw/sprites/items/item-thorium.png b/core/assets-raw/sprites/items/item-thorium.png
index 2cd39c8f49..b548c5acf7 100644
Binary files a/core/assets-raw/sprites/items/item-thorium.png and b/core/assets-raw/sprites/items/item-thorium.png differ
diff --git a/core/assets-raw/sprites/items/item-titanium.png b/core/assets-raw/sprites/items/item-titanium.png
index 3e15e1e7c7..b1dd24233a 100644
Binary files a/core/assets-raw/sprites/items/item-titanium.png and b/core/assets-raw/sprites/items/item-titanium.png differ
diff --git a/core/assets-raw/sprites/items/liquid-cryofluid.png b/core/assets-raw/sprites/items/liquid-cryofluid.png
index 198c21ad17..ada0f5b06d 100644
Binary files a/core/assets-raw/sprites/items/liquid-cryofluid.png and b/core/assets-raw/sprites/items/liquid-cryofluid.png differ
diff --git a/core/assets-raw/sprites/items/liquid-oil.png b/core/assets-raw/sprites/items/liquid-oil.png
index e0fbc07cf2..16ea1670b4 100644
Binary files a/core/assets-raw/sprites/items/liquid-oil.png and b/core/assets-raw/sprites/items/liquid-oil.png differ
diff --git a/core/assets-raw/sprites/items/liquid-slag.png b/core/assets-raw/sprites/items/liquid-slag.png
index 87c2a41d07..c482af93dd 100644
Binary files a/core/assets-raw/sprites/items/liquid-slag.png and b/core/assets-raw/sprites/items/liquid-slag.png differ
diff --git a/core/assets-raw/sprites/items/liquid-water.png b/core/assets-raw/sprites/items/liquid-water.png
index 025c812967..a822b86412 100644
Binary files a/core/assets-raw/sprites/items/liquid-water.png and b/core/assets-raw/sprites/items/liquid-water.png differ
diff --git a/core/assets-raw/sprites/mechs/mechs/alpha-mech.png b/core/assets-raw/sprites/mechs/mechs/alpha-mech.png
index 623b8e7791..4cf40e53ec 100644
Binary files a/core/assets-raw/sprites/mechs/mechs/alpha-mech.png and b/core/assets-raw/sprites/mechs/mechs/alpha-mech.png differ
diff --git a/core/assets-raw/sprites/mechs/mechs/delta-mech.png b/core/assets-raw/sprites/mechs/mechs/delta-mech.png
index 826e9e1bec..adf85f8795 100644
Binary files a/core/assets-raw/sprites/mechs/mechs/delta-mech.png and b/core/assets-raw/sprites/mechs/mechs/delta-mech.png differ
diff --git a/core/assets-raw/sprites/mechs/mechs/omega-mech.png b/core/assets-raw/sprites/mechs/mechs/omega-mech.png
index 2129eb3c08..c87d423365 100644
Binary files a/core/assets-raw/sprites/mechs/mechs/omega-mech.png and b/core/assets-raw/sprites/mechs/mechs/omega-mech.png differ
diff --git a/core/assets-raw/sprites/mechs/mechs/tau-mech.png b/core/assets-raw/sprites/mechs/mechs/tau-mech.png
index 6f23a1364c..0dfdea349c 100644
Binary files a/core/assets-raw/sprites/mechs/mechs/tau-mech.png and b/core/assets-raw/sprites/mechs/mechs/tau-mech.png differ
diff --git a/core/assets-raw/sprites/mechs/ships/dart-ship.png b/core/assets-raw/sprites/mechs/ships/dart-ship.png
index e9567d8ecd..a97796180e 100644
Binary files a/core/assets-raw/sprites/mechs/ships/dart-ship.png and b/core/assets-raw/sprites/mechs/ships/dart-ship.png differ
diff --git a/core/assets-raw/sprites/mechs/ships/glaive-ship.png b/core/assets-raw/sprites/mechs/ships/glaive-ship.png
index 6374f07725..b5434e8c2a 100644
Binary files a/core/assets-raw/sprites/mechs/ships/glaive-ship.png and b/core/assets-raw/sprites/mechs/ships/glaive-ship.png differ
diff --git a/core/assets-raw/sprites/mechs/ships/javelin-ship.png b/core/assets-raw/sprites/mechs/ships/javelin-ship.png
index a9dff9a99b..ed8ac66ec3 100644
Binary files a/core/assets-raw/sprites/mechs/ships/javelin-ship.png and b/core/assets-raw/sprites/mechs/ships/javelin-ship.png differ
diff --git a/core/assets-raw/sprites/mechs/ships/trident-ship.png b/core/assets-raw/sprites/mechs/ships/trident-ship.png
index e7fc0b88b1..dcbdd69f1b 100644
Binary files a/core/assets-raw/sprites/mechs/ships/trident-ship.png and b/core/assets-raw/sprites/mechs/ships/trident-ship.png differ
diff --git a/core/assets-raw/sprites/shapes/circle.png b/core/assets-raw/sprites/shapes/circle.png
index e2e6c0b2ec..75b0b0acda 100644
Binary files a/core/assets-raw/sprites/shapes/circle.png and b/core/assets-raw/sprites/shapes/circle.png differ
diff --git a/core/assets-raw/sprites/shapes/shape-3.png b/core/assets-raw/sprites/shapes/shape-3.png
index 5e98717513..d8dfb1f9cf 100644
Binary files a/core/assets-raw/sprites/shapes/shape-3.png and b/core/assets-raw/sprites/shapes/shape-3.png differ
diff --git a/core/assets-raw/sprites/ui/alpha-bg.png b/core/assets-raw/sprites/ui/alpha-bg.png
index 9cbc32b1fe..22a7e1eb92 100644
Binary files a/core/assets-raw/sprites/ui/alpha-bg.png and b/core/assets-raw/sprites/ui/alpha-bg.png differ
diff --git a/core/assets-raw/sprites/ui/button-disabled.9.png b/core/assets-raw/sprites/ui/button-disabled.9.png
index a4602889e8..a1532fa6e9 100644
Binary files a/core/assets-raw/sprites/ui/button-disabled.9.png and b/core/assets-raw/sprites/ui/button-disabled.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-down.9.png b/core/assets-raw/sprites/ui/button-down.9.png
index 1cc0db6249..2e4808729f 100644
Binary files a/core/assets-raw/sprites/ui/button-down.9.png and b/core/assets-raw/sprites/ui/button-down.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-edge-1.9.png b/core/assets-raw/sprites/ui/button-edge-1.9.png
index 98f588a553..af8447dda1 100644
Binary files a/core/assets-raw/sprites/ui/button-edge-1.9.png and b/core/assets-raw/sprites/ui/button-edge-1.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-edge-2.9.png b/core/assets-raw/sprites/ui/button-edge-2.9.png
index 745c279f10..1b8702a15a 100644
Binary files a/core/assets-raw/sprites/ui/button-edge-2.9.png and b/core/assets-raw/sprites/ui/button-edge-2.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-edge-3.9.png b/core/assets-raw/sprites/ui/button-edge-3.9.png
index 344cfc07a9..b54c791163 100644
Binary files a/core/assets-raw/sprites/ui/button-edge-3.9.png and b/core/assets-raw/sprites/ui/button-edge-3.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-edge-4.9.png b/core/assets-raw/sprites/ui/button-edge-4.9.png
index 831e94fd5e..c80ec376f6 100644
Binary files a/core/assets-raw/sprites/ui/button-edge-4.9.png and b/core/assets-raw/sprites/ui/button-edge-4.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-edge-over-4.9.png b/core/assets-raw/sprites/ui/button-edge-over-4.9.png
index 92c520676a..ab288bee13 100644
Binary files a/core/assets-raw/sprites/ui/button-edge-over-4.9.png and b/core/assets-raw/sprites/ui/button-edge-over-4.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-over.9.png b/core/assets-raw/sprites/ui/button-over.9.png
index 7effe30ffa..7e2213087d 100644
Binary files a/core/assets-raw/sprites/ui/button-over.9.png and b/core/assets-raw/sprites/ui/button-over.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-red.9.png b/core/assets-raw/sprites/ui/button-red.9.png
index 621dda2ca6..89098436ff 100644
Binary files a/core/assets-raw/sprites/ui/button-red.9.png and b/core/assets-raw/sprites/ui/button-red.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-right-down.9.png b/core/assets-raw/sprites/ui/button-right-down.9.png
index c410ca7f44..00b41dabe4 100644
Binary files a/core/assets-raw/sprites/ui/button-right-down.9.png and b/core/assets-raw/sprites/ui/button-right-down.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-right-over.9.png b/core/assets-raw/sprites/ui/button-right-over.9.png
index 2f4a6a05bb..a8f83eee16 100644
Binary files a/core/assets-raw/sprites/ui/button-right-over.9.png and b/core/assets-raw/sprites/ui/button-right-over.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-right.9.png b/core/assets-raw/sprites/ui/button-right.9.png
index dc88b76b54..e43fe0c11c 100644
Binary files a/core/assets-raw/sprites/ui/button-right.9.png and b/core/assets-raw/sprites/ui/button-right.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-select.9.png b/core/assets-raw/sprites/ui/button-select.9.png
index a437c5b58d..8011cad610 100644
Binary files a/core/assets-raw/sprites/ui/button-select.9.png and b/core/assets-raw/sprites/ui/button-select.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-square-down.9.png b/core/assets-raw/sprites/ui/button-square-down.9.png
index 44f9870ac6..4c81be0884 100644
Binary files a/core/assets-raw/sprites/ui/button-square-down.9.png and b/core/assets-raw/sprites/ui/button-square-down.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-square-over.9.png b/core/assets-raw/sprites/ui/button-square-over.9.png
index 4bdc6aa350..9d197296b3 100644
Binary files a/core/assets-raw/sprites/ui/button-square-over.9.png and b/core/assets-raw/sprites/ui/button-square-over.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-square.9.png b/core/assets-raw/sprites/ui/button-square.9.png
index a137425df9..8c79235588 100644
Binary files a/core/assets-raw/sprites/ui/button-square.9.png and b/core/assets-raw/sprites/ui/button-square.9.png differ
diff --git a/core/assets-raw/sprites/ui/button-trans.9.png b/core/assets-raw/sprites/ui/button-trans.9.png
index 39d840e1a2..fc179a9e9f 100644
Binary files a/core/assets-raw/sprites/ui/button-trans.9.png and b/core/assets-raw/sprites/ui/button-trans.9.png differ
diff --git a/core/assets-raw/sprites/ui/button.9.png b/core/assets-raw/sprites/ui/button.9.png
index 19e13554cf..c8fa691c60 100644
Binary files a/core/assets-raw/sprites/ui/button.9.png and b/core/assets-raw/sprites/ui/button.9.png differ
diff --git a/core/assets-raw/sprites/ui/check-disabled.png b/core/assets-raw/sprites/ui/check-disabled.png
index 53d7724049..a2f6137cbf 100644
Binary files a/core/assets-raw/sprites/ui/check-disabled.png and b/core/assets-raw/sprites/ui/check-disabled.png differ
diff --git a/core/assets-raw/sprites/ui/check-off.png b/core/assets-raw/sprites/ui/check-off.png
index 31f800e66f..94deb45bb7 100644
Binary files a/core/assets-raw/sprites/ui/check-off.png and b/core/assets-raw/sprites/ui/check-off.png differ
diff --git a/core/assets-raw/sprites/ui/check-on-disabled.png b/core/assets-raw/sprites/ui/check-on-disabled.png
index 8eadb568e9..f42ee9409c 100644
Binary files a/core/assets-raw/sprites/ui/check-on-disabled.png and b/core/assets-raw/sprites/ui/check-on-disabled.png differ
diff --git a/core/assets-raw/sprites/ui/check-on-over.png b/core/assets-raw/sprites/ui/check-on-over.png
index 5911e9ea4e..6b5d91a61e 100644
Binary files a/core/assets-raw/sprites/ui/check-on-over.png and b/core/assets-raw/sprites/ui/check-on-over.png differ
diff --git a/core/assets-raw/sprites/ui/check-on.png b/core/assets-raw/sprites/ui/check-on.png
index 424e7c324f..807abeaf6b 100644
Binary files a/core/assets-raw/sprites/ui/check-on.png and b/core/assets-raw/sprites/ui/check-on.png differ
diff --git a/core/assets-raw/sprites/ui/check-over.png b/core/assets-raw/sprites/ui/check-over.png
index 39611ce341..64cef03a18 100644
Binary files a/core/assets-raw/sprites/ui/check-over.png and b/core/assets-raw/sprites/ui/check-over.png differ
diff --git a/core/assets-raw/sprites/ui/discord-banner.png b/core/assets-raw/sprites/ui/discord-banner.png
index 7d1a2d4385..165705e368 100644
Binary files a/core/assets-raw/sprites/ui/discord-banner.png and b/core/assets-raw/sprites/ui/discord-banner.png differ
diff --git a/core/assets-raw/sprites/ui/flat-down-base.9.png b/core/assets-raw/sprites/ui/flat-down-base.9.png
index 10de55d3af..9a96a4a2cd 100644
Binary files a/core/assets-raw/sprites/ui/flat-down-base.9.png and b/core/assets-raw/sprites/ui/flat-down-base.9.png differ
diff --git a/core/assets-raw/sprites/ui/info-banner.png b/core/assets-raw/sprites/ui/info-banner.png
index 0ee4c4ad83..51942acebf 100644
Binary files a/core/assets-raw/sprites/ui/info-banner.png and b/core/assets-raw/sprites/ui/info-banner.png differ
diff --git a/core/assets-raw/sprites/ui/inventory.9.png b/core/assets-raw/sprites/ui/inventory.9.png
index 0bbff5a0fe..97990b9253 100644
Binary files a/core/assets-raw/sprites/ui/inventory.9.png and b/core/assets-raw/sprites/ui/inventory.9.png differ
diff --git a/core/assets-raw/sprites/ui/logo.png b/core/assets-raw/sprites/ui/logo.png
index eee1e0e658..0a1778c104 100644
Binary files a/core/assets-raw/sprites/ui/logo.png and b/core/assets-raw/sprites/ui/logo.png differ
diff --git a/core/assets-raw/sprites/ui/nomap.png b/core/assets-raw/sprites/ui/nomap.png
index fab7a7ad77..9233e4b89b 100644
Binary files a/core/assets-raw/sprites/ui/nomap.png and b/core/assets-raw/sprites/ui/nomap.png differ
diff --git a/core/assets-raw/sprites/ui/pane-2.9.png b/core/assets-raw/sprites/ui/pane-2.9.png
index 417dcd02fd..35a4822e67 100644
Binary files a/core/assets-raw/sprites/ui/pane-2.9.png and b/core/assets-raw/sprites/ui/pane-2.9.png differ
diff --git a/core/assets-raw/sprites/ui/pane.9.png b/core/assets-raw/sprites/ui/pane.9.png
index 885a5c45f3..a4a5f0992f 100644
Binary files a/core/assets-raw/sprites/ui/pane.9.png and b/core/assets-raw/sprites/ui/pane.9.png differ
diff --git a/core/assets-raw/sprites/ui/scroll-knob-horizontal-black.png b/core/assets-raw/sprites/ui/scroll-knob-horizontal-black.png
index b5056d235a..91b2db7313 100644
Binary files a/core/assets-raw/sprites/ui/scroll-knob-horizontal-black.png and b/core/assets-raw/sprites/ui/scroll-knob-horizontal-black.png differ
diff --git a/core/assets-raw/sprites/ui/scroll-knob-vertical-black.png b/core/assets-raw/sprites/ui/scroll-knob-vertical-black.png
index 1d1f180358..dd00e9cf99 100644
Binary files a/core/assets-raw/sprites/ui/scroll-knob-vertical-black.png and b/core/assets-raw/sprites/ui/scroll-knob-vertical-black.png differ
diff --git a/core/assets-raw/sprites/ui/scroll-knob-vertical-thin.png b/core/assets-raw/sprites/ui/scroll-knob-vertical-thin.png
index 540a1bcfca..1657573fcf 100644
Binary files a/core/assets-raw/sprites/ui/scroll-knob-vertical-thin.png and b/core/assets-raw/sprites/ui/scroll-knob-vertical-thin.png differ
diff --git a/core/assets-raw/sprites/ui/slider-knob-down.png b/core/assets-raw/sprites/ui/slider-knob-down.png
index 32fd414a91..7eac1c0f51 100644
Binary files a/core/assets-raw/sprites/ui/slider-knob-down.png and b/core/assets-raw/sprites/ui/slider-knob-down.png differ
diff --git a/core/assets-raw/sprites/ui/slider-knob-over.png b/core/assets-raw/sprites/ui/slider-knob-over.png
index d0dde09ecc..a4bb61170b 100644
Binary files a/core/assets-raw/sprites/ui/slider-knob-over.png and b/core/assets-raw/sprites/ui/slider-knob-over.png differ
diff --git a/core/assets-raw/sprites/ui/slider-knob.png b/core/assets-raw/sprites/ui/slider-knob.png
index 1c40347ea0..6e643e0dc6 100644
Binary files a/core/assets-raw/sprites/ui/slider-knob.png and b/core/assets-raw/sprites/ui/slider-knob.png differ
diff --git a/core/assets-raw/sprites/ui/slider.png b/core/assets-raw/sprites/ui/slider.png
index 71b354ccc9..cb2e464ff9 100644
Binary files a/core/assets-raw/sprites/ui/slider.png and b/core/assets-raw/sprites/ui/slider.png differ
diff --git a/core/assets-raw/sprites/ui/underline-2.9.png b/core/assets-raw/sprites/ui/underline-2.9.png
index 24da68912a..f703111db2 100644
Binary files a/core/assets-raw/sprites/ui/underline-2.9.png and b/core/assets-raw/sprites/ui/underline-2.9.png differ
diff --git a/core/assets-raw/sprites/ui/underline-disabled.9.png b/core/assets-raw/sprites/ui/underline-disabled.9.png
index 778b428500..d0b7121556 100644
Binary files a/core/assets-raw/sprites/ui/underline-disabled.9.png and b/core/assets-raw/sprites/ui/underline-disabled.9.png differ
diff --git a/core/assets-raw/sprites/ui/underline-red.9.png b/core/assets-raw/sprites/ui/underline-red.9.png
index 1237745208..af1810f47a 100644
Binary files a/core/assets-raw/sprites/ui/underline-red.9.png and b/core/assets-raw/sprites/ui/underline-red.9.png differ
diff --git a/core/assets-raw/sprites/ui/underline.9.png b/core/assets-raw/sprites/ui/underline.9.png
index 516f6f82cc..c1ed2c32ac 100644
Binary files a/core/assets-raw/sprites/ui/underline.9.png and b/core/assets-raw/sprites/ui/underline.9.png differ
diff --git a/core/assets-raw/sprites/ui/window-empty.9.png b/core/assets-raw/sprites/ui/window-empty.9.png
index 5c943d42b7..007da0d888 100644
Binary files a/core/assets-raw/sprites/ui/window-empty.9.png and b/core/assets-raw/sprites/ui/window-empty.9.png differ
diff --git a/core/assets-raw/sprites/units/crawler-leg.png b/core/assets-raw/sprites/units/crawler-leg.png
index af1a7636e9..a3c3fffbc6 100644
Binary files a/core/assets-raw/sprites/units/crawler-leg.png and b/core/assets-raw/sprites/units/crawler-leg.png differ
diff --git a/core/assets-raw/sprites/units/fortress-leg.png b/core/assets-raw/sprites/units/fortress-leg.png
index 5fe3fe7b28..daaae97bc9 100644
Binary files a/core/assets-raw/sprites/units/fortress-leg.png and b/core/assets-raw/sprites/units/fortress-leg.png differ
diff --git a/core/assets-raw/sprites/units/lich.png b/core/assets-raw/sprites/units/lich.png
index 046d51b3d9..d6048cfa25 100644
Binary files a/core/assets-raw/sprites/units/lich.png and b/core/assets-raw/sprites/units/lich.png differ
diff --git a/core/assets-raw/sprites/units/power-cell.png b/core/assets-raw/sprites/units/power-cell.png
index 04a09f93f3..933442c7a0 100644
Binary files a/core/assets-raw/sprites/units/power-cell.png and b/core/assets-raw/sprites/units/power-cell.png differ
diff --git a/core/assets-raw/sprites/units/reaper.png b/core/assets-raw/sprites/units/reaper.png
index ace8e0a9c2..168919a427 100644
Binary files a/core/assets-raw/sprites/units/reaper.png and b/core/assets-raw/sprites/units/reaper.png differ
diff --git a/core/assets-raw/sprites/units/wraith.png b/core/assets-raw/sprites/units/wraith.png
index 3b7c673d86..28ab23c33a 100644
Binary files a/core/assets-raw/sprites/units/wraith.png and b/core/assets-raw/sprites/units/wraith.png differ
diff --git a/core/assets-raw/sprites/weapons/blaster-equip.png b/core/assets-raw/sprites/weapons/blaster-equip.png
index b5679122a5..277fe2463e 100644
Binary files a/core/assets-raw/sprites/weapons/blaster-equip.png and b/core/assets-raw/sprites/weapons/blaster-equip.png differ
diff --git a/core/assets-raw/sprites/weapons/chain-blaster-equip.png b/core/assets-raw/sprites/weapons/chain-blaster-equip.png
index 3cde6228a0..b93338cfca 100644
Binary files a/core/assets-raw/sprites/weapons/chain-blaster-equip.png and b/core/assets-raw/sprites/weapons/chain-blaster-equip.png differ
diff --git a/core/assets-raw/sprites/weapons/flakgun-equip.png b/core/assets-raw/sprites/weapons/flakgun-equip.png
index 931b33dd1d..e73c50aed2 100644
Binary files a/core/assets-raw/sprites/weapons/flakgun-equip.png and b/core/assets-raw/sprites/weapons/flakgun-equip.png differ
diff --git a/core/assets-raw/sprites/weapons/heal-blaster-equip.png b/core/assets-raw/sprites/weapons/heal-blaster-equip.png
index 52f579ce68..94b67429ce 100644
Binary files a/core/assets-raw/sprites/weapons/heal-blaster-equip.png and b/core/assets-raw/sprites/weapons/heal-blaster-equip.png differ
diff --git a/core/assets-raw/sprites/weapons/shockgun-equip.png b/core/assets-raw/sprites/weapons/shockgun-equip.png
index c53587d7ee..3f024a6865 100644
Binary files a/core/assets-raw/sprites/weapons/shockgun-equip.png and b/core/assets-raw/sprites/weapons/shockgun-equip.png differ
diff --git a/core/assets-raw/sprites/weapons/swarmer-equip.png b/core/assets-raw/sprites/weapons/swarmer-equip.png
index 6d818dcaac..89e8713f23 100644
Binary files a/core/assets-raw/sprites/weapons/swarmer-equip.png and b/core/assets-raw/sprites/weapons/swarmer-equip.png differ
diff --git a/core/assets-raw/sprites/zones/zone-craters.png b/core/assets-raw/sprites/zones/zone-craters.png
index 9675beb0b3..45ae9d3b79 100644
Binary files a/core/assets-raw/sprites/zones/zone-craters.png and b/core/assets-raw/sprites/zones/zone-craters.png differ
diff --git a/core/assets-raw/sprites/zones/zone-desertWastes.png b/core/assets-raw/sprites/zones/zone-desertWastes.png
index dc6b8946e8..bd3097a85a 100644
Binary files a/core/assets-raw/sprites/zones/zone-desertWastes.png and b/core/assets-raw/sprites/zones/zone-desertWastes.png differ
diff --git a/core/assets-raw/sprites/zones/zone-desolateRift.png b/core/assets-raw/sprites/zones/zone-desolateRift.png
index 8b24d6be6b..b19cda73a6 100644
Binary files a/core/assets-raw/sprites/zones/zone-desolateRift.png and b/core/assets-raw/sprites/zones/zone-desolateRift.png differ
diff --git a/core/assets-raw/sprites/zones/zone-frozenForest.png b/core/assets-raw/sprites/zones/zone-frozenForest.png
index 8faccbdcaf..5c5d702d33 100644
Binary files a/core/assets-raw/sprites/zones/zone-frozenForest.png and b/core/assets-raw/sprites/zones/zone-frozenForest.png differ
diff --git a/core/assets-raw/sprites/zones/zone-fungalPass.png b/core/assets-raw/sprites/zones/zone-fungalPass.png
index c59fbc57e3..a764365dd1 100644
Binary files a/core/assets-raw/sprites/zones/zone-fungalPass.png and b/core/assets-raw/sprites/zones/zone-fungalPass.png differ
diff --git a/core/assets-raw/sprites/zones/zone-groundZero.png b/core/assets-raw/sprites/zones/zone-groundZero.png
index 51fa326984..5dcaf536f8 100644
Binary files a/core/assets-raw/sprites/zones/zone-groundZero.png and b/core/assets-raw/sprites/zones/zone-groundZero.png differ
diff --git a/core/assets-raw/sprites/zones/zone-nuclearComplex.png b/core/assets-raw/sprites/zones/zone-nuclearComplex.png
index 84268346f9..bf7161db35 100644
Binary files a/core/assets-raw/sprites/zones/zone-nuclearComplex.png and b/core/assets-raw/sprites/zones/zone-nuclearComplex.png differ
diff --git a/core/assets-raw/sprites/zones/zone-overgrowth.png b/core/assets-raw/sprites/zones/zone-overgrowth.png
index 99ace71e99..0f13ba66cb 100644
Binary files a/core/assets-raw/sprites/zones/zone-overgrowth.png and b/core/assets-raw/sprites/zones/zone-overgrowth.png differ
diff --git a/core/assets-raw/sprites/zones/zone-ruinousShores.png b/core/assets-raw/sprites/zones/zone-ruinousShores.png
index 28f01f2a45..dd139eb973 100644
Binary files a/core/assets-raw/sprites/zones/zone-ruinousShores.png and b/core/assets-raw/sprites/zones/zone-ruinousShores.png differ
diff --git a/core/assets-raw/sprites/zones/zone-saltFlats.png b/core/assets-raw/sprites/zones/zone-saltFlats.png
index 3a31279c30..083f6ce154 100644
Binary files a/core/assets-raw/sprites/zones/zone-saltFlats.png and b/core/assets-raw/sprites/zones/zone-saltFlats.png differ
diff --git a/core/assets-raw/sprites/zones/zone-stainedMountains.png b/core/assets-raw/sprites/zones/zone-stainedMountains.png
index 0fb9bb2b10..e963423bfa 100644
Binary files a/core/assets-raw/sprites/zones/zone-stainedMountains.png and b/core/assets-raw/sprites/zones/zone-stainedMountains.png differ
diff --git a/core/assets-raw/sprites/zones/zone-tarFields.png b/core/assets-raw/sprites/zones/zone-tarFields.png
index 976af5c1d3..7649530196 100644
Binary files a/core/assets-raw/sprites/zones/zone-tarFields.png and b/core/assets-raw/sprites/zones/zone-tarFields.png differ
diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties
index 3cb2c089ef..39f61c3bee 100644
--- a/core/assets/bundles/bundle.properties
+++ b/core/assets/bundles/bundle.properties
@@ -39,7 +39,6 @@ be.check = Check for updates
schematic = Schematic
schematic.add = Save Schematic...
schematics = Schematics
-schematic.replace = A schematic by that name already exists. Replace it?
schematic.import = Import Schematic...
schematic.exportfile = Export File
schematic.importfile = Import File
@@ -160,7 +159,7 @@ server.kicked.gameover = Game over!
server.kicked.serverRestarting = The server is restarting.
server.versions = Your version:[accent] {0}[]\nServer version:[accent] {1}[]
host.info = The [accent]host[] button hosts a server on port [scarlet]6567[]. \nAnybody on the same [lightgray]wifi or local network[] should be able to see your server in their server list.\n\nIf you want people to be able to connect from anywhere by IP, [accent]port forwarding[] is required.\n\n[lightgray]Note: If someone is experiencing trouble connecting to your LAN game, make sure you have allowed Mindustry access to your local network in your firewall settings. Note that public networks sometimes do not allow server discovery.
-join.info = Here, you can enter a [accent]server IP[] to connect to, or discover [accent]local network[] servers to connect to.\nBoth LAN and WAN multiplayer is supported.\n\n[lightgray]Note: There is no automatic global server list; if you want to connect to someone by IP, you would need to ask the host for their IP.
+join.info = Here, you can enter a [accent]server IP[] to connect to, or discover [accent]local network[] or [accent]global[] servers to connect to.\nBoth LAN and WAN multiplayer is supported.\n\n[lightgray]If you want to connect to someone by IP, you would need to ask the host for their IP, which can be found by googling "my ip" from their device.
hostserver = Host Multiplayer Game
invitefriends = Invite Friends
hostserver.mobile = Host\nGame
@@ -664,7 +663,7 @@ setting.borderlesswindow.name = Borderless Window[lightgray] (may require restar
setting.fps.name = Show FPS & Ping
setting.blockselectkeys.name = Show Block Select Keys
setting.vsync.name = VSync
-setting.pixelate.name = Pixelate[lightgray] (disables animations)
+setting.pixelate.name = Pixelate
setting.minimap.name = Show Minimap
setting.position.name = Show Player Position
setting.musicvol.name = Music Volume
@@ -789,6 +788,7 @@ rules.title.unit = Units
rules.title.experimental = Experimental
rules.lighting = Lighting
rules.ambientlight = Ambient Light
+rules.solarpowermultiplier = Solar Power Multiplier
content.item.name = Items
content.liquid.name = Liquids
diff --git a/core/assets/bundles/bundle_cs.properties b/core/assets/bundles/bundle_cs.properties
index a490645d52..b71b09aff8 100644
--- a/core/assets/bundles/bundle_cs.properties
+++ b/core/assets/bundles/bundle_cs.properties
@@ -39,7 +39,6 @@ be.check = Zkontrolovat aktualizace
schematic = Šablona
schematic.add = Uložit šablonu...
schematics = Šablony
-schematic.replace = Šablona tohoto jména již existuje. Chceš ji nahradit?
schematic.import = Importuji šablonu...
schematic.exportfile = Exportovat soubor
schematic.importfile = Importovat soubor
@@ -53,13 +52,14 @@ schematic.delete.confirm = Šablona bude kompletně vyhlazena.
schematic.rename = Přejmenovat šablonu
schematic.info = {0}x{1}, {2} bloků
-stat.wave = Vln poraženo:[accent] {0}
-stat.enemiesDestroyed = Nepřátel zničeno:[accent] {0}
-stat.built = Budov postaveno:[accent] {0}
-stat.destroyed = Budov zničeno:[accent] {0}
-stat.deconstructed = Budov rozebráno:[accent] {0}
+stat.wave = Vln poraženo: [accent]{0}
+stat.enemiesDestroyed = Nepřátel zničeno: [accent]{0}[]
+stat.built = Budov postaveno: [accent]{0}[]
+stat.destroyed = Budov zničeno: [accent]{0}[]
+stat.deconstructed = Budov rozebráno: [accent]{0}[]
stat.delivered = Materiálu vysláno:
-stat.rank = Celková známka: [accent]{0}
+stat.playtime = Odehraný čas: [accent]{0}[]
+stat.rank = Celková známka: [accent]{0}[]
launcheditems = [accent]Získané předměty[]
launchinfo = [unlaunched]Je třeba vyslat zpět Tvé jádro, abys získal věci vyznačené modře.[]
@@ -104,6 +104,7 @@ mods.none = [lightgray]Modifikace nebyly nalezeny.[]
mods.guide = Průvodce modifikacemi
mods.report = Nahlásit závadu
mods.openfolder = Otevřít složku s modifikacemi
+mod.display = [gray]Modifikace:[][orange] {0}[]
mod.enabled = [lightgray]Povoleno[]
mod.disabled = [scarlet]Zakázáno[]
mod.disable = Zakázat
@@ -170,6 +171,11 @@ hosts.discovering.any = Hledám hry
server.refreshing = Aktualizuji stav serverů
hosts.none = [lightgray]Žádné místní hry nebyly nalezeny![]
host.invalid = [scarlet]Nejde se připojit k hostiteli.[]
+
+servers.local = Místní servery
+servers.remote = Vzdálené servery
+servers.global = Globální servery
+
trace = Vystopovat hráče
trace.playername = Jméno hráče: [accent]{0}[]
trace.ip = Adresa IP: [accent]{0}[]
@@ -657,7 +663,7 @@ setting.borderlesswindow.name = Bezokrajové okno[lightgray] (může vyžadovat
setting.fps.name = Ukázat FPS a ping
setting.blockselectkeys.name = Ukázat klávesy při práci s blokem
setting.vsync.name = Vertikální synchronizace
-setting.pixelate.name = Rozpixlovat [lightgray](může snížit výkon)[]
+setting.pixelate.name = Rozpixlovat
setting.minimap.name = Ukázat mapičku
setting.position.name = Ukázat pozici hráče
setting.musicvol.name = Hlasitost hudby
diff --git a/core/assets/bundles/bundle_de.properties b/core/assets/bundles/bundle_de.properties
index 0a3b80f76c..af47e68ccb 100644
--- a/core/assets/bundles/bundle_de.properties
+++ b/core/assets/bundles/bundle_de.properties
@@ -10,15 +10,15 @@ link.dev-builds.description = Entwicklungs-Builds (instabil)
link.trello.description = Offizielles Trello-Board für geplante Features
link.itch.io.description = itch.io-Seite mit Downloads und der Web-Version des Spiels
link.google-play.description = Google Play Store-Seite
-link.f-droid.description = F-Droid catalogue listing
+link.f-droid.description = F-Droid-Seite
link.wiki.description = Offizelles Mindustry-Wiki
-link.feathub.description = Suggest new features
+link.feathub.description = Neue Ideen einbringen
linkfail = Fehler beim Öffnen des Links!\nDie URL wurde in die Zwischenablage kopiert.
-screenshot = Screenshot gespeichert unter {0}.
+screenshot = Screenshot gespeichert unter {0}
screenshot.invalid = Karte zu groß! Eventuell nicht ausreichend Arbeitsspeicher für Screenshot.
gameover = Der Kern wurde zerstört.
gameover.pvp = Das[accent] {0}[] Team ist siegreich!
-highscore = [YELLOW] Neuer Highscore!
+highscore = [YELLOW]Neuer Highscore!
copied = Kopiert.
load.sound = Audio
@@ -29,14 +29,14 @@ load.system = System
load.mod = Mods
load.scripts = Scripts
-be.update = A new Bleeding Edge build is available:
-be.update.confirm = Download it and restart now?
-be.updating = Updating...
-be.ignore = Ignore
-be.noupdates = No updates found.
-be.check = Check for updates
+be.update = Ein neuer Bleeding Edge build ist verfügbar:
+be.update.confirm = Herunterladen und neu starten?
+be.updating = Aktualisieren...
+be.ignore = Ignorieren
+be.noupdates = Keine Aktualisierungen gefunden.
+be.check = Auf Aktualisierungen prüfen
-schematic = Entwürfe
+schematic = Entwurf
schematic.add = Entwurf speichern...
schematics = Entwürfe
schematic.replace = Ein anderer Entwurf hat bereits diesen Namen. Diesen ersetzen?
@@ -59,7 +59,7 @@ stat.built = Gebäude gebaut:[accent] {0}
stat.destroyed = Gebäude zerstört:[accent] {0}
stat.deconstructed = Gebäude abgebaut:[accent] {0}
stat.delivered = Übertragene Ressourcen:
-stat.rank = Finaler Rang: [accent]{0}
+stat.rank = Finaler Rang:[accent] {0}
launcheditems = [accent]Abgefeuerte Items
launchinfo = [unlaunched][[LAUNCH] deine Basis um blau markierte Items zu erhalten.
@@ -86,9 +86,9 @@ save.quit = Speichern & Verlassen
maps = Karten
maps.browse = Karten durchsuchen
continue = Weiter
-maps.none = [LIGHT_GRAY]Keine Karten gefunden!
+maps.none = [lightgray]Keine Karten gefunden!
invalid = Ungültig
-pickcolor = Pick Color
+pickcolor = Farbe wählen
preparingconfig = Konfiguration vorbereiten
preparingcontent = Inhalt vorbereiten
uploadingcontent = Inhalt hochladen
@@ -100,19 +100,19 @@ feature.unsupported = Dein System unsterstützt dieses Feature nicht.
mods.alphainfo = Vergiss nicht, dass Mods in der Alpha sind, und[scarlet] sehr fehlerhaft sein können[].\nMelde alle Probleme an den Mindustry GitHub oder Discord.
mods.alpha = [accent](Alpha)
mods = Mods
-mods.none = [LIGHT_GRAY]Keine Mods gefunden!
-mods.guide = Modding Anleitung
+mods.none = [lightgray]Keine Mods gefunden!
+mods.guide = Modding-Anleitung
mods.report = Problem melden
mods.openfolder = Mod-Verzeichnis öffnen
mod.enabled = [lightgray]Aktiviert
mod.disabled = [scarlet]Deaktiviert
mod.disable = Deaktivieren
-mod.delete.error = Unfähig Mod zu löschen; Datei könnte in Benutzung sein.
-mod.requiresversion = [scarlet]Requires min game version: [accent]{0}
+mod.delete.error = Unfähig Mod zu löschen. Datei könnte in Benutzung sein.
+mod.requiresversion = [scarlet]Benötigt mindestens Version:[accent] {0}
mod.missingdependencies = [scarlet]Fehlende Abhängigkeiten: {0}
-mod.erroredcontent = [scarlet]Content Errors
-mod.errors = Errors have occurred loading content.
-mod.noerrorplay = [scarlet]You have mods with errors.[] Either disable the affected mods or fix the errors before playing.
+mod.erroredcontent = [scarlet]Inhalt-Fehler
+mod.errors = Beim Laden von Inhalt sind Fehler aufgetreten.
+mod.noerrorplay = [scarlet]Du hast Mods mit Fehlern.[] Deaktiviere die Mods oder fixe die Fehler, bevor du spielst.
mod.nowdisabled = [scarlet]Mod '{0}' fehlen Abhängigkeiten:[accent] {1}\n[lightgray]Diese Mods müssen erst installiert werden.\nDieser Mod wird automatisch deaktiviert.
mod.enable = Aktivieren
mod.requiresrestart = Das Spiel wird jetzt beendet, um die Mod-Änderungen anzuwenden.
@@ -121,22 +121,22 @@ mod.import = Mod importieren
mod.import.github = GitHub-Mod importieren
mod.item.remove = This item is part of the[accent] '{0}'[] mod. To remove it, uninstall that mod.
mod.remove.confirm = Dieser Mod wird gelöscht.
-mod.author = [LIGHT_GRAY]Author:[] {0}
+mod.author = [lightgray]Autor:[] {0}
mod.missing = Dieser Spielstand enthält Mods, welche nicht mehr vorhanden oder aktualisiert wurden. Spielstandfehler könnten passieren. Bist du dir sicher, das du ihn laden möchtest?\n[lightgray]Mods:\n{0}
-mod.preview.missing = Bevor du diesen Mod hochladen kannst, musst du eine Bildvorschau einbinden.\nLade ein Bild namens[accent] preview.png[] in den Modordner und versuchs nochmal.
-mod.folder.missing = Nur Mods in Ordnerform können in den Workshop hochgeladen werden.\nUm einen Mod in einen Ordner zu konvertieren, extrahiere einfach die .zip und lösche die alte .zip danach. Starte dann das Spiel neu.
+mod.preview.missing = Bevor du diesen Mod hochladen kannst, musst du eine Bildvorschau einbinden.\nLade ein Bild namens[accent] preview.png[] in den Modordner und versuche es nochmal.
+mod.folder.missing = Nur Mods in Ordnerform können in den Workshop hochgeladen werden.\nUm einen Mod in einen Ordner zu konvertieren, extrahiere das Archiv und lösche das alte Archiv danach. Starte dann das Spiel neu oder lade die Mods neu.
mod.scripts.unsupported = Your device does not support mod scripts. Some mods will not function correctly.
about.button = Info
name = Name:
-noname = Wähle zuerst einen[accent] Spielernamen[].
+noname = Wähle zunächst einen[accent] Spielernamen[].
filename = Dateiname:
-unlocked = Neuer Block freigeschaltet!
+unlocked = Neuer Inhalt freigeschaltet!
completed = [accent]Abgeschlossen
techtree = Forschung
-research.list = [LIGHT_GRAY]Forschung:
+research.list = [lightgray]Forschung:
research = Erforschen
-researched = [LIGHT_GRAY]{0} erforscht.
+researched = [lightgray]{0} erforscht.
players = {0} Spieler online
players.single = {0} Spieler online
server.closing = [accent]Schließe den Server ...
@@ -155,21 +155,21 @@ server.kicked.nameEmpty = Dein Name muss mindestens einen Buchstaben oder eine Z
server.kicked.idInUse = Du bist bereits auf dem Server! Anmeldungen mit zwei Accounts sind nicht gestattet.
server.kicked.customClient = Der Server akzeptiert keine Custom Builds von Mindustry. Lade dir die offizielle Version herunter.
server.kicked.gameover = Game Over!
-server.kicked.serverRestarting = The server is restarting.
+server.kicked.serverRestarting = Der Server startet neu.
server.versions = Deine Version:[accent] {0}[]\nServerversion:[accent] {1}[]
-host.info = Der [accent]Server hosten[]-Knopf startet einen Server auf den Ports [scarlet]6567[] und [scarlet]6568.[]\nJeder im gleichen [LIGHT_GRAY]W-Lan oder lokalen Netzwerk[] sollte deinen Server in seiner Serverliste sehen können.\n\nWenn du anderen die Verbindung über deine IP-Adresse ermöglichen willst, benötigst du [accent]Port-Forwarding[].\n\n[LIGHT_GRAY]Hinweis: Falls es Probleme mit der Verbindung im Netzwerk gibt, stelle sicher, dass Mindustry in deinen Firewall-Einstellungen Zugriff auf das lokale Netzwerk hat.
-join.info = Hier kannst du eine [accent]Server-IP[] eingeben, um dich zu verbinden, oder Server im [accent]lokalen Netzwerk[] entdecken und dich mit ihnen verbinden.\nSowohl Spielen über das lokale Netzwerk als auch Spielen über das Internet werden unterstützt.\n\n[LIGHT_GRAY]Hinweis: Es gibt keine globale Serverliste; wenn du dich mit jemandem per IP-Adresse verbinden willst, musst du den Host nach seiner IP-Adresse fragen.
-hostserver = Server hosten
+host.info = Der [accent]Server hosten[]-Knopf startet einen Server auf den Ports [scarlet]6567[] und [scarlet]6568.[]\nJeder im gleichen [lightgray]W-Lan oder lokalen Netzwerk[] sollte deinen Server in seiner Serverliste sehen können.\n\nWenn du anderen die Verbindung über deine IP-Adresse ermöglichen willst, musst du [accent]Port-Forwarding[] durchführen.\n\n[lightgray]Hinweis: Falls es Probleme mit der Verbindung im Netzwerk gibt, stelle sicher, dass Mindustry in deinen Firewall-Einstellungen Zugriff auf das lokale Netzwerk hat.
+join.info = Hier kannst du eine [accent]Server-IP[] eingeben, um dich zu verbinden, oder Server im [accent]lokalen Netzwerk[] entdecken und dich mit ihnen verbinden.\nSowohl Spielen über das lokale Netzwerk als auch Spielen über das Internet werden unterstützt.\n\n[lightgray]Hinweis: Es gibt keine globale Serverliste; wenn du dich mit jemandem per IP-Adresse verbinden willst, musst du den Host nach seiner IP-Adresse fragen.
+hostserver = Mehrspieler hosten
invitefriends = Freunde einladen
-hostserver.mobile = Host\nSpiel
-host = Server eröffnen
-hosting = [accent] Server wird eröffnet ...
+hostserver.mobile = Hoste\nSpiel
+host = Hosten
+hosting = [accent]Server wird eröffnet ...
hosts.refresh = Aktualisieren
hosts.discovering = Suche nach LAN-Spielen
hosts.discovering.any = Suche nach Spielen
server.refreshing = Server wird aktualisiert
-hosts.none = [lightgray] Keine LAN-Spiele gefunden!
-host.invalid = [scarlet] Kann keine Verbindung zum Host herstellen.
+hosts.none = [lightgray]Keine LAN-Spiele gefunden!
+host.invalid = [scarlet]Kann keine Verbindung zum Host herstellen.
trace = Spieler verfolgen
trace.playername = Spielername: [accent]{0}
trace.ip = IP: [accent]{0}
@@ -207,27 +207,27 @@ connecting.data = [accent] Welt wird geladen...
server.port = Port:
server.addressinuse = Adresse bereits in Verwendung!
server.invalidport = Falscher Port!
-server.error = [crimson] Fehler beim Hosten des Servers: [accent] {0}
+server.error = [crimson] Fehler beim Hosten des Servers:[accent] {0}
save.new = Neuer Spielstand
save.overwrite = Möchtest du diesen Spielstand wirklich überschreiben?
overwrite = Überschreiben
save.none = Keine Spielstände gefunden!
-saveload = [accent] Speichern...
+saveload = [accent]Speichern...
savefail = Fehler beim Speichern des Spiels!
save.delete.confirm = Möchtest du diesen Spielstand wirklich löschen?
save.delete = Löschen
save.export = Spielstand exportieren
-save.import.invalid = [accent] Dieser Spielstand ist ungültig!
-save.import.fail = [crimson] Spielstand konnte nicht importiert werden: [accent] {0}
-save.export.fail = [crimson] Spielstand konnte nicht exportiert werden: [accent] {0}
+save.import.invalid = [accent]Dieser Spielstand ist ungültig!
+save.import.fail = [crimson]Spielstand konnte nicht importiert werden: [accent]{0}
+save.export.fail = [crimson]Spielstand konnte nicht exportiert werden: [accent]{0}
save.import = Spielstand importieren
save.newslot = Name:
save.rename = Umbenennen
save.rename.text = Neuer Name
-selectslot = Wähle einen Spielstand
-slot = [accent] Platz {0}
+selectslot = Wähle einen Spielstand.
+slot = [accent]Platz {0}
editmessage = Nachricht bearbeiten
-save.corrupted = [accent] Datei beschädigt oder ungültig!
+save.corrupted = [accent]Datei beschädigt oder ungültig!
empty =
on = An
off = Aus
@@ -253,7 +253,7 @@ data.export = Daten exportieren
data.import = Daten importieren
data.exported = Daten exportiert.
data.invalid = Dies sind keine gültigen Spieldaten.
-data.import.confirm = Der Import von externen Daten wird [scarlet] alle[] deine gegenwärtigen Spieldaten löschen.\n[accent]Dies kann nicht rückgängig gemacht werden![]Sobald der Import abeschlossen ist, wird dein Spiel sofort beendet.
+data.import.confirm = Der Import von externen Daten wird [scarlet] alle[] deine gegenwärtigen Spieldaten löschen.\n[accent]Das kann nicht rückgängig gemacht werden![]Sobald der Import abeschlossen ist, wird dein Spiel sofort beendet.
classic.export = Klassische Dateien exportieren
classic.export.text = [accent]Mindustry[] hat ein großes Update bekommen.\nEin Classic (v3.5 build 40) -Speicherstand oder eine -Karte wurde gefunden. Möchtest du diese Daten in den home-Ordner deines Smartphones exportieren, um sie in der Mindustry Classic-App zu verwenden?
quit.confirm = Willst du wirklich aufhören?
@@ -267,11 +267,11 @@ pausebuilding = [accent][[{0}][] um das Bauen zu pausieren
resumebuilding = [scarlet][[{0}][] um das Bauen fortzusetzen
wave = [accent]Welle {0}
wave.waiting = Welle in {0}
-wave.waveInProgress = [LIGHT_GRAY]Welle im Gange
+wave.waveInProgress = [lightgray]Welle im Gange
waiting = Warten...
waiting.players = Warte auf Spieler...
-wave.enemies = [LIGHT_GRAY]{0} Gegner verbleiben
-wave.enemy = [LIGHT_GRAY]{0} Gegner verbleiben
+wave.enemies = [lightgray]{0} Gegner verbleiben
+wave.enemy = [lightgray]{0} Gegner verbleiben
loadimage = Bild laden
saveimage = Bild speichern
unknown = Unbekannt
@@ -326,7 +326,7 @@ waves.load = Aus der Zwischenablage laden
waves.invalid = Ungültige Wellen in der Zwischenablage.
waves.copied = Wellen kopiert.
waves.none = Keine Gegner definiert.\nInfo: Leere Wellenentwürfe werden automatisch mit dem Standard-Entwurf ersetzt.
-editor.default = [LIGHT_GRAY]
+editor.default = [lightgray]
details = Details
edit = Bearbeiten
editor.name = Name:
@@ -388,7 +388,7 @@ toolmode.fillteams.description = Füllt Teams aus statt Blöcke.
toolmode.drawteams = Teams Zeichnen
toolmode.drawteams.description = Zeichnet Teams statt Blöcke.
-filters.empty = [LIGHT_GRAY]Keine Filter! Füge einen mit dem unteren Knopf hinzu.
+filters.empty = [lightgray]Keine Filter! Füge einen mit dem unteren Knopf hinzu.
filter.distort = Verzerren
filter.noise = Rauschen
filter.median = Median
@@ -439,15 +439,15 @@ mapeditor = Karteneditor
abandon = Aufgeben
abandon.text = Diese Zone sowie alle Ressourcen werden dem Gegner überlassen.
locked = Gesperrt
-complete = [LIGHT_GRAY]Abschließen:
+complete = [lightgray]Abschließen:
requirement.wave = Erreiche Welle {0} in {1}
requirement.core = Zerstöre den feindlichen Kern in {0}
requirement.unlock = Schalte {0} frei
-resume = Zu Zone zurückkehren:\n[LIGHT_GRAY]{0}
-bestwave = [LIGHT_GRAY]Beste Welle: {0}
+resume = Zu Zone zurückkehren:\n[lightgray]{0}
+bestwave = [lightgray]Beste Welle: {0}
launch = Starten
launch.title = Start erfolgreich
-launch.next = [LIGHT_GRAY]Nächste Möglichkeit bei Welle {0}
+launch.next = [lightgray]Nächste Möglichkeit bei Welle {0}
launch.unable2 = [scarlet]START nicht möglich.[]
launch.confirm = Dies wird alle Ressourcen in deinen Kern übertragen.\nDu kannst nicht wieder zu dieser Karte zurückkehren.
launch.skip.confirm = Wenn du die Wartezeit überspringst, kannst du den Kern bis zu einer späteren Welle nicht mehr starten.
@@ -457,7 +457,7 @@ bannedblocks = Gesperrte Blöcke
addall = Alle hinzufügen
configure.locked = [lightgray]Festlegen von Startitems freischalten: {0}.
configure.invalid = Anzahl muss eine Zahl zwischen 0 und {0} sein.
-zone.unlocked = [LIGHT_GRAY]{0} freigeschaltet.
+zone.unlocked = [lightgray]{0} freigeschaltet.
zone.requirement.complete = Welle {0} erreicht:\n{1} Anforderungen der Zone erfüllt.
zone.config.unlocked = Konfiguration:[lightgray]\n{0}
zone.resources = Ressourcen entdeckt:
@@ -474,7 +474,7 @@ error.timedout = Zeitüberschreitung!\nStelle sicher, dass die Portweiterleitung
error.mismatch = Paketfehler:\nClient und Server passen möglicherweise nicht zusammen.\nStelle sicher, dass du und der Host jeweils die neueste Version von Mindustry haben!
error.alreadyconnected = Bereits verbunden.
error.mapnotfound = Kartendatei nicht gefunden!
-error.io = Netzwerk-Ein-/Ausgabe-Fehler.
+error.io = Netzwerk-I/O-Fehler.
error.any = Unbekannter Netzwerkfehler.
error.bloom = Bloom konnte nicht initialisiert werden.\nEs kann sein, dass dein Gerät es nicht unterstützt.
@@ -489,20 +489,20 @@ zone.nuclearComplex.name = Kernkraftwerk
zone.overgrowth.name = Überwucherung
zone.tarFields.name = Teerfelder
zone.saltFlats.name = Salzebenen
-zone.impact0078.name = Einschlag 0078
-zone.crags.name = Felsen
+zone.impact0078.name = Einschlagspunkt 0078
+zone.crags.name = Die Klippen
zone.fungalPass.name = Sporenpass
-zone.groundZero.description = Der optimale Ort, um anzufangen. Niedrige Bedrohung durch Gegner. Wenige Ressourcen.\nSammel so viel Kupfer und Blei wie möglich.\nMach weiter!
+zone.groundZero.description = Der optimale Ort, um neu anzufangen. Niedrige Bedrohung durch Gegner. Wenige Ressourcen.\nSammle so viel Kupfer und Blei wie möglich.\nMach weiter!
zone.frozenForest.description = Sogar hier, näher an den Bergen, haben sich die Sporen verbreitet. Die kalten Temperaturen können sie nicht für immer im Schach halten.\n\nStarte das Wagnis in Strom. Baue Verbrennungsgeneratoren. Lerne Reparateure zu benutzen.
zone.desertWastes.description = Diese Abfälle sind riesig, unberechenbar, und durchzogen von verfallenen Sektorstrukturen.\nKohle ist in dieser Region vorhanden. Verbrenne es für Strom, oder synthetisiere Graphit.\n\n[lightgray]Dieser Landeort kann nicht garantiert werden.
-zone.saltFlats.description = Am Rande der Wüste liegen die Salzebenen. In dieser Gegend können wenige Ressourcen gefunden werden.\n\nDer Feind hat hier einen Ressourcenspeicherkomplex errichtet. Zerstöre ihren Kern. Lass nichts stehen.
+zone.saltFlats.description = Am Rande der Wüste liegen die Salzebenen. In dieser Gegend sind Ressourcen nur spärlich vorhanden.\n\nDer Feind hat hier einen Ressourcenspeicherkomplex errichtet. Zerstöre ihren Kern. Lass nichts stehen.
zone.craters.description = Wasser hat sich in diesem Krater angesammelt, ein Relikt von den alten Kriegen. Gewinne dieses Gebiet zurück. Sammle Sand. Schmelze Metaglass. Pumpe Wasser, um Geschütztürme und Bohrer zu kühlen.
-zone.ruinousShores.description = Vorbei an der Wüste ist die Küste. An diesem Ort befand sich einst eine Küstenverteidigungsanlage. Davon ist aber nicht mehr viel übrig. Lediglich die einfachsten Verteidigungsstrukturen sind unversehrt, alles andere ist nur noch Schrott.\nSetzen Sie die Ausbreitung nach außen fort. Wiederentdecke die Technologie.
-zone.stainedMountains.description = Weiter im Landesinneren liegen die Berge, die noch nicht von Sporen befleckt sind.\nExtrahiere das reichlich vorhandene Titan in diesem Bereich. Erlerne es zu benutzen.\n\nDie feindliche Präsenz ist größer hier. Gib ihnen nicht die Zeit ihre stärksten Einheiten zu schicken.
-zone.overgrowth.description = Dieser Bereich ist bewachsen, näher an der Quelle der Sporen.\nDer Feind hat hier einen Außenposten errichtet. Baue Dagger-Einheiten. Zerstöre es. Gewinne zurück, was verloren gegangen ist.
-zone.tarFields.description = Der Rand einer Ölförderzone, zwischen Bergen und Wüste. Eine der wenigen Plätze mit nutzbare Teer Reserven.\nObwohl es aufgegeben wurde, hat dieses Gebiet einige gefährliche feindliche Kräfte in der Nähe. Unterschätze sie nicht.\n\n[lightgray]Wenn möglich, erforsche Technologien zur Ölverarbeitung.
-zone.desolateRift.description = Eine extrem gefährliche Zone. Reichlich Ressourcen, aber wenig Platz. Hohe Zerstörungsgefahr. Verlasse es so schnell wie möglich. Lassen Sie sich nicht von den großen Abständen zwischen feindlichen Angriffen in die Irre führen.
+zone.ruinousShores.description = Vorbei an der Wüste liegt die Küste. An diesem Ort befand sich einst eine Küstenverteidigungsanlage, davon ist aber nicht mehr viel übrig. Lediglich einfache Verteidigungsstrukturen sind unversehrt, alles andere ist nur noch Schrott.\nSetze die Ausbreitung nach außen fort. Wiederentdecke die Technologie.
+zone.stainedMountains.description = Weiter im Landesinneren liegen die Berge, sie sind noch nicht von Sporen befleckt.\nExtrahiere das reichlich vorhandene Titan in diesem Bereich und erlerne es zu benutzen.\n\nDie feindliche Präsenz ist größer hier. Gib ihnen nicht die Zeit, ihre stärksten Einheiten zu schicken.
+zone.overgrowth.description = Dieser Bereich ist verwachsen, näher an der Quelle der Sporen.\nDer Feind hat hier einen Außenposten errichtet. Baue Dagger-Einheiten und zerstöre ihn. Gewinne zurück, was verloren gegangen ist.
+zone.tarFields.description = Der Rand einer Ölförderzone, zwischen Bergen und Wüste. Eine der wenigen Plätze mit nutzbaren Teer-Reserven.\nObwohl es aufgegeben wurde, befinden sich in diesem Gebiet gefährliche feindliche Kräfte. Unterschätze sie nicht.\n\n[lightgray]Wenn möglich, erforsche Technologien zur Ölverarbeitung.
+zone.desolateRift.description = Eine extrem gefährliche Zone. Reichlich Ressourcen, aber wenig Platz. Hohe Gefahr von Zerstörung. Verlasse es so schnell wie möglich. Lass dich nicht von den großen Abständen zwischen feindlichen Angriffen täuschen.
zone.nuclearComplex.description = Eine ehemalige Anlage zur Herstellung und Verarbeitung von Thorium, die in Trümmern liegt.\n[lightgray]Erforsche das Thorium und seine vielen Verwendungsmöglichkeiten.\n\nDer Feind ist hier in großer Zahl präsent und sucht ständig nach Angreifern.
zone.fungalPass.description = Ein Übergangsgebiet zwischen hohen Bergen und niedrigeren, sporenverseuchten Landschaften. Ein kleiner feindlicher Außenposten wurde hier entdeckt.\nZerstöre ihn.\nNutze Dagger und Crawler-Einheiten. Zerstöre die zwei Kerne.
zone.impact0078.description =
@@ -519,19 +519,19 @@ settings.sound = Audio
settings.graphics = Grafik
settings.cleardata = Spieldaten zurücksetzen...
settings.clear.confirm = Bist du sicher, dass du die Spieldaten zurücksetzen willst?\n Diese Aktion kann nicht rückgängig gemacht werden!
-settings.clearall.confirm = [scarlet]Warnung![]\nDas wird jegliche Spieldaten zurücksetzen, inklusive Speicherstände, Karten, Freischaltungen und Tastenbelegungen.\n Nachdem du 'OK' drückst wird alles zurückgesetzt und das Spiel schließt sich automatisch.
-paused = Pausiert
+settings.clearall.confirm = [scarlet]WARNUNG![]\nDas wird jegliche Spieldaten zurücksetzen, inklusive Speicherstände, Karten, Freischaltungen und Tastenbelegungen.\n Sobald du 'OK' drückst, wird alles zurückgesetzt und das Spiel schließt sich automatisch.
+paused = [accent]< Pausiert >
clear = Leeren
-banned = [scarlet]Banned
+banned = [scarlet]Verbannt
yes = Ja
no = Nein
-info.title = [accent]Info
-error.title = [crimson] Ein Fehler ist aufgetreten
+info.title = Info
+error.title = [crimson]Ein Fehler ist aufgetreten
error.crashtitle = Ein Fehler ist aufgetreten!
blocks.input = Eingang
blocks.output = Ausgang
blocks.booster = Verstärkung
-block.unknown = [LIGHT_GRAY]???
+block.unknown = [lightgray]???
blocks.powercapacity = Kapazität
blocks.powershot = Stromverbrauch/Schuss
blocks.damage = Schaden
@@ -568,7 +568,7 @@ bar.drilltierreq = Besserer Bohrer Benötigt
bar.drillspeed = Bohrgeschwindigkeit: {0}/s
bar.pumpspeed = Pump Speed: {0}/s
bar.efficiency = Effizienz: {0}%
-bar.powerbalance = Strom: {0}
+bar.powerbalance = Strom: {0}/s
bar.powerstored = Gespeichert: {0}/{1}
bar.poweramount = Strom: {0}
bar.poweroutput = Stromgenerierung: {0}
@@ -590,7 +590,7 @@ bullet.shock = [stat]schockend
bullet.frag = [stat]explosiv
bullet.knockback = [stat]{0}[lightgray] zurückstoßend
bullet.freezing = [stat]frierend
-bullet.tarred = [stat]teerent
+bullet.tarred = [stat]teerend
bullet.multiplier = [stat]{0}[lightgray]x Munition Multiplikator
bullet.reload = [stat]{0}[lightgray]x Feuerrate
@@ -614,22 +614,22 @@ category.liquids = Flüssigkeiten
category.items = Materialien
category.crafting = Erzeugung
category.shooting = Schießen
-category.optional = Zusätze
+category.optional = Optionale Zusätze
setting.landscape.name = Landschaft sperren
setting.shadows.name = Schatten
setting.blockreplace.name = Automatische Blockvorschläge
setting.linear.name = Lineare Filterung
setting.hints.name = Tipps
-setting.buildautopause.name = Auto-Pause Building
+setting.buildautopause.name = Bauen automatisch pausieren
setting.animatedwater.name = Animiertes Wasser
setting.animatedshields.name = Animierte Schilde
-setting.antialias.name = Antialias[LIGHT_GRAY] (Neustart erforderlich)[]
+setting.antialias.name = Antialias[lightgray] (Neustart erforderlich)[]
setting.indicators.name = Verbündeten-Indikatoren
setting.autotarget.name = Auto-Zielauswahl
setting.keyboard.name = Maus+Tastatur Steuerung
setting.touchscreen.name = Touchscreen-Steuerung
setting.fpscap.name = Max. FPS
-setting.fpscap.none = kein
+setting.fpscap.none = Kein(e)
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI-Skalierung[lightgray] (Neustart erforderlich)[]
setting.swapdiagonal.name = Immer diagonale Platzierung
@@ -637,8 +637,8 @@ setting.difficulty.training = Training
setting.difficulty.easy = Leicht
setting.difficulty.normal = Normal
setting.difficulty.hard = Schwer
-setting.difficulty.insane = Unmöglich
-setting.difficulty.name = Schwierigkeit
+setting.difficulty.insane = Verrückt
+setting.difficulty.name = Schwierigkeit:
setting.screenshake.name = Wackeleffekt
setting.effects.name = Effekte anzeigen
setting.destroyedblocks.name = Zerstörte Blöcke anzeigen
@@ -647,18 +647,18 @@ setting.coreselect.name = Allow Schematic Cores
setting.sensitivity.name = Controller-Empfindlichkeit
setting.saveinterval.name = Autosave-Häufigkeit
setting.seconds = {0} Sekunden
-setting.blockselecttimeout.name = Block Auswahl Timeout
+setting.blockselecttimeout.name = Block-Auswahl Timeout
setting.milliseconds = {0} Millisekunden
setting.fullscreen.name = Vollbild
-setting.borderlesswindow.name = Randloses Fenster[LIGHT_GRAY] (Neustart vielleicht erforderlich)
-setting.fps.name = Zeige FPS
+setting.borderlesswindow.name = Randloses Fenster [lightgray](Neustart vielleicht erforderlich)
+setting.fps.name = FPS zeigen
setting.blockselectkeys.name = Block Shortcuts anzeigen
setting.vsync.name = VSync
-setting.pixelate.name = Verpixeln [LIGHT_GRAY](Könnte die Leistung beeinträchtigen)
+setting.pixelate.name = Verpixeln [lightgray](Könnte die Leistung beeinträchtigen)
setting.minimap.name = Zeige die Minimap
setting.position.name = Spieler-Position anzeigen
setting.musicvol.name = Musiklautstärke
-setting.ambientvol.name = Ambient Volume
+setting.ambientvol.name = Ambient-Lautstärke
setting.mutemusic.name = Musik stummschalten
setting.sfxvol.name = Audioeffekt-Lautstärke
setting.mutesound.name = Audioeffekte stummschalten
@@ -674,22 +674,22 @@ uiscale.reset = UI-Skalierung wurde geändert.\nDrücke "OK", um diese Skalierun
uiscale.cancel = Abbrechen & Beenden
setting.bloom.name = Bloom
keybind.title = Tasten zuweisen
-keybinds.mobile = [scarlet]Die meisten Tastenzuweisungen hier funktionieren auf z.B. Handys nicht. Nur grundlegende Bewegung wird unterstützt.
+keybinds.mobile = [scarlet]Die meisten Tastenzuweisungen hier funktionieren auf z.B. mobilen Geräten nicht. Nur grundlegende Bewegung wird unterstützt.
category.general.name = Allgemein
category.view.name = Ansicht
category.multiplayer.name = Mehrspieler
command.attack = Angreifen
command.rally = Patrouillieren
command.retreat = Rückzug
-placement.blockselectkeys = \n[lightgray]Shortcut: [{0},
-keybind.clear_building.name = Clear Building
+placement.blockselectkeys = \n[lightgray]Taste: [{0},
+keybind.clear_building.name = Bauplan löschen
keybind.press = Drücke eine Taste...
keybind.press.axis = Drücke eine Taste oder bewege eine Achse...
-keybind.screenshot.name = Karten Screenshot
-keybind.toggle_power_lines.name = Toggle Power Lasers
+keybind.screenshot.name = Karten-Screenshot
+keybind.toggle_power_lines.name = Power Lasers umschalten
keybind.move_x.name = X-Achse
keybind.move_y.name = Y-Achse
-keybind.mouse_move.name = Follow Mouse
+keybind.mouse_move.name = Der Maus folgen
keybind.dash.name = Sprinten
keybind.schematic_select.name = Bereich auswählen
keybind.schematic_menu.name = Entwurfsmenü
@@ -721,7 +721,7 @@ keybind.shoot.name = Schießen
keybind.zoom.name = Zoomen
keybind.menu.name = Menü
keybind.pause.name = Pause
-keybind.pause_building.name = Pausieren/Fortsetzen Bauen
+keybind.pause_building.name = Pausieren/Fortsetzen des Bauens
keybind.minimap.name = Minimap
keybind.chat.name = Chat
keybind.player_list.name = Spielerliste
@@ -736,36 +736,36 @@ keybind.drop_unit.name = Einheit absetzen
keybind.zoom_minimap.name = Minimap-Zoom
mode.help.title = Beschreibung der Modi
mode.survival.name = Überleben
-mode.survival.description = Der normale Modus. Ressourcen sind limitiert und Wellen kommen automatisch.
+mode.survival.description = Der normale Modus. Ressourcen sind limitiert und Wellen kommen automatisch.\n[gray]Gegnerische Spawns auf der Karte sind erforderlich.
mode.sandbox.name = Sandkasten
mode.sandbox.description = Unendliche Ressourcen und kein Timer für Wellen.
mode.editor.name = Editor
mode.pvp.name = PvP
-mode.pvp.description = Kämpfe lokal gegen andere Spieler.
+mode.pvp.description = Kämpfe lokal gegen andere Spieler.\n[gray]Benötigt mindestens 2 unterschiedlich gefärbte Kerne auf der Karte.
mode.attack.name = Angriff
-mode.attack.description = Keine Wellen, das Ziel ist es, die gegnerische Basis zu zerstören.
+mode.attack.description = Keine Wellen, das Ziel ist es, die gegnerische Basis zu zerstören.\n[gray]Benötigt einen roten Kern auf der Karte.
mode.custom = Angepasste Regeln
rules.infiniteresources = Unbegrenzte Ressourcen
-rules.reactorexplosions = Reactor Explosions
+rules.reactorexplosions = Reaktor-Explosionen
rules.wavetimer = Wellen-Timer
rules.waves = Wellen
rules.attack = Angriff-Modus
-rules.enemyCheat = Unbegrenzte Ressourcen für KI
-rules.unitdrops = Einheiten-Drops
+rules.enemyCheat = Unbegrenzte Ressourcen für die KI (Rotes Team)
+rules.unitdrops = Einheiten-Abwürfe
rules.unitbuildspeedmultiplier = Baugeschwindigkeit-Einheit Multiplikator
rules.unithealthmultiplier = Lebenspunkte-Einheit Multiplikator
rules.blockhealthmultiplier = Block Health Multiplier
rules.playerhealthmultiplier = Spieler-Lebenspunkte Multiplikator
rules.playerdamagemultiplier = Spieler-Schaden Multiplikator
rules.unitdamagemultiplier = Schaden-Einheit Multiplikator
-rules.enemycorebuildradius = Bauverbot Radius druch feindlichen Kern:[LIGHT_GRAY] (Kacheln)
-rules.respawntime = Respawn-Zeit:[LIGHT_GRAY] (Sek)
-rules.wavespacing = Wellen-Abstand:[LIGHT_GRAY] (Sek)
+rules.enemycorebuildradius = Bauverbot Radius druch feindlichen Kern:[lightgray] (Kacheln)
+rules.respawntime = Respawn-Zeit:[lightgray] (Sek)
+rules.wavespacing = Wellen-Abstand:[lightgray] (Sek)
rules.buildcostmultiplier = Bau-Kosten Multiplikator
rules.buildspeedmultiplier = Bau-Schnelligkeit Multiplikator
rules.waitForWaveToEnd = Warten bis Welle endet
-rules.dropzoneradius = Drop-Zonen-Radius:[LIGHT_GRAY] (Kacheln)
+rules.dropzoneradius = Drop-Zonen-Radius:[lightgray] (Kacheln)
rules.respawns = Max. Wiederbelebungen pro Welle
rules.limitedRespawns = Wiederbelebungslimit
rules.title.waves = Wellen
@@ -774,7 +774,7 @@ rules.title.resourcesbuilding = Ressourcen & Gebäude
rules.title.player = Spieler
rules.title.enemy = Gegner
rules.title.unit = Einheiten
-rules.title.experimental = Experimental
+rules.title.experimental = Experimentell
rules.lighting = Lighting
rules.ambientlight = Ambient Light
@@ -797,20 +797,20 @@ item.spore-pod.name = Sporen-Pod
item.sand.name = Sand
item.blast-compound.name = Explosive Mischung
item.pyratite.name = Pyratit
-item.metaglass.name = Metaglass
+item.metaglass.name = Metaglas
item.scrap.name = Schrott
liquid.water.name = Wasser
-liquid.slag.name = Lava
+liquid.slag.name = Schlacke
liquid.oil.name = Öl
-liquid.cryofluid.name = Kühlflüssigkeit
+liquid.cryofluid.name = Kryoflüssigkeit
mech.alpha-mech.name = Alpha
mech.alpha-mech.weapon = Schwerer Mehrlader
-mech.alpha-mech.ability = Drohnenschwarm
+mech.alpha-mech.ability = Regeneration
mech.delta-mech.name = Delta
mech.delta-mech.weapon = Lichtbogen-Generator
-mech.delta-mech.ability = Entladen
+mech.delta-mech.ability = Entladung
mech.tau-mech.name = Tau
-mech.tau-mech.weapon = Restrukturierlaser
+mech.tau-mech.weapon = Restrukturier-Laser
mech.tau-mech.ability = Reparatursalve
mech.omega-mech.name = Omega
mech.omega-mech.weapon = Raketenschwarm
@@ -822,24 +822,24 @@ mech.javelin-ship.weapon = Raketensalve
mech.javelin-ship.ability = Statische Entladung
mech.trident-ship.name = Dreizack
mech.trident-ship.weapon = Bombenschacht
-mech.glaive-ship.name = Glaive
+mech.glaive-ship.name = Glefe
mech.glaive-ship.weapon = Flammen-Mehrlader
item.corestorable = [lightgray]Im Kern speicherbar: {0}
-item.explosiveness = [LIGHT_GRAY]Explosivität: {0}
-item.flammability = [LIGHT_GRAY]Entflammbarkeit: {0}
-item.radioactivity = [LIGHT_GRAY]Radioaktivität: {0}
-unit.health = [LIGHT_GRAY]Lebenskraft: {0}
-unit.speed = [LIGHT_GRAY]Geschwindigkeit: {0}
-mech.weapon = [LIGHT_GRAY]Waffe: {0}
-mech.health = [LIGHT_GRAY]Lebenspunkte: {0}
-mech.itemcapacity = [LIGHT_GRAY]Materialkapazität: {0}
-mech.minespeed = [LIGHT_GRAY]Erzabbaugeschwindigkeit: {0}
-mech.minepower = [LIGHT_GRAY]Erzabbaukraft: {0}
-mech.ability = [LIGHT_GRAY]Fähigkeit: {0}
-mech.buildspeed = [LIGHT_GRAY]Baugeschwindigkeit: {0}%
-liquid.heatcapacity = [LIGHT_GRAY]Wärmekapazität: {0}
-liquid.viscosity = [LIGHT_GRAY]Viskosität: {0}
-liquid.temperature = [LIGHT_GRAY]Temperatur: {0}
+item.explosiveness = [lightgray]Explosivität: {0}
+item.flammability = [lightgray]Entflammbarkeit: {0}
+item.radioactivity = [lightgray]Radioaktivität: {0}
+unit.health = [lightgray]Lebenskraft: {0}
+unit.speed = [lightgray]Geschwindigkeit: {0}
+mech.weapon = [lightgray]Waffe: {0}
+mech.health = [lightgray]Lebenspunkte: {0}
+mech.itemcapacity = [lightgray]Materialkapazität: {0}
+mech.minespeed = [lightgray]Abbaugeschwindigkeit: {0}
+mech.minepower = [lightgray]Abbaukraft: {0}
+mech.ability = [lightgray]Fähigkeit: {0}
+mech.buildspeed = [lightgray]Baugeschwindigkeit: {0}%
+liquid.heatcapacity = [lightgray]Wärmekapazität: {0}
+liquid.viscosity = [lightgray]Viskosität: {0}
+liquid.temperature = [lightgray]Temperatur: {0}
block.sand-boulder.name = Sandbrocken
block.grass.name = Gras
@@ -848,8 +848,8 @@ block.saltrocks.name = Salzgestein
block.pebbles.name = Geröll
block.tendrils.name = Ranken
block.sandrocks.name = Sandstein
-block.spore-pine.name = Kiefernsporen
-block.sporerocks.name = Gesteinssporen
+block.spore-pine.name = Sporenkiefer
+block.sporerocks.name = Sporengestein
block.rock.name = Gestein
block.snowrock.name = Schnee-Gestein
block.snow-pine.name = Schnee-Kiefer
@@ -867,7 +867,7 @@ block.thruster.name = Schubdüse
block.kiln.name = Brennofen
block.graphite-press.name = Graphit-Presse
block.multi-press.name = Multipresse
-block.constructing = {0}\n[LIGHT_GRAY](Bauen)
+block.constructing = {0}\n[lightgray](Baut)
block.spawn.name = Gegnerischer Startpunkt
block.core-shard.name = Kern: Scherbe
block.core-foundation.name = Kern: Fundament
@@ -875,8 +875,8 @@ block.core-nucleus.name = Kern: Nukleus
block.deepwater.name = Tiefes Wasser
block.water.name = Wasser
block.tainted-water.name = Unreines Wasser
-block.darksand-tainted-water.name = Dunkler Sand in unreinem Wasser
-block.tar.name = Öl
+block.darksand-tainted-water.name = Unreines Wasser (Dunkler Sand)
+block.tar.name = Teer
block.stone.name = Stein
block.sand.name = Sand
block.darksand.name = Dunkler Sand
@@ -893,7 +893,7 @@ block.icerocks.name = Eis-Felsen
block.snowrocks.name = Schnee-Felsen
block.dunerocks.name = Dünen-Felsen
block.pine.name = Kiefer
-block.white-tree-dead.name = Weißer toter Baum
+block.white-tree-dead.name = Weißer Baum (tot)
block.white-tree.name = Weißer Baum
block.spore-cluster.name = Sporen-Cluster
block.metal-floor.name = Metallboden 1
@@ -916,8 +916,8 @@ block.copper-wall.name = Kupfermauer
block.copper-wall-large.name = Große Kupfermauer
block.titanium-wall.name = Titanmauer
block.titanium-wall-large.name = Große Titanmauer
-block.plastanium-wall.name = Plastanium Wall
-block.plastanium-wall-large.name = Large Plastanium Wall
+block.plastanium-wall.name = Plastaniummauer
+block.plastanium-wall-large.name = Große Plastaniummauer
block.phase-wall.name = Phasenmauer
block.phase-wall-large.name = Große Phasenmauer
block.thorium-wall.name = Thorium-Mauer
@@ -927,8 +927,8 @@ block.door-large.name = Großes Tor
block.duo.name = Doppelgeschütz
block.scorch.name = Scatter
block.scatter.name = Luftgeschütz
-block.hail.name = Streuer
-block.lancer.name = Lanzer
+block.hail.name = Hail
+block.lancer.name = Lancer
block.conveyor.name = Förderband
block.titanium-conveyor.name = Titan-Förderband
block.armored-conveyor.name = Gepanzertes Förderband
@@ -937,11 +937,12 @@ block.junction.name = Kreuzung
block.router.name = Verteiler
block.distributor.name = Großer Verteiler
block.sorter.name = Sortierer
-block.inverted-sorter.name = Inverted Sorter
+block.inverted-sorter.name = Invertierter Sorter
block.message.name = Nachricht
-block.illuminator.name = Illuminator
-block.illuminator.description = A small, compact, configurable light source. Requires power to function.
+block.illuminator.name = Illuminierer
+block.illuminator.description = Eine kleine, kompakte, konfigurierbare Lichtquelle. Benötigt Strom.
block.overflow-gate.name = Überlauftor
+block.underflow-gate.name = Unterlauftor
block.silicon-smelter.name = Silizium-Schmelzer
block.phase-weaver.name = Phasenweber
block.pulverizer.name = Pulverisierer
@@ -949,12 +950,12 @@ block.cryofluidmixer.name = Kryoflüssigkeitsmixer
block.melter.name = Schmelzer
block.incinerator.name = Verbrennungsanlage
block.spore-press.name = Sporenpresse
-block.separator.name = Separator
+block.separator.name = Trenner
block.coal-centrifuge.name = Kohlenzentrifuge
block.power-node.name = Stromknoten
block.power-node-large.name = Großer Stromknoten
block.surge-tower.name = Schwall-Turm
-block.diode.name = Battery Diode
+block.diode.name = Batterie-Diode
block.battery.name = Batterie
block.battery-large.name = Große Batterie
block.combustion-generator.name = Verbrennungsgenerator
@@ -978,7 +979,7 @@ block.mechanical-pump.name = Mechanische Pumpe
block.item-source.name = Materialquelle
block.item-void.name = Materialschlucker
block.liquid-source.name = Flüssigkeitsquelle
-block.liquid-void.name = Liquid Void
+block.liquid-void.name = Flüssigkeitsschlucker
block.power-void.name = Stromsenke
block.power-source.name = Unendliche Stromquelle
block.unloader.name = Entlader
@@ -1038,8 +1039,8 @@ block.container.name = Container
block.launch-pad.name = Launchpad
block.launch-pad-large.name = Großes Launchpad
team.blue.name = Blau
-team.crux.name = red
-team.sharded.name = orange
+team.crux.name = Rot
+team.sharded.name = Orange
team.orange.name = Orange
team.derelict.name = Derelict
team.green.name = Grün
@@ -1061,37 +1062,37 @@ unit.lich.name = Lich
unit.reaper.name = Reaper
tutorial.next = [lightgray]
tutorial.intro = Du befindest dich im[scarlet] Mindustry-Tutorial.[]\nBeginne, indem du[accent] Kupfer abbaust[]. Tippe dazu auf ein Kupfervorkommen in der Nähe deiner Basis.\n\n[accent]{0}/{1} Kupfer
-tutorial.intro.mobile = You have entered the[scarlet] Mindustry Tutorial.[]\nSwipe the screen to move.\n[accent]Pinch with 2 fingers [] to zoom in and out.\nBegin by[accent] mining copper[]. Move close to it, then tap a copper ore vein near your core to do this.\n\n[accent]{0}/{1} copper
-tutorial.drill = Manuelles Abbauen ist ineffizient.\n[accent]Bohrer []können automatisch abbauen.\nTippe auf den Bohrer Tab unten rechts.\nWähle den[accent] Mechanischen Bohrer[].\nPlatziere ihn durch Tippen auf ein Kupfervorkommen.\nMit einem [accent]Rechtsklick[] brichst du den Bau ab.
-tutorial.drill.mobile = Manuelles Abbauen ist ineffizient.\n[accent]Bohrer []können automatisch abbauen.\nTippe auf den Bohrer Tab unten rechts.\nWähle den[accent] Mechanischen Bohrer[].\nPlatziere ihn durch Tippen auf ein Kupfervorkommen, dann klicke auf das[accent] Häkchen[] unten um deine Auswahl zu bestätigen.\nKlicke auf den[accent] X-Button[] um den Bau abzubrechen.
-tutorial.blockinfo = Jeder Block hat unterschiedliche Eigenschaften. Jeder Bohrer kann immer nur ein bestimmtes Material abbauen.\nFür Infos und Stats eines Blocks wähle einen Block im Baumenü aus und [accent] klicke auf den "?"-Button.[]\n\n[accent]Schau dir jetzt die Stats des Mechanischen Bohrers an.[]
+tutorial.intro.mobile = Du befindest dich im [scarlet]Mindustry Tutorial.[]\nWische über den Bildschirm, um dich zu bewegen.\n[accent]Benutze zwei Finger[] um heran- und hinauszuzoomen.\nBeginne, indem du [accent]Kupfer abbaust[]. Bewege dich zu einem Kupfervorkommen und tippe anschließend darauf.\n\n[accent]{0}/{1} Kupfer
+tutorial.drill = Manuelles Abbauen ist ineffizient.\n[accent]Bohrer []können automatisch abbauen.\nTippe auf den Bohrer-Tab unten rechts.\nWähle den[accent] Mechanischen Bohrer[].\nPlatziere ihn durch Klicken auf ein Kupfervorkommen.\nMit einem [accent]Rechtsklick[] brichst du den Bau ab.
+tutorial.drill.mobile = Manuelles Abbauen ist ineffizient.\n[accent]Bohrer []können automatisch abbauen.\nTippe auf den Bohrer Tab unten rechts.\nWähle den[accent] Mechanischen Bohrer[].\nPlatziere ihn durch Tippen auf ein Kupfervorkommen, dann klicke auf das[accent] Häkchen[] unten um deine Auswahl zu bestätigen.\nKlicke auf den[accent] X-Button[], um den Bau abzubrechen.
+tutorial.blockinfo = Jeder Block hat unterschiedliche Eigenschaften. Jeder Bohrer kann immer nur ein bestimmtes Material abbauen.\nFür Infos und Stats eines Blocks wähle einen Block im Baumenü aus und [accent] klicke auf den "?"-Button.[]\n\n[accent]Schaue dir jetzt die Stats des Mechanischen Bohrers an.[]
tutorial.conveyor = Mit [accent]Förderbändern[] werden Materialien zum Kern transportiert.\nReihe mehrere Förderbänder aneinander bis zum Kern.
-tutorial.conveyor.mobile = Mit [accent]Förderbändern[] werden Materialien zum Kern transportiert.\nReihe mehrere Förderbänder aneinander bis zum Kern.\n[accent] Zum Bau in einer Reihe lasse deinen Finger für einige Sekunden gedrückt[] und ziehe ihn in eine beliebige Richtung.\n\n[accent]{0}/{1} Förderbänder in Reihe erstellt\n[accent]0/1 Ressourcen transportiert.
-tutorial.turret = Verteidigungsgebäude müssen gebaut werden um[LIGHT_GRAY] Gegner[] abzuwehren.\nBaue einen Duo Geschützturm in die Nähe deiner Basis.
-tutorial.drillturret = Duo Geschütztürme benötigen[accent] Kupfermunition, []um schießen zu können.\nPlatziere neben das Geschütz einen Bohrer, um ihn mit Kupfer zu versorgen.
+tutorial.conveyor.mobile = Mit [accent]Förderbändern[] werden Materialien zum Kern transportiert.\nReihe mehrere Förderbänder aneinander bis zum Kern.\n[accent] Zum Bau in einer Reihe lasse deinen Finger für einige Sekunden gedrückt[] und ziehe ihn in eine beliebige Richtung.\n\n[accent]Platziere 2 Förderbänder, dann transportiere ein Erz zum Kern.
+tutorial.turret = Verteidigungsgebäude müssen gebaut werden um[lightgray] Gegner[] abzuwehren.\nBaue ein Doppelgeschütz in die Nähe deiner Basis.
+tutorial.drillturret = Doppelgeschütz benötigen[accent] Kupfermunition, []um schießen zu können.\nPlatziere neben das Geschütz einen Bohrer, um ihn mit Kupfer zu versorgen.
tutorial.pause = Du kannst das Spiel jederzeit [accent]pausieren.[]\nIn einer Pause kannst du den Bau weiterer Gebäude in Auftrag geben.\n\n[accent]Drücke die Leertaste um zu pausieren.
tutorial.pause.mobile = Du kannst das Spiel jederzeit [accent]pausieren.[]\nIn einer Pause kannst du den Bau weiterer Gebäude in Auftrag geben.\n\n[accent]Drücke diesen Button oben links um zu pausieren.
-tutorial.unpause = Drücke die Leertaste erneut um das Spiel fortzusetzen.
-tutorial.unpause.mobile = Drücke ihn erneut um das Spiel fortzusetzen.
-tutorial.breaking = Oft kommt es vor, dass Blöcke zerstört werden müssen.\n[accent]Halte die rechte Maustaste gedrückt[] während du eine Fläche auswählst. Dadurch werden alle Blöcke darin zerstört.[]\n\n[accent]Zerstöre alle Schrott-Blöcke links neben deinem Kern mithilfe der Flächenauswahl.
-tutorial.breaking.mobile = Oft kommt es vor, dass Blöcke zerstört werden müssen.\n[accent]Wähle den Abbau-Modus[], dann wähle einen Block um ihn zu zerstören.\nZerstöre eine Fläche indem du deinen Finger einige Sekunden gedrückt hältst[] und in eine beliebige Richtung ziehst.\nTippe auf das Häkchen um den Rückbau zu bestätigen.\n\n[accent]Zerstöre all Schrott-Blöcke links des Kerns mithilfe der Flächenauswahl.
+tutorial.unpause = Drücke die Leertaste erneut, um das Spiel fortzusetzen.
+tutorial.unpause.mobile = Drücke ihn erneut, um das Spiel fortzusetzen.
+tutorial.breaking = Oft kommt es vor, dass Blöcke zerstört werden müssen.\n[accent]Halte die rechte Maustaste gedrückt[] und wähle eine Fläche aus. Dadurch werden alle Blöcke darin zerstört.[]\n\n[accent]Zerstöre alle Schrott-Blöcke links neben deinem Kern mithilfe der Flächenauswahl.
+tutorial.breaking.mobile = Oft kommt es vor, dass Blöcke zerstört werden müssen.\n[accent]Wähle den Abbau-Modus[], dann wähle einen Block um ihn zu zerstören.\nZerstöre eine Fläche, indem du deinen Finger einige Sekunden gedrückt hältst[] und in eine beliebige Richtung ziehst.\nTippe auf das Häkchen um den Rückbau zu bestätigen.\n\n[accent]Zerstöre all Schrott-Blöcke links des Kerns mithilfe der Flächenauswahl.
tutorial.withdraw = Einige Situationen erfordern, dass Materialien direkt aus den Blöcken aufgenommen werden.\nUm dies zu tun, [accent]tippe auf einen Block[] mit Materialien dann [accent]tippe auf das Material[] in diesem Block.\nUm mehrere Materialien zu entnehmen [accent]tippe darauf und halte die Maustaste gedrückt[].\n\n[accent]Entnimm etwas Kupfer vom Kern.[]
-tutorial.deposit = Materialien können in Blöcke abgelegt werden, indem du sie dorthin ziehst.\n\n[accent]Lege das Kupfer zurück in den Kern.[]
-tutorial.waves = Der [LIGHT_GRAY]Gegner[] greift an.\n\nVerteidige deinen Kern 2 Wellen lang. Baue mehr Türme.
+tutorial.deposit = Materialien können in Blöcke abgelegt werden, indem du die linke Maustaste drückst und von deinem Schiff dorthin ziehst.\n\n[accent]Lege das Kupfer zurück in den Kern.[]
+tutorial.waves = Der [lightgray]Gegner[] greift an.\n\nVerteidige deinen Kern 2 Wellen lang. Baue mehr Türme.
tutorial.waves.mobile = Der[lightgray] Gegner[] greift an.\n\nVerteidige deinen Kern 2 Wellen lang. Dein Schiff feuert automatisch auf Gegner.\nBaue mehr Geschütztürme und Bohrer. Baue mehr Kupfer ab.
tutorial.launch = Sobald du eine bestimmte Welle erreicht hast, kannst du die [accent]Mission abschließen[]. Dadurch lässt du deine Basis zurück[accent] und überträgst alle Ressourcen in deinen Kern.[]\nDiese Ressourcen können zur Erforschung neuer Technologien eingesetzt werden.\n\n[accent]Drücke nun den Abschluss-Button.
item.copper.description = Ein nützliches Material. Wird in allen Arten von Blöcken verwendet.
item.lead.description = Ein grundlegendes Material. Häufig in Elektronik und Flüssigkeits-Transport-Blöcken verwendet.
item.metaglass.description = Eine extrem harte Glasmischung. Wird zur Verteilung und Lagerung von Flüssigkeiten benutzt.
-item.graphite.description = Mineralisierter Kohlenstoff Wird für Munition und elektrische Isolierung verwendet.
+item.graphite.description = Mineralisierter Kohlenstoff. Wird für Munition und elektrische Isolierung verwendet.
item.sand.description = Ein gängiges Material, welches häufig in geschmolzener Form, flüssig oder als Legierung verwendet wird.
-item.coal.description = Ein sehr häufig vorkommender Kraftstoff.
+item.coal.description = Ein sehr häufig vorkommender Kraftstoff. Fossilierte Pflanzenmasse, geformt lange bevor dem Sporen-Ereignis.
item.titanium.description = Ein seltenes, sehr leichtes Metall. Häufig in Flüssigkeits-Transport-Blöcken, Abbauanlagen und Luftschiffen verwendet.
item.thorium.description = Ein dichtes radioaktives Metall, welches als strukturelle Unterstützung und nuklearer Kraftstoff verwendet wird.
-item.scrap.description = Überreste alter Gebäude und Einheiten. Enthalten Spuren verschiedener Metalle.
-item.silicon.description = Ein sehr nützlicher Halbleiter. Findet Anwendung in Solaranlagen und komplexer Elektronik.
-item.plastanium.description = Ein leichtes dehnbares Material, welches in Flugzeugen und Splittermunition verwendet wird.
+item.scrap.description = Überreste alter Gebäude und Einheiten. Enthält Spuren verschiedener Metalle.
+item.silicon.description = Ein sehr nützlicher Halbleiter. Findet Anwendung in Solaranlagen, komplexer Elektronik und zielsuchender Munition.
+item.plastanium.description = Ein leichtes, dehnbares Material, welches in Flugzeugen und Splittermunition verwendet wird.
item.phase-fabric.description = Eine nahezu gewichtslose Substanz, die in fortgeschrittener Elektronik und in selbstreparierender Technologie verwendet wird.
item.surge-alloy.description = Eine fortgeschrittene Legierung mit einzigartigen elektrischen Eigenschaften.
item.spore-pod.description = Wird zur Umwandlung in Öl, Sprengstoff und Kraftstoff verwendet.
@@ -1099,9 +1100,9 @@ item.blast-compound.description = Eine flüchtige Mischung, die in Bomben und Sp
item.pyratite.description = Eine extrem leicht entflammbare Substanz. Findet Verwendung in Brandwaffen.
liquid.water.description = Wird üblicherweise zum Kühlen von Maschinen und zur Müllverarbeitung verwendet.
liquid.slag.description = Ein Gemisch aus verschiedenen Arten von Metall, welche miteinander vermischt wurden. Kann in seine Bestandteile getrennt oder als Waffe auf feindliche Einheiten gesprüht werden.
-liquid.oil.description = Kann verbrannt, zum explodieren gebracht, oder als Kühlung verwendet werden.
-liquid.cryofluid.description = Die effizienteste Flüssigkeit, um Dinge herunter zu kühlen.
-mech.alpha-mech.description = Der Standard-Mech. Ist angemessen schnell und macht ordentlich Schaden. Kann für erweiterte offensive Fähigkeiten bis zu 3 Drohnen erzeugen.
+liquid.oil.description = Kann verbrannt, zum Explodieren gebracht, oder zur Kühlung verwendet werden.
+liquid.cryofluid.description = Die Flüssigkeit, die Dinge am effizientesten herunterkühlen kann.
+mech.alpha-mech.description = Der Standard-Mech. Angemessen schnell und macht ordentlich Schaden. Kann für erweiterte offensive Fähigkeiten bis zu 3 Drohnen erzeugen.
mech.delta-mech.description = Ein schneller, leicht gepanzerter Mech, der für Überfälle gemacht wurde. Verursacht wenig Schaden gegen Gebäude, aber tötet Gruppen von Gegnern durch seine Lichtbogen-Waffen.
mech.tau-mech.description = Ein Unterstützungs-Mech. Kann Blöcke durch Schüsse heilen. Kann Feuer löschen und verbündete in seinem Aktionsradius heilen.
mech.omega-mech.description = Ein klobiger und gut gepanzerter Mech, der für den Angriff an der Front entwickelt wurde. Seine Rüstungsfähigkeit ermöglicht es ihm, 90% des Schadens abzuwehren.
@@ -1139,20 +1140,20 @@ block.coal-centrifuge.description = Verfestigt Öl zu Kohlenstücken.
block.incinerator.description = Vernichtet beliebige überschüssige Materialien oder Flüssigkeiten.
block.power-void.description = Verschlingt den kompletten übrigen Strom. Nur im Sandkasten-Modus verfügbar.
block.power-source.description = Erzeugt unendlich viel Strom. Nur im Sandkasten-Modus verfügbar.
-block.item-source.description = Produziert unendlich items. Nur im Sandkasten-Modus verfügbar.
+block.item-source.description = Produziert unendlich viele Gegenstände. Nur im Sandkasten-Modus verfügbar.
block.item-void.description = Zerstört Materialien, die hereingegeben werden, ohne Strom zu verbrauchen. Nur im Sandkasten-Modus verfügbar.
block.liquid-source.description = Produziert unendlich Flüssigkeiten. Nur im Sandkasten-Modus verfügbar.
-block.liquid-void.description = Removes any liquids. Sandbox only.
+block.liquid-void.description = Entfernt jegliche Flüssigkeiten. Nur im Sandkasten-Modus verfügbar.
block.copper-wall.description = Ein günstiger Verteidigungsblock.\nNützlich, um die Basis und Türme in den ersten Wellen zu beschützen.
block.copper-wall-large.description = Ein günstiger Verteidigungsblock.\nNützlich, um die Basis und Türme in den ersten Wellen zu beschützen.\nBenötigt mehrere Kacheln.
-block.titanium-wall.description = Ein mittel starker Verteidigungsblock.\nBietet mäßigen Schutz vor Feinden.
-block.titanium-wall-large.description = Ein mittel starker Verteidigungsblock.\nBeitet mäßigen Schutz vor Feinden.\nBenötigt mehrere Kacheln.
-block.plastanium-wall.description = A special type of wall that absorbs electric arcs and blocks automatic power node connections.
-block.plastanium-wall-large.description = A special type of wall that absorbs electric arcs and blocks automatic power node connections.\nSpans multiple tiles.
+block.titanium-wall.description = Ein mittelstarker Verteidigungsblock.\nBietet mäßigen Schutz vor Feinden.
+block.titanium-wall-large.description = Ein mittelstarker Verteidigungsblock.\nBietet mäßigen Schutz vor Feinden.\nBenötigt mehrere Kacheln.
+block.plastanium-wall.description = Eine spezielle Wand, die elektrische Funken absorbiert und automatische Stromknoten-Verbindung blockiert.
+block.plastanium-wall-large.description = Eine spezielle Wand, die elektrische Funken absorbiert und automatische Stromknoten-Verbindung blockiert.\nBenötigt mehrere Kacheln.
block.thorium-wall.description = Ein starker Verteidigungsblock.\nBietet guten Schutz vor Feinden.
-block.thorium-wall-large.description = Ein starker Verteidigungsblock.\nBietet Guten Schutz vor Feinden.\nBenötigt mehrere Kacheln.
-block.phase-wall.description = Nicht so stark, wie eine Thorium-Mauer, aber reflektiert Schüsse bis zu einer gewissen Stärke.
-block.phase-wall-large.description = Nicht so stark, wie eine Thorium-Mauer, aber reflektiert Schüsse bis zu einer gewissen Stärke.\nBenötigt mehrere Kacheln.
+block.thorium-wall-large.description = Ein starker Verteidigungsblock.\nBietet guten Schutz vor Feinden.\nBenötigt mehrere Kacheln.
+block.phase-wall.description = Nicht so stark wie eine Thorium-Mauer, aber reflektiert Schüsse bis zu einer gewissen Stärke.
+block.phase-wall-large.description = Nicht so stark wie eine Thorium-Mauer, aber reflektiert Schüsse bis zu einer gewissen Stärke.\nBenötigt mehrere Kacheln.
block.surge-wall.description = Der stärkste Verteidigungsblock.\nHat eine kleine Chance, bei einem Schuss einen Lichtbogen in Richtung Angreifer auszulösen.
block.surge-wall-large.description = Der stärkste Verteidigungsblock.\nHat eine kleine Chance, bei einem Schuss einen Lichtbogen in Richtung Angreifer auszulösen.\nBenötigt mehrere Kacheln.
block.door.description = Eine kleine Tür, die durch Tippen geöffnet und geschlossen werden kann.\nGegner können durch geöffnete Türen schießen und laufen.
@@ -1209,8 +1210,8 @@ block.oil-extractor.description = Verwendet große Mengen an Strom, um Öl aus S
block.core-shard.description = Die erste Version der Kernkapsel. Einmal zerstört, ist jeglicher Kontakt zur Region verloren. Lass das nicht zu.
block.core-foundation.description = Die zweite Version des Kerns. Besser gepanzert. Speichert mehr Ressourcen.
block.core-nucleus.description = Die dritte und letzte Version der Kernkapsel. Sehr gut gepanzert. Speichert enorme Mengen an Ressourcen.
-block.vault.description = Speichert eine große Menge an Materialien pro Typ. Ein[LIGHT_GRAY] Entlader[] kann verwendet werden, um Materialien auszuladen.
-block.container.description = Speichert eine kleine Menge an Materialien pro Typ. Ein[LIGHT_GRAY] Entlader[] kann verwendet werden, um Materialien auszuladen.
+block.vault.description = Speichert eine große Menge an Materialien pro Typ. Ein[lightgray] Entlader[] kann verwendet werden, um Materialien auszuladen.
+block.container.description = Speichert eine kleine Menge an Materialien pro Typ. Ein[lightgray] Entlader[] kann verwendet werden, um Materialien auszuladen.
block.unloader.description = Entlädt Materialien aus einem Container, Tresor oder einer Basis auf ein Förderband oder direkt in einen benachbarten Block. Der Typ des auszuladenden Materials kann durch darauf tippen verändert werden.
block.launch-pad.description = Startet Stapel von Items, ohne dass ein Kernstart erforderlich ist. Unvollendet.
block.launch-pad-large.description = Eine verbesserte Version des Launchpads. Speichert weitere Items. Wird häufiger gestartet.
diff --git a/core/assets/bundles/bundle_es.properties b/core/assets/bundles/bundle_es.properties
index 602e48455c..2a2be22d01 100644
--- a/core/assets/bundles/bundle_es.properties
+++ b/core/assets/bundles/bundle_es.properties
@@ -59,6 +59,7 @@ stat.built = Estructuras Construidas:[accent] {0}
stat.destroyed = Estructuras Destruidas:[accent] {0}
stat.deconstructed = Estructuras Desconstruidas:[accent] {0}
stat.delivered = Recursos Lanzados:
+stat.playtime= Tiempo jugado:[accent] {0}
stat.rank = Rango final: [accent]{0}
launcheditems = [accent]Recursos Lanzados
@@ -104,6 +105,7 @@ mods.none = [LIGHT_GRAY]No se encontraron Mods!
mods.guide = Guia de Modding
mods.report = Reportar Error
mods.openfolder = Abrir carpeta de mods
+mod. display = [greay] mod: [orange] {0}
mod.enabled = [lightgray]Activado
mod.disabled = [scarlet]Desactivado
mod.disable = Desactivar
@@ -170,6 +172,11 @@ hosts.discovering.any = Descubrir juegos
server.refreshing = Actualizando servidor...
hosts.none = [lightgray]¡No se han encontrado partidas LAN!
host.invalid = [scarlet]No se ha podido conectar al anfitrión.
+
+servers.local = Servidores Locales
+servers.remote = Servidores Remotos
+servers.global = Global Servers
+
trace = Rastrear Jugador
trace.playername = Nombre de jugador: [accent]{0}
trace.ip = IP: [accent]{0}
@@ -251,6 +258,7 @@ copylink = Copiar Enlace
back = Atrás
data.export = Exportar Datos
data.import = Importar Datos
+data.openfolder = Abrir Carpeta de Datos
data.exported = Datos exportados.
data.invalid = Esta data del juego no es valida.
data.import.confirm = Importando los datos externos borrará[scarlet] todo[] tu progreso.\n[accent]Esto no se puede rehacer![]\n\nUna vez que los datos hayan sido importados, el juego saldrá automaticamente.
@@ -261,7 +269,7 @@ quit.confirm.tutorial = ¿Estás seguro de que sabes qué estas haciendo?\nSe pu
loading = [accent]Cargando...
reloading = [accent]Recargando mods...
saving = [accent]Guardando...
-cancelbuilding = [accent][[{0}][] para impiar el plan
+cancelbuilding = [accent][[{0}][] para limpiar el plan
selectschematic = [accent][[{0}][] para seleccionar+copiar
pausebuilding = [accent][[{0}][] para pausar la construcción
resumebuilding = [scarlet][[{0}][] para resumir la construcción
@@ -531,6 +539,8 @@ error.crashtitle = Un error ha ocurrido.
blocks.input = Entrada
blocks.output = Salida
blocks.booster = Potenciador
+block.tiles = Casillas Requeridas
+block.affinities = Afinidades
block.unknown = [LIGHT_GRAY]???
blocks.powercapacity = Capacidad de Energía
blocks.powershot = Energía/Disparo
@@ -665,9 +675,11 @@ setting.mutesound.name = Silenciar Sonido
setting.crashreport.name = Enviar informes de fallos anónimos
setting.savecreate.name = Crear puntos de guardado automáticamente
setting.publichost.name = Visibilidad del juego público
+setting.playerlimit.name = Limite de Jugadores
setting.chatopacity.name = Opacidad del Chat
setting.lasersopacity.name = Opacidad de los rayos láser
-setting.playerchat.name = Mostrar el chat in-game
+setting.bridgeopacity.name = Opacidad de Puentes
+setting.playerchat.name = Mostrar el chat de burbuja
public.confirm = ¿Quieres hacer público tu juego?\n[lightgray]Esto se puede cambiar más tarde en Configuración->Juego->Visibilidad pública del juego.
public.beta = Recuerda que en las versiones beta del juego no puedes crear partidas públicas.
uiscale.reset = La escala de la interfaz ha sido modificada con éxito.\nPulsa "OK" para conservar esta escala.\n[scarlet]Deshaciendo los cambios y saliendo al menu en [accent] {0}[]segundos...
@@ -789,7 +801,7 @@ item.coal.name = Carbón
item.graphite.name = Grafito
item.titanium.name = Titanio
item.thorium.name = Torio
-item.silicon.name = Silicona
+item.silicon.name = Silicio
item.plastanium.name = Plastanio
item.phase-fabric.name = Tejido de fase
item.surge-alloy.name = Aleación Eléctrica
@@ -885,7 +897,7 @@ block.snow.name = Nieve
block.craters.name = Cráteres
block.sand-water.name = Agua con Arena
block.darksand-water.name = Agua con Arena Oscura
-block.char.name = Charbonizado
+block.char.name = Carbonizado
block.holostone.name = Piedra hologramatica
block.ice-snow.name = Hielo Nieve
block.rocks.name = Rocas
@@ -926,7 +938,7 @@ block.door.name = Puerta
block.door-large.name = Puerta Grande
block.duo.name = Dúo
block.scorch.name = Quemador
-block.scatter.name = Scatter
+block.scatter.name = Dispersor
block.hail.name = Granizo
block.lancer.name = Lancero
block.conveyor.name = Cinta Transportadora
@@ -942,7 +954,8 @@ block.message.name = Mensaje
block.illuminator.name = Iluminador
block.illuminator.description = Una fuente de luz pequeña, compacta y configurable. Requiere poder para funcionar.
block.overflow-gate.name = Compuerta de Desborde
-block.silicon-smelter.name = Horno para Silicona
+block.underflow-gate.name = Compuerta de Subdesbordamiento
+block.silicon-smelter.name = Horno para Silicio
block.phase-weaver.name = Tejedor de Fase
block.pulverizer.name = Pulverizador
block.cryofluidmixer.name = Mezclador de Criogénicos
@@ -983,8 +996,8 @@ block.power-void.name = Vacío de energía
block.power-source.name = Energía Infinita
block.unloader.name = Descargador
block.vault.name = Bóveda
-block.wave.name = Horda
-block.swarmer.name = Enjambredor
+block.wave.name = Ola
+block.swarmer.name = Enjambre
block.salvo.name = Salva
block.ripple.name = Onda
block.phase-conveyor.name = Cinta Transportadora de Fase
@@ -1057,7 +1070,7 @@ unit.revenant.name = Revenante
unit.eruptor.name = Erupcionador
unit.chaos-array.name = Matriz del caos
unit.eradicator.name = Erradicador
-unit.lich.name = Lich
+unit.lich.name = Exánime
unit.reaper.name = Segador
tutorial.next = [lightgray]
tutorial.intro = Has entrado en el[scarlet]Tutorial de Mindustry.[]\nComienza[accent]minando cobre[]. Toca en una veta de cobre cercana al núcleo para hacer esto.\n\n[accent]{0}/{1} cobre
@@ -1123,11 +1136,11 @@ unit.revenant.description = Una unidad aérea pesada con misiles.
block.message.description = Almacena un mensaje. Se utiliza para comunicarse entre aliados.
block.graphite-press.description = Comprime carbón en piezas de grafito puro.
block.multi-press.description = Una versión mejorada de la prensa de grafito. Utiliza agua y energía para procesar carbón rápida y eficientemente.
-block.silicon-smelter.description = Reduce la arena con carbón puro. Produce silicicona.
+block.silicon-smelter.description = Reduce la arena con carbón puro. Produce silicio.
block.kiln.description = Funde arena y plomo en metacristal. Requiere cantidades pequeñas de energía.
block.plastanium-compressor.description = Produce plastanio con aceite y titanio.
block.phase-weaver.description = Produce tejido de fase del torio radioactivo y altas cantidades de arena.
-block.alloy-smelter.description = Produce "surge alloy" con titanio, plomo, silicicona y cobre.
+block.alloy-smelter.description = Produce aleación eléctrica con titanio, plomo, silicio y cobre.
block.cryofluidmixer.description = Combina agua y titanio en líquido criogénico, que es mucho más eficiente para enfriar.
block.blast-mixer.description = Usa aceite para transformar pirotita en un objeto menos inflamable pero más explosivo: compuesto explosivo.
block.pyratite-mixer.description = Mezcla carbón, plomo y arena en pirotita altamente inflamable.
@@ -1166,20 +1179,21 @@ block.conveyor.description = Bloque de transporte básico. Mueve objetos hacia a
block.titanium-conveyor.description = Bloque de transporte avanzado. Mueve objetos más rápido que los transportadores estándar.
block.junction.description = Actúa como puente para dos transportadores que se cruzan. Útil en situaciones con dos diferentes transportadores transportando diferentes materiales a diferentes lugares.
block.bridge-conveyor.description = Bloque avanado de transporte. Puede transportar objetos por encima hasta 3 casillas de cualquier terreno o construcción.
-block.phase-conveyor.description = Bloque de transporte avanzado. Usa energía para transportar objetos a otro transportador de fase conectado por varias casillas.
+block.phase-conveyor.description = Bloque de transporte avanzado. Usa energía para transportar objetos a otro transportador de fase conectado a través de varias casillas.
block.sorter.description = Clasifica objetos. Si un objeto es igual al seleccionado, pasará al frente. Si no, el objeto saldrá por la izquierda y la derecha.
-block.inverted-sorter.description = Procesa elementos como un clasificador estándar, pero en su lugar genera elementos seleccionados a los lados.
-block.router.description = Acepta objetos de una dirección y deja objetos equitativamente en hasta 3 direcciones diferentes. Útil para dividir los materiales de una fuente de recursos a múltiples objetivos.
+block.inverted-sorter.description = Procesa elementos como un clasificador estándar, pero en su lugar pasa elementos seleccionados a los lados.
+block.router.description = Acepta objetos de una dirección luego los deja equitativamente en hasta 3 direcciones diferentes. Útil para dividir los materiales de una fuente de recursos a múltiples objetivos. /n/n[scarlet]Nunca usar como entrade de producción porque puede tapar con los objetos de salida.[]
block.distributor.description = Un enrutador avanzado que distribuye objetos equitativamente en hasta otras 7 direcciones.
block.overflow-gate.description = Un enrutador que solo saca por la izquierda y la derecha si la cinta del frente está llena.
-block.mass-driver.description = El mejor bloque de transorte. Recoge varios objetos y los dispara a otro conductor de masa en un largo rango.
+block.underflow-gate.description = El opuesto de la compuerda de desborde. Solo dispensa hacia el frente si los lados están bloqueados.
+block.mass-driver.description = El mejor bloque de transorte. Recoge varios objetos y los dispara a otro conductor de masa en un largo rango. Requiere energía para operar.
block.mechanical-pump.description = Una bomba barata con extracción lenta, pero sin uso de energía.
block.rotary-pump.description = Una bomba avanzada. Bombea más líquido, pero requiere energía.
block.thermal-pump.description = La mejor bomba.
block.conduit.description = Bloque de transporte de líquidos básico. Funciona como un transportador, pero con líquidos. Usado con bombas, extractores u otros conductos.
block.pulse-conduit.description = Bloque de transporte de líquidos avanzado. Transporta líquidos más rápidamente y almacena más que los conductos estándar.
block.plated-conduit.description = Mueve líquidos a la misma velocidad que los conductos de pulso, pero posee más armadura. No acepta líquidos de los lados por otra cosa que no sean conductos.\nGotea menos.
-block.liquid-router.description = Acepta líquidos de una dirección y los deja en hasta 3 direcciones equitativamente. También puede amacenar cierta capacidad de líquido. Útil para dividir los líquidos de una fuente a varios objetivos.
+block.liquid-router.description = Acepta líquidos de una dirección y los deja en hasta 3 direcciones equitativamente. También puede almacenar cierta capacidad de líquido. Útil para dividir los líquidos de una fuente a varios objetivos.
block.liquid-tank.description = Almacena una gran cantidad de líquidos. Úsalo para crear almacenes cuando no hay una demanda constante de materiales o para asegurarse de enfriar bloques vitales.
block.liquid-junction.description = Actúa como un puente para dos condusctos que se cruzan. Útil en situaciones en las que hay dos conductos con líquidos diferentes a diferentes lugares.
block.bridge-conduit.description = Bloque avanzado de transporte de líquidos. Permite transportar líquidos por encima hasta 3 casillas de cualquier terreno o construcción.
@@ -1199,13 +1213,13 @@ block.solar-panel.description = Proporciona una pequeña cantidad de energía pr
block.solar-panel-large.description = Genera un mucho mejor suministro de energía que un panel solar estándar, pero también es mucho más caro de construir.
block.thorium-reactor.description = Genera grandes cantidades de energía del torio altamente radioactivo. Necesita enfriamiento constante. Explotará violentamente si no se le aporta suficiente enfriamiento.
block.impact-reactor.description = Un generador avanzado, capaz de crear cantidades masivas de energía a máxima eficiencia. Requiere una cantidad significante de energía para impulsar el comienzo del proceso.
-block.mechanical-drill.description = Un taladro barato. Cuando es colocado en casillas apropiadas, extrae objetos lentamente de forma indefinida.
-block.pneumatic-drill.description = Un taladro mejorado que es más rápido y puede obtener minerales más duros usando la presión.
+block.mechanical-drill.description = Un taladro barato. Cuando es colocado en casillas apropiadas, extrae objetos lentamente de forma indefinida. Solo es capaz de minar recursos básicos.
+block.pneumatic-drill.description = Un taladro mejorado, es capaz de minar titanio. Más rápido que un taladro mécanico.
block.laser-drill.description = Permite obtener minerales incluso más rápido con la tecnología láser, pero requiere energía. Además, se puede obtener torio radioactivo con este taladro.
block.blast-drill.description = El mejor taladro. Requiere grandes cantidades de energía.
block.water-extractor.description = Extrae agua de la tierra. Úsalo cuando no haya lagos cercanos.
-block.cultivator.description = Cultiva la tierra para obtener biomateria.
-block.oil-extractor.description = Usa grandes cantidades de energía para extraer aceite de la arena. Úsalo cuando no hay fuentes directas de aceite cerca.
+block.cultivator.description = Cultiva concentraciones de esporas en la atmosfera a vainas.
+block.oil-extractor.description = Usa grandes cantidades de energía, arena y agua para obtener petróleo. Úsalo cuando no hay fuentes directas de petróleo cerca.
block.core-shard.description = La primera iteración de la cápsula del núcleo. Una vez destruido, todo el contacto con la región es perdido. No permitas que esto ocurra.
block.core-foundation.description = La segunda versión del núcleo. Mejor blindado. Almacena más recursos.
block.core-nucleus.description = La tercera y última iteración de la cápsula del núcleo. Muy bien blindado. Almacena cantidades masivas dde recursos.
@@ -1214,30 +1228,30 @@ block.container.description = Almacena una pequeña cantidad de objetos. Úsalo
block.unloader.description = Descarga objetos de un contenedor, almacén o el núcleo a un transportador o directamente a un bloque adyacente. El tipo de objeto descargado puede ser cambiado tocando el descagador.
block.launch-pad.description = Lanza paquetes de recursos sin necesitar lanzar con el núcleo.
block.launch-pad-large.description = Una versión mejorada del pad de lanzamiento. Almacena más recursos y los lanza más frecuentemente.
-block.duo.description = Una torre pequeña y barata.
-block.scatter.description = Una torreta antiaérea de tamaño medio. Dispara fuego aéreo de plomo o chatarra a las unidades enemigas.
+block.duo.description = Una torre pequeña y barata. Útil contra enemigos terrestres.
+block.scatter.description = Una torreta escencial antiaérea de tamaño medio. Dispara fuego anti-aéreo de plomo o chatarra a las unidades enemigas.
block.scorch.description = Quema a cualquier enemigo terrestre cercano a él. Altamente efectivo a corto alcance.
-block.hail.description = Una torre de artillería pequeña.
-block.wave.description = Una torre de tamaño mediano que dispara burbujas de líquido.
-block.lancer.description = Una torre de tamaño mediano que dispara rayos cargados eléctricamente.
-block.arc.description = Una torre pequeña que disapra electricidad en un arco aleatorio al enemigo.
-block.swarmer.description = Una torre de tamaño mediano que dispara misiles en grupo.
-block.salvo.description = Una torre de tramaño mediano que dispara balas en salvos.
-block.fuse.description = Una torre grande que dispara rayos poderosos de corto alcance.
-block.ripple.description = Una torre de artillería grande que dispara varios disparos simultáneamente.
-block.cyclone.description = Una torre de disparo rápido grande.
-block.spectre.description = Una torre grande que dispara dos balas poderosas de una vez.
-block.meltdown.description = Una torre grande que dispara rayos poderosos de largo alcance.
+block.hail.description = Una torre de artillería pequeña de largo alcance.
+block.wave.description = Una torre de tamaño mediano. Dispara chorros de líquido a enemigos. Automaticamente apaga fuegos cuando recibe agua.
+block.lancer.description = Una torre láser anti-terrestre de tamaño mediano. Dispara y carga poderosos rayos de energía.
+block.arc.description = Una pequeña torre eléctrica de rango corto. Dispara arcos de electricidad a los enemigos.
+block.swarmer.description = Una torre de tamaño mediano que dispara misiles. Ataca a aire y tierra. Dispara misiles teledirigidos.
+block.salvo.description = Una versión más grande y avanzada dela torre dúo. Dispara salvas rápidas al enemigo
+block.fuse.description = Una torre grande de energía de corto alcance. Dispara tres rayos perforantes a enemigos cercanos.
+block.ripple.description = Una extramadamente poderosa torre. Dispara conjuntos de balas a los enemigos en grandes distancias.
+block.cyclone.description = Una torre grande anti-aérea y anti-terrestre. Dispara conjuntos explosivos de Flak a enemigos cercanos.
+block.spectre.description = Un cañon masivo de dos barriles. Dispara balas perforantes a objetivos de aire y tierra.
+block.meltdown.description = Un cañon láser masivo. Carga y dispara un rayo láser constante a enemigos cercanos. Requiere enfriamiento para operar.
block.command-center.description = Emite comandos de movimiento a las unidades aliadas en el mapa.\nHace que las unidades patrullen, ataquen un núcleo enemigo o se retiren al núcleo / fábrica. When no enemy core is present, units will default to patrolling under the attack command.
-block.draug-factory.description = Producedrones mineros primitivos.
-block.spirit-factory.description = Produce drones ligeros que obtienen minerales y reparan bloques.
-block.phantom-factory.description = Produce drones avanzados que son significativamente más eficientes que un dron espíritu.
+block.draug-factory.description = Produce drones mineros primitivos.
+block.spirit-factory.description = Produce drones ligeros que reparan bloques.
+block.phantom-factory.description = Produce drones avanzados de construcción.
block.wraith-factory.description = Produce unidades aéreas rápidas e interceptoras.
block.ghoul-factory.description = Produce unidades bombarderas pesadas.
-block.revenant-factory.description = Produce unidades terrestres láser pesadas.
+block.revenant-factory.description = Produce unidades aéreas lanzamisiles pesadas.
block.dagger-factory.description = Produce unidades terrestres básicas.
-block.crawler-factory.description = Produces fast self-destructing swarm units.
-block.titan-factory.description = Produce unidades terrestres avanzadas.
+block.crawler-factory.description = Produce unidades rápidas terrestres explosivas.
+block.titan-factory.description = Produce unidades terrestres avanzadas con armadura.
block.fortress-factory.description = Produce unidades terrestres de artillería pesada.
block.repair-point.description = Repara la unidad dañada más cercana a su alrededor.
block.dart-mech-pad.description = Proporciona transformación en un mecanoide de ataque básico.\nÚsalo tocándolo mientras estés en él.
diff --git a/core/assets/bundles/bundle_it.properties b/core/assets/bundles/bundle_it.properties
index 2d3e2b967f..826d42bfe1 100644
--- a/core/assets/bundles/bundle_it.properties
+++ b/core/assets/bundles/bundle_it.properties
@@ -39,7 +39,6 @@ be.check = Verifica aggiornamenti
schematic = Schematica
schematic.add = Salva Schematica...
schematics = Schematiche
-schematic.replace = Una schematica con questo nome esiste già. Sostituirla?
schematic.import = Importa schematica
schematic.exportfile = Esporta File
schematic.importfile = Importa File
@@ -160,7 +159,7 @@ server.kicked.gameover = Game over!
server.kicked.serverRestarting = Il server si sta riavviando.
server.versions = Versione client:[accent] {0}[]\nVersione server:[accent] {1}[]
host.info = Il pulsante [accent]Ospita[] ospita un server sulla porta [scarlet]6567[].[] Chiunque sulla stessa [lightgray]rete Wi-Fi o locale[] dovrebbe essere in grado di vedere il server nell'elenco server.\nSe vuoi che le persone siano in grado di connettersi ovunque tramite il tuo IP, è necessario eseguire il [accent]port forwarding[].\n\n[lightgray]Nota: se qualcuno sta riscontrando problemi durante la connessione al gioco LAN, assicurati di aver consentito a Mindustry di accedere alla rete locale nelle impostazioni del firewall.
-join.info = Qui è possibile inserire l'[accent]IP del server[] a cui connettersi, o scoprire [accent]un server sulla rete locale[] disponibile.\nSono supportati sia il multiplayer LAN che WAN.\n\n[lightgray]Nota: non esiste un elenco automatico dei server globali; se desideri connetterti a qualcuno tramite il suo IP, è necessario chiedere all'host il proprio IP.
+join.info = Qui è possibile inserire l'[accent]IP del server[] a cui connettersi, scoprire un server sulla [accent]rete locale[] o connettersi ad uno [accent]globale[].\nSono supportati sia il multiplayer LAN che WAN.\n\n[lightgray]Se vuoi connetterti a qualcuno tramite IP, dovrai chiedere all'amministratore del server il suo indirizzo IP, che può essere trovato semplicemente cercando su Google "Il mio IP" dal suo dispositivo.
hostserver = Ospita Server
invitefriends = Invita Amici
hostserver.mobile = Ospita\nServer
@@ -664,7 +663,7 @@ setting.borderlesswindow.name = Finestra Senza Bordi[lightgray] (potrebbe richie
setting.fps.name = Mostra FPS e Ping
setting.blockselectkeys.name = Mostra Tasto di Selezione del Blocco
setting.vsync.name = VSync
-setting.pixelate.name = Effetto Pixel [lightgray](potrebbe ridure le prestazioni)
+setting.pixelate.name = Effetto Pixel[lightgray] (disabilita le animazioni)
setting.minimap.name = Mostra Minimappa
setting.position.name = Mostra Posizione Giocatori
setting.musicvol.name = Volume Musica
@@ -789,6 +788,7 @@ rules.title.unit = Unità
rules.title.experimental = Sperimentale
rules.lighting = Illuminazione
rules.ambientlight = Illuminazione\nAmbientale
+rules.solarpowermultiplier = Moltiplicatore Energia Solare
content.item.name = Oggetti
content.liquid.name = Liquidi
@@ -1226,7 +1226,7 @@ block.core-nucleus.description = La terza ed ultima versione del Nucleo. Estrema
block.vault.description = Immagazzina una grande quantità di oggetti. Usalo per creare zone cuscinetto quando c'è una domanda non costante di materiali. Uno [lightgray]scaricatore[] può essere utilizzato per recuperare elementi dal deposito.
block.container.description = Immagazzina una piccola quantità di oggetti. Usalo per creare zone cuscinetto quando c'è una domanda non costante di materiali. Uno [lightgray]scaricatore[] può essere utilizzato per recuperare elementi dal contenitore.
block.unloader.description = Scarica gli oggetti da un contenitore, deposito o Nucleo su un nastro trasportatore o direttamente in un blocco adiacente. L'oggetto da scaricare può essere scelto toccando lo scaricatore.
-block.launch-pad.description = Lancia oggetti nel tuo Nucleo senza necessità di un lasciare la zona.
+block.launch-pad.description = Lancia oggetti nel tuo Nucleo senza necessità di lasciare la zona.
block.launch-pad-large.description = Una versione migliore dell'Ascensore Spaziale, immagazzina più oggetti. Lancia oggetti più frequentemente.
block.duo.description = Una torretta piccola ed economica.
block.scatter.description = Una torretta antiaerea di medie dimensioni. Spara schegge di piombo o frammenti di rottami sulle unità nemiche.
diff --git a/core/assets/bundles/bundle_ja.properties b/core/assets/bundles/bundle_ja.properties
index 9fc952977a..f979dfe05d 100644
--- a/core/assets/bundles/bundle_ja.properties
+++ b/core/assets/bundles/bundle_ja.properties
@@ -3,16 +3,16 @@ credits = クレジット
contributors = 翻訳や開発に協力してくださった方々
discord = MindustryのDiscordに参加!
link.discord.description = Mindustryの公式Discordグループ
-link.reddit.description = The Mindustry subreddit
+link.reddit.description = MindustryのReddit
link.github.description = このゲームのソースコード
link.changelog.description = 変更履歴
link.dev-builds.description = 不安定な開発版
link.trello.description = 公式 Trelloボード で実装予定の機能をチェック
link.itch.io.description = itch.io でゲームをダウンロード
link.google-play.description = Google Play ストアを開く
-link.f-droid.description = F-Droid catalogue listing
+link.f-droid.description = F-Droid を開く
link.wiki.description = 公式 Mindustry Wiki
-link.feathub.description = Suggest new features
+link.feathub.description = 新機能を提案する
linkfail = リンクを開けませんでした!\nURLをクリップボードにコピーしました。
screenshot = スクリーンショットを {0} に保存しました。
screenshot.invalid = マップが広すぎます。スクリーンショットに必要なメモリが足りない可能性があります。
@@ -30,24 +30,24 @@ load.mod = MOD
load.scripts = Scripts
be.update = A new Bleeding Edge build is available:
-be.update.confirm = Download it and restart now?
-be.updating = Updating...
-be.ignore = Ignore
-be.noupdates = No updates found.
-be.check = Check for updates
+be.update.confirm = ダウンロードして再起動しますか?
+be.updating = 更新中...
+be.ignore = 無視する
+be.noupdates = 更新が見つかりません。
+be.check = 更新を確認します。
schematic = 設計図
schematic.add = 設計図を保存しています...
schematics = 設計図一覧
schematic.replace = 同じ名前の設計図があるようです。 上書きしますか?
-schematic.import = 設計図を読み込んでいます...
+schematic.import = 設計図をインポート
schematic.exportfile = ファイルに出力する
schematic.importfile = ファイルから読み込む
schematic.browseworkshop = ワークショップを表示する
schematic.copy = クリップボードにコピーする
schematic.copy.import = クリップボードから読み込む
schematic.shareworkshop = ワークショップで共有する
-schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Flip Schematic
+schematic.flip = [accent][[{0}][]/[accent][[{1}][]: 反転
schematic.saved = 設計図を保存しました。
schematic.delete.confirm = この設計図は完全に削除されます。よろしいですか
schematic.rename = 設計図の名前を変更する。
@@ -88,7 +88,7 @@ maps.browse = マップを閲覧する
continue = 続ける
maps.none = [lightgray]マップが見つかりませんでした!
invalid = 無効
-pickcolor = Pick Color
+pickcolor = 色を選ぶ
preparingconfig = 設定ファイルを準備中
preparingcontent = コンテンツを準備中
uploadingcontent = コンテンツをアップロードしています
@@ -109,10 +109,10 @@ mod.disabled = [scarlet]無効
mod.disable = 無効化
mod.delete.error = MODを削除することができませんでした。
mod.requiresversion = [scarlet]Requires min game version: [accent]{0}
-mod.missingdependencies = [scarlet]Missing dependencies: {0}
-mod.erroredcontent = [scarlet]Content Errors
-mod.errors = Errors have occurred loading content.
-mod.noerrorplay = [scarlet]You have mods with errors.[] Either disable the affected mods or fix the errors before playing.
+mod.missingdependencies = [scarlet]依存関係がありません。: {0}
+mod.erroredcontent = [scarlet]コンテンツエラー
+mod.errors = コンテンツの読み込み中にエラーが発生しました。
+mod.noerrorplay = [scarlet]以下のModにエラーがあります。[] Modを無効化するか、エラーを修正してください。
mod.nowdisabled = [scarlet]Mod '{0}' is missing dependencies:[accent] {1}\n[lightgray]These mods need to be downloaded first.\nThis mod will be automatically disabled.
mod.enable = 有効化
mod.requiresrestart = このModをインストールするためにはゲームの再起動が必要です。
@@ -125,7 +125,7 @@ mod.author = [LIGHT_GRAY]著者:[] {0}
mod.missing = このセーブには、アップグレードされた可能性があるModsか、ここに存在しないModsが必要です。 メモリのセーブを保存する! ロードしてもよろしいですか?\n[lightgray]MODS:\n{0}
mod.preview.missing = このModをワークショップで公開するには、Modのプレビュー画像を設定する必要があります。\n[accent] preview.png[] というファイル名の画像をmodsのフォルダに配置し、再試行してください。
mod.folder.missing = ワークショップで公開できるのは、フォルダ形式のModのみとなります。\nModをフォルダ形式に変換するには、ファイルをフォルダに解凍し、古いzipを削除してからゲームを再起動するか、modを再読み込みしてください。
-mod.scripts.unsupported = Your device does not support mod scripts. Some mods will not function correctly.
+mod.scripts.unsupported = お使いのデバイスはMod Scriptをサポートしていません。一部のModは正常に動作しません。
about.button = 情報
name = 名前:
@@ -155,7 +155,7 @@ server.kicked.nameEmpty = 無効な名前です。
server.kicked.idInUse = すでにサーバーに参加しています! 二つのアカウントでの同時接続は許可されていません。
server.kicked.customClient = このサーバーはカスタムビルドをサポートしていません。公式版をダウンロードしてください。
server.kicked.gameover = ゲームオーバー!
-server.kicked.serverRestarting = The server is restarting.
+server.kicked.serverRestarting = 再起動しています
server.versions = あなたのバージョン:[accent] {0}[]\nサーバーのバージョン:[accent] {1}[]
host.info = [accent]ホスト[]をすると、ポート[scarlet]6567[]でサーバーが開かれまます。\n同じ[lightgray]WiFiやローカル上のネットワークなど[]ではサーバーリストに表示されるようになります。\n\nIPアドレスで他のところからも接続できるようにするには、[accent]ポート開放[]が必要です。\n\n注意: もしLAN上のゲームに参加できない場合、Mindustryがファイアーウォールの設定でローカルネットワークへの接続が許可されているかを確認してください。
join.info = ここでは、[accent]サーバーのIPアドレス[]から接続したり、[accent]ローカル上[]のサーバーを探したりすることができます。\nLANやWAN上の両方のマルチプレイに対応しています。\n\n[lightgray]注意: 世界中のサーバーの一覧ではありません。他人のサーバーにIPアドレスで接続したい場合は、あらかじめホスト側にIPアドレスをお尋ねください。
@@ -241,7 +241,7 @@ warning = 警告
confirm = 確認
delete = 削除
view.workshop = ワークショップを見る
-workshop.listing = Edit Workshop Listing
+workshop.listing = ワークショップ一覧を編集する。
ok = OK
open = 開く
customize = カスタマイズ
@@ -259,7 +259,7 @@ classic.export.text = [accent]Mindustry[]のメジャーアップデートがあ
quit.confirm = 終了してもよろしいですか?
quit.confirm.tutorial = チュートリアルを終了しますか?\nチュートリアルは [accent]設定->ゲーム->チュートリアル[] から再度受けることができます。
loading = [accent]読み込み中...
-reloading = [accent]Reloading Mods...
+reloading = [accent]再読み込み中...
saving = [accent]保存中...
cancelbuilding = [accent][[{0}][] 選択を解除する
selectschematic = [accent][[{0}][] 選択し、コピーする
@@ -440,10 +440,10 @@ abandon = 撤退
abandon.text = このゾーンのすべての資源が敵に奪われます。
locked = ロック
complete = [lightgray]達成済み:
-requirement.wave = Reach Wave {0} in {1}
-requirement.core = Destroy Enemy Core in {0}
-requirement.unlock = Unlock {0}
-resume = 再開ゾーン:\n[lightgray]{0}
+requirement.wave = {0} でウェーブ {1} に到達
+requirement.core = {0} の敵のコアを破壊
+requirement.unlock = ロック解除 {0}
+resume = 再開:\n[lightgray]{0}
bestwave = [lightgray]最高ウェーブ: {0}
launch = < 発射 >
launch.title = 発射成功
@@ -669,7 +669,7 @@ setting.chatopacity.name = チャットの透明度
setting.lasersopacity.name = レーザーの透明度
setting.playerchat.name = ゲーム内にチャットを表示
public.confirm = Do you want to make your game public?\n[accent]Anyone will be able to join your games.\n[lightgray]This can be changed later in Settings->Game->Public Game Visibility.
-public.beta = Note that beta versions of the game cannot make public lobbies.
+public.beta = ベータ版では使用できません。
uiscale.reset = UIサイズが変更されました。\nこのままでよければ「OK」を押してください。\n[scarlet][accent]{0}[] 秒で元の設定に戻ります...
uiscale.cancel = キャンセル & 終了
setting.bloom.name = Bloom
@@ -747,7 +747,7 @@ mode.attack.description = ウェーブがなく、敵の基地を破壊するこ
mode.custom = カスタムルール
rules.infiniteresources = 資源の無限化
-rules.reactorexplosions = Reactor Explosions
+rules.reactorexplosions = リアクターの爆発
rules.wavetimer = ウェーブの自動進行
rules.waves = ウェーブ
rules.attack = アタックモード
@@ -755,7 +755,7 @@ rules.enemyCheat = 敵(赤チーム)の資源の無限化
rules.unitdrops = ユニットの戦利品
rules.unitbuildspeedmultiplier = ユニットの製造速度倍率
rules.unithealthmultiplier = ユニットの体力倍率
-rules.blockhealthmultiplier = Block Health Multiplier
+rules.blockhealthmultiplier = ブロックの体力倍率
rules.playerhealthmultiplier = プレイヤーの体力倍率
rules.playerdamagemultiplier = プレイヤーのダメージ倍率
rules.unitdamagemultiplier = ユニットのダメージ倍率
@@ -774,7 +774,7 @@ rules.title.resourcesbuilding = 資源 & 建設
rules.title.player = プレイヤー
rules.title.enemy = 敵
rules.title.unit = ユニット
-rules.title.experimental = Experimental
+rules.title.experimental = 実験的なゲームプレイ
rules.lighting = Lighting
rules.ambientlight = Ambient Light
@@ -824,7 +824,7 @@ mech.trident-ship.name = トライデント
mech.trident-ship.weapon = 爆弾
mech.glaive-ship.name = グライブ
mech.glaive-ship.weapon = 焼夷弾
-item.corestorable = [lightgray]Storable in Core: {0}
+item.corestorable = [lightgray]コアに保存可能: {0}
item.explosiveness = [lightgray]爆発性: {0}%
item.flammability = [lightgray]可燃性: {0}%
item.radioactivity = [lightgray]放射能: {0}%
@@ -932,15 +932,13 @@ block.lancer.name = ランサー
block.conveyor.name = コンベアー
block.titanium-conveyor.name = チタンコンベアー
block.armored-conveyor.name = 装甲コンベア
-block.armored-conveyor.description = チタンコンベアーと同じ速度でアイテムを輸送することができ、耐久性に優れています。\nまた、ほかのコンベアーからの側面からの入力は受け取ることができません。
block.junction.name = ジャンクション
block.router.name = ルーター
block.distributor.name = ディストリビューター
block.sorter.name = ソーター
block.inverted-sorter.name = 反転ソーター
block.message.name = メッセージブロック
-block.illuminator.name = Illuminator
-block.illuminator.description = A small, compact, configurable light source. Requires power to function.
+block.illuminator.name = イルミネーター
block.overflow-gate.name = オーバーフローゲート
block.silicon-smelter.name = シリコン溶鉱炉
block.phase-weaver.name = フェーズ織機
@@ -954,7 +952,7 @@ block.coal-centrifuge.name = 石炭遠心分離機
block.power-node.name = 電源ノード
block.power-node-large.name = 大型電源ノード
block.surge-tower.name = サージタワー
-block.diode.name = Battery Diode
+block.diode.name = バッテリーダイオード
block.battery.name = バッテリー
block.battery-large.name = 大型バッテリー
block.combustion-generator.name = 火力発電機
@@ -978,7 +976,7 @@ block.mechanical-pump.name = 機械ポンプ
block.item-source.name = アイテムソース
block.item-void.name = アイテムボイド
block.liquid-source.name = 液体ソース
-block.liquid-void.name = Liquid Void
+block.liquid-void.name = 液体ボイド
block.power-void.name = 電力ボイド
block.power-source.name = 無限電源
block.unloader.name = 搬出機
@@ -1008,7 +1006,7 @@ block.fortress-factory.name = フォートレスユニット製造機
block.revenant-factory.name = レベナントファイター製造機
block.repair-point.name = 修復ポイント
block.pulse-conduit.name = パルスパイプ
-block.plated-conduit.name = Plated Conduit
+block.plated-conduit.name = メッキパイプ
block.phase-conduit.name = フェーズパイプ
block.liquid-router.name = 液体ルーター
block.liquid-tank.name = 液体タンク
@@ -1121,6 +1119,7 @@ unit.wraith.description = 高速で突撃攻撃が可能な迎撃ユニットで
unit.ghoul.description = 重爆撃機です。敵の重要な建造物を優先して破壊します。
unit.revenant.description = 空中からミサイルを発射する重爆撃機です。
block.message.description = メッセージを保存し、仲間間の通信に使用します。
+block.illuminator.description = コンパクトな光源です。電力が必要です。
block.graphite-press.description = 石炭を圧縮し、黒鉛を生成します。
block.multi-press.description = 黒鉛圧縮機のアップグレード版です。水と電力を使用して、より効率的に石炭を圧縮します。
block.silicon-smelter.description = 石炭と砂からシリコンを製造します。
@@ -1142,13 +1141,13 @@ block.power-source.description = 無限に電力を出力します。サンド
block.item-source.description = アイテムを無限に搬出します。サンドボックスモードのみ使用できます。
block.item-void.description = 電力を必要とせずにアイテムを廃棄します。サンドボックスモードのみ使用できます。
block.liquid-source.description = 液体を無限に搬出します。サンドボックスモードのみ使用できます。
-block.liquid-void.description = Removes any liquids. Sandbox only.
+block.liquid-void.description = 液体を破棄できます。サンドボックスモードのみ使用できます。
block.copper-wall.description = 安価な防壁ブロックです。\n最初のウェーブでコアやターレットを保護するのに有用です。
block.copper-wall-large.description = 安価な大型防壁ブロックです。\n最初のウェーブでコアやターレットを保護するのに有用です。
block.titanium-wall.description = 適度に強力な防壁ブロックです。\n中程度の攻撃から保護します。
block.titanium-wall-large.description = 適度に強力な大型防壁ブロックです。\n中程度の攻撃から保護します。
-block.plastanium-wall.description = A special type of wall that absorbs electric arcs and blocks automatic power node connections.
-block.plastanium-wall-large.description = A special type of wall that absorbs electric arcs and blocks automatic power node connections.\nSpans multiple tiles.
+block.plastanium-wall.description = 電気アークを吸収し、電源ノードの自動接続をブロックする特別な壁です。
+block.plastanium-wall-large.description = 電気アークを吸収し、電源ノードの自動接続をブロックする特別な壁です。\nSpans multiple tiles.
block.thorium-wall.description = 強化された防壁ブロックです。\n敵からの保護により強固です。
block.thorium-wall-large.description = 強化された大型防壁ブロックです。\n敵からの保護により強固です。
block.phase-wall.description = トリウムの壁ほど強固ではないが、強力な弾でなければ弾き返すことができます。
@@ -1164,6 +1163,7 @@ block.force-projector.description = 周囲に六角形の力場を作り出し
block.shock-mine.description = 踏んだ敵にダメージを与えます。敵に見えることはありません。
block.conveyor.description = 一般的なアイテム輸送ブロックです。アイテムを前方に移動し、自動的にターレットや機械などに搬入します。回転させることができます。
block.titanium-conveyor.description = 改良されたアイテム輸送ブロックです。通常のコンベアーよりも速くアイテムを輸送します。
+block.armored-conveyor.description = チタンコンベアーと同じ速度でアイテムを輸送することができ、耐久性に優れています。\nまた、コンベアー以外による側面への入力を受け入れません。
block.junction.description = 十字に交差したコンベアーをそれぞれ前方に搬出します。コンベアーで複雑な構造を組み立てるときに便利です。
block.bridge-conveyor.description = 高度な輸送ブロックです。地形や建物を超えて、3ブロック離れた場所にアイテムを輸送することができます。
block.phase-conveyor.description = 改良されたアイテム転送ブロックです。電力を使用して、離れた場所にあるフェーズコンベアーにアイテムを転送することができます。
@@ -1177,8 +1177,8 @@ block.mechanical-pump.description = 安価なポンプです。搬出速度は
block.rotary-pump.description = 高度なポンプです。電力を使用して2倍速く搬出することができます。
block.thermal-pump.description = 最高性能のポンプです。
block.conduit.description = 一般的な液体輸送ブロックです。液体版のコンベアーです。ポンプや他のパイプに使うことができます。
-block.pulse-conduit.description = 高度な液体輸送ブロックです。通常のパイプより速く、たくさんのアイテムを輸送することができます。
-block.plated-conduit.description = Moves liquids at the same rate as pulse conduits, but possesses more armor. Does not accept fluids from the sides by anything other than conduits.\nLeaks less.
+block.pulse-conduit.description = 高度な液体輸送ブロックです。通常のパイプより速くたくさんの液体を輸送することができます。
+block.plated-conduit.description = パルスパイプと同じ速度で液体を輸送することができ、耐久性に優れています。\nまた、パイプ以外による側面への入力を受け入れません。
block.liquid-router.description = 搬入したアイテムをほかの3方向に均等に搬出します。液体の漏れを防ぐことができます。一つの資源から複数に分ける際などに使われます。
block.liquid-tank.description = 大量の液体を保管しておくことができます。需要が不安定な製造設備や重要な施設の冷却水の予備などとして使用されます。
block.liquid-junction.description = パイプを他のパイプと交差できるようにします。それぞれ搬入した液体を前方に搬出します。パイプで複雑な構造を組み立てるときなどに使われます。
@@ -1187,7 +1187,7 @@ block.phase-conduit.description = 高度な液体輸送ブロックです。電
block.power-node.description = 電力ノード間で電力の送電を行います。最大で4つの電力源やノードなどに接続できます。隣接するブロックから電力の送電や供給を行います。
block.power-node-large.description = 巨大な電力ノードです。最大で6つの電力源やノードに接続できます。
block.surge-tower.description = 接続できる量は少ないが、とても長い距離を接続できる電力ノードです。
-block.diode.description = Battery power can flow through this block in only one direction, but only if the other side has less power stored.
+block.diode.description = 送信元と送信先の電力を比べて、送信先の電力の方が少ない場合、電力を通します。
block.battery.description = 余分な電力の充電して、貯めておくことができます。必要があれば、溜まった電力を供給します。
block.battery-large.description = 通常のバッテリーよりもたくさんの電力を溜めておくことができます。
block.combustion-generator.description = 石油や可燃性の物質を燃やして発電します。
diff --git a/core/assets/bundles/bundle_ko.properties b/core/assets/bundles/bundle_ko.properties
index 28efe4d483..a0500c0069 100644
--- a/core/assets/bundles/bundle_ko.properties
+++ b/core/assets/bundles/bundle_ko.properties
@@ -29,7 +29,7 @@ load.system = 시스템
load.mod = 모드
load.scripts = 스크립트
-be.update = 새로운 블리딩 엣지 버전이 출시되었습니다.
+be.update = 새로운 테스트 버전이 출시되었습니다.
be.update.confirm = 다운로드 후 게임을 재시작하시겠습니까?
be.updating = 업데이트 중...
be.ignore = 무시
@@ -39,14 +39,13 @@ be.check = 업데이트 확인
schematic = 설계도
schematic.add = 설계도 저장하기
schematics = 설계도 모음
-schematic.replace = 이 설계도와 같은 이름의 설계도가 이미 존재합니다. 정말로 바꾸시겠습니까?
schematic.import = 설계도 불러오기
schematic.exportfile = 파일 내보내기
schematic.importfile = 파일 불러오기
-schematic.browseworkshop = Workshop 탐색
+schematic.browseworkshop = 창작마당 탐색
schematic.copy = 클립보드에 복사하기
schematic.copy.import = 클립보드에서 붙여넣기
-schematic.shareworkshop = 워크샵에 공유
+schematic.shareworkshop = 창작마당에 공유
schematic.flip = 좌우 뒤집기 : [accent][[{0}][] / 상하 뒤집기 : [accent][[{1}][]
schematic.saved = 설계도 저장됨.
schematic.delete.confirm = 삭제된 설계도는 복구할 수 없습니다. 정말로 삭제하시겠습니까?
@@ -59,6 +58,7 @@ stat.built = 건설한 건물 수 : [accent]{0}
stat.destroyed = 파괴된 건물 수 : [accent]{0}
stat.deconstructed = 파괴한 건물 수 : [accent]{0}
stat.delivered = 획득한 자원 :
+stat.playtime = 지역 클리어시간 : [accent] {0}
stat.rank = 최종 점수 : [accent]{0}
launcheditems = [accent]창고
@@ -104,17 +104,18 @@ mods.none = [LIGHT_GRAY]추가한 모드가 없습니다!
mods.guide = 모드 가이드
mods.report = 문제 신고
mods.openfolder = 모드 폴더 열기
+mod.display = [gray]모드 :[orange] {0}
mod.enabled=[blue]활성화
mod.disabled=[scarlet]적용 안됨
mod.disable=[lightgray]비활성화
mod.delete.error = 모드를 삭제할 수 없습니다. 아마도 해당 모드가 사용중인 것 같습니다.
mod.requiresversion = [scarlet]게임의 버전이 낮아 모드를 활성화할 수 없습니다!\n[scarlet]요구되는 게임 버전 : [accent]{0}
-mod.missingdependencies = [scarlet]의존되는 모드: {0}
+mod.missingdependencies = [scarlet]필요한 모드 : {0}
mod.erroredcontent = [scarlet]컨텐츠 오류
-mod.errors = 컨텐츠를 불러오는 중 오류가 발생하였습니다.
+mod.errors = 모드 설정을 불러오는 중 오류가 발생하였습니다.
mod.noerrorplay = [scarlet]모드에 오류가 존재합니다.[] 해당 오류가 발생하는 모드를 비활성화하거나 모드의 오류를 고친 후 플레이가 가능합니다.
mod.nowdisabled = [scarlet]모드 '{0}'는 다음의 모드에 의존합니다 : [accent] {1}\n[lightgray]이 모드를 먼저 다운로드해야합니다.\n이 모드는 자동으로 비활성화됩니다.
-mod.enable=활성화
+mod.enable = 활성화
mod.requiresrestart = 모드 변경사항을 적용하기 위해 게임을 종료합니다.
mod.reloadrequired = [scarlet]새로고침 예정됨
mod.import = 모드 추가
@@ -123,9 +124,9 @@ mod.item.remove = 이것은 모드[accent] '{0}'[]의 자원입니다. 이 자
mod.remove.confirm = 이 모드를 삭제하시겠습니까?
mod.author = [LIGHT_GRAY]제작자 : [] {0}
mod.missing = 이 세이브파일에는 설치하지 않은 모드 혹은 현재 버전에 속해있지 않은 데이터가 포함되어 있습니다. 이 파일을 불러올 경우 세이브파일의 데이터가 손상될 수 있습니다. 정말로 이 파일을 불러오시겠습니까?\n[lightgray]모드 :\n{0}
-mod.preview.missing=Workshop에 당신의 모드를 업로드하기 전에 미리보기 이미지를 먼저 추가해야합니다.\n[accent] preview.png[]라는 이름으로 미리보기 이미지를 당신의 모드 폴더안에 준비한 후 다시 시도해주세요.
-mod.folder.missing=Workshop에는 폴더 형태의 모드만 게시할 수 있습니다.\n모드를 폴더 형태로 바꾸려면 파일을 폴더에 압축 해제하고 이전 압축파일을 제거한 후, 게임을 재시작하거나 모드를 다시 로드하십시오.
-mod.scripts.unsupported = 당신의 기기는 모드스크립트를 지원하지 않습니다. 모드의 일부 기능이 작동하지 않을 수 있습니다.
+mod.preview.missing = 창작마당에 당신의 모드를 업로드하기 전에 미리보기 이미지를 먼저 추가해야합니다.\n[accent] preview.png[]라는 이름으로 미리보기 이미지를 당신의 모드 폴더안에 준비한 후 다시 시도해주세요.
+mod.folder.missing = 창작마당에는 폴더 형태의 모드만 게시할 수 있습니다.\n모드를 폴더 형태로 바꾸려면 파일을 폴더에 압축 해제하고 이전 압축파일을 제거한 후, 게임을 재시작하거나 모드를 다시 로드하십시오.
+mod.scripts.unsupported = 당신의 기기는 자바스크립트를 지원하지 않습니다. 모드의 일부 기능이 작동하지 않을 수 있습니다.
about.button = 정보
name = 이름 :
@@ -170,13 +171,18 @@ hosts.discovering.any = 서버 찾기
server.refreshing = 서버 목록 새로고치는중...
hosts.none = [lightgray]LAN 게임을 찾을 수 없습니다!
host.invalid = [scarlet]서버에 연결할 수 없습니다!
+
+servers.local = 로컬 서버
+servers.remote = 사설 서버
+servers.global = 공식 서버
+
trace = 플레이어 정보 보기
trace.playername = 닉네임 : [accent]{0}
trace.ip = IP : [accent]{0}
trace.id = UUID : [accent]{0}
trace.mobile = 모바일 접속 유무 : [accent]{0}
trace.modclient = 수정된 클라이언트 : [accent]{0}
-invalidid = 잘못된 클라이언트 ID 입니다! 버그 보고서를 제출 해 주세요.
+invalidid = 잘못된 클라이언트 ID 입니다! 버그 보고서를 보내주세요.
server.bans = 차단된 유저
server.bans.none = 차단된 플레이어가 없습니다.
server.admins = 관리자
@@ -240,8 +246,8 @@ save.playtime = 플레이타임 : {0}
warning = 경고.
confirm = 확인
delete = 삭제
-view.workshop=Workshop에서 보기
-workshop.listing=Workshop 목록 편집하기
+view.workshop = 창작마당에서 보기
+workshop.listing = 창작마당 목록 편집하기
ok = 확인
open = 열기
customize = 맞춤설정
@@ -251,6 +257,7 @@ copylink = 링크 복사
back = 뒤로가기
data.export = 데이터 내보내기
data.import = 데이터 불러오기
+data.openfolder = 게임 데이터 폴더
data.exported = 데이터를 내보냈습니다.
data.invalid = 유효한 게임 데이터가 아닙니다.
data.import.confirm = 외부 게임 데이터를 불러옵니다...\n[accent]작업이 완료되면 현재 게임 데이터는 삭제되고, 외부의 게임 데이터를 불러오니 주의하세요. 실행 취소가 불가능하며, 작업 후 게임이 바로 꺼집니다.
@@ -283,8 +290,8 @@ map.nospawn = 이 맵에 플레이어가 생성될 코어가 없습니다! 맵
map.nospawn.pvp = 이 맵에는 적팀 코어가 없습니다! 에디터에서 [ROYAL]노랑색 팀이 아닌[] 코어를 추가하세요.
map.nospawn.attack = 이 맵에는 플레이어가 공격할 수 있는 적의 코어가 없습니다! 에디터에서 [ROYAL] 빨강색 팀[] 코어를 맵에 추가하세요.
map.invalid = 파일이 잘못되었거나 손상되어 맵을 열 수 없습니다.
-workshop.update = 워크샵 맵 업데이트
-workshop.error = 워크샵 세부사항을 가져오는 중 에러가 발생했습니다 : {0}
+workshop.update = 창작마당 맵 업데이트
+workshop.error = 창작마당 정보를 불러오는 중에 오류가 발생했습니다 : {0}
map.publish.confirm = 맵을 업로드 하시겠습니까?\n\n[lightgray]먼저 워크샵 EULA에 동의하시지 않으면 맵이 표시되지 않습니다!
workshop.menu = 해당 맵으로 수행할 작업을 선택하십시오.
workshop.info = 맵 정보
@@ -308,7 +315,7 @@ editor.waves = 단계 :
editor.rules = 규칙 :
editor.generation = 맵 생성 설정 :
editor.ingame = 인게임 편집
-editor.publish.workshop = 워크샵 업로드
+editor.publish.workshop = 창작마당 업로드
editor.newmap = 신규 맵
workshop=Workshop
waves.title = 단계
@@ -341,7 +348,7 @@ editor.errornot = 선택한 대상이 맵 파일이 아닙니다.
editor.errorheader = 이 맵 파일은 유효하지 않거나 손상되었습니다.
editor.errorname = 맵에 이름이 지정되어 있지 않습니다.
editor.update = 업데이트
-editor.randomize = 랜덤
+editor.randomize = 무작위
editor.apply = 적용
editor.generate = 생성
editor.resize = 맵 크기조정
@@ -531,6 +538,8 @@ error.crashtitle = 오류가 발생했습니다.
blocks.input = 소모 자원
blocks.output = 출력 자원
blocks.booster = 가속
+blocks.tiles = 요구되는 타일
+blocks.affinities = 가속되는
block.unknown = [LIGHT_GRAY]OHNO
blocks.powercapacity = 전력 용량
blocks.powershot = 1발당 전력 소모량
@@ -664,9 +673,11 @@ setting.sfxvol.name = 효과음 크기
setting.mutesound.name = 소리 끄기
setting.crashreport.name = 익명으로 오류 보고서 자동 전송
setting.savecreate.name = 자동 저장 활성화
-setting.publichost.name = 스팀 공개 서버 보이기
+setting.publichost.name = 스팀에 내 서버 공개하기
+setting.playerlimit.name = 플레이어 수 제한
setting.chatopacity.name = 채팅 투명도
setting.lasersopacity.name = 전력 레이저 밝기
+setting.bridgeopacity.name = 터널 그래픽 밝기
setting.playerchat.name = 채팅 말풍선 표시
public.confirm = 게임을 공개하시겠습니까?\n[lightgray]설정 - 게임 - 게임 서버 공개에서 다시 설정하실 수 있습니다.
public.beta = [accent]!정보![] 베타 버전은 공개 게임 서버를 열지 못합니다.
@@ -777,6 +788,7 @@ rules.title.unit = 유닛
rules.title.experimental = 실험적인 기능
rules.lighting = 전장의 안개 활성화
rules.ambientlight = 안개 색
+rules.solarpowermultiplier = 태양광 발전 효율
content.item.name = 아이템
content.liquid.name = 액체
@@ -805,7 +817,7 @@ liquid.oil.name = 석유
liquid.cryofluid.name = 냉각수
mech.alpha-mech.name = 알파
mech.alpha-mech.weapon = 중무장 소총
-mech.alpha-mech.ability = 회복
+mech.alpha-mech.ability = 자가
mech.delta-mech.name = 델타
mech.delta-mech.weapon = 전격 충전기
mech.delta-mech.ability = 충전
@@ -942,6 +954,7 @@ block.message.name = 메모 블럭
block.illuminator.name = 조명
block.illuminator.description = 작고, 간단한 조명입니다. 색을 변경할 수 있으며 가동하기 위해서 전력이 필요합니다.
block.overflow-gate.name = 포화 필터
+block.underflow-gate.name = 언더플로 게이트
block.silicon-smelter.name = 실리콘 제련소
block.phase-weaver.name = 메타 합성기
block.pulverizer.name = 분쇄기
@@ -975,11 +988,12 @@ block.omega-mech-pad.name = 오메가 기체 패드
block.tau-mech-pad.name = 타우 기체 패드
block.conduit.name = 파이프
block.mechanical-pump.name = 기계식 펌프
-block.item-source.name = 아이템 소스
-block.item-void.name = 아이템 삭제 장치
-block.liquid-source.name = 무한 액체공급 장치
+block.item-source.name = 자원 공급기
+block.item-void.name = 자원 소멸기
+block.liquid-source.name = 액체 공급기
+block.liquid-void.name = 액체 소멸기
block.power-void.name = 방전장치
-block.power-source.name = 무한 전력공급 장치
+block.power-source.name = 전력 공급기
block.unloader.name = 언로더
block.vault.name = 창고
block.wave.name = 파도
@@ -1139,8 +1153,9 @@ block.incinerator.description = 불필요한 자원을 전기를 사용해 소
block.power-void.description = 이어져있는 건물의 전기를 모두 없앱니다.\n샌드박스에서만 건설가능.
block.power-source.description = 무한한 전력을 공급해주는 블록입니다.\n샌드박스에서만 건설가능.
block.item-source.description = 자원을 선택하면 그 자원이 무한하게 생성되는 블록입니다.\n샌드박스에서만 건설가능.
-block.item-void.description = 자원을 사라지게 만듭니다.\n샌드박스에서만 건설가능.
-block.liquid-source.description = 무한한 액체를 출력합니다.\n샌드박스에서만 건설가능.
+block.item-void.description = 자원을 사라지게 합니다.\n샌드박스에서만 건설가능.
+block.liquid-source.description = 액체를 선택하면 그 액체가 무한하게 생성되는 블록입니다.\n샌드박스에서만 건설가능.
+block.liquid-void.description = 액체를 사라지게 합니다.\n샌드박스에서만 건설가능.
block.copper-wall.description = 게임 시작 초기에 방어용으로 적합합니다.
block.copper-wall-large.description = 구리 벽 4개를 뭉친 블럭입니다.
block.titanium-wall.description = 흑연이 생산될 즈음에 사용하기 적합합니다.
@@ -1170,6 +1185,7 @@ block.inverted-sorter.description = 필터와 비슷하지만, 대신에 반전
block.router.description = 한 방향에서 자원을 넣을 시 최대 3개의 다른 방향으로 균등하게 내보냅니다. 자원을 한 곳에서 여러 방향으로 분배하는 데 유용합니다.
block.distributor.description = 자원을 최대 7개의 다른 방향으로 균등하게 분베하는 고급 분배기.
block.overflow-gate.description = 평소에는 자원의 들어온 방향으로 자원을 통과시키지만, 정면이 자원으로 꽉 차거나 다른 사유로 막힐 시 옆으로 자원을 내보냅니다.
+block.underflow-gate.description = 포화 필터의 정반대 방식의 필터입니다. 받은 자원을 먼저 필터의 양 옆으로 보내고 양 옆이 무슨 사유로든 자원을 보낼 수 없다면 정면으로 보냅니다.
block.mass-driver.description = 자원 수송 포탑\n모인 자원을 전기를 사용하여 또 다른 매스 드라이버로 발사합니다.\n[ROYAL]받을 때도 전기를 사용합니다.
block.mechanical-pump.description = 느린 속도로 액체를 퍼올리나, 전기를 사용하지 않는 펌프입니다.
block.rotary-pump.description = 전기를 사용해 빠른 속도로 액체를 끌어올릴 수 있는 펌프입니다.\n\n[ROYAL]타일당 액체를 퍼올리는 속도가 가장 빠릅니다.
diff --git a/core/assets/bundles/bundle_lt.properties b/core/assets/bundles/bundle_lt.properties
new file mode 100644
index 0000000000..662753e99e
--- /dev/null
+++ b/core/assets/bundles/bundle_lt.properties
@@ -0,0 +1,1263 @@
+credits.text = Kūrėjas [ROYAL]Anuken[] - [SKY]anukendev@gmail.com[]
+credits = Kreditai
+contributors = Vertėjai ir Padėjėjai
+discord = Prisijunkite prie Mindustry Discord!
+link.discord.description = Oficialus Mindustry Discord serveris
+link.reddit.description = Mindustry subreddit'as
+link.github.description = Žaidimo pradinis kodas
+link.changelog.description = Atnaujinimų sąrašas
+link.dev-builds.description = Nestabili kūriamoji versija
+link.trello.description = Oficiali Trello lenta planuojamoms naujoms funkcijoms
+link.itch.io.description = itch.io puslapis su PC atsisiuntimu
+link.google-play.description = Google Play parduotuvės elementas
+link.f-droid.description = F-Droid katalogo elementas
+link.wiki.description = Oficialus Mindustry wiki
+link.feathub.description = Pasiūlykite naujas funkcijas
+linkfail = Nepavyko atidaryti nuorodos!\nURL nukopijuotas į jūsų iškarpinę.
+screenshot = Ekrano kopija išsaugota į {0}
+screenshot.invalid = Žemėlapis yra per didelis, potencialiai nepakanka vietos išsaugoti ekrano kopiją.
+gameover = Žaidimas Baigtas
+gameover.pvp = [accent] {0}[] komanda laimėjo!
+highscore = [accent]Naujas rekordas!
+copied = Nukopijuota.
+
+load.sound = Garsai
+load.map = Žemėlapiai
+load.image = Vaizdai
+load.content = Turinys
+load.system = Sistema
+load.mod = Modifikacijos
+load.scripts = Kodai
+
+be.update = Galite parsisiusti naujausią versija:
+be.update.confirm = Parsisiųsti ir perkrauti dabar?
+be.updating = Naujinama...
+be.ignore = Ignoruoti
+be.noupdates = Naujinimų nerasta.
+be.check = Ieškoti naujinimų
+
+schematic = Schema
+schematic.add = Išsaugoti Schemą...
+schematics = Schemos
+schematic.import = Importuoti Schemą...
+schematic.exportfile = Eksportuoti Failą
+schematic.importfile = Importuoti Failą
+schematic.browseworkshop = Browse Workshop
+schematic.copy = Kopijuoti į Iškarpinę
+schematic.copy.import = Importuoti iš Iškarpinės
+schematic.shareworkshop = Dalintis Workshop'e
+schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Apversti Schemą
+schematic.saved = Schema išsaugota.
+schematic.delete.confirm = Ši schema bus ištrinta negrįžtamai.
+schematic.rename = Pervadinti Schemą
+schematic.info = {0}x{1}, {2} blokai
+
+stat.wave = Įveikta bangų:[accent] {0}
+stat.enemiesDestroyed = Sunaikinta priešų:[accent] {0}
+stat.built = Pastatyta Pastatų:[accent] {0}
+stat.destroyed = Sunaikinta Pastatų:[accent] {0}
+stat.deconstructed = Iškonstruota pastatų:[accent] {0}
+stat.delivered = Paleisti Resursai:
+stat.playtime = Žaidimo Trukmė:[accent] {0}
+stat.rank = Finalinis Laipsnis: [accent]{0}
+
+launcheditems = [accent]Paleisti Resursai
+launchinfo = [unlaunched][[PALEISKITE] savo branduolį norint gauti resursus, kurie yra paryškintus mėlynai.
+map.delete = Ar esate tikri, jog norite ištrinti žemėlapį "[accent]{0}[]"?
+level.highscore = Rekordas: [accent]{0}
+level.select = Lygio Pasirinkimas
+level.mode = Žaidimo režimas:
+showagain = Neberodyti per kitą sesiją
+coreattack = < Branduolys yra puolamas! >
+nearpoint = [[ [scarlet]NEDELSIANT PALYKITE IŠMETIMO ZONĄ[] ]\nneišvengiamas sunaikinimas
+database = Branduolio Duomenų Bazė
+savegame = Išsaugoti Žaidimą
+loadgame = Užkrauti Žaidimą
+joingame = Įeiti į žaidimą
+customgame = Pasirinktinis Žaidimas
+newgame = Naujas Žaidimas
+none =
+minimap = Mini Žemėlapis
+position = Pozicija
+close = Uždaryti
+website = Tinklalapis
+quit = Išeiti
+save.quit = Išsaugoti ir Išeiti
+maps = Žemėlapiai
+maps.browse = Naršyti Žemėlapius
+continue = Tęsti
+maps.none = [lightgray]Nerasta Žemėlapių!
+invalid = Klaidingas
+pickcolor = Pasirinkti spalvą
+preparingconfig = Ruošiamos Konfiguracijos
+preparingcontent = Ruošiamas Turinys
+uploadingcontent = Talpinamas Turinys
+uploadingpreviewfile = Talpinamas Peržiūros failas
+committingchanges = Daromi Pakeitimai
+done = Baigta
+feature.unsupported = Jūsų įrenginys nepalaiko šios funkcijos.
+mods.alphainfo = Prisiminkite, jog modifikacijos vis dar yra alpha, ir[scarlet] gali būti [].\nPraneškite apie rastas klaidas Mindustry GitHub puslapyje or Discord serveryje.
+mods.alpha = [accent](Alpha)
+mods = Modifikacijos
+mods.none = [LIGHT_GRAY]Nerasta jokių modifikacijų!
+mods.guide = Modifikavimo Gidas
+mods.report = Praneškite apie klaidas
+mods.openfolder = Atidaryti Modifikacijų Aplanką
+mod.display = [gray]Modifikacijos:[orange] {0}
+mod.enabled = [lightgray]Įjungta
+mod.disabled = [scarlet]Išjungta
+mod.disable = Išjungti
+mod.delete.error = Negalima ištrinti modifikacijos. Failas gali būti naudojamas.
+mod.requiresversion = [scarlet]Privaloma minimali žaidimo versija: [accent]{0}
+mod.missingdependencies = [scarlet]Trūkstamos priklausomybės: {0}
+mod.erroredcontent = [scarlet]Turinio Klaidos.
+mod.errors = Įvyko klaida kraunant turinį.
+mod.noerrorplay = [scarlet]Turite modifikacijas su klaidomis.[] Išjunkite modifikacijas su klaidomis arba patasykite jas prieš žaidžiant.
+mod.nowdisabled = [scarlet]Modifikacijai '{0}' trūksta priklausomybių:[accent] {1}\n[lightgray] Šios modifikacijos turi būti atsisiųstos.\nŠi modifikacija bus automatiškai išjungta.
+mod.enable = Įjungti
+mod.requiresrestart = Žaidimas dabar išsijungs modifikacijų pakeitimui.
+mod.reloadrequired = [scarlet]Privalomas perkrovimas
+mod.import = Importuoti Modifikaciją
+mod.import.github = Importuoti GitHub Modifikaciją
+mod.item.remove = Šis elementas yra[accent] '{0}'[] modifikacijos dalis. Norint panaikinti ją, ištrinkite modifikaciją.
+mod.remove.confirm = Ši modifikacija bus ištrinta.
+mod.author = [LIGHT_GRAY]Autorius:[] {0}
+
+mod.missing = Šis išsaugojimas turi modifikacijas, kurias atnaujinote arba nebėra įrašytos. Gali atsirasti išsaugojimo gedimas. Ar tikrai norite užkrauti?\nModifikacijos:\n{0}
+mod.preview.missing = Prieš publikuojant šią modifikaciją workshop'e, jūs privalote pridėti parodamajį vaizdą.\nĮdėktie vaizdą pavadinimu[accent] preview.png[] į modifikacijos aplanką ir bandykite iš naujo.
+mod.folder.missing = Tik modifikacijos aplanko formoje gali būti publikuojamos workshop'e.\nNorint konvertuoti bet kurią modifikaciją į aplanką, paprasčiausiai išpakuokite jos failą į aplanką ir ištrinkite senąją zip versiją, po to, perkraukite žaidimą arba modifikacijas.
+mod.scripts.unsupported = Jūsų įrenginys neplaiko modifikacijos kodų. Kai kurios modifikacijos neveiks tinkamai.
+about.button = Apie
+name = Vardas:
+noname = Pirma pasirinkite[accent] žaidėjo vardą[].
+filename = Failo Vardas:
+unlocked = Atrakintas Naujas Turinys!
+completed = [accent]Išrasta
+techtree = Technologijų Medis
+research.list = [lightgray]Išradimai:
+research = Išrasti
+researched = [lightgray]{0} išrasta.
+players = {0} žaidėjai
+players.single = {0} žaidėjas
+server.closing = [accent]Uždaromas serveris...
+server.kicked.kick = Jūs buvote išmestas iš serverio!
+server.kicked.whitelist = Jūs nesate baltajame sąraše.
+server.kicked.serverClose = Serveris uždarytas.
+server.kicked.vote = Jūs buvote išbalsuotas kitų žaidėjų. Iki Pasimatymo.
+server.kicked.clientOutdated = Pasenęs Klientas! Atnaujinkite savo žaidimą!
+server.kicked.serverOutdated = Pasenęs Serveris! Paprašykite savininko, kad būtų atnaujintas!
+server.kicked.banned = Jūs esate užblokuotas šiame serveryje.
+server.kicked.typeMismatch = Šis serveris yra nesuderinamas su jūsų žaidimo versija.
+server.kicked.playerLimit = Šis serveris yra pilnas. Palaukite, kol atsiras vietos.
+server.kicked.recentKick = Jūs buvote neseniai išmestas iš serverio.\nPalaukite, prieš jungiantis.
+server.kicked.nameInUse = Žaidėjas su šiuo vardu\n jau yra serveryje.
+server.kicked.nameEmpty = Pasirinktas vardas yra netinkamas.
+server.kicked.idInUse = Jūs jau esate šiame serveryje! Prisijungti su dviemis paskyromis yra neleistina.
+server.kicked.customClient = Šis serveris nepalaiko modifikuotų žaidimo versijų. Atsisiųskite oficialią versiją.
+server.kicked.gameover = Žaidimas Baigtas!
+server.kicked.serverRestarting = Šis serveris persikrauna.
+server.versions = Jūsų versija:[accent] {0}[]\nServerio versija:[accent] {1}[]
+host.info = [accent]Hostinti[] mygtukas sukūria serverį prievade [scarlet]6567[]. \nBet kas [lightgray]tame pačiame wifi arba vietiniame tinkle[] galės matyti jūsų serverį serverių sąraše.\n\nJei norite, kad žmonės galėtų prisijungti iš bet kruios pasaulio vietos su IP adresu yra privalomas [accent]prievadų peradresavimas[].\n\n[lightgray]Pastaba: Jei kam nors kyla problemų jungiantis prie jūsų LAN žaidimo, įsitikinkite, kad Mindustry turi prieigą prie vietinio tinklo ugniasienės nustatymuose. Prisiminkite, jog viešieji tinklai kartais neleidžia serverių aptikimo.
+join.info = Čia galite įvesti[accent] serverio IP[], jei norite prisijungti, arba atrasti[accent] vietinio tinklo[] serverius, prie kurių norite prisijungti.\nPalaikoma tiek LAN, tiek WAN žaidimas tinkle.\n\n[lightgray]Pastaba: Nėra automatinio globalių serverių sąrašo; jei norite prisijungti prie kažko su IP adresu, turėsite paprašyti IP adreso.
+hostserver = Hostinti Žaidimą Tinkle
+invitefriends = Pakviesti Draugus
+hostserver.mobile = Hostinti\nŽaidimą
+host = Hostinti
+hosting = [accent]Atidaromas serveris...
+hosts.refresh = Atnaujinti
+hosts.discovering = Ieškoma LAN žaidimų
+hosts.discovering.any = Ieškoma žaidimų
+server.refreshing = Atnaujinamas serveris
+hosts.none = [lightgray]Žaidimų vietiniame tinkle nerasta!
+host.invalid = [scarlet]Negalima prisijungti prie serverio.
+
+servers.local = Vietinio Tinklo Serveriai
+servers.remote = Nuotoliniai Serveriai
+servers.global = Globalūs Serveriai
+
+trace = Sekti Žaidėją
+trace.playername = Žaidėjo vardas: [accent]{0}
+trace.ip = IP: [accent]{0}
+trace.id = Unikalus ID: [accent]{0}
+trace.mobile = Mobilus Klientas: [accent]{0}
+trace.modclient = Custom Client: [accent]{0}
+invalidid = Netaisyklingas kliento ID! Praneškite apie klaidą.
+server.bans = Užblokavimai
+server.bans.none = Nerasta užblokuotų žaidėjų!
+server.admins = Administratoriai
+server.admins.none = Nerasta administratorių!
+server.add = Pridėti Serverį
+server.delete = Ar esate tikras jog norite panaikinti serverį?
+server.edit = Redaguoti Serverį
+server.outdated = [crimson]Pasenęs serveris![]
+server.outdated.client = [crimson]Pasenęs Klientas![]
+server.version = [gray]v{0} {1}
+server.custombuild = [accent]Custom Build
+confirmban = Ar esate tikras, jog norite užblokuoti šį žaidėją?
+confirmkick = Ar esate tikras, jog norite išmesti šį žaidėją?
+confirmvotekick = Ar esate tikras, jog norite išbalsuoti šį žaidėją?
+confirmunban = Ar esate tikras, jog norite atblokuoti šį žaidėją?
+confirmadmin = Ar esate tikras, jog norite šį žaidėją padaryti administratoriumi?
+confirmunadmin = Ar esate tikras, jog norite atimti administratoriaus statusą iš šio žaidėjo?
+joingame.title = Prisijungti prie žaidimo
+joingame.ip = IP Adresas:
+disconnect = Atsijungta.
+disconnect.error = Prisijungimo klaida.
+disconnect.closed = Prisijungimas uždarytas.
+disconnect.timeout = Baigėsi laikas.
+disconnect.data = Nepavyko užkrauti pasaulio informacijos!
+cantconnect = Negalima prisijungti prie žaidimo ([accent]{0}[]).
+connecting = [accent]Prisijungiama...
+connecting.data = [accent]Kraunama pasaulio informacija...
+server.port = Prievadas:
+server.addressinuse = Adresas jau naudojamas!
+server.invalidport = Negaliams prievado numeris!
+server.error = [crimson]Įvyko klaida.
+save.new = Naujas Išsaugojimas
+save.overwrite = Ar esate tikras, jog\n norite perrašyti šį elementą?
+overwrite = Perrašyti
+save.none = Nerasta jokių išsaugojimų!
+saveload = Išsaugoma...
+savefail = Nepavyko išsaugoti žaidimo!
+save.delete.confirm = Ar esate tikras, jog norite ištrinti šį išsaugojimą?
+save.delete = Ištrinti
+save.export = Eksportuoti Išsaugojimą
+save.import.invalid = [accent]Šis išsaugojimas yra kalidingas!
+save.import.fail = [crimson]Nepavyko importuoti išsaugojimo: [accent]{0}
+save.export.fail = [crimson]Nepavyko exportuoti išsaugojimo: [accent]{0}
+save.import = Importuoti išsaugojimą
+save.newslot = Išsaugojimo pavadinimas:
+save.rename = Pervadinti
+save.rename.text = Naujas pavadinimas:
+selectslot = Pasirinkite išsaugojimą.
+slot = [accent]Elementas {0}
+editmessage = Redaguoti žinutę
+save.corrupted = Išsaugojimo failas yra sugadintas arba !
+empty =
+on = Įjungta
+off = Išjungta
+save.autosave = Automatinis išsaugojimas: {0}
+save.map = Žemėlapis: {0}
+save.wave = Banga {0}
+save.mode = Žaidimo Režimas: {0}
+save.date = Paskutinis Išsaugojimas: {0}
+save.playtime = Žaidimo laikas: {0}
+warning = Perspėjimas.
+confirm = Priimti
+delete = Ištrinti
+view.workshop = Apžiūrėti Workshop'e
+workshop.listing = Edit Workshop Listing
+ok = Gerai
+open = Atidaryti
+customize = Keisti Taisykles
+cancel = Atšaukti
+openlink = Atidaryti Nuorodą
+copylink = Kopijuoti Nuorodą
+back = Sugrįžti
+data.export = Eksportuoti Duomenis
+data.import = Importuoti Duomenis
+data.openfolder = Atidaryti Duomenų Aplanką
+data.exported = Duomenys Eksportuoti.
+data.invalid = Tai nėra veikiantys žaidimo duomenys.
+data.import.confirm = Importuojant išorinius duomenis bus ištrinti[scarlet] visi esami duomenys[]
+ų esami žaidimo duomenys.\n[accent]Tai negali būti atkurta![]\n\nŽaidimas bus išjungtas iš karto po duomenų importavimo.
+classic.export = Eksportuoti Klasikinius Duomenis
+classic.export.text = [accent]Mindustry[] has just had a major update.\nClassic (v3.5 build 40) save or map data has been detected. Would you like to export these saves to your phone's home folder, for use in the Mindustry Classic app?
+quit.confirm = Ar tikrai norite išeiti?
+quit.confirm.tutorial = Ar esate tikras, jog žinote ką darote?\nPradininkas gali būti įjungtas iš naujo paspaudus [accent] Nustatymai->Žaidimas->Iš naujo įjungti Pradininką.[]
+loading = [accent]Kraunama...
+reloading = [accent]Iš naujo kraunamos modifikacijos...
+saving = [accent]Išsaugoma...
+cancelbuilding = [accent][[{0}][] plano išvalymui
+selectschematic = [accent][[{0}][] pasirinkimui+kopijavimui
+pausebuilding = [accent][[{0}][] statymo sustabdymui
+resumebuilding = [scarlet][[{0}][] statymo pratęsimui
+wave = [accent]Banga {0}
+wave.waiting = [lightgray]Banga po {0}
+wave.waveInProgress = [lightgray]Vyksta banga
+waiting = [lightgray]Laukiama...
+waiting.players = Laukiama žaidėjų...
+wave.enemies = [lightgray]{0} Likę Priešai
+wave.enemy = [lightgray]{0} Likęs Priešas
+loadimage = Užkrauti Vaizdą
+saveimage = Išsaugoti Vaizdą
+unknown = Nežinomas
+custom = Custom
+builtin = Integruotas
+map.delete.confirm = Ar esate tikras, jog norite ištrinti šį žemėlapį? Šis veiksmas negali būti atstatytas
+map.random = [accent]Atsitiktinis Žemėlapis
+map.nospawn = Šiame žemėlapyje nėra jokio branduolio atsirasti žaidėjui! Įdėkite[accent] oranžinį[] branduolį į žemėlapį redaktoriuje.
+map.nospawn.pvp = Šiame žemėlapyje nėra jokio priešų branduolio atsirasti žaidėjui! Įdėkite[SCARLET] ne oranžinį[] branduolį į žemėlapį redaktoriuje.
+map.nospawn.attack = Šiame žemėlapyje nėra jokio priešo branduolio, kurį reikia sunaikinti žaidėjams! Įdėkite[SCARLET] raudoną[] branduolį į žemėlapį redaktoriuje.
+map.invalid = Įvyko Klaida kraunant Žemėlapį: sugadintas arba klaidingas žemėlapio failas.
+workshop.update = Atnaujinti Elementą
+workshop.error = Error fetching workshop details: {0}
+map.publish.confirm = Ar tikrai norite publikuoti šį žemėlapį?\n\n[lightgray]Pirma įsitikinkite, jog sustinkate su Workshop'o EULA arba jūsų žemėlapis nebus rodomas!
+workshop.menu = Pasirinkite ką norite daryti su šiuo elementu.
+workshop.info = Elemento Informacija
+changelog = Pasikeitimai (neprivaloma):
+eula = Steam EULA
+missing = Šis elementas buvo ištrintas arba pakeistas.\n[lightgray]Workshop'o elementas buvo automatiškai atsietas.
+publishing = [accent]Publikuojama...
+publish.confirm = Ar tikrai norite publikuoti tai?\n\n[lightgray]Pirma įsitikinkite, jog sustinkate su Workshop'o EULA arba jūsų elementai nebus rodomi!
+publish.error = Įvyko klaida publikuojant elementą: {0}
+steam.error = Nepavyko inicijuoti Steam paslaugų.\Klaida: {0}
+
+editor.brush = Teptukas
+editor.openin = Atidaryti Redaktoriuje
+editor.oregen = Rūdų Generacija
+editor.oregen.info = Rūdų Generacija:
+editor.mapinfo = Žemėlapio Informacija
+editor.author = Autorius:
+editor.description = Aprašymas:
+editor.nodescription = Žemėlapis privalo turėti aprašymą bent iš 4 simbolių prieš išleidžiant.
+editor.waves = Bangos:
+editor.rules = Taisyklės:
+editor.generation = Generacija:
+editor.ingame = Redaguoti Žaidime
+editor.publish.workshop = Publikuoti Workshop'e
+editor.newmap = Naujas Žemėlapis
+workshop = Workshop
+waves.title = Bangos
+waves.remove = Panaikinti
+waves.never =
+waves.every = kiekvieną
+waves.waves = banga(os)
+waves.perspawn = per spawn
+waves.to = iki
+waves.boss = Bosas
+waves.preview = Apžiūra
+waves.edit = Redaguoti...
+waves.copy = Kopijuoti į iškarpinę
+waves.load = Užkrauti iš iškarpinės
+waves.invalid = Klaidingos Bangos iš iškarpinės.
+waves.copied = Bangos Nukopijuotos.
+waves.none = Nėra nustatyta jokių priešų.\nĮsiminkite, jog tušti bangų maketai bus pakeisti numatytuoju maketu.
+editor.default = [lightgray]
+details = Detaliau...
+edit = Redaguoti...
+editor.name = Pavadinimas:
+editor.spawn = Atradinti Vienetą
+editor.removeunit = Panaikinti Vienetą
+editor.teams = Komandos
+editor.errorload = Įvyko klaida kraunant failą.
+editor.errorsave = Įvyko klaida išsaugant failą.
+editor.errorimage = That's an image, not a map.\n\nIf you want to import a 3.5/build 40 map, use the 'Import Legacy Map' button in the editor.
+editor.errorlegacy = Šis žemėlapis yra per senas ir naudoja seną žemėlapių formatą, kuris yra nebepalaikomas.
+editor.errornot = Tai nėra žemėlapio formatas.
+editor.errorheader = Šis žemėlapis yra netaisyklingas arba sugadintas.
+editor.errorname = Šis žemėlapis neturi nustatyto pavadinimo. Ar bandote užkrauti išsaugotą failą?
+editor.update = Atnaujinti
+editor.randomize = Sumaišyti Atsitiktinai
+editor.apply = Taikyti
+editor.generate = Generuoti
+editor.resize = Pakeisti Dydį
+editor.loadmap = Užkrauti Žemėlapį
+editor.savemap = Išsaugoti Žemėlapį
+editor.saved = Išsaugota!
+editor.save.noname = Jūsų Žemėlapis neturi pavadinimo! Nustatykite meniu 'žemėlapio informacija'.
+editor.save.overwrite = Jūsų žemėlapis perrašo integruotą žemėlapį! Pasirinkite skirtingą pavadinimą 'žemėlapio informacija' meniu.
+editor.import.exists = [scarlet]Negalima importuoti:[] integruotas žemėlapis '{0}' jau egzistuoja!
+editor.import = Importuoti...
+editor.importmap = Importuoti Žemėlapį
+editor.importmap.description = Importuoti jau egzistuojantį žemėlapį
+editor.importfile = Importuoti Failą
+editor.importfile.description = Importuoti išorinį žemėlapio failą
+editor.importimage = Importuoti Seno tipo Žemėlapį
+editor.importimage.description = Importuoti išorinį žemėlapio vaizdo failą
+editor.export = Eksportuoti...
+editor.exportfile = Eksportuoti Failą
+editor.exportfile.description = Eksportuoti žemėlapio failą
+editor.exportimage = Eksportuoti Reljefo Vaizdą
+editor.exportimage.description = Eksportuoti žemėlapio vaizdo failą
+editor.loadimage = Importuoti Reljefą
+editor.saveimage = Eksportuoti Reljefą
+editor.unsaved = [scarlet]Jūs turite neišsaugotų pakeitimų![]\nAr tikrai norite išeiti?
+editor.resizemap = Pakeisti Žemėlapio dydį
+editor.mapname = Žemėlapio Pavadinimas:
+editor.overwrite = [accent]Įspėjimas!\nTai perrašys jau egzistuojantį žemėlapį.
+editor.overwrite.confirm = [scarlet]Perspėjimas![] Žemėlapis su šiuo pavadinimu jau egzistuoja. Ar tikrai norite perrašyti jį?
+editor.exists = Žemėlapis su šiuo pavadinimu jau egzistuoja.
+editor.selectmap = Pasirinkite Žemėlapį, kurį norite užkrauti:
+
+toolmode.replace = Pakeisti
+toolmode.replace.description = Piešia tik ištisinius blokus.
+toolmode.replaceall = Pakeisti Viską
+toolmode.replaceall.description = Pakeisti visus blokus žemėlapyje.
+toolmode.orthogonal = Stačiakampis
+toolmode.orthogonal.description = Piešia stačiakampes linijas.
+toolmode.square = Kvadratas
+toolmode.square.description = Kvadratinis Teptukas brush.
+toolmode.eraseores = Ištrinti Rūdas
+toolmode.eraseores.description = Ištrinti tik rūdas.
+toolmode.fillteams = Užpildyti Komandas
+toolmode.fillteams.description = Užpildykite komandas, o ne blokus.
+toolmode.drawteams = Piešti Komandas
+toolmode.drawteams.description = Pieškite komandas, o ne blokus.
+
+filters.empty = [lightgray]Nėra filtrų! Pridėkite su mygtuku easančiu žemiau.
+filter.distort = Iškraipyti
+filter.noise = Triukšmas
+filter.median = Mediana
+filter.oremedian = Rūdų Mediana
+filter.blend = Sumaišyti
+filter.defaultores = Numatytosios Rūdos
+filter.ore = Rūda
+filter.rivernoise = Upės Triukšmas
+filter.mirror = Veidrodis
+filter.clear = Išvalyti
+filter.option.ignore = Ignoruoti
+filter.scatter = Išsklaidyti
+filter.terrain = Reljefas
+filter.option.scale = Mastelis
+filter.option.chance = Tikimybė
+filter.option.mag = Didumas
+filter.option.threshold = Slenkstis
+filter.option.circle-scale = Apskritimo Mastelis
+filter.option.octaves = Oktavos
+filter.option.falloff = Falloff
+filter.option.angle = Kampas
+filter.option.block = Blokas
+filter.option.floor = Sluoksnis
+filter.option.flooronto = Pasirinktas Sluoksnis
+filter.option.wall = Siena
+filter.option.ore = Rūda
+filter.option.floor2 = Antrasis Sluoksnis
+filter.option.threshold2 = Antrasis Slenkstis
+filter.option.radius = Spindulys
+filter.option.percentile = Procentilė
+
+width = Plotis:
+height = Aukštis:
+menu = Meniu
+play = Žaisti
+campaign = Campaign
+load = Krauti
+save = Išsaugoti
+fps = FPS: {0}
+ping = Ping: {0}ms
+language.restart = Prašome perkrauti žaidimą, norint pakeisti kalbą.
+settings = Nustatymai
+tutorial = Pradininkas
+tutorial.retake = Iš naujo įjungti Pradininką
+editor = Redaktorius
+mapeditor = Žemėlapio Redaktorius
+
+abandon = Apleisti
+abandon.text = Ši zona ir visi jos resursai bus prarasti.
+locked = Užrakinta
+complete = [lightgray]Įvykdyta:
+requirement.wave = Pasiekite {0} zonoje {1}
+requirement.core = Sunaikinkite priešų branduolį zonoje {0}
+requirement.unlock = Atrakinti {0}
+resume = Pratęsti zoną:\n[lightgray]{0}
+bestwave = [lightgray]Geriausia Banga: {0}
+launch = < PALEISTI >
+launch.title = Paleidimas Sėkmingas
+launch.next = [lightgray]kita proga bangoje {0}
+launch.unable2 = [scarlet]Negalima PALEISTI.[]
+launch.confirm = Tai paleis visus resursus jūsų branduolyje.\nJūs nebegalėsite sugrįžti į šią bazę.
+launch.skip.confirm = If you skip now, you will not be able to launch until later waves.
+uncover = Atidengti
+configure = Keisti Resursų Kiekį
+bannedblocks = Uždrausti Blokai
+addall = Pridėti Visus
+configure.locked = [lightgray]Atrakinkite resursų kiekio keitimą: {0}.
+configure.invalid = Kiekis turi būti numris tarp 0 ir {0}.
+zone.unlocked = [lightgray]{0} atrakinta.
+zone.requirement.complete = Rekalavimai {0} įvykdyti:[lightgray]\n{1}
+zone.config.unlocked = Resursų keitimas atrakintas:[lightgray]\n{0}
+zone.resources = [lightgray]Aptikti Resursai:
+zone.objective = [lightgray]Tikslas: [accent]{0}
+zone.objective.survival = Išgyventi
+zone.objective.attack = Sunaikinti priešų branduolį
+add = Pridėti...
+boss.health = Boso Gyvybės
+
+connectfail = [crimson]Prisijungimo Klaida:\n\n[accent]{0}
+error.unreachable = Serveris nepasiekiamas.\nAr adresas yra parašytas tinkamai?
+error.invalidaddress = Klaidingas Adresas.
+error.timedout = Baigėsi Laikas!\nĮsitikinkite, jog serverio prievado ekspedijavimas yra sukonfigūruotas ir adresas yra geras.
+error.mismatch = Paketų klaida:\ngalimas kliento/serverio versijų nesutapimas.\nĮsitikinkite, jog jūs ir serveris turi naujausią Mindustry versiją!
+error.alreadyconnected = Jau Prisijungta.
+error.mapnotfound = Žemėlapis neras!
+error.io = Tinklo I/O klaida.
+error.any = Nžinoma tinklo klaida.
+error.bloom = Nepavyko inicijuoti spindėjimo.\nJūsų įrenginys gali nepalaikyti šios funkcijos.
+
+zone.groundZero.name = Nulinė Žemė
+zone.desertWastes.name = Dykumos Dykvietės
+zone.craters.name = Krateriai
+zone.frozenForest.name = Užšalęs Miškas
+zone.ruinousShores.name = Sugriuvę Krantai
+zone.stainedMountains.name = Beicuoti Kalnai
+zone.desolateRift.name = Apleistas Tarpeklis
+zone.nuclearComplex.name = Branduolinės Gamybos Kompleksas
+zone.overgrowth.name = Peraugimas
+zone.tarFields.name = Dervos Laukai
+zone.saltFlats.name = Druskos Lygumos
+zone.impact0078.name = Poveikis 0078
+zone.crags.name = Uolos
+zone.fungalPass.name = Grybų Perėja
+
+zone.groundZero.description = Optimali vieta pradėjimui iš naujo. Mažas priešų pavojus. Keletas Resursų.\nSurinkite kuo daugiau Švino ir Vario.\nJudėkite toliau.
+zone.frozenForest.description = Net čia, arčiau kalnų, išplito sporos. Šalti orai jų negali išlaikyti visą amžinybę.\n\nPradėkite kelionę į energijos gamybą. Pastatykite vidaus degimo variklius. Išmokite naudoti taisytojus.
+zone.desertWastes.description = Šios dykvietės yra plačios, nenuspėjamos ir nusėtos apleistais sektoriaus pastatais.\nŠiame regione yra anglies. Naudokite ją gaminti energiją arba sintetinkite į grafitą.\n\n[lightgray]Ši nusileidimo vieta negali būti garantuota.
+zone.saltFlats.description = Dykumos pakraštyje driekiasi Druskos Lygumos. Keletas resursų gali būti rasta šioje vietoje.\n\nČia priešai pasistatė savo resursų sandėlių kompleksą. Sunaikinkite jų branduolį. Nepalikite nieko gyvo.
+zone.craters.description = Vanduo susikaupė krateryje, senų karų relikvijoje. Atsiimkite zoną. Rinkite smėlį. Lydykite Meta Stiklą. Pumpuokite vandenį bokštams ir grąžtams aušinti.
+zone.ruinousShores.description = Po dykviečių yra kranto linija. Kartą, šio vietoje buvo pakrantės apsauga. Nebedaug išliko. Tik paprasčiausios gynybos struktūros išliko nesudaužytos, visa kita virto laužu.\nTęskite plėtimasi į išorę. Iš naujo atraskite technologijas.
+zone.stainedMountains.description = Toliau žemėje driekiasi kalnai.\nIšgaukite titaną, kurio gausu šioje zonoje. Išmokite jį naudoti.\n\nČia priešų kiekis yra didesnis. Neduokite jiems laiko siųsti stipriausius vienetus.
+zone.overgrowth.description = Ši vieta yra peraugusi, arčiau sporų šaltinio.\nPriešai įsikūrė gyvenvietę. Pasigaminkite Titanus. Sunaikinkite ją. Atgaukite tai, kas buvo prarasta.
+zone.tarFields.description = Pakraštys naftos produkcijos zonos, tarp kalnų ir dykumų. Viena iš keleto zonų su galimais panaudoti dervos resursais.\nNors apleista, ši zona turi pavojingų priešo pajėgų netoliese. Nenuvertinkite jų.\n\n[lightgray]Išraskite naftos apdirbimo technologijas, jei įmanoma.
+zone.desolateRift.description = Ekstremaliai pavojinga zona. Daugybė resursų, tačiau mažai vietos. Didelė sunaikinimo rizika. Palikite kuo greičiau. Neapsaugaukite ilgais laikais tarpais tarp priešo atakų.
+zone.nuclearComplex.description = Buvusi gamykla torio gamybai ir apdirbimui, sumažinta iki griuvėsių.\n[lightgray]Atraskite Torį ir panaudojimo būdus.\n\nPriešas būna dideliais kiekiais, pastoviai besižvalgantys puolimo.
+zone.fungalPass.description = Perėjimas tarp aukštų kalnų ir žemesnių, sporomis apaugusių žemių. Čia įsikūrusi nedidelė priešų žvalgybos bazė.\nSunaikinkite ją.\nNaudokite Dagerių ir Krolerių vienetus. Sunaikinkite abu branduolius.
+zone.impact0078.description =
+zone.crags.description =
+
+settings.language = Kalba
+settings.data = Žaidimo Duomenys
+settings.reset = Atkurti į numatytuosius
+settings.rebind = Keisti
+settings.resetKey = Atkuri
+settings.controls = Valdymas
+settings.game = Žaidimas
+settings.sound = Garsai
+settings.graphics = Grafikos
+settings.cleardata = Išvalyti žaidimo duomenis...
+settings.clear.confirm = Ar tikrai norite ištrinti šiuos duomenis?\nTai negali būti atkurta!
+settings.clearall.confirm = [scarlet]ĮSPĖJIMAS![]\nTai ištrins visus duomenis, įskaitant išsaugojimus, žemėlapius, atrakinimus ir mygtukų pakeitimus.\nVos paspaudus 'gerai' žaidimas ištrins visus duomenis ir išsijungs.
+paused = [accent]< Sustabdyta >
+clear = Išvalyti
+banned = [scarlet]Užblokuota
+yes = Taip
+no = Ne
+info.title = Informacija
+error.title = [crimson]Įvyko klaida
+error.crashtitle = Įvyko klaida
+blocks.input = Įeiga
+blocks.output = Išeiga
+blocks.booster = Stiprintuvas
+blocks.tiles = Privalomi
+blocks.affinities = Affinities
+block.unknown = [lightgray]???
+blocks.powercapacity = Energijos Talpumas
+blocks.powershot = Energija per šūvį
+blocks.damage = Žala
+blocks.targetsair = Šaudo į Orą
+blocks.targetsground = Šaudo į Žemę
+blocks.itemsmoved = Judėjimo Greitis
+blocks.launchtime = Laikas Tarp Paleidimų
+blocks.shootrange = Atstumas
+blocks.size = Dydis
+blocks.liquidcapacity = Skysčių Talpumas
+blocks.powerrange = Energijos Skleidimo Atstumas
+blocks.powerconnections = Maks. Jungčių Kiekis
+blocks.poweruse = Energijos Suvartojimas
+blocks.powerdamage = Power/Damage
+blocks.itemcapacity = Daiktų Talpumas
+blocks.basepowergeneration = Bazinis Energijos Generavimas
+blocks.productiontime = Gamybos Laikas
+blocks.repairtime = Pilnas bloko sutaisymo laikas
+blocks.speedincrease = Greičio Padidėjimas
+blocks.range = Atstumas
+blocks.drilltier = Gręžiama
+blocks.drillspeed = Bazinis Grąžto Greitis
+blocks.boosteffect = Pastiprinimo Efektas
+blocks.maxunits = Maks. Aktyvių Vienetų Kiekis
+blocks.health = Gyvybės
+blocks.buildtime = Statymo Laikas
+blocks.buildcost = Statymo Kaina
+blocks.inaccuracy = Netikslumas
+blocks.shots = Šūviai
+blocks.reload = Šūviai per sekundę
+blocks.ammo = Šoviniai
+
+bar.drilltierreq = Privalomas Geresnis Grąžtas
+bar.drillspeed = Grąžto Greitis: {0}/s
+bar.pumpspeed = Pompos Greitis: {0}/s
+bar.efficiency = Efektyvumas: {0}%
+bar.powerbalance = Energija: {0}/s
+bar.powerstored = Sukaupta: {0}/{1}
+bar.poweramount = Energija: {0}
+bar.poweroutput = Energijos Išeiga: {0}
+bar.items = Daiktai: {0}
+bar.capacity = Talpumas: {0}
+bar.liquid = Skystis
+bar.heat = Karščiai
+bar.power = Jėga
+bar.progress = Statymo Progresas
+bar.spawned = Vienetai: {0}/{1}
+bar.input = Įeiga
+bar.output = Išeiga
+
+bullet.damage = [stat]{0}[lightgray] žalos
+bullet.splashdamage = [stat]{0}[lightgray] zonos žalos ~[stat] {1}[lightgray] blokai
+bullet.incendiary = [stat]uždegantis
+bullet.homing = [stat]sekimas
+bullet.shock = [stat]šokas
+bullet.frag = [stat]skilantis
+bullet.knockback = [stat]{0}[lightgray] numušimas
+bullet.freezing = [stat]šaldantis
+bullet.tarred = [stat]dervuotas
+bullet.multiplier = [stat]{0}[lightgray]x šovinių daugiklis
+bullet.reload = [stat]{0}[lightgray]x šaudymo greitis
+
+unit.blocks = blokai
+unit.powersecond = energijos per sekundę
+unit.liquidsecond = skysčio per sekundę
+unit.itemssecond = daiktų per sekundę
+unit.liquidunits = skysčio vienetai
+unit.powerunits = energijos vienetai
+unit.degrees = laipsnių
+unit.seconds = sekundės
+unit.persecond = /sek.
+unit.timesspeed = x greičio
+unit.percent = %
+unit.items = daiktai
+unit.thousands = k
+unit.millions = mil
+category.general = Bendra
+category.power = Energija
+category.liquids = Skysčiai
+category.items = Daiktai
+category.crafting = Įeiga/Išeiga
+category.shooting = Šaudymas
+category.optional = Galimi Pagerinimai
+setting.landscape.name = Užrakinti pasukimą
+setting.shadows.name = Šešėliai
+setting.blockreplace.name = Automatiniai Blokų Pasiūlymai
+setting.linear.name = Linijinis Filtravimas
+setting.hints.name = Užuominos
+setting.buildautopause.name = Automatinis Statybų Sustabdymas
+setting.animatedwater.name = Vandens Animacija
+setting.animatedshields.name = Skydų Animacija
+setting.antialias.name = Glodinimas[lightgray] (reikalingas perkrovimas)[]
+setting.indicators.name = Priešų/Sąjungininkų Indikatorius
+setting.autotarget.name = Automatinis Taikymas
+setting.keyboard.name = Pelės+Klaviatūros Valdymas
+setting.touchscreen.name = Jutiklinio Ekrano Valdymas
+setting.fpscap.name = Maks. FPS
+setting.fpscap.none = Nėra
+setting.fpscap.text = {0} FPS
+setting.uiscale.name = UI mastelio keitimas[lightgray] (reikalingas perkrovimas)[]
+setting.swapdiagonal.name = Visada Įstrižinis Padėjimas
+setting.difficulty.training = Mokymai
+setting.difficulty.easy = Lengvas
+setting.difficulty.normal = Normalus
+setting.difficulty.hard = Sunkus
+setting.difficulty.insane = Beprotiškas
+setting.difficulty.name = Sunkumas:
+setting.screenshake.name = Ekrano Drebėjimas
+setting.effects.name = Rodyti Efektus
+setting.destroyedblocks.name = Rodyti Sugriautus Blokus
+setting.conveyorpathfinding.name = Konvejerio Paskirties Vietos Nustatymas
+setting.coreselect.name = Allow Schematic Cores
+setting.sensitivity.name = Valdymo Jautrumas
+setting.saveinterval.name = Išsaugojimo Intervalas
+setting.seconds = {0} sekundžių
+setting.blockselecttimeout.name = Maks. Bloko Pasirinkimo Laikas
+setting.milliseconds = {0} milisekundžių
+setting.fullscreen.name = Fullscreen
+setting.borderlesswindow.name = Langas Be Pakrasčių[lightgray] (gali reikėti perkrauti)
+setting.fps.name = Rodyti FPS ir Ping
+setting.blockselectkeys.name = Rodyti Blokų Pasirinkimo Mygtukus
+setting.vsync.name = VSync
+setting.pixelate.name = Pikseliavimas
+setting.minimap.name = Rodyti Mini Žemėlapį
+setting.position.name = Rodyti Žaidėjų Pozicijas
+setting.musicvol.name = Muzikos Garsumas
+setting.ambientvol.name = Aplinkos Garsas
+setting.mutemusic.name = Nutildyti Muziką
+setting.sfxvol.name = SFX Garsumas
+setting.mutesound.name = Nutildyti Garsus
+setting.crashreport.name = Siųsti Anoniminius Strigties Pranešimus
+setting.savecreate.name = Automatiškai Kurti Išsaugojimus
+setting.publichost.name = Viešojo Žaidimo Matomumas
+setting.playerlimit.name = Žaidėjų Limitas
+setting.chatopacity.name = Pokalbių Lentos Nepermatomumas
+setting.lasersopacity.name = Power Laser Opacity
+setting.bridgeopacity.name = Tilto Nepermatomumas
+setting.playerchat.name = Rodyti Pokalbių Teksto Burbulus Virš Žaidėjų
+public.confirm = Ar norite savo žaidimą paversti viešu?\n[accent]Bet kas galės įeiti į jūsų žaidimą.\n[lightgray]Tai gali būti pakeista nuėjus į Nustatymai->Žaidimas->Viešojo Žaidimo Matomumas.
+public.beta = Įsiminkite, jog beta versijoje negalima sukrti viešų kambarių.
+uiscale.reset = UI mastelis buvo pakeistas.\nSpauskite "GERAI", norėdami palikti šį mastelį.\n[scarlet]Atšaukiama ir išeinama po[accent] {0}[] sekundžių...
+uiscale.cancel = Atšaukti ir Išeiti
+setting.bloom.name = Švytėjimas
+keybind.title = Pakeisti Valdymo Mygtukus
+keybinds.mobile = [scarlet]Dauguma valdymo mygtukų neveikia telefone. Tik paparastas judėjimas yra palaikomas.
+category.general.name = Bendra
+category.view.name = Vaizdas
+category.multiplayer.name = Žaidimas Tinkle
+command.attack = Pulti
+command.rally = Susitelkti
+command.retreat = Atsitraukti
+placement.blockselectkeys = \n[lightgray]Key: [{0},
+keybind.clear_building.name = Išvalyti Statybas
+keybind.press = Paspauskite mygtuką...
+keybind.press.axis = Paspauskite aši arba mygtuką...
+keybind.screenshot.name = Žemėlapio Ekrano Kopija
+keybind.toggle_power_lines.name = Toggle Power Lasers
+keybind.move_x.name = Judėjimas X ašimi
+keybind.move_y.name = Judėjimas Y ašimi
+keybind.mouse_move.name = Sekti Pelę
+keybind.dash.name = Greitas Judėjimas
+keybind.schematic_select.name = Pasirinkite Regioną
+keybind.schematic_menu.name = Schemų Meniu
+keybind.schematic_flip_x.name = Apversti schemą per X ašį
+keybind.schematic_flip_y.name = Apversti schemą per Y ašį
+keybind.category_prev.name = Ankstesnė Kategorija
+keybind.category_next.name = Sekanti Kategorija
+keybind.block_select_left.name = Bloko Pasirinkimas į Kairę
+keybind.block_select_right.name = Bloko Pasirinkimas į Dešinę
+keybind.block_select_up.name = Bloko Pasirinkimas į Viršų
+keybind.block_select_down.name = Bloko Pasirinkimas į Apačia
+keybind.block_select_01.name = Kategorijos/Bloko Pasirinkimas 1
+keybind.block_select_02.name = Kategorijos/Bloko Pasirinkimas 2
+keybind.block_select_03.name = Kategorijos/Bloko Pasirinkimas 3
+keybind.block_select_04.name = Kategorijos/Bloko Pasirinkimas 4
+keybind.block_select_05.name = Kategorijos/Bloko Pasirinkimas 5
+keybind.block_select_06.name = Kategorijos/Bloko Pasirinkimas 6
+keybind.block_select_07.name = Kategorijos/Bloko Pasirinkimas 7
+keybind.block_select_08.name = Kategorijos/Bloko Pasirinkimas 8
+keybind.block_select_09.name = Kategorijos/Bloko Pasirinkimas 9
+keybind.block_select_10.name = Kategorijos/Bloko Pasirinkimas 10
+keybind.fullscreen.name = Perjungti Pilno Ekrano Režimą
+keybind.select.name = Pasirinkti/Šauti
+keybind.diagonal_placement.name = Įstrižas Padėjimas
+keybind.pick.name = Pasirinkti Bloką
+keybind.break_block.name = Išgriauti Bloką
+keybind.deselect.name = Panaikinti Pasirinkimą
+keybind.shoot.name = Šauti
+keybind.zoom.name = Keisti Vaizdo Mastelį
+keybind.menu.name = Meniu
+keybind.pause.name = Sustabdyti
+keybind.pause_building.name = Sustabdyti/Tęsti Statymą
+keybind.minimap.name = Mini Žemėlapis
+keybind.chat.name = Pakalbiai
+keybind.player_list.name = Žaidėjų Sąrašas
+keybind.console.name = Konsolė
+keybind.rotate.name = Pasukti
+keybind.rotateplaced.name = Pasukti Egzistuojantį (Laikyti)
+keybind.toggle_menus.name = Perjungti Meniu
+keybind.chat_history_prev.name = Pokalbių istorija Ankstesnis
+keybind.chat_history_next.name = Pokalbių istorija Pirmyn
+keybind.chat_scroll.name = Pokalbių Slinktis
+keybind.drop_unit.name = Išmesti Vienetą
+keybind.zoom_minimap.name = Keisti Mini Žemėlapio Mastelį
+mode.help.title = Modifikacijų Aprašymai
+mode.survival.name = Išgyvenimas
+mode.survival.description = Normalus režimas. Riboti resursai ir automatinės priešų bangos.\n[gray]Privalomos priešų atsiradimo zonos žemėlapyje.
+mode.sandbox.name = Sandbox
+mode.sandbox.description = Neriboti resursai ir nėra bangų laikmačio.
+mode.editor.name = Redaktorius
+mode.pvp.name = PvP
+mode.pvp.description = Kovokite su kitais žmonėmsi vietiniame tinkle.\n[gray]Norint žaisti žemėlapyje yra privalomi bent du branduoliai su skirtingomis spalvomis.
+mode.attack.name = Puolimas
+mode.attack.description = Sunaikinkite priešų branduolį. \n[gray]Norint žaisti žemėlapyje yra reikalingas branduolys su raudona spalva.
+mode.custom = Pasirinktinės Taisyklės
+
+rules.infiniteresources = Neriboti Resursai
+rules.reactorexplosions = Reaktorių Sprogimai
+rules.wavetimer = Bangų Laikmatis
+rules.waves = Bangos
+rules.attack = Puolimo Režimas
+rules.enemyCheat = Neriboti Kompiuterio (Raudonosios Komandos) Resursai
+rules.unitdrops = Vienetų Išmetimai
+rules.unitbuildspeedmultiplier = Vienetų Gamybos Greičio Daugiklis
+rules.unithealthmultiplier = Vienetų Gyvybių Daugiklis
+rules.blockhealthmultiplier = Blokų Gyvybių Daugiklis
+rules.playerhealthmultiplier = Žaidėjų Gyvybių Daugiklis
+rules.playerdamagemultiplier = Žaidėjų Žalos Daugiklis
+rules.unitdamagemultiplier = Vienetų Žalos Daugiklis
+rules.enemycorebuildradius = Nestatymo aplink priešų branduolį spindulys:[lightgray] (blokais)
+rules.respawntime = Prisikėlimo Laikas:[lightgray] (sek.)
+rules.wavespacing = Tarpai Tarp Bangų:[lightgray] (sek.)
+rules.buildcostmultiplier = Statymo Kainų Daugiklis
+rules.buildspeedmultiplier = Statymo Greičio Daugiklis
+rules.waitForWaveToEnd = Laukti, kol pasibaigs banga
+rules.dropzoneradius = Išmetimo Zonos Spindulys:[lightgray] (blokais)
+rules.respawns = Maks. Prisikėlimų Kiekis Per Bangą
+rules.limitedRespawns = Riboti Prisikėlimus
+rules.title.waves = Bangos
+rules.title.respawns = Prisikėlimai
+rules.title.resourcesbuilding = Resursai ir Pastatai
+rules.title.player = Žaidėjai
+rules.title.enemy = Priešai
+rules.title.unit = Vienetai
+rules.title.experimental = Eksperimentinis
+rules.lighting = Apšvietimas
+rules.ambientlight = Aplinkos Šviesa
+rules.solarpowermultiplier = Saulės Energijos Daugiklis
+
+content.item.name = Daiktai
+content.liquid.name = Skysčiai
+content.unit.name = Vienetai
+content.block.name = Blokai
+content.mech.name = Mechai
+item.copper.name = Varis
+item.lead.name = Švinas
+item.coal.name = Anglis
+item.graphite.name = Grafitas
+item.titanium.name = Titanas
+item.thorium.name = Toris
+item.silicon.name = Silicis
+item.plastanium.name = Plastaniumas
+item.phase-fabric.name = Fazinė Tekstilė
+item.surge-alloy.name = Viršįtampio Lydinys
+item.spore-pod.name = Sporų Kokonas
+item.sand.name = Smėlis
+item.blast-compound.name = Sprogusis Junginys
+item.pyratite.name = Piratitas
+item.metaglass.name = Meta Stiklas
+item.scrap.name = Metalo Laužas
+liquid.water.name = Vanduo
+liquid.slag.name = Šlakas
+liquid.oil.name = Nafta
+liquid.cryofluid.name = Krio Skystis
+mech.alpha-mech.name = Alpha
+mech.alpha-mech.weapon = Sunkusis Repeateris
+mech.alpha-mech.ability = Regeneracija
+mech.delta-mech.name = Delta
+mech.delta-mech.weapon = Arkų Generatorius
+mech.delta-mech.ability = Iškrova
+mech.tau-mech.name = Tau
+mech.tau-mech.weapon = Atstatymo Lazeris
+mech.tau-mech.ability = Taisymo Pliūpsnis
+mech.omega-mech.name = Omega
+mech.omega-mech.weapon = Spečiaus Raketos
+mech.omega-mech.ability = Šarvuota Kongfigūracija
+mech.dart-ship.name = Dart
+mech.dart-ship.weapon = Repeateris
+mech.javelin-ship.name = Javelin
+mech.javelin-ship.weapon = Sprogstančios Raketos
+mech.javelin-ship.ability = Iškrovos Stiprintuvas
+mech.trident-ship.name = Trident
+mech.trident-ship.weapon = Bombos Įlanka
+mech.glaive-ship.name = Glaive
+mech.glaive-ship.weapon = Liepsnų Repeateris
+item.corestorable = [lightgray]Įmanoma laikyti branduolyje: {0}
+item.explosiveness = [lightgray]Sprogstamumas: {0}%
+item.flammability = [lightgray]Degumas: {0}%
+item.radioactivity = [lightgray]Radioaktyvumas: {0}%
+unit.health = [lightgray]Gyvybės: {0}
+unit.speed = [lightgray]Greitis: {0}
+mech.weapon = [lightgray]Ginklas: {0}
+mech.health = [lightgray]Gyvybės: {0}
+mech.itemcapacity = [lightgray]Daiktų Talpumas: {0}
+mech.minespeed = [lightgray]Kasimo Greitis: {0}%
+mech.minepower = [lightgray]Kasimo jėga: {0}
+mech.ability = [lightgray]Gebėjimas: {0}
+mech.buildspeed = [lightgray]Statymo Greitis: {0}%
+liquid.heatcapacity = [lightgray]Karščio Talpumas: {0}
+liquid.viscosity = [lightgray]Klampumas: {0}
+liquid.temperature = [lightgray]Temperatūra: {0}
+
+block.sand-boulder.name = Smėlio Riedulys
+block.grass.name = Žolė
+block.salt.name = Druska
+block.saltrocks.name = Druskos Akmenys
+block.pebbles.name = Akmenukai
+block.tendrils.name = Tendrilės
+block.sandrocks.name = Smėlėtos Uolienos
+block.spore-pine.name = Sporinė Pušis
+block.sporerocks.name = Sporinės Uolienos
+block.rock.name = Uolienos
+block.snowrock.name = Sniego Uolienos
+block.snow-pine.name = Snieginė Pušis
+block.shale.name = Skalūnas
+block.shale-boulder.name = Skalūno Riedulys
+block.moss.name = Samanos
+block.shrubs.name = Krūmai
+block.spore-moss.name = Sporų Samanos
+block.shalerocks.name = Skalūno Uolienos
+block.scrap-wall.name = Laužo Siena
+block.scrap-wall-large.name = Didelė Laužo Siena
+block.scrap-wall-huge.name = Didžiulė Laužo Siena
+block.scrap-wall-gigantic.name = Milžiniška Laužo Siena
+block.thruster.name = Thrusteris
+block.kiln.name = Krosnis
+block.graphite-press.name = Grafito Presas
+block.multi-press.name = Multi Presas
+block.constructing = {0} [lightgray](Konstrujama)
+block.spawn.name = Priešų Atsiradimo Zona
+block.core-shard.name = Branduolis: Šerdis
+block.core-foundation.name = Branduolys: Pagrindas
+block.core-nucleus.name = Branduolys: Centras
+block.deepwater.name = Gilus Vanduo
+block.water.name = Vanduo
+block.tainted-water.name = Užterštas Vanduo
+block.darksand-tainted-water.name = Tamsaus Smėlio Užterštas Vanduo
+block.tar.name = Derva
+block.stone.name = Akmuo
+block.sand.name = Smėlis
+block.darksand.name = Tamsus Smėlis
+block.ice.name = Ledas
+block.snow.name = Sniegas
+block.craters.name = Krateriai
+block.sand-water.name = Smėlio vanduo
+block.darksand-water.name = Tamsaus Smėlio Vanduo
+block.char.name = Char
+block.holostone.name = Holo stone
+block.ice-snow.name = Ledinis Sniegas
+block.rocks.name = Uolienos
+block.icerocks.name = Ledo Uolienos
+block.snowrocks.name = Sniego Uolienos
+block.dunerocks.name = Kopų Uolienos
+block.pine.name = Pušis
+block.white-tree-dead.name = Baltas Medis Miręs
+block.white-tree.name = Baltas Medis
+block.spore-cluster.name = Spore Cluster
+block.metal-floor.name = Metalo Sluoksnis 1
+block.metal-floor-2.name = Metalo Sluoksnis 2
+block.metal-floor-3.name = Metalo Sluoksnis 3
+block.metal-floor-5.name = Metalo Sluoksnis 4
+block.metal-floor-damaged.name = Metalo Sluoksnis Pažeistas
+block.dark-panel-1.name = Dark Panel 1
+block.dark-panel-2.name = Dark Panel 2
+block.dark-panel-3.name = Dark Panel 3
+block.dark-panel-4.name = Dark Panel 4
+block.dark-panel-5.name = Dark Panel 5
+block.dark-panel-6.name = Dark Panel 6
+block.dark-metal.name = Tamsusis Metalas
+block.ignarock.name = Igna Uoliena
+block.hotrock.name = Karštoji Uoliena
+block.magmarock.name = Magmos Uoliena
+block.cliffs.name = Uolos
+block.copper-wall.name = Vario Siena
+block.copper-wall-large.name = Didelė Vario Siena
+block.titanium-wall.name = Titano Siena
+block.titanium-wall-large.name = Didelė Titano Siena
+block.plastanium-wall.name = Plastaniumo Siena
+block.plastanium-wall-large.name = Didelė Plastaniumo Siena
+block.phase-wall.name = Fazinė Siena
+block.phase-wall-large.name = Didelė Fazinė Siena
+block.thorium-wall.name = Torio Siena
+block.thorium-wall-large.name = Didelė Torio Siena
+block.door.name = Durys
+block.door-large.name = Didelės Durys
+block.duo.name = Duo
+block.scorch.name = Scorch
+block.scatter.name = Scatter
+block.hail.name = Hail
+block.lancer.name = Lancer
+block.conveyor.name = Konvejeris
+block.titanium-conveyor.name = Titaninis Konvejeris
+block.armored-conveyor.name = Šarvuotas Konvejeris
+block.armored-conveyor.description = Juda tokuo pačiu greičiu kaip titaninis konvejeris, tačiau turi daugiau šarvų. Nepriima įeigos iš šonų, išskyrus kitus konvejerius.
+block.junction.name = Sandūra
+block.router.name = Maršrutizatorius
+block.distributor.name = Skirstytuvas
+block.sorter.name = Rūšiuotojas
+block.inverted-sorter.name = Atbulinis Rūšiuotojas
+block.message.name = Žinutė
+block.illuminator.name = Šviestuvas
+block.illuminator.description = Mažas, kompaktiškas, konfigūruojamas šviesos šaltinis. Reikalinga energija funkcionavimui.
+block.overflow-gate.name = Perpildymo Užtvara
+block.underflow-gate.name = Neperpildymo Užtvara
+block.silicon-smelter.name = Silicio Lydykla
+block.phase-weaver.name = Fazinė Audykla
+block.pulverizer.name = Pulverizatorius
+block.cryofluidmixer.name = Krio Skysčio Maišytojas
+block.melter.name = Lydytuvas
+block.incinerator.name = Deginimo krosnis
+block.spore-press.name = Sporų Presas
+block.separator.name = Separatorius
+block.coal-centrifuge.name = Anglies Centrifuga
+block.power-node.name = Matinimo Mazgas
+block.power-node-large.name = Didelis Maitinimo Mazgas
+block.surge-tower.name = Viršįtampio Bokštas
+block.diode.name = Baterijos Diodas
+block.battery.name = Baterija
+block.battery-large.name = Didelė Baterija
+block.combustion-generator.name = Vidaus Degimo Generatorius
+block.turbine-generator.name = Garų Generatorius
+block.differential-generator.name = Diferencialinis Generatorius
+block.impact-reactor.name = Smūginis Reaktorius
+block.mechanical-drill.name = Mechaninis Grąžtas
+block.pneumatic-drill.name = Pneumatinis Grąžtas
+block.laser-drill.name = Lazerinis Grąžtas
+block.water-extractor.name = Vandens Trauktuvas
+block.cultivator.name = Kultivatorius
+block.dart-mech-pad.name = Alpha Mech Pad
+block.delta-mech-pad.name = Delta Mech Pad
+block.javelin-ship-pad.name = Javelin Ship Pad
+block.trident-ship-pad.name = Trident Ship Pad
+block.glaive-ship-pad.name = Glaive Ship Pad
+block.omega-mech-pad.name = Omega Mech Pad
+block.tau-mech-pad.name = Tau Mech Pad
+block.conduit.name = Vamzdis
+block.mechanical-pump.name = Mechaninė Pompa
+block.item-source.name = Daiktų Šaltinis
+block.item-void.name = Daiktų Tuštuma
+block.liquid-source.name = Skysčių Šaltinis
+block.liquid-void.name = Skysčių Tuštuma
+block.power-void.name = Energijos Tuštuma
+block.power-source.name = Begalinė Energija
+block.unloader.name = Iškroviklis
+block.vault.name = Seifas
+block.wave.name = Wave
+block.swarmer.name = Swarmer
+block.salvo.name = Salvo
+block.ripple.name = Ripple
+block.phase-conveyor.name = Fazinis Konvejeris
+block.bridge-conveyor.name = Tiltinis Konvejeris
+block.plastanium-compressor.name = Plastaniumo Kompresorius
+block.pyratite-mixer.name = Piratito Maišytuvas
+block.blast-mixer.name = Sprogiklio Maišytuvas
+block.solar-panel.name = Saulės Baterija
+block.solar-panel-large.name = Didelė Saulės Baterija
+block.oil-extractor.name = Naftos Trauktuvas
+block.command-center.name = Komandų Centras
+block.draug-factory.name = Draug Miner Drone Factory
+block.spirit-factory.name = Spirit Repair Drone Factory
+block.phantom-factory.name = Phantom Builder Drone Factory
+block.wraith-factory.name = Wraith Fighter Factory
+block.ghoul-factory.name = Ghoul Bomber Factory
+block.dagger-factory.name = Dagger Mech Factory
+block.crawler-factory.name = Crawler Mech Factory
+block.titan-factory.name = Titan Mech Factory
+block.fortress-factory.name = Fortress Mech Factory
+block.revenant-factory.name = Revenant Fighter Factory
+block.repair-point.name = Taisymo Taškas
+block.pulse-conduit.name = Pulsinis Vamzdis
+block.plated-conduit.name = Padengtas Vamzdis
+block.phase-conduit.name = Fazinis Vamzdis
+block.liquid-router.name = Skysčių Maršrutizatorius
+block.liquid-tank.name = Skysčių Talpa
+block.liquid-junction.name = Skysčių Sandūra
+block.bridge-conduit.name = Tiltinis Vamzdis
+block.rotary-pump.name = Rotacinis Siurblys
+block.thorium-reactor.name = Torio Reaktorius
+block.mass-driver.name = Elektromagnetinė Katapulta
+block.blast-drill.name = Oro Srovės Grąžtas
+block.thermal-pump.name = Terminė Pompa
+block.thermal-generator.name = Terminis Generatorius
+block.alloy-smelter.name = Lydinio Lydykla
+block.mender.name = Taisytojas
+block.mend-projector.name = Taisymo Projektorius
+block.surge-wall.name = Viršįtampio Siena
+block.surge-wall-large.name = Didelė Viršįtampio Siena
+block.cyclone.name = Cyclone
+block.fuse.name = Fuse
+block.shock-mine.name = Shock Mine
+block.overdrive-projector.name = Pagreitintuvas
+block.force-projector.name = Jėgos Lauko Projektorius
+block.arc.name = Arc
+block.rtg-generator.name = RTG Generatorius
+block.spectre.name = Spectre
+block.meltdown.name = Meltdown
+block.container.name = Talpykla
+block.launch-pad.name = Paleidimo Aikštelė
+block.launch-pad-large.name = Didelė Paleidimo Aikštelė
+team.blue.name = mėlyna
+team.crux.name = raudona
+team.sharded.name = oranžinė
+team.orange.name = oranžinė
+team.derelict.name = apleista
+team.green.name = žalia
+team.purple.name = violetinė
+unit.spirit.name = Spirit Repair Drone
+unit.draug.name = Draug Miner Drone
+unit.phantom.name = Phantom Builder Drone
+unit.dagger.name = Dagger
+unit.crawler.name = Crawler
+unit.titan.name = Titanas
+unit.ghoul.name = Ghoul Bomber
+unit.wraith.name = Wraith Fighter
+unit.fortress.name = Fortress
+unit.revenant.name = Revenant
+unit.eruptor.name = Eruptor
+unit.chaos-array.name = Chaos Array
+unit.eradicator.name = Eradicator
+unit.lich.name = Lich
+unit.reaper.name = Reaper
+tutorial.next = [lightgray]
+tutorial.intro = Jūs įžengėte į [scarlet] Mindustry Pradininką.[]\nNaudokite[accent] [[WASD][] norėdami judėti.\n[accent]Naudoktie vidurinį pelės klavišą[] norėdami pakeisti mastelį.\nPradėkite nuo[accent] Vario kasimo[]. Pajudėkite arčiau jo, tada spauskite ant Vario venos, kuri yra šalia jūsų, norėdami kasti varį.\n\n[accent]{0}/{1} copper
+tutorial.intro.mobile = Jūs įžengėte į [scarlet] Mindustry Pradininką.[]\nBraukite per ekraną norėdami judėti.\n[accent]Braukite dviemis pirštais priešingomis kryptimis[] norėdami keisti mastelį.\nPradėkite nuo[accent] Vario kasimo[]. Pradėkite nuo[accent] Vario kasimo[]. Pajudėkite arčiau jo, tada spauskite ant Vario venos, kuri yra šalia jūsų, norėdami kasti varį.\n\n[accent]{0}/{1} copper
+tutorial.drill = Rankinis kasimas yra neefektyvus.\n[accent]Grąžtai[] gali gręžti automatiškai.\nPaspauskite grąžtų skirtuką esantį apačioje dešiniajame kampe.\nPasirinkite[accent] mechaninį grąžtą[]. Pastatykite jį ant Vario venos.\nTaip pat galite pasirinkti grąžtą paspaudę[accent][[2][] ir [accent][[1][] vienu metu, nesvarbu koks skirtukas yra įjungtas.\n[accent]Paspauskite dešinį pelės klavišą[] norėdami sustabydi statymą.
+tutorial.drill.mobile = Rankinis kasimas yra neefektyvus.\n[accent]Grąžtai[] gali gręžti automatiškai.\nPaspauskite grąžtų skirtuką esantį apačioje dešiniajame kampe.\nPasirinkite[accent] mechaninį grąžtą[].\nPastatykite jį paspausdami ant Vario gyslos, tada paspauskite[accent] varnelę[] esančią apačioje norint priimti pasirinkimą.\nSpauskite[accent] X mygtuką[] norėdami atšaukti pasirinkimą.
+tutorial.blockinfo = Kievienas blokas turi skirtingas statistikas. Kiekvienas grąžtas gali kasti tam tikras rūdas\nNorėdami patirkinti daikto informaciją ir statistikas[accent] spauskite "?" mygtuką, kai yra pasirinktas blokas statybų menu.[]\n\n[accent]Dabar apžiūrėkite Mechaninio Grąžto statistikas.[]
+tutorial.conveyor = [accent]Kovejeriai[] yra naudojami medžiagų transportavimui į branduolį.\nNutieskite konvejerių linją nuo grąžto iki branduolio.\n[accent]Laikykite paspaudę pelytės kairiajį klavišą norėdami padėti konvejerius linija.[]\nLaikykite paspaudę[accent] CTRL[] ir pelytės kairiajį klavišą norėdami padėti konvejerius įstrižai.\nNaudokite pelės ratuką blokų pasukimui prieš juos dedant.\n[accent]Padėkite 2 kovejerius su linijų įrankiu, tada pristatykite medžiagas į branduolį.
+tutorial.conveyor.mobile = [accent]Kovejeriai[] yra naudojami medžiagų transportavimui į branduolį.\nNutieskite konvejerių linją nuo grąžto iki branduolio.\n[accent]Padėkite kovejerius linija paspaudus kelioms sekundėms[] ir tempiant bet kuria kryptimi.\n\n[accent]Padėkite 2 kovejerius su linijų įrankiu, tada pristatykite medžiagas į branduolį.
+tutorial.turret = Kai medžiagos įeina į branduolį, jos gali būti naudojamos statyboms.\nPrisiminkite, jog ne visos medžiagos gali būti naudojamos statyboms.\nMedžiagos, kurios yra nenaudojamos statyboms, pvz.[accent] anglis[] ar[accent] metalo laužas[], negali įeiti į branduolį.\nTuri būti naudojamos apsaugų struktūros norint apsisaugoti nuo [lightgray] priešo[].\nPastatykite[accent] duo bokštą[] netoliese bazės.
+tutorial.drillturret = Duo bokštams reikalingi[accent] Vario šoviniai[] šaudymui.\nPadėkite grąžtą netoliese bokšto.\nNuveskite konvejerius į bokštą norint tiekti Varį bokštui šoviniams.\n\n[accent]Pristatyta šovinių: 0/1
+tutorial.pause = Vykstant kovai galite[accent] sustabdyti žaidimą.[]\nTaip pat galite įtraukti pastatus į statybų eilę.\n\n[accent]Paspauskite tarpą norėdami sustabdyti.
+tutorial.pause.mobile = Vykstant kovai galite[accent] sustabdyti žaidimą.[]\nTaip pat galite įtraukti pastatus į statybų eilę.\n\n[accent]Paspauskite mygtuką esanti viršuje kairiajame kampe esantį mygtuką norėdami sustabdyti.
+tutorial.unpause = Dabar paspauskite tarpą dar kartą pratęsimui.
+tutorial.unpause.mobile = Dabar paspauskite mygtuką dar kartą pratęsimui.
+tutorial.breaking = Blokai dažnai turi būti panainkinti.\n[accent]Laikyte dešinį pelės klavišą ir tempkite pelę[] norėdami sunaikinti visus pasirinktus objektus.[]\n\n[accent]Sunaikinkite visus metalo laužo blokus esančius branduolio kairėje naudojant pasirinkimą.
+tutorial.breaking.mobile = Blokai dažnai turi būti panainkinti.\n[accent]Pasirinkite dekonstrukcijos režimą[], tada spauskite ant bloko norint pradėti graitu.\nSunaikite zoną palaikę paspaudę kelioms sekundėms[] ir tempdami bet kuria kryptimi.\nPaspauskite varnelę norėdami priimti sunaikinimą\n\n[accent]Sunaikinkite visus metalo laužo blokus esančius branduolio kairėje naudojant pasirinkimą.
+tutorial.withdraw = Kai kuriose situacijose reikia paimti medžiagas reikia tiesiogiai iš blokų.\nNorint padaryti tai [accent]paspauskite ant bloko[] su medžiagomis jame, po to [accent]paspauskite ant medžiagos[] esančios inventoriuje.\nDaugiau medžiagų galima pasiimti [accent]laikant paspaudus[].\n\n[accent]Pasiimkite šiek tiek Vario iš branduolio.[]
+tutorial.deposit = Įdėkite medžiagas į blokus tempdami nuo savo erdvėlaivio iki bloko.\n\n[accent]Padėkite Varį atgal į branduolį[]
+tutorial.waves = Ateina[lightgray] priešai[].\n\nGinkite savo branduolį dvi bangas.[accent] Paspauskite dešinį pelės klavišą[] norėdami šaudyti.\nPastatykite daugiau bokštų ir grąžtų. Iškaskite daugiau Vario.
+tutorial.waves.mobile = Ateina [lightgray] priešai[].\n\nGinkite savo branduolį dvi bangas. Jūsų erdvėlaivis pradės šaudyti automatiškai.\nPastatykite daugiau bokštų ir grąžtų. Iškaskite daugiau Vario.
+tutorial.launch = Kai pasieksite tam tikrą bangą, galėsite[accent] paleisti branduolį[] palikdami už savęs gynybas už savęs[accent] ir gaudami visus resursus, kurie yra branduolyje.[]\nŠie gauti resursai gali būti naudojami išrasti naujas technologijas.\n\n[accent]Paspauskite paleidimo mygtuką.
+
+item.copper.description = Paprasčiausia struktūrinė medžiaga. Plačiai naudojama visų tipų blokams.
+item.lead.description = Pagrindinė pradinė medžiaga. Plačiai naudojama elektronikoje ir skysčių transportacijos blokams.
+item.metaglass.description = Itin kietas stiklo junginys. Plačiai naudojamas skysčių gabenimui ir laikymui.
+item.graphite.description = Mineralizuota anglis, kuri yra naudojama amunicijai ir elektronikos komponentams.
+item.sand.description = Dažnai sutinkama medžiaga, kuri yra plačiai naudojama lydymui.
+item.coal.description = Suakmenėjusios augalinės medžiagos, susiformavusios dar prieš sėjos įvykį. Plačiai naudojama kurui ir resursų gamybai.
+item.titanium.description = Retas ir itin lengvas metalas. Plačiai naudojamas skysčių gabenime, grąžtams ir lėktuvams.
+item.thorium.description = Tankus bei radioaktyvus metalas naudojamas struktūriniam palaikymui ir branduoliniam kurui.
+item.scrap.description = Senų struktūrų ir vienetų liekanos. Sudėtyje yra įvairių metalų pėdsakų.
+item.silicon.description = Ypač naudingas puslaidininkas. Naudojama saulės baterijose, sudėtingose elektronikose ir taikinių sekimo amunicijoje.
+item.plastanium.description = Lengva, plastiška medžiaga naudojama pažangiems lėktuvams ir skilančioje aminucijoje.
+item.phase-fabric.description = Beveik besvorė medžiaga naudojama pažangesniuoje elektronikoje ir savitaisėse technologijose.
+item.surge-alloy.description = Pažangus lydinys su unikaliomis elektrinėmis savybėmis.
+item.spore-pod.description = Sintetinių sporų kokonas, susintetintos iš atmosferos industriniam naudojimui. Naudojama konversijai į naftą, sprogmenis ir kurą.
+item.blast-compound.description = Nestabilus junginys naudojamas bomboms ir sprogmenims. Susintetintas iš sporų kokonų ir kitų lakiųjų medžiagų. Nerekomenduojama naudoti kaip kurą.
+item.pyratite.description = Ypač degi medžiaga naudojama uždegantiems ginklams.
+liquid.water.description = Naudingiausias skystis. Dažniausiai naudojamas įrenginių aušinimui ir atliekų perdirbimui.
+liquid.slag.description = Įvairių rūšių metalai susilydę tarpusavyję. Gali būti atskirti į sudedamasias medžiagas arba išpurkšti ant priešų.
+liquid.oil.description = Skystis, naudojamas pažangių medžiagų gamyboje. Gali būti konvertuota į anglį arba gali būti išpurkšta ir padegta.
+liquid.cryofluid.description = Inertiškas, neėsdinantis skystis gaminamas iš vandens ir titano. Atlaiko ypač didelį karštį. Plačiai naudojamas kaip aušinimo skystis.
+mech.alpha-mech.description = The standard control mech. Based on a Dagger unit, with upgraded armor and building capabilities. Has more damage output than a Dart ship.
+mech.delta-mech.description = A fast, lightly-armored mech made for hit-and-run attacks. Does little damage against structures, but can kill large groups of enemy units very quickly with its arc lightning weapons.
+mech.tau-mech.description = The support mech. Heals allied blocks by shooting at them. Can heal allies in a radius with its repair ability.
+mech.omega-mech.description = A bulky and well-armored mech, made for front-line assaults. Its armor can block up to 90% of incoming damage.
+mech.dart-ship.description = The standard control ship. Fast mining speed. Reasonably fast and light, but has little offensive capability.
+mech.javelin-ship.description = A hit-and-run strike ship. While initially slow, it can accelerate to great speeds and fly by enemy outposts, dealing large amounts of damage with its lightning and missiles.
+mech.trident-ship.description = A heavy bomber, built for construction and destroying enemy fortifications. Reasonably well armored.
+mech.glaive-ship.description = A large, well-armored gunship. Equipped with an incendiary repeater. Highly maneuverable.
+unit.draug.description = Primityvus kasimo dronas. Pigus. Panaudojamas. Automatiškai kasa netoliese esantį varį ir šviną. Pristato iškastus resursus į artimiausią branduolį.
+unit.spirit.description = Modifikuotas draug dronas, skirtas taisyti, o ne kasti. Automatiškai taiso zonoje esančiu sugadintus blokus.
+unit.phantom.description = Pažengęs dronų vienetas. Seka žaidėjus. Padeda statybose.
+unit.dagger.description = Paprasčiausias žemės vienetas. Pigus pagaminti. Galingas, kai naudojamas būriais.
+unit.crawler.description = Antžeminis vienetas, kurį sudaro rėmas ir ant viršaus užrišti sprogmenys. Nelabai patvarus. Sprogsta kontaktuodamas su priešais.
+unit.titan.description = Pažengęs, šarvuotas antžeminis vienetas. Puola žemę ir orą. Apginkluotas dvejais miniatiūriniais "Scorch" klasės liepsnosvaidžiais.
+unit.fortress.description = Sunkiosios artilerijos vienetas. Apginkluotas dvejomis modifikuotomis "Hail" tipo patrankomis priešo struktūrų ir pajėgų užpuolimui iš tolimo atstumo.
+unit.eruptor.description = Sunkusis vienetas skirtas nugriauti struktūras. Šaudo šlako srovėmis į priešo įtvirtinimus jas išlydydamas ir uždegdamas degias medžiagas.
+unit.wraith.description = Greitas, smok ir bėk vienetas. Taikosi į energijos generatorius.
+unit.ghoul.description = Sunkusis bombonešis. Pereina per priešo struktūras taikydamasis į kritinę infrastruktūrą.
+unit.revenant.description = Sunkus, skraidantis raketų masyvas.
+block.message.description = Laiko žinutę. Naudojama komunikacijai tarp sąjungininkų.
+block.graphite-press.description = Sukompresuoja anglies gabalus į grynas grafito plokštes.
+block.multi-press.description = Patobulinta grafito preso versija. Pasitelkia vandenį ir energiją greitam ir efektyviam anglies apdirbimui.
+block.silicon-smelter.description = Redukuoja smėlį su gryna anglimi. Gamina silicį.
+block.kiln.description = Sulydo smėlį ir stiklą į junginį žinomą kaip meta stiklas. Veikimui reikalinga nedaug energijos.
+block.plastanium-compressor.description = Gamina plastaniumą iš naftos ir titano.
+block.phase-weaver.description = Susintetina fazinį audinį iš radioaktyvaus torio ir smėlio. Veikimui reikalingas didžiulis kiekis energijos.
+block.alloy-smelter.description = Sumaišo titana, šviną, silicį ir vari į viršįtampį lydinį.
+block.cryofluidmixer.description = Maišo vandenį ir smulkias titano dulkes į krio skystį. Būtinas torio reaktoriaus naudojimui.
+block.blast-mixer.description = Susmulkina ir sumaišo sporas su piratitu ir pagamina sprogųjį junginį.
+block.pyratite-mixer.description = Sumaišo anglį, šviną ir smėlį į itin degų piratitą.
+block.melter.description = Išlydo metalo laužą į šlaką tolesniam apdorojimui arba naudojimui wave bokštuose.
+block.separator.description = Išskirsto šlaką į mineralinius komponentus. Atiduoda atvėsintą rezultatą.
+block.spore-press.description = Veikiant aukštam slėgiui sukompresuojami sporų kokonai ir susintetinami į naftą.
+block.pulverizer.description = Susmulkina metalo laužą į smulkų smėlį.
+block.coal-centrifuge.description = Sukietina naftą į anglies gabalus.
+block.incinerator.description = Išgarina bet kokias medžiagas ar skysčius, kuriuos gauna.
+block.power-void.description = Sunaikina visą įeinančią energiją. Tik Sandbox režime.
+block.power-source.description = Išduoda neribotą kiekį energijos. Tik Sandbox režime.
+block.item-source.description = Išduoda neribotą kiekį medžiagų. Tik Sandbox režime.
+block.item-void.description = Sunaikina visas įeinančias medžiagas. Tik Sandbox režime.
+block.liquid-source.description = Išduoda neribotą kiekį skysčių. Tik Sandbox režime.
+block.liquid-void.description = Sunaikina visus įeinančius skysčius. Tik Sandbox režime.
+block.copper-wall.description = Pigus gynybinis blokas.\nNaudingas ginant branduolį ir bokštus pirmose bangose.
+block.copper-wall-large.description = Pigus gynybinis blokas.\nNaudingas ginant branduolį ir bokštus pirmose bangose.\nUžima kelias vietas.
+block.titanium-wall.description = Vidutinio stiprumo gynybinis blokas.\nUžtikrina vidutinę apsaugą nuo priešų.
+block.titanium-wall-large.description = Vidutinio stiprumo gynybinis blokas.\nUžtikrina vidutinę apsaugą nuo priešų.\nUžima kelias vietas.
+block.plastanium-wall.description = Specialus sienų tipas, kuris sugeria elektrines arkas ir blokuoja automatius energijos mazgų prisijungimus.
+block.plastanium-wall-large.description = Specialus sienų tipas, kuris sugeria elektrines arkas ir blokuoja automatius energijos mazgų prisijungimus.\nUžima kelias vietas..
+block.thorium-wall.description = Stiprus gynybinis blokas.\Gera apsauga nuo priešų.
+block.thorium-wall-large.description = Stiprus gynybinis blokas.\nGera apsauga nuo priešų.\nUžima kelias vietas.
+block.phase-wall.description = Siena padengta specialiu faziniu pagrindu sukurtu junginiu. Atmuša daugumą šovinių.
+block.phase-wall-large.description = Siena padengta specialiu faziniu pagrindu sukurtu junginiu. Atmuša daugumą šovinių.\nUžima kelias vietas.
+block.surge-wall.description = Ypač patvarus gynybinis blokas.\nKaupia krūvį kontakto metu su šoviniu atsitiktinai jį išleisdamas.
+block.surge-wall-large.description = Ypač patvarus gynybinis blokas.\nKaupia krūvį kontakto metu su šoviniu atsitiktinai jį išleisdamas.\nUžima kelias vietas.
+block.door.description = Mažos durys. Gali būti atidarytos ir uždarytos paspaudus.
+block.door-large.description = Didelės durys. Gali būti atidarytos ir uždarytos paspaudus.\nUžima kelias vietas.
+block.mender.description = Periodiškai taiso blokus pasiekiamame plote. Palaiko gynybines konstrukcijas pataisytas tarp bangu.\nPapildomai naudoja silicį atstumo ir efektyvumo padidinimui.
+block.mend-projector.description = Patobulinta taisytojo versija. Periodiškai taiso blokus pasiekiamame plote.\nPapildomai naudoja fazinę tekstilę atstumo ir efektyvumo padidinimui.
+block.overdrive-projector.description = Paspartina aplinkinius pastatus.\nPapildomai naudoja fazinę tekstilę atstumo ir efektyvumo padidinimui.
+block.force-projector.description = Sukuria šešiakampį jėgos lauką aplink save apsaugodamas aplinkinius pastatus nuo žalos.\nPerkaista, jei atlaiko daug žalos. Papildomai naudoja aušinimo skystį, kad neperkaistų. Fazinė tekstilė gali būti naudojama jėgos lauko dydžiui padidinti.
+block.shock-mine.description = Sužaloja priešus užlipančius ant minos. Beveik nematoma priešų.
+block.conveyor.description = Paprasčiausias daiktų gabenimo blokas. Gabena daiktus į priekį ir automatiškai juos įdeda į blokus. Pasukamas.
+block.titanium-conveyor.description = Pažangus daiktų gabenimo blokas. Gabena daiktus greičiau negu paprastas konvejeris.
+block.junction.description = Veikia kaip tiltas dvejoms besikertančioms konvejerio juostoms. Naudingas situacijose, kai du kovejeriai neša skirtingas medžiagas į skirtingas vietas.
+block.bridge-conveyor.description = Pažangus daiktų gabenimo blokas. Leidžia daiktų gabenimą per tris blokus, nesvarbu kas yra tuose trejuose yra.
+block.phase-conveyor.description = Pažangus daiktų gabenimo blokas. Naudoja energiją daiktų teleportacijai į prijungtą fazinį kovejerį per kelis blokus.
+block.sorter.description = Rūšiuoja daiktus. Jei daiktas atitinka pasirinkimą, jam leidžiama keliauti pirmyn. Priešingai, daiktas siunčiamas į kairę ir dešinę.
+block.inverted-sorter.description = Apdoroja daiktus kaip paprastas rūšiuotuvas, tačiau pasirinktas daiktas siunčiamas į kairę arba dešinę, o kita į priekį.
+block.router.description = Priima daiktus, tada paskirsto daiktus į tris kryptis lygiomis dalimis. Naudingas paskirstant medžiagas iš vieno šaltinio į daugiau jungčių.\n\n[scarlet]Niekada nenaudokite prie pat gamyklos, nes iš gamyklos išeinantis produktas gali užstrigti maršrutizatoriuje.[]
+block.distributor.description = Pažangesnis maršrutizatorius. Paskirsto daiktus į septynias kryptis lygiomis dalimis.
+block.overflow-gate.description = Išveda medžiagas į kairę ir dešinę, jei priekis yra užblokuotas.
+block.underflow-gate.description = Veikia priešingai nei perpildymo užtvara. Išveda medžiagas į priekį, jei kairė ir dešinė yra užblokuota.
+block.mass-driver.description = Tobuliausias daiktų gabenimo blokas. Surenka daiktus ir šauna juos į kitą elektromagnetinę katapultą didelias atstumais. Veikimui reikalauja energijos.
+block.mechanical-pump.description = pigi pompa su lėta išeiga, bet nenaudoja energijos.
+block.rotary-pump.description = Pažangesnė pompa. Pumpuoja daugiau skysčių, bet reikalauja energijos.
+block.thermal-pump.description = Tobuliausia pompa.
+block.conduit.description = Paprastas vandens gabenimo blokas. Gabena skysčius į priekį. Naudojamas kartu su siurbliais ir kitais vamzdžiais.
+block.pulse-conduit.description = Pažangus vandens gabenimo blokas. Gabena skysčius greičiau ir talpina daugiau skysčių negu standartinis vamzdis.
+block.plated-conduit.description = Gabena skysčius tokiuo pačiu greičiu kaip pulsinis vamzdis, tačiau turi daugiau šarvų. Nepriima skysčių iš šonų, išskyrus kitus vamzdžius.\nMažiau nutekina skysčių.
+block.liquid-router.description = Priima skysčius iš vienos krypties ir paskirsto juos į tris skirtingas kryptis vienodai. Gali laikyti tam tikrą kiekį skysčių. Naudingas paskirstant sksyčius iš vieno šaltinio į daugiau jungčių.
+block.liquid-tank.description = Laiko didelį kiekį skysčių. Naudokite kūriant buferius situacijose su nepastoviu skysčių suvartojimu arba kaip apsaugą aušinant svarbius blokus.
+block.liquid-junction.description = Veikia kaip tiltas dvejiems besikertantiems vamzdžiams. Naudingas situacijose, kai du skirtingi vamzdžiai neša skirtingus skysčius į skirtingas vietas.
+block.bridge-conduit.description = Pažangus skysčių gabenimo blokas. Leidžia skysčių gabenimą per tris blokus, nesvarbu kas yra tuose trejuose yra.
+block.phase-conduit.description = Pažangus skysčių gabenimo blokas. Naudoja energiją skysčių teleportacijai į prijungtą fazinį vamzdį per kelis blokus.
+block.power-node.description = Perneša energiją į prijungtus mazgus. Mazgas gaus energiją iš gretimų blokų ir teiks gretimiems blokas.
+block.power-node-large.description = Pažangus energijos mazgas su didesnius atstumu.
+block.surge-tower.description = Ypač didelį atstumą turintis energijos mazgas su mažiau galimų jungčių.
+block.diode.description = Baterijos energija gali eiti per šį bloką tik viena kryptimi, tačiau tik kai kita pusė turi mažiau sukauptos energijos.
+block.battery.description = Laiko enegiją kaip buferis, kai reikalinga papildoma energija. Atiduoda energiją kai yra energijos deficitas.
+block.battery-large.description = Laiko daugiau energijos negu paprasta baterija.
+block.combustion-generator.description = Gamina energiją degindamas degias medžiagas kaip anglis.
+block.thermal-generator.description = Gamina energiją, kai pastatytas karštose vietose.
+block.turbine-generator.description = Pažangesnis vidaus degimo generatorius. Efektyvesnis, bet papildomai reikalauja vandens sukurti garams.
+block.differential-generator.description = Gamina didelį kiekį energijos. Pasitelkia temperatūrų skirtumą tarp krio skysčio ir degančio piratito.
+block.rtg-generator.description = Paprastas, patikimas generatorius. Naudoja yrančių junginių karštį energijos gamybai.
+block.solar-panel.description = Suteikia mažą kiekį energijos iš saulės.
+block.solar-panel-large.description = Žymiai efektyvesnė paprastos saulės baterijos versija.
+block.thorium-reactor.description = Gamina didelius kiekius energijos iš torio. Reikalingas pastovus aušinimas. Gali įvykti didelis sprogimas, jei nebus pakankamai aušinama. Energijos išeiga priklauso nuo pilnumo, bazinis energijos kiekis yra generuojamas, kai reaktoriaus torio talpa yra pilna.
+block.impact-reactor.description = Pažangus generatorius, galintis sukurti milžinišką kiekį energijos esant maksimaliam efektyvumui. Reikalinga energija paleidimui.
+block.mechanical-drill.description = Pigus grąžtas. When placed on appropriate tiles, outputs items at a slow pace indefinitely. Only capable of mining basic resources.
+block.pneumatic-drill.description = Pagerintas grąžtas, galintis kasti titaną. Kasa greičiau negu mechaninis grąžtas.
+block.laser-drill.description = Dėl lazerio technologijų leidžia kasti medžiagas greičiau, bet reikalauja energijos. Pajėgus kasti torį.
+block.blast-drill.description = Tobuliausias Grąžtas. Reikalauja didelio kiekio energijos.
+block.water-extractor.description = Išgauna vandenį. Naudojamas kur nėra paviršinio vandens.
+block.cultivator.description = Atmosferoje išaugina mažus sporų kiekius į industrijai paruoštus sporų kokonus.
+block.oil-extractor.description = Naudoja didelį kiekį energijos, smėlio ir vandens naftos gamybai.
+block.core-shard.description = Pirma branduolio kapsulės iteracija. Kai sunaikintas, prarandami visi kontaktai su zona. Neleiskite tam nutikti.
+block.core-foundation.description = Antra branduolio kapsulės iteracija. Geriau šarvuota. Laiko daugiau resursų.
+block.core-nucleus.description = Trečia ir paskutinė branduolio kapsulės iteracija. Itin gerai apsaugota. Laiko didelius kiekius resursų.
+block.vault.description = Laiko didelį kiekį skirtingų rūšių medžiagų. Gali būti naudojamas iškroviklis daiktų paėmimui iš seifo.
+block.container.description = Laiko nedidelį kiekį skirtingų rūšių medžiagų. Gali būti naudojamas iškroviklis daiktų paėmimui iš talpyklos.
+block.unloader.description = Paima resursus iš gretimų ne gabenimui skirtų pastatų. Paimamos medžiagos rūšis gali būti pakeista paspaudus ant iškroviklio.
+block.launch-pad.description = Paleidžia daiktų paketus be branduolio paleidimo.
+block.launch-pad-large.description = Patobulinta paleidimo aikštelės versija. Laiko daugiau resursų. Gali būti paleidžiama dažniau.
+block.duo.description = Mažas ir pigus bokštas. Naudingas prieš antžeminius vienetus.
+block.scatter.description = Pagrindinis bokštas skirtas kovai su oro pajėgomis. Šaudo švino arba metalo laužo gabalais į priešus.
+block.scorch.description = Degina visus netoliese esančius priešus. Itin efektyvus artimame nuotolyje.
+block.hail.description = Mažas, didelio atstumo artilerijos bokštas.
+block.wave.description = Vidutinio didžio bokštas. Šaudo skysčio srautus į priešus. Automatiškai užgesina ugnį, jei naudojmas vanduo.
+block.lancer.description = Vidutinio didžio lazerinis bokštas skirtas kovai su antžeminėmis pajėgomis. Užsikrauna ir šaudo galingus energijos spindulius.
+block.arc.description = Mažas artimojo nuotolio elektros bokštas. Šaudo elektrines arkas į priešus.
+block.swarmer.description = Vidutinio didžio raketsvaidis. Puola, tiek žemę, tiek orą. Šaudo taikinius sekančias raketas.
+block.salvo.description = Didelis, pažangesnė Duo bokšto versija. Šaudo šovinių salvas į priešus.
+block.fuse.description = Didelis, artimojo nuotolio energijos bokštas. Šaudo tris prasiskverbiančius spindulius.
+block.ripple.description = Itin galingas artilerijos bokštas. Dideliais atstumais šaudo būrius artilerijos šovinius į priešus.
+block.cyclone.description = Didelis bokštas puolantis, tiek žemę, tiek orą. Šaudo sprogstančius šovinius į priešus.
+block.spectre.description = Milžiniškas dvivamzdis bokštas. Šaudo didelius, kiaurai per šarvus einančius šovinius į taikinius esančius ant žemės ir ore.
+block.meltdown.description = Milžiniška lazerinė patranka. Užsikrauna ir šaudo lazerinius spindulius į aplinkinius priešus. Veikimui reikalingas aušinimo skystis.
+block.command-center.description = Išduoda judėjimo komandas sąjungininkų vienetams visame žemėlapyje.\nPriverčia vienetus susitelkti, pulti priešų branduolį ir pasitraukti iki branduolio/vientų gamyklos. Kai nėra priešų branduolio, vienetai būna sargyboje, kai nustatyas puolimas.
+block.draug-factory.description = Gamina kasimo dronus.
+block.spirit-factory.description = Gamina pastatus taisančius dronus.
+block.phantom-factory.description = Gamina pažengusius statybų donus
+block.wraith-factory.description = Gamina greitus, smok-ir-bėk vienetus.
+block.ghoul-factory.description = Gamina sunkiuosius bombonešius.
+block.revenant-factory.description = Gamina sunkiuosius vienetus su raketomis.
+block.dagger-factory.description = Gamina paprastus antžeminius vienetus.
+block.crawler-factory.description = Gamian greitus spietinius susisprogdinančius vienetus.
+block.titan-factory.description = Gamina pažangesnius antžeminius vienetus.
+block.fortress-factory.description = Gamina antžeminius sunkiosios artilerijos vienetus.
+block.repair-point.description = Pastoviai gydo artimiausius netoliese esančius vienetus.
+block.dart-mech-pad.description = Leidžia transformaciją į paprastą puolimo robotą.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.delta-mech-pad.description = Leidžia transformaciją į lengvai šarvuotą smok-ir-bėk robota.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.tau-mech-pad.description = PLeidžia transformaciją į pažangų taisymo robotą.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.omega-mech-pad.description = Leidžia transformaciją į sunkiai šarvuotą raketinį robotą.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.javelin-ship-pad.description = Leidžia transformaciją į greitą, lengvai šarvuotą interceptor'ių.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.trident-ship-pad.description = Leidžia transformaciją į sunkųjį palaikymo bombonešį.\nPanaudokite paspaudę stovėdami ant šio pastato.
+block.glaive-ship-pad.description = Leidžia transformaciją į didelį, gerai šarvuotą ginkluotą erdvėlaivį.\nPanaudokite paspaudę stovėdami ant šio pastato.
diff --git a/core/assets/bundles/bundle_nl.properties b/core/assets/bundles/bundle_nl.properties
index 8a45402b26..0009606ecc 100644
--- a/core/assets/bundles/bundle_nl.properties
+++ b/core/assets/bundles/bundle_nl.properties
@@ -6,7 +6,7 @@ link.discord.description = De officiële Mindustry discord chatroom
link.reddit.description = De Mindustry subreddit
link.github.description = Game broncode
link.changelog.description = Lijst van updates
-link.dev-builds.description = Onstabiele ontwikkeling builds
+link.dev-builds.description = Onstabiele versies
link.trello.description = Officiële trello-bord voor geplande functies
link.itch.io.description = itch.io pagina met pc-downloads
link.google-play.description = Google Play store vermelding
@@ -22,7 +22,7 @@ highscore = [accent]Nieuw topscore!
copied = Gekopieerd.
load.sound = Geluid
-load.map = Mappen
+load.map = Kaarten
load.image = Afbeeldingen
load.content = inhoud
load.system = Systeem
@@ -30,27 +30,27 @@ load.mod = Mods
load.scripts = Scripts
be.update = Er is een nieuwe Bleeding Edge versie beschikbaar:
-be.update.confirm = Download het en herstart?
+be.update.confirm = Download en herstart?
be.updating = Updaten...
be.ignore = Negeer
be.noupdates = Geen updates gevonden.
be.check = Check voor updates
-schematic = Blauwdruk
-schematic.add = Bewaar blauwdruk...
-schematics = Blauwdrukken
-schematic.replace = Er bestaat al een blauwdruk met die naam. Overschrijven?
-schematic.import = Importeer blauwdruk...
+schematic = Ontwerp
+schematic.add = Bewaar ontwerp...
+schematics = Ontwerpen
+schematic.replace = Er bestaat al een ontwerp met die naam. Overschrijven?
+schematic.import = Importeer ontwerp...
schematic.exportfile = Exporteer bestand
schematic.importfile = Importeer bestand
-schematic.browseworkshop = Blader Werkplaats
+schematic.browseworkshop = Blader werkplaats
schematic.copy = Kopiëren naar Klembord
schematic.copy.import = Importeren van Klembord
schematic.shareworkshop = Delen op de Werkplaats
-schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Spiegel blauwdruk
-schematic.saved = Blauwdruk bewaard.
-schematic.delete.confirm = Deze blauwdruk zal in een zwart gat verdwijnen.
-schematic.rename = Hernoem blauwdruk
+schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Spiegel ontwerp
+schematic.saved = Ontwerp bewaard.
+schematic.delete.confirm = Dit ontwerp zal in een zwart gat verdwijnen.
+schematic.rename = Hernoem ontwerp
schematic.info = {0}x{1}, {2} blokken
stat.wave = Waves Verslagen:[accent] {0}
@@ -62,7 +62,7 @@ stat.delivered = Middelen Gelanceerd:
stat.rank = Eindrang: [accent]{0}
launcheditems = [accent]Gelanceerde items
-launchinfo = [unlaunched][[LANCEER] je core om de in blauw gekleurde items te verkrijgen.
+launchinfo = [unlaunched][[LANCEER] je core om de in blauw gekleurde items te krijgen.
map.delete = Weet je zeker dat je de map wilt verwijderen? "[accent]{0}[]"?
level.highscore = Topscore: [accent]{0}
level.select = Selecteer Level
@@ -83,10 +83,10 @@ close = Aflsuiten
website = Website
quit = Stoppen
save.quit = Bewaar & Stop
-maps = Mappen
-maps.browse = Blader mappen
+maps = Kaarten
+maps.browse = Blader door kaarten
continue = Ga door
-maps.none = [LIGHT_GRAY]Geen map gevonden!
+maps.none = [LIGHT_GRAY]Geen Kaart gevonden!
invalid = Ongeldig
pickcolor = Kies kleur
preparingconfig = Configuratie voorbereiden
@@ -146,8 +146,8 @@ server.kicked.serverClose = Server afgesloten...
server.kicked.vote = Je bent ge vote-kicked. Tot ziens.
server.kicked.clientOutdated = Verouderde versie! Update jouw spel!
server.kicked.serverOutdated = Verouderde server! Vraag de host om te upgraden!
-server.kicked.banned = Je bent verbannen van deze server.
-server.kicked.typeMismatch = Deze server is niet compitabel met jouw bouwtype.
+server.kicked.banned = Je bent gedegradeerd van deze server.
+server.kicked.typeMismatch = Deze server is niet compatibel met jouw bouwtype.
server.kicked.playerLimit = Deze server is vol. Wacht voor een vrije plek.
server.kicked.recentKick = Je bent reeds verwijderd.\nWacht voordat je opnieuw verbindt.
server.kicked.nameInUse = Er is al iemand met die naam\nop deze server.
@@ -157,7 +157,7 @@ server.kicked.customClient = Deze server ondersteunt geen aangepaste spellen . D
server.kicked.gameover = Spel afgelopen
server.kicked.serverRestarting = De server is aan het herstarten.
server.versions = Jouw versie:[accent] {0}[]\nServer versie:[accent] {1}[]
-host.info = De [accent]host[] knop hosts `een server op port [scarlet]6567[]. \nIedereen op hetzelfde [LIGHT_GRAY]wifi or locaal netwerk[] zou jouw server in hun serverlijst moeten zien.\n\nAls je wilt dan vrienden vanaf overal kunnen meedoen via IP, [accent]port forwarding[] is nodig.\n\n[LIGHT_GRAY]Note: IAls iemand moeilijkheden heeft met het meedoen aan jouw spel, kijk of je Mindustry in je firewall instellingen toegang hebt gegeven to jouw locaal netwerk.
+host.info = De [accent]host[] knop hosts `een server op port [scarlet]6567[]. \nIedereen op hetzelfde [LIGHT_GRAY]wifi or locaal netwerk[] zou jouw server in hun serverlijst moeten zien.\n\nAls je wilt dan vrienden vanaf overal kunnen meedoen via IP, [accent]port forwarding[] is nodig.\n\n[LIGHT_GRAY]Note: IAls iemand moeilijkheden heeft met het meedoen aan jouw spel, kijk of je Mindustry in je firewall instellingen toegang hebt gegeven tot jouw locaal netwerk.
join.info = Hier kan je een [accent]server IP[] invoeren om te verbinden, of om[accent]locale netwerken[] te vinden.\nBeide LAN en WAN multiplayer is ondersteund.\n\n[LIGHT_GRAY]Note: Er is geen automatische globale serverlijst; Als je met iemands IP wil verbinden, Zou je moeten vragen om hun IP.
hostserver = Host Game
invitefriends = Nodig vrienden uit
@@ -178,11 +178,11 @@ trace.mobile = Mobiel apparaat: [accent]{0}
trace.modclient = Unofficieël: [accent]{0}
invalidid = Ongeldige speler ID! Raporteer deze bug.
server.bans = Bans
-server.bans.none = Geen verbannen spelers gevonden!
+server.bans.none = Geen gedegradeerde spelers gevonden!
server.admins = Admins
server.admins.none = Geen admins gevonden!
server.add = Voeg server to
-server.delete = Weet je zeker dat je deze server wilt deleten?
+server.delete = Weet je zeker dat je deze server wilt weggooien?
server.edit = Bewerk server
server.outdated = [crimson]Server draait op een oudere versie![]
server.outdated.client = [crimson]Server draait en nieuwere versie![]
@@ -232,7 +232,7 @@ empty =
on = Aan
off = Uit
save.autosave = Autosave: {0}
-save.map = Map: {0}
+save.map = Kaart: {0}
save.wave = Ronde {0}
save.mode = Spelmodus: {0}
save.date = Laatst bewaard: {0}
@@ -247,17 +247,17 @@ open = Open
customize = Aanpassen
cancel = Annuleer
openlink = Open Link
-copylink = Customize Link
+copylink = Kopieer Link
back = Terug
data.export = Exporteer Data
data.import = Importeer Data
data.exported = Data Geëxporteerd.
data.invalid = Dit is geen geldige game data.
-data.import.confirm = Importeren van data verwijderd[scarlet] alle[] huidige data.\n[accent]Dit kan niet ongedaan worden gemaakt![]\n\nWanneer de data is geimport herstart deze game automatisch.
+data.import.confirm = Importeren van data verwijderd[scarlet] alle[] huidige data.\n[accent]Dit kan niet ongedaan worden gemaakt![]\n\nWanneer de data is geimport herstart de game automatisch.
classic.export = Exporteer klassieke data
-classic.export.text = [accent]Mindustry[] Heeft een grote update gehad.\nKlassieke (v3.5 build 40) saves en/of mappen zijn gedetecteerd. Wil je deze exporteren naar de thuismap van je telefoon om te gebruiken in de klassieke Mindustry app?
+classic.export.text = [accent]Mindustry[] Heeft een grote update gehad.\nKlassieke (v3.5 build 40) saves en/of mappen zijn gedetecteerd. Wil je deze exporteren naar de thuismap van je telefoon om ze te gebruiken in de klassieke Mindustry app?
quit.confirm = Weet je zeker dat je wilt stoppen?
-quit.confirm.tutorial = Weet je zeker dat je weet wat je doet?\nJe kan de tutorial opnieuw beginnen via[accent] Instellingen->Game->Herneem Tutorial.[]
+quit.confirm.tutorial = Weet je zeker dat je weet wat je doet?\nJe kan de tutorial opnieuw beginnen via[accent] Instellingen->Game->Herstart Tutorial.[]
loading = [accent]Laden...
reloading = [accent]Mods herladen...
saving = [accent]Opslaan...
@@ -275,14 +275,14 @@ wave.enemy = [LIGHT_GRAY]{0} Vijand resterend
loadimage = Laad afbeelding
saveimage = Bewaar afbeelding
unknown = Onbekend
-custom = Op maat
+custom = Aangepast
builtin = Ingebouwd
map.delete.confirm = Weet je zeker dat je deze map wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt!
map.random = [accent]Willekeurige map
map.nospawn = Deze map heeft geen cores voor de spelers om in te spawnen! Voeg een[ROYAL] blauwe[] core toe aan de map via de editor.
map.nospawn.pvp = Deze map heeft geen cores voor je vijanden om in te spawnen! Voeg een[SCARLET] rode[] core to aan de map via de editor.
map.nospawn.attack = Deze map bevat geen vijandige cores om aan te vallen! Voeg een[SCARLET] rode[] core toe aan de map via de editor.
-map.invalid = Error tijdens laden van map: Ongeldig map bestand.
+map.invalid = Fout tijdens laden van map: Ongeldig map bestand.
workshop.update = Bijwerken
workshop.error = Fout bij laden workshop info: {0}
map.publish.confirm = Weet je zeker dat je deze map wilt publiceren?\n\n[lightgray]Zorg ervoor dat je de EULA van de workshop leest, anders zal je map niet zichtbaar zijn!
@@ -292,7 +292,7 @@ changelog = Update logboek (optioneel):
eula = Steam EULA
missing = Dit object is verwijderd of verplaatst.\n[lightgray]De workshop vermelding is nu niet meer gelinkt.
publishing = [accent]Publiceren...
-publish.confirm = Weet je zeker dat je dit wilt publiceren?\n\n[lightgray]Zorg ervoor dat je de EULA van de workshopt leest, anders zal je map niet zichtbaar zijn!
+publish.confirm = Weet je zeker dat je dit wilt publiceren?\n\n[lightgray]Zorg ervoor dat je de EULA van de workshop leest, anders zal je map niet zichtbaar zijn!
publish.error = Fout met het publiceren: {0}
steam.error = Fout met het opstarten van steam diensten.\nError: {0}
@@ -300,16 +300,16 @@ editor.brush = Kwast
editor.openin = Bewerk in editor
editor.oregen = Ertsgeneratie
editor.oregen.info = Ertsgeneratie:
-editor.mapinfo = Map Informatie
+editor.mapinfo = Kaart Informatie
editor.author = Auteur:
editor.description = Beschrijving:
-editor.nodescription = De map moet een beschrijving van minimaal 4 tekens hebben voordat je deze kan publiceren.
+editor.nodescription = De kaart moet een beschrijving van minimaal 4 tekens hebben voordat je deze kan publiceren.
editor.waves = Rondes:
-editor.rules = Regens:
+editor.rules = Regels:
editor.generation = Generatie:
editor.ingame = Bewerk In-Game
editor.publish.workshop = Publiceer in Werkplaats
-editor.newmap = Nieuwe Map
+editor.newmap = Nieuwe Kaart
workshop = Werkplaats
waves.title = Rondes
waves.remove = Verwijder
@@ -335,48 +335,48 @@ editor.removeunit = Verwijder Unit
editor.teams = Teams
editor.errorload = Fout bij laden van bestand:\n[accent]{0}
editor.errorsave = Fout van bewaren van bestand:\n[accent]{0}
-editor.errorimage = Dat is een afbeelding, geen map. Laat de extenties met rust.\n\nAls je een oude map wilt importeren gebruik je de knop die hiervoor bedoeld is in de editor.
-editor.errorlegacy = Deze map is te oud, bestandsformaat word niet meer ondersteund.
-editor.errornot = Dat is geen map bestand.
-editor.errorheader = Dit map bestand is niet geldig of foutief.
-editor.errorname = Map heeft geen naam.
+editor.errorimage = Dat is een afbeelding, geen kaart. Laat de extenties met rust.\n\nAls je een oude kaart wilt importeren gebruik je de knop die hiervoor bedoeld is in de editor.
+editor.errorlegacy = Deze kaart is te oud, bestandsformaat word niet meer ondersteund.
+editor.errornot = Dat is geen kaart bestand.
+editor.errorheader = Dit map bestand is niet geldig of heeft en fout.
+editor.errorname = Kaart heeft geen naam.
editor.update = Bijwerken
editor.randomize = Willekeurig
editor.apply = Gebruiken
editor.generate = Genereer
editor.resize = Verander formaat
-editor.loadmap = Laad Map
-editor.savemap = Bewaar Map
+editor.loadmap = Laad Kaart
+editor.savemap = Bewaar Kaart
editor.saved = Bewaard!
-editor.save.noname = je map heeft geen naam! Stel er een in via de map instellingen.
-editor.save.overwrite = De naam van deze map is al in gebruik door een van het spel zelf, kies een andere.
-editor.import.exists = [scarlet]Importeren mislukt:[] een ingebouwde map met de naam '{0}' bestaat al!
+editor.save.noname = je kaart heeft geen naam! Stel er een in via de kaart instellingen.
+editor.save.overwrite = De naam van deze kaart is al in gebruik door een van het spel zelf, kies een andere.
+editor.import.exists = [scarlet]Importeren mislukt:[] een ingebouwde kaart met de naam '{0}' bestaat al!
editor.import = Importeer...
-editor.importmap = Importeer Map
-editor.importmap.description = Importeer een al bestande map
+editor.importmap = Importeer kaart
+editor.importmap.description = Importeer een al bestande kaart
editor.importfile = Importeer Bestand
-editor.importfile.description = Importer een extern map bestand
+editor.importfile.description = Importer een extern kaart bestand
editor.importimage = Importeer Klassieke Afbeelding
-editor.importimage.description = Importeer een oude afbeelding map
+editor.importimage.description = Importeer een oude afbeelding
editor.export = Exporteer...
editor.exportfile = Exporteer Bestand
-editor.exportfile.description = Exporteer een map bestand
+editor.exportfile.description = Exporteer een kaart bestand
editor.exportimage = Exporteer Thumbnail
-editor.exportimage.description = Exporteer map thumbnail
+editor.exportimage.description = Exporteer kaart thumbnail
editor.loadimage = Importeer Terein
editor.saveimage = Exporteer Terein
editor.unsaved = [scarlet]Je hebt onopgeslagen wijzigingen![]\nWeet je zeker dat je eruit wilt?
-editor.resizemap = Verander Map Formaat
-editor.mapname = Map Naam:
-editor.overwrite = [accent]Waarschuwing!\nDit overschrijft een bestaande map.
-editor.overwrite.confirm = [scarlet]Waarschuwing![] Een map met deze naam bestaat al. Weet je zeker dat je deze wilt overschrijven?
-editor.exists = Een map met deze naam bestaat al.
-editor.selectmap = Selecteer een map om te laden:
+editor.resizemap = Verander kaart Formaat
+editor.mapname = Kaart Naam:
+editor.overwrite = [accent]Waarschuwing!\nDit overschrijft een bestaande kaart.
+editor.overwrite.confirm = [scarlet]Waarschuwing![] Een kaart met deze naam bestaat al. Weet je zeker dat je deze wilt overschrijven?
+editor.exists = Een kaart met deze naam bestaat al.
+editor.selectmap = Selecteer een kaart om te laden:
toolmode.replace = Vervang
toolmode.replace.description = Werkt enkel op vaste blokken.
toolmode.replaceall = Vervang alles
-toolmode.replaceall.description = Vervangt alle blokken in de map.
+toolmode.replaceall.description = Vervangt alle blokken in de kaart.
toolmode.orthogonal = Orthogonaal
toolmode.orthogonal.description = Teken enkel orthogonale lijnen.
toolmode.square = Vierkant
@@ -432,12 +432,12 @@ ping = Ping: {0}ms
language.restart = Herstart het spel om de gewijzigde taal te laden.
settings = Instellingen
tutorial = Tutorial
-tutorial.retake = Herneem Tutorial
+tutorial.retake = Herstart Tutorial
editor = Editor
-mapeditor = Map Editor
+mapeditor = Kaart Editor
abandon = Verlaat
-abandon.text = Je verliest deze map met alles erop en eraan aan de vijand.
+abandon.text = Je verliest deze kaart met alles erop en eraan aan de vijand.
locked = Op slot
complete = [LIGHT_GRAY]Voltooid:
requirement.wave = Berijk ronde {0} in {1}
@@ -473,7 +473,7 @@ error.invalidaddress = Ongeldig adres.
error.timedout = Verbindingspoging duurde te lang!\nDubbelcheck dat je host is geportforward, en dat je het ip wel goed hebt ingetikt!
error.mismatch = Pakket fout:\nmogelijk is er een versie verschil tussen jou en de server.\nZorg ervoor dat beiden op de meest recente versie van Mindustry zitten!
error.alreadyconnected = Al verbonden.
-error.mapnotfound = Map bestand niet gevonden!
+error.mapnotfound = Kaart bestand niet gevonden!
error.io = Netwerk I/O fout.
error.any = Onbekende netwerk fout.
error.bloom = Bloom aanzetten mislukt.\nJe apparaat ondersteunt het waarschijnlijk niet.
@@ -494,16 +494,16 @@ zone.crags.name = Crags
zone.fungalPass.name = Schimmelpad
zone.groundZero.description = De optimale plek om weer tot kracht te komen. Weinig gevaar. Weinig grondstoffen.\nDelf zoveel mogelijk lood en koper als je kan.\nVertrek.
-zone.frozenForest.description = Ook hier, dicht bij de bergen, hebben de schimmels zich verspreid. De koude tempratuur houd ze niet voor eeuwig tegen.\n\nBegin de industriële revolutie. Bouw fossiele generators. Leer hoe te repareren.
+zone.frozenForest.description = Ook hier, dicht bij de bergen, hebben de schimmels zich verspreid. De koude tempratuur houdt ze niet voor eeuwig tegen.\n\nBegin de industriële revolutie. Bouw fossiele generatoren. Leer hoe te repareren.
zone.desertWastes.description = Deze woestijn is groot, onvoorspelbaar, en vol met oude technologie.\nSteenkool is hier te vinden. Verbrand het om stroom op te wekken, of verwerk het tot grafiet.\n\n[lightgray]Of het hier veilig is is een tweede.
zone.saltFlats.description = Aan de randen van de woestijn liggen de zoutvlaktes. Weinig grondstoffen zijn hier te vinden.\n\nDe vijand heeft hier rantsoenen opgeslagen. Vernietig hun core. Laat niks staan.
zone.craters.description = Water heeft zich hier opgehoopt, herrinering aan de vroegere oorlog. Herover dit gebied. Delf zand. Maak glas. Pomp water in je wapens en boren om ze te koelen.
zone.ruinousShores.description = Voorbij de ruines is de kust. Lang geleden werd de kust hier verdedigd maar er is weinig van terug te vinden. Enkel de meest simpele verdedigingswerken staan nog overeind, \nGa door met uitbereiden, herontdek de verloren techniek.
zone.stainedMountains.description = Verder vanaf de kust liggen de bergen, nog niet aangetast door de schimmels.\nDelf de grote hoeveelheiden titanium titanium in het gebied en leer het te gebruiken.\n\nDe vijand is krachtig hier. Geef ze geen tijd om je te overrompelen.
zone.overgrowth.description = Dit gebied is overgroeid, dichter bij de bron van de schimmels.\nDe vijand heeft hier een uitkijkpost. Bouw dolk units. Vernietig de vijand. Herneem wat ooit verloren was.
-zone.tarFields.description = De randen van een olieveld, tussen de bergen en de woestijn. Een van de weinige plekken met bruikbare olie.\nOndanks dat het verboden is, zijn er wel krachtige vijanden in de buurt. Onderschat ze niet.\n\n[lightgray]Onderzoek wat je verder allemaal met olie kan doen.
-zone.desolateRift.description = Een supergevaarlijk gebied. Veel grondstoffen, maar weinig ruimte. Grote kans op verwoesting. Lanceer zo snel mogelijk. Word niet overmoedig door de lange tijd tussen de rondes.
-zone.nuclearComplex.description = Een voormalige installatie voor de productie en verwerking van thorium ligt er nu verlaten bij.\n[lightgray]Onderzoek thorium en de vele toepassingen ervoor.\n\nDe vijand is hier aanwezig in grote getalen, constant waakzaam voor aanvallers.
+zone.tarFields.description = De randen van een olieveld, tussen de bergen en de woestijn. Een van de weinige plekken met bruikbare olie.\nOndanks dat het verlaten is, zijn er wel krachtige vijanden in de buurt. Onderschat ze niet.\n\n[lightgray]Onderzoek wat je verder allemaal met olie kan doen.
+zone.desolateRift.description = Een zeer gevaarlijk gebied. Veel grondstoffen, maar weinig ruimte. Grote kans op verwoesting. Lanceer zo snel mogelijk. Word niet overmoedig door de lange tijd tussen de rondes.
+zone.nuclearComplex.description = Een voormalige installatie voor de productie en verwerking van thorium ligt er nu verlaten bij.\n[lightgray]Onderzoek thorium en de vele toepassingen ervan.\n\nDe vijand is hier aanwezig in grote getalen, constant waakzaam voor aanvallers.
zone.fungalPass.description = Een transitiegebied tussen de hogergelegen bergen en de lagergelegen, beschimmelde gebieden. Een kleine verkenningsbasis is hier gepositioneerd.\nVernietig het.\nGebruik Dolk en Kruiper units. Maak de twee cores onbruikbaar.
zone.impact0078.description =
zone.crags.description =
@@ -519,15 +519,15 @@ settings.sound = Geluid
settings.graphics = Grafisch
settings.cleardata = Wis Game Data...
settings.clear.confirm = Weet je zeker dat je deze data wilt verwijderen?\nDit is niet terug te draaien!
-settings.clearall.confirm = [scarlet]WAARSCHUWING![]\nDit verwijderd alle darta, inclusief saves, mappen, technologie en bedienings-instellingen.\nAls je op doorgaat wist het spel al je data en stopt ie automatisch.
+settings.clearall.confirm = [scarlet]WAARSCHUWING![]\nDit verwijderd alle data, inclusief saves, kaarten, technologie en bedienings-instellingen.\nAls je op doorgaat wist het spel al je data en stopt automatisch.
paused = [accent]< Gepauzeerd >
clear = Wis
banned = [scarlet]Verbannen
yes = Ja
no = Nee
info.title = Informatie
-error.title = [crimson]Een fout heeft zich voorgedaan
-error.crashtitle = Een fout heeft zich voorgedaan
+error.title = [crimson]Een fout is opgetreden
+error.crashtitle = Een fout is opgetreden
blocks.input = Input
blocks.output = Output
blocks.booster = Booster
@@ -537,7 +537,7 @@ blocks.powershot = Stroom/Schot
blocks.damage = Schade
blocks.targetsair = Luchtdoelwitten
blocks.targetsground = Gronddoelwitten
-blocks.itemsmoved = Beweegsnelheid
+blocks.itemsmoved = Beweegingssnelheid
blocks.launchtime = Tijd tussen lanceringen
blocks.shootrange = Bereik
blocks.size = Formaat
@@ -643,7 +643,7 @@ setting.screenshake.name = Schuddend Scherm
setting.effects.name = Toon Effecten
setting.destroyedblocks.name = Toon Vernietigde Blokken
setting.conveyorpathfinding.name = Lopendeband Plaats Hulp
-setting.coreselect.name = Sta cores toe in blauwdrukken
+setting.coreselect.name = Sta cores toe in ontwerpen
setting.sensitivity.name = Gevoeligheid Controller
setting.saveinterval.name = Autosave Interval
setting.seconds = {0} Seconden
@@ -671,7 +671,7 @@ setting.playerchat.name = Toon chat
public.confirm = Wil je je game publiek maken?\n[accent]Iedereen kan dan je games joinen.\n[lightgray]Dit kan je later veranderen in Instellingen->Spel->Publieke Server Zichtbaarheid.
public.beta = Onthoud dat beta versies van het spel niet publiek kunnen lobbyen.
uiscale.reset = UI formaat is geweizigd.\nKlik op "OK" om het te bevestigen.\n[scarlet]Anders word het in[accent] {0}[] ongedaan gemaakt...
-uiscale.cancel = Anuleer & Exit
+uiscale.cancel = Anuleer & Sluit
setting.bloom.name = Bloom
keybind.title = Verander Keys
keybinds.mobile = [scarlet]De meeste keybinds werken niet voor mobiel. Enkel standaard bewegingen zijn gesupport.
@@ -685,16 +685,16 @@ placement.blockselectkeys = \n[lightgray]Toets: [{0},
keybind.clear_building.name = Stop met bouwen
keybind.press = Druk op een toets...
keybind.press.axis = Druk of swipe een toets...
-keybind.screenshot.name = Map Schermfbeelding
+keybind.screenshot.name = Map Schermafbeelding
keybind.toggle_power_lines.name = Wel/Geen Stroom Draden
keybind.move_x.name = Beweeg x
keybind.move_y.name = Beweeg y
keybind.mouse_move.name = Volg Muis
keybind.dash.name = Vlieg
keybind.schematic_select.name = Selecteer gebied
-keybind.schematic_menu.name = Blauwdruk Menu
-keybind.schematic_flip_x.name = Spiegel Blauwdruk X
-keybind.schematic_flip_y.name = Spiegel Blauwdruk Y
+keybind.schematic_menu.name = Ontwerp Menu
+keybind.schematic_flip_x.name = Spiegel ontwerp X
+keybind.schematic_flip_y.name = Spiegel ontwerp Y
keybind.category_prev.name = Vorige Categorie
keybind.category_next.name = Volgende Categorie
keybind.block_select_left.name = Selecteer Blok Links
@@ -717,7 +717,7 @@ keybind.diagonal_placement.name = Plaats Diagonaal
keybind.pick.name = Kies Blok
keybind.break_block.name = Breek Blok
keybind.deselect.name = Deselecteer
-keybind.shoot.name = Shiet
+keybind.shoot.name = Schiet
keybind.zoom.name = Zoom
keybind.menu.name = Menu
keybind.pause.name = Pauze
@@ -780,7 +780,7 @@ rules.ambientlight = Mist
content.item.name = Items
content.liquid.name = Vloeisof
-content.unit.name = Units
+content.unit.name = Eenheiden
content.block.name = Blokken
content.mech.name = Behuizing
item.copper.name = Coper
@@ -797,33 +797,33 @@ item.spore-pod.name = Spore Pod
item.sand.name = Zand
item.blast-compound.name = Blast Compound
item.pyratite.name = Pyratite
-item.metaglass.name = Glas
+item.metaglass.name = Metaglas
item.scrap.name = Scrap
liquid.water.name = Water
liquid.slag.name = Slag
liquid.oil.name = Olie
liquid.cryofluid.name = Koelvloeistof
-mech.alpha-mech.name = Alpha
-mech.alpha-mech.weapon = Heavy Repeater
+mech.alpha-mech.name = Alfa
+mech.alpha-mech.weapon = Zwaar Machinegeweer
mech.alpha-mech.ability = Drone Swarm
mech.delta-mech.name = Delta
mech.delta-mech.weapon = Arc Generator
-mech.delta-mech.ability = Discharge
+mech.delta-mech.ability = Ontlading
mech.tau-mech.name = Tau
mech.tau-mech.weapon = Restruct Laser
mech.tau-mech.ability = Repair Burst
mech.omega-mech.name = Omega
mech.omega-mech.weapon = Swarm Missiles
-mech.omega-mech.ability = Armored Configuration
+mech.omega-mech.ability = Bepantserde Configuratie
mech.dart-ship.name = Dart
-mech.dart-ship.weapon = Repeater
-mech.javelin-ship.name = Javelin
+mech.dart-ship.weapon = Machinegeweer
+mech.javelin-ship.name = Speer
mech.javelin-ship.weapon = Burst Missiles
mech.javelin-ship.ability = Discharge Booster
-mech.trident-ship.name = Trident
-mech.trident-ship.weapon = Bomb Bay
+mech.trident-ship.name = Drietand
+mech.trident-ship.weapon = Bommenruim
mech.glaive-ship.name = Glaive
-mech.glaive-ship.weapon = Flame Repeater
+mech.glaive-ship.weapon = Vlammend Machinegeweer
item.corestorable = [lightgray]Kan in de Core: {0}
item.explosiveness = [LIGHT_GRAY]Explosivieit: {0}%
item.flammability = [LIGHT_GRAY]Vlambaarheid: {0}%
@@ -849,17 +849,17 @@ block.pebbles.name = Steentjes
block.tendrils.name = Tendrils
block.sandrocks.name = Zandsteen
block.spore-pine.name = Sporenden
-block.sporerocks.name = Spore Steens
+block.sporerocks.name = Schimmelsteen
block.rock.name = Steen
block.snowrock.name = Sneeuwsteen
block.snow-pine.name = Sneeuwden
-block.shale.name = Shale
-block.shale-boulder.name = Shale Boulder
+block.shale.name = Schalie
+block.shale-boulder.name = Schalie Kei
block.moss.name = Mos
-block.shrubs.name = Plantje
+block.shrubs.name = Bosje
block.spore-moss.name = Spore Moss
block.shalerocks.name = Shale Steens
-block.scrap-wall.name = Scrap Muur
+block.scrap-wall.name = Oud ijzeren m
block.scrap-wall-large.name = Large Scrap Muur
block.scrap-wall-huge.name = Huge Scrap Muur
block.scrap-wall-gigantic.name = Gigantic Scrap Muur
@@ -911,7 +911,7 @@ block.dark-metal.name = Donker Metaal
block.ignarock.name = Igna Steen
block.hotrock.name = Lava Steen
block.magmarock.name = Magma Steen
-block.cliffs.name = Cliffs
+block.cliffs.name = Rotswand
block.copper-wall.name = Koperen Muur
block.copper-wall-large.name = Grote Koperen Muur
block.titanium-wall.name = Titanium Muur
@@ -925,10 +925,10 @@ block.thorium-wall-large.name = Grote Thorium Muur
block.door.name = Deur
block.door-large.name = Grote Deur
block.duo.name = Duo
-block.scorch.name = Scorch
-block.scatter.name = Scatter
-block.hail.name = Hail
-block.lancer.name = Lancer
+block.scorch.name = Vlammenwerper
+block.scatter.name = Strooier
+block.hail.name = Hagel
+block.lancer.name = Lansier
block.conveyor.name = Lopende Band
block.titanium-conveyor.name = Titanium Lopende Band
block.armored-conveyor.name = Gepantserde Lopende Band
@@ -942,15 +942,15 @@ block.message.name = Bericht
block.illuminator.name = Lamp
block.illuminator.description = Een kleine aanpasbare lamp, heef stroom nodig.
block.overflow-gate.name = Overflow Gate
-block.silicon-smelter.name = Silicon Smelter
+block.silicon-smelter.name = Siliciumsmelter
block.phase-weaver.name = Phase Weaver
-block.pulverizer.name = Pulverizer
+block.pulverizer.name = Vermorzelaar
block.cryofluidmixer.name = Cryofluid Mixer
-block.melter.name = Melter
-block.incinerator.name = Verbrander
-block.spore-press.name = Spore Press
-block.separator.name = Separator
-block.coal-centrifuge.name = Coal Centrifuge
+block.melter.name = Smelter
+block.incinerator.name = Verbrandingsoven
+block.spore-press.name = Schimmelpers
+block.separator.name = Afscheider
+block.coal-centrifuge.name = Koolcentrifuge
block.power-node.name = Stroompaal
block.power-node-large.name = Grote Stroompaal
block.surge-tower.name = Hoogspanningsmast
@@ -959,12 +959,12 @@ block.battery.name = Batterij
block.battery-large.name = Grote Batterij
block.combustion-generator.name = Fossiele Generator
block.turbine-generator.name = Turbine Generator
-block.differential-generator.name = Differential Generator
+block.differential-generator.name = Verschiltemperatuurgenerator
block.impact-reactor.name = Impact Reactor
-block.mechanical-drill.name = Mechanische Drill
-block.pneumatic-drill.name = Pneumatische Drill
-block.laser-drill.name = Laser Drill
-block.water-extractor.name = Water Put
+block.mechanical-drill.name = Mechanische Boor
+block.pneumatic-drill.name = Pneumatische Boor
+block.laser-drill.name = Lazerboor
+block.water-extractor.name = Waterput
block.cultivator.name = Cultivator
block.dart-mech-pad.name = Dart Mech Pad
block.delta-mech-pad.name = Delta Mech Pad
@@ -983,7 +983,7 @@ block.power-void.name = Power Void
block.power-source.name = Power Infinite
block.unloader.name = Unloader
block.vault.name = Kluis
-block.wave.name = Wave
+block.wave.name = Golf
block.swarmer.name = Swarmer
block.salvo.name = Salvo
block.ripple.name = Ripple
@@ -992,10 +992,10 @@ block.bridge-conveyor.name = Bridge Conveyor
block.plastanium-compressor.name = Plastanium Compressor
block.pyratite-mixer.name = Pyratite Mixer
block.blast-mixer.name = Blast Mixer
-block.solar-panel.name = Zonnepaneeltje
-block.solar-panel-large.name = Zonnepaneel
-block.oil-extractor.name = Olie put
-block.command-center.name = Command Center
+block.solar-panel.name = Zonnepaneel
+block.solar-panel-large.name = Groot zonnepaneel
+block.oil-extractor.name = Olieput
+block.command-center.name = Commando centrum
block.draug-factory.name = Draug Miner Drone Factory
block.spirit-factory.name = Spirit Drone Factory
block.phantom-factory.name = Phantom Drone Factory
@@ -1011,23 +1011,23 @@ block.pulse-conduit.name = Pulse Conduit
block.plated-conduit.name = Gepantserde Pijp
block.phase-conduit.name = Phase Conduit
block.liquid-router.name = Liquid Router
-block.liquid-tank.name = Vloeistof Tank
-block.liquid-junction.name = Vloeistof Kruising
+block.liquid-tank.name = Vloeistoftank
+block.liquid-junction.name = Vloeistofkruising
block.bridge-conduit.name = Bridge Conduit
block.rotary-pump.name = Rotary Pump
-block.thorium-reactor.name = Thorium Reactor
+block.thorium-reactor.name = Thoriumreactor
block.mass-driver.name = Mass Driver
block.blast-drill.name = Airblast Drill
-block.thermal-pump.name = Thermal Pump
-block.thermal-generator.name = Thermal Generator
-block.alloy-smelter.name = Alloy Smelter
+block.thermal-pump.name = Thermische Pomp
+block.thermal-generator.name = Thermische Generator
+block.alloy-smelter.name = Legering Smelterij
block.mender.name = Mender
block.mend-projector.name = Mend Projector
block.surge-wall.name = Surge Muur
block.surge-wall-large.name = Grote Surge Muur
-block.cyclone.name = Cyclone
-block.fuse.name = Fuse
-block.shock-mine.name = Electrische Landmijn
+block.cyclone.name = Cycloon
+block.fuse.name = Zekering
+block.shock-mine.name = Elektrische Landmijn
block.overdrive-projector.name = Overdrive Projector
block.force-projector.name = Krachtveld
block.arc.name = Arc
@@ -1035,8 +1035,8 @@ block.rtg-generator.name = RTG Generator
block.spectre.name = Spectre
block.meltdown.name = Meltdown
block.container.name = Doos
-block.launch-pad.name = Launch Pad
-block.launch-pad-large.name = Large Launch Pad
+block.launch-pad.name = Lanceerplatform
+block.launch-pad-large.name = Groot Lanceerplatform
team.blue.name = blauw
team.crux.name = rood
team.sharded.name = oranje
diff --git a/core/assets/bundles/bundle_pl.properties b/core/assets/bundles/bundle_pl.properties
index 6d9f3d3dba..abc53366ff 100644
--- a/core/assets/bundles/bundle_pl.properties
+++ b/core/assets/bundles/bundle_pl.properties
@@ -59,6 +59,7 @@ stat.built = Budynki zbudowane:[accent] {0}
stat.destroyed = Budynki zniszczone:[accent] {0}
stat.deconstructed = Budynki zrekonstruowane:[accent] {0}
stat.delivered = Surowce wystrzelone:
+stat.playtime = Czas Gry:[accent] {0}
stat.rank = Ocena: [accent]{0}
launcheditems = [accent]Wystrzelone przedmioty
@@ -388,7 +389,7 @@ toolmode.fillteams.description = Wypełniaj drużyny zamiast bloków.
toolmode.drawteams = Rysuj Drużyny
toolmode.drawteams.description = Rysuj drużyny zamiast bloków.
-filters.empty = [lightgray]Brak filtrów! Dodaj jeden za pomocą przycisku poniżej.
+filters.empty = [lightgray]Brak filtrów! Dodaj jeden za pomocą przycisku poniżej.
filter.distort = Zniekształcanie
filter.noise = Szum
filter.median = Mediana
@@ -531,6 +532,8 @@ error.crashtitle = Wystąpił błąd
blocks.input = Wejście
blocks.output = Wyjście
blocks.booster = Wzmacniacz
+blocks.tiles = Wymagane Pola
+blocks.affinities = Uwydajnienie
block.unknown = [lightgray]???
blocks.powercapacity = Pojemność mocy
blocks.powershot = moc/strzał
@@ -928,7 +931,7 @@ block.duo.name = Podwójne Działko
block.scorch.name = Płomień
block.scatter.name = Flak
block.hail.name = Grad
-block.lancer.name = Lansjer
+block.lancer.name = Lancer
block.conveyor.name = Przenośnik
block.titanium-conveyor.name = Przenośnik Tytanowy
block.armored-conveyor.name = Przenośnik Opancerzony
@@ -942,6 +945,7 @@ block.message.name = Wiadomość
block.illuminator.name = Illuminator
block.illuminator.description = Małe, kompaktowe i konfigurowane źródło światła. Wymaga energii do funkcjonowania.
block.overflow-gate.name = Brama Przepełnieniowa
+block.underflow-gate.name = Brama Niedomiaru
block.silicon-smelter.name = Huta Krzemu
block.phase-weaver.name = Fazowa Fabryka
block.pulverizer.name = Rozkruszacz
@@ -1006,7 +1010,7 @@ block.crawler-factory.name = Fabryka Mechów Pełzacz
block.titan-factory.name = Fabryka Mechów Tytan
block.fortress-factory.name = Fabryka Mechów Forteca
block.revenant-factory.name = Fabryka Krążowników Zjawa
-block.repair-point.name = Punkt Napraw
+block.repair-point.name = Punkt Naprawy
block.pulse-conduit.name = Rura Pulsacyjna
block.plated-conduit.name = Opancerzona rura
block.phase-conduit.name = Rura Fazowa
@@ -1085,7 +1089,7 @@ item.copper.description = Przydatny materiał budowlany. Szeroko używany w praw
item.lead.description = Podstawowy materiał. Używany w przesyle przemiotów i płynów. Nie jest on przypadkiem szkodliwy?
item.metaglass.description = Wyjątkowo wytrzymały stop szkła. Szeroko używany w transporcie i przechowywaniu płynów.
item.graphite.description = Zmineralizowany węgiel, wykorzystywany do amunicji i izolacji elektrycznej.
-item.sand.description = Zwykły materiał używany pospolicie w przepalaniu, stopach i jako topnik. Dostanie piaskiem po oczach nie jest przyjemne.
+item.sand.description = Zwykły materiał używany pospolicie w przepalaniu, stopach i jako topnik. Dostanie piaskiem po oczach nie jest przyjemne.
item.coal.description = Zwykły i łatwo dostępny materiał energetyczny. Używany powszechnie jako paliwo oraz w produkcji surowców.
item.titanium.description = Rzadki i bardzo lekki materiał. Używany w bardzo zaawansowanym przewodnictwie, wiertłach i samolotach. Poczuj się jak Tytan!
item.thorium.description = Zwarty i radioaktywny materiał używany w strukturach i paliwie nuklearnym. Nie trzymaj go w rękach!
@@ -1103,7 +1107,7 @@ liquid.oil.description = Używany w do produkcji złożonych materiałów. Może
liquid.cryofluid.description = Obojętna, niekorozyjna ciecz utworzona z wody i tytanu
mech.alpha-mech.description = Standardowy mech. Bazuje na jednostce Nóż, z ulepszonym pancerzem i zdolnością budowania. Zadaje więcej obrażeń niż Strzałka.
mech.delta-mech.description = Szybki, lekko opancerzony mech stworzony do ataków typu uderz i uciekaj. Zadaje niewielkie obrażenia strukturom, lecz może bardzo szybko niszczyć spore grupy jednostek wroga przy pomocy jego działek tesli.
-mech.tau-mech.description = Mech wsparcia. Naprawia budynki drużyny, strzelając w nie. Potrafi wygasić niedalekie pożary i uleczyć bliskich przyjaciół.
+mech.tau-mech.description = Mech wsparcia. Naprawia budynki drużyny, strzelając w nie. Potrafi uleczyć bliskich sojuszników.
mech.omega-mech.description = Duży i silny mech, zaprojektowany na ataki. Jego pancerz pozwala mu na zablokowanie do 90% obrażeń.
mech.dart-ship.description = Standardowy statek. Lekki i szybki, ale posiada małe zdolności ofensywne i niską szybkość wydobywania surowców.
mech.javelin-ship.description = Statek do ataku i szybkiej ucieczki. Zaczyna powoli, ale przyspiesza do wielkiej prędkości. Przy tej prędkości, może przelecieć koło wrogiej bazy i atakować piorunami czy rakietami.
@@ -1169,13 +1173,14 @@ block.bridge-conveyor.description = Zaawansowany blok transportujący. Pozwala n
block.phase-conveyor.description = Zaawansowany blok transportowy dla przedmiotów. Używa energii do teleportacji przedmiotów do połączonego transportera fazowego na spore odległości.
block.sorter.description = Sortuje przedmioty. Jeśli przedmiot pasuje to przechodzi dalej, jeśli nie - to przechodzi na boki.
block.inverted-sorter.description = Sortuje przedmioty jak zwykły sortownik, ale odpowiednie surowce wyciągane są na boki.
-block.router.description = Akceptuje przedmioty z jednego miejsca i rozdziela je do trzech innych kierunków. Przydatne w rozdzielaniu materiałów z jednego źródła do wielu celów.
+block.router.description = Akceptuje przedmioty z jednego miejsca i rozdziela je do trzech innych kierunków. Przydatne w rozdzielaniu materiałów z jednego źródła do wielu celów.\n\n[scarlet]Nigdy nie używaj przy punkcje wejścia materiałów produkcyjnych, ponieważ zostaną one zatkane przez materiały wyjściowe.[]
block.distributor.description = Zaawansowany rozdzielacz, rozdzielający przedmioty do 7 innych kierunków.
-block.overflow-gate.description = Rozdzielacz, który przerzuca przedmioty, kiedy główna droga jest przepełniona
+block.overflow-gate.description = Rozdzielacz, który przerzuca przedmioty, kiedy główna droga jest przepełniona.
+block.underflow-gate.description = Odwrotność bramy przepełnieniowej, który przepuszcza przedmioty główną drogą, gdy boczne drogi są przepełnione.
block.mass-driver.description = Najlepszy blok do transportu przedmiotów. Zbiera wiele przedmiotów naraz a potem wystrzeliwuje je do kolejnej katapulty masy na bardzo duże odległości.
block.mechanical-pump.description = Tania pompa o niskiej wydajności. Nie wymaga prądu.
block.rotary-pump.description = Zaawansowana pompa. Pompuje więcej cieczy, ale wymaga zasilania.
-block.thermal-pump.description = Najlepsza pompa. Trzy razy szybsza od mechanicznej pompy i jedyna, która może wypompować lawę.
+block.thermal-pump.description = Najlepsza pompa.
block.conduit.description = Podstawowy blok do transportowania cieczy. Używany w połączeniu z pompami i innymi rurami.
block.pulse-conduit.description = Zaawansowany blok do transportowania cieczy. Transportuje je szybciej i magazynuje więcej niż standardowe rury.
block.plated-conduit.description = Przesyła ciecze z taką samą szybkością co rura tytanowa, ale jest bardziej odporna. Wejściami bocznymi mogą być tylko inne rury.\nWycieka z niej mniej cieczy.
@@ -1192,7 +1197,7 @@ block.battery.description = Przechowuje energię przy nadwyżce produkcji oraz d
block.battery-large.description = Przechowuje o wiele wiecej prądu niż standardowa bateria.
block.combustion-generator.description = Wytwarza energię poprzez spalanie łatwopalnych materiałów.
block.thermal-generator.description = Generuje prąd kiedy jest postawiony na źródłach ciepła.
-block.turbine-generator.description = Bardziej wydajny niż generator spalania, ale wymaga dodatkowej wody.
+block.turbine-generator.description = Zaawansowana wersja Generatora Spalinowego. Jest wydajniejszy niż Generator Spalinowy, ale wymaga wody aby wytworzyć pare.
block.differential-generator.description = Generuje duże ilości prądu. Wykorzystuje różnice temperatur pomiędzy Lodocieczą a spalanym Piratianem.
block.rtg-generator.description = Generator wykorzystujący ciepło powstałe z rozpadu izotopów promieniotwórczych. Nie wymaga chłodzenia, ale produkuje mniej energii od reaktora torowego.
block.solar-panel.description = Wytwarza małe ilości prądu wykorzystując energię słoneczną.
@@ -1223,7 +1228,7 @@ block.lancer.description = Średniej wielkości wieżyczka, która po naładowan
block.arc.description = Mała wieża bliskiego zasięgu. Wystrzeliwuje wiązki elektryczne w kierunku wroga.
block.swarmer.description = Średniej wielkości wieżyczka, która wystrzeliwuje rakiety samonaprowadzające.
block.salvo.description = Większa, bardziej zaawansowana wersja Podwójnego Działka, strzelająca szybkimi salwami.
-block.fuse.description = Duża wieża, która strzela potężnymi wiązkami krótkiego zasięgu.
+block.fuse.description = Duża wieża bliskiego zasięgu. Wystrzeliwuje trzy przeszywające wiązki w pobliskich wrogów.
block.ripple.description = Duża wieża artyleryjska, która strzela jednocześnie kilkoma strzałami.
block.cyclone.description = Duża szybkostrzelna wieża.
block.spectre.description = Duże działo dwulufowe, które strzela potężnymi pociskami przebijającymi pancerz w jednostki naziemne i powietrzne.
@@ -1239,7 +1244,7 @@ block.dagger-factory.description = Produkuje podstawowe jednostki lądowe.
block.crawler-factory.description = Produkuje szybkie jednostki lądowe typu "kamikaze".
block.titan-factory.description = Produkuje zaawansowane, opancerzone jednostki lądowe.
block.fortress-factory.description = Produkuje naziemne jednostki ciężkiej artylerii.
-block.repair-point.description = Bez przerw ulecza najbliższą zniszczoną jednostkę w jego zasięgu.
+block.repair-point.description = Bez przerw naprawia najbliższą uszkodzoną jednostkę w jego zasięgu.
block.dart-mech-pad.description = Umożliwia transformację w podstawowego mecha bojowego.\nUżyj klikając podczas stania na nim.
block.delta-mech-pad.description = Opuść swój obecny statek i zamień go na szybki, lekko opancerzony mech stworzony do ataków typu uderz-uciekaj.\nUżyj, klikając dwukrotnie podczas stania na lądowisku.
block.tau-mech-pad.description = Opuść swój obecny statek i zamień go na mech wsparcia który może leczyć sojusznicze struktury i jednostki.\nUżyj, klikając dwukrotnie podczas stania na lądowisku.
diff --git a/core/assets/bundles/bundle_pt_BR.properties b/core/assets/bundles/bundle_pt_BR.properties
index 38f865a38c..e1d1a5da56 100644
--- a/core/assets/bundles/bundle_pt_BR.properties
+++ b/core/assets/bundles/bundle_pt_BR.properties
@@ -941,7 +941,8 @@ block.inverted-sorter.name = Ordenador Invertido
block.message.name = Mensagem
block.illuminator.name = Iluminador
block.illuminator.description = Uma pequena, compacta e configurável fonte de luz. Precisa de energia para funcionar.
-block.overflow-gate.name = Portão Sobrecarregado
+block.overflow-gate.name = Portão sobrecarregado
+block.underflow-gate.name = Portão sobrecarregado invertido
block.silicon-smelter.name = Fundidora de silicio
block.phase-weaver.name = Palheta de fase
block.pulverizer.name = Pulverizador
@@ -978,7 +979,7 @@ block.mechanical-pump.name = Bomba Mecânica
block.item-source.name = Criador de itens
block.item-void.name = Destruidor de itens
block.liquid-source.name = Criador de líquidos
-block.liquid-void.name = Liquid Void
+block.liquid-void.name = Destruidor de líquidos
block.power-void.name = Anulador de energia
block.power-source.name = Criador de energia
block.unloader.name = Descarregador
@@ -1049,7 +1050,7 @@ unit.draug.name = Drone minerador Draug
unit.phantom.name = Drone Phantom
unit.dagger.name = Dagger
unit.crawler.name = Crawler
-unit.titan.name = Titan
+unit.titan.name = Titã
unit.ghoul.name = Bombardeiro Ghoul
unit.wraith.name = Lutador Wraith
unit.fortress.name = Fortaleza
@@ -1172,6 +1173,7 @@ block.inverted-sorter.description = Processes items like a standard sorter, but
block.router.description = Aceita itens de uma direção e os divide em 3 direções igualmente. Util para espalhar materiais da fonte para multiplos alvos.
block.distributor.description = Um roteador avancada que espalhas os itens em 7 outras direções igualmente.
block.overflow-gate.description = Uma combinação de roteador e divisor Que apenas manda para a esquerda e Direita se a frente estiver bloqueada.
+block.underflow-gate.description = O oposto de um portão de sobrecarga. Manda pra frente se a esquerda e a direita estiverem bloqueadas.
block.mass-driver.description = Bloco de transporte de itens supremo. Coleta itens severos e atira eles em outro mass driver de uma longa distancia.
block.mechanical-pump.description = Uma bomba barata com baixa saída de líquidos, mas sem consumo de energia.
block.rotary-pump.description = Uma bomba avançada. Bombeia mais líquido, mas requer energia.
@@ -1206,8 +1208,8 @@ block.blast-drill.description = A melhor mineradora. Requer muita energia.
block.water-extractor.description = Extrai água subterrânea. Usado em locais sem água superficial disponível.
block.cultivator.description = Cultiva pequenas concentrações de esporos na atmosfera em cápsulas prontas.
block.oil-extractor.description = Usa altas quantidades de energia para extrair petróleo da areia. Use quando não tiver fontes de petróleo por perto.
-block.core-shard.description = The first iteration of the core capsule. Once destroyed, all contact to the region is lost. Do not let this happen.
-block.core-foundation.description = The second version of the core. Better armored. Stores more resources.
+block.core-shard.description = A primeira iteração do núcleo. Uma vez destruído, todo o contato com a região é perdido. Não deixe isso acontecer.
+block.core-foundation.description = A segunda versão do núcleo. Mais bem armadurado. Armazena mais recursos.
block.core-nucleus.description = A terceira e ultima iteração do núcleo. Extremamente bem armadurada. Guarda quantidades massivas de recursos.
block.vault.description = Carrega uma alta quantidade de itens. Usado para criar fontes Quando não tem uma necessidade constante de materiais. Um[LIGHT_GRAY] Descarregador[] pode ser usado para recuperar esses itens do container.
block.container.description = Carrega uma baixa quantidade de itens. Usado para criar fontes Quando não tem uma necessidade constante de materiais. Um[LIGHT_GRAY] Descarregador[] pode ser usado para recuperar esses itens do container.
diff --git a/core/assets/bundles/bundle_pt_PT.properties b/core/assets/bundles/bundle_pt_PT.properties
index f845f98200..fa2a0fcfd3 100644
--- a/core/assets/bundles/bundle_pt_PT.properties
+++ b/core/assets/bundles/bundle_pt_PT.properties
@@ -59,6 +59,7 @@ stat.built = Construções construídas:[accent] {0}
stat.destroyed = Construções destruídas:[accent] {0}
stat.deconstructed = Construções desconstruídas:[accent] {0}
stat.delivered = Recursos lançados:
+stat.playtime = Tempo jogado:[accent] {0}
stat.rank = Rank Final: [accent]{0}
launcheditems = [accent]Itens lançados
@@ -103,7 +104,8 @@ mods = Mods
mods.none = [LIGHT_GRAY]Mods não encontrados!
mods.guide = Guia de mods
mods.report = Reportar Bug
-mods.openfolder = Open Mod Folder
+mods.openfolder = Abrir pasta de Mods
+mod.display = [gray]Mod:[orange] {0}
mod.enabled = [lightgray]Ativado
mod.disabled = [scarlet]Desativado
mod.disable = Desativar
@@ -167,9 +169,14 @@ hosting = [accent]Abrindo servidor...
hosts.refresh = Atualizar
hosts.discovering = Descobrindo jogos em lan
hosts.discovering.any = Descobrindo jogos
-server.refreshing = Atualizando servidor
+server.refreshing = A atualizar servidor
hosts.none = [lightgray]Nenhum jogo lan encontrado!
host.invalid = [scarlet]Não foi possivel Hospedar.
+
+servers.local = Servidores Locais
+servers.remote = Servidores Remotos
+servers.global = Servidores Globais
+
trace = Traçar jogador
trace.playername = Nome do jogador: [accent]{0}
trace.ip = IP: [accent]{0}
@@ -251,6 +258,7 @@ copylink = Copiar ligação
back = Voltar
data.export = Exportar dados
data.import = Importar dados
+data.openfolder = Abrir pasta de dados
data.exported = Dados exportados.
data.invalid = Estes dados de jogo não são válidos.
data.import.confirm = Importar dados externos irá deletar[scarlet] todos[] os seus dados atuais.\n[accent]Isso não pode ser desfeito![]\n\nQuando sua data é importada, seu jogo ira sair imediatamente.
@@ -530,6 +538,8 @@ error.title = [crimson]Ocorreu um Erro.
error.crashtitle = Ocorreu um Erro
blocks.input = Entrada
blocks.output = Saida
+blocks.tiles = Telhas Requeridas
+blocks.affinities = Afinidades
blocks.booster = Booster
block.unknown = [LIGHT_GRAY]???
blocks.powercapacity = Capacidade de Energia
@@ -641,14 +651,14 @@ setting.difficulty.insane = Insano
setting.difficulty.name = Dificuldade
setting.screenshake.name = Balanço do Ecrã
setting.effects.name = Efeitos
-setting.destroyedblocks.name = Display Destroyed Blocks
-setting.conveyorpathfinding.name = Conveyor Placement Pathfinding
-setting.coreselect.name = Allow Schematic Cores
+setting.destroyedblocks.name = Mostrar Blocos Destruidos
+setting.conveyorpathfinding.name = Localização do caminho do transportador
+setting.coreselect.name = Permitir cores esquemáticas
setting.sensitivity.name = Sensibilidade do Controle
setting.saveinterval.name = Intervalo de autogravamento
setting.seconds = {0} Segundos
-setting.blockselecttimeout.name = Block Select Timeout
-setting.milliseconds = {0} milliseconds
+setting.blockselecttimeout.name = Tempo limite de seleção do bloco
+setting.milliseconds = {0} milissegundos
setting.fullscreen.name = Ecrã inteiro
setting.borderlesswindow.name = Janela sem borda[LIGHT_GRAY] (Pode precisar reiniciar)
setting.fps.name = Mostrar FPS
@@ -665,8 +675,10 @@ setting.mutesound.name = Desligar Som
setting.crashreport.name = Enviar denuncias de crash anonimas
setting.savecreate.name = Criar gravamentos automaticamente
setting.publichost.name = Visibilidade do jogo público
+setting.playerlimit.name = Limite de Jogadores
setting.chatopacity.name = Opacidade do chat
setting.lasersopacity.name = Opacidade do Power Laser
+setting.bridgeopacity.name = Opacidade da Ponte
setting.playerchat.name = Mostrar chat em jogo
public.confirm = Queres que o teu jogo fique publico?\n[accent]Qualquer jogador vai conseguir juntar-se ao teu jogo.\n[lightgray]Isto pode ser alterado mais tarde in Settings->Game->Public Game Visibility.
public.beta = Observe que as versões beta do jogo não podem criar lobbies públicos.
@@ -942,6 +954,7 @@ block.message.name = Mensagem
block.illuminator.name = Illuminator
block.illuminator.description = A small, compact, configurable light source. Requires power to function.
block.overflow-gate.name = Portão Sobrecarregado
+block.underflow-gate.name = Portão Desobrecarregado
block.silicon-smelter.name = Fundidora de silicio
block.phase-weaver.name = Palheta de fase
block.pulverizer.name = Pulverizador
@@ -1130,7 +1143,7 @@ block.phase-weaver.description = Produz tecido de fase usando tório radioativo
block.alloy-smelter.description = Combina titânio, chumbo, silicio e cobre para produzir liga de surto.
block.cryofluidmixer.description = Mistura água e pó fino de titânio para produzir criofluido. Essencial para o uso do reator a tório.
block.blast-mixer.description = Quebra e mistura aglomerados de esporos com piratita para produzir composto de explosão.
-block.pyratite-mixer.description = Mistura carvão, cobre e areia em piratita altamente inflamável
+block.pyratite-mixer.description = Mistura carvão, chumbo e areia em piratita altamente inflamável
block.melter.description = Derrete sucata em escória para processamento posterior ou uso em torretas.
block.separator.description = Separa escória em seus minerais componentes, oferece o resultado refriado.
block.spore-press.description = Comprime cápsulas de esporos em petróleo.
@@ -1172,6 +1185,7 @@ block.inverted-sorter.description = Processes items like a standard sorter, but
block.router.description = Aceita itens de uma direção e os divide em 3 direções igualmente. Util para espalhar materiais da fonte para multiplos alvos.
block.distributor.description = Um roteador avancada que espalhas os itens em 7 outras direções igualmente.
block.overflow-gate.description = Uma combinação de roteador e divisor Que apenas manda para a esquerda e Direita se a frente estiver bloqueada.
+block.underflow-gate.description = O oposto de um portão de transbordamento. Saídas para a frente se os caminhos esquerdo e direito estiverem bloqueados.
block.mass-driver.description = Bloco de transporte de itens supremo. Coleta itens severos e atira eles em outro mass driver de uma longa distancia.
block.mechanical-pump.description = Uma bomba barata com baixa saída de líquidos, mas sem consumo de energia.
block.rotary-pump.description = Uma bomba avançada. Bombeia mais líquido, mas requer energia.
@@ -1246,4 +1260,4 @@ block.tau-mech-pad.description = Deixe sua atual embarcação e mude para o meca
block.omega-mech-pad.description = Deixe sua atual embarcação e mude para o volumoso e bem armadurado meca feito para ataques da primeira linha.\nUse o pad clicando duas vezes em cima enquando fica em cima dele.
block.javelin-ship-pad.description = Deixe sua atual embarcação e mude para um interceptador forte e rapido com armas de raio.\nUse o pad clicando duas vezes em cima enquando fica em cima dele.
block.trident-ship-pad.description = Deixe sua atual embarcação e mude para um bombardeiro resionavelmente bem armadurado.\nUse o pad clicando duas vezes em cima enquando fica em cima dele.
-block.glaive-ship-pad.description = Deixe sua atual embarcação e mude para grande, bem armadurada nave de combate.\nUse o pad clicando duas vezes em cima enquando fica em cima dele.
+block.glaive-ship-pad.description = Deixe sua atual embarcação e mude para grande, bem armadurada nave de combate.\nUse o pad clicando duas vezes em cima enquando fica em cima dele.
\ No newline at end of file
diff --git a/core/assets/bundles/bundle_ru.properties b/core/assets/bundles/bundle_ru.properties
index 1e7f44254e..f53866c2e7 100644
--- a/core/assets/bundles/bundle_ru.properties
+++ b/core/assets/bundles/bundle_ru.properties
@@ -39,7 +39,6 @@ be.check = Проверить обновления
schematic = Схема
schematic.add = Сохранить схему...
schematics = Схемы
-schematic.replace = Схема с таким именем уже существует. Заменить её?
schematic.import = Импортировать схему...
schematic.exportfile = Экспортировать файл
schematic.importfile = Импортировать файл
@@ -59,6 +58,7 @@ stat.built = Строений построено:[accent] {0}
stat.destroyed = Строений уничтожено:[accent] {0}
stat.deconstructed = Строений деконструировано:[accent] {0}
stat.delivered = Ресурсов запущено:
+stat.playtime = Время игры:[accent] {0}
stat.rank = Финальный ранг: [accent]{0}
launcheditems = [accent]Запущенные предметы
@@ -104,6 +104,7 @@ mods.none = [LIGHT_GRAY]Модификации не найдены!
mods.guide = Руководство по модам
mods.report = Доложить об ошибке
mods.openfolder = Открыть папку с модификациями
+mod.display = [gray]Модификация:[orange] {0}
mod.enabled = [lightgray]Включён
mod.disabled = [scarlet]Выключен
mod.disable = Выкл.
@@ -133,7 +134,7 @@ noname = Для начала, придумайте[accent] себе имя[].
filename = Имя файла:
unlocked = Новый контент разблокирован!
completed = [accent]Завершено
-techtree = Дерево технологий
+techtree = Дерево\n технологий
research.list = [lightgray]Исследуйте:
research = Исследовать
researched = [lightgray]{0} исследовано.
@@ -170,6 +171,11 @@ hosts.discovering.any = Поиск игр
server.refreshing = Обновление сервера
hosts.none = [lightgray]Локальных игр не обнаружено!
host.invalid = [scarlet]Не удаётся подключиться к хосту.
+
+servers.local = Локальные серверы
+servers.remote = Удалённые серверы
+servers.global = Глобальные серверы
+
trace = Отслеживать игрока
trace.playername = Имя игрока: [accent]{0}
trace.ip = IP: [accent]{0}
@@ -344,7 +350,7 @@ editor.errorname = Карта не имеет имени. Может быть,
editor.update = Обновить
editor.randomize = Случайно
editor.apply = Применить
-editor.generate = Сгенерировать
+editor.generate = Сгенери-\nровать
editor.resize = Изменить\nразмер
editor.loadmap = Загрузить\nкарту
editor.savemap = Сохранить\nкарту
@@ -609,8 +615,8 @@ unit.persecond = /сек
unit.timesspeed = x скорость
unit.percent = %
unit.items = предметов
-unit.thousands = тыс
-unit.millions = млн
+unit.thousands = к
+unit.millions = М
category.general = Основные
category.power = Энергия
category.liquids = Жидкости
@@ -657,7 +663,7 @@ setting.borderlesswindow.name = Безрамочное окно[lightgray] (мо
setting.fps.name = Показывать FPS и пинг
setting.blockselectkeys.name = Показать клавиши выбора блока
setting.vsync.name = Вертикальная синхронизация
-setting.pixelate.name = Пикселизация[lightgray] (отключает анимации)
+setting.pixelate.name = Пикселизация
setting.minimap.name = Отображать мини-карту
setting.position.name = Отображать координаты игрока
setting.musicvol.name = Громкость музыки
@@ -669,7 +675,7 @@ setting.crashreport.name = Отправлять анонимные отчёты
setting.savecreate.name = Автоматическое создание сохранений
setting.publichost.name = Общедоступность игры
setting.chatopacity.name = Непрозрачность чата
-setting.playerlimit.name = Лимит игроков
+setting.playerlimit.name = Ограничение игроков
setting.lasersopacity.name = Непрозрачность лазеров энергоснабжения
setting.bridgeopacity.name = Непрозрачность мостов
setting.playerchat.name = Отображать облака чата над игроками
@@ -782,6 +788,7 @@ rules.title.unit = Боев. ед.
rules.title.experimental = Эксперементально
rules.lighting = Освещение
rules.ambientlight = Окружающий свет
+rules.solarpowermultiplier = Множитель солнечной энергии
content.item.name = Предметы
content.liquid.name = Жидкости
diff --git a/core/assets/bundles/bundle_tr.properties b/core/assets/bundles/bundle_tr.properties
index f388a78ece..ecc89ae388 100644
--- a/core/assets/bundles/bundle_tr.properties
+++ b/core/assets/bundles/bundle_tr.properties
@@ -29,17 +29,17 @@ load.system = Sistem
load.mod = Modlar
load.scripts = Scripts
-be.update = A new Bleeding Edge build is available:
-be.update.confirm = Download it and restart now?
-be.updating = Updating...
-be.ignore = Ignore
-be.noupdates = No updates found.
-be.check = Check for updates
+be.update = Yeni bir erken erişim sürümü var:
+be.update.confirm = Yüklenip yeniden başlatılsın mı?
+be.updating = Yeni sürüm yükleniyor...
+be.ignore = Hayır
+be.noupdates = Yeni güncelleme bulunamadı.
+be.check = Güncellemeleri kontrol et
schematic = Şema
schematic.add = Şemayı Kaydet...
schematics = Şemalar
-schematic.replace = A schematic by that name already exists. Replace it?
+schematic.replace = Aynı isimde bir şema zaten var. Üzerine yazılsın mı?
schematic.import = Şema İçeri Aktar...
schematic.exportfile = Dışa Aktar
schematic.importfile = İçe Aktar
@@ -49,8 +49,8 @@ schematic.copy.import = Panodan İçeri Aktar
schematic.shareworkshop = Workshop'ta Kaydet
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Şemayı döndür
schematic.saved = Şema Kaydedildi.
-schematic.delete.confirm = Bu şema tamamen yokedilecek.
-schematic.rename = Şemayı yeniden Adlandır
+schematic.delete.confirm = Bu şema tamamen yok edilecek.
+schematic.rename = Şemayı yeniden adlandır
schematic.info = {0}x{1}, {2} blok
stat.wave = Yenilen Dalgalar:[accent] {0}
@@ -70,7 +70,7 @@ level.mode = Oyun Modu:
showagain = Bir daha gösterme
coreattack = < Merkez saldırı altında! >
nearpoint = [[ [scarlet]İNİŞ PİSTİNDEN AYRIL[] ]\nimha tehlikesi
-database = Ana Veritabanı
+database = Çekirdek Veritabanı
savegame = Oyunu Kaydet
loadgame = Oyunu Yükle
joingame = Oyuna Katıl
@@ -95,7 +95,7 @@ uploadingcontent = İçerik Yükleniyor
uploadingpreviewfile = Önizleme Dosyası Yükleniyor
committingchanges = Değişiklikler Uygulanıyor
done = Bitti
-feature.unsupported = Your device does not support this feature.
+feature.unsupported = Cihazınızda bu özellik desteklenmemektedir.
mods.alphainfo = Modların alfa aşamasında olduğunu ve [scarlet]oldukça hatalı olabileceklerini[] unutmayın.\nBulduğunuz sorunları Mindustry GitHub'ı veya Discord'una bildirin.
mods.alpha = [accent](Alpha)
@@ -103,29 +103,29 @@ mods = Modlar
mods.none = [LIGHT_GRAY]Hiç mod bulunamadı!
mods.guide = Mod Rehberi
mods.report = Hata bildir
-mods.openfolder = Open Mod Folder
+mods.openfolder = Mod klasörünü aç
mod.enabled = [lightgray]Etkin
mod.disabled = [scarlet]Devre Dışı
mod.disable = Devre Dışı Bırak
-mod.delete.error = Unable to delete mod. File may be in use.
-mod.requiresversion = [scarlet]Requires min game version: [accent]{0}
-mod.missingdependencies = [scarlet]Missing dependencies: {0}
-mod.erroredcontent = [scarlet]Content Errors
-mod.errors = Errors have occurred loading content.
-mod.noerrorplay = [scarlet]You have mods with errors.[] Either disable the affected mods or fix the errors before playing.
-mod.nowdisabled = [scarlet]Mod '{0}' is missing dependencies:[accent] {1}\n[lightgray]These mods need to be downloaded first.\nThis mod will be automatically disabled.
+mod.delete.error = Mod silinemiyor. Dosya kullanımda olabilir.
+mod.requiresversion = [scarlet]Gereken en düşük oun versiyonu: [accent]{0}
+mod.missingdependencies = [scarlet]Bu modun çalışması için gereken modlar: {0}
+mod.erroredcontent = [scarlet]İçerik hatası.
+mod.errors = İçerik yüklenirken bir hata oluştu.
+mod.noerrorplay = [scarlet]Hatalı modlarınız var.[] Oynamadan önce bu modları devre dışı bırakın veya dosyadaki hataları düzeltin.
+mod.nowdisabled = [scarlet]'{0}' modunun çalışması için gerekli olan modlardan bazıları bulunamadı:[accent] {1}\n[lightgray]Önce bu modların indirilmesi gerekmektedir.\nBu mod otomatik olarak devre dışı bırakılacaktır.
mod.enable = Etkinleştir
mod.requiresrestart = Oyun mod değişikliklerini uygulamak için kapatılacak.
mod.reloadrequired = [scarlet]Yeniden Yükleme Gerekli
mod.import = Mod İçeri Aktar
mod.import.github = GitHub Modu İçeri Aktar
-mod.item.remove = This item is part of the[accent] '{0}'[] mod. To remove it, uninstall that mod.
+mod.item.remove = Bu eşya[accent] '{0}'[] modunun bir parçası. Kaldırmak için modu silebilirsiniz.
mod.remove.confirm = Bu mod silinecek.
mod.author = [LIGHT_GRAY]Yayıncı:[] {0}
mod.missing = Bu kayıt yakın zamanda güncellediğiniz ya da artık yüklü olmayan modlar içermekte. Kayıt bozulmaları yaşanabilir. Kaydı yüklemek istediğinizden emin misiniz?\n[lightgray]Modlar:\n{0}
mod.preview.missing = Bu modu atölyede yayınlamadan önce bir resim önizlemesi eklemelisiniz.\nMod dosyasına [accent]preview.png[] adlı bir resim yerleştirin ve tekrar deneyin.
mod.folder.missing = Atölyede sadece klasör halindeki modlar yayınlanabilir.Bir modu klasöre çevirmek için, sadece mod dosyalarını bir klasöre çıkarın ve eski sıkıştırılmış dosyayı silin, sonra da oyunu tekrar başlatın ya da modlarınızı tekrar yükleyin.
-mod.scripts.unsupported = Your device does not support mod scripts. Some mods will not function correctly.
+mod.scripts.unsupported = Cihazınız bazı betik dosyalarını desteklemiyor. Bazı modlar düzgün çalışmayabilir.
about.button = Hakkında
name = İsim:
@@ -155,7 +155,7 @@ server.kicked.nameEmpty = Seçtiğin isim geçersiz.
server.kicked.idInUse = Zaten bu sunucudasın! İki hesapla bir sunucuya bağlanamazsın.
server.kicked.customClient = Bu sunucu özel sürümleri kabul etmiyor. Resmi bir sürüm indir.
server.kicked.gameover = Oyun bitti!
-server.kicked.serverRestarting = The server is restarting.
+server.kicked.serverRestarting = Sunucu yeniden başlatılıyor.
server.versions = Kullandığın surum:[accent] {0}[]\nSunucunun sürümü:[accent] {1}[]
host.info = [accent]host[], [scarlet]6567[] portunda bir sunucuya ev sahipliği yapıyor. \nAynı [lightgray]wifi veya yerel ağdaki[] herkes sunucu listelerinde senin sunucunu görebiliyor olmalı.\n\nEğer diğerlerinin herhangi bir yerden IP ile bağlanabilmesini istiyorsan [accent]port yönlendirmesi[] gerekli.\n\n[lightgray]Not: Eğer birisi senin yerel ağ oyununa katılmakta sorun yaşıyorsa güvenlik duvarı ayarlarında Mindustry'ye yerel ağ bağlantısı izni verdiğinden emin olun. Halka açık ağların zaman zaman sunucu aramaya engel olduğunu unutmayın.
join.info = Burada, bağlanmak istediğin sunucunun [accent]IP[] adresini girebilir veya [accent]yerel ağ[] sunucularını görebilirsin..\nHem yerel ağ hem de geniş alan ağı çoklu oyuncu için destekleniyor.\n\n[lightgray]Not: Otomatik bir global sunucu listesi yok; eğer birisine IP adresi kullanarak bağlanmak istiyorsan IP adresini istemelisin.
@@ -289,12 +289,12 @@ map.publish.confirm = Bu haritayı yayınlamak istediğinize emin misiniz?\n[lig
workshop.menu = Select what you would like to do with this item.
workshop.info = Nesne Açıklaması
changelog = Değişim Listesi (isteğe bağlı):
-eula = Steam EULA
-missing = This item has been deleted or moved.\n[lightgray]The workshop listing has now been automatically un-linked.
+eula = Steam Kullanıvı Sözleşmesi
+missing = Bu eşya silinmiş veya taşınmış.\n[lightgray]Workshop listesinden kaldırıldı.
publishing = [accent]Yayınlanıyor...
-publish.confirm = Bunu yayınlamak istediğinize emin misiniz?\n[lightgray]önce Atölye EULA'sına uyduğunuza emin olun, yoksa yapıtlarınız gözükmeyecektir!
+publish.confirm = Bunu yayınlamak istediğinize emin misiniz?\n[lightgray]önce Atölye Sözleşmesine uyduğunuza emin olun, yoksa yapıtlarınız gözükmeyecektir!
publish.error = Nesneyi yayınlarken hata oluştu: {0}
-steam.error = Failed to initialize Steam services.\nError: {0}
+steam.error = Steam hatası.\nHata kodu: {0}
editor.brush = Fırça
editor.openin = Düzenleyici'de Aç
@@ -530,7 +530,7 @@ error.title = [crimson]Bir hata oldu
error.crashtitle = Bir hata oldu
blocks.input = Giriş
blocks.output = Çıkış
-blocks.booster = Booster
+blocks.booster = Güçlendirici
block.unknown = [lightgray]???
blocks.powercapacity = Enerji Kapasitesi
blocks.powershot = Enerji/Atış
@@ -652,7 +652,7 @@ setting.milliseconds = {0} milliseconds
setting.fullscreen.name = Tam Ekran
setting.borderlesswindow.name = Kenarsız Pencere[lightgray] (yeniden açmak gerekebilir)
setting.fps.name = FPS Göster
-setting.blockselectkeys.name = Show Block Select Keys
+setting.blockselectkeys.name = Blok seçim tüşlarını göster
setting.vsync.name = VSync
setting.pixelate.name = Pixelleştir[lightgray] (animasyonları kapatır)
setting.minimap.name = Haritayı Göster
@@ -681,7 +681,7 @@ category.multiplayer.name = Çok Oyunculu
command.attack = Saldır
command.rally = Toplan
command.retreat = Geri Çekil
-placement.blockselectkeys = \n[lightgray]Key: [{0},
+placement.blockselectkeys = \n[lightgray]Tuş: [{0},
keybind.clear_building.name = Binayı Temizle
keybind.press = Bir tuşa basın...
keybind.press.axis = Bir tuşa ya da yöne basın...
@@ -695,22 +695,22 @@ keybind.schematic_select.name = Bölge Seç
keybind.schematic_menu.name = Şema Menüsü
keybind.schematic_flip_x.name = Şemayı X ekseninde Döndür
keybind.schematic_flip_y.name = Şemayı Y Ekseninde Döndür
-keybind.category_prev.name = Previous Category
-keybind.category_next.name = Next Category
-keybind.block_select_left.name = Block Select Left
-keybind.block_select_right.name = Block Select Right
-keybind.block_select_up.name = Block Select Up
-keybind.block_select_down.name = Block Select Down
-keybind.block_select_01.name = Category/Block Select 1
-keybind.block_select_02.name = Category/Block Select 2
-keybind.block_select_03.name = Category/Block Select 3
-keybind.block_select_04.name = Category/Block Select 4
-keybind.block_select_05.name = Category/Block Select 5
-keybind.block_select_06.name = Category/Block Select 6
-keybind.block_select_07.name = Category/Block Select 7
-keybind.block_select_08.name = Category/Block Select 8
-keybind.block_select_09.name = Category/Block Select 9
-keybind.block_select_10.name = Category/Block Select 10
+keybind.category_prev.name = Önceki Kategori
+keybind.category_next.name = Sonraki Kategori
+keybind.block_select_left.name = Sol Blok Seçimi
+keybind.block_select_right.name = Sağ Blok Seçimi
+keybind.block_select_up.name = Yukarı Blok Seçimi
+keybind.block_select_down.name = Aşağı Blok Seçimi
+keybind.block_select_01.name = Kategori 1
+keybind.block_select_02.name = Kategori 2
+keybind.block_select_03.name = Kategori 3
+keybind.block_select_04.name = Kategori 4
+keybind.block_select_05.name = Kategori 5
+keybind.block_select_06.name = Kategori 6
+keybind.block_select_07.name = Kategori 7
+keybind.block_select_08.name = Kategori 8
+keybind.block_select_09.name = Kategori 9
+keybind.block_select_10.name = Kategori 10
keybind.fullscreen.name = Tam Ekran
keybind.select.name = Seç/Ateş Et
keybind.diagonal_placement.name = Çapraz Yerleştirme
@@ -718,7 +718,7 @@ keybind.pick.name = Blok Seç
keybind.break_block.name = Blok Kır
keybind.deselect.name = Seçimleri Kaldır
keybind.shoot.name = Ateş Et
-keybind.zoom.name = Zum
+keybind.zoom.name = Yakınlaştırma/Uzaklaştırma
keybind.menu.name = Menü
keybind.pause.name = Durdur
keybind.pause_building.name = İnşaatı Duraklat/İnşaata Devam Et
@@ -732,8 +732,8 @@ keybind.toggle_menus.name = Menüleri Aç/Kapa
keybind.chat_history_prev.name = Sohbet geçmişi önceki
keybind.chat_history_next.name = Sohbet geçmişi sonraki
keybind.chat_scroll.name = Sohbet Kaydırma
-keybind.drop_unit.name = Drop Unit
-keybind.zoom_minimap.name = Mini Haritada Zum
+keybind.drop_unit.name = Birlik Düşürme
+keybind.zoom_minimap.name = Mini Haritada Yakınlaştırma/Uzaklaştırma
mode.help.title = Modların açıklamaları
mode.survival.name = Hayatta Kalma
mode.survival.description = Normal oyun oyun modu. Kaynak sınırlı ve dalgalar otomatik olarak gönderilir.\n[gray]Oynamak için haritada düşman doğma noktaları olması gerekir.
@@ -747,7 +747,7 @@ mode.attack.description = Düşman üssünü yok et. Dalga yok.\n[gray]Oynamak i
mode.custom = Özel Kurallar
rules.infiniteresources = Sınırsız Kaynaklar
-rules.reactorexplosions = Reactor Explosions
+rules.reactorexplosions = Reaktör Patlamaları
rules.wavetimer = Dalga Zamanlayıcısı
rules.waves = Dalgalar
rules.attack = Saldırı Modu
@@ -755,7 +755,7 @@ rules.enemyCheat = Sonsuz AI (Kırmızı Takım) Kaynakları
rules.unitdrops = Unit Drops
rules.unitbuildspeedmultiplier = Birim Üretim Hızı Çarpanı
rules.unithealthmultiplier = Birim Canı Çarpanı
-rules.blockhealthmultiplier = Block Health Multiplier
+rules.blockhealthmultiplier = Blok Canı Çarpanı
rules.playerhealthmultiplier = Oyuncu Canı Çarpanı
rules.playerdamagemultiplier = Oyuncu Hasarı Çarpanı
rules.unitdamagemultiplier = Birim Hasarı Çapanı
@@ -773,10 +773,10 @@ rules.title.respawns = Tekrar Canlanmalar
rules.title.resourcesbuilding = Kaynaklar & İnşa
rules.title.player = Oyuncular
rules.title.enemy = Düşmanlar
-rules.title.unit = Unitler
-rules.title.experimental = Experimental
-rules.lighting = Lighting
-rules.ambientlight = Ambient Light
+rules.title.unit = Birlikler
+rules.title.experimental = Deneysel
+rules.lighting = Işıklandırma
+rules.ambientlight = Ortam Işığı
content.item.name = Eşyalar
content.liquid.name = Sıvılar
@@ -824,7 +824,7 @@ mech.trident-ship.name = Trident
mech.trident-ship.weapon = Bomba Bölmesi
mech.glaive-ship.name = Glaive
mech.glaive-ship.weapon = Alevli Makineli Tüfek
-item.corestorable = [lightgray]Storable in Core: {0}
+item.corestorable = [lightgray]Çekirdekte depolanabilir mi?: {0}
item.explosiveness = [lightgray]Patlama: {0}%
item.flammability = [lightgray]Yanıcılık: {0}%
item.radioactivity = [lightgray]Radyoaktivite: {0}%
diff --git a/core/assets/bundles/bundle_uk_UA.properties b/core/assets/bundles/bundle_uk_UA.properties
index a5ffab3aed..8366371c3c 100644
--- a/core/assets/bundles/bundle_uk_UA.properties
+++ b/core/assets/bundles/bundle_uk_UA.properties
@@ -39,7 +39,6 @@ be.check = Перевірити на наявність оновлень
schematic = Схема
schematic.add = Зберегти схему…
schematics = Схеми
-schematic.replace = Схема з такою ж назвою вже існує. Замінити її?
schematic.import = Імпортувати схему…
schematic.exportfile = Експортувати файл
schematic.importfile = Імпортувати файл
@@ -55,10 +54,11 @@ schematic.info = {0}x{1}, {2} блоків
stat.wave = Хвиль відбито:[accent] {0}
stat.enemiesDestroyed = Ворогів знищено:[accent] {0}
-stat.built = Будівель збудувано:[accent] {0}
+stat.built = Будівель збудовано:[accent] {0}
stat.destroyed = Будівель знищено:[accent] {0}
stat.deconstructed = Будівель деконструйовано:[accent] {0}
stat.delivered = Ресурсів запущено:
+stat.playtime = Час у грі:[accent] {0}
stat.rank = Фінальний рахунок: [accent]{0}
launcheditems = [accent]Запущені предмети
@@ -69,7 +69,7 @@ level.select = Вибір мапи
level.mode = Режим гри:
showagain = Не показувати знову до наступного сеансу
coreattack = < Ядро знаходиться під атакою! >
-nearpoint = [[ [scarlet]ЗАЛИШТЕ ЗОНУ ВИСАДКИ НЕГАЙНО[] ]\nаннігіляція неминуча.
+nearpoint = [[ [scarlet]ЗАЛИШТЕ ЗОНУ ВИСАДКИ НЕГАЙНО[] ]\nанігіляція неминуча.
database = База даних ядра
savegame = Зберегти гру
loadgame = Завантажити гру
@@ -82,10 +82,10 @@ position = Місцерозташування
close = Закрити
website = Вебсайт
quit = Вихід
-save.quit = Зберегти & Вийти
+save.quit = Зберегти та вийти
maps = Мапи
maps.browse = Перегляд мап
-continue = Продовжити
+continue = Далі
maps.none = [lightgray]Мап не знайдено!
invalid = Недійсне
pickcolor = Вибрати колір
@@ -111,8 +111,8 @@ mod.disable = Вимкнути
mod.delete.error = Неможливо видалити модифікацію. Файл, можливо, використовується.
mod.requiresversion = [scarlet]Необхідна мінімальна версія гри: [accent]{0}
mod.missingdependencies = [scarlet]Відсутні залежності: {0}
-mod.erroredcontent = [scarlet]Помилки при завантаженнні
-mod.errors = Виникли помилки при завантаження змісту.
+mod.erroredcontent = [scarlet]Помилки при завантаженні
+mod.errors = Виникли помилки під час завантаження змісту.
mod.noerrorplay = [scarlet]Ви маєте модифікації з помилками.[] Або вимкніть проблемні модифікації, або виправте їх.
mod.nowdisabled = [scarlet]Модифікації «{0}» не вистачає залежних модифікацій:[accent] {1}\n[lightgray]Ці модифікації потрібно завантажити спочатку.\nЦя модифікація буде автоматично вимкнена.
mod.enable = Увімкнути
@@ -124,8 +124,8 @@ mod.item.remove = Цей предмет є частиною модифікаці
mod.remove.confirm = Цю модифікацію буде видалено.
mod.author = [LIGHT_GRAY]Автор:[] {0}
mod.missing = Це збереження містить модифікації, які ви нещодавно оновили або більше не встановлювали. Збереження може зіпсуватися. Ви впевнені, що хочете завантажити його?\n[lightgray]Модифікації:\n{0}
-mod.preview.missing = До публікації цієї модифікації в Майстерні, ви повинні додати зображення попереднього перегляду.\nПомістіть зображення з назвою [accent] preview.png[] у теку з модификаціями і спробуйте знову.
-mod.folder.missing = Тільки модификації у формі теці можуть бути опубліковані в Майстерні.\nЩоб перетворити будь-яку модификацію у теку, просто розархівуйте цей файлу теку та видаліть старий архів, і потім перезапустіть гру або перезавантажте ваші модификації.
+mod.preview.missing = До публікації цієї модифікації в Майстерні, ви повинні додати зображення попереднього перегляду.\nПомістіть зображення з назвою [accent] preview.png[] у теку з модифікаціями і спробуйте знову.
+mod.folder.missing = Тільки модифікації у формі теці можуть бути опубліковані в Майстерні.\nЩоб перетворити будь-яку модифікацію у теку, просто розархівуйте цей файлу теку та видаліть старий архів, і потім перезапустіть гру або перезавантажте ваші модифікації.
mod.scripts.unsupported = Ваш пристрій не підтримує скрипти модифікацій. Деякі модифікації не будуть працювати правильно.
about.button = Про гру
@@ -159,7 +159,7 @@ server.kicked.gameover = Гра завершена!
server.kicked.serverRestarting = Сервер перезавантажується
server.versions = Ваша версія:[accent] {0}[]\nВерсія на сервері:[accent] {1}[]
host.info = Кнопка [accent]Сервер[] розміщує сервер на порті [scarlet]6567[]. \nКористувачі, які знаходяться у тій же [lightgray]WiFi або локальній мережах[], повинні побачити ваш сервер у своєму списку серверів.\n\nЯкщо ви хочете, щоб люди могли приєднуватися з будь-якої точки планети через IP, то потрібно зробити[accent] переадресація порту[].\n\n[lightgray]Примітка. Якщо у вас виникли проблеми з приєднанням до вашої локальної гри, переконайтеся, що ви дозволили Mindustry доступ до вашої локальної мережі в налаштуваннях брандмауера. Зауважте, що публічні мережі іноді не дозволяють виявити сервер.
-join.info = Тут ви можете ввести [accent]IP сервера[] для під’єднання або знайти сервери у [accent]локальній мережі[] для приєднання до них.\nПідтримується локальна мережа(LAN) і широкосмугова мережа(WAN).\n\n[lightgray] Примітка. Це не є автоматичним глобальним списком серверів; якщо ви хочете приєднатися до когось через IP, вам доведеться попросити власникасервера дати свій ip.
+join.info = Тут ви можете ввести [accent]IP сервера[] для під’єднання або знайти сервери у [accent]локальній мережі[] для приєднання до них.\nПідтримується локальна мережа(LAN) і широкосмугова мережа(WAN).\n\n[lightgray] Примітка. Це не є автоматичним глобальним списком серверів; якщо ви хочете приєднатися до когось через IP, вам доведеться попросити власника сервера дати свій ip.
hostserver = Запустити багатокористувацький сервер
invitefriends = Запросити друзів
hostserver.mobile = Запустити\nсервер
@@ -169,8 +169,13 @@ hosts.refresh = Оновити
hosts.discovering = Пошук локальних ігор
hosts.discovering.any = Пошук ігор
server.refreshing = Оновлення сервера
-hosts.none = [lightgray]Локальних ігр не знайдено
+hosts.none = [lightgray]Локальних ігор не знайдено
host.invalid = [scarlet]Не вдалося під’єднатися до сервера.
+
+servers.local = Локальні сервери
+servers.remote = Віддалені сервери
+servers.global = Глобальні сервери
+
trace = Стежити за гравцем
trace.playername = Ім’я гравця: [accent]{0}
trace.ip = IP: [accent]{0}
@@ -191,7 +196,7 @@ server.version = [lightgray]Версія: {0}
server.custombuild = [yellow]Користувацька збірка
confirmban = Ви дійсно хочете заблокувати цього гравця?
confirmkick = Ви дійсно хочете вигнати цього гравця?
-confirmvotekick = Ви дійсно хочете вигнати цього гравця за допомогою голосуванняr?
+confirmvotekick = Ви дійсно хочете вигнати цього гравця за допомогою голосування?
confirmunban = Ви дійсно хочете розблокувати цього гравця?
confirmadmin = Ви дійсно хочете зробити цього гравця адміністратором?
confirmunadmin = Ви дійсно хочете видалити статус адміністратора з цього гравця?
@@ -199,7 +204,7 @@ joingame.title = Приєднатися до гри
joingame.ip = IP:
disconnect = Відключено.
disconnect.error = Помилка з’єднання.
-disconnect.closed = З'єднання закрито.
+disconnect.closed = З’єднання закрито.
disconnect.timeout = Час вийшов.
disconnect.data = Не вдалося завантажити світові дані!
cantconnect = Не вдалося під’єднатися до гри ([accent]{0}[]).
@@ -226,7 +231,7 @@ save.newslot = Ім’я збереження:
save.rename = Перейменувати
save.rename.text = Нова назва:
selectslot = Виберіть збережений файл.
-slot = [accent]Місце збережання{0}
+slot = [accent]Місце збереження{0}
editmessage = Редагувати повідомлення
save.corrupted = [accent]Збережений файл пошкоджено або він є недійсним! \nЯкщо ви щойно оновили свою гру, це, мабуть, є зміною формату збереження та [scarlet] не є[] помилкою.
empty = <порожньо>
@@ -243,7 +248,7 @@ confirm = Підтвердження
delete = Видалити
view.workshop = Переглянути в Майстерні
workshop.listing = Редагувати список Майстерні
-ok = ОК
+ok = Гаразд
open = Відкрити
customize = Налаштувати правила
cancel = Скасувати
@@ -268,7 +273,7 @@ selectschematic = [accent][[{0}][], щоб вибрати та скопіюва
pausebuilding = [accent][[{0}][], щоб призупинити будування
resumebuilding = [scarlet][[{0}][], щоб продовжити будування
wave = [accent]Хвиля {0}
-wave.waiting = Хвиля через {0}
+wave.waiting = Наступна через {0}
wave.waveInProgress = [lightgray]Хвиля триває
waiting = Очікування…
waiting.players = Очікування гравців…
@@ -305,7 +310,7 @@ editor.oregen.info = Генерація руд:
editor.mapinfo = Інформація про мапу
editor.author = Автор:
editor.description = Опис:
-editor.nodescription = Мапа повинна мати щонаймеше 4 символи для публікації.
+editor.nodescription = Мапа повинна мати щонайменше 4 символи для публікації.
editor.waves = Хвилі:
editor.rules = Правила:
editor.generation = Генерація:
@@ -355,7 +360,7 @@ editor.save.overwrite = Ваша мапа перезаписує вбудова
editor.import.exists = [scarlet]Неможливо імпортувати:[] вбудована мапа з назвою «{0}» вже існує!
editor.import = Імпорт…
editor.importmap = Імпортувати мапу
-editor.importmap.description = Імпортувати вже існуючу мапу
+editor.importmap.description = Імпортувати вже наявну мапу
editor.importfile = Імпортувати файл
editor.importfile.description = Імпортувати зовнішній файл мапи
editor.importimage = Імпортувати застаріле зображення
@@ -370,7 +375,7 @@ editor.saveimage = Зберегти\nзображення
editor.unsaved = [scarlet]У вас є незбережені зміни![]\nВи впевнені, що хочете вийти?
editor.resizemap = Змінити розмір мапи
editor.mapname = Назва мапи:
-editor.overwrite = [accent]Попередження!\nЦе перезаписує існуючу мапу.
+editor.overwrite = [accent]Попередження!\nЦе перезаписує наявну мапу.
editor.overwrite.confirm = [scarlet]Попередження![] Мапа з такою назвою вже існує. Ви впевнені, що хочете переписати її?
editor.exists = Мапа з такою назвою вже існує.
editor.selectmap = Виберіть мапу для завантаження:
@@ -407,18 +412,18 @@ filter.terrain = Ландшафт
filter.option.scale = Масштаб фільтра
filter.option.chance = Шанс
filter.option.mag = Сила застосування
-filter.option.threshold = Граничний порог
+filter.option.threshold = Граничний поріг
filter.option.circle-scale = Масштаб круга
filter.option.octaves = Циклічність застосування
-filter.option.falloff = Спад цикличности
-filter.option.angle = Вугол
+filter.option.falloff = Спад циклічності
+filter.option.angle = Кут
filter.option.block = Блок
filter.option.floor = Поверхня
filter.option.flooronto = Цільова поверхня
filter.option.wall = Стіна
filter.option.ore = Руда
filter.option.floor2 = Друга поверхня
-filter.option.threshold2 = Вторинний граничний порог
+filter.option.threshold2 = Вторинний граничний поріг
filter.option.radius = Радіус
filter.option.percentile = Спад
@@ -443,13 +448,13 @@ abandon.text = Ця зона і всі її ресурси будуть утра
locked = Заблоковано
complete = [lightgray]Досягнута:
requirement.wave = Досягніть хвилі {0} у зоні «{1}»
-requirement.core = Знищьте вороже ядро у {0}
+requirement.core = Знищте вороже ядро у зоні «{0}»
requirement.unlock = Розблокуйте {0}
resume = Відновити зону:\n[lightgray]{0}
bestwave = [lightgray]Найкраща хвиля: {0}
launch = < ЗАПУСК >
launch.title = Запуск вдалий
-launch.next = [lightgray]наступна можливість на {0}-тій хвилі
+launch.next = [lightgray]наступна можливість буде на {0}-тій хвилі
launch.unable2 = [scarlet]ЗАПУСК неможливий.[]
launch.confirm = Це видалить всі ресурси у вашому ядрі.\nВи не зможете повернутися до цієї бази.
launch.skip.confirm = Якщо ви пропустите зараз, ви не зможете не запускати до більш пізніх хвиль.
@@ -457,7 +462,7 @@ uncover = Розкрити
configure = Налаштувати вивантаження
bannedblocks = Заборонені блоки
addall = Додати все
-configure.locked = {0}[lightgray]Тільки після цього можливість розблокувати вивантаження ресурсів буде доступна.
+configure.locked = {0}[lightgray] Тільки після цього можливість розблокувати вивантаження ресурсів буде доступна.
configure.invalid = Кількість повинна бути числом між 0 та {0}.
zone.unlocked = Зона «[lightgray]{0}» тепер розблокована.
zone.requirement.complete = Ви досягли {0}-тої хвилі.\nВимоги до зони «{1}» виконані.
@@ -499,12 +504,12 @@ zone.groundZero.description = Оптимальне місце для повто
zone.frozenForest.description = Спори поширилися навіть тут, ближче до гір. Холодна температура не може стримувати їх завжди.\nЗважтесь створити енергію. Побудуйте генератори внутрішнього згорання. Навчіться користуватися регенераторами.
zone.desertWastes.description = Ці відходи є величезними, непередбачуваними і перетинаються з занедбаними секторальними структурами.\nВугілля присутнє в регіоні. Спаліть його для енергії або синтезуйте у графіт.\n\n[lightgray]Є декілька варіантів для місць посадок.
zone.saltFlats.description = На околицях пустелі лежать Соляні рівнини. У цьому місці можна знайти небагато ресурсів.\n\nСаме тут вороги спорудили комплекс сховищ ресурсів. Викорініть їхнє ядро. Не залишайте нічого цінного.
-zone.craters.description = У цьому кратері накопичилася вода, пережиток старих воєн. Відновіть місцевість. Зберіть пісок. Виплавте метаскло. Качайте воду, щоб охолодити турелі і бури.
+zone.craters.description = У цьому кратері накопичилася вода, пережиток старих воєн. Відновіть місцевість. Зберіть пісок. Виплавте метаскло. Качайте воду, щоб охолодити турелі та бури.
zone.ruinousShores.description = Саме берегова лінія є минулим цих відходів. Колись у цьому місці розташувався береговий оборонний масив, проте залишилося не так багато чого. Тільки основні оборонні споруди залишилися неушкодженими, а все інше перетворилося на металобрухт.\nПродовжуйте експансію назовні. Повторно розкрийте технології.
zone.stainedMountains.description = Якщо йти далі у вглиб материка, то можна побачити гори, які ще не заражені спорами.\nВидобудьте надлишковий титан у цій місцевості. Дізнайтеся, як використовувати його.\n\nНа жаль, тут більше ворогів ніж в інших місцевостях. Не дайте їм часу надіслати свої найсильніші одиниці.
-zone.overgrowth.description = Ближче до джерела спор є територія, що заросла.\nНе дивуйтеся, що ворог встановив тут свій форпост. Побудуйте бойові одиниці під кодовою назвою «Титан». Зруйнуйте вщент супротивника. Поверніть те, що колись належало нам.
-zone.tarFields.description = Між горами та пустелею простягається окраїна зони видобутку нафти. Це один з небагатьох районів із корисними для використання запасами смоли.\nНезважаючи на те, що територія покинута, вона має поблизу небезпечні сили противника. Не варто їх недооцінювати.\n\n[lightgray]Якщо можливо, дослідіть технологію переробки нафти.
-zone.desolateRift.description = Надзвичайно небезпечна зона. Багато ресурсів, але мало місця. Евакуюватися потрібно якомога швидше. Не розслабляйтеся між ворожими атаками та знайдіть ахіллесову п'яту супротивника.
+zone.overgrowth.description = Ближче до джерела спор є територія, що заросла.\nНе дивуйтеся, що ворог встановив тут свій форпост. Побудуйте бойові одиниці під кодовою назвою «Титан». Зруйнуйте вщент супротивника. Поверніть те, що колись належало нам.
+zone.tarFields.description = Між горами та пустелею простягається окраїна зони видобутку нафти. Це один з небагатьох районів із корисними для використання запасами смоли.\nНезважаючи на те, що територія покинута, вона має поблизу небезпечні сили противника. Не варто їх недооцінювати.\n\n[lightgray]Якщо можливо, дослідіть технологію переробки нафти.
+zone.desolateRift.description = Надзвичайно небезпечна зона. Багато ресурсів, але мало місця. Евакуюватися потрібно якомога швидше. Не розслабляйтеся між ворожими атаками та знайдіть ахіллесову п’яту супротивника.
zone.nuclearComplex.description = Колишній об’єкт для виробництва та переробки торію було зведено до руїн.\n[lightgray]Дослідіть торій та його нескінченну кількість застосувань.\n\nВорог, який постійно шукає нападників, присутній тут у великій кількості, тому не баріться з евакуацією!
zone.fungalPass.description = Перехідна зона між високими і низькими горами, земля яких вкрита спорами. Тут знаходиться невелика розвідувальна база ворога.\nЗнищте її.\nВикористовуйте одиниці з кодовими назвами «Кинджал» і «Камікадзе» для повного знищення двох ворожих ядер.
zone.impact0078.description = <вставити опис тут>
@@ -512,7 +517,7 @@ zone.crags.description = <вставити опис тут>
settings.language = Мова
settings.data = Ігрові дані
-settings.reset =За замовчуванням
+settings.reset = За замовчуванням
settings.rebind = Змінити
settings.resetKey = Скинути
settings.controls = Керування
@@ -520,8 +525,8 @@ settings.game = Гра
settings.sound = Звук
settings.graphics = Графіка
settings.cleardata = Очистити дані…
-settings.clear.confirm = Ви дійсно хочете очистити ці дані?\nЦю дію не можна скасовати!
-settings.clearall.confirm = [scarlet]УВАГА![]\nЦе очистить усі дані, включаючи збереження, мапи, розблоковане та налаштування керування.\nПісля натискання ОК гра видалить усі дані та автоматично закриється.
+settings.clear.confirm = Ви дійсно хочете очистити ці дані?\nЦю дію не можна скасувати!
+settings.clearall.confirm = [scarlet]УВАГА![]\nЦе очистить усі дані, включаючи збереження, мапи, розблоковане та налаштування керування.\nПісля натискання «Гаразд» гра видалить усі дані та автоматично закриється.
paused = [accent]< Пауза>
clear = Очистити
banned = [scarlet]Заблоковано
@@ -619,7 +624,7 @@ category.items = Предмети
category.crafting = Виробництво
category.shooting = Стрільба
category.optional = Додаткові поліпшення
-setting.landscape.name = Тільки альбомний(гозинтальний) режим
+setting.landscape.name = Тільки альбомний(горизонтальний) режим
setting.shadows.name = Тіні
setting.blockreplace.name = Пропозиції щодо автоматичної заміни блоків
setting.linear.name = Лінійна фільтрація
@@ -628,7 +633,7 @@ setting.buildautopause.name = Автоматичне призупинення б
setting.animatedwater.name = Анімована вода
setting.animatedshields.name = Анімовані щити
setting.antialias.name = Згладжування[lightgray] (потребує перезапуску)[]
-setting.indicators.name = Показувати у сторону ворогів та союзників
+setting.indicators.name = Показувати в бік ворогів та союзників
setting.autotarget.name = Авто-стрільба
setting.keyboard.name = Миш+Керування з клавіатури
setting.touchscreen.name = Керування сенсорним екраном
@@ -646,7 +651,7 @@ setting.difficulty.name = Складність:
setting.screenshake.name = Тряска екрану
setting.effects.name = Ефекти
setting.destroyedblocks.name = Показувати зруйновані блоки
-setting.conveyorpathfinding.name = Пошук шляху для встановлення конвейерів
+setting.conveyorpathfinding.name = Пошук шляху для встановлення конвеєрів
setting.coreselect.name = Дозволити схематичні ядра
setting.sensitivity.name = Чутливість контролера
setting.saveinterval.name = Інтервал збереження
@@ -672,11 +677,11 @@ setting.publichost.name = Загальнодоступність гри
setting.playerlimit.name = Обмеження гравців
setting.chatopacity.name = Непрозорість чату
setting.lasersopacity.name = Непрозорість лазерів енергопостачання
-setting.bridgeopacity.name = Місткість мостів
+setting.bridgeopacity.name = Непрозорість мостів
setting.playerchat.name = Відображати хмару чата над гравцями
-public.confirm = Ви хочете зробити цю гру загальнодоступною?\n[lightgray]Це можна змінити у Налаштування→Гра→Загальнодоступність гри
+public.confirm = Ви хочете зробити цю гру загальнодоступною?\n[lightgray]Це можна змінити у Налаштування->Гра->Загальнодоступність гри
public.beta = Зауважте, що в бета-версії гри ви не можете робити публічні ігри.
-uiscale.reset = Масштаб користувацького інтерфейсу було змінено.\nНатисніть «ОК» для підтвердження цього масштабу.\n[scarlet]Повернення налаштувань і вихід через[accent] {0}[] секунд…
+uiscale.reset = Масштаб користувацького інтерфейсу було змінено.\nНатисніть «Гаразд» для підтвердження цього масштабу.\n[scarlet]Повернення налаштувань і вихід через[accent] {0}[] секунд…
uiscale.cancel = Скасувати & Вийти
setting.bloom.name = Світіння
keybind.title = Налаштування керування
@@ -733,7 +738,7 @@ keybind.chat.name = Чат
keybind.player_list.name = Список гравців
keybind.console.name = Консоль
keybind.rotate.name = Обертати
-keybind.rotateplaced.name = Обертати існуюче (прокручуйте)
+keybind.rotateplaced.name = Обертати наявне (прокручуйте)
keybind.toggle_menus.name = Меню перемикання
keybind.chat_history_prev.name = Попередня історія чату
keybind.chat_history_next.name = Наступна історія чату
@@ -771,7 +776,7 @@ rules.wavespacing = Інтервал хвиль:[lightgray] (секунди)
rules.buildcostmultiplier = Множник затрат на будування
rules.buildspeedmultiplier = Множник швидкості будування
rules.waitForWaveToEnd = Хвилі чекають на смерть усіх ворогів
-rules.dropzoneradius = Радіус зони висадки:[lightgray] (плитки)
+rules.dropzoneradius = Радіус зони висадки:[lightgray] (у плитках)
rules.respawns = Максимальна кількість відроджень за хвилю
rules.limitedRespawns = Обмеження відроджень
rules.title.waves = Хвилі
@@ -780,9 +785,10 @@ rules.title.resourcesbuilding = Ресурси & будування
rules.title.player = Гравці
rules.title.enemy = Вороги
rules.title.unit = Бойові одиниці
-rules.title.experimental = Есперементальне!
+rules.title.experimental = Експериментальне
rules.lighting = Світлотінь
rules.ambientlight = Навколишнє світло
+rules.solarpowermultiplier = Множник сонячної енергії
content.item.name = Предмети
content.liquid.name = Рідини
@@ -831,18 +837,18 @@ mech.trident-ship.weapon = Бомби
mech.glaive-ship.name = Спис
mech.glaive-ship.weapon = Вогняний кулемет
item.corestorable = [lightgray]Зберігання в ядрі: {0}
-item.explosiveness = [lightgray]Вибухонебезпечність: {0}%
-item.flammability = [lightgray]Вогненебезпечність: {0}%
-item.radioactivity = [lightgray]Радіоактивність: {0}%
+item.explosiveness = [lightgray]Вибухонебезпечність: {0} %
+item.flammability = [lightgray]Вогненебезпечність: {0} %
+item.radioactivity = [lightgray]Радіоактивність: {0} %
unit.health = [lightgray]Здоров’я: {0}
unit.speed = [lightgray]Швидкість: {0}
mech.weapon = [lightgray]Зброя: {0}
mech.health = [lightgray]Здоров’я: {0}
mech.itemcapacity = [lightgray]Місткість елементів: {0}
-mech.minespeed = [lightgray]Швидкість видобутку: {0}%
+mech.minespeed = [lightgray]Швидкість видобутку: {0} %
mech.minepower = [lightgray]Потужність видобутку: {0}
mech.ability = [lightgray]Здібність: {0}
-mech.buildspeed = [lightgray]Швидкість будування: {0}%
+mech.buildspeed = [lightgray]Швидкість будування: {0} %
liquid.heatcapacity = [lightgray]Теплоємність: {0}
liquid.viscosity = [lightgray]В’язкість: {0}
liquid.temperature = [lightgray]Температура: {0}
@@ -850,12 +856,12 @@ liquid.temperature = [lightgray]Температура: {0}
block.sand-boulder.name = Пісочний валун
block.grass.name = Трава
block.salt.name = Сіль
-block.saltrocks.name = Сіляні камні
+block.saltrocks.name = Соляні камені
block.pebbles.name = Галька
block.tendrils.name = Щупальця
block.sandrocks.name = Піщані скелі
block.spore-pine.name = Спорова сосна
-block.sporerocks.name = Спорові камні
+block.sporerocks.name = Спорові камені
block.rock.name = Камінь
block.snowrock.name = Сніжний камінь
block.snow-pine.name = Сніжні сосни
@@ -875,7 +881,7 @@ block.graphite-press.name = Графітний прес
block.multi-press.name = Мульти-прес
block.constructing = {0}\n[lightgray](В процесі)
block.spawn.name = Місце появи ворога
-block.core-shard.name = Ядро «Осколок»
+block.core-shard.name = Ядро «Уламок»
block.core-foundation.name = Ядро «Штаб»
block.core-nucleus.name = Ядро «Атом»
block.deepwater.name = Глибоководдя
@@ -906,7 +912,7 @@ block.metal-floor.name = Металева підлога 1
block.metal-floor-2.name = Металева підлога 2
block.metal-floor-3.name = Металева підлога 3
block.metal-floor-5.name = Металева підлога 4
-block.metal-floor-damaged.name = Пошкоджена металевий підлога
+block.metal-floor-damaged.name = Пошкоджена металева підлога
block.dark-panel-1.name = Темна панель 1
block.dark-panel-2.name = Темна панель 2
block.dark-panel-3.name = Темна панель 3
@@ -947,8 +953,8 @@ block.inverted-sorter.name = Зворотній сортувальник
block.message.name = Повідомлення
block.illuminator.name = Освітлювач
block.illuminator.description = Невелике, компактне, джерело світла, яку можна налаштувати. Для роботи потребує енергії.
-block.overflow-gate.name = Надмірний затвір
-block.underflow-gate.name = Інвертований затвір
+block.overflow-gate.name = Надмірний затвор
+block.underflow-gate.name = Недостатній затвор
block.silicon-smelter.name = Кремнієвий плавильний завод
block.phase-weaver.name = Фазовий ткач
block.pulverizer.name = Подрібнювач
@@ -964,9 +970,9 @@ block.surge-tower.name = Кінетична вежа
block.diode.name = Діод
block.battery.name = Акумулятор
block.battery-large.name = Великий акумулятор
-block.combustion-generator.name = Генератор горіння
+block.combustion-generator.name = Генератор згорання
block.turbine-generator.name = Паровий генератор
-block.differential-generator.name = Диференціальний генератор
+block.differential-generator.name = Диференційний генератор
block.impact-reactor.name = Імпульсний реактор
block.mechanical-drill.name = Механічний дриль
block.pneumatic-drill.name = Пневматичний дриль
@@ -997,7 +1003,7 @@ block.ripple.name = Ряб
block.phase-conveyor.name = Фазовий конвеєр
block.bridge-conveyor.name = Мостовий конвеєр
block.plastanium-compressor.name = Пластинієвий компресор
-block.pyratite-mixer.name = Змішувач піротита
+block.pyratite-mixer.name = Змішувач піротиту
block.blast-mixer.name = Мішалка вибухонебезпечного з’єднання
block.solar-panel.name = Сонячна панель
block.solar-panel-large.name = Велика сонячна панель
@@ -1029,25 +1035,25 @@ block.thermal-pump.name = Тепловий насос
block.thermal-generator.name = Тепловий генератор
block.alloy-smelter.name = Сплавовий завод
block.mender.name = Регенератор
-block.mend-projector.name = Відновлювальна установка
+block.mend-projector.name = Великий регенератор
block.surge-wall.name = Кінетична стіна
block.surge-wall-large.name = Велика кінетична стіна
block.cyclone.name = Циклон
block.fuse.name = Підривник
-block.shock-mine.name = Шокуюча міна
-block.overdrive-projector.name = Швидкісна пускова установка
-block.force-projector.name = Силова пускова установка
+block.shock-mine.name = Міна
+block.overdrive-projector.name = Пришвидшувач
+block.force-projector.name = Силове поле
block.arc.name = Дуга
block.rtg-generator.name = Радіоізотопний термоелектричний генератор
block.spectre.name = Спектр
block.meltdown.name = Розплавлювач
-block.container.name = Склад
+block.container.name = Сховище
block.launch-pad.name = Стартовий майданчик
block.launch-pad-large.name = Великий стартовий майданчик
team.blue.name = Синя
team.crux.name = Червона
-team.sharded.name = Помаренчева
-team.orange.name = Помаренчева
+team.sharded.name = Помаранчева
+team.orange.name = Помаранчева
team.derelict.name = Залишена
team.green.name = Зелена
team.purple.name = Фіолетова
@@ -1060,8 +1066,8 @@ unit.titan.name = Титан
unit.ghoul.name = Ґуль
unit.wraith.name = Примара
unit.fortress.name = Фортеця
-unit.revenant.name = Потойбічний вбивця
-unit.eruptor.name = Вивиргатель
+unit.revenant.name = Потойбічний убивця
+unit.eruptor.name = Вивергатель
unit.chaos-array.name = Масив хаосу
unit.eradicator.name = Викорінювач
unit.lich.name = Лич
@@ -1070,34 +1076,34 @@ tutorial.next = [lightgray]<Натисніть для продовження>
tutorial.intro = Ви розпочали[scarlet] навчання по Mindustry.[]\nРозпочніть з [accent]видобутку міді[]. Використовуйте [[WASD] для руху.\n[accent]Прокручуйте миш[] для приближення і віддалення. Наблизьтесь до мідної жили біля вашого ядра, а потім натисніть на неї, щоб розпочати видобуток.\n\n[accent]{0}/{1} міді
tutorial.intro.mobile = Ви розпочали[scarlet] навчання по Mindustry.[]\nПроведіть екраном, щоб рухатися.\n[accent] Зведіть або розведіть 2 пальця [] для приближення і віддалення відповідно.\nз[accent] видобування міді.[] Наблизьтесь, а потім натисніть на мідну жилу біля вашого ядра, щоб зробити це.\n\n[accent]{0}/{1} міді
tutorial.drill = Добування вручну не є ефективним.\n[accent]Бури []можуть добувати автоматично.\nНатисніть на вкладку із зображенням свердла праворуч знизу.\nВиберіть[accent] механічний бур[]. Розмістіть його на мідній жилі натисканням.\nВи також можете вибрати бур, натиснувши [accent][[2][], а потім швидко натиснувши [accent][[1][], незалежно від відкритої вкладки.\n[accent]Натисніть ПКМ[], щоб зупинити будування.
-tutorial.drill.mobile = Добування вручну неефективне.\n[accent]Бури []можуть добувати автоматично.\nНатисніть на вкладку із зображенням свердла праворуч знизу.\nВиберіть[accent] механічний бур[]. Розмістіть його на мідній жилі натисканням, потім натисніть на [accent]галочку[] нижче, щоб підтвердити розміщення .\nНатисніть [accent]кнопку X[], щоб скасувати розміщення.
-tutorial.blockinfo = Кожний блок має різні характеристики. Кожний бур може видобувати тільки певні руди.\nЩоб переглянути інформацію та характеристики блока,[accent] натисність на кнопку «?», коли ви вибрали блок у меню будування.[]\n\n[accent]Перегляньте характеристику Механічного бура негайно[]
-tutorial.conveyor = [accent]Конвеєри[] використовуються для транспортування предметів до ядра.\nЗробіть лінію конвеєрів від бура до ядра.\n[accent]Утримуйте миш для розміщення у лінію.[]\nУтримуйте[accent] CTRL[] під час вибору лінії для розміщення по діагоналі.\\nПрокручуйте, щоб обертати блоки до їх установлення.\n[accent]Розмістіть 2 конвеєри у лінію, а потім доставте предмет в ядро.
-tutorial.conveyor.mobile =[accent]Конвеєри[] використовується для транспортування предметів до ядра.\nЗробіть лінію конвеєрів від бура до ядра.\n[accent] Розмістить у лінію, утримуючи палець кілька секунд[] і тягніть у напрямку, який Ви вибрали.\nВикористовуйте колесо прокрутки, щоб обертати блоки перед їх розміщенням\n[accent]{0}/{1} конвеєрів, які розміщені в лінію\n[accent]0/1 предмет доставлено
+tutorial.drill.mobile = Добування вручну неефективне.\n[accent]Бури []можуть добувати автоматично.\nНатисніть на вкладку із зображенням свердла праворуч знизу.\nВиберіть[accent] механічний бур[]. Розмістіть його на мідній жилі натисканням, потім натисніть на [accent]галочку[] нижче, щоб підтвердити розміщення.\nНатисніть [accent]кнопку X[], щоб скасувати розміщення.
+tutorial.blockinfo = Кожний блок має різні характеристики. Кожний бур може видобувати тільки певні руди.\nЩоб переглянути інформацію та характеристики блока,[accent] натисніть на кнопку «?», коли ви вибрали блок у меню будування.[]\n\n[accent]Перегляньте характеристику Механічного бура негайно[]
+tutorial.conveyor = [accent]Конвеєри[] використовуються для транспортування предметів до ядра.\nЗробіть лінію конвеєрів від бура до ядра.\n[accent]Утримуйте миш для розміщення у лінію.[]\nУтримуйте[accent] CTRL[] під час вибору лінії для розміщення по діагоналі.\nПрокручуйте, щоб обертати блоки до їх установлення.\n[accent]Розмістіть 2 конвеєри у лінію, а потім доставте предмет в ядро.
+tutorial.conveyor.mobile = [accent]Конвеєри[] використовується для транспортування предметів до ядра.\nЗробіть лінію конвеєрів від бура до ядра.\n[accent] Розмістить у лінію, утримуючи палець кілька секунд[] і тягніть у напрямку, який Ви вибрали.\nВикористовуйте колесо прокрутки, щоб обертати блоки перед їх розміщенням\n[accent]{0}/{1} конвеєрів, які розміщені в лінію\n[accent]0/1 предмет доставлено
tutorial.turret = Оборонні споруди повинні бути побудовані для відбиття[lightgray] ворогів[].\nПобудуйте[accent] башту «Подвійна»[] біля вашої бази.
tutorial.drillturret = «Подвійна» потребує [accent]мідні боєприпаси[] для стрільби.\nРозмістіть бур біля башти\nПроведіть конвеєри до башти, щоб заповнити її боєприпасами.\n\n[accent]Доставлено боєприпасів: 0/1
-tutorial.pause = Під час гри ви можете[accent] поставити на павзу.[]\nВи можете зробити чергу на будування під час паузи.\n\n[accent]Натисніть пробіл для павзи.
-tutorial.pause.mobile = Під час гри ви можете[accent] поставити на павзу.[]\nВи можете зробити чергу на будування під час паузи.\n\n[accent]Натисніть кнопку вгорі ліворуч для павзи.
+tutorial.pause = Під час гри ви можете[accent] поставити на паузу.[]\nВи можете зробити чергу на будування під час паузи.\n\n[accent]Натисніть пробіл для паузи.
+tutorial.pause.mobile = Під час гри ви можете[accent] поставити на паузу.[]\nВи можете зробити чергу на будування під час паузи.\n\n[accent]Натисніть кнопку вгорі ліворуч для паузи.
tutorial.unpause = Призупиніть гру, натиснувши на пробіл.
-tutorial.unpause.mobile = Тепер натисність туди ще раз, щоб зняти павзу.
+tutorial.unpause.mobile = Тепер натисніть туди ще раз, щоб зняти паузу.
tutorial.breaking = Блоки часто треба знищувати.\n[accent]Утримуючи ПКМ[] ви знищите всі виділені блоки.[]\n\n[accent]Необхідно знищити всі стіни з металобрухту ліворуч від вашого ядра використовуючи видалення у зоні.
tutorial.breaking.mobile = Блоки часто треба знищувати.\n[accent]Виберіть режим руйнування[], потім натисніть на блок, щоб зламати його.\nЗнищте область, утримуючи палець протягом декількох секунд [] і потягнувши в потрібному напрямку.\nНатисніть кнопку галочки, щоб підтвердити руйнування.\n\n[accent]Необхідно знищити всі стіни з металобрухту ліворуч від вашого ядра використовуючи видалення у зоні.
-tutorial.withdraw = У деяких ситуаціях потрібно брати предмети безпосередньо з блоків.\nЩоб зробити це, [accent]натисність на блок[] з предметами, і потім [accent]натисніть на предмет[] в інвентарі.\nМожна вилучити кілька предметів [accent]натискаючи та утримуючи[].\n\n[accent]Вилучіть трохи міді з ядра.[]
+tutorial.withdraw = У деяких ситуаціях потрібно брати предмети безпосередньо з блоків.\nЩоб зробити це, [accent]натисніть на блок[] з предметами, і потім [accent]натисніть на предмет[] в інвентарі.\nМожна вилучити кілька предметів [accent]натискаючи та утримуючи[].\n\n[accent]Вилучіть трохи міді з ядра.[]
tutorial.deposit = Покладіть предмети в блок, перетягнувши з вашого корабля в потрібний блок.\n\n[accent]Покладіть мідь назад у ядро.[]
-tutorial.waves = [lightgray] Ворог[] з’явився.\n\nЗахистіть ядро від двух хвиль.[accent] Натисніть ЛКМ[], щоб стріляти.\nПобудуйте більше башт і бурів. Добудьте більше міді.
-tutorial.waves.mobile = [lightgray] Ворог[] з’явився.\n\nЗахистіть ядро від двух хвиль. Ваш корабель буде автоматично атакувати ворогів.\nПобудуйте більше башт і бурів. Добудьте більше міді.
+tutorial.waves = [lightgray] Ворог[] з’явився.\n\nЗахистіть ядро від двох хвиль.[accent] Натисніть ЛКМ[], щоб стріляти.\nПобудуйте більше башт і бурів. Добудьте більше міді.
+tutorial.waves.mobile = [lightgray] Ворог[] з’явився.\n\nЗахистіть ядро від двох хвиль. Ваш корабель буде автоматично атакувати ворогів.\nПобудуйте більше башт і бурів. Добудьте більше міді.
tutorial.launch = Як тільки ви досягнете певної хвилі, ви зможете[accent] запустити ядро[], залишивши свою базу позаду, та [accent]отримати всі ресурси у вашому ядрі.[]\nЦі отримані ресурси можуть бути використані для дослідження нових технологій.\n\n[accent]Натисніть кнопку запуску.
item.copper.description = Початковий будівельний матеріал. Широко використовується у всіх типах блоків.
-item.lead.description = Основний стартовий матеріал. Широко застосовується в електроніці та у транспортуванні рідин.
+item.lead.description = Основний початковий матеріал. Широко застосовується в електроніці та у транспортуванні рідин.
item.metaglass.description = Дуже жорсткий склад скла. Широко застосовується для розподілу та зберігання рідини.
item.graphite.description = Мінералізований вуглець, що використовується для боєприпасів та як електричний компонент.
item.sand.description = Поширений матеріал, який широко використовується при виплавці, як при сплавленні, так і в якості відходів.
-item.coal.description = Окам’янілі рослинні речовини, що утворюються задовго до посіву. Широко використовується для виробництва пального та ресурсів.
+item.coal.description = Окам’янілі рослинні речовини, що утворилися задовго до посіву. Широко використовується для виробництва пального та ресурсів.
item.titanium.description = Рідкісний надлегкий метал, який широко використовується для транспортування рідини, бурів і літаків.
item.thorium.description = Щільний радіоактивний метал, що використовується в якості конструкційної опори та ядерного палива.
item.scrap.description = Залишки старих споруд та підрозділів. Містить мікроелементи багатьох різних металів.
-item.silicon.description = Надзвичайно корисний напівпровідник. Має застосування в сонячних батареях, складній електроніці та баштових боєприпасах.
+item.silicon.description = Надзвичайно корисний напівпровідник. Має застосування в сонячних батареях, складній електроніці та боєприпасах для башт.
item.plastanium.description = Легкий пластичний матеріал, що використовується в сучасних літальних апаратах та у фрагментованих боєприпасах.
item.phase-fabric.description = Майже невагома речовина, що застосовується в передовій електроніці та у технології самовідновлення.
item.surge-alloy.description = Удосконалений сплав з унікальними електричними властивостями.
@@ -1106,152 +1112,152 @@ item.blast-compound.description = Нестабільна сполука, яка
item.pyratite.description = Надзвичайно легкозаймиста речовина, що використовується в запальній зброї.
liquid.water.description = Найкорисніша рідина. Зазвичай використовується для охолодження машин та переробки відходів.
liquid.slag.description = Різні види розплавленого металу змішуються між собою. Може бути відокремлений від складових корисних копалин або розпорошений на ворожі частини як зброя.
-liquid.oil.description = Рідина, яка використовується у виробництві сучасних матеріалів. Може бути перетворена в вугілля в якості палива або використана як куля.
-liquid.cryofluid.description = Інертна, не роз’їдаюча рідина, створена з води та титану. Володіє надзвичайно високою пропускною спроможністю. Широко використовується в якості охолоджуючої рідини.
-mech.alpha-mech.description = Стандартний керований мех. Заснований на бойовій одиниці «Кинджал», з оновленими бронею та можливостями будування. Наносить більше шкоди, ніж «Дротик».
-mech.delta-mech.description = Швидкий, легкоброньований мех, зроблений для тактики «атакуй і втікай». Наносить мало шкоди будівлям, але може дуже швидко вбити великі групи підрозділів противника своєю дуговою блискавкою.
+liquid.oil.description = Рідина, яка використовується у виробництві сучасних матеріалів. Може бути перетворена у вугілля в якості палива або використана як куля.
+liquid.cryofluid.description = Інертна рідина, що створена з води та титану. Володіє надзвичайно високою пропускною спроможністю. Широко використовується в якості рідини, що охолоджує.
+mech.alpha-mech.description = Стандартний керований мех. Заснований на бойовій одиниці «Кинджал», з оновленими бронею та можливостями будування. Наносить більше шкоди, ніж корабель «Дротик».
+mech.delta-mech.description = Швидкий, легко броньований мех, зроблений для тактики «атакуй і втікай». Наносить мало шкоди будівлям, але може дуже швидко вбити великі групи підрозділів противника своєю дуговою блискавкою.
mech.tau-mech.description = Мех підтримки. Ремонтує союзні блоки, стріляючи по них. Може зцілювати союзників у радіусі його ремонтної здатності.
-mech.omega-mech.description = Об’ємний і добре броньований мех, зроблений для фронтових штурмів. Його броня може перекрити до 90% пошкоджень, що надходять.
-mech.dart-ship.description = Стандартний корабель управління. Швидко видобуває ресурси. Достатньо швидкий і легкий, але має мало наступальних можливостей.
+mech.omega-mech.description = Об’ємний і добре броньований мех, зроблений для фронтових штурмів. Його броня може заблокувати до 90% пошкоджень, що надходять.
+mech.dart-ship.description = Стандартний керований корабель. Швидко видобуває ресурси. Достатньо швидкий і легкий, але має мало наступальних можливостей.
mech.javelin-ship.description = Корабель, який використовується для стратегії «атакуй та втікай». Хоча спочатку він повільний, потім вже може розганятися до великих швидкостей і літати над ворожими форпостами, завдаючи великої кількості шкоди своїми блискавками та ракетами.
mech.trident-ship.description = Важкий бомбардувальник, побудований для будування та знищення ворожих укріплень. Дуже добре броньований.
-mech.glaive-ship.description = Великий, добре броньований бойовий корабель. Оснащений запальним ретранслятором. Високо маневрений.
-unit.draug.description = Примітивний дрон, який добуває ресурси. Дешевий для виробництва. Автоматично видобуває мідь і свинець поблизу. Доставляє видобуті ресурси до найближчого ядра.
-unit.spirit.description = Модифікований «Драугр», призначений для ремонту замість видобутку. Автоматично відновлює будь-які пошкоджені блоки.
-unit.phantom.description = Вдосконалений безпілотник. Йде за користувачами. Допомагає в будуванні блоків.
-unit.dagger.description = Базовий мех(бойова одиниця). Дешевий у виробництві. Нездоланні при використанні в натовпі.
-unit.crawler.description = Наземна одиниця, що складається зі стертої рами з високими вибуховими речовинами, прив’язаними зверху. Не особливо міцний. Вибухає при контакті з ворогами.
-unit.titan.description = Вдосконалений броньований наземний блок. Нападає як на наземні, так і повітряні цілі. Оснащений двома мініатюрними вогнеметами класу Випалювач.
+mech.glaive-ship.description = Великий і добре броньований бойовий корабель. Оснащений запальним ретранслятором. Високо маневрений.
+unit.draug.description = Примітивний дрон, який добуває ресурси. Дешевий у виробництві. Автоматично видобуває мідь і свинець поблизу. Доставляє видобуті ресурси до найближчого ядра.
+unit.spirit.description = Модифікований «Драугр», призначений для ремонту замість добування ресурсів. Автоматично відновлює будь-які пошкоджені блоки.
+unit.phantom.description = Удосконалений безпілотник. Йде за користувачами і допомагає в будуванні блоків.
+unit.dagger.description = Початкова бойова одиниця. Дешевий у виробництві. Нездоланні при використанні в натовпі.
+unit.crawler.description = Наземна одиниця, що складається зі стертої рами з високими вибуховими речовинами, які прив’язані зверху. Не особливо міцний. Вибухає при контакті з ворогами.
+unit.titan.description = Удосконалений броньована наземна одиниця. Нападає як на наземні, так і повітряні цілі. Оснащений двома мініатюрними вогнеметами класу «Випалювач».
unit.fortress.description = Артилерійний мех. Оснащений двома модифікованими гарматами типу «Град» для дальнього нападу на ворожі структури та підрозділи.
-unit.eruptor.description = Важкий мех, призначеней для знесення конструкцій. Вистрілює потік шлаків у ворожі укріплення, розплавляючи їх і підпалюючи летючі речовини.
-unit.wraith.description = Швидкий перехоплювач, який використовується для тактики «атакуй і втікай». Пріоритет — генератори енергії.
-unit.ghoul.description = Важкий килимовий бомбардувальник. Пробиває ворожі структури, орієнтуючись на віжливу інфраструктуру.
+unit.eruptor.description = Важкий мех, що призначений для знесення конструкцій. Вистрілює потік шлаку у ворожі укріплення, розплавляє їх і підпалює леткі речовини.
+unit.wraith.description = Швидкий перехоплювач, який використовує тактику «атакуй і втікай». Пріоритет — генератори енергії.
+unit.ghoul.description = Важкий килимовий бомбардувальник. Пробиває ворожі структури, орієнтуючись на важливу інфраструктуру.
unit.revenant.description = Важкий ракетний масив.
-block.message.description = Зберігає повідомлення. Використовується для комунікаціх між союзниками.
+block.message.description = Зберігає повідомлення. Використовується для комунікації між союзниками.
block.graphite-press.description = Стискає шматки вугілля в чисті аркуші графіту.
block.multi-press.description = Модернізована версія графітового преса. Використовує воду та енергію для швидкої та ефективної переробки вугілля.
block.silicon-smelter.description = Змішує пісок з чистим вугіллям. Виробляє кремній.
block.kiln.description = Виплавляє пісок та свинець у сполуку, відому як метаскло. Для запуску потрібна невелика кількість енергії.
block.plastanium-compressor.description = Виробляє пластаній з нафти і титану.
-block.phase-weaver.description = Синтезує фазову тканину з радіоактивного торію та піску. Для функціонування потрібна велика кількість енергії.
+block.phase-weaver.description = Синтезує фазову тканину з радіоактивного торію та піску. Для роботи потрібна велика кількість енергії.
block.alloy-smelter.description = Поєднує титан, свинець, кремній і мідь для отримання кінетичного сплаву.
-block.cryofluidmixer.description = Змішує воду і дрібний порошок титану титану в кріогенну рідину. Основне використання у торієвому реактору.
-block.blast-mixer.description = Подрібнює і змішує скупчення спор з піратитом для отримання вибухової суміші.
-block.pyratite-mixer.description = Змішує вугілля, свинець та пісок у легкозаймистий піратит.
+block.cryofluidmixer.description = Змішує воду і дрібний порошок титану в кріогенну рідину. Основне використання у торієвому реактору.
+block.blast-mixer.description = Подрібнює і змішує скупчення спор з піротитом для отримання вибухової суміші.
+block.pyratite-mixer.description = Змішує вугілля, свинець та пісок у легкозаймистий піротит.
block.melter.description = Розплавляє брухт у шлак для подальшої переробки або використання у баштах «Хвиля».
block.separator.description = Відокремлює шлак на його мінеральні компоненти. Виводить охолоджений результат.
block.spore-press.description = Стискає спорові стручки під сильним тиском для синтезу нафти.
-block.pulverizer.description = Подрібнює брухт дрібного піску.
+block.pulverizer.description = Подрібнює брухт у дрібний пісок.
block.coal-centrifuge.description = Нафта перетворюється у шматки вугілля.
block.incinerator.description = Випаровує будь-який зайвий предмет або рідину, які він отримує.
block.power-void.description = Знищує будь-яку енергію, до якої він під’єднаний. Тільки пісочниця
-block.power-source.description = Нескінченно виводить енергію.
-block.item-source.description = Нескінченно виводить предмети.
-block.item-void.description = Знищує будь-які предмети.
-block.liquid-source.description = Нескінченно виводить рідини.
-block.liquid-void.description = Removes any liquids. Sandbox only.
-block.copper-wall.description = Дешевий захисний блок.\nКорисна для захисту ядра та башти у перші кілька хвиль.
-block.copper-wall-large.description = Дешевий захисний блок.\nКорисна для захисту ядра та башт у перші кілька хвиль.\nОхоплює кілька плиток.
+block.power-source.description = Нескінченно виводить енергію. Тільки пісочниця.
+block.item-source.description = Нескінченно виводить предмети. Тільки пісочниця.
+block.item-void.description = Знищує будь-які предмети. Тільки пісочниця.
+block.liquid-source.description = Нескінченно виводить рідини. Тільки пісочниця.
+block.liquid-void.description = Видаляє будь-які рідини. Тільки пісочниця.
+block.copper-wall.description = Дешевий захисний блок.\nКорисний для захисту ядра та башти у перші кілька хвиль.
+block.copper-wall-large.description = Дешевий захисний блок.\nКорисний для захисту ядра та башт у перші кілька хвиль.\nЗаймає декілька плиток.
block.titanium-wall.description = Відносно сильний захисний блок.\nЗабезпечує помірний захист від ворогів.
-block.titanium-wall-large.description = Відносно сильний захисний блок.\nЗабезпечує помірний захист від ворогів.\nОхоплює кілька плиток.
-block.plastanium-wall.description = Особливий тип стіни, який поглинає електричні дуги і блокує автоматичні з'єднання енергетичних вузлів.
-block.plastanium-wall-large.description = Особливий тип стіни, який поглинає електричні дуги і блокує автоматичні з'єднання вузлів живлення.\nОхоплює кілька плиток.
+block.titanium-wall-large.description = Відносно сильний захисний блок.\nЗабезпечує помірний захист від ворогів.\nЗаймає декілька плиток.
+block.plastanium-wall.description = Особливий тип стіни, який поглинає електричні дуги й блокує автоматичні з’єднання енергетичних вузлів.
+block.plastanium-wall-large.description = Особливий тип стіни, який поглинає електричні дуги й блокує автоматичні з’єднання енергетичних вузлів.\nЗаймає декілька плиток.
block.thorium-wall.description = Сильний захисний блок.\nГідний захист від ворогів.
-block.thorium-wall-large.description = Сильний захисний блок.\nГідний захист від ворогів.\nОхоплює кілька плиток.
-block.phase-wall.description = Стіна, покрита спеціальним світловідбиваючим складом, який базується на фазовій тканині. Відхиляє більшість куль при ударі.
-block.phase-wall-large.description = Стіна, покрита спеціальним світловідбиваючим складом, який базується на фазовій тканині. Відхиляє більшість куль при ударі.\nОхоплює кілька плиток.
+block.thorium-wall-large.description = Сильний захисний блок.\nГідний захист від ворогів.\nЗаймає декілька плиток.
+block.phase-wall.description = Стіна має покриття спеціальним складом, що відбиває світло і який базується на фазовій тканині. Відхиляє більшість куль при ударі.
+block.phase-wall-large.description = Стіна має покриття спеціальним складом, що відбиває світло і який базується на фазовій тканині. Відхиляє більшість куль при ударі.\nЗаймає декілька плиток.
block.surge-wall.description = Надзвичайно міцний захисний блок.\nЗбільшує заряд при контакті з кулями, вивільняючи його випадковим чином.
-block.surge-wall-large.description = Надзвичайно міцний захисний блок.\nЗбільшує заряд при контакті з кулями, вивільняючи його випадковим чином.\nОхоплює кілька плиток.
+block.surge-wall-large.description = Надзвичайно міцний захисний блок.\nЗбільшує заряд при контакті з кулями, вивільняючи його випадковим чином.\nЗаймає декілька плиток.
block.door.description = Невеликі двері. Можна відкрити або закрити, натиснувши.
-block.door-large.description = Великі двері. Можна відкрити або закрити, натиснувши.\nОхоплює кілька плиток.
+block.door-large.description = Великі двері. Можна відкрити чи закрити, натиснувши.\nЗаймає декілька плиток.
block.mender.description = Періодично ремонтує блоки у його радіусі дії. Захищає башти та стіни.\nЗа бажанням, можна використати кремній для підвищення дальності та ефективності.
-block.mend-projector.description = Покращена версія «Регенератора». Періодично ремонтує блоки у його радіусі дії.\nЗа бажанням, можна використати фазова тканина для підвищення дальності та ефективності.
-block.overdrive-projector.description = Збільшує швидкість прилеглих будівель.\nЗа бажанням, можна використати фазова тканина для підвищення дальності та ефективності.
+block.mend-projector.description = Покращена версія «Регенератора». Періодично ремонтує блоки у його радіусі дії.\nЗа бажанням, можна використати фазову тканину для підвищення дальності та ефективності.
+block.overdrive-projector.description = Збільшує швидкість найближчих будівель.\nЗа бажанням, можна використати фазову тканину для підвищення радіусу дії та ефективності.
block.force-projector.description = Створює навколо себе шестикутне силове поле, захищаючи будівлі та блоки всередині від пошкоджень.\nПерегрівається, якщо завдано занадто великої шкоди. За бажанням, можна використати теплоносій для запобігання перегріву. Для збільшення розміру щита можна використовувати фазову тканину.
-block.shock-mine.description = Пошкоджує ворогів, наступаючи на міну. Майже невидимий для ворога.
+block.shock-mine.description = Пошкоджує ворогів, коли вони наступають на міну. Майже невидима для ворога.
block.conveyor.description = Базовий транспортний блок. Переміщує елементи вперед і автоматично перетворює їх у блоки. Можна обертати.
block.titanium-conveyor.description = Покращений блок транспорту елементів. Переміщує предмети швидше, ніж звичайні конвеєри.
block.junction.description = Діє як міст для двох перехресних конвеєрних стрічок. Корисно в ситуаціях, коли два різних конвеєри перевозять різні матеріали в різні місця.
block.bridge-conveyor.description = Покращений блок транспорту елементів. Дозволяє транспортувати предмети до 3-ох плиток з будь-якої місцевості чи будівлі.
block.phase-conveyor.description = Покращений блок транспорту елементів. Використовує енергію для телепортування елементів на під’єднаний фазовий конвеєр через кілька плиток.
-block.sorter.description = Сортує предмети. Якщо елемент відповідає вибраному, його можна передати. В іншому випадку елемент виводиться зліва та справа.
+block.sorter.description = Сортує предмети. Якщо елемент відповідає вибраному, його можна передати. В іншому випадку елемент виводиться зліва та/чи справа.
block.inverted-sorter.description = Обробляє елементи, як звичайний сортувальник, але виводить обрані елементи на сторони.
block.router.description = Приймає елементи з одного напрямку та виводить їх до трьох інших напрямків порівну. Корисно для поділу матеріалів від одного джерела до кількох цілей.\n\n[scarlet]Ніколи не використовуйте поруч із входами до механізмів, оскільки вони будуть забиті вихідними предметами.[]
-block.distributor.description = Розширений маршрутизатор. Розділяє предмети до 7 інших напрямків порівну.
-block.overflow-gate.description = Виходи лише вліво і вправо, якщо передній шлях заблокований.
-block.underflow-gate.description = Повна протилежність надмірному затвору. Виводить предмет прямо, якщо лівий і/чи правий шлях заблоковано.
-block.mass-driver.description = Кінцевий елемент транспортного блоку. Збирає кілька предметів, а потім вистрілює їх до іншої електромагнитної катапульти на великій відстані. Для роботи потрібна енергія.
-block.mechanical-pump.description = Недорогий насос з повільним виходом, але без енергоспоживання.
+block.distributor.description = Поліпшений маршрутизатор. Розділяє предмети до 7 інших напрямків порівну.
+block.overflow-gate.description = Вивантажує лише вліво та/або вправо, якщо передній шлях заблокований.
+block.underflow-gate.description = Повна протилежність надмірному затвору. Виводить предмет прямо, якщо лівий та/або правий шлях заблоковано.
+block.mass-driver.description = Найкращий блок для транспортування предметів. Збирає кілька предметів, а потім вистрілює їх до іншої електромагнітної катапульти на велику відстань. Для роботи потребує енергія.
+block.mechanical-pump.description = Дешевий насос з повільним виходом, але не потребує енергоспоживання.
block.rotary-pump.description = Удосконалений насос. Насоси більше викачують, але потребують енергію.
block.thermal-pump.description = Найкращий насос.
block.conduit.description = Основний блок транспортування рідини. Пересуває рідини вперед. Застосовується спільно з насосами та іншими трубопроводами.
-block.pulse-conduit.description = Вдосконалений блок транспортування рідини. Транспортує рідини швидше і зберігає більше, ніж стандартні трубопроводи.
-block.plated-conduit.description = Переміщує рідини з тією ж швидкістю, як і імпульсні трубопроводи, але має більше міцності. Не приймає рідин з боків окрім інших трубопроводів.\nПротікає менше.
+block.pulse-conduit.description = Удосконалений блок транспортування рідини. Швидше транспортує і більше зберігає рідини, ніж стандартні трубопроводи.
+block.plated-conduit.description = Переміщує рідини з тією ж швидкістю, що й імпульсні трубопроводи, але має більше міцності. Не приймає рідин з боків окрім інших трубопроводів.\nПротікає менше.
block.liquid-router.description = Приймає рідини з одного напрямку та виводить їх до трьох інших напрямків порівну. Також можна зберігати певну кількість рідини. Корисно для розщеплення рідин від одного джерела до кількох мішеней.
block.liquid-tank.description = Зберігає велику кількість рідини. Використовуйте для створення буферів у ситуаціях з непостійним попитом на матеріали або як гарантію охолодження життєво важливих блоків.
-block.liquid-junction.description = Діє як міст для двох каналів перетину. Корисно в ситуаціях, коли два різні трубопроводи перевозять різні рідини в різні місця.
-block.bridge-conduit.description = Розширений блок транспортування рідини. Дозволяє транспортувати рідину до 3 плиток будь-якої місцевості чи будівлі.
-block.phase-conduit.description = Розширений блок транспортування рідини. Використовує енергію для транспортування рідин до приєднаного фазового каналу через декілька плиток.
+block.liquid-junction.description = Діє як міст для двох каналів, що перетинаються. Корисно в ситуаціях, коли два різні трубопроводи транспортують різні рідини в різні місця.
+block.bridge-conduit.description = Удосконалений блок транспортування рідини. Дозволяє транспортувати рідину до 3 плиток будь-якої місцевості чи будівлі.
+block.phase-conduit.description = Удосконалений блок транспортування рідини. Використовує енергію для транспортування рідин до приєднаного фазового каналу через декілька плиток.
block.power-node.description = Передає живлення на приєднані вузли. Вузол буде отримувати живлення від будь-яких сусідніх блоків або подавати живлення до них.
-block.power-node-large.description = Удосконалений вузол живлення з більшим діапазоном.
-block.surge-tower.description = Надзвичайно дальний вузол живлення з меншою кількістю доступних з’єднань.
+block.power-node-large.description = Поліпшений вузол живлення з більшим радіусом дії.
+block.surge-tower.description = Вузол живлення з меншою кількістю доступних з’єднань і з найбільшим радіусом дії.
block.diode.description = Живлення акумулятора може протікати через цей блок лише в одному напрямку, але лише в тому випадку, якщо інша сторона має менше енергії.
block.battery.description = Зберігає енергію як буфер в часи надлишкової енергії. Виводить енергію у періоди дефіциту.
block.battery-large.description = Зберігає набагато більше енергії, ніж звичайний акумулятор.
block.combustion-generator.description = Виробляє енергію, спалюючи легкозаймисті матеріали, такі як вугілля.
block.thermal-generator.description = Генерує енергію при розміщенні в спекотних місцях.
block.turbine-generator.description = Удосконалений генератор згоряння. Більш ефективний, але потребує додаткової води для отримання пари.
-block.differential-generator.description = Удосконалений генератор згоряння. Більш ефективна, але вимагає додаткової води для генерування пари. Виробляє велику кількість енергії. Використовує різницю температур між кріогеннВиробляє значну кількість енергії з торію. Вимагає постійного охолодження. Вибухне сильно, якщо подаватиметься недостатньо кількості теплоносія. Вихідна потужність залежить від повноти, базова енергія генерується на повній потужності.ою рідиною і піратитом, що горить.
-block.rtg-generator.description = Простий, надійний генератор. Використовує тепло радіоактивних сполук, які розкладаються, для отримання енергії з повільною швидкістю.
+block.differential-generator.description = Удосконалений генератор згоряння. Використовує різницю температур між кріогенною рідиною і піротитом, що горить.
+block.rtg-generator.description = Простий і надійний генератор. Використовує тепло радіоактивних сполук, які розкладаються, для отримання енергії з повільною швидкістю.
block.solar-panel.description = Забезпечує невелику кількість енергії від сонця.
block.solar-panel-large.description = Значно ефективніша версія стандартної сонячної панелі.
-block.thorium-reactor.description = Виробляє значну кількість енергії з торію. Вимагає постійного охолодження. Вибухне сильно, якщо подаватиметься недостатньо кількості теплоносія. Вихідна потужність залежить від повноти, базова потужність генерується на повній потужності.
+block.thorium-reactor.description = Виробляє значну кількість енергії з торію. Вимагає постійного охолодження. Сильно вибухне, якщо подаватиметься недостатня кількість теплоносія. Вихідна потужність залежить від заповненості, базова потужність генерується на повній потужності.
block.impact-reactor.description = Удосконалений генератор, здатний створювати величезну кількість енергії при максимальній ефективності. Для запуску процесу потрібно значні обсяги енергії.
-block.mechanical-drill.description = Недорогий бур. Розміщуючи їх на відповідних плитках, виводить предмети повільним темпом нескінченно. Здатний видобувати лише мідь, свинець і вугілля.
-block.pneumatic-drill.description = Вдосконалений бур, здатний добувати титан. Шахти швидше, ніж механічна дриль.
-block.laser-drill.description = Дозволяє виконувати свердління ще швидше за допомогою лазерної технології, але вимагає енергії. Здатний до видобутку торію.
-block.blast-drill.description = Кінцева дриль. Потрібна велика кількість енергії.
+block.mechanical-drill.description = Недорогий бур. Якщо розмістити на доречних плитках, то буде виводити предмети повільним темпом нескінченно. Здатний видобувати мідь, свинець і вугілля.
+block.pneumatic-drill.description = Поліпшений бур, здатний добувати титан. Видобуває швидше, ніж механічний бур.
+block.laser-drill.description = Дозволяє виконувати буріння ще швидше за допомогою лазерної технології, але вимагає енергії. Здатний до видобутку торію.
+block.blast-drill.description = Найкращий бур. Потрібна велика кількість енергії.
block.water-extractor.description = Видобуває підземні води. Використовується в місцях, де немає поверхневої води.
block.cultivator.description = Культивує невеликі концентрації спор в атмосфері на готові до промисловості стручки.
block.oil-extractor.description = Для видобутку нафти використовується велика кількість енергії, піску та води.
-block.core-shard.description = Перша ітерація капсули ядра. Після знищення всі контакти з регіоном втрачаються. Не допускайте цього.
-block.core-foundation.description = Друга версія ядра. Краще броньований. Зберігає більше ресурсів.
-block.core-nucleus.description = Третя і остання ітерація капсули ядра. Надзвичайно добре броньований. Зберігає величезні обсяги ресурсів.
-block.vault.description = Зберігає велику кількість предметів кожного типу. Блок розвантажувача може використовуватися для отримання предметів із сховища.
-block.container.description = Зберігає велику кількість предметів кожного типу. Блок розвантажувача може використовуватися для отримання предметів із сховища.
+block.core-shard.description = Найперша версія капсули ядра. Після його знищення всі контакти з регіоном втрачаються. Не допустіть цього.
+block.core-foundation.description = Друга версія ядра. Краще броньована. Зберігає більше ресурсів.
+block.core-nucleus.description = Третя й остання версія капсули ядра. Надзвичайно добре броньована. Зберігає величезні обсяги ресурсів.
+block.vault.description = Зберігає велику кількість предметів кожного типу. Блок розвантажувача може використовуватися для отримання предметів зі сховища.
+block.container.description = Зберігає малу кількість предметів кожного типу. Блок розвантажувача може використовуватися для отримання предметів зі сховища.
block.unloader.description = Вивантажує предмети з блока, який не переміщує предмети, на конвеєр або безпосередньо в сусідній блок. Тип предмета для завантаження можна змінити, натиснувши на блок.
-block.launch-pad.description = Запускає партії предметів без необхідності запуску ядра.
-block.launch-pad-large.description = Покращена версія стартового майданчика. Зберігає більше предметів. Запускається частіше.
-block.duo.description = Невелика дешева башта. Корисна проти наземних одиниць.
+block.launch-pad.description = Запускає партії предметів без необхідності запуску ядра. Стартовий майданчик дозволяє вам запускати ресурси кожні n секунд без необхідності завершувати гру. Просто подайте у нього ресурси і забезпечте енергією.
+block.launch-pad-large.description = Поліпшена версія стартового майданчика. Зберігає більше предметів. Запускається частіше.
+block.duo.description = Мала і дешева башта. Корисна проти наземних одиниць.
block.scatter.description = Основна протиповітряна башта. Розпилює грудочки свинцю або металобрухту у ворогів.
-block.scorch.description = Спалює будь-яких наземних ворогів поблизу. Висока ефективність на близькій відстані.
-block.hail.description = Невелика артилерійська башта далекої дальності.
-block.wave.description = Вежа середньої величини. Стріляє потоками рідини в ворогів. Автоматично гасить пожежі при постачанні води.
-block.lancer.description = Лазерна башта середнього розміру проти наземних ворогів. Заряджає і вистрілює потужні пучки енергії.
-block.arc.description = Невелика електрична башта ближнього замикання. Стріляє дугами електрики у ворогів.
-block.swarmer.description = Ракетна башта середнього розміру. Атакує як повітряних, так і наземних ворогів. Запускад самонаведені ракети.
+block.scorch.description = Підпалює будь-яких наземних ворогів поблизу. Високоефективна на близькій відстані.
+block.hail.description = Невелика артилерійська башта з далеким радіусом дії.
+block.wave.description = Башта середнього розміру. Стріляє потоками рідини в ворогів. Автоматично гасить пожежі при постачанні води.
+block.lancer.description = Лазерна башта середнього розміру, яка атакує наземних ворогів. Заряджає і вистрілює потужні пучки енергії.
+block.arc.description = Невелика електрична башта з малим радіусом дії. Стріляє дугами електрики у ворогів.
+block.swarmer.description = Ракетна башта середнього розміру. Атакує як повітряних, так і наземних ворогів. Запускає ракети, які летять у ворогів самостійно.
block.salvo.description = Більш велика, вдосконалена версія башти «Подвійна». Вистрілює швидкий залп куль у ворога.
-block.fuse.description = Велика енергетична башта з малим радіусом дії. Стріляє трьома пронизливими променями на ворогів, що знаходяться поблизу.
+block.fuse.description = Велика енергетична башта з малим радіусом дії. Стріляє трьома пронизливими променями на найближчих ворогів.
block.ripple.description = Надзвичайно потужна артилерійська башта. На великі відстані стріляє скупченнями снарядів у ворогів.
block.cyclone.description = Велика протиповітряна та протиземна башта. Підпалює вибухонебезпечними грудками скупчення ворогів.
block.spectre.description = Масивна двоствольна гармата. Стріляє великими бронебійними кулями в повітряні та наземні цілі.
-block.meltdown.description = Масивна лазерна гармата. Заряджає і стріляє стійким лазерним променем у сусідніх ворогів. Для роботи потрібен теплоносій.
-block.command-center.description = Наказує бойовим одиницям пересуватися по всій мапі.\nНаявні команди: патрулювання, атакувати вороже ядро, відступити до ядра/заводу. Якщо ворожого ядра немає, то бойові одиниці будуть патрулювати за замовчуванням, коли була застосована команда атакувати.
+block.meltdown.description = Масивна лазерна гармата. Заряджає і стріляє лазерним променем у найближчих ворогів. Для роботи потрібен теплоносій.
+block.command-center.description = Наказує бойовим одиницям пересуватися по всій мапі.\nНаявні команди: патрулювання, атакувати вороже ядро, відступити до ядра/заводу. Якщо ворожого ядра немає, то бойові одиниці будуть патрулювати за замовчуванням при застосуванні команди «атакувати».
block.draug-factory.description = Виробляє дронів, які видобувають ресурси.
block.spirit-factory.description = Виробляє дронів, які ремонтують блоки.
-block.phantom-factory.description = Виробляє дронів, які допомогають у будівництві.
+block.phantom-factory.description = Виробляє дронів, які допомагають у будівництві.
block.wraith-factory.description = Виробляє швидких перехоплювачів, які використовують тактику «стріляй і біжи».
block.ghoul-factory.description = Виробляє важкокилимових бомбардувальників.
block.revenant-factory.description = Виробляє важких ракетних одиниць.
block.dagger-factory.description = Виробляє початкових наземних одиниць.
-block.crawler-factory.description = Виробляє швидких і самовибухових одиниць.
+block.crawler-factory.description = Виробляє швидких одиниць, які вибухають при контакті з ворогом.
block.titan-factory.description = Виробляє поліпшених наземних одиниць.
block.fortress-factory.description = Виробляє важкоартилерійних наземних одиниць.
-block.repair-point.description = Безперервно лікує найближчу пошкоджену бойову одиницю, що знаходиться поруч.
-block.dart-mech-pad.description = Забезпечує перетворення в основий атакуючий мех.\nВикористовуйте, натиснувши, коли стоїте на ньому.
-block.delta-mech-pad.description = Забезпечує перетворення в легкоброньований атакуючий мех.\nВикористовуйте, натиснувши, коли стоїте на ньому.
-block.tau-mech-pad.description = Забезпечує перетворення в поліпшений мех підтримки.\nВикористовуйте, натиснувши, коли стоїте на ньому.
-block.omega-mech-pad.description = Забезпечує перетворення в тяжкоброньований ракетний мех.\nВикористовуйте, натиснувши, коли стоїте на ньому.
-block.javelin-ship-pad.description = Забезпечує перетворення в швидкий, легкоброньований перехоплювач.\nВикористовуйте, натиснувши, коли стоїте на ньому.
-block.trident-ship-pad.description = Забезпечує перетворення в тяжкий бомбардувальник.\nВикористовуйте, натискаючи, стоячи на ньому.
-block.glaive-ship-pad.description = Забезпечує перетворення в великий добреброньований корабель зі зроєю.\nВикористовуйте, натиснувши, коли стоїте на ньому.
+block.repair-point.description = Безперервно лікує найближчу пошкоджену бойову одиницю.
+block.dart-mech-pad.description = Забезпечує перетворення в основний атакуючий мех.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.delta-mech-pad.description = Забезпечує перетворення в легко броньований атакуючий мех.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.tau-mech-pad.description = Забезпечує перетворення в поліпшений мех підтримки.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.omega-mech-pad.description = Забезпечує перетворення в тяжко броньований ракетний мех.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.javelin-ship-pad.description = Забезпечує перетворення в швидкий, легко броньований перехоплювач.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.trident-ship-pad.description = Забезпечує перетворення в тяжкий бомбардувальник.\nДля використання натисніть на нього, коли стоїте на ньому.
+block.glaive-ship-pad.description = Забезпечує перетворення в великий добре броньований озброєний корабель.\nДля використання натисніть на нього, коли стоїте на ньому.
diff --git a/core/assets/bundles/bundle_zh_CN.properties b/core/assets/bundles/bundle_zh_CN.properties
index db38a26842..bb89ba513c 100644
--- a/core/assets/bundles/bundle_zh_CN.properties
+++ b/core/assets/bundles/bundle_zh_CN.properties
@@ -105,6 +105,7 @@ mods.none = [LIGHT_GRAY]没有找到模组!
mods.guide = 模组教程
mods.report = 报告 Bug
mods.openfolder = 打开模组文件夹
+mod.display = [gray]模组:[orange] {0}
mod.enabled = [lightgray]已启用
mod.disabled = [scarlet]已禁用
mod.disable = 禁用
@@ -171,6 +172,11 @@ hosts.discovering.any = 正在搜索服务器
server.refreshing = 正在刷新服务器
hosts.none = [lightgray]未发现局域网游戏!
host.invalid = [scarlet]无法连接服务器。
+
+servers.local = 本地服务器
+servers.remote = 远程服务器
+servers.global = 全球服务器
+
trace = 跟踪玩家
trace.playername = 玩家名称:[accent]{0}
trace.ip = IP 地址:[accent]{0}
@@ -252,6 +258,7 @@ copylink = 复制链接
back = 返回
data.export = 导出数据
data.import = 导入数据
+data.openfolder = 打开数据文件夹
data.exported = 数据已导出。
data.invalid = 非有效游戏数据。
data.import.confirm = 导入外部游戏数据将覆盖本地[scarlet]全部[]的游戏数据。\n[accent]此操作无法撤销![]\n\n数据导入后将自动退出游戏。
@@ -532,6 +539,8 @@ error.crashtitle = 发生了一个错误
blocks.input = 输入
blocks.output = 输出
blocks.booster = 增强物品/液体
+blocks.tiles = 所需地型
+blocks.affinities = 相关
block.unknown = [lightgray]???
blocks.powercapacity = 能量容量
blocks.powershot = 能量/发射
@@ -666,6 +675,7 @@ setting.mutesound.name = 无音效
setting.crashreport.name = 发送匿名的崩溃报告
setting.savecreate.name = 自动创建存档
setting.publichost.name = 游戏公开可见
+setting.playerlimit.name = 玩家限制
setting.chatopacity.name = 聊天界面不透明度
setting.lasersopacity.name = 能量激光不透明度
setting.bridgeopacity.name = 桥梁不透明度
diff --git a/core/assets/bundles/bundle_zh_TW.properties b/core/assets/bundles/bundle_zh_TW.properties
index 5a9da9dddf..c7452aceb6 100644
--- a/core/assets/bundles/bundle_zh_TW.properties
+++ b/core/assets/bundles/bundle_zh_TW.properties
@@ -39,7 +39,6 @@ be.check = 檢查是否有新的更新
schematic = 藍圖
schematic.add = 儲存藍圖...
schematics = 藍圖
-schematic.replace = 具有該名稱的藍圖已經存在。是否要取代它?
schematic.import = 匯入藍圖...
schematic.exportfile = 匯出檔案
schematic.importfile = 匯入檔案
@@ -59,6 +58,7 @@ stat.built = 建設的建築:[accent]{0}
stat.destroyed = 摧毀的建築:[accent]{0}
stat.deconstructed = 拆除的建築:[accent]{0}
stat.delivered = 發射的核心資源:
+stat.playtime = 遊玩時間:[accent] {0}
stat.rank = 最終排名:[accent]{0}
launcheditems = [accent]已發射的物品
@@ -159,7 +159,7 @@ server.kicked.gameover = 遊戲結束!
server.kicked.serverRestarting = 伺服器正在重新啟動。
server.versions = 您的遊戲版本:[accent] {0}[]\n伺服器遊戲版本:[accent] {1}[]
host.info = [accent]建立伺服器[]按鍵會在連接埠[scarlet]6567[]建立一個伺服器。\n所有跟您在同一個[lightgray]網路或區域網路[]環境的玩家應該能在他們的伺服器清單中找到您的伺服器。\n\n如果您希望網際網路上的玩家透過IP 位址連線到您的伺服器,您必須設定[accent]連接埠轉發[]。\n\n[lightgray]注意:如果區域網路內有玩家無法連線至您的伺服器,請務必確認您已於防火牆設定中開放Mindustry存取您的區域網路。請注意公共網路有時不允許搜尋伺服器。
-join.info = 您可以在此輸入欲連線的[accent]伺服器IP位址[],或尋找[accent]區域網路[]內的伺服器。目前支援區域網路與網際網路連線。\n\n[lightgray]注意:並沒有自動的網際網路伺服器清單,如果您想透過IP位址連線到他人的伺服器,您必須向他們詢問IP位址。
+join.info = 您可以在此輸入欲連線的[accent]伺服器IP位址[],或尋找[accent]區域網路[]/[accent]全域網路[]內的伺服器。目前支援區域網路與網際網路連線。\n\n[lightgray]如果您想透過IP位址連線到他人的伺服器,您必須向他們詢問IP位址。自己的IP位置可以從google上搜尋到。
hostserver = 建立伺服器
invitefriends = 邀請好友
hostserver.mobile = 建立\n伺服器
@@ -171,6 +171,11 @@ hosts.discovering.any = 搜尋遊戲
server.refreshing = 伺服器刷新中
hosts.none = [lightgray]找不到區域網路伺服器!
host.invalid = [scarlet]無法連線至伺服器。
+
+servers.local = 區域伺服器
+servers.remote = 遠端伺服器
+servers.global = 全域伺服器
+
trace = 追蹤玩家
trace.playername = 玩家名稱:[accent]{0}
trace.ip = IP:[accent]{0}
@@ -502,7 +507,7 @@ zone.saltFlats.description = 鹽沼毗連著沙漠。在這裡幾乎找不到多
zone.craters.description = 這個殞坑中心積蓄著水。這是一場舊戰爭的遺跡。奪回該地區。收集沙子。燒製玻璃。抽水來冷卻砲塔和鑽頭。
zone.ruinousShores.description = 穿過荒地,就是海岸線。這個地點曾經駐紮了海防陣線。現在它們已經所剩無幾。只有最基本的防禦結構沒有被破壞,其他的一切都成了殘骸。\n繼續向外擴張。重新發現那些科技。
zone.stainedMountains.description = 內陸的更深處是群山,還未被孢子所污染。\n提取在該區域蘊藏豐富的鈦,並學習如何使用它們。\n\n這裡的存在著更為強大的敵人。不要給他們時間派出最強的部隊。
-zone.overgrowth.description = 這個地區更靠近孢子的來源,因此已經生長過度了。\n敵人在這裡建立了哨所。建立泰坦機甲。破壞它,並取回失去的東西。
+zone.overgrowth.description = 這個地區更靠近孢子的來源,因此已經生長過度了。\n敵人在這裡建立了哨所。建立泰坦機甲。破壞它,並取回失落的事物。
zone.tarFields.description = 位於山脈和沙漠之間的產油區外緣是少數幾個有可用焦油儲量的地區之一。\n雖然被遺棄了,該地區附近還是有著一些危險的敵人。不要低估它們。\n\n[lightgray]如果可能的話,研究原油加工技術。
zone.desolateRift.description = 一個非常危險的區域。資源豐富,但空間很小。毀滅的風險很高。請盡快離開。不要被敵人攻擊之間的長時間間隔所欺騙。
zone.nuclearComplex.description = 以前生產和加工釷的設施已變成廢墟。\n[lightgray]研究釷及其多種用途。\n\n敵人在這裡的數量眾多,不斷的偵查入侵者。
@@ -524,7 +529,7 @@ settings.clear.confirm = 您確定要清除數據嗎?\n此操作無法撤回!
settings.clearall.confirm = [scarlet]警告![]\n這將清除所有數據,包括存檔、地圖、解鎖和熱鍵綁定。\n按「是」後,遊戲將刪除所有數據並自動退出。
paused = [accent]〈已暫停〉
clear = 清除
-banned = [scarlet]Banned
+banned = [scarlet]已被封禁
yes = 是
no = 否
info.title = 資訊
@@ -658,7 +663,7 @@ setting.borderlesswindow.name = 無邊框窗口[lightgray](可能需要重啟
setting.fps.name = 顯示FPS與Ping
setting.blockselectkeys.name = 顯示方塊選擇快捷鍵
setting.vsync.name = 垂直同步
-setting.pixelate.name = 像素化[lightgray](會關閉動畫)
+setting.pixelate.name = 像素化
setting.minimap.name = 顯示小地圖
setting.position.name = 顯示玩家位置
setting.musicvol.name = 音樂音量
@@ -783,6 +788,7 @@ rules.title.unit = 單位
rules.title.experimental = 實驗中
rules.lighting = 光照
rules.ambientlight = 環境光照
+rules.solarpowermultiplier = 太陽能倍數
content.item.name = 物品
content.liquid.name = 液體
@@ -1176,7 +1182,7 @@ block.bridge-conveyor.description = 高級的物品運輸方塊。允許跨過
block.phase-conveyor.description = 高級物品傳輸方塊。使用能量將物品傳送到幾個方塊外連接的相織輸送帶。
block.sorter.description = 對物品進行分類。如果物品與所選種類匹配,則允許其通過。否則,物品將從左邊和右邊輸出。
block.inverted-sorter.description = 處理物品的方式類似於分類器,但將所選擇的物品輸出到側面。
-block.router.description = 接受來自一個方向的物品並將它們平均輸出到最多3個其他方向。用於將物品從一個來源分割為多個目標。\n\n[[scarlet]]不建議緊貼在生產型方塊旁使用,可能導致其被產出堵塞。[]
+block.router.description = 接受來自一個方向的物品並將它們平均輸出到最多3個其他方向。用於將物品從一個來源分割為多個目標。\n\n[[scarlet]不建議緊貼在生產型方塊旁使用,可能導致其被產出堵塞。[]
block.distributor.description = 高級的分配器,可將物品均分到最多7個其他方向。
block.overflow-gate.description = 如果前面被阻擋,則向左邊和右邊輸出物品。
block.underflow-gate.description = 反向的溢流器。如果側面被阻擋,則向前方輸出物品。
@@ -1201,7 +1207,7 @@ block.battery-large.description = 比普通電池存儲更多的能量。
block.combustion-generator.description = 透過燃燒原油或可燃物品以產生能量。
block.thermal-generator.description = 放置在熱的位置時會產生能量。
block.turbine-generator.description = 比燃燒發電機更有效率,但需要水才能運作。
-block.differential-generator.description = 產生大量能量。利用冷卻液和燃燒的火焰彈之間的溫差產生大量的能量。
+block.differential-generator.description = 利用冷卻液和燃燒火焰彈之間的溫差產生大量的能量。
block.rtg-generator.description = 一種簡單、可靠的發電機,不需要冷卻,但產生的能量比釷反應堆少。
block.solar-panel.description = 透過太陽產生少量的能量。
block.solar-panel-large.description = 比標準太陽能板產生更多的能量,但建造起來昂貴得多。
diff --git a/core/assets/contributors b/core/assets/contributors
index afe1bc3b45..76ffbb2736 100644
--- a/core/assets/contributors
+++ b/core/assets/contributors
@@ -85,3 +85,4 @@ Draco
Quezler
Alicila
Daniel Dusek
+DeltaNedas
diff --git a/core/assets/fonts/font.ttf b/core/assets/fonts/font.ttf
index 9d7390954d..915f1dfe54 100644
Binary files a/core/assets/fonts/font.ttf and b/core/assets/fonts/font.ttf differ
diff --git a/core/assets/fonts/fontello.ttf b/core/assets/fonts/fontello.ttf
deleted file mode 100644
index 7eaf076f22..0000000000
Binary files a/core/assets/fonts/fontello.ttf and /dev/null differ
diff --git a/core/assets/scripts/base.js b/core/assets/scripts/base.js
index 9c06bed19c..3721b5b165 100755
--- a/core/assets/scripts/base.js
+++ b/core/assets/scripts/base.js
@@ -2,6 +2,11 @@ const log = function(context, obj){
Vars.mods.getScripts().log(context, obj ? String(obj) : "null")
}
+var scriptName = "base.js"
+var modName = "none"
+
+const print = text => log(scriptName, text);
+
const extendContent = function(classType, name, params){
return new JavaAdapter(classType, params, name)
}
diff --git a/core/assets/scripts/global.js b/core/assets/scripts/global.js
index 22d746b420..4f11bd4fed 100755
--- a/core/assets/scripts/global.js
+++ b/core/assets/scripts/global.js
@@ -4,6 +4,11 @@ const log = function(context, obj){
Vars.mods.getScripts().log(context, obj ? String(obj) : "null")
}
+var scriptName = "base.js"
+var modName = "none"
+
+const print = text => log(scriptName, text);
+
const extendContent = function(classType, name, params){
return new JavaAdapter(classType, params, name)
}
@@ -15,66 +20,70 @@ const extend = function(classType, params){
const run = method => new java.lang.Runnable(){run: method}
const boolf = method => new Boolf(){get: method}
const boolp = method => new Boolp(){get: method}
+const floatf = method => new Floatf(){get: method}
+const floatp = method => new Floatp(){get: method}
const cons = method => new Cons(){get: method}
const prov = method => new Prov(){get: method}
+const func = method => new Func(){get: method}
const newEffect = (lifetime, renderer) => new Effects.Effect(lifetime, new Effects.EffectRenderer({render: renderer}))
Call = Packages.mindustry.gen.Call
const Calls = Call //backwards compat
-importPackage(Packages.arc)
-importPackage(Packages.arc.func)
-importPackage(Packages.arc.graphics)
-importPackage(Packages.arc.graphics.g2d)
-importPackage(Packages.arc.math)
+
importPackage(Packages.arc.math.geom)
-importPackage(Packages.arc.scene)
-importPackage(Packages.arc.scene.actions)
-importPackage(Packages.arc.scene.event)
-importPackage(Packages.arc.scene.style)
-importPackage(Packages.arc.scene.ui)
-importPackage(Packages.arc.scene.ui.layout)
-importPackage(Packages.arc.scene.utils)
-importPackage(Packages.arc.struct)
-importPackage(Packages.arc.util)
-importPackage(Packages.mindustry)
-importPackage(Packages.mindustry.ai)
-importPackage(Packages.mindustry.content)
-importPackage(Packages.mindustry.core)
-importPackage(Packages.mindustry.ctype)
-importPackage(Packages.mindustry.editor)
-importPackage(Packages.mindustry.entities)
-importPackage(Packages.mindustry.entities.bullet)
-importPackage(Packages.mindustry.entities.effect)
-importPackage(Packages.mindustry.entities.traits)
-importPackage(Packages.mindustry.entities.type)
-importPackage(Packages.mindustry.entities.type.base)
-importPackage(Packages.mindustry.entities.units)
-importPackage(Packages.mindustry.game)
-importPackage(Packages.mindustry.gen)
importPackage(Packages.mindustry.graphics)
-importPackage(Packages.mindustry.input)
-importPackage(Packages.mindustry.maps)
-importPackage(Packages.mindustry.maps.filters)
-importPackage(Packages.mindustry.maps.generators)
-importPackage(Packages.mindustry.maps.zonegen)
-importPackage(Packages.mindustry.type)
-importPackage(Packages.mindustry.ui)
importPackage(Packages.mindustry.ui.dialogs)
-importPackage(Packages.mindustry.ui.fragments)
-importPackage(Packages.mindustry.ui.layout)
-importPackage(Packages.mindustry.world)
-importPackage(Packages.mindustry.world.blocks)
-importPackage(Packages.mindustry.world.blocks.defense)
-importPackage(Packages.mindustry.world.blocks.defense.turrets)
-importPackage(Packages.mindustry.world.blocks.distribution)
importPackage(Packages.mindustry.world.blocks.liquid)
-importPackage(Packages.mindustry.world.blocks.logic)
+importPackage(Packages.mindustry.world.blocks)
+importPackage(Packages.arc.scene.event)
+importPackage(Packages.arc.scene.actions)
+importPackage(Packages.mindustry.gen)
+importPackage(Packages.arc.struct)
+importPackage(Packages.mindustry.world.blocks.defense.turrets)
+importPackage(Packages.mindustry.game)
+importPackage(Packages.arc.graphics)
+importPackage(Packages.mindustry.ui.fragments)
+importPackage(Packages.mindustry.ui)
importPackage(Packages.mindustry.world.blocks.power)
-importPackage(Packages.mindustry.world.blocks.production)
-importPackage(Packages.mindustry.world.blocks.sandbox)
-importPackage(Packages.mindustry.world.blocks.storage)
-importPackage(Packages.mindustry.world.blocks.units)
-importPackage(Packages.mindustry.world.consumers)
+importPackage(Packages.mindustry.entities.traits)
+importPackage(Packages.mindustry.entities.effect)
+importPackage(Packages.arc.math)
+importPackage(Packages.arc.scene.ui)
+importPackage(Packages.mindustry.world.blocks.defense)
+importPackage(Packages.mindustry.ctype)
+importPackage(Packages.mindustry.entities.type)
importPackage(Packages.mindustry.world.meta)
+importPackage(Packages.arc.func)
+importPackage(Packages.mindustry.editor)
+importPackage(Packages.mindustry.entities.units)
+importPackage(Packages.mindustry.maps.filters)
+importPackage(Packages.mindustry.world)
+importPackage(Packages.arc.scene.utils)
+importPackage(Packages.mindustry.maps.generators)
+importPackage(Packages.mindustry.world.blocks.distribution)
+importPackage(Packages.mindustry.entities.bullet)
+importPackage(Packages.mindustry.content)
importPackage(Packages.mindustry.world.meta.values)
+importPackage(Packages.mindustry.world.blocks.production)
+importPackage(Packages.arc)
+importPackage(Packages.mindustry.world.blocks.units)
+importPackage(Packages.mindustry.core)
+importPackage(Packages.mindustry.world.consumers)
+importPackage(Packages.mindustry.entities.type.base)
+importPackage(Packages.arc.scene.ui.layout)
+importPackage(Packages.mindustry.type)
+importPackage(Packages.mindustry.input)
+importPackage(Packages.mindustry.entities)
+importPackage(Packages.arc.scene.style)
+importPackage(Packages.mindustry.world.blocks.sandbox)
+importPackage(Packages.mindustry.ui.layout)
+importPackage(Packages.mindustry.maps.zonegen)
+importPackage(Packages.arc.graphics.g2d)
+importPackage(Packages.mindustry.ai)
importPackage(Packages.mindustry.world.modules)
+importPackage(Packages.mindustry.world.blocks.storage)
+importPackage(Packages.arc.scene)
+importPackage(Packages.mindustry.maps)
+importPackage(Packages.mindustry.world.blocks.logic)
+importPackage(Packages.arc.util)
importPackage(Packages.mindustry.world.producers)
+importPackage(Packages.mindustry)
diff --git a/core/assets/scripts/wrapper.js b/core/assets/scripts/wrapper.js
deleted file mode 100755
index 0c7a8aba4d..0000000000
--- a/core/assets/scripts/wrapper.js
+++ /dev/null
@@ -1,10 +0,0 @@
-modName = "$MOD_NAME$"
-
-!function(){
-
-const scriptName = "$SCRIPT_NAME$"
-const print = text => log(scriptName, text);
-$CODE$
-
-}();
-
diff --git a/core/assets/sprites/block_colors.png b/core/assets/sprites/block_colors.png
index 0771587db8..787e94528c 100644
Binary files a/core/assets/sprites/block_colors.png and b/core/assets/sprites/block_colors.png differ
diff --git a/core/assets/sprites/sprites.atlas b/core/assets/sprites/sprites.atlas
index d532d5f0d2..9e6cc7c0f1 100644
--- a/core/assets/sprites/sprites.atlas
+++ b/core/assets/sprites/sprites.atlas
@@ -6,5838 +6,5852 @@ filter: Nearest,Nearest
repeat: none
force-projector-top
rotate: false
- xy: 619, 340
+ xy: 619, 241
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
mend-projector-top
rotate: false
- xy: 1077, 662
+ xy: 1011, 463
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
mender-top
rotate: false
- xy: 1481, 747
+ xy: 1421, 414
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
overdrive-projector-top
rotate: false
- xy: 1077, 596
+ xy: 1011, 397
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
shock-mine
rotate: false
- xy: 1492, 849
+ xy: 1489, 236
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-arrow
rotate: false
- xy: 1929, 1139
+ xy: 1251, 330
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conveyor-bridge
rotate: false
- xy: 1328, 1087
+ xy: 1301, 822
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conveyor-end
rotate: false
- xy: 1328, 1053
+ xy: 1335, 828
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
center
rotate: false
- xy: 1328, 1019
+ xy: 1285, 788
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-0-0
rotate: false
- xy: 890, 851
+ xy: 873, 30
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-armored-conveyor-full
rotate: false
- xy: 890, 851
+ xy: 873, 30
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-0-1
rotate: false
- xy: 389, 15
+ xy: 1397, 1212
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-0-2
rotate: false
- xy: 423, 10
+ xy: 1158, 998
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-0-3
rotate: false
- xy: 457, 10
+ xy: 1301, 856
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-1-0
rotate: false
- xy: 491, 10
+ xy: 890, 850
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-1-1
rotate: false
- xy: 525, 10
+ xy: 389, 14
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-1-2
rotate: false
- xy: 559, 10
+ xy: 423, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-1-3
rotate: false
- xy: 593, 10
+ xy: 457, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-2-0
rotate: false
- xy: 627, 12
+ xy: 491, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-2-1
rotate: false
- xy: 661, 12
+ xy: 525, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-2-2
rotate: false
- xy: 911, 11
+ xy: 559, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-2-3
rotate: false
- xy: 945, 11
+ xy: 593, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-3-0
rotate: false
- xy: 695, 10
+ xy: 627, 11
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-3-1
rotate: false
- xy: 729, 10
+ xy: 661, 11
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-3-2
rotate: false
- xy: 763, 10
+ xy: 1408, 1178
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-3-3
rotate: false
- xy: 1158, 1181
+ xy: 1408, 1144
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-4-0
rotate: false
- xy: 1158, 1147
+ xy: 1408, 1110
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-4-1
rotate: false
- xy: 1192, 1181
+ xy: 1408, 1076
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-4-2
rotate: false
- xy: 1158, 1113
+ xy: 1408, 1042
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
armored-conveyor-4-3
rotate: false
- xy: 1192, 1147
+ xy: 1408, 1008
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-0-1
rotate: false
- xy: 1345, 835
+ xy: 1285, 278
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-0-2
rotate: false
- xy: 1345, 801
+ xy: 1285, 244
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-0-3
rotate: false
- xy: 1345, 767
+ xy: 1319, 788
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-1-0
rotate: false
- xy: 1345, 733
+ xy: 1319, 754
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-1-1
rotate: false
- xy: 1345, 699
+ xy: 1319, 720
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-1-2
rotate: false
- xy: 1345, 665
+ xy: 1319, 686
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-1-3
rotate: false
- xy: 1345, 631
+ xy: 1319, 652
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-2-0
rotate: false
- xy: 1345, 597
+ xy: 1319, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-2-1
rotate: false
- xy: 1345, 563
+ xy: 1319, 584
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-2-2
rotate: false
- xy: 1345, 529
+ xy: 1319, 550
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-2-3
rotate: false
- xy: 1345, 495
+ xy: 1319, 516
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-3-0
rotate: false
- xy: 1397, 1175
+ xy: 1319, 482
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-3-1
rotate: false
- xy: 1396, 1141
+ xy: 1319, 448
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-3-2
rotate: false
- xy: 1396, 1107
+ xy: 1319, 414
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-3-3
rotate: false
- xy: 1396, 1073
+ xy: 1319, 380
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-4-0
rotate: false
- xy: 1396, 1039
+ xy: 1319, 346
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-4-1
rotate: false
- xy: 1396, 1005
+ xy: 1319, 312
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-4-2
rotate: false
- xy: 1396, 971
+ xy: 1319, 278
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-4-3
rotate: false
- xy: 1390, 937
+ xy: 1319, 244
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-0-0
rotate: false
- xy: 1481, 509
+ xy: 1387, 192
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-1-0
rotate: false
- xy: 1481, 475
+ xy: 1421, 176
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-2-0
rotate: false
- xy: 1353, 461
+ xy: 1455, 746
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-3-0
rotate: false
- xy: 1353, 427
+ xy: 1455, 712
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-4-0
rotate: false
- xy: 1353, 393
+ xy: 1489, 746
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-5-0
rotate: false
- xy: 1353, 359
+ xy: 1455, 678
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-6-0
rotate: false
- xy: 1353, 325
+ xy: 1489, 712
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-conveyor-7-0
rotate: false
- xy: 1353, 291
+ xy: 1455, 644
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-0-1
rotate: false
- xy: 1515, 781
+ xy: 1455, 168
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-0-2
rotate: false
- xy: 1515, 747
+ xy: 1489, 168
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-0-3
rotate: false
- xy: 1515, 713
+ xy: 1523, 746
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-1-0
rotate: false
- xy: 1515, 679
+ xy: 1523, 712
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-1-1
rotate: false
- xy: 1515, 645
+ xy: 1523, 678
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-1-2
rotate: false
- xy: 1515, 611
+ xy: 1523, 644
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-1-3
rotate: false
- xy: 1515, 577
+ xy: 1523, 610
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-2-0
rotate: false
- xy: 1515, 543
+ xy: 1523, 576
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-2-1
rotate: false
- xy: 1515, 509
+ xy: 1523, 542
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-2-2
rotate: false
- xy: 1515, 475
+ xy: 1523, 508
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-2-3
rotate: false
- xy: 1523, 441
+ xy: 1523, 474
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-3-0
rotate: false
- xy: 1523, 407
+ xy: 1523, 440
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-3-1
rotate: false
- xy: 1523, 373
+ xy: 1523, 406
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-3-2
rotate: false
- xy: 1523, 339
+ xy: 1523, 372
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-3-3
rotate: false
- xy: 1523, 305
+ xy: 1523, 338
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-4-0
rotate: false
- xy: 1523, 271
+ xy: 1523, 304
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-4-1
rotate: false
- xy: 1301, 263
+ xy: 1523, 270
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-4-2
rotate: false
- xy: 1301, 229
+ xy: 1523, 236
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-4-3
rotate: false
- xy: 1301, 195
+ xy: 1523, 202
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
mass-driver-base
rotate: false
- xy: 1939, 1431
+ xy: 758, 848
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
phase-conveyor-arrow
rotate: false
- xy: 1481, 611
+ xy: 1421, 278
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conveyor-bridge
rotate: false
- xy: 1481, 577
+ xy: 1421, 244
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conveyor-end
rotate: false
- xy: 1481, 543
+ xy: 1421, 210
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
underflow-gate
rotate: false
- xy: 1301, 127
+ xy: 1369, 158
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
blast-drill
rotate: false
- xy: 204, 993
+ xy: 204, 992
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
blast-drill-rim
rotate: false
- xy: 334, 993
+ xy: 334, 992
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
blast-drill-rotator
rotate: false
- xy: 477, 1371
+ xy: 477, 1370
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
blast-drill-top
rotate: false
- xy: 413, 1241
+ xy: 413, 1240
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
drill-top
rotate: false
- xy: 1026, 1124
+ xy: 988, 925
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
turbine-generator-liquid
rotate: false
- xy: 1026, 1124
+ xy: 988, 925
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
laser-drill
rotate: false
- xy: 717, 632
+ xy: 717, 533
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
laser-drill-rim
rotate: false
- xy: 717, 534
+ xy: 717, 435
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
laser-drill-rotator
rotate: false
- xy: 717, 436
+ xy: 717, 337
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
laser-drill-top
rotate: false
- xy: 717, 338
+ xy: 717, 239
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
mechanical-drill
rotate: false
- xy: 1011, 662
+ xy: 1077, 661
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
mechanical-drill-rotator
rotate: false
- xy: 1077, 728
+ xy: 1011, 529
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
mechanical-drill-top
rotate: false
- xy: 1011, 596
+ xy: 1077, 595
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
oil-extractor
rotate: false
- xy: 758, 849
+ xy: 749, 750
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
oil-extractor-liquid
rotate: false
- xy: 749, 751
+ xy: 815, 652
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
oil-extractor-rotator
rotate: false
- xy: 815, 653
+ xy: 815, 554
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
oil-extractor-top
rotate: false
- xy: 815, 555
+ xy: 815, 456
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
pneumatic-drill
rotate: false
- xy: 1053, 266
+ xy: 1119, 331
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
pneumatic-drill-rotator
rotate: false
- xy: 1119, 398
+ xy: 1119, 265
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
pneumatic-drill-top
rotate: false
- xy: 1119, 332
+ xy: 1119, 199
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
water-extractor
rotate: false
- xy: 1201, 1431
+ xy: 1201, 1430
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
water-extractor-liquid
rotate: false
- xy: 1201, 1365
+ xy: 1201, 1364
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
water-extractor-rotator
rotate: false
- xy: 1135, 1299
+ xy: 1135, 1298
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
water-extractor-top
rotate: false
- xy: 1267, 1431
+ xy: 1267, 1430
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-border
rotate: false
- xy: 1192, 1113
+ xy: 1370, 938
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-middle
rotate: false
- xy: 1209, 637
+ xy: 1548, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-select
rotate: false
- xy: 1311, 807
+ xy: 1853, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-liquid
rotate: false
- xy: 1328, 985
+ xy: 1285, 550
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
place-arrow
rotate: false
- xy: 815, 457
+ xy: 815, 358
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
rubble-1-0
rotate: false
- xy: 1111, 200
+ xy: 1111, 67
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rubble-1-1
rotate: false
- xy: 1111, 134
+ xy: 1111, 1
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rubble-2-0
rotate: false
- xy: 1111, 68
+ xy: 1003, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rubble-2-1
rotate: false
- xy: 1003, 1388
+ xy: 1003, 1321
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rubble-3-0
rotate: false
- xy: 815, 163
+ xy: 815, 64
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
rubble-3-1
rotate: false
- xy: 815, 163
+ xy: 815, 64
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
rubble-4-0
rotate: false
- xy: 1059, 1497
+ xy: 1059, 1496
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
rubble-4-1
rotate: false
- xy: 1059, 1497
+ xy: 1059, 1496
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
rubble-5-0
rotate: false
- xy: 1876, 1887
+ xy: 1876, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
rubble-5-1
rotate: false
- xy: 1876, 1887
+ xy: 1876, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
rubble-6-0
rotate: false
- xy: 1, 750
+ xy: 1, 749
size: 192, 192
orig: 192, 192
offset: 0, 0
index: -1
rubble-6-1
rotate: false
- xy: 1, 750
+ xy: 1, 749
size: 192, 192
orig: 192, 192
offset: 0, 0
index: -1
rubble-7-0
rotate: false
- xy: 323, 1501
+ xy: 323, 1500
size: 224, 224
orig: 224, 224
offset: 0, 0
index: -1
rubble-7-1
rotate: false
- xy: 323, 1501
+ xy: 323, 1500
size: 224, 224
orig: 224, 224
offset: 0, 0
index: -1
rubble-8-0
rotate: false
- xy: 1, 1147
+ xy: 1, 1146
size: 256, 256
orig: 256, 256
offset: 0, 0
index: -1
rubble-8-1
rotate: false
- xy: 1, 1147
+ xy: 1, 1146
size: 256, 256
orig: 256, 256
offset: 0, 0
index: -1
bridge-conduit-arrow
rotate: false
- xy: 1329, 1189
+ xy: 1251, 296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conveyor-arrow
rotate: false
- xy: 1329, 1189
+ xy: 1251, 296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conduit-bridge
rotate: false
- xy: 1328, 1155
+ xy: 1251, 262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conduit-end
rotate: false
- xy: 1328, 1121
+ xy: 1251, 228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom
rotate: false
- xy: 1362, 1141
+ xy: 1285, 720
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-0
rotate: false
- xy: 1362, 1107
+ xy: 1285, 686
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-1
rotate: false
- xy: 1362, 1073
+ xy: 1285, 652
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-2
rotate: false
- xy: 1362, 1039
+ xy: 1285, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-3
rotate: false
- xy: 1362, 1039
+ xy: 1285, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-4
rotate: false
- xy: 1362, 1039
+ xy: 1285, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-6
rotate: false
- xy: 1362, 1039
+ xy: 1285, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-bottom-5
rotate: false
- xy: 1362, 1005
+ xy: 1285, 584
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-0
rotate: false
- xy: 1322, 951
+ xy: 1285, 516
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-1
rotate: false
- xy: 1322, 917
+ xy: 1285, 482
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-2
rotate: false
- xy: 1322, 883
+ xy: 1285, 448
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-3
rotate: false
- xy: 1362, 971
+ xy: 1285, 414
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-3
rotate: false
- xy: 1362, 971
+ xy: 1285, 414
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-4
rotate: false
- xy: 1356, 937
+ xy: 1285, 380
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-5
rotate: false
- xy: 1356, 903
+ xy: 1285, 346
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conduit-top-6
rotate: false
- xy: 1356, 869
+ xy: 1285, 312
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-overflow-gate
rotate: false
- xy: 1413, 543
+ xy: 1421, 720
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-overflow-gate-top
rotate: false
- xy: 1447, 577
+ xy: 1421, 686
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-router-bottom
rotate: false
- xy: 1413, 509
+ xy: 1421, 652
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-router-liquid
rotate: false
- xy: 1447, 543
+ xy: 1421, 618
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-router-top
rotate: false
- xy: 1447, 509
+ xy: 1421, 584
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-tank-bottom
rotate: false
- xy: 717, 240
+ xy: 717, 141
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
liquid-tank-liquid
rotate: false
- xy: 717, 142
+ xy: 717, 43
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
liquid-tank-top
rotate: false
- xy: 717, 44
+ xy: 1939, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
phase-conduit-arrow
rotate: false
- xy: 1481, 713
+ xy: 1421, 380
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conduit-bridge
rotate: false
- xy: 1481, 679
+ xy: 1421, 346
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conduit-end
rotate: false
- xy: 1481, 645
+ xy: 1421, 312
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-cap
rotate: false
- xy: 1387, 441
+ xy: 1489, 678
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-0
rotate: false
- xy: 1387, 407
+ xy: 1455, 610
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-1
rotate: false
- xy: 1421, 441
+ xy: 1489, 644
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-2
rotate: false
- xy: 1387, 373
+ xy: 1455, 576
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-3
rotate: false
- xy: 1421, 407
+ xy: 1489, 610
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-4
rotate: false
- xy: 1455, 441
+ xy: 1455, 542
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-5
rotate: false
- xy: 1387, 339
+ xy: 1489, 576
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plated-conduit-top-6
rotate: false
- xy: 1421, 373
+ xy: 1455, 508
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-0
rotate: false
- xy: 1387, 305
+ xy: 1455, 474
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-1
rotate: false
- xy: 1421, 339
+ xy: 1489, 508
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-2
rotate: false
- xy: 1455, 373
+ xy: 1455, 440
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-4
rotate: false
- xy: 1421, 305
+ xy: 1489, 474
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-5
rotate: false
- xy: 1455, 339
+ xy: 1455, 406
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulse-conduit-top-6
rotate: false
- xy: 1455, 305
+ xy: 1489, 440
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
battery
rotate: false
- xy: 1226, 1181
+ xy: 1336, 964
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-battery-full
rotate: false
- xy: 1226, 1181
+ xy: 1336, 964
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
battery-large
rotate: false
- xy: 527, 1143
+ xy: 527, 1142
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-battery-large-full
rotate: false
- xy: 527, 1143
+ xy: 527, 1142
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
+battery-large-top
+ rotate: false
+ xy: 1547, 1528
+ size: 96, 96
+ orig: 96, 96
+ offset: 0, 0
+ index: -1
+battery-top
+ rotate: false
+ xy: 1336, 930
+ size: 32, 32
+ orig: 32, 32
+ offset: 0, 0
+ index: -1
combustion-generator-top
rotate: false
- xy: 1363, 1175
+ xy: 1285, 754
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
differential-generator-liquid
rotate: false
- xy: 660, 849
+ xy: 619, 631
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
differential-generator-top
rotate: false
- xy: 619, 632
+ xy: 619, 533
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
diode-arrow
rotate: false
- xy: 1379, 631
+ xy: 1335, 176
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
illuminator-top
rotate: false
- xy: 1379, 495
+ xy: 1335, 40
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
impact-reactor
rotate: false
- xy: 1586, 1757
+ xy: 1586, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-bottom
rotate: false
- xy: 1716, 1757
+ xy: 1716, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-light
rotate: false
- xy: 1846, 1757
+ xy: 1846, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-plasma-0
rotate: false
- xy: 929, 1586
+ xy: 929, 1585
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-plasma-1
rotate: false
- xy: 1059, 1627
+ xy: 1059, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-plasma-2
rotate: false
- xy: 1189, 1627
+ xy: 1189, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
impact-reactor-plasma-3
rotate: false
- xy: 1319, 1627
+ xy: 1319, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
power-source
rotate: false
- xy: 1455, 407
+ xy: 1489, 542
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
rtg-generator-top
rotate: false
- xy: 1387, 271
+ xy: 1489, 338
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
thorium-reactor-center
rotate: false
- xy: 913, 653
+ xy: 913, 554
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
thorium-reactor-lights
rotate: false
- xy: 913, 555
+ xy: 913, 456
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
turbine-generator-top
rotate: false
- xy: 1069, 1365
+ xy: 1069, 1364
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
alloy-smelter
rotate: false
- xy: 1, 4
+ xy: 1, 3
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-alloy-smelter-full
rotate: false
- xy: 1, 4
+ xy: 1, 3
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
alloy-smelter-top
rotate: false
- xy: 1449, 1529
+ xy: 1449, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
blast-mixer
rotate: false
- xy: 549, 1513
+ xy: 549, 1512
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-blast-mixer-full
rotate: false
- xy: 549, 1513
+ xy: 549, 1512
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cryofluidmixer-bottom
rotate: false
- xy: 945, 1454
+ xy: 937, 1255
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cryofluidmixer-liquid
rotate: false
- xy: 937, 1388
+ xy: 921, 1189
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cryofluidmixer-top
rotate: false
- xy: 937, 1322
+ xy: 987, 1189
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cultivator
rotate: false
- xy: 937, 1256
+ xy: 960, 1123
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cultivator-middle
rotate: false
- xy: 921, 1190
+ xy: 960, 1057
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cultivator-top
rotate: false
- xy: 987, 1190
+ xy: 960, 991
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
kiln-top
rotate: false
- xy: 1011, 794
+ xy: 1011, 661
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
silicon-smelter-top
rotate: false
- xy: 1011, 794
+ xy: 1011, 661
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
phase-weaver
rotate: false
- xy: 1077, 530
+ xy: 1077, 397
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
phase-weaver-bottom
rotate: false
- xy: 1077, 464
+ xy: 1053, 331
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
phase-weaver-weave
rotate: false
- xy: 1053, 398
+ xy: 1053, 265
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
plastanium-compressor-top
rotate: false
- xy: 1053, 332
+ xy: 1053, 199
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
pulverizer
rotate: false
- xy: 1489, 441
+ xy: 1455, 372
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pulverizer-rotator
rotate: false
- xy: 1489, 407
+ xy: 1489, 406
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
pump-liquid
rotate: false
- xy: 1489, 373
+ xy: 1455, 338
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
separator-liquid
rotate: false
- xy: 1143, 728
+ xy: 1143, 661
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
separator-spinner
rotate: false
- xy: 1143, 662
+ xy: 1143, 595
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press
rotate: false
- xy: 1143, 530
+ xy: 1143, 463
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press-frame0
rotate: false
- xy: 1143, 464
+ xy: 1143, 397
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press-frame1
rotate: false
- xy: 1185, 398
+ xy: 1185, 331
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press-frame2
rotate: false
- xy: 1185, 332
+ xy: 1185, 265
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press-liquid
rotate: false
- xy: 1185, 266
+ xy: 1185, 199
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spore-press-top
rotate: false
- xy: 1177, 200
+ xy: 1177, 133
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
unloader-center
rotate: false
- xy: 1301, 93
+ xy: 1369, 124
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
arc-heat
rotate: false
- xy: 856, 851
+ xy: 856, 850
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-1
rotate: false
- xy: 1158, 1079
+ xy: 1336, 896
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-2
rotate: false
- xy: 913, 243
+ xy: 913, 144
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-3
rotate: false
- xy: 1547, 1529
+ xy: 1645, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-4
rotate: false
- xy: 543, 1241
+ xy: 543, 1240
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
hail-heat
rotate: false
- xy: 887, 1593
+ xy: 887, 1592
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
lancer-heat
rotate: false
- xy: 1011, 728
+ xy: 1011, 595
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
meltdown-heat
rotate: false
- xy: 1579, 1627
+ xy: 1579, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
ripple-heat
rotate: false
- xy: 815, 261
+ xy: 815, 162
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
salvo-heat
rotate: false
- xy: 1003, 1256
+ xy: 1053, 1189
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
salvo-panel-left
rotate: false
- xy: 1053, 1190
+ xy: 1092, 1123
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
salvo-panel-right
rotate: false
- xy: 1092, 1124
+ xy: 1092, 1057
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scorch-heat
rotate: false
- xy: 1455, 271
+ xy: 1489, 304
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
wave-liquid
rotate: false
- xy: 1201, 1299
+ xy: 1201, 1298
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
crawler-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
dagger-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
draug-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
phantom-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
spirit-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
wraith-factory
rotate: false
- xy: 871, 1281
+ xy: 937, 1387
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
crawler-factory-top
rotate: false
- xy: 945, 1520
+ xy: 937, 1321
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
dagger-factory-top
rotate: false
- xy: 960, 1124
+ xy: 1026, 1123
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
draug-factory-top
rotate: false
- xy: 960, 992
+ xy: 1026, 991
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
fortress-factory
rotate: false
- xy: 619, 242
+ xy: 619, 143
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
fortress-factory-top
rotate: false
- xy: 619, 144
+ xy: 619, 45
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
ghoul-factory-top
rotate: false
- xy: 619, 144
+ xy: 619, 45
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
titan-factory-top
rotate: false
- xy: 619, 144
+ xy: 619, 45
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
ghoul-factory
rotate: false
- xy: 651, 730
+ xy: 717, 631
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
phantom-factory-top
rotate: false
- xy: 1011, 464
+ xy: 1077, 463
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rally-point
rotate: false
- xy: 1119, 266
+ xy: 1111, 133
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
repair-point-base
rotate: false
- xy: 1489, 305
+ xy: 1455, 304
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
revenant-factory
rotate: false
- xy: 1709, 1627
+ xy: 1709, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
revenant-factory-top
rotate: false
- xy: 1839, 1627
+ xy: 1839, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
spirit-factory-top
rotate: false
- xy: 1143, 596
+ xy: 1143, 529
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
titan-factory
rotate: false
- xy: 913, 457
+ xy: 913, 358
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
wraith-factory-top
rotate: false
- xy: 1333, 1431
+ xy: 1333, 1430
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
door-large-open
rotate: false
- xy: 960, 1058
+ xy: 1026, 1057
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
door-open
rotate: false
- xy: 1379, 597
+ xy: 1335, 142
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
insulator-wall
rotate: false
- xy: 1431, 1189
+ xy: 1335, 6
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
insulator-wall-large
rotate: false
- xy: 945, 794
+ xy: 1011, 727
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scrap-wall-huge2
rotate: false
- xy: 815, 65
+ xy: 847, 750
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
scrap-wall-huge3
rotate: false
- xy: 847, 751
+ xy: 913, 652
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
scrap-wall-large1
rotate: false
- xy: 1092, 992
+ xy: 1120, 925
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scrap-wall-large2
rotate: false
- xy: 1120, 926
+ xy: 1120, 859
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scrap-wall-large3
rotate: false
- xy: 1120, 860
+ xy: 1143, 793
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scrap-wall-large4
rotate: false
- xy: 1143, 794
+ xy: 1143, 727
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scrap-wall2
rotate: false
- xy: 1489, 271
+ xy: 1455, 236
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap-wall3
rotate: false
- xy: 1492, 917
+ xy: 1489, 270
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap-wall4
rotate: false
- xy: 1492, 883
+ xy: 1455, 202
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap-wall5
rotate: false
- xy: 1492, 883
+ xy: 1455, 202
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bullet
rotate: false
- xy: 1153, 14
+ xy: 1293, 1252
size: 52, 52
orig: 52, 52
offset: 0, 0
index: -1
bullet-back
rotate: false
- xy: 1207, 14
+ xy: 1293, 1198
size: 52, 52
orig: 52, 52
offset: 0, 0
index: -1
casing
rotate: false
- xy: 1176, 993
+ xy: 2038, 2030
size: 8, 16
orig: 8, 16
offset: 0, 0
index: -1
circle-end
rotate: false
- xy: 464, 926
+ xy: 464, 925
size: 100, 199
orig: 100, 199
offset: 0, 0
index: -1
circle-mid
rotate: false
- xy: 1498, 954
+ xy: 1557, 595
size: 1, 199
orig: 1, 199
offset: 0, 0
index: -1
circle-shadow
rotate: false
- xy: 863, 1846
+ xy: 863, 1845
size: 201, 201
orig: 201, 201
offset: 0, 0
index: -1
error
rotate: false
- xy: 1749, 1331
+ xy: 1398, 1346
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
laser
rotate: false
- xy: 1053, 1536
+ xy: 1053, 1535
size: 4, 48
orig: 4, 48
offset: 0, 0
index: -1
laser-end
rotate: false
- xy: 913, 383
+ xy: 913, 284
size: 72, 72
orig: 72, 72
offset: 0, 0
index: -1
minelaser
rotate: false
- xy: 1053, 1486
+ xy: 1053, 1485
size: 4, 48
orig: 4, 48
offset: 0, 0
index: -1
minelaser-end
rotate: false
- xy: 549, 1579
+ xy: 549, 1578
size: 72, 72
orig: 72, 72
offset: 0, 0
index: -1
missile
rotate: false
- xy: 863, 1808
+ xy: 863, 1807
size: 36, 36
orig: 36, 36
offset: 0, 0
index: -1
missile-back
rotate: false
- xy: 921, 1152
+ xy: 921, 1151
size: 36, 36
orig: 36, 36
offset: 0, 0
index: -1
scale_marker
rotate: false
- xy: 723, 1143
+ xy: 723, 1142
size: 4, 4
orig: 4, 4
offset: 0, 0
index: -1
scorch1
rotate: false
- xy: 1335, 189
+ xy: 1369, 22
size: 28, 100
orig: 28, 100
offset: 0, 0
index: -1
scorch2
rotate: false
- xy: 1335, 87
+ xy: 1540, 848
size: 28, 100
orig: 28, 100
offset: 0, 0
index: -1
scorch3
rotate: false
- xy: 1365, 169
+ xy: 1399, 22
size: 28, 100
orig: 28, 100
offset: 0, 0
index: -1
scorch4
rotate: false
- xy: 1395, 169
+ xy: 1544, 1120
size: 28, 100
orig: 28, 100
offset: 0, 0
index: -1
scorch5
rotate: false
- xy: 1425, 169
+ xy: 1544, 1018
size: 28, 100
orig: 28, 100
offset: 0, 0
index: -1
shell
rotate: false
- xy: 873, 27
+ xy: 1011, 359
size: 36, 36
orig: 36, 36
offset: 0, 0
index: -1
shell-back
rotate: false
- xy: 1371, 1209
+ xy: 1053, 161
size: 36, 36
orig: 36, 36
offset: 0, 0
index: -1
shot
rotate: false
- xy: 1515, 815
+ xy: 1489, 202
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
transfer
rotate: false
- xy: 2043, 1231
+ xy: 907, 14
size: 4, 48
orig: 4, 48
offset: 0, 0
index: -1
transfer-arrow
rotate: false
- xy: 1301, 161
+ xy: 1523, 168
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
transfer-end
rotate: false
- xy: 913, 309
+ xy: 913, 210
size: 72, 72
orig: 72, 72
offset: 0, 0
index: -1
white
rotate: false
- xy: 1251, 266
+ xy: 1204, 885
size: 3, 3
orig: 3, 3
offset: 0, 0
index: -1
arc
rotate: false
- xy: 389, 49
+ xy: 389, 48
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-arc-full
rotate: false
- xy: 1226, 1147
+ xy: 1370, 972
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-blast-drill-full
rotate: false
- xy: 799, 1677
+ xy: 799, 1676
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-bridge-conduit-full
rotate: false
- xy: 1260, 1181
+ xy: 1370, 904
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conduit
rotate: false
- xy: 1260, 1181
+ xy: 1370, 904
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-bridge-conveyor-full
rotate: false
- xy: 1158, 1045
+ xy: 1442, 1196
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
bridge-conveyor
rotate: false
- xy: 1158, 1045
+ xy: 1442, 1196
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-char-full
rotate: false
- xy: 1260, 1147
+ xy: 1442, 1162
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-cliffs-full
rotate: false
- xy: 1226, 1113
+ xy: 1442, 1128
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-coal-centrifuge-full
rotate: false
- xy: 913, 177
+ xy: 913, 78
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
coal-centrifuge
rotate: false
- xy: 913, 177
+ xy: 913, 78
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-combustion-generator-full
rotate: false
- xy: 1192, 1079
+ xy: 1442, 1094
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
combustion-generator
rotate: false
- xy: 1192, 1079
+ xy: 1442, 1094
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-command-center-full
rotate: false
- xy: 913, 111
+ xy: 1976, 1820
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
command-center
rotate: false
- xy: 913, 111
+ xy: 1976, 1820
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-conduit-full
rotate: false
- xy: 1294, 1181
+ xy: 1442, 1060
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-container-full
rotate: false
- xy: 1976, 1821
+ xy: 1976, 1754
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
container
rotate: false
- xy: 1976, 1821
+ xy: 1976, 1754
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-conveyor-full
rotate: false
- xy: 1158, 1011
+ xy: 1442, 1026
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
conveyor-0-0
rotate: false
- xy: 1158, 1011
+ xy: 1442, 1026
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-copper-wall-full
rotate: false
- xy: 1294, 1147
+ xy: 1442, 992
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
copper-wall
rotate: false
- xy: 1294, 1147
+ xy: 1442, 992
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-copper-wall-large-full
rotate: false
- xy: 1976, 1755
+ xy: 1969, 1688
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
copper-wall-large
rotate: false
- xy: 1976, 1755
+ xy: 1969, 1688
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-core-foundation-full
rotate: false
- xy: 929, 1716
+ xy: 929, 1715
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
core-foundation
rotate: false
- xy: 929, 1716
+ xy: 929, 1715
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-core-nucleus-full
rotate: false
- xy: 1066, 1887
+ xy: 1066, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
core-nucleus
rotate: false
- xy: 1066, 1887
+ xy: 1066, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
block-core-shard-full
rotate: false
- xy: 1645, 1529
+ xy: 1743, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
core-shard
rotate: false
- xy: 1645, 1529
+ xy: 1743, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-craters-full
rotate: false
- xy: 1260, 1113
+ xy: 1408, 974
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-crawler-factory-full
rotate: false
- xy: 1969, 1689
+ xy: 623, 1614
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-cryofluidmixer-full
rotate: false
- xy: 913, 45
+ xy: 689, 1614
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-cultivator-full
rotate: false
- xy: 623, 1615
+ xy: 623, 1548
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-cyclone-full
rotate: false
- xy: 1743, 1529
+ xy: 1841, 1528
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-dagger-factory-full
rotate: false
- xy: 689, 1615
+ xy: 689, 1548
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-dark-metal-full
rotate: false
- xy: 1226, 1079
+ xy: 1404, 940
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-1-full
rotate: false
- xy: 1192, 1045
+ xy: 1404, 906
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-2-full
rotate: false
- xy: 1294, 1113
+ xy: 1442, 958
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-3-full
rotate: false
- xy: 1260, 1079
+ xy: 1438, 924
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-4-full
rotate: false
- xy: 1226, 1045
+ xy: 1438, 890
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-5-full
rotate: false
- xy: 1192, 1011
+ xy: 1404, 872
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dark-panel-6-full
rotate: false
- xy: 1294, 1079
+ xy: 1370, 870
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-darksand-full
rotate: false
- xy: 1260, 1045
+ xy: 1336, 862
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-darksand-tainted-water-full
rotate: false
- xy: 1226, 1011
+ xy: 1438, 856
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-darksand-water-full
rotate: false
- xy: 1294, 1045
+ xy: 1404, 838
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-dart-mech-pad-full
rotate: false
- xy: 623, 1549
+ xy: 615, 1482
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
dart-mech-pad
rotate: false
- xy: 623, 1549
+ xy: 615, 1482
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-deepwater-full
rotate: false
- xy: 1260, 1011
+ xy: 1370, 836
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-delta-mech-pad-full
rotate: false
- xy: 689, 1549
+ xy: 681, 1482
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
delta-mech-pad
rotate: false
- xy: 689, 1549
+ xy: 681, 1482
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-differential-generator-full
rotate: false
- xy: 1841, 1529
+ xy: 464, 827
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
differential-generator
rotate: false
- xy: 1841, 1529
+ xy: 464, 827
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-diode-full
rotate: false
- xy: 1294, 1011
+ xy: 1438, 822
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
diode
rotate: false
- xy: 1294, 1011
+ xy: 1438, 822
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-distributor-full
rotate: false
- xy: 615, 1483
+ xy: 607, 1416
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
distributor
rotate: false
- xy: 615, 1483
+ xy: 607, 1416
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-door-full
rotate: false
- xy: 1186, 977
+ xy: 1404, 804
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
door
rotate: false
- xy: 1186, 977
+ xy: 1404, 804
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-door-large-full
rotate: false
- xy: 681, 1483
+ xy: 673, 1416
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
door-large
rotate: false
- xy: 681, 1483
+ xy: 673, 1416
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-draug-factory-full
rotate: false
- xy: 607, 1417
+ xy: 987, 292
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-dunerocks-full
rotate: false
- xy: 1186, 943
+ xy: 1438, 788
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-duo-full
rotate: false
- xy: 1220, 977
+ xy: 1476, 1188
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-force-projector-full
rotate: false
- xy: 464, 828
+ xy: 455, 729
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
force-projector
rotate: false
- xy: 464, 828
+ xy: 455, 729
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-fortress-factory-full
rotate: false
- xy: 455, 730
+ xy: 423, 631
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-fuse-full
rotate: false
- xy: 423, 632
+ xy: 423, 533
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-ghoul-factory-full
rotate: false
- xy: 423, 534
+ xy: 423, 435
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-glaive-ship-pad-full
rotate: false
- xy: 423, 436
+ xy: 423, 337
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
glaive-ship-pad
rotate: false
- xy: 423, 436
+ xy: 423, 337
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-graphite-press-full
rotate: false
- xy: 673, 1417
+ xy: 987, 226
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
graphite-press
rotate: false
- xy: 673, 1417
+ xy: 987, 226
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-grass-full
rotate: false
- xy: 1186, 909
+ xy: 1476, 1154
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-hail-full
rotate: false
- xy: 1254, 977
+ xy: 1510, 1188
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-holostone-full
rotate: false
- xy: 1220, 943
+ xy: 1476, 1120
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-hotrock-full
rotate: false
- xy: 1186, 875
+ xy: 1510, 1154
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ice-full
rotate: false
- xy: 1288, 977
+ xy: 1476, 1086
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ice-snow-full
rotate: false
- xy: 1254, 943
+ xy: 1510, 1120
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-icerocks-full
rotate: false
- xy: 1220, 909
+ xy: 1476, 1052
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ignarock-full
rotate: false
- xy: 1288, 943
+ xy: 1510, 1086
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-illuminator-full
rotate: false
- xy: 1254, 909
+ xy: 1476, 1018
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
illuminator
rotate: false
- xy: 1254, 909
+ xy: 1476, 1018
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-impact-reactor-full
rotate: false
- xy: 204, 863
+ xy: 204, 862
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-incinerator-full
rotate: false
- xy: 1220, 875
+ xy: 1510, 1052
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
incinerator
rotate: false
- xy: 1220, 875
+ xy: 1510, 1052
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-inverted-sorter-full
rotate: false
- xy: 1288, 909
+ xy: 1476, 984
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
inverted-sorter
rotate: false
- xy: 1288, 909
+ xy: 1476, 984
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-item-source-full
rotate: false
- xy: 1254, 875
+ xy: 1510, 1018
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-source
rotate: false
- xy: 1254, 875
+ xy: 1510, 1018
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-item-void-full
rotate: false
- xy: 1288, 875
+ xy: 1510, 984
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-void
rotate: false
- xy: 1288, 875
+ xy: 1510, 984
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-javelin-ship-pad-full
rotate: false
- xy: 987, 391
+ xy: 755, 1610
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
javelin-ship-pad
rotate: false
- xy: 987, 391
+ xy: 755, 1610
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-junction-full
rotate: false
- xy: 1209, 841
+ xy: 1476, 950
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
junction
rotate: false
- xy: 1209, 841
+ xy: 1476, 950
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-kiln-full
rotate: false
- xy: 987, 325
+ xy: 821, 1610
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
kiln
rotate: false
- xy: 987, 325
+ xy: 821, 1610
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-lancer-full
rotate: false
- xy: 755, 1611
+ xy: 755, 1544
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-laser-drill-full
rotate: false
- xy: 423, 338
+ xy: 423, 239
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-launch-pad-full
rotate: false
- xy: 423, 240
+ xy: 423, 141
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
launch-pad
rotate: false
- xy: 423, 240
+ xy: 423, 141
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-launch-pad-large-full
rotate: false
- xy: 334, 863
+ xy: 334, 862
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
launch-pad-large
rotate: false
- xy: 334, 863
+ xy: 334, 862
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-liquid-junction-full
rotate: false
- xy: 1209, 807
+ xy: 1510, 950
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-junction
rotate: false
- xy: 1209, 807
+ xy: 1510, 950
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-liquid-router-full
rotate: false
- xy: 1243, 841
+ xy: 1472, 916
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-liquid-source-full
rotate: false
- xy: 1209, 773
+ xy: 1472, 882
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-source
rotate: false
- xy: 1209, 773
+ xy: 1472, 882
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-liquid-tank-full
rotate: false
- xy: 423, 142
+ xy: 423, 43
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-liquid-void-full
rotate: false
- xy: 1277, 841
+ xy: 1506, 916
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-void
rotate: false
- xy: 1277, 841
+ xy: 1506, 916
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-magmarock-full
rotate: false
- xy: 1243, 807
+ xy: 1472, 848
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-mass-driver-full
rotate: false
- xy: 423, 44
+ xy: 625, 1142
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-mechanical-drill-full
rotate: false
- xy: 821, 1611
+ xy: 821, 1544
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-mechanical-pump-full
rotate: false
- xy: 1209, 739
+ xy: 1506, 882
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
mechanical-pump
rotate: false
- xy: 1209, 739
+ xy: 1506, 882
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-meltdown-full
rotate: false
- xy: 195, 733
+ xy: 195, 732
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-melter-full
rotate: false
- xy: 1277, 807
+ xy: 1472, 814
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
melter
rotate: false
- xy: 1277, 807
+ xy: 1472, 814
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-mend-projector-full
rotate: false
- xy: 755, 1545
+ xy: 747, 1478
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
mend-projector
rotate: false
- xy: 755, 1545
+ xy: 747, 1478
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-mender-full
rotate: false
- xy: 1243, 773
+ xy: 1506, 848
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
mender
rotate: false
- xy: 1243, 773
+ xy: 1506, 848
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-message-full
rotate: false
- xy: 1209, 705
+ xy: 1506, 814
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
message
rotate: false
- xy: 1209, 705
+ xy: 1506, 814
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-metal-floor-2-full
rotate: false
- xy: 1277, 773
+ xy: 1472, 780
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-metal-floor-3-full
rotate: false
- xy: 1243, 739
+ xy: 1506, 780
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-metal-floor-5-full
rotate: false
- xy: 1209, 671
+ xy: 695, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-metal-floor-damaged-full
rotate: false
- xy: 1277, 739
+ xy: 729, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-metal-floor-full
rotate: false
- xy: 1243, 705
+ xy: 763, 9
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-moss-full
rotate: false
- xy: 1277, 705
+ xy: 1582, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-multi-press-full
rotate: false
- xy: 625, 1143
+ xy: 566, 1044
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
multi-press
rotate: false
- xy: 625, 1143
+ xy: 566, 1044
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-oil-extractor-full
rotate: false
- xy: 566, 1045
+ xy: 566, 946
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-omega-mech-pad-full
rotate: false
- xy: 566, 947
+ xy: 664, 1044
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
omega-mech-pad
rotate: false
- xy: 566, 947
+ xy: 664, 1044
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-ore-coal-full
rotate: false
- xy: 1243, 671
+ xy: 1616, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ore-copper-full
rotate: false
- xy: 1209, 603
+ xy: 1650, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ore-lead-full
rotate: false
- xy: 1277, 671
+ xy: 1684, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ore-scrap-full
rotate: false
- xy: 1243, 637
+ xy: 1718, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ore-thorium-full
rotate: false
- xy: 1209, 569
+ xy: 1752, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-ore-titanium-full
rotate: false
- xy: 1277, 637
+ xy: 1786, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-overdrive-projector-full
rotate: false
- xy: 821, 1545
+ xy: 813, 1478
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
overdrive-projector
rotate: false
- xy: 821, 1545
+ xy: 813, 1478
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-overflow-gate-full
rotate: false
- xy: 1243, 603
+ xy: 1820, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
overflow-gate
rotate: false
- xy: 1243, 603
+ xy: 1820, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-pebbles-full
rotate: false
- xy: 1209, 535
+ xy: 1854, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-phantom-factory-full
rotate: false
- xy: 747, 1479
+ xy: 739, 1412
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-phase-conduit-full
rotate: false
- xy: 1277, 603
+ xy: 1888, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conduit
rotate: false
- xy: 1277, 603
+ xy: 1888, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-phase-conveyor-full
rotate: false
- xy: 1243, 569
+ xy: 1922, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-conveyor
rotate: false
- xy: 1243, 569
+ xy: 1922, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-phase-wall-full
rotate: false
- xy: 1209, 501
+ xy: 1956, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
phase-wall
rotate: false
- xy: 1209, 501
+ xy: 1956, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-phase-wall-large-full
rotate: false
- xy: 813, 1479
+ xy: 805, 1412
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
phase-wall-large
rotate: false
- xy: 813, 1479
+ xy: 805, 1412
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-phase-weaver-full
rotate: false
- xy: 739, 1413
+ xy: 673, 1350
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-pine-full
rotate: false
- xy: 1549, 1381
+ xy: 1158, 1082
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
block-plastanium-compressor-full
rotate: false
- xy: 805, 1413
+ xy: 673, 1284
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
plastanium-compressor
rotate: false
- xy: 805, 1413
+ xy: 673, 1284
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-plastanium-conveyor-full
rotate: false
- xy: 1277, 569
+ xy: 1990, 1296
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-plastanium-wall-full
rotate: false
- xy: 1243, 535
+ xy: 1547, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
plastanium-wall
rotate: false
- xy: 1243, 535
+ xy: 1547, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-plastanium-wall-large-full
rotate: false
- xy: 673, 1351
+ xy: 739, 1346
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
plastanium-wall-large
rotate: false
- xy: 673, 1351
+ xy: 739, 1346
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-plated-conduit-full
rotate: false
- xy: 1209, 467
+ xy: 1547, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-pneumatic-drill-full
rotate: false
- xy: 673, 1285
+ xy: 805, 1346
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-power-node-full
rotate: false
- xy: 1277, 535
+ xy: 1581, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
power-node
rotate: false
- xy: 1277, 535
+ xy: 1581, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-power-node-large-full
rotate: false
- xy: 739, 1347
+ xy: 739, 1280
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
power-node-large
rotate: false
- xy: 739, 1347
+ xy: 739, 1280
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-power-source-full
rotate: false
- xy: 1243, 501
+ xy: 1581, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-power-void-full
rotate: false
- xy: 1277, 501
+ xy: 1615, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
power-void
rotate: false
- xy: 1277, 501
+ xy: 1615, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-pulse-conduit-full
rotate: false
- xy: 1243, 467
+ xy: 1615, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-pulverizer-full
rotate: false
- xy: 1277, 467
+ xy: 1649, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-pyratite-mixer-full
rotate: false
- xy: 805, 1347
+ xy: 805, 1280
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
pyratite-mixer
rotate: false
- xy: 805, 1347
+ xy: 805, 1280
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-repair-point-full
rotate: false
- xy: 1251, 433
+ xy: 1649, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-revenant-factory-full
rotate: false
- xy: 325, 733
+ xy: 325, 732
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-ripple-full
rotate: false
- xy: 664, 1045
+ xy: 664, 946
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-rock-full
rotate: false
- xy: 1599, 1381
+ xy: 1208, 1140
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
block-rocks-full
rotate: false
- xy: 1251, 399
+ xy: 1683, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-rotary-pump-full
rotate: false
- xy: 739, 1281
+ xy: 987, 160
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rotary-pump
rotate: false
- xy: 739, 1281
+ xy: 987, 160
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-router-full
rotate: false
- xy: 1251, 365
+ xy: 1683, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
router
rotate: false
- xy: 1251, 365
+ xy: 1683, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-rtg-generator-full
rotate: false
- xy: 805, 1281
+ xy: 979, 94
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
rtg-generator
rotate: false
- xy: 805, 1281
+ xy: 979, 94
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-salt-full
rotate: false
- xy: 1251, 331
+ xy: 1717, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-saltrocks-full
rotate: false
- xy: 1251, 297
+ xy: 1717, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-salvo-full
rotate: false
- xy: 987, 259
+ xy: 979, 28
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-sand-boulder-full
rotate: false
- xy: 1285, 433
+ xy: 1751, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-sand-full
rotate: false
- xy: 1285, 399
+ xy: 1751, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-sand-water-full
rotate: false
- xy: 1285, 365
+ xy: 1785, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-sandrocks-full
rotate: false
- xy: 1285, 331
+ xy: 1785, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-scatter-full
rotate: false
- xy: 979, 193
+ xy: 913, 12
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-scorch-full
rotate: false
- xy: 1285, 297
+ xy: 1819, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-scrap-wall-full
rotate: false
- xy: 1311, 841
+ xy: 1819, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
scrap-wall1
rotate: false
- xy: 1311, 841
+ xy: 1819, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-scrap-wall-gigantic-full
rotate: false
- xy: 163, 603
+ xy: 163, 602
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
scrap-wall-gigantic
rotate: false
- xy: 163, 603
+ xy: 163, 602
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-scrap-wall-huge-full
rotate: false
- xy: 664, 947
+ xy: 1449, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
scrap-wall-huge1
rotate: false
- xy: 664, 947
+ xy: 1449, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-scrap-wall-large-full
rotate: false
- xy: 979, 127
+ xy: 723, 1214
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-separator-full
rotate: false
- xy: 979, 61
+ xy: 723, 1148
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
separator
rotate: false
- xy: 979, 61
+ xy: 723, 1148
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-shale-boulder-full
rotate: false
- xy: 1311, 773
+ xy: 1853, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-shale-full
rotate: false
- xy: 1311, 739
+ xy: 1887, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-shalerocks-full
rotate: false
- xy: 1311, 705
+ xy: 1887, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-shock-mine-full
rotate: false
- xy: 1311, 671
+ xy: 1921, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-shrubs-full
rotate: false
- xy: 1311, 637
+ xy: 1921, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-silicon-smelter-full
rotate: false
- xy: 723, 1215
+ xy: 789, 1214
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
silicon-smelter
rotate: false
- xy: 723, 1215
+ xy: 789, 1214
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-snow-full
rotate: false
- xy: 1311, 603
+ xy: 1955, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-snow-pine-full
rotate: false
- xy: 1649, 1381
+ xy: 1158, 1032
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
block-snowrock-full
rotate: false
- xy: 1699, 1381
+ xy: 1208, 1090
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
block-snowrocks-full
rotate: false
- xy: 1311, 569
+ xy: 1955, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-solar-panel-full
rotate: false
- xy: 1311, 535
+ xy: 1989, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
solar-panel
rotate: false
- xy: 1311, 535
+ xy: 1989, 1262
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-solar-panel-large-full
rotate: false
- xy: 1449, 1431
+ xy: 1547, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
solar-panel-large
rotate: false
- xy: 1449, 1431
+ xy: 1547, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-sorter-full
rotate: false
- xy: 1311, 501
+ xy: 1989, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
sorter
rotate: false
- xy: 1311, 501
+ xy: 1989, 1228
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-spawn-full
rotate: false
- xy: 1311, 467
+ xy: 1251, 806
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-spectre-full
rotate: false
- xy: 163, 473
+ xy: 163, 472
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-spirit-factory-full
rotate: false
- xy: 723, 1149
+ xy: 789, 1148
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-spore-cluster-full
rotate: false
- xy: 887, 1635
+ xy: 887, 1634
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
block-spore-moss-full
rotate: false
- xy: 1319, 433
+ xy: 1251, 772
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-spore-pine-full
rotate: false
- xy: 1749, 1381
+ xy: 1208, 1040
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
block-spore-press-full
rotate: false
- xy: 789, 1215
+ xy: 762, 1082
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-sporerocks-full
rotate: false
- xy: 1319, 399
+ xy: 1251, 738
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-stone-full
rotate: false
- xy: 1319, 365
+ xy: 1251, 704
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-surge-tower-full
rotate: false
- xy: 789, 1149
+ xy: 762, 1016
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
surge-tower
rotate: false
- xy: 789, 1149
+ xy: 762, 1016
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-surge-wall-full
rotate: false
- xy: 1319, 331
+ xy: 1251, 670
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
surge-wall
rotate: false
- xy: 1319, 331
+ xy: 1251, 670
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-surge-wall-large-full
rotate: false
- xy: 762, 1083
+ xy: 762, 950
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
surge-wall-large
rotate: false
- xy: 762, 1083
+ xy: 762, 950
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-swarmer-full
rotate: false
- xy: 762, 1017
+ xy: 828, 1082
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-tainted-water-full
rotate: false
- xy: 1319, 297
+ xy: 1251, 636
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-tar-full
rotate: false
- xy: 1975, 1147
+ xy: 1251, 602
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-tau-mech-pad-full
rotate: false
- xy: 762, 951
+ xy: 828, 1016
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
tau-mech-pad
rotate: false
- xy: 762, 951
+ xy: 828, 1016
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-tendrils-full
rotate: false
- xy: 2009, 1147
+ xy: 1251, 568
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-thermal-generator-full
rotate: false
- xy: 828, 1083
+ xy: 828, 950
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
thermal-generator
rotate: false
- xy: 828, 1083
+ xy: 828, 950
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-thermal-pump-full
rotate: false
- xy: 1547, 1431
+ xy: 1645, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
thermal-pump
rotate: false
- xy: 1547, 1431
+ xy: 1645, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-thorium-reactor-full
rotate: false
- xy: 1645, 1431
+ xy: 1743, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
thorium-reactor
rotate: false
- xy: 1645, 1431
+ xy: 1743, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-thorium-wall-full
rotate: false
- xy: 1725, 1155
+ xy: 1251, 534
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
thorium-wall
rotate: false
- xy: 1725, 1155
+ xy: 1251, 534
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-thorium-wall-large-full
rotate: false
- xy: 828, 1017
+ xy: 856, 884
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
thorium-wall-large
rotate: false
- xy: 828, 1017
+ xy: 856, 884
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-thruster-full
rotate: false
- xy: 293, 603
+ xy: 293, 602
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
thruster
rotate: false
- xy: 293, 603
+ xy: 293, 602
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
block-titan-factory-full
rotate: false
- xy: 1743, 1431
+ xy: 1841, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-titanium-conveyor-full
rotate: false
- xy: 1759, 1147
+ xy: 1251, 500
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-conveyor-0-0
rotate: false
- xy: 1759, 1147
+ xy: 1251, 500
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-titanium-wall-full
rotate: false
- xy: 1793, 1147
+ xy: 1251, 466
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
titanium-wall
rotate: false
- xy: 1793, 1147
+ xy: 1251, 466
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-titanium-wall-large-full
rotate: false
- xy: 828, 951
+ xy: 855, 1214
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
titanium-wall-large
rotate: false
- xy: 828, 951
+ xy: 855, 1214
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-trident-ship-pad-full
rotate: false
- xy: 856, 885
+ xy: 855, 1148
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
trident-ship-pad
rotate: false
- xy: 856, 885
+ xy: 855, 1148
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-turbine-generator-full
rotate: false
- xy: 855, 1215
+ xy: 894, 1082
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
turbine-generator
rotate: false
- xy: 855, 1215
+ xy: 894, 1082
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-underflow-gate-full
rotate: false
- xy: 1827, 1147
+ xy: 1251, 432
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-unloader-full
rotate: false
- xy: 1861, 1139
+ xy: 1251, 398
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
unloader
rotate: false
- xy: 1861, 1139
+ xy: 1251, 398
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-vault-full
rotate: false
- xy: 1841, 1431
+ xy: 521, 631
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
vault
rotate: false
- xy: 1841, 1431
+ xy: 521, 631
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
block-water-extractor-full
rotate: false
- xy: 855, 1149
+ xy: 894, 1016
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-water-full
rotate: false
- xy: 1895, 1139
+ xy: 1251, 364
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
block-wave-full
rotate: false
- xy: 894, 1083
+ xy: 894, 950
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
block-white-tree-dead-full
rotate: false
- xy: 1, 1727
+ xy: 1, 1726
size: 320, 320
orig: 320, 320
offset: 0, 0
index: -1
block-white-tree-full
rotate: false
- xy: 1, 1405
+ xy: 1, 1404
size: 320, 320
orig: 320, 320
offset: 0, 0
index: -1
block-wraith-factory-full
rotate: false
- xy: 894, 1017
+ xy: 922, 884
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-1-0
rotate: false
- xy: 1390, 903
+ xy: 1285, 210
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-1
rotate: false
- xy: 1390, 869
+ xy: 1319, 210
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-2
rotate: false
- xy: 1379, 835
+ xy: 1301, 176
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-3
rotate: false
- xy: 1379, 801
+ xy: 1301, 142
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-4
rotate: false
- xy: 1379, 767
+ xy: 1301, 108
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-5
rotate: false
- xy: 1379, 733
+ xy: 1301, 74
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-6
rotate: false
- xy: 1379, 699
+ xy: 1301, 40
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-1-7
rotate: false
- xy: 1379, 665
+ xy: 1301, 6
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
cracks-2-0
rotate: false
- xy: 894, 951
+ xy: 1045, 94
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-1
rotate: false
- xy: 922, 885
+ xy: 1045, 28
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-2
rotate: false
- xy: 1045, 193
+ xy: 879, 1478
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-3
rotate: false
- xy: 1045, 127
+ xy: 871, 1412
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-4
rotate: false
- xy: 1045, 61
+ xy: 871, 1346
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-5
rotate: false
- xy: 879, 1479
+ xy: 871, 1280
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-6
rotate: false
- xy: 871, 1413
+ xy: 945, 1519
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-2-7
rotate: false
- xy: 871, 1347
+ xy: 945, 1453
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
cracks-3-0
rotate: false
- xy: 521, 632
+ xy: 521, 533
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-1
rotate: false
- xy: 521, 534
+ xy: 521, 435
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-2
rotate: false
- xy: 521, 436
+ xy: 521, 337
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-3
rotate: false
- xy: 521, 338
+ xy: 521, 239
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-4
rotate: false
- xy: 521, 240
+ xy: 521, 141
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-5
rotate: false
- xy: 521, 142
+ xy: 521, 43
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-6
rotate: false
- xy: 521, 44
+ xy: 553, 729
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-3-7
rotate: false
- xy: 553, 730
+ xy: 562, 827
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
cracks-4-0
rotate: false
- xy: 293, 343
+ xy: 293, 342
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-1
rotate: false
- xy: 293, 213
+ xy: 293, 212
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-2
rotate: false
- xy: 163, 83
+ xy: 163, 82
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-3
rotate: false
- xy: 293, 83
+ xy: 293, 82
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-4
rotate: false
- xy: 1066, 1757
+ xy: 1066, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-5
rotate: false
- xy: 1196, 1757
+ xy: 1196, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-6
rotate: false
- xy: 1326, 1757
+ xy: 1326, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-4-7
rotate: false
- xy: 1456, 1757
+ xy: 1456, 1756
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
cracks-5-0
rotate: false
- xy: 1, 588
+ xy: 1, 587
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-1
rotate: false
- xy: 1228, 1887
+ xy: 1228, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-2
rotate: false
- xy: 1, 426
+ xy: 1, 425
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-3
rotate: false
- xy: 1390, 1887
+ xy: 1390, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-4
rotate: false
- xy: 1, 264
+ xy: 1, 263
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-5
rotate: false
- xy: 1552, 1887
+ xy: 1552, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-6
rotate: false
- xy: 1, 102
+ xy: 1, 101
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cracks-5-7
rotate: false
- xy: 1714, 1887
+ xy: 1714, 1886
size: 160, 160
orig: 160, 160
offset: 0, 0
index: -1
cyclone
rotate: false
- xy: 562, 828
+ xy: 660, 848
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
duo
rotate: false
- xy: 1379, 563
+ xy: 1335, 108
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
fuse
rotate: false
- xy: 619, 46
+ xy: 651, 729
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
hail
rotate: false
- xy: 1379, 529
+ xy: 1335, 74
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-blast-compound-large
rotate: false
- xy: 887, 1551
+ xy: 887, 1550
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-blast-compound-medium
rotate: false
- xy: 1431, 1155
+ xy: 1353, 760
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-blast-compound-small
rotate: false
- xy: 1499, 1197
+ xy: 2023, 1270
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-blast-compound-tiny
rotate: false
- xy: 797, 26
+ xy: 797, 25
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-blast-compound-xlarge
rotate: false
- xy: 1999, 1331
+ xy: 1598, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-coal-large
rotate: false
- xy: 607, 1375
+ xy: 607, 1374
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-coal-medium
rotate: false
- xy: 1430, 1121
+ xy: 1353, 692
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-coal-small
rotate: false
- xy: 873, 1
+ xy: 2023, 1244
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-coal-tiny
rotate: false
- xy: 797, 8
+ xy: 1403, 174
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-coal-xlarge
rotate: false
- xy: 1849, 1281
+ xy: 1648, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-copper-large
rotate: false
- xy: 673, 1243
+ xy: 673, 1242
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-copper-medium
rotate: false
- xy: 1430, 1087
+ xy: 1353, 624
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-copper-small
rotate: false
- xy: 1499, 1171
+ xy: 2023, 1218
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-copper-tiny
rotate: false
- xy: 204, 1129
+ xy: 797, 7
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-copper-xlarge
rotate: false
- xy: 1899, 1273
+ xy: 1698, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-graphite-large
rotate: false
- xy: 945, 752
+ xy: 945, 751
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-graphite-medium
rotate: false
- xy: 1464, 1087
+ xy: 1353, 556
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-graphite-small
rotate: false
- xy: 259, 1379
+ xy: 259, 1378
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-graphite-tiny
rotate: false
- xy: 566, 929
+ xy: 1369, 198
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-graphite-xlarge
rotate: false
- xy: 1949, 1281
+ xy: 1748, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-lead-large
rotate: false
- xy: 1011, 1544
+ xy: 1011, 1543
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-lead-medium
rotate: false
- xy: 1464, 1053
+ xy: 1353, 488
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-lead-small
rotate: false
- xy: 960, 966
+ xy: 960, 965
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-lead-tiny
rotate: false
- xy: 660, 831
+ xy: 204, 1128
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-lead-xlarge
rotate: false
- xy: 1999, 1281
+ xy: 1798, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-metaglass-large
rotate: false
- xy: 1069, 1257
+ xy: 1069, 1256
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-metaglass-medium
rotate: false
- xy: 1464, 1019
+ xy: 1353, 420
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-metaglass-small
rotate: false
- xy: 1237, 1273
+ xy: 901, 1819
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-metaglass-tiny
rotate: false
- xy: 749, 733
+ xy: 566, 928
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-metaglass-xlarge
rotate: false
- xy: 1325, 1315
+ xy: 1848, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-phase-fabric-large
rotate: false
- xy: 1725, 1189
+ xy: 1209, 798
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-phase-fabric-medium
rotate: false
- xy: 1430, 951
+ xy: 1353, 352
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-phase-fabric-small
rotate: false
- xy: 901, 1820
+ xy: 1251, 202
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-phase-fabric-tiny
rotate: false
- xy: 623, 1709
+ xy: 660, 830
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-phase-fabric-xlarge
rotate: false
- xy: 1375, 1297
+ xy: 1898, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-plastanium-large
rotate: false
- xy: 1011, 1502
+ xy: 1259, 848
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-plastanium-medium
rotate: false
- xy: 1424, 917
+ xy: 1353, 284
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-plastanium-small
rotate: false
- xy: 1251, 271
+ xy: 1540, 822
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-plastanium-tiny
rotate: false
- xy: 1425, 1329
+ xy: 749, 732
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-plastanium-xlarge
rotate: false
- xy: 1325, 1265
+ xy: 1948, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-pyratite-large
rotate: false
- xy: 1111, 1257
+ xy: 1011, 1501
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-pyratite-medium
rotate: false
- xy: 1458, 917
+ xy: 1353, 216
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-pyratite-small
rotate: false
- xy: 1365, 143
+ xy: 1544, 992
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-pyratite-tiny
rotate: false
- xy: 1825, 1305
+ xy: 623, 1708
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-pyratite-xlarge
rotate: false
- xy: 1375, 1247
+ xy: 1998, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-sand-large
rotate: false
- xy: 1011, 1460
+ xy: 1209, 756
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-sand-medium
rotate: false
- xy: 1424, 849
+ xy: 1387, 736
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-sand-small
rotate: false
- xy: 1455, 245
+ xy: 285, 1378
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-sand-tiny
rotate: false
- xy: 649, 1399
+ xy: 1269, 1222
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-sand-xlarge
rotate: false
- xy: 1425, 1273
+ xy: 1347, 1256
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-scrap-large
rotate: false
- xy: 1153, 1257
+ xy: 1011, 1459
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-scrap-medium
rotate: false
- xy: 1413, 815
+ xy: 1387, 668
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-scrap-small
rotate: false
- xy: 285, 1379
+ xy: 1540, 796
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-scrap-tiny
rotate: false
- xy: 987, 776
+ xy: 1186, 872
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-scrap-xlarge
rotate: false
- xy: 1425, 1223
+ xy: 1347, 1206
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-silicon-large
rotate: false
- xy: 1195, 1257
+ xy: 1209, 714
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-silicon-medium
rotate: false
- xy: 1447, 815
+ xy: 1387, 600
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-silicon-small
rotate: false
- xy: 1365, 117
+ xy: 1544, 966
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-silicon-tiny
rotate: false
- xy: 924, 867
+ xy: 649, 1398
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-silicon-xlarge
rotate: false
- xy: 1475, 1273
+ xy: 1258, 1140
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-spore-pod-large
rotate: false
- xy: 1119, 1215
+ xy: 1209, 672
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-spore-pod-medium
rotate: false
- xy: 1447, 781
+ xy: 1387, 532
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-spore-pod-small
rotate: false
- xy: 1391, 143
+ xy: 873, 4
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-spore-pod-tiny
rotate: false
- xy: 924, 849
+ xy: 987, 775
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-spore-pod-xlarge
rotate: false
- xy: 1475, 1223
+ xy: 1258, 1090
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-surge-alloy-large
rotate: false
- xy: 1161, 1215
+ xy: 1209, 630
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-surge-alloy-medium
rotate: false
- xy: 1447, 747
+ xy: 1387, 464
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-surge-alloy-small
rotate: false
- xy: 1455, 219
+ xy: 1574, 1202
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-surge-alloy-tiny
rotate: false
- xy: 1119, 1197
+ xy: 1091, 181
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-surge-alloy-xlarge
rotate: false
- xy: 1525, 1281
+ xy: 1258, 1040
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-thorium-large
rotate: false
- xy: 99, 2
+ xy: 1209, 588
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-thorium-medium
rotate: false
- xy: 1447, 713
+ xy: 1387, 396
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-thorium-small
rotate: false
- xy: 1481, 245
+ xy: 1574, 1176
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-thorium-tiny
rotate: false
- xy: 1158, 993
+ xy: 924, 866
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-thorium-xlarge
rotate: false
- xy: 1525, 1231
+ xy: 1308, 1148
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
item-titanium-large
rotate: false
- xy: 1203, 1215
+ xy: 1209, 546
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
item-titanium-medium
rotate: false
- xy: 1447, 679
+ xy: 1387, 328
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-titanium-small
rotate: false
- xy: 1365, 91
+ xy: 1600, 1202
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
item-titanium-tiny
rotate: false
- xy: 2025, 1263
+ xy: 924, 848
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
item-titanium-xlarge
rotate: false
- xy: 1575, 1281
+ xy: 1308, 1098
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
lancer
rotate: false
- xy: 1077, 794
+ xy: 1077, 727
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
liquid-cryofluid-large
rotate: false
- xy: 1767, 1181
+ xy: 1209, 504
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
liquid-cryofluid-medium
rotate: false
- xy: 1447, 645
+ xy: 1387, 260
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-cryofluid-small
rotate: false
- xy: 1391, 117
+ xy: 1574, 1150
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
liquid-cryofluid-tiny
rotate: false
- xy: 1387, 477
+ xy: 1209, 402
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
liquid-cryofluid-xlarge
rotate: false
- xy: 1675, 1281
+ xy: 1358, 1056
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
liquid-oil-large
rotate: false
- xy: 1245, 1215
+ xy: 1209, 462
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
liquid-oil-medium
rotate: false
- xy: 1447, 611
+ xy: 1421, 754
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-oil-small
rotate: false
- xy: 1417, 143
+ xy: 1600, 1176
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
liquid-oil-tiny
rotate: false
- xy: 1301, 75
+ xy: 2024, 1312
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
liquid-oil-xlarge
rotate: false
- xy: 1675, 1231
+ xy: 1397, 1296
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
liquid-slag-large
rotate: false
- xy: 1287, 1215
+ xy: 1209, 420
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
liquid-slag-medium
rotate: false
- xy: 1447, 475
+ xy: 1421, 516
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-slag-small
rotate: false
- xy: 1455, 193
+ xy: 1626, 1202
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
liquid-slag-tiny
rotate: false
- xy: 1365, 273
+ xy: 1600, 1158
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
liquid-slag-xlarge
rotate: false
- xy: 1725, 1281
+ xy: 1397, 1246
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
liquid-water-large
rotate: false
- xy: 1329, 1223
+ xy: 99, 1
size: 40, 40
orig: 40, 40
offset: 0, 0
index: -1
liquid-water-medium
rotate: false
- xy: 1481, 781
+ xy: 1421, 448
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-water-small
rotate: false
- xy: 1481, 219
+ xy: 1574, 1124
size: 24, 24
orig: 24, 24
offset: 0, 0
index: -1
liquid-water-tiny
rotate: false
- xy: 1277, 279
+ xy: 1626, 1184
size: 16, 16
orig: 16, 16
offset: 0, 0
index: -1
liquid-water-xlarge
rotate: false
- xy: 1725, 1231
+ xy: 1447, 1280
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
mass-driver
rotate: false
- xy: 1939, 1529
+ xy: 1939, 1430
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
mech-alpha-mech-full
rotate: false
- xy: 1775, 1273
+ xy: 1497, 1272
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
mech-dart-ship-full
rotate: false
- xy: 1775, 1223
+ xy: 1447, 1230
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
mech-delta-mech-full
rotate: false
- xy: 1825, 1231
+ xy: 1497, 1222
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
mech-glaive-ship-full
rotate: false
- xy: 1969, 1631
+ xy: 1969, 1630
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
mech-javelin-ship-full
rotate: false
- xy: 1875, 1223
+ xy: 1208, 990
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
mech-omega-mech-full
rotate: false
- xy: 1243, 70
+ xy: 1243, 3
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
mech-tau-mech-full
rotate: false
- xy: 1267, 1307
+ xy: 1267, 1306
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
mech-trident-ship-full
rotate: false
- xy: 157, 25
+ xy: 157, 24
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
meltdown
rotate: false
- xy: 1449, 1627
+ xy: 1449, 1626
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
repair-point
rotate: false
- xy: 1489, 339
+ xy: 1489, 372
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
ripple
rotate: false
- xy: 815, 359
+ xy: 815, 260
size: 96, 96
orig: 96, 96
offset: 0, 0
index: -1
salvo
rotate: false
- xy: 1003, 1322
+ xy: 1003, 1255
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scatter
rotate: false
- xy: 1092, 1058
+ xy: 1092, 991
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
scorch
rotate: false
- xy: 1421, 271
+ xy: 1455, 270
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
spectre
rotate: false
- xy: 1189, 1497
+ xy: 1189, 1496
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
swarmer
rotate: false
- xy: 1177, 134
+ xy: 1177, 67
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
unit-chaos-array-full
rotate: false
- xy: 1319, 1497
+ xy: 1319, 1496
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
unit-crawler-full
rotate: false
- xy: 1575, 1181
+ xy: 1286, 940
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
unit-dagger-full
rotate: false
- xy: 1625, 1181
+ xy: 1286, 890
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
unit-eradicator-full
rotate: false
- xy: 259, 1123
+ xy: 259, 1122
size: 152, 124
orig: 152, 124
offset: 0, 0
index: -1
unit-eruptor-full
rotate: false
- xy: 1135, 1431
+ xy: 1135, 1430
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
unit-fortress-full
rotate: false
- xy: 1069, 1299
+ xy: 1069, 1298
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
unit-titan-full
rotate: false
- xy: 1135, 1365
+ xy: 1135, 1364
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
wave
rotate: false
- xy: 1267, 1365
+ xy: 1267, 1364
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
item-blast-compound
rotate: false
- xy: 1465, 1189
+ xy: 1353, 794
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-coal
rotate: false
- xy: 1465, 1155
+ xy: 1353, 726
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-copper
rotate: false
- xy: 1464, 1121
+ xy: 1353, 658
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-graphite
rotate: false
- xy: 1430, 1053
+ xy: 1353, 590
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-lead
rotate: false
- xy: 1430, 1019
+ xy: 1353, 522
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-metaglass
rotate: false
- xy: 1430, 985
+ xy: 1353, 454
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-phase-fabric
rotate: false
- xy: 1464, 985
+ xy: 1353, 386
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-plastanium
rotate: false
- xy: 1464, 951
+ xy: 1353, 318
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-pyratite
rotate: false
- xy: 1424, 883
+ xy: 1353, 250
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-sand
rotate: false
- xy: 1458, 883
+ xy: 1387, 770
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-scrap
rotate: false
- xy: 1458, 849
+ xy: 1387, 702
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-silicon
rotate: false
- xy: 1413, 781
+ xy: 1387, 634
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-spore-pod
rotate: false
- xy: 1413, 747
+ xy: 1387, 566
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-surge-alloy
rotate: false
- xy: 1413, 713
+ xy: 1387, 498
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-thorium
rotate: false
- xy: 1413, 679
+ xy: 1387, 430
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
item-titanium
rotate: false
- xy: 1413, 645
+ xy: 1387, 362
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-cryofluid
rotate: false
- xy: 1413, 611
+ xy: 1387, 294
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-oil
rotate: false
- xy: 1413, 577
+ xy: 1387, 226
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-slag
rotate: false
- xy: 1413, 475
+ xy: 1421, 550
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
liquid-water
rotate: false
- xy: 1481, 815
+ xy: 1421, 482
size: 32, 32
orig: 32, 32
offset: 0, 0
index: -1
alpha-mech
rotate: false
- xy: 1399, 1447
+ xy: 1399, 1446
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
alpha-mech-base
rotate: false
- xy: 1261, 20
+ xy: 1119, 1190
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
alpha-mech-leg
rotate: false
- xy: 1399, 1397
+ xy: 1169, 1190
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
delta-mech
rotate: false
- xy: 1549, 1331
+ xy: 1849, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
delta-mech-base
rotate: false
- xy: 1599, 1331
+ xy: 1899, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
delta-mech-leg
rotate: false
- xy: 1649, 1331
+ xy: 1949, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
omega-mech
rotate: false
- xy: 215, 25
+ xy: 215, 24
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
omega-mech-armor
rotate: false
- xy: 1011, 530
+ xy: 1077, 529
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
omega-mech-base
rotate: false
- xy: 273, 25
+ xy: 273, 24
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
omega-mech-leg
rotate: false
- xy: 331, 25
+ xy: 331, 24
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
tau-mech
rotate: false
- xy: 1037, 3
+ xy: 1177, 1240
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
tau-mech-base
rotate: false
- xy: 1975, 1181
+ xy: 1236, 940
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
tau-mech-leg
rotate: false
- xy: 1525, 1181
+ xy: 1236, 890
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
dart-ship
rotate: false
- xy: 1499, 1331
+ xy: 1799, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
glaive-ship
rotate: false
- xy: 99, 44
+ xy: 99, 43
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
javelin-ship
rotate: false
- xy: 1575, 1231
+ xy: 1308, 1048
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
javelin-ship-shield
rotate: false
- xy: 1625, 1281
+ xy: 1358, 1156
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
trident-ship
rotate: false
- xy: 1095, 3
+ xy: 1235, 1240
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
blank
rotate: false
- xy: 423, 730
+ xy: 423, 729
size: 1, 1
orig: 1, 1
offset: 0, 0
index: -1
circle
rotate: false
- xy: 1, 944
+ xy: 1, 943
size: 201, 201
orig: 201, 201
offset: 0, 0
index: -1
shape-3
rotate: false
- xy: 1333, 1366
+ xy: 1333, 1365
size: 63, 63
orig: 63, 63
offset: 0, 0
index: -1
chaos-array
rotate: false
- xy: 163, 343
+ xy: 163, 342
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
chaos-array-base
rotate: false
- xy: 293, 473
+ xy: 293, 472
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
chaos-array-leg
rotate: false
- xy: 163, 213
+ xy: 163, 212
size: 128, 128
orig: 128, 128
offset: 0, 0
index: -1
crawler
rotate: false
- xy: 1899, 1381
+ xy: 1499, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
crawler-base
rotate: false
- xy: 1949, 1381
+ xy: 1549, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
crawler-leg
rotate: false
- xy: 1999, 1381
+ xy: 1599, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
dagger
rotate: false
- xy: 1398, 1347
+ xy: 1649, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
dagger-base
rotate: false
- xy: 1448, 1323
+ xy: 1699, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
dagger-leg
rotate: false
- xy: 1267, 1257
+ xy: 1749, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
draug
rotate: false
- xy: 1699, 1331
+ xy: 1999, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
eradicator
rotate: false
- xy: 323, 1375
+ xy: 323, 1374
size: 152, 124
orig: 152, 124
offset: 0, 0
index: -1
eradicator-base
rotate: false
- xy: 645, 1681
+ xy: 645, 1680
size: 152, 124
orig: 152, 124
offset: 0, 0
index: -1
eradicator-leg
rotate: false
- xy: 259, 1249
+ xy: 259, 1248
size: 152, 124
orig: 152, 124
offset: 0, 0
index: -1
eruptor
rotate: false
- xy: 1026, 1058
+ xy: 988, 859
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
eruptor-base
rotate: false
- xy: 1026, 992
+ xy: 1054, 925
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
eruptor-leg
rotate: false
- xy: 988, 926
+ xy: 1054, 859
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
fortress
rotate: false
- xy: 988, 860
+ xy: 945, 793
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
fortress-base
rotate: false
- xy: 1054, 926
+ xy: 1011, 793
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
titan-base
rotate: false
- xy: 1054, 926
+ xy: 1011, 793
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
fortress-leg
rotate: false
- xy: 1054, 860
+ xy: 1077, 793
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
ghoul
rotate: false
- xy: 549, 1653
+ xy: 549, 1652
size: 72, 72
orig: 72, 72
offset: 0, 0
index: -1
lich
rotate: false
- xy: 645, 1807
+ xy: 645, 1806
size: 216, 240
orig: 216, 240
offset: 0, 0
index: -1
phantom
rotate: false
- xy: 815, 7
+ xy: 815, 6
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
power-cell
rotate: false
- xy: 979, 3
+ xy: 1119, 1240
size: 56, 56
orig: 56, 56
offset: 0, 0
index: -1
reaper
rotate: false
- xy: 323, 1727
+ xy: 323, 1726
size: 320, 320
orig: 320, 320
offset: 0, 0
index: -1
revenant
rotate: false
- xy: 413, 1127
+ xy: 413, 1126
size: 112, 112
orig: 112, 112
offset: 0, 0
index: -1
spirit
rotate: false
- xy: 1875, 1173
+ xy: 1186, 940
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
titan
rotate: false
- xy: 1177, 68
+ xy: 1177, 1
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
titan-leg
rotate: false
- xy: 1069, 1431
+ xy: 1069, 1430
size: 64, 64
orig: 64, 64
offset: 0, 0
index: -1
wraith
rotate: false
- xy: 1675, 1181
+ xy: 1209, 840
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
artillery-equip
rotate: false
- xy: 1449, 1373
+ xy: 1158, 1132
size: 48, 56
orig: 48, 56
offset: 0, 0
index: -1
blaster-equip
rotate: false
- xy: 1499, 1381
+ xy: 1219, 1190
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
bomber-equip
rotate: false
- xy: 1799, 1381
+ xy: 1399, 1396
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
missiles-equip
rotate: false
- xy: 1799, 1381
+ xy: 1399, 1396
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
chain-blaster-equip
rotate: false
- xy: 1849, 1381
+ xy: 1449, 1380
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
chaos-equip
rotate: false
- xy: 1243, 128
+ xy: 1243, 61
size: 56, 136
orig: 56, 136
offset: 0, 0
index: -1
eradication-equip
rotate: false
- xy: 619, 438
+ xy: 619, 339
size: 96, 192
orig: 96, 192
offset: 0, 0
index: -1
eruption-equip
rotate: false
- xy: 1799, 1323
+ xy: 1325, 1306
size: 48, 56
orig: 48, 56
offset: 0, 0
index: -1
flakgun-equip
rotate: false
- xy: 1849, 1331
+ xy: 1448, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
flamethrower-equip
rotate: false
- xy: 1899, 1323
+ xy: 1498, 1322
size: 48, 56
orig: 48, 56
offset: 0, 0
index: -1
heal-blaster-equip
rotate: false
- xy: 1949, 1331
+ xy: 1548, 1330
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
lich-missiles-equip
rotate: false
- xy: 1625, 1231
+ xy: 1358, 1106
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
reaper-gun-equip
rotate: false
- xy: 1925, 1223
+ xy: 1258, 990
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
revenant-missiles-equip
rotate: false
- xy: 1975, 1231
+ xy: 1308, 998
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
shockgun-equip
rotate: false
- xy: 1825, 1181
+ xy: 1358, 1006
size: 48, 48
orig: 48, 48
offset: 0, 0
index: -1
swarmer-equip
rotate: false
- xy: 1925, 1173
+ xy: 1186, 890
size: 48, 48
orig: 48, 48
offset: 0, 0
diff --git a/core/assets/sprites/sprites.png b/core/assets/sprites/sprites.png
index 220d7b6b66..8dc0e7b21a 100644
Binary files a/core/assets/sprites/sprites.png and b/core/assets/sprites/sprites.png differ
diff --git a/core/assets/sprites/sprites3.png b/core/assets/sprites/sprites3.png
index 620c8eb00c..422f229580 100644
Binary files a/core/assets/sprites/sprites3.png and b/core/assets/sprites/sprites3.png differ
diff --git a/core/assets/sprites/sprites5.png b/core/assets/sprites/sprites5.png
index 1de28ac0fd..98b0d97760 100644
Binary files a/core/assets/sprites/sprites5.png and b/core/assets/sprites/sprites5.png differ
diff --git a/core/src/mindustry/ClientLauncher.java b/core/src/mindustry/ClientLauncher.java
index d1819b3a8f..fd94c323aa 100644
--- a/core/src/mindustry/ClientLauncher.java
+++ b/core/src/mindustry/ClientLauncher.java
@@ -33,6 +33,8 @@ public abstract class ClientLauncher extends ApplicationCore implements Platform
@Override
public void setup(){
+ Events.fire(new ClientCreateEvent());
+
Vars.loadLogger();
Vars.loadFileLogger();
Vars.platform = this;
diff --git a/core/src/mindustry/content/Blocks.java b/core/src/mindustry/content/Blocks.java
index 41f4959f0d..78380682aa 100644
--- a/core/src/mindustry/content/Blocks.java
+++ b/core/src/mindustry/content/Blocks.java
@@ -1129,13 +1129,13 @@ public class Blocks implements ContentList{
differentialGenerator = new SingleTypeGenerator("differential-generator"){{
requirements(Category.power, ItemStack.with(Items.copper, 70, Items.titanium, 50, Items.lead, 100, Items.silicon, 65, Items.metaglass, 50));
powerProduction = 16f;
- itemDuration = 120f;
+ itemDuration = 140f;
hasLiquids = true;
hasItems = true;
size = 3;
consumes.item(Items.pyratite).optional(true, false);
- consumes.liquid(Liquids.cryofluid, 0.18f);
+ consumes.liquid(Liquids.cryofluid, 0.15f);
}};
rtgGenerator = new DecayGenerator("rtg-generator"){{
diff --git a/core/src/mindustry/core/Control.java b/core/src/mindustry/core/Control.java
index 7c86601bb3..657c9c74e2 100644
--- a/core/src/mindustry/core/Control.java
+++ b/core/src/mindustry/core/Control.java
@@ -3,12 +3,12 @@ package mindustry.core;
import arc.*;
import arc.assets.*;
import arc.audio.*;
-import arc.struct.*;
import arc.graphics.*;
import arc.graphics.g2d.*;
import arc.input.*;
import arc.math.geom.*;
import arc.scene.ui.*;
+import arc.struct.*;
import arc.util.*;
import mindustry.content.*;
import mindustry.core.GameState.*;
@@ -114,17 +114,17 @@ public class Control implements ApplicationListener, Loadable{
});
//autohost for pvp maps
- Events.on(WorldLoadEvent.class, event -> {
+ Events.on(WorldLoadEvent.class, event -> app.post(() -> {
if(state.rules.pvp && !net.active()){
try{
net.host(port);
player.isAdmin = true;
}catch(IOException e){
ui.showException("$server.error", e);
- Core.app.post(() -> state.set(State.menu));
+ state.set(State.menu);
}
}
- });
+ }));
Events.on(UnlockEvent.class, e -> ui.hudfrag.showUnlock(e.content));
diff --git a/core/src/mindustry/core/Logic.java b/core/src/mindustry/core/Logic.java
index 4e1e4a5c29..a693000846 100644
--- a/core/src/mindustry/core/Logic.java
+++ b/core/src/mindustry/core/Logic.java
@@ -16,7 +16,6 @@ import mindustry.type.*;
import mindustry.world.*;
import mindustry.world.blocks.*;
import mindustry.world.blocks.BuildBlock.*;
-import mindustry.world.blocks.power.*;
import java.util.*;
@@ -246,7 +245,6 @@ public class Logic implements ApplicationListener{
collisions.updatePhysics(unitGroup);
}
-
playerGroup.update();
//effect group only contains item transfers in the headless version, update it!
diff --git a/core/src/mindustry/core/NetClient.java b/core/src/mindustry/core/NetClient.java
index 6ecce095e9..c483e8cb26 100644
--- a/core/src/mindustry/core/NetClient.java
+++ b/core/src/mindustry/core/NetClient.java
@@ -13,6 +13,7 @@ import mindustry.annotations.Annotations.*;
import mindustry.core.GameState.*;
import mindustry.ctype.*;
import mindustry.entities.*;
+import mindustry.entities.Effects.*;
import mindustry.entities.traits.BuilderTrait.*;
import mindustry.entities.traits.*;
import mindustry.entities.type.*;
@@ -101,6 +102,7 @@ public class NetClient implements ApplicationListener{
state.set(State.menu);
logic.reset();
platform.updateRPC();
+ player.name = Core.settings.getString("name");
if(quiet) return;
@@ -261,36 +263,61 @@ public class NetClient implements ApplicationListener{
ui.loadfrag.hide();
}
+ @Remote(variants = Variant.both, unreliable = true)
+ public static void setHudText(String message){
+ if(message == null) return;
+
+ ui.hudfrag.setHudText(message);
+ }
+
+ @Remote(variants = Variant.both)
+ public static void hideHudText(){
+ ui.hudfrag.toggleHudText(false);
+ }
+
+ /** TCP version */
+ @Remote(variants = Variant.both)
+ public static void setHudTextReliable(String message){
+ setHudText(message);
+ }
+
@Remote(variants = Variant.both)
public static void onInfoMessage(String message){
+ if(message == null) return;
+
ui.showText("", message);
}
- //TODO these are commented out to enforce compatibility with 103! uncomment before 104 release
- /*
-
@Remote(variants = Variant.both)
public static void onInfoPopup(String message, float duration, int align, int top, int left, int bottom, int right){
+ if(message == null) return;
+
ui.showInfoPopup(message, duration, align, top, left, bottom, right);
}
@Remote(variants = Variant.both)
- public static void onLabel(String info, float duration, float worldx, float worldy){
- ui.showLabel(info, duration, worldx, worldy);
+ public static void onLabel(String message, float duration, float worldx, float worldy){
+ if(message == null) return;
+
+ ui.showLabel(message, duration, worldx, worldy);
}
@Remote(variants = Variant.both, unreliable = true)
public static void onEffect(Effect effect, float x, float y, float rotation, Color color){
+ if(effect == null) return;
+
Effects.effect(effect, color, x, y, rotation);
}
@Remote(variants = Variant.both)
public static void onEffectReliable(Effect effect, float x, float y, float rotation, Color color){
- Effects.effect(effect, color, x, y, rotation);
- }*/
+ onEffect(effect, x, y, rotation, color);
+ }
@Remote(variants = Variant.both)
public static void onInfoToast(String message, float duration){
+ if(message == null) return;
+
ui.showInfoToast(message, duration);
}
@@ -541,6 +568,11 @@ public class NetClient implements ApplicationListener{
}
String getUsid(String ip){
+ //consistently use the latter part of an IP, if possible
+ if(ip.contains("/")){
+ ip = ip.substring(ip.indexOf("/") + 1);
+ }
+
if(Core.settings.getString("usid-" + ip, null) != null){
return Core.settings.getString("usid-" + ip, null);
}else{
diff --git a/core/src/mindustry/core/NetServer.java b/core/src/mindustry/core/NetServer.java
index 2faf856171..cc06401a18 100644
--- a/core/src/mindustry/core/NetServer.java
+++ b/core/src/mindustry/core/NetServer.java
@@ -8,6 +8,7 @@ import arc.struct.*;
import arc.util.*;
import arc.util.CommandHandler.*;
import arc.util.io.*;
+import arc.util.serialization.*;
import mindustry.annotations.Annotations.*;
import mindustry.content.*;
import mindustry.core.GameState.*;
@@ -15,7 +16,6 @@ import mindustry.entities.*;
import mindustry.entities.traits.BuilderTrait.*;
import mindustry.entities.traits.*;
import mindustry.entities.type.*;
-import mindustry.net.Administration;
import mindustry.game.EventType.*;
import mindustry.game.*;
import mindustry.game.Teams.*;
@@ -48,6 +48,8 @@ public class NetServer implements ApplicationListener{
if(state.rules.pvp){
//find team with minimum amount of players and auto-assign player to that.
TeamData re = state.teams.getActive().min(data -> {
+ if((state.rules.waveTeam == data.team && state.rules.waves) || !data.team.active()) return Integer.MAX_VALUE;
+
int count = 0;
for(Player other : players){
if(other.getTeam() == data.team && other != player){
@@ -93,6 +95,16 @@ public class NetServer implements ApplicationListener{
}
String uuid = packet.uuid;
+ byte[] buuid = Base64Coder.decode(uuid);
+ CRC32 crc = new CRC32();
+ crc.update(buuid, 0, 8);
+ ByteBuffer buff = ByteBuffer.allocate(8);
+ buff.put(buuid, 8, 8);
+ buff.position(0);
+ if(crc.getValue() != buff.getLong()){
+ con.kick(KickReason.clientOutdated);
+ return;
+ }
if(admins.isIPBanned(con.address) || admins.isSubnetBanned(con.address)) return;
@@ -121,7 +133,7 @@ public class NetServer implements ApplicationListener{
return;
}
- if(admins.getPlayerLimit() > 0 && playerGroup.size() >= admins.getPlayerLimit()){
+ if(admins.getPlayerLimit() > 0 && playerGroup.size() >= admins.getPlayerLimit() && !netServer.admins.isAdmin(uuid, packet.usid)){
con.kick(KickReason.playerLimit);
return;
}
@@ -207,6 +219,11 @@ public class NetServer implements ApplicationListener{
player.color.set(packet.color);
player.color.a = 1f;
+ //save admin ID but don't overwrite it
+ if(!player.isAdmin && !info.admin){
+ info.adminUsid = packet.usid;
+ }
+
try{
writeBuffer.position(0);
player.write(outputBuffer);
@@ -313,7 +330,7 @@ public class NetServer implements ApplicationListener{
votes += d;
voted.addAll(player.uuid, admins.getInfo(player.uuid).lastIP);
- Call.sendMessage(Strings.format("[orange]{0}[lightgray] has voted to kick[orange] {1}[].[accent] ({2}/{3})\n[lightgray]Type[orange] /vote [] to agree.",
+ Call.sendMessage(Strings.format("[orange]{0}[lightgray] has voted on kicking[orange] {1}[].[accent] ({2}/{3})\n[lightgray]Type[orange] /vote [] to agree.",
player.name, target.name, votes, votesRequired()));
}
diff --git a/core/src/mindustry/core/Renderer.java b/core/src/mindustry/core/Renderer.java
index bf0e7bc5f6..37806c1290 100644
--- a/core/src/mindustry/core/Renderer.java
+++ b/core/src/mindustry/core/Renderer.java
@@ -270,7 +270,7 @@ public class Renderer implements ApplicationListener{
drawAllTeams(true);
Draw.flush();
- if(bloom != null && !pixelator.enabled()){
+ if(bloom != null){
bloom.capture();
}
@@ -278,7 +278,7 @@ public class Renderer implements ApplicationListener{
effectGroup.draw();
Draw.flush();
- if(bloom != null && !pixelator.enabled()){
+ if(bloom != null){
bloom.render();
}
@@ -417,11 +417,6 @@ public class Renderer implements ApplicationListener{
return;
}
- boolean hadShields = Core.settings.getBool("animatedshields");
- boolean hadWater = Core.settings.getBool("animatedwater");
- Core.settings.put("animatedwater", false);
- Core.settings.put("animatedshields", false);
-
FrameBuffer buffer = new FrameBuffer(w, h);
float vpW = camera.width, vpH = camera.height, px = camera.position.x, py = camera.position.y;
@@ -446,16 +441,13 @@ public class Renderer implements ApplicationListener{
}
buffer.end();
Pixmap fullPixmap = new Pixmap(w, h, Pixmap.Format.RGBA8888);
- BufferUtils.copy(lines, 0, fullPixmap.getPixels(), lines.length);
+ Buffers.copy(lines, 0, fullPixmap.getPixels(), lines.length);
Fi file = screenshotDirectory.child("screenshot-" + Time.millis() + ".png");
PixmapIO.writePNG(file, fullPixmap);
fullPixmap.dispose();
ui.showInfoFade(Core.bundle.format("screenshot", file.toString()));
buffer.dispose();
-
- Core.settings.put("animatedwater", hadWater);
- Core.settings.put("animatedshields", hadShields);
}
}
diff --git a/core/src/mindustry/entities/Units.java b/core/src/mindustry/entities/Units.java
index 67fe01dc9e..30802f380d 100644
--- a/core/src/mindustry/entities/Units.java
+++ b/core/src/mindustry/entities/Units.java
@@ -26,8 +26,8 @@ public class Units{
* Validates a target.
* @param target The target to validate
* @param team The team of the thing doing tha targeting
- * @param x The X position of the thing doign the targeting
- * @param y The Y position of the thing doign the targeting
+ * @param x The X position of the thing doing the targeting
+ * @param y The Y position of the thing doing the targeting
* @param range The maximum distance from the target X/Y the targeter can be for it to be valid
* @return whether the target is invalid
*/
diff --git a/core/src/mindustry/entities/traits/BuilderTrait.java b/core/src/mindustry/entities/traits/BuilderTrait.java
index a05fc685ec..80176eac1a 100644
--- a/core/src/mindustry/entities/traits/BuilderTrait.java
+++ b/core/src/mindustry/entities/traits/BuilderTrait.java
@@ -1,14 +1,15 @@
package mindustry.entities.traits;
import arc.*;
-import arc.struct.Queue;
import arc.graphics.g2d.*;
import arc.math.*;
import arc.math.geom.*;
+import arc.struct.Queue;
import arc.util.ArcAnnotate.*;
import arc.util.*;
import mindustry.*;
import mindustry.content.*;
+import mindustry.entities.type.TileEntity;
import mindustry.entities.type.*;
import mindustry.game.EventType.*;
import mindustry.gen.*;
@@ -21,7 +22,7 @@ import java.io.*;
import java.util.*;
import static mindustry.Vars.*;
-import static mindustry.entities.traits.BuilderTrait.BuildDataStatic.*;
+import static mindustry.entities.traits.BuilderTrait.BuildDataStatic.tmptr;
/** Interface for units that build things.*/
public interface BuilderTrait extends Entity, TeamTrait{
@@ -74,6 +75,9 @@ public interface BuilderTrait extends Entity, TeamTrait{
buildQueue().removeFirst();
return;
}
+ }else if(tile.getTeam() != getTeam()){
+ buildQueue().removeFirst();
+ return;
}
if(tile.entity instanceof BuildEntity && !current.initialized){
diff --git a/core/src/mindustry/game/EventType.java b/core/src/mindustry/game/EventType.java
index 365e8f2b7c..e82423f051 100644
--- a/core/src/mindustry/game/EventType.java
+++ b/core/src/mindustry/game/EventType.java
@@ -92,6 +92,10 @@ public class EventType{
}
}
+ public static class ClientCreateEvent{
+
+ }
+
/** Called when the client game is first loaded. */
public static class ClientLoadEvent{
diff --git a/core/src/mindustry/game/GlobalData.java b/core/src/mindustry/game/GlobalData.java
index 0e72ef7245..f91c8dc679 100644
--- a/core/src/mindustry/game/GlobalData.java
+++ b/core/src/mindustry/game/GlobalData.java
@@ -49,7 +49,7 @@ public class GlobalData{
for(Fi add : files){
if(add.isDirectory()) continue;
zos.putNextEntry(new ZipEntry(add.path().substring(base.length())));
- Streams.copyStream(add.read(), zos);
+ Streams.copy(add.read(), zos);
zos.closeEntry();
}
diff --git a/core/src/mindustry/game/Rules.java b/core/src/mindustry/game/Rules.java
index 0515d2ca60..ff946e359c 100644
--- a/core/src/mindustry/game/Rules.java
+++ b/core/src/mindustry/game/Rules.java
@@ -82,6 +82,9 @@ public class Rules{
public boolean lighting = false;
/** Ambient light color, used when lighting is enabled. */
public Color ambientLight = new Color(0.01f, 0.01f, 0.04f, 0.99f);
+ /** Multiplier for solar panel power output.
+ negative = use ambient light if lighting is enabled. */
+ public float solarPowerMultiplier = -1f;
/** team of the player by default */
public Team defaultTeam = Team.sharded;
/** team of the enemy in waves/sectors */
diff --git a/core/src/mindustry/game/Teams.java b/core/src/mindustry/game/Teams.java
index 62479c66ec..7a972779b7 100644
--- a/core/src/mindustry/game/Teams.java
+++ b/core/src/mindustry/game/Teams.java
@@ -98,6 +98,7 @@ public class Teams{
/** Do not modify. */
public Array getActive(){
+ active.removeAll(t -> !t.active());
return active;
}
@@ -167,6 +168,14 @@ public class Teams{
public CoreEntity core(){
return cores.first();
}
+
+ @Override
+ public String toString(){
+ return "TeamData{" +
+ "cores=" + cores +
+ ", team=" + team +
+ '}';
+ }
}
/** Represents a block made by this team that was destroyed somewhere on the map.
diff --git a/core/src/mindustry/graphics/BlockRenderer.java b/core/src/mindustry/graphics/BlockRenderer.java
index 41274e0349..a6455a03d6 100644
--- a/core/src/mindustry/graphics/BlockRenderer.java
+++ b/core/src/mindustry/graphics/BlockRenderer.java
@@ -168,7 +168,6 @@ public class BlockRenderer implements Disposable{
shadowEvents.clear();
Draw.proj(camera.projection());
- renderer.pixelator.rebind();
}
float ww = world.width() * tilesize, wh = world.height() * tilesize;
diff --git a/core/src/mindustry/graphics/LightRenderer.java b/core/src/mindustry/graphics/LightRenderer.java
index 0c0f94e02c..58c91b4f30 100644
--- a/core/src/mindustry/graphics/LightRenderer.java
+++ b/core/src/mindustry/graphics/LightRenderer.java
@@ -24,6 +24,10 @@ public class LightRenderer{
lights.add(run);
}
+ public void add(Position pos, float radius, Color color, float opacity){
+ add(pos.getX(), pos.getY(), radius, color, opacity);
+ }
+
public void add(float x, float y, float radius, Color color, float opacity){
if(!enabled()) return;
@@ -180,13 +184,14 @@ public class LightRenderer{
Draw.color();
buffer.beginDraw(Color.clear);
- Draw.blend(Blending.normal);
+ Gl.blendEquationSeparate(Gl.funcAdd, Gl.max);
+
for(Runnable run : lights){
run.run();
}
Draw.reset();
- Draw.blend();
buffer.endDraw();
+ Gl.blendEquationSeparate(Gl.funcAdd, Gl.funcAdd);
Draw.color();
Shaders.light.ambient.set(state.rules.ambientLight);
@@ -196,4 +201,4 @@ public class LightRenderer{
lights.clear();
}
-}
+}
\ No newline at end of file
diff --git a/core/src/mindustry/graphics/Pixelator.java b/core/src/mindustry/graphics/Pixelator.java
index f746ca69e3..8b8fce9786 100644
--- a/core/src/mindustry/graphics/Pixelator.java
+++ b/core/src/mindustry/graphics/Pixelator.java
@@ -28,10 +28,6 @@ public class Pixelator implements Disposable{
camera.width = (int)camera.width;
camera.height = (int)camera.height;
- boolean hadShields = Core.settings.getBool("animatedshields");
- boolean hadWater = Core.settings.getBool("animatedwater");
- Core.settings.put("animatedwater", false);
- Core.settings.put("animatedshields", false);
graphics.clear(0f, 0f, 0f, 1f);
float px = Core.camera.position.x, py = Core.camera.position.y;
@@ -58,17 +54,9 @@ public class Pixelator implements Disposable{
playerGroup.draw(p -> !p.isDead(), Player::drawName);
Core.camera.position.set(px, py);
- Core.settings.put("animatedwater", hadWater);
- Core.settings.put("animatedshields", hadShields);
renderer.setScale(pre);
}
- public void rebind(){
- if(enabled()){
- buffer.begin();
- }
- }
-
public boolean enabled(){
return Core.settings.getBool("pixelate");
}
diff --git a/core/src/mindustry/input/InputHandler.java b/core/src/mindustry/input/InputHandler.java
index cd2f3d6d6b..611cec44b6 100644
--- a/core/src/mindustry/input/InputHandler.java
+++ b/core/src/mindustry/input/InputHandler.java
@@ -255,19 +255,10 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
if(lastSchematic == null) return;
ui.showTextInput("$schematic.add", "$name", "", text -> {
- Schematic replacement = schematics.all().find(s -> s.name().equals(text));
- if(replacement != null){
- ui.showConfirm("$confirm", "$schematic.replace", () -> {
- schematics.overwrite(replacement, lastSchematic);
- ui.showInfoFade("$schematic.saved");
- ui.schematics.showInfo(replacement);
- });
- }else{
- lastSchematic.tags.put("name", text);
- schematics.add(lastSchematic);
- ui.showInfoFade("$schematic.saved");
- ui.schematics.showInfo(lastSchematic);
- }
+ lastSchematic.tags.put("name", text);
+ schematics.add(lastSchematic);
+ ui.showInfoFade("$schematic.saved");
+ ui.schematics.showInfo(lastSchematic);
});
}
diff --git a/core/src/mindustry/mod/ContentParser.java b/core/src/mindustry/mod/ContentParser.java
index aa6048d833..65b68b3423 100644
--- a/core/src/mindustry/mod/ContentParser.java
+++ b/core/src/mindustry/mod/ContentParser.java
@@ -3,7 +3,7 @@ package mindustry.mod;
import arc.*;
import arc.assets.*;
import arc.audio.*;
-import arc.audio.mock.*;
+import arc.mock.*;
import arc.struct.Array;
import arc.struct.*;
import arc.files.*;
diff --git a/core/src/mindustry/mod/ModLoadingSound.java b/core/src/mindustry/mod/ModLoadingSound.java
index 558b29ce28..7bae2f5a6b 100644
--- a/core/src/mindustry/mod/ModLoadingSound.java
+++ b/core/src/mindustry/mod/ModLoadingSound.java
@@ -1,8 +1,8 @@
package mindustry.mod;
import arc.audio.*;
-import arc.audio.mock.*;
import arc.math.geom.*;
+import arc.mock.*;
import arc.util.ArcAnnotate.*;
public class ModLoadingSound implements Sound{
diff --git a/core/src/mindustry/mod/Mods.java b/core/src/mindustry/mod/Mods.java
index bcb685c205..66dc8d6fa7 100644
--- a/core/src/mindustry/mod/Mods.java
+++ b/core/src/mindustry/mod/Mods.java
@@ -118,7 +118,7 @@ public class Mods implements Loadable{
private void packSprites(Array sprites, LoadedMod mod, boolean prefix){
for(Fi file : sprites){
try(InputStream stream = file.read()){
- byte[] bytes = Streams.copyStreamToByteArray(stream, Math.max((int)file.length(), 512));
+ byte[] bytes = Streams.copyBytes(stream, Math.max((int)file.length(), 512));
Pixmap pixmap = new Pixmap(bytes, 0, bytes.length);
packer.add(getPage(file), (prefix ? mod.name + "-" : "") + file.nameWithoutExtension(), new PixmapRegion(pixmap));
pixmap.dispose();
@@ -317,7 +317,7 @@ public class Mods implements Loadable{
return result;
}
- private LoadedMod locateMod(String name){
+ public LoadedMod locateMod(String name){
return mods.find(mod -> mod.enabled() && mod.name.equals(name));
}
@@ -460,22 +460,25 @@ public class Mods implements Loadable{
eachEnabled(mod -> {
if(mod.root.child("scripts").exists()){
content.setCurrentMod(mod);
- mod.scripts = mod.root.child("scripts").findAll(f -> f.extension().equals("js"));
- Log.debug("[{0}] Found {1} scripts.", mod.meta.name, mod.scripts.size);
-
- for(Fi file : mod.scripts){
+ //if there's only one script file, use it (for backwards compatibility); if there isn't, use "main.js"
+ Array allScripts = mod.root.child("scripts").findAll(f -> f.extEquals("js"));
+ Fi main = allScripts.size == 1 ? allScripts.first() : mod.root.child("scripts").child("main.js");
+ if(main.exists() && !main.isDirectory()){
try{
if(scripts == null){
scripts = platform.createScripts();
}
- scripts.run(mod, file);
+ scripts.run(mod, main);
}catch(Throwable e){
Core.app.post(() -> {
- Log.err("Error loading script {0} for mod {1}.", file.name(), mod.meta.name);
+ Log.err("Error loading main script {0} for mod {1}.", main.name(), mod.meta.name);
e.printStackTrace();
});
- break;
}
+ }else{
+ Core.app.post(() -> {
+ Log.err("No main.js found for mod {0}.", mod.meta.name);
+ });
}
}
});
diff --git a/core/src/mindustry/mod/Scripts.java b/core/src/mindustry/mod/Scripts.java
index 94acd92eb4..69f272595c 100644
--- a/core/src/mindustry/mod/Scripts.java
+++ b/core/src/mindustry/mod/Scripts.java
@@ -8,6 +8,12 @@ import arc.util.Log.*;
import mindustry.*;
import mindustry.mod.Mods.*;
import org.mozilla.javascript.*;
+import org.mozilla.javascript.commonjs.module.*;
+import org.mozilla.javascript.commonjs.module.provider.*;
+
+import java.io.*;
+import java.net.*;
+import java.util.regex.*;
public class Scripts implements Disposable{
private final Array blacklist = Array.with("net", "files", "reflect", "javax", "rhino", "file", "channels", "jdk",
@@ -15,9 +21,9 @@ public class Scripts implements Disposable{
".awt", "socket", "classloader", "oracle", "invoke");
private final Array whitelist = Array.with("mindustry.net");
private final Context context;
- private final String wrapper;
private Scriptable scope;
private boolean errored;
+ private LoadedMod currentMod = null;
public Scripts(){
Time.mark();
@@ -25,9 +31,12 @@ public class Scripts implements Disposable{
context = Vars.platform.getScriptContext();
context.setClassShutter(type -> !blacklist.contains(type.toLowerCase()::contains) || whitelist.contains(type.toLowerCase()::contains));
context.getWrapFactory().setJavaPrimitiveWrap(false);
-
+
scope = new ImporterTopLevel(context);
- wrapper = Core.files.internal("scripts/wrapper.js").readString();
+
+ new RequireBuilder()
+ .setModuleScriptProvider(new SoftCachingModuleScriptProvider(new ScriptModuleProvider()))
+ .setSandboxed(true).createRequire(context, scope).install(scope);
if(!run(Core.files.internal("scripts/global.js").readString(), "global.js")){
errored = true;
@@ -68,11 +77,17 @@ public class Scripts implements Disposable{
}
public void run(LoadedMod mod, Fi file){
- run(wrapper.replace("$SCRIPT_NAME$", mod.name + "/" + file.nameWithoutExtension()).replace("$CODE$", file.readString()).replace("$MOD_NAME$", mod.name), file.name());
+ currentMod = mod;
+ run(file.readString(), file.name());
+ currentMod = null;
}
private boolean run(String script, String file){
try{
+ if(currentMod != null){
+ //inject script info into file (TODO maybe rhino handles this?)
+ context.evaluateString(scope, "modName = \"" + currentMod.name + "\"\nscriptName = \"" + file + "\"", "initscript.js", 1, null);
+ }
context.evaluateString(scope, script, file, 1, null);
return true;
}catch(Throwable t){
@@ -85,4 +100,38 @@ public class Scripts implements Disposable{
public void dispose(){
Context.exit();
}
+
+ private class ScriptModuleProvider extends UrlModuleSourceProvider{
+ private Pattern directory = Pattern.compile("^(.+?)/(.+)");
+
+ public ScriptModuleProvider(){
+ super(null, null);
+ }
+
+ @Override
+ public ModuleSource loadSource(String moduleId, Scriptable paths, Object validator) throws IOException, URISyntaxException{
+ if(currentMod == null) return null;
+ return loadSource(moduleId, currentMod.root.child("scripts"), validator);
+ }
+
+ private ModuleSource loadSource(String moduleId, Fi root, Object validator) throws URISyntaxException{
+ Matcher matched = directory.matcher(moduleId);
+ if(matched.find()){
+ LoadedMod required = Vars.mods.locateMod(matched.group(1));
+ String script = matched.group(2);
+ if(required == null || root.equals(required.root.child("scripts"))){ // Mod not found, or already using a mod
+ Fi dir = root.child(matched.group(1));
+ if(!dir.exists()) return null; // Mod and folder not found
+ return loadSource(script, dir, validator);
+ }
+ return loadSource(script, required.root.child("scripts"), validator);
+ }
+
+ Fi module = root.child(moduleId + ".js");
+ if(!module.exists() || module.isDirectory()) return null;
+ return new ModuleSource(
+ new InputStreamReader(new ByteArrayInputStream((module.readString()).getBytes())),
+ null, new URI(moduleId), root.file().toURI(), validator);
+ }
+ }
}
diff --git a/core/src/mindustry/net/Administration.java b/core/src/mindustry/net/Administration.java
index cfd3423608..1c452d81da 100644
--- a/core/src/mindustry/net/Administration.java
+++ b/core/src/mindustry/net/Administration.java
@@ -230,7 +230,7 @@ public class Administration{
}
/**
- * Returns list of all players with admin status
+ * Returns list of all players which are banned
*/
public Array getBanned(){
Array result = new Array<>();
@@ -568,6 +568,7 @@ public class Administration{
player = null;
type = null;
tile = null;
+ block = null;
}
}
diff --git a/core/src/mindustry/net/Packets.java b/core/src/mindustry/net/Packets.java
index 98a3bad857..e24d18db6f 100644
--- a/core/src/mindustry/net/Packets.java
+++ b/core/src/mindustry/net/Packets.java
@@ -181,7 +181,7 @@ public class Packets{
usid = TypeIO.readString(buffer);
mobile = buffer.get() == 1;
color = buffer.getInt();
- byte[] idbytes = new byte[8];
+ byte[] idbytes = new byte[16];
buffer.get(idbytes);
uuid = new String(Base64Coder.encode(idbytes));
int totalMods = buffer.get();
diff --git a/core/src/mindustry/ui/Links.java b/core/src/mindustry/ui/Links.java
index 7047c6d4d7..09f26e78f5 100644
--- a/core/src/mindustry/ui/Links.java
+++ b/core/src/mindustry/ui/Links.java
@@ -16,7 +16,7 @@ public class Links{
new LinkEntry("changelog", "https://github.com/Anuken/Mindustry/releases", Icon.list, Pal.accent.cpy()),
new LinkEntry("trello", "https://trello.com/b/aE2tcUwF", Icon.trello, Color.valueOf("026aa7")),
new LinkEntry("wiki", "https://mindustrygame.github.io/wiki/", Icon.book, Color.valueOf("0f142f")),
- new LinkEntry("feathub", "https://feathub.com/Anuken/Mindustry/", Icon.add, Color.valueOf("ebebeb")),
+ new LinkEntry("feathub", "https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose/", Icon.add, Color.valueOf("ebebeb")),
new LinkEntry("reddit", "https://www.reddit.com/r/Mindustry/", Icon.redditAlien, Color.valueOf("ee593b")),
new LinkEntry("itch.io", "https://anuke.itch.io/mindustry", Icon.itchio, Color.valueOf("fa5c5c")),
new LinkEntry("google-play", "https://play.google.com/store/apps/details?id=io.anuke.mindustry", Icon.googleplay, Color.valueOf("689f38")),
diff --git a/core/src/mindustry/ui/dialogs/CustomGameDialog.java b/core/src/mindustry/ui/dialogs/CustomGameDialog.java
index f47a3ac796..9b3107820a 100644
--- a/core/src/mindustry/ui/dialogs/CustomGameDialog.java
+++ b/core/src/mindustry/ui/dialogs/CustomGameDialog.java
@@ -73,7 +73,6 @@ public class CustomGameDialog extends FloatingDialog{
image.row();
image.add(img).size(images);
-
BorderImage border = new BorderImage(map.safeTexture(), 3f);
border.setScaling(Scaling.fit);
image.replaceImage(border);
diff --git a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java
index c65efdd919..42ae294123 100644
--- a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java
+++ b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java
@@ -172,6 +172,7 @@ public class CustomRulesDialog extends FloatingDialog{
number("$rules.enemycorebuildradius", f -> rules.enemyCoreBuildRadius = f * tilesize, () -> Math.min(rules.enemyCoreBuildRadius / tilesize, 200));
title("$rules.title.experimental");
+ number("$rules.solarpowermultiplier", f -> rules.solarPowerMultiplier = f, () -> rules.solarPowerMultiplier);
check("$rules.lighting", b -> rules.lighting = b, () -> rules.lighting);
main.addButton(b -> {
diff --git a/core/src/mindustry/ui/dialogs/JoinDialog.java b/core/src/mindustry/ui/dialogs/JoinDialog.java
index 154cdbb7eb..d207fd4180 100644
--- a/core/src/mindustry/ui/dialogs/JoinDialog.java
+++ b/core/src/mindustry/ui/dialogs/JoinDialog.java
@@ -242,6 +242,9 @@ public class JoinDialog extends FloatingDialog{
}
void setup(){
+ local.clear();
+ remote.clear();
+ global.clear();
float w = targetWidth();
hosts.clear();
@@ -255,7 +258,6 @@ public class JoinDialog extends FloatingDialog{
pane.setScrollingDisabled(true, false);
setupRemote();
- refreshRemote();
cont.clear();
cont.table(t -> {
diff --git a/core/src/mindustry/ui/dialogs/ModsDialog.java b/core/src/mindustry/ui/dialogs/ModsDialog.java
index ca89f3a6a6..00d6e2351f 100644
--- a/core/src/mindustry/ui/dialogs/ModsDialog.java
+++ b/core/src/mindustry/ui/dialogs/ModsDialog.java
@@ -40,7 +40,7 @@ public class ModsDialog extends FloatingDialog{
}else{
try{
Fi file = tmpDirectory.child(text.replace("/", "") + ".zip");
- Streams.copyStream(result.getResultAsStream(), file.write(false));
+ Streams.copy(result.getResultAsStream(), file.write(false));
mods.importMod(file);
file.delete();
Core.app.post(() -> {
diff --git a/core/src/mindustry/ui/dialogs/SchematicsDialog.java b/core/src/mindustry/ui/dialogs/SchematicsDialog.java
index 86408921b9..fb29f9fa8e 100644
--- a/core/src/mindustry/ui/dialogs/SchematicsDialog.java
+++ b/core/src/mindustry/ui/dialogs/SchematicsDialog.java
@@ -1,7 +1,7 @@
package mindustry.ui.dialogs;
import arc.*;
-import arc.struct.*;
+import arc.files.*;
import arc.graphics.*;
import arc.graphics.Texture.*;
import arc.graphics.g2d.*;
@@ -10,6 +10,7 @@ import arc.scene.ui.*;
import arc.scene.ui.ImageButton.*;
import arc.scene.ui.TextButton.*;
import arc.scene.ui.layout.*;
+import arc.struct.*;
import arc.util.*;
import mindustry.core.GameState.*;
import mindustry.game.*;
@@ -214,14 +215,27 @@ public class SchematicsDialog extends FloatingDialog{
Core.app.setClipboardText(schematics.writeBase64(s));
}).marginLeft(12f);
t.row();
- t.addImageTextButton("$schematic.exportfile", Icon.export, style, () -> platform.showFileChooser(false, schematicExtension, file -> {
- dialog.hide();
- try{
- Schematics.write(s, file);
- }catch(Exception e){
- ui.showException(e);
+ t.addImageTextButton("$schematic.exportfile", Icon.export, style, () -> {
+ if(!ios){
+ platform.showFileChooser(false, schematicExtension, file -> {
+ dialog.hide();
+ try{
+ Schematics.write(s, file);
+ }catch(Throwable e){
+ ui.showException(e);
+ }
+ });
+ }else{
+ dialog.hide();
+ try{
+ Fi file = Core.files.local(s.name() + "." + schematicExtension);
+ Schematics.write(s, file);
+ platform.shareFile(file);
+ }catch(Throwable e){
+ ui.showException(e);
+ }
}
- })).marginLeft(12f);
+ }).marginLeft(12f);
});
});
diff --git a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java
index 2b4e336d67..af4f6db807 100644
--- a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java
+++ b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java
@@ -330,7 +330,12 @@ public class SettingsMenuDialog extends SettingsDialog{
if(Shaders.shield != null){
graphics.checkPref("animatedshields", !mobile);
}
- graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val));
+ if(!ios){
+ graphics.checkPref("bloom", !mobile, val -> renderer.toggleBloom(val));
+ }else{
+ Core.settings.put("bloom", false);
+ }
+
graphics.checkPref("pixelate", false, val -> {
if(val){
Events.fire(Trigger.enablePixelation);
diff --git a/core/src/mindustry/ui/fragments/ChatFragment.java b/core/src/mindustry/ui/fragments/ChatFragment.java
index a6cd4354cf..f1cd0d1327 100644
--- a/core/src/mindustry/ui/fragments/ChatFragment.java
+++ b/core/src/mindustry/ui/fragments/ChatFragment.java
@@ -231,6 +231,8 @@ public class ChatFragment extends Table{
fadetime += 1f;
fadetime = Math.min(fadetime, messagesShown) + 1f;
+
+ if(scrollPos > 0) scrollPos++;
}
private static class ChatMessage{
diff --git a/core/src/mindustry/ui/fragments/HudFragment.java b/core/src/mindustry/ui/fragments/HudFragment.java
index 3109179e1b..09f309dd5d 100644
--- a/core/src/mindustry/ui/fragments/HudFragment.java
+++ b/core/src/mindustry/ui/fragments/HudFragment.java
@@ -43,6 +43,9 @@ public class HudFragment extends Fragment{
private boolean shown = true;
private float dsize = 47.2f;
+ private String hudText = "";
+ private boolean showHudText;
+
private long lastToast;
public void build(Group parent){
@@ -341,6 +344,19 @@ public class HudFragment extends Fragment{
t.add("$saveload").style(Styles.outlineLabel);
});
+ parent.fill(p -> {
+ p.top().table(Styles.black3, t -> t.margin(4).label(() -> hudText)
+ .style(Styles.outlineLabel)).padTop(10).visible(p.color.a >= 0.001f);
+ p.update(() -> {
+ p.color.a = Mathf.lerpDelta(p.color.a, Mathf.num(showHudText), 0.2f);
+ if(state.is(State.menu)){
+ p.color.a = 0f;
+ showHudText = false;
+ }
+ });
+ p.touchable(Touchable.disabled);
+ });
+
blockfrag.build(parent);
}
@@ -368,6 +384,15 @@ public class HudFragment extends Fragment{
}
}
+ public void setHudText(String text){
+ showHudText = true;
+ hudText = text;
+ }
+
+ public void toggleHudText(boolean shown){
+ showHudText = shown;
+ }
+
private void scheduleToast(Runnable run){
long duration = (int)(3.5 * 1000);
long since = Time.timeSinceMillis(lastToast);
diff --git a/core/src/mindustry/world/blocks/Autotiler.java b/core/src/mindustry/world/blocks/Autotiler.java
index 4c25ca170d..75cb41419a 100644
--- a/core/src/mindustry/world/blocks/Autotiler.java
+++ b/core/src/mindustry/world/blocks/Autotiler.java
@@ -84,7 +84,7 @@ public interface Autotiler{
default boolean blends(Tile tile, int rotation, int direction){
Tile other = tile.getNearby(Mathf.mod(rotation - direction, 4));
if(other != null) other = other.link();
- return other != null && blends(tile, rotation, other.x, other.y, other.rotation(), other.block());
+ return other != null && other.getTeam() == tile.getTeam() && blends(tile, rotation, other.x, other.y, other.rotation(), other.block());
}
default boolean blendsArmored(Tile tile, int rotation, int otherx, int othery, int otherrot, Block otherblock){
diff --git a/core/src/mindustry/world/blocks/ItemSelection.java b/core/src/mindustry/world/blocks/ItemSelection.java
index 8fe4994d5b..cf4f5a0580 100644
--- a/core/src/mindustry/world/blocks/ItemSelection.java
+++ b/core/src/mindustry/world/blocks/ItemSelection.java
@@ -1,31 +1,29 @@
package mindustry.world.blocks;
-import arc.struct.*;
import arc.func.*;
import arc.scene.style.*;
import arc.scene.ui.*;
import arc.scene.ui.layout.*;
+import arc.struct.*;
+import mindustry.ctype.*;
import mindustry.gen.*;
-import mindustry.type.*;
import mindustry.ui.*;
-import mindustry.ui.Cicon;
import static mindustry.Vars.*;
public class ItemSelection{
+ private static float scrollPos = 0f;
- public static void buildItemTable(Table table, Prov- holder, Cons
- consumer){
-
- Array
- items = content.items();
+ public static void buildTable(Table table, Array items, Prov holder, Cons consumer){
ButtonGroup group = new ButtonGroup<>();
group.setMinCheckCount(0);
Table cont = new Table();
- cont.defaults().size(38);
+ cont.defaults().size(40);
int i = 0;
- for(Item item : items){
+ for(T item : items){
if(!data.isUnlocked(item) && world.isZone()) continue;
ImageButton button = cont.addImageButton(Tex.whiteui, Styles.clearToggleTransi, 24, () -> control.input.frag.config.hideConfig()).group(group).get();
@@ -38,6 +36,22 @@ public class ItemSelection{
}
}
- table.add(cont);
+ //add extra blank spaces so it looks nice
+ if(i % 4 != 0){
+ int remaining = 4 - (i % 4);
+ for(int j = 0; j < remaining; j++){
+ cont.addImage(Styles.black6);
+ }
+ }
+
+ ScrollPane pane = new ScrollPane(cont, Styles.smallPane);
+ pane.setScrollingDisabled(true, false);
+ pane.setScrollYForce(scrollPos);
+ pane.update(() -> {
+ scrollPos = pane.getScrollY();
+ });
+
+ pane.setOverscroll(false, false);
+ table.add(pane).maxHeight(Scl.scl(40 * 5));
}
}
diff --git a/core/src/mindustry/world/blocks/distribution/Conveyor.java b/core/src/mindustry/world/blocks/distribution/Conveyor.java
index 39b07e2926..6aa1c8bce0 100644
--- a/core/src/mindustry/world/blocks/distribution/Conveyor.java
+++ b/core/src/mindustry/world/blocks/distribution/Conveyor.java
@@ -266,6 +266,7 @@ public class Conveyor extends Block implements Autotiler{
@Override
public void handleStack(Item item, int amount, Tile tile, Unit source){
ConveyorEntity e = tile.ent();
+ amount = Math.min(amount, itemCapacity - e.len);
for(int i = amount - 1; i >= 0; i--){
e.add(0);
diff --git a/core/src/mindustry/world/blocks/distribution/OverflowGate.java b/core/src/mindustry/world/blocks/distribution/OverflowGate.java
index c3314577f3..3236010b2a 100644
--- a/core/src/mindustry/world/blocks/distribution/OverflowGate.java
+++ b/core/src/mindustry/world/blocks/distribution/OverflowGate.java
@@ -2,13 +2,15 @@ package mindustry.world.blocks.distribution;
import arc.math.Mathf;
import arc.util.Time;
-import mindustry.entities.type.TileEntity;
+import mindustry.entities.type.*;
import mindustry.type.Item;
import mindustry.world.*;
import mindustry.world.meta.BlockGroup;
import java.io.*;
+import static mindustry.Vars.world;
+
public class OverflowGate extends Block{
public float speed = 1f;
public boolean invert = false;
@@ -28,6 +30,11 @@ public class OverflowGate extends Block{
return true;
}
+ @Override
+ public int acceptStack(Item item, int amount, Tile tile, Unit source){
+ return 0;
+ }
+
@Override
public int removeStack(Tile tile, Item item, int amount){
OverflowGateEntity entity = tile.ent();
@@ -47,6 +54,11 @@ public class OverflowGate extends Block{
}
if(entity.lastItem != null){
+ if(entity.lastInput == null){
+ entity.lastItem = null;
+ return;
+ }
+
entity.time += 1f / speed * Time.delta();
Tile target = getTileTarget(tile, entity.lastItem, entity.lastInput, false);
@@ -120,19 +132,24 @@ public class OverflowGate extends Block{
@Override
public byte version(){
- return 2;
+ return 3;
}
@Override
public void write(DataOutput stream) throws IOException{
super.write(stream);
+ stream.writeInt(lastInput == null ? Pos.invalid : lastInput.pos());
}
@Override
public void read(DataInput stream, byte revision) throws IOException{
super.read(stream, revision);
+
if(revision == 1){
new DirectionalItemBuffer(25, 50f).read(stream);
+ }else if(revision == 3){
+ lastInput = world.tile(stream.readInt());
+ lastItem = items.first();
}
}
}
diff --git a/core/src/mindustry/world/blocks/distribution/Sorter.java b/core/src/mindustry/world/blocks/distribution/Sorter.java
index 22e196791e..192c27a7db 100644
--- a/core/src/mindustry/world/blocks/distribution/Sorter.java
+++ b/core/src/mindustry/world/blocks/distribution/Sorter.java
@@ -14,7 +14,7 @@ import mindustry.world.meta.*;
import java.io.*;
-import static mindustry.Vars.content;
+import static mindustry.Vars.*;
public class Sorter extends Block{
private static Item lastItem;
@@ -46,6 +46,9 @@ public class Sorter extends Block{
@Override
public void configured(Tile tile, Player player, int value){
tile.ent().sortItem = content.item(value);
+ if(!headless){
+ renderer.minimap.update(tile);
+ }
}
@Override
@@ -133,7 +136,7 @@ public class Sorter extends Block{
@Override
public void buildConfiguration(Tile tile, Table table){
SorterEntity entity = tile.ent();
- ItemSelection.buildItemTable(table, () -> entity.sortItem, item -> {
+ ItemSelection.buildTable(table, content.items(), () -> entity.sortItem, item -> {
lastItem = item;
tile.configure(item == null ? -1 : item.id);
});
diff --git a/core/src/mindustry/world/blocks/power/Battery.java b/core/src/mindustry/world/blocks/power/Battery.java
index 2783984747..38fc08ed5e 100644
--- a/core/src/mindustry/world/blocks/power/Battery.java
+++ b/core/src/mindustry/world/blocks/power/Battery.java
@@ -1,10 +1,29 @@
package mindustry.world.blocks.power;
+import arc.graphics.*;
+import arc.graphics.g2d.*;
+import mindustry.world.*;
+
+import static mindustry.Vars.tilesize;
+
public class Battery extends PowerDistributor{
+ public int topRegion = reg("-top");
+
+ public Color emptyLightColor = Color.valueOf("f8c266");
+ public Color fullLightColor = Color.valueOf("fb9567");
public Battery(String name){
super(name);
outputsPower = true;
consumesPower = true;
}
+
+ @Override
+ public void draw(Tile tile){
+ Draw.color(emptyLightColor, fullLightColor, tile.entity.power.status);
+ Fill.square(tile.drawx(), tile.drawy(), tilesize * size / 2f - 1);
+ Draw.color();
+
+ Draw.rect(reg(topRegion), tile.drawx(), tile.drawy());
+ }
}
diff --git a/core/src/mindustry/world/blocks/power/SolarGenerator.java b/core/src/mindustry/world/blocks/power/SolarGenerator.java
index 75a23c9d6f..cd7efdb5ed 100644
--- a/core/src/mindustry/world/blocks/power/SolarGenerator.java
+++ b/core/src/mindustry/world/blocks/power/SolarGenerator.java
@@ -17,7 +17,7 @@ public class SolarGenerator extends PowerGenerator{
@Override
public void update(Tile tile){
- tile.ent().productionEfficiency = state.rules.lighting ? 1f - state.rules.ambientLight.a : 1f;
+ tile.ent().productionEfficiency = state.rules.solarPowerMultiplier < 0 ? (state.rules.lighting ? 1f - state.rules.ambientLight.a : 1f) : state.rules.solarPowerMultiplier;
}
@Override
diff --git a/core/src/mindustry/world/blocks/production/Separator.java b/core/src/mindustry/world/blocks/production/Separator.java
index 7361b8f4bb..26d0ae8f46 100644
--- a/core/src/mindustry/world/blocks/production/Separator.java
+++ b/core/src/mindustry/world/blocks/production/Separator.java
@@ -107,6 +107,7 @@ public class Separator extends Block{
entity.cons.trigger();
if(item != null && entity.items.get(item) < itemCapacity){
+ useContent(tile, item);
offloadNear(tile, item);
}
}
diff --git a/core/src/mindustry/world/blocks/production/SolidPump.java b/core/src/mindustry/world/blocks/production/SolidPump.java
index 13db9f2e2c..d6db8ea3aa 100644
--- a/core/src/mindustry/world/blocks/production/SolidPump.java
+++ b/core/src/mindustry/world/blocks/production/SolidPump.java
@@ -111,6 +111,7 @@ public class SolidPump extends Pump{
tile.entity.liquids.add(result, maxPump);
entity.lastPump = maxPump;
entity.warmup = Mathf.lerpDelta(entity.warmup, 1f, 0.02f);
+ if(tile.entity.timer.get(timerContentCheck, 10)) useContent(tile, result);
if(Mathf.chance(entity.delta() * updateEffectChance))
Effects.effect(updateEffect, entity.x + Mathf.range(size * 2f), entity.y + Mathf.range(size * 2f));
}else{
diff --git a/core/src/mindustry/world/blocks/sandbox/ItemSource.java b/core/src/mindustry/world/blocks/sandbox/ItemSource.java
index 2ff49b70d8..bf7a4a5c45 100644
--- a/core/src/mindustry/world/blocks/sandbox/ItemSource.java
+++ b/core/src/mindustry/world/blocks/sandbox/ItemSource.java
@@ -81,7 +81,7 @@ public class ItemSource extends Block{
@Override
public void buildConfiguration(Tile tile, Table table){
ItemSourceEntity entity = tile.ent();
- ItemSelection.buildItemTable(table, () -> entity.outputItem, item -> {
+ ItemSelection.buildTable(table, content.items(), () -> entity.outputItem, item -> {
lastItem = item;
tile.configure(item == null ? -1 : item.id);
});
diff --git a/core/src/mindustry/world/blocks/sandbox/LiquidSource.java b/core/src/mindustry/world/blocks/sandbox/LiquidSource.java
index d1ff0be0dd..a30367fc81 100644
--- a/core/src/mindustry/world/blocks/sandbox/LiquidSource.java
+++ b/core/src/mindustry/world/blocks/sandbox/LiquidSource.java
@@ -1,24 +1,19 @@
package mindustry.world.blocks.sandbox;
import arc.*;
-import arc.struct.*;
import arc.graphics.g2d.*;
-import arc.scene.style.*;
-import arc.scene.ui.*;
import arc.scene.ui.layout.*;
-import arc.util.*;
import arc.util.ArcAnnotate.*;
+import arc.util.*;
import mindustry.entities.traits.BuilderTrait.*;
import mindustry.entities.type.*;
-import mindustry.gen.*;
import mindustry.type.*;
-import mindustry.ui.*;
-import mindustry.ui.Cicon;
import mindustry.world.*;
+import mindustry.world.blocks.*;
import java.io.*;
-import static mindustry.Vars.*;
+import static mindustry.Vars.content;
public class LiquidSource extends Block{
public static Liquid lastLiquid;
@@ -82,29 +77,10 @@ public class LiquidSource extends Block{
public void buildConfiguration(Tile tile, Table table){
LiquidSourceEntity entity = tile.ent();
- Array items = content.liquids();
-
- ButtonGroup group = new ButtonGroup<>();
- group.setMinCheckCount(0);
- Table cont = new Table();
-
- for(int i = 0; i < items.size; i++){
- final int f = i;
- ImageButton button = cont.addImageButton(Tex.clear, Styles.clearToggleTransi, 24, () -> control.input.frag.config.hideConfig()).size(38).group(group).get();
- button.changed(() -> {
- tile.configure(button.isChecked() ? items.get(f).id : -1);
- control.input.frag.config.hideConfig();
- lastLiquid = items.get(f);
- });
- button.getStyle().imageUp = new TextureRegionDrawable(items.get(i).icon(Cicon.medium));
- button.setChecked(entity.source == items.get(i));
-
- if(i % 4 == 3){
- cont.row();
- }
- }
-
- table.add(cont);
+ ItemSelection.buildTable(table, content.liquids(), () -> entity.source, liquid -> {
+ lastLiquid = liquid;
+ tile.configure(liquid == null ? -1 : liquid.id);
+ });
}
@Override
diff --git a/core/src/mindustry/world/blocks/storage/Unloader.java b/core/src/mindustry/world/blocks/storage/Unloader.java
index b63e7a04bb..bd571efe0a 100644
--- a/core/src/mindustry/world/blocks/storage/Unloader.java
+++ b/core/src/mindustry/world/blocks/storage/Unloader.java
@@ -123,7 +123,7 @@ public class Unloader extends Block{
@Override
public void buildConfiguration(Tile tile, Table table){
UnloaderEntity entity = tile.ent();
- ItemSelection.buildItemTable(table, () -> entity.sortItem, item -> {
+ ItemSelection.buildTable(table, content.items(), () -> entity.sortItem, item -> {
lastItem = item;
tile.configure(item == null ? -1 : item.id);
});
diff --git a/core/src/mindustry/world/modules/ItemModule.java b/core/src/mindustry/world/modules/ItemModule.java
index 87cc30d468..b08a419d0b 100644
--- a/core/src/mindustry/world/modules/ItemModule.java
+++ b/core/src/mindustry/world/modules/ItemModule.java
@@ -1,10 +1,9 @@
package mindustry.world.modules;
-import mindustry.type.Item;
-import mindustry.type.ItemStack;
+import mindustry.type.*;
import java.io.*;
-import java.util.Arrays;
+import java.util.*;
import static mindustry.Vars.content;
@@ -69,7 +68,7 @@ public class ItemModule extends BlockModule{
return total;
}
- public Item first(){ // fixme: entangle with take()
+ public Item first(){
for(int i = 0; i < items.length; i++){
if(items[i] > 0){
return content.item(i);
@@ -81,12 +80,12 @@ public class ItemModule extends BlockModule{
public Item take(){
for(int i = 0; i < items.length; i++){
int index = (i + takeRotation);
- if(index >= items.length) index -= items.length; //conditional instead of mod
+ if(index >= items.length) index -= items.length;
if(items[index] > 0){
items[index] --;
total --;
takeRotation = index + 1;
- return content.item(index % items.length);
+ return content.item(index);
}
}
return null;
diff --git a/desktop/src/mindustry/desktop/DesktopLauncher.java b/desktop/src/mindustry/desktop/DesktopLauncher.java
index 0ada554894..925a77aefb 100644
--- a/desktop/src/mindustry/desktop/DesktopLauncher.java
+++ b/desktop/src/mindustry/desktop/DesktopLauncher.java
@@ -3,6 +3,7 @@ package mindustry.desktop;
import arc.*;
import arc.Files.*;
import arc.backend.sdl.*;
+import arc.backend.sdl.jni.*;
import arc.files.*;
import arc.func.*;
import arc.math.*;
@@ -11,7 +12,6 @@ import arc.util.*;
import arc.util.serialization.*;
import club.minnced.discord.rpc.*;
import com.codedisaster.steamworks.*;
-import io.anuke.arc.backends.sdl.jni.*;
import mindustry.*;
import mindustry.core.GameState.*;
import mindustry.core.*;
@@ -181,13 +181,14 @@ public class DesktopLauncher extends ClientLauncher{
Cons dialog = Runnable::run;
boolean badGPU = false;
- if(e.getMessage() != null && (e.getMessage().contains("Couldn't create window") || e.getMessage().contains("OpenGL 2.0 or higher") || e.getMessage().toLowerCase().contains("pixel format"))){
+ if(e.getMessage() != null && (e.getMessage().contains("Couldn't create window") ||
+ e.getMessage().contains("OpenGL 2.0 or higher") || e.getMessage().toLowerCase().contains("pixel format") || e.getMessage().contains("GLEW"))){
dialog.get(() -> message(
e.getMessage().contains("Couldn't create window") ? "A graphics initialization error has occured! Try to update your graphics drivers:\n" + e.getMessage() :
- "Your graphics card does not support OpenGL 2.0!\n" +
- "Try to update your graphics drivers.\n\n" +
- "(If that doesn't work, your computer just doesn't support Mindustry.)"));
+ "Your graphics card does not support OpenGL 2.0 with the framebuffer_object extension!\n" +
+ "Try to update your graphics drivers. If this doesn't work, your computer may not support Mindustry.\n\n" +
+ "Full message: " + e.getMessage()));
badGPU = true;
}
@@ -319,7 +320,7 @@ public class DesktopLauncher extends ClientLauncher{
try{
Enumeration e = NetworkInterface.getNetworkInterfaces();
NetworkInterface out;
- for(out = e.nextElement(); (out.getHardwareAddress() == null || !validAddress(out.getHardwareAddress())) && e.hasMoreElements(); out = e.nextElement());
+ for(out = e.nextElement(); (out.getHardwareAddress() == null || out.isVirtual() || !validAddress(out.getHardwareAddress())) && e.hasMoreElements(); out = e.nextElement());
byte[] bytes = out.getHardwareAddress();
byte[] result = new byte[8];
diff --git a/desktop/src/mindustry/desktop/steam/SNet.java b/desktop/src/mindustry/desktop/steam/SNet.java
index 218b02ca42..3e2ec342e7 100644
--- a/desktop/src/mindustry/desktop/steam/SNet.java
+++ b/desktop/src/mindustry/desktop/steam/SNet.java
@@ -1,16 +1,16 @@
package mindustry.desktop.steam;
import arc.*;
+import arc.func.*;
+import arc.struct.*;
+import arc.util.*;
+import arc.util.pooling.*;
import com.codedisaster.steamworks.*;
import com.codedisaster.steamworks.SteamFriends.*;
import com.codedisaster.steamworks.SteamMatchmaking.*;
import com.codedisaster.steamworks.SteamNetworking.*;
-import arc.struct.*;
-import arc.func.*;
-import arc.util.*;
-import arc.util.pooling.*;
import mindustry.core.GameState.*;
-import mindustry.core.Version;
+import mindustry.core.*;
import mindustry.game.EventType.*;
import mindustry.game.*;
import mindustry.net.ArcNetProvider.*;
@@ -240,12 +240,9 @@ public class SNet implements SteamNetworkingCallback, SteamMatchmakingCallback,
return;
}
- if(net.active()){
- net.disconnect();
- net.closeServer();
- logic.reset();
- state.set(State.menu);
- }
+ logic.reset();
+ net.reset();
+ state.set(State.menu);
currentLobby = steamIDLobby;
currentServer = smat.getLobbyOwner(steamIDLobby);
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/103.1.txt b/fastlane/metadata/android/cs-CZ/changelogs/103.1.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/103.1.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/103.2.txt b/fastlane/metadata/android/cs-CZ/changelogs/103.2.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/103.2.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/103.3.txt b/fastlane/metadata/android/cs-CZ/changelogs/103.3.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/103.3.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/103.txt b/fastlane/metadata/android/cs-CZ/changelogs/103.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/103.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/29591.txt b/fastlane/metadata/android/cs-CZ/changelogs/29591.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/29591.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/29594.txt b/fastlane/metadata/android/cs-CZ/changelogs/29594.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/29594.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/cs-CZ/changelogs/29597.txt b/fastlane/metadata/android/cs-CZ/changelogs/29597.txt
new file mode 100644
index 0000000000..ea267c1c96
--- /dev/null
+++ b/fastlane/metadata/android/cs-CZ/changelogs/29597.txt
@@ -0,0 +1,9 @@
+- Přidány nové ikony s hladkým škálováním
+- Přidána černá díra na kapaliny (přispěno uživatelem @GioIacca9)
+- Přidáno nastavení průsvitnosti přemostění přepravníku (přispěno uživatelem @Quezler)
+- Přidána brána s podtokem (protikus k bráně s přetečením)
+- Přidány emotikony do kanálu zpráv, pro většinu bloků a předmětů
+- Přidán nový strom technologií, s lepší podporou pro modifikace
+- Přidán soubor s logem hry, uložený v adresáři s daty
+- Přidán nový oddělovač pro sprity a animace (ocení modéři)
+- Přidán seznam synergetických dlaždic do statistik některých bloků (viz například vrt na vodu)
diff --git a/fastlane/metadata/android/en-US/changelogs/104.1.txt b/fastlane/metadata/android/en-US/changelogs/104.1.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/104.1.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/104.2.txt b/fastlane/metadata/android/en-US/changelogs/104.2.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/104.2.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/104.3.txt b/fastlane/metadata/android/en-US/changelogs/104.3.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/104.3.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/104.4.txt b/fastlane/metadata/android/en-US/changelogs/104.4.txt
new file mode 100644
index 0000000000..4790ed135d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/104.4.txt
@@ -0,0 +1,4 @@
+- Updated feature suggestion link
+- Updated translations
+- Fixed modified player name persisting after server is exited
+- Added solar power multiplier rule
diff --git a/fastlane/metadata/android/en-US/changelogs/104.txt b/fastlane/metadata/android/en-US/changelogs/104.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/104.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29603.txt b/fastlane/metadata/android/en-US/changelogs/29603.txt
new file mode 100644
index 0000000000..a268ddebde
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29603.txt
@@ -0,0 +1,9 @@
+- Fixed incorrect line numbers in script errors
+- Fixed black screen caused by bloom on some devices
+- Fixed some music issues with sound playing at 0% [Android]
+- Fixed client IDs resetting
+- Fixed data resetting between specific versions [Android]
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Optimized and cleaned up conveyors
+- Tweaked power block palette
diff --git a/fastlane/metadata/android/en-US/changelogs/29607.txt b/fastlane/metadata/android/en-US/changelogs/29607.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29607.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29609.txt b/fastlane/metadata/android/en-US/changelogs/29609.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29609.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29612.txt b/fastlane/metadata/android/en-US/changelogs/29612.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29612.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29616.txt b/fastlane/metadata/android/en-US/changelogs/29616.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29616.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29618.txt b/fastlane/metadata/android/en-US/changelogs/29618.txt
new file mode 100644
index 0000000000..6f3e27fb4d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29618.txt
@@ -0,0 +1,6 @@
+- Optimized and cleaned up conveyors
+- Made unloaders take items from blocks in equal amounts
+- Added server categories (Partially contributed by @Quezler)
+- Added require() function for scripts (Contributed by @DeltaNedas)
+- Added color gradient for battery status (Contributed by @Arkanic (eventually))
+- Changed script loading: For mods with more than one script file, the main file must be named "main.js" and must require() other files to run them
diff --git a/fastlane/metadata/android/en-US/changelogs/29620.txt b/fastlane/metadata/android/en-US/changelogs/29620.txt
new file mode 100644
index 0000000000..4790ed135d
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/29620.txt
@@ -0,0 +1,4 @@
+- Updated feature suggestion link
+- Updated translations
+- Fixed modified player name persisting after server is exited
+- Added solar power multiplier rule
diff --git a/fastlane/metadata/android/fr-FR/video.txt b/fastlane/metadata/android/fr-FR/video.txt
deleted file mode 100644
index 8b13789179..0000000000
--- a/fastlane/metadata/android/fr-FR/video.txt
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/fastlane/metadata/android/it-IT/video.txt b/fastlane/metadata/android/it-IT/video.txt
deleted file mode 100644
index 8b13789179..0000000000
--- a/fastlane/metadata/android/it-IT/video.txt
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/fastlane/metadata/android/ru-RU/changelogs/104.4.txt b/fastlane/metadata/android/ru-RU/changelogs/104.4.txt
new file mode 100644
index 0000000000..49c499f087
--- /dev/null
+++ b/fastlane/metadata/android/ru-RU/changelogs/104.4.txt
@@ -0,0 +1,4 @@
+- Обновлена ссылка для предложений новых возможностей
+- Обновлены переводы
+- Исправлена ошибка, из-за которой имя игрока, изменённое сервером, оставалось после выхода
+- Добавлено правило множителя солнечной энергии
diff --git a/fastlane/metadata/android/ru-RU/full_description.txt b/fastlane/metadata/android/ru-RU/full_description.txt
index 2b1647994e..c69aa89b6f 100644
--- a/fastlane/metadata/android/ru-RU/full_description.txt
+++ b/fastlane/metadata/android/ru-RU/full_description.txt
@@ -1,15 +1,14 @@
-Создавайте сложные логистические сети для переноса боеприпасов для турелей, добывайте ресурсы для строительства, и защищайте их от различных волн врагов.
-Играйте с друзьями в кроссплатформенные кооперативные игры, или бросьте им вызов в командных PvP-матчах.
+Создавайте сложные логистические сети для переноса боеприпасов для турелей, добывайте ресурсы для строительства и защищайте их от различных волн врагов. Играйте с друзьями в кроссплатформенные многопользовательские кооперативные игры или бросьте им вызов в командных PvP-матчах.
Особенности игры:
- 24 встроенные карты
-- Кампания, с полноценным технологическим древом и прогрессией карт
+- Кампания с полноценным технологическим древом и прогрессией карт
- 4 вида мощных боссов
- Системы для транспорта электроэнергии, жидкостей и ресурсов
-- 19 видов дронов, кораблей и наземных боевых единиц
+- 19 видов дронов, мехов и кораблей
- Более 120 блоков в техногическом древе
- Более 75 видов натуральных блоков
-- Кроссплатформенный мультиплеер с поддержкой как и локальных сетей, так и серверов
+- Кроссплатформенная многопользовательская игра с поддержкой как и локальных сетей, так и серверов
- Пользовательские настройки игры — изменяйте цену блоков, силу врагов, количество стартовых ресурсов, интервал между волнами и т.д.
-- Редактор карт с бесчисленными возможностями, инструментами для случайной генерации руд, рельефа, декораций, а также для симметрии карт
+- Мощный редактор карт с инструментами для случайной генерации руд, рельефа, декораций, а также для симметрии карт
- Настраиваемые раскладки волн для карт
diff --git a/fastlane/metadata/android/uk/changelogs/104.4 b/fastlane/metadata/android/uk/changelogs/104.4
new file mode 100644
index 0000000000..9a5813fab6
--- /dev/null
+++ b/fastlane/metadata/android/uk/changelogs/104.4
@@ -0,0 +1,4 @@
+- Оновлено посилання, яке веде на сторінку, де можна запропонувати нову можливість
+- Оновлено переклади
+- Виправлено помилка, через яку ім'я гравця, змінене серером, залишається
+- Додано користувацьке правило — множник сонячної енергії
diff --git a/fastlane/metadata/android/uk/full_description.txt b/fastlane/metadata/android/uk/full_description.txt
index d1f27119ef..6d0515099a 100644
--- a/fastlane/metadata/android/uk/full_description.txt
+++ b/fastlane/metadata/android/uk/full_description.txt
@@ -1,5 +1,4 @@
-Створюйте складні логістичні мережі для перенесення боєприпасів у башточки, видобувайте ресурси для будівництва, і захищайте своє ядро від різних хвиль ворогів.
-Грайте з друзями на різних платформах у кооперативні ігри, або киньте їм виклик в командних PvP-матчах.
+Створюйте складні системи логістики для перенесення боєприпасів у башточки, видобувайте ресурси для будівництва, і захищайте своє ядро від різних хвиль ворогів. Грайте з друзями на різних платформах у кооперативні ігри, або киньте їм виклик в командних PvP-матчах.
Особливості гри:
- 24 вбудовані мапи
@@ -9,7 +8,7 @@
- 19 видів дронів, кораблів та наземних бойових одиниць
- Понад 120 блоків у дереві технологій
- Понад 75 видів блоків навколишнього середовища
-- Багатоплатформовий мультиплеєр з підтримкою як і локальних мереж, так і серверів
+- Багатоплатформова багатокористувацька гра з підтримкою як і локальних мереж, так і серверів
- Користувацькі налаштування гри — ціну блоків, сила ворогів, кількість початкових ресурсів, інтервал між хвилями, тощо
-- Редактор мап з незкінченними можливостями, інструментами для випадкової генерації руд, рельєфу, декорацій, а також для симетрії мап
+- Редактор мап з нескінченними можливостями, інструментами для випадкової генерації руд, рельєфу, декорацій, а також для симетрії мап
- Розкладки хвиль для мап можна налаштувати
diff --git a/fastlane/metadata/steam/russian/short-description.txt b/fastlane/metadata/steam/russian/short-description.txt
index 4bd0ace80c..995a8f2cf0 100644
--- a/fastlane/metadata/steam/russian/short-description.txt
+++ b/fastlane/metadata/steam/russian/short-description.txt
@@ -1 +1 @@
-Безграничная игра в жанре башенная защита с упором на управлении ресурсами.
+Безграничная игра в жанре «башенная защита» с упором на управление ресурсами.
diff --git a/fastlane/metadata/steam/ukrainian/achievements.vdf b/fastlane/metadata/steam/ukrainian/achievements.vdf
index 65b55d7f73..6049e105ff 100644
--- a/fastlane/metadata/steam/ukrainian/achievements.vdf
+++ b/fastlane/metadata/steam/ukrainian/achievements.vdf
@@ -3,28 +3,28 @@
"Language" "ukrainian"
"Tokens"
{
- "NEW_ACHIEVEMENT_20_0_NAME" "Перевірено"
+ "NEW_ACHIEVEMENT_20_0_NAME" "Перевірений"
"NEW_ACHIEVEMENT_20_0_DESC" "Завершіть навчання."
"NEW_ACHIEVEMENT_20_1_NAME" "Забіяка"
- "NEW_ACHIEVEMENT_20_1_DESC" "Знищьте 1000 ворожих одиниць."
+ "NEW_ACHIEVEMENT_20_1_DESC" "Знищте 1 000 ворожих одиниць."
"NEW_ACHIEVEMENT_20_2_NAME" "Чистка"
- "NEW_ACHIEVEMENT_20_2_DESC" "Знишьте 100 000 ворожих одиниць."
+ "NEW_ACHIEVEMENT_20_2_DESC" "Знищте 100 000 ворожих одиниць."
"NEW_ACHIEVEMENT_20_3_NAME" "Атмосферне перевезення"
"NEW_ACHIEVEMENT_20_3_DESC" "Запустіть 10 000 предметів загалом."
- "NEW_ACHIEVEMENT_20_5_NAME" "Нескінченні поставки"
- "NEW_ACHIEVEMENT_20_5_DESC" "Запустіть 1000 000 предметів загалом."
+ "NEW_ACHIEVEMENT_20_5_NAME" "Нескінченне постачання"
+ "NEW_ACHIEVEMENT_20_5_DESC" "Запустіть 1 000 000 предметів загалом."
"NEW_ACHIEVEMENT_20_6_NAME" "Завойовник"
"NEW_ACHIEVEMENT_20_6_DESC" "Виграйте 10 матчів у режимі атаки."
"NEW_ACHIEVEMENT_20_7_NAME" "Чемпіон"
"NEW_ACHIEVEMENT_20_7_DESC" "Виграйте 10 матчів у режимі PvP."
"NEW_ACHIEVEMENT_20_8_NAME" "Бліц"
- "NEW_ACHIEVEMENT_20_8_DESC" "Знищіть вороже ядро в зоні атаки за 5 хвиль або менше."
+ "NEW_ACHIEVEMENT_20_8_DESC" "Знищте вороже ядро в зоні атаки за 5 хвиль або менше."
"NEW_ACHIEVEMENT_20_9_NAME" "Ядерний дощ"
"NEW_ACHIEVEMENT_20_9_DESC" "Запустіть своє ядро в зону 30 разів."
"NEW_ACHIEVEMENT_20_10_NAME" "Наполегливий"
- "NEW_ACHIEVEMENT_20_10_DESC" "Виживіть 100 хвиль."
+ "NEW_ACHIEVEMENT_20_10_DESC" "Протримайтесь 100 хвиль."
"NEW_ACHIEVEMENT_20_11_NAME" "Неперевершений"
- "NEW_ACHIEVEMENT_20_11_DESC" "Виживіть 500 хвиль."
+ "NEW_ACHIEVEMENT_20_11_DESC" "Протримайтесь 500 хвиль."
"NEW_ACHIEVEMENT_20_12_NAME" "Дослідник"
"NEW_ACHIEVEMENT_20_12_DESC" "Дослідіть все."
"NEW_ACHIEVEMENT_20_13_NAME" "Перевертень"
@@ -32,23 +32,23 @@
"NEW_ACHIEVEMENT_20_14_NAME" "Перевантаження"
"NEW_ACHIEVEMENT_20_14_DESC" "Нанесіть шкоду мокрому ворогу електрикою."
"NEW_ACHIEVEMENT_20_15_NAME" "Рикошет"
- "NEW_ACHIEVEMENT_20_15_DESC" "Знищіть ворога його же власною відбитою кулею."
+ "NEW_ACHIEVEMENT_20_15_DESC" "Знищте ворога його же власною відбитою кулею."
"NEW_ACHIEVEMENT_20_17_NAME" "ВЕЛИЧЕЗНА ПОМИЛКА"
"NEW_ACHIEVEMENT_20_17_DESC" "Дослідіть маршрутизатора."
"NEW_ACHIEVEMENT_20_18_NAME" "Створення"
"NEW_ACHIEVEMENT_20_18_DESC" "Побудуйте 10 000 блоків."
"NEW_ACHIEVEMENT_20_19_NAME" "Зрівняти з землею"
- "NEW_ACHIEVEMENT_20_19_DESC" "Знищьте 1000 ворожих блоків."
+ "NEW_ACHIEVEMENT_20_19_DESC" "Знищте 1 000 ворожих блоків."
"NEW_ACHIEVEMENT_20_20_NAME" "Ефектна катастрофа"
- "NEW_ACHIEVEMENT_20_20_DESC" "Торієвий реактор повинен перегрітися й вибихнути."
+ "NEW_ACHIEVEMENT_20_20_DESC" "Торієвий реактор повинен перегрітися й вибухнути."
"NEW_ACHIEVEMENT_20_21_NAME" "Картограф"
"NEW_ACHIEVEMENT_20_21_DESC" "Зробіть 10 мап."
"NEW_ACHIEVEMENT_20_22_NAME" "Веб-переглядач"
- "NEW_ACHIEVEMENT_20_22_DESC" "Завантажте карту з Майстерні."
+ "NEW_ACHIEVEMENT_20_22_DESC" "Завантажте мапу з Майстерні."
"NEW_ACHIEVEMENT_20_23_NAME" "Творець"
- "NEW_ACHIEVEMENT_20_23_DESC" "Опублікуйте карту в Майстерні."
+ "NEW_ACHIEVEMENT_20_23_DESC" "Опублікуйте мапу в Майстерні."
"NEW_ACHIEVEMENT_20_24_NAME" "Убивця"
- "NEW_ACHIEVEMENT_20_24_DESC" "Переможіть боса."
+ "NEW_ACHIEVEMENT_20_24_DESC" "Здолайте боса."
"NEW_ACHIEVEMENT_20_25_NAME" "Дослідник"
"NEW_ACHIEVEMENT_20_25_DESC" "Розблокуйте всі зони в кампанії."
"NEW_ACHIEVEMENT_20_26_NAME" "Завершувач"
@@ -58,7 +58,7 @@
"NEW_ACHIEVEMENT_20_31_NAME" "Матеріал I"
"NEW_ACHIEVEMENT_20_31_DESC" "Розблокуйте титан."
"NEW_ACHIEVEMENT_21_0_NAME" "Камікадзе"
- "NEW_ACHIEVEMENT_21_0_DESC" "Заповніть свого меха вибуховими матеріалами і помріть, створивши вибух."
+ "NEW_ACHIEVEMENT_21_0_DESC" "Заповніть свого меха вибуховими матеріалами й помріть, створивши вибух."
"NEW_ACHIEVEMENT_21_1_NAME" "Це починається"
"NEW_ACHIEVEMENT_21_1_DESC" "Побудуйте завод мехів «Кинджал»."
"NEW_ACHIEVEMENT_21_2_NAME" "Прямий наступ"
@@ -92,7 +92,7 @@
"NEW_ACHIEVEMENT_21_16_NAME" "Єресь"
"NEW_ACHIEVEMENT_21_16_DESC" "Побудуйте два маршрутизатори поруч."
"NEW_ACHIEVEMENT_21_17_NAME" "Одинокий захисник"
- "NEW_ACHIEVEMENT_21_17_DESC" "Виживіть 10 хвиль в першій-ліпшій зоні без будування будування будь-яких блоків."
+ "NEW_ACHIEVEMENT_21_17_DESC" "Протримайтесь 10 хвиль в першій-ліпшій зоні без будування будування будь-яких блоків."
"NEW_ACHIEVEMENT_21_18_NAME" "Спалити"
"NEW_ACHIEVEMENT_21_18_DESC" "Використайте піротит в будь-якій башті."
"NEW_ACHIEVEMENT_21_19_NAME" "Ефективність"
@@ -100,8 +100,8 @@
"NEW_ACHIEVEMENT_21_20_NAME" "Класичний режим"
"NEW_ACHIEVEMENT_21_20_DESC" "Увімкніть пікселізацію."
"NEW_ACHIEVEMENT_21_21_NAME" "Науковець"
- "NEW_ACHIEVEMENT_21_21_DESC" "Відкрийти Wiki з гри."
- "NEW_ACHIEVEMENT_21_22_NAME" "Впевнений початок"
+ "NEW_ACHIEVEMENT_21_21_DESC" "Відкрийти Вікі з гри."
+ "NEW_ACHIEVEMENT_21_22_NAME" "Упевнений початок"
"NEW_ACHIEVEMENT_21_22_DESC" "Вивантажіть в зону 10 000 або більше предметів."
"NEW_ACHIEVEMENT_21_23_NAME" "Запалювання"
"NEW_ACHIEVEMENT_21_23_DESC" "Підвищте потужність імпульсного реактора."
diff --git a/fastlane/metadata/steam/ukrainian/description.txt b/fastlane/metadata/steam/ukrainian/description.txt
index e53e92394b..0b0f6ca04c 100644
--- a/fastlane/metadata/steam/ukrainian/description.txt
+++ b/fastlane/metadata/steam/ukrainian/description.txt
@@ -1,4 +1,4 @@
-Створюйте складні логістичні мережі для перенесення боєприпасів у башти, видобувайте ресурси для будівництва, і захищайте своє ядро від різних хвиль ворогів. Грайте з друзями на різних платформах у кооперативні ігри, або киньте їм виклик у командних PvP-матчах.
+Створюйте складні системи логістики для перенесення боєприпасів у башти, видобувайте ресурси для будівництва, і захищайте своє ядро від різних хвиль ворогів. Грайте з друзями на різних платформах у кооперативні ігри, або киньте їм виклик у командних PvP-матчах.
[img]{STEAM_APP_IMAGE}/extras/ezgif-4-0e70c282f775.gif[/img]
@@ -28,9 +28,10 @@
[h2][h2]Ігрові режими[/h2][/h2]
-[*] [b]Виживання[/b]: створіть башти для захисту від ворогів в ігровому процесі, заснованому на захисті башт. Виживайте якомога довше, за бажанням можна запустит своє ядро, щоб використовувати зібрані ресурси для досліджень. Підготуйте свою базу для періодичних атак повітряних босів.
+[list]
+[*] [b]Виживання[/b]: створіть башти для захисту від ворогів в ігровому процесі, заснованому на захисті башт. Виживайте якомога довше, за бажанням можна запустити своє ядро, щоб використовувати зібрані ресурси для досліджень. Підготуйте свою базу для періодичних атак повітряних босів.
[*] [b]Атака[/b]: будуйте заводи бойових одиниць для знищення ворожих ядер, одночасно захищаючи свою базу від хвиль ворожих одиниць.
-[*] [b]PvP[/b]: змагайтеся з іншими гравцями, щоб знищити ядра один одного. Створюйте бойові одиниці або нападайте на інші бази безпосередньо зі своїми мехами. Створіть різноманітні типи підтримувальиних та наступальних підрозділів, щоб допоможуть вам у досягненні цілей.
+[*] [b]PvP[/b]: змагайтеся з іншими гравцями, щоб знищити ядра один одного. Створюйте бойові одиниці або нападайте на інші бази безпосередньо зі своїми мехами. Створіть різноманітні типи підрозділів підтримки та наступу, що допоможуть вам у досягненні цілей.
[*] [b]Пісочниця[/b]: грайте з нескінченними ресурсами без загрози з боку ворога. Використовуйте специфічні для пісочниці елементи та блоки рідких джерел для тестування конструкцій та появи ворогів за запитом.
[/list]
@@ -49,7 +50,7 @@
[list]
[*] Створюйте ландшафт за допомогою візуального редактора.
[*] Змінюйте і переглядайте споруди так само як в грі.
-[*] Регульовані режими інструментів — змініть функціонування кожного інструменту.
+[*] Регульовані режими інструментів — змініть функціювання кожного інструменту.
[*] Потужна система генерації мап, що має безліч різних типів фільтрів для процедурного маніпулювання місцевістю.
[*] Застосуйте на своїх мапах шум, спотворення, згладжування, ерозію, симетрію, генерацію руди та випадкову генерацію місцевості.
[*] Відкрита гра в жанрі «захист башт» з акцентом на керуванні ресурсами.
diff --git a/gradle.properties b/gradle.properties
index 4aabb4e9b4..9a6d877821 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,3 +1,3 @@
org.gradle.daemon=true
org.gradle.jvmargs=-Xms256m -Xmx1024m
-archash=b2996f736d5b6870913f5d8b5496fe6033069ac8
+archash=69ef047313449905aff6d1390d7136f9c7cdc986
diff --git a/ios/src/mindustry/ios/IOSLauncher.java b/ios/src/mindustry/ios/IOSLauncher.java
index 5e0102db79..e4da9160d0 100644
--- a/ios/src/mindustry/ios/IOSLauncher.java
+++ b/ios/src/mindustry/ios/IOSLauncher.java
@@ -1,12 +1,13 @@
package mindustry.ios;
import arc.*;
-import com.badlogic.gdx.backends.iosrobovm.*;
+import arc.Input.*;
import arc.files.*;
import arc.func.*;
import arc.scene.ui.layout.*;
import arc.util.*;
import arc.util.io.*;
+import com.badlogic.gdx.backends.iosrobovm.*;
import mindustry.*;
import mindustry.game.EventType.*;
import mindustry.game.Saves.*;
@@ -40,13 +41,32 @@ public class IOSLauncher extends IOSApplication.Delegate{
@Override
public void showFileChooser(boolean open, String extension, Cons cons){
- UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray)null);
+ if(!open){ //when exporting, just share it.
+ //ask for export name
+ Core.input.getTextInput(new TextInput(){{
+ title = Core.bundle.get("filename");
+ accepted = name -> {
+ try{
+ //write result
+ Fi result = tmpDirectory.child(name + "." + extension);
+ cons.get(result);
+ //import the document
+ shareFile(result);
+ }catch(Throwable t){
+ ui.showException(t);
+ }
+ };
+ }});
+ return;
+ }
+
+ UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray)null);
NSArray arr = new NSArray<>(new UIBarButtonItem(Core.bundle.get("cancel"), UIBarButtonItemStyle.Plain,
uiBarButtonItem -> cont.dismissViewController(true, () -> {})));
- cont.setAllowsDocumentCreation(!open);
+ cont.setAllowsDocumentCreation(false);
cont.setAdditionalLeadingNavigationBarButtonItems(arr);
class ChooserDelegate extends NSObject implements UIDocumentBrowserViewControllerDelegate{
@@ -97,7 +117,6 @@ public class IOSLauncher extends IOSApplication.Delegate{
@Override
public void failedToImportDocument(UIDocumentBrowserViewController controller, NSURL documentURL, NSError error){
-
}
@Override
diff --git a/server/src/mindustry/server/ServerControl.java b/server/src/mindustry/server/ServerControl.java
index 631b561b42..6ecc42fb05 100644
--- a/server/src/mindustry/server/ServerControl.java
+++ b/server/src/mindustry/server/ServerControl.java
@@ -659,38 +659,50 @@ public class ServerControl implements ApplicationListener{
err("That IP/ID is not banned!");
}
});
-
- handler.register("admin", "", "Make an online user admin", arg -> {
- if(!state.is(State.playing)){
- err("Open the server first.");
- return;
- }
-
- Player target = playerGroup.find(p -> p.name.equals(arg[0]));
-
- if(target != null){
- netServer.admins.adminPlayer(target.uuid, target.usid);
- target.isAdmin = true;
- info("Admin-ed player: {0}", arg[0]);
+
+ handler.register("pardon", "", "Pardons a votekicked player by ID and allows them to join again.", arg -> {
+ PlayerInfo info = netServer.admins.getInfoOptional(arg[0]);
+
+ if(info != null){
+ info.lastKicked = 0;
+ info("Pardoned player: {0}", info.lastName);
}else{
- info("Nobody with that name could be found.");
+ err("That ID can't be found.");
}
});
- handler.register("unadmin", "", "Removes admin status from an online player", arg -> {
+ handler.register("admin", " ", "Make an online user admin", arg -> {
if(!state.is(State.playing)){
err("Open the server first.");
return;
}
- Player target = playerGroup.find(p -> p.name.equals(arg[0]));
+ if(!(arg[0].equals("add") || arg[0].equals("remove"))){
+ err("Second parameter must be either 'add' or 'remove'.");
+ return;
+ }
+
+ boolean add = arg[0].equals("add");
+
+ PlayerInfo target;
+ Player playert = playerGroup.find(p -> p.name.equals(arg[1]));
+ if(playert != null){
+ target = playert.getInfo();
+ }else{
+ target = netServer.admins.getInfoOptional(arg[1]);
+ playert = playerGroup.find(p -> p.getInfo() == target);
+ }
if(target != null){
- netServer.admins.unAdminPlayer(target.uuid);
- target.isAdmin = false;
- info("Un-admin-ed player: {0}", arg[0]);
+ if(add){
+ netServer.admins.adminPlayer(target.id, target.adminUsid);
+ }else{
+ netServer.admins.unAdminPlayer(target.id);
+ }
+ if(playert != null) playert.isAdmin = add;
+ info("Changed admin status of player: &ly{0}", target.lastName);
}else{
- info("Nobody with that name could be found.");
+ err("Nobody with that name or ID could be found. If adding an admin by name, make sure they're online; otherwise, use their UUID.");
}
});
@@ -707,6 +719,18 @@ public class ServerControl implements ApplicationListener{
}
});
+ handler.register("players", "List all players currently in game.", arg -> {
+ if(playerGroup.size() == 0){
+ info("No players are currently in the server.");
+ }else{
+ info("&lyPlayers: {0}", playerGroup.size());
+ for(Player user : playerGroup){
+ PlayerInfo userInfo = user.getInfo();
+ info(" &lm {0} / ID: '{1}' / IP: '{2}' / Admin: '{3}'", userInfo.lastName, userInfo.id, userInfo.lastIP, userInfo.admin);
+ }
+ }
+ });
+
handler.register("runwave", "Trigger the next wave.", arg -> {
if(!state.is(State.playing)){
err("Not hosting. Host a game first.");
diff --git a/servers.json b/servers.json
index 8f6e4d3491..56c8a52456 100644
--- a/servers.json
+++ b/servers.json
@@ -2,6 +2,15 @@
{
"address": "mindustry.us.to"
},
+ {
+ "address": "mindustry.indielm.com:1101"
+ },
+ {
+ "address": "mindustry.indielm.com"
+ },
+ {
+ "address": "mindustry.nydus.app:1337"
+ },
{
"address": "mindustry.ecansol.com:6597"
},
@@ -11,6 +20,9 @@
{
"address": "mindustry.ru"
},
+ {
+ "address": "mindustry.ru:7000"
+ },
{
"address": "mindustry.io"
},
@@ -22,5 +34,8 @@
},
{
"address": "mindustry.io:3000"
+ },
+ {
+ "address": "aamindustry.play.ai"
}
]
diff --git a/tests/src/test/java/ApplicationTests.java b/tests/src/test/java/ApplicationTests.java
index 8bb1ba3206..b37ca45b06 100644
--- a/tests/src/test/java/ApplicationTests.java
+++ b/tests/src/test/java/ApplicationTests.java
@@ -214,6 +214,16 @@ public class ApplicationTests{
assertTrue(state.teams.playerCores().size > 0);
}
+ @Test
+ void conveyorCrash(){
+ world.loadMap(testMap);
+ state.set(State.playing);
+
+ world.tile(0, 0).setBlock(Blocks.conveyor);
+ world.tile(0, 0).rotation(0);
+ Blocks.conveyor.acceptStack(Items.copper, 1000, world.tile(0, 0), null);
+ }
+
@Test
void conveyorBench(){
int[] items = {0};
diff --git a/tools/build.gradle b/tools/build.gradle
index 959121fcda..e527ef1e10 100644
--- a/tools/build.gradle
+++ b/tools/build.gradle
@@ -34,7 +34,7 @@ def transformColors = { List
> list ->
}
-transformColors([["6e7080", "989aa4", "b0bac0"], ["bc5452", "ea8878", "feb380"], ["dea158", "f8c266", "ffe18f"], ["feb380", "ea8878", "bc5452"]])
+transformColors([["6e7080", "989aa4", "b0bac0"], ["bc5452", "ea8878", "feb380"], ["de9458", "f8c266", "ffe18f"], ["feb380", "ea8878", "bc5452"]])
def antialias = { File file ->
if(!doAntialias || file.lastModified() <= 1000) return
diff --git a/tools/src/mindustry/tools/FontGenerator.java b/tools/src/mindustry/tools/FontGenerator.java
index 2ebb8fd2a0..f38766f37d 100644
--- a/tools/src/mindustry/tools/FontGenerator.java
+++ b/tools/src/mindustry/tools/FontGenerator.java
@@ -31,7 +31,7 @@ public class FontGenerator{
String session = folder.child("session").readString();
net.httpGet("http://fontello.com/" + session + "/get", result -> {
try{
- Streams.copyStream(result.getResultAsStream(), folder.child("font.zip").write());
+ Streams.copy(result.getResultAsStream(), folder.child("font.zip").write());
}catch(IOException e){
throw new RuntimeException(e);
}
diff --git a/tools/src/mindustry/tools/ScriptStubGenerator.java b/tools/src/mindustry/tools/ScriptStubGenerator.java
index 58dfd27b28..ddbd357e60 100644
--- a/tools/src/mindustry/tools/ScriptStubGenerator.java
+++ b/tools/src/mindustry/tools/ScriptStubGenerator.java
@@ -30,13 +30,6 @@ public class ScriptStubGenerator{
DataInputStream.class, DataOutputStream.class, Integer.class, Float.class, Double.class, Long.class, Boolean.class, Short.class, Byte.class, Character.class);
Array nopackage = Array.with("java.lang", "java");
- String fileTemplate = "package mindustry.mod;\n" +
- "\nimport arc.struct.*;\n" +
- "//obviously autogenerated, do not touch\n" +
- "public class ClassAccess{\n" +
- "\tpublic static final ObjectSet allowedClassNames = ObjectSet.with($ALLOWED_CLASS_NAMES$);\n" +
- "}";
-
List classLoadersList = new LinkedList<>();
classLoadersList.add(ClasspathHelper.contextClassLoader());
classLoadersList.add(ClasspathHelper.staticClassLoader());
@@ -73,8 +66,5 @@ public class ScriptStubGenerator{
//Log.info(result);
new Fi("core/assets/scripts/global.js").writeString(result.toString());
- new Fi("core/src/mindustry/mod/ClassAccess.java").writeString(fileTemplate
- .replace("$ALLOWED_CLASSES$", classes.toString(", ", type -> type.getName() + ".class"))
- .replace("$ALLOWED_CLASS_NAMES$", classes.toString(", ", type -> "\"" + type.getName() + "\"")));
}
}