Compare commits

..
Author SHA1 Message Date
Github Actions 4a37546835 Automatic class mapping update 2026-06-16 22:02:05 +00:00
Anuken b32b0abbe6 Misc minor optimizations 2026-06-16 14:12:55 -04:00
Anuken ed015e72d0 Async power graph update 2026-06-16 13:43:33 -04:00
Anuken f1ec63a2f7 progress 2026-06-16 12:56:33 -04:00
Anuken 1911f52281 progress 2026-06-16 10:52:44 -04:00
Anuken 0c547d12d5 progress 2026-06-16 10:47:16 -04:00
Anuken 34ec1719ad Bugfix 2026-06-15 23:05:52 -04:00
Anuken 210da0cca1 progress 2026-06-15 22:35:34 -04:00
Anuken 2889160bed Extremely experimental building performance changes 2026-06-15 22:14:57 -04:00
Anuken 051a2b6548 Fixed duct/conduit proximity recache 2026-06-15 16:44:07 -04:00
Anuken dfd08a8b69 Boulder shadow rendering fix 2026-06-15 16:25:30 -04:00
Anuken 3f40a4a63d Optimizations for specific Erekir block rendering 2026-06-15 16:21:04 -04:00
Anuken a782e23e57 Optimizations for specific Erekir block rendering 2026-06-15 16:20:56 -04:00
Anuken b74a466157 Duct optimization 2026-06-15 16:03:21 -04:00
Anuken c7e7f7e58c More block rendering optimization 2026-06-15 15:07:18 -04:00
Anuken 760440fd24 Fixed annotation processor warnings 2026-06-15 11:27:18 -04:00
Anuken 856ea50676 Fixed map dialog crash 2026-06-15 11:05:59 -04:00
Anuken dbd90bf843 zoom-out LOD system + bugfixes 2026-06-15 10:20:30 -04:00
Anuken 8daf0a6619 Fixed fog recache 2026-06-15 01:57:36 -04:00
Anuken 6a9d23a2ef Generate icons for content in data patch editor 2026-06-15 01:50:48 -04:00
Anuken 4d3cb54f7e Load sounds on demand (saves ~200mb RAM on startup) 2026-06-14 14:38:12 -04:00
Anuken 22444e2d8e Merge remote-tracking branch 'origin/master' 2026-06-14 08:59:48 -04:00
Anuken 11a2016412 Crash fix 2026-06-14 08:59:42 -04:00
Github Actions 39588af3e4 Automatic bundle update 2026-06-14 06:37:41 +00:00
Anuken 99faf69fca Log errors for failed screenshots 2026-06-14 02:36:19 -04:00
Anuken 0eec03c366 Fixed shielded walls not drawing 2026-06-14 02:18:23 -04:00
Anuken 950e46e360 Crash fix 2026-06-14 02:13:02 -04:00
Anuken 489d3d4777 Merge branch 'static-block-optimization' of https://github.com/Anuken/Mindustry 2026-06-14 02:00:13 -04:00
Anuken 07f17b1538 Mend projector optimization 2026-06-13 23:41:07 -04:00
Anuken f42ba5adc8 More minor fixes 2026-06-13 22:44:23 -04:00
Anuken 6313b5b589 API fix 2026-06-13 22:33:28 -04:00
Anuken 77d15c71cc arc 2026-06-13 22:22:11 -04:00
Anuken 5ffc3aca6a arc 2026-06-13 22:22:03 -04:00
Anuken ffe6d8b356 Merge branch 'master' of https://github.com/Anuken/Mindustry into static-block-optimization 2026-06-13 22:12:43 -04:00
Anuken 13ee5512b2 Fixed insane GC spam in weather rendering 2026-06-13 22:08:52 -04:00
Anuken 3c36fccdf4 Merge remote-tracking branch 'origin/static-block-optimization' into static-block-optimization 2026-06-13 22:02:01 -04:00
Anuken cd626b5718 Fixed a few details 2026-06-13 22:01:56 -04:00
Github Actions a684e5b864 Automatic class mapping update 2026-06-14 01:34:38 +00:00
Anuken e919f0d60a Experimental static drawing optimization 2026-06-13 21:32:29 -04:00
Anuken 35b883c065 Updated some asset-related bundle keys 2026-06-13 10:07:39 -04:00
Anuken fe95be6bd2 Fixed sound assets playing over editor music 2026-06-12 22:50:47 -04:00
Anuken 2bec423fd7 arc 2026-06-12 20:05:03 -04:00
Github Actions 5ddbc7d25e Automatic class mapping update 2026-06-12 23:13:19 +00:00
Anuken 7b829e3c3f Merge remote-tracking branch 'origin/master' 2026-06-12 19:10:51 -04:00
Github Actions e9c0648240 Automatic bundle update 2026-06-12 22:57:47 +00:00
Anuken 8a2b01fb27 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-12 18:56:28 -04:00
Anuken 3fa77d326c Fixed some issues with bundle assets 2026-06-12 18:56:22 -04:00
Github Actions 651886db35 Automatic bundle update 2026-06-12 19:51:56 +00:00
Anuken 0a4e5ca80e Many content asset fixes 2026-06-12 15:50:33 -04:00
Anuken ef6a54580d Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-11 18:41:37 -04:00
Anuken ff3907d6f4 File chooser system refactor 2026-06-11 18:41:25 -04:00
Github Actions d36e7e5e45 Automatic bundle update 2026-06-11 02:50:11 +00:00
Anuken e9cb036af1 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-10 22:48:51 -04:00
Anuken ed8fc1fa1b Semi-functional tab for adding/viewing map content 2026-06-10 22:48:45 -04:00
Github Actions c9b1c3f5ff Automatic bundle update 2026-06-10 18:01:50 +00:00
Anuken 3f16c75e06 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-10 14:00:28 -04:00
Anuken 9ab30eda4a Audio asset view, other misc fixes 2026-06-10 14:00:21 -04:00
Github Actions 467327b5b0 Automatic bundle update 2026-06-10 04:27:15 +00:00
Anuken 32da99fcc1 WIP asset view dialog 2026-06-10 00:25:51 -04:00
Anuken 178cd16010 Optimizations that don't even belong in this branch 2026-06-08 23:47:46 -04:00
Anuken 7357cef274 Asset type reordering 2026-06-08 19:04:44 -04:00
Anuken 033e489904 Proper sound icon for settings 2026-06-08 13:26:00 -04:00
Anuken 6de284f6eb Updated font with new icons 2026-06-08 12:52:36 -04:00
Anuken 776c5bcb82 WIP asset view 2026-06-06 16:35:55 -04:00
Anuken 8779326e78 Unit tests 2026-06-04 13:36:44 -04:00
Anuken 4dfa4a2348 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-03 18:26:06 -04:00
Anuken 39cc6cfd6d Misc minor fixes 2026-06-03 18:25:58 -04:00
Github Actions 98ef75a581 Automatic bundle update 2026-06-03 15:55:27 +00:00
Anuken ab69f947ef Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-03 11:54:04 -04:00
Anuken a9bc173016 Incremental asset downloading 2026-06-03 11:53:56 -04:00
Github Actions 72181c154d Automatic bundle update 2026-06-03 01:24:40 +00:00
Anuken acc8eda33f Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-02 21:23:18 -04:00
Anuken a5ea0ee39e Faster asset transfer & asset transfer loading bar 2026-06-02 21:23:11 -04:00
Github Actions ee44bc3143 Automatic bundle update 2026-06-02 18:38:50 +00:00
Anuken c9106ef256 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-06-02 14:37:25 -04:00
Anuken d44b9ae317 Various fixes related to content assets 2026-06-02 14:37:01 -04:00
Github Actions dd29c202ef Automatic bundle update 2026-06-01 16:16:17 +00:00
Anuken 1ed80c59fd Embed assets when exporting save 2026-06-01 12:14:53 -04:00
Anuken 17d8aa5dc2 Server embedded asset fix 2026-06-01 02:52:23 -04:00
Anuken dc490696ac WIP: External asset cache 2026-06-01 02:41:25 -04:00
Anuken 8764208045 Merge remote-tracking branch 'origin/data-patch-assets' into data-patch-assets 2026-05-31 15:44:26 -04:00
Anuken 536e460fce Misc data patching fixes 2026-05-31 15:44:19 -04:00
Github Actions b1dc1513e5 Automatic bundle update 2026-05-30 20:23:40 +00:00
Anuken fdef57d38f Server rule file, planet data patch support, logic script class 2026-05-30 16:21:57 -04:00
Anuken e11ada7ef2 Rule/planet/server/logic music playing support 2026-05-30 12:46:28 -04:00
Cardillan 4a925237ae Fix wrong allowed size displayed in an error message (#12151) 2026-05-30 10:34:40 -04:00
Anuken 62ee68679d Better validation for content 2026-05-30 01:16:59 -04:00
Anuken 01d1d3adf0 Actually functional asset addition system 2026-05-29 20:45:06 -04:00
Anuken 67c9b2d276 WIP data patch asset system 2026-05-29 17:07:52 -04:00
Github Actions eae56c4230 Automatic bundle update 2026-05-29 15:55:16 +00:00
EggleEggandAnuken d02fcfad46 Display 10/s movespeed in conveyor instead of 11/s (#11978)
* Display 10/s movespeed in conveyor instead of 11/s

* Apply suggestions from code review

Co-authored-by: Anuken <arnukren@gmail.com>

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-05-29 11:53:41 -04:00
EggleEgg 317fef8887 Hide enemy spawns instead of show enemy spawns (#12093)
* Hide enemy spawns instead of show enemy spawns

* hidespawns not hidepawns smh

* remove old stupid comment from pull
2026-05-29 11:52:29 -04:00
zvenios 7ecec5548e Remove flare from units.omura.description in bundles (#12136) 2026-05-29 11:48:37 -04:00
Anuken f42b6d58ec Merge remote-tracking branch 'origin/master' 2026-05-29 11:39:57 -04:00
Anuken bce8c14efb Fixed #12131 2026-05-29 11:39:51 -04:00
Github Actions c68ca5ee87 Automatic class mapping update 2026-05-29 15:12:43 +00:00
Anuken 8e21f0a113 Fixed #12140 2026-05-29 11:10:41 -04:00
Anuken 03dc7b0ac5 Merge remote-tracking branch 'origin/master' 2026-05-29 10:53:04 -04:00
Anuken 5afb043fb2 Fixed #12127 2026-05-29 10:52:58 -04:00
Space 389b748395 Fixed issue(ammoParts don't work if parts.size == 0) (#12144) 2026-05-29 10:44:02 -04:00
Github Actions 6103e5b664 Automatic bundle update 2026-05-29 03:18:57 +00:00
Anuken ac10d2b082 Objective text for unit factories activating 2026-05-28 23:17:36 -04:00
Anuken 47c398f744 Triggering CI 2026-05-28 13:39:16 -04:00
Anuken b192b13250 Fixed assets jar + added CI scripts for it 2026-05-28 13:36:15 -04:00
Anuken ae0c0966d3 arc 2026-05-28 11:51:45 -04:00
Anuken a1330c444c arc 2026-05-28 11:13:31 -04:00
Anuken f4f7f3cc1d Target java 17 for annotations subproject 2026-05-28 11:04:35 -04:00
Anuken 8927383d7b Merge remote-tracking branch 'origin/master' 2026-05-27 16:50:06 -04:00
Anuken 506647e70b Server jline support 2026-05-27 16:50:00 -04:00
Github Actions ed9ad45332 Automatic bundle update 2026-05-27 20:29:17 +00:00
Anuken 07ded59fb8 Merge remote-tracking branch 'origin/master' 2026-05-27 16:28:01 -04:00
Anuken c2e1e97862 Show message when no files are imported 2026-05-27 16:27:35 -04:00
Anuken 66257c15af RoboVM compilation fix 2026-05-27 16:15:42 -04:00
Anuken d6ecbcdf11 Triggering build CI 2026-05-27 15:37:39 -04:00
Anuken 52da06729b Upgrading to Java 17 target without jabel (seeing if CI fails) 2026-05-27 15:30:19 -04:00
Anuken c04a67bc85 Use STB-based image reading for pixmaps in patch images 2026-05-27 15:17:19 -04:00
Anuken 47a477dedd Merge remote-tracking branch 'origin/master' 2026-05-27 14:53:34 -04:00
Anuken 45ae083eea Removed unused sprite 2026-05-27 14:53:04 -04:00
Anuken 4040d1995a Merge branch 'data-patch-images' of https://github.com/Anuken/Mindustry
# Conflicts:
#	core/assets/bundles/bundle_cs.properties
2026-05-27 14:52:19 -04:00
Anuken a620647376 Data patch save format changes 2026-05-27 14:50:59 -04:00
Anuken 3d970138ca Merge remote-tracking branch 'origin/data-patch-images' into data-patch-images 2026-05-27 10:08:15 -04:00
Anuken 385c147975 Minor structural refactoring 2026-05-27 10:08:04 -04:00
Github Actions 29f67110be Automatic bundle update 2026-05-26 20:47:10 +00:00
Anuken 0eb8dd5170 Data patch image dialog 2026-05-26 16:45:40 -04:00
Anuken 3b85f6a499 Fixed previews 2026-05-26 13:25:52 -04:00
Anuken b907b839bf Full data patch image support 2026-05-26 11:57:51 -04:00
Anuken 16fb1154ef WIP data patch image support 2026-05-25 23:20:14 -04:00
zvenios c4622772f8 Update omura bundle_ru.properties (#12126) 2026-05-25 19:51:35 -04:00
WarmWooly c994662b97 Bugfix: Held items turn into ghost copper when respawning (#12121)
* unitClear(): droppingItem = false

* Undone change (wrong file!)

* droppingItem = false (desktop respawn)

* droppingItem = false (mobile respawn)
2026-05-25 19:46:28 -04:00
Anuken 017b6e86f7 Fixed #12124 2026-05-25 19:45:28 -04:00
EggleEgg a86146faa2 Bugfix: Md timeToArrive not accounting for timescale in bullet (#12117) 2026-05-25 01:28:59 -04:00
Anuken 05b2ecd4eb Fixed #12112 2026-05-24 20:09:08 -04:00
Anuken 430a4ce59e Fixed #12113 2026-05-24 20:03:57 -04:00
Anuken 4fff0f9af7 Better status effect display 2026-05-24 19:49:17 -04:00
Anuken e830e65247 Merge remote-tracking branch 'origin/master' 2026-05-24 16:07:27 -04:00
Anuken 990fe2bdf8 Display shields stacked on health for payload units 2026-05-24 16:07:17 -04:00
Anuken 0358038b71 Revert "Added shield health bar when commanding a shielded unit. (#12043)"
This reverts commit 7b541c72c9.
2026-05-24 15:54:36 -04:00
IYanHuaandAnuken 9ad195b68b Fixed the issue where pop-ups left after logging out of the server could not be closed. (#12111)
* Fixed the issue where pop-ups left after logging out of the server could not be closed.

* Apply suggestion from @Anuken

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-05-23 23:49:55 -04:00
Anuken ed54566a14 Merge remote-tracking branch 'origin/master' 2026-05-23 18:29:39 -04:00
Anuken 13b549d4b1 Fixed circling check for CommandAI 2026-05-23 18:29:34 -04:00
Github Actions 512fa38e38 Automatic bundle update 2026-05-23 22:06:24 +00:00
Vojtěch OramandAnuken 865536ebf4 Finished czech translation (#11999)
* finished czech translation - fix mistakes at existing strings and translated the rest

* Update outdated czech translations to match current bundle.properties

- Migrate tutorial strings from old \uXXXX icon escapes to :icon-name: syntax
- Extend block/unit descriptions with newer clauses
  (e.g. "Optionally uses X to boost efficiency", "Capable of carrying 2x2 structures")
- Fix factual drift in logic system descriptions
  (lst.makemarker limit 20 -> 20,000; lst.sync 10/s -> 20/s;
  lenum.colori "indexed position" -> "indexed color")
- Fix typos and mixed-language strings
  (lst.applystatus, lglobal.@clientMobile, onset.attack,
  block.silicon-arc-furnace.name)
- Translate remaining untranslated english strings
  (graphicstype.print, onset.arcfurnace/power/graphite, atolls.mega6,
  liquid.ozone.description, unit.emanate.description, split.acquire,
  split.pickup, rules.airUseSpawns)
- Correct materials in block.large-cliff-crusher.description
  (ozone+tungsten -> hydrogen+graphite per current bundle)

* Fix pre-existing czech translation bugs

- mods.browser.latest: restore stripped [lightgray] color code
- wave.guardianwarn.one: restore missing {0} placeholder
- locales.info: replace stray @ with {0} in time-left example
- sectors.underattack: remove spurious {0}% placeholder not in english source
- announce.nuclearstrike: restore dropped second line about backup cores

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-05-23 18:05:11 -04:00
JniTrRny c634488b6e Update bundle_th.properties (#12109)
* v8 description changes and stuff

* spelling
2026-05-23 18:00:52 -04:00
Anuken 9fde5f1a64 Closes Anuken/Mindustry-Suggestions/issues/6319 2026-05-23 13:25:47 -04:00
Anuken 4058485677 Fixed #12107 2026-05-23 13:08:46 -04:00
Anuken 8a6ee5b440 Merge remote-tracking branch 'origin/master' 2026-05-23 01:39:45 -04:00
Anuken 06f557409f Fixed #12106 2026-05-23 01:39:38 -04:00
Github Actions e4a3574155 Automatic bundle update 2026-05-23 05:24:08 +00:00
summoner 3f649aea1f Translation: Update bundle_hu.properties (#11975)
* Translation: Update bundle_hu.properties

Translate new strings
Fix coherency

* Fix translation

* Translation: Update bundle_hu.properties

Translate new strings

* Fix spacing in confirmation message for planet campaign saves

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Fix Hungarian translations for clarity and accuracy

* Translation: Update bundle_hu.properties

Translate new string
2026-05-23 01:22:56 -04:00
SITUVNgcd 1f355cb662 Update Vietnamese translation (#11976)
* Update Vietnamese translation

* Clear Planet Data

* Update Vietnamese translation

https://github.com/Anuken/Mindustry/commit/9c6f00e5859225af3eb64d13a7ee2459b65b182f
2026-05-23 01:22:50 -04:00
Space fac37627aa Update bundle zh_CN.properties (#12090)
* translation

* fixed wrong

* update logic.error.toolong
2026-05-23 01:22:44 -04:00
Kevin Vilyan eaee988a0f update bundle id (#12095)
* update bundle id

* why missclicked ARGH

* is this thw right one?

* some minor changes
2026-05-23 01:22:37 -04:00
Anuken 51b22124bb Fixed #12099 2026-05-23 01:21:59 -04:00
Anuken 469a392936 Fixed #12097 2026-05-23 01:15:37 -04:00
Anuken 9053f1ea9e Typo 2026-05-23 01:05:19 -04:00
Anuken 8b045667a6 Merge remote-tracking branch 'origin/master' 2026-05-23 01:00:58 -04:00
Anuken 6d1caaf4d8 Fixed #12103 2026-05-23 01:00:51 -04:00
wan 837aa17e03 Update bundle_ja.properties (#12096) 2026-05-20 02:26:36 -04:00
EggleEgg 9f9d5ea45b Show schematic description in schematic info (and scroll) (#11357)
* Show schematic description in schematic info (and scroll)

* dont cut off
2026-05-20 02:26:05 -04:00
Anuken d4cbf1252b Redundant check removed 2026-05-20 02:24:27 -04:00
Anuken c55ac244b7 Fixed #12094 2026-05-20 02:22:57 -04:00
Anuken 5911a7a0f5 WIP data patcher IO changes 2026-05-18 21:06:28 -04:00
Anuken d2dbc5e7d5 Fixed #12091 2026-05-18 15:17:31 -04:00
Anuken a052b8bd30 Merge remote-tracking branch 'origin/master' 2026-05-18 11:27:07 -04:00
Anuken 050848932f Fixed #12092 2026-05-18 11:27:01 -04:00
Github Actions 9c6f00e585 Automatic bundle update 2026-05-18 14:39:09 +00:00
Anuken 9d48c430e5 Merge remote-tracking branch 'origin/master' 2026-05-18 10:37:46 -04:00
Anuken 986e99a4c5 Fixed #12081 2026-05-18 10:37:37 -04:00
SpaceandAnuken c457c3023b Allow DrawTurret draw different parts fot Turret (#12046)
* allow DrawTurret draw different parts fot ItemTurret

* fixed issue

* parts can not be null!

* fixed new issues

* minor format change

* Apply suggestions from code review

Co-authored-by: Anuken <arnukren@gmail.com>

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-05-17 23:39:47 -04:00
Github Actions 0c7d763464 Automatic bundle update 2026-05-18 02:58:34 +00:00
zvenios 9350cf230f Fix typo bundle_ru.properties (#12028) 2026-05-17 22:57:11 -04:00
EggleEgg 8d576eb58c Block.ammo.info description (#12082)
* does this break on mobile ui? idfk, welcome to hell anuke

* use .info
2026-05-17 22:56:34 -04:00
HingusPingusandHimgus 7b541c72c9 Added shield health bar when commanding a shielded unit. (#12043)
* hud shield sidebar added, needs testing

* shield health bar tested on oct and quasar

* discarded the new shield hp bar next to the right hp bar and replaced the left hp bar for the shield hp bar

---------

Co-authored-by: Himgus <alumno26.messina.esquivel.gabriel@ipm.edu.ar>
2026-05-17 22:55:22 -04:00
Github Actions 302a25cfe0 Automatic bundle update 2026-05-17 23:03:46 +00:00
Geodafence 2135bb15c0 Upload edited file (#12089) 2026-05-17 19:02:20 -04:00
MaKarastY 16b6f6b018 Remove outdated server IP (servers_v7.json) (#12086)
* Update ArmyOfUkraine servers_v7.json

* Update servers_v7.json

added future servers (inactive for now), removed unused one. All servers now run on one main host

* Update servers_v7.json

Not all DNS servers are able to resolve the IP address of the domain

* Remove outdated server IP
2026-05-17 16:09:19 -04:00
Anuken 5def371c61 Merge remote-tracking branch 'origin/master' 2026-05-17 16:08:54 -04:00
Anuken ed0906e39d Updated PLT submission 2026-05-17 16:08:48 -04:00
Alone 26e653766f Don't put two icons in the mod. (#12072)
* "Add a multiPacker parameter to AtlasPackEvent, allowing listeners to add custom textures through the multiPacker parameter."

* introduces a new hook method packSprites(MultiPacker packer) to the Mod class.

* formatting Mods.java

* formatting Mods.java

* formatting Mods.java

* formatting Mods.java

* d

* Update Vars.java

* Refactor mod icon loading for Steam Workshop

* Refactor mod icon loading for Steam Workshop
2026-05-17 15:52:35 -04:00
EggleEgg 04441ad3a7 Allow replacing assemblers (#12078) 2026-05-17 15:51:06 -04:00
Anuken f52b2fc78d Fixed #12085 2026-05-17 15:41:45 -04:00
Anuken fa8ed48a7c Merge remote-tracking branch 'origin/master' 2026-05-17 15:39:34 -04:00
Anuken 1095b26251 Fixed #12080 2026-05-17 15:39:28 -04:00
SomeonesShade ab1b941c8f ArmorMultiplier now correctly works on splash (#12030)
* ArmorMultiplier now correctly works on splash

* armmult-fix: better safe than sorry
2026-05-17 15:34:48 -04:00
Anuken 2b8788935d Merge remote-tracking branch 'origin/master' 2026-05-14 09:34:07 +09:00
Anuken 667368f00d Updated littoralShipyard.msav 2026-05-14 09:33:53 +09:00
Kevin Vilyan 7d7d32d157 Update Bundle ID (#11974)
* new streings

* some minor changes

* planet data setting

* Update bundle_id_ID.properties

* notice missing spacegap

* h

* noticed inconsistency

* inconsistency again
2026-05-13 20:15:41 -04:00
Github Actions 47a66fed5f Automatic bundle update 2026-05-14 00:08:56 +00:00
Patou e328491f45 Update bundle_fr.properties: Fixed a few french translations that we see all the times (#12014)
* Fixed 3 french translations too big for buttons and an outdated one

* Update french translation (minor typos and an outdated translation pointed out by Attilasher on Discord)

* Fix 1 french translation
2026-05-13 20:07:36 -04:00
CergC4888 a6e7f11d6a Updated Ukrainian translation (#12039)
* виправлення помилок, переклад

шкодаза

* Cleanup

* update strings

* Update
2026-05-13 20:05:10 -04:00
spentcud 78e782becf disperse oxide buff (#12063) 2026-05-13 20:04:49 -04:00
BalaM314 9c811a604a Allow patching world processors to be destructible (#12062) 2026-05-13 20:04:25 -04:00
Github Actions 0c06e0488c Automatic bundle update 2026-05-14 00:04:19 +00:00
Pyratite No Lead d70f3e9dd7 Fix inconsistency in modding & Update Simp Chinese translation (#12035) 2026-05-13 20:03:02 -04:00
EggleEgg c713117d97 Mass driver show important stats in db (#12057)
* Mass driver show important stats in db

* at least 3 people asked for this feature so whatever
2026-05-13 20:02:19 -04:00
wan 282cf043c2 Update bundle_ja.properties (#12058)
meow
2026-05-13 20:01:03 -04:00
Anuken 48ca2c29fd Merge remote-tracking branch 'origin/master' 2026-05-14 09:00:24 +09:00
Anuken a278d4db32 Fixed #12064 2026-05-14 09:00:09 +09:00
Cardillan b6bf978a1f Refuse duplicate labels (#12040) 2026-05-13 19:46:45 -04:00
buthed010203 e0c5c816d0 Fix label removal with null message (#12045)
* Fix label removal with null message

* Apply to popups as well

Removed null check for message parameter in infoPopup.
2026-05-13 19:46:15 -04:00
TheRadioactiveBanana bb2524c296 remove eradication from v7, we host only v8 (#12048)
I should have done this a while ago
2026-05-13 19:45:54 -04:00
Anuken de2202eb1c Fixed #12042 2026-05-14 08:44:55 +09:00
Anuken 1678613135 Merge remote-tracking branch 'origin/master' 2026-05-14 08:30:07 +09:00
Anuken 622c449a55 Fixed #12054 2026-05-14 08:29:37 +09:00
Cardillan 18db37cb68 Tiled display optimizations and fixes (#12068)
* Tiled display optimizations and fixes

* Fixes #12052 (tiled display frame not shown when displays disabled)
2026-05-13 19:09:31 -04:00
Anuken aa7d4270a7 Fixed #12041 2026-05-14 08:07:46 +09:00
Anuken 0d129b2b9b Fixed #12031 2026-05-14 08:06:09 +09:00
Anuken d13afc1439 Optimized processor link changes 2026-05-12 07:35:28 +09:00
Anuken 54443b9517 Fixed save corruption caused by big build queues 2026-05-11 08:20:54 +09:00
Anuken 51b1a4c97f World label flag for only being visible to the parent 2026-05-07 08:11:19 +09:00
Anuken f3ad7b8570 Fixed unit assembler crash with incorrect unit type 2026-05-05 23:48:20 +09:00
Anuken 15c9ea4cc9 Fixed BuildTurret unitType being assignable 2026-05-05 10:15:09 +09:00
Anuken a0153214dd Increased max map size to 800 2026-05-04 09:10:09 +09:00
Beonicwulf ff4d02ec8d Fixed Issue 12024 (#12026) 2026-05-02 12:07:05 -04:00
Github Actions 4bd8fcc495 Automatic bundle update 2026-05-01 23:19:22 +00:00
DenzyandAnuken d9d072e2c1 Update Belarusian translation (#11950)
Co-authored-by: Anuken <arnukren@gmail.com>
2026-05-01 19:18:07 -04:00
Anuken 68f32020f6 Fixed #12021 2026-05-01 13:06:50 -04:00
Anuken d9cf2cf8bc Fixed liquid floors under walls counting towards resource list 2026-05-01 00:42:36 -04:00
Anuken 92f09adbe3 Fixed #12020 2026-04-30 18:20:03 -04:00
Anuken af8983ea88 Merge remote-tracking branch 'origin/master' 2026-04-30 14:36:25 -04:00
Anuken 325e4aa576 Turret ammo display fix / Other team ping display rule 2026-04-30 14:30:49 -04:00
Github Actions fe487fbbcf Automatic class mapping update 2026-04-30 01:45:47 +00:00
Anuken 72da0c492d Minor capacity default value fix 2026-04-29 21:43:36 -04:00
Anuken 6a1f6c295b Finally removed the deprecated unit ammo system 2026-04-29 21:41:59 -04:00
Anuken f323fc323e Fixed #12018 2026-04-29 21:08:42 -04:00
Anuken 164971c257 Merge remote-tracking branch 'origin/master' 2026-04-29 21:05:02 -04:00
Anuken 83a6edeed1 Fixed campaign building achievements requiring player unit 2026-04-29 21:04:55 -04:00
Github Actions 2525a68e5f Automatic bundle update 2026-04-30 01:01:53 +00:00
EggleEgg e56f9fbfff Erekir nano rebalance: avert dont melt unit armor or be weak against building armor (#11917)
* wip stats for now

* should be it
2026-04-29 21:00:30 -04:00
thedimas 347ca2ffcb remove thedimas network from v7 list (#12010) 2026-04-27 17:59:21 -04:00
WMF d60bffb712 planet requirement option for patches & a few new sorts (#12001)
* funny planet requirement option for patches & a few new sorts

* only dedicated servers should care about this
2026-04-27 17:59:13 -04:00
wan c4b4630b5a Update bundle_ja.properties (#11998) 2026-04-26 17:14:17 -04:00
vovan2055 bab236b421 Fix formatting in RU bundle (#11924)
* Fix formatting

* more
2026-04-26 17:12:53 -04:00
Anuken 3da84f7ad5 Merge remote-tracking branch 'origin/master' 2026-04-26 17:09:54 -04:00
Anuken f0a472359e Fixed #12000 2026-04-26 17:09:47 -04:00
Larofeticus a31e812cd3 Delete Conservatory server from servers_v7.json (#11989)
Removed Conservatory server entry from JSON.
2026-04-26 16:54:33 -04:00
OGalaxy 623678d885 Update servers_v7.json (#11980) 2026-04-25 16:15:15 -04:00
Anuken e787b36a4b Merge remote-tracking branch 'origin/master' 2026-04-25 16:09:26 -04:00
Anuken 8c81bdbe50 Fixed #11982 / Fixed #11981 2026-04-25 16:08:27 -04:00
Space 3f7d81b563 Add data setting which allows clearing saves/research for only one planet & Fixed #11977 (#11985)
* add setting which can clear saves or research for only one planet

* add bundles

* add bundles and fixed issue

* Fixed #11977
2026-04-25 15:08:31 -04:00
Anuken 24d04ddebf Fixed #11987 2026-04-25 15:06:38 -04:00
Anuken 327464ba82 Optimization to bulk team changes (reduces campaign core destruction lag) 2026-04-24 14:25:22 -04:00
Anuken ea730cd91e Merge remote-tracking branch 'origin/master' 2026-04-23 19:59:54 -04:00
Anuken 12a9ced070 Closes Anuken/Mindustry-Suggestions/issues/6258 2026-04-23 19:59:47 -04:00
Github Actions 3d6947b94b Automatic bundle update 2026-04-23 23:56:46 +00:00
Anuken 04ce31c5ff Merge branch 'master' of https://github.com/Anuken/Mindustry 2026-04-23 19:56:21 -04:00
Anuken 0526a69901 Updated MessageBlock limit to reflect writeUTF byte size 2026-04-23 19:56:15 -04:00
Space 11febe49cd Add a new mode for fill tool: Fill Under Liquids (#11967)
* add fillunderliquid tool

* add toolmode.fillunderliquid into bundles

* fixed
2026-04-23 19:55:32 -04:00
CergC4888 7fb278cbbc Updated Ukrainian translation v8 (#11953)
* updated translation  v8

* fix

* Update bundle_uk_UA.properties

* fix
2026-04-23 19:54:47 -04:00
ItsKirby69 a4f29c749f Add new Map Planet Filter option (#11968)
* Filter by planet selection for maps

* Use existing "<Any>" bundle
2026-04-23 19:54:35 -04:00
Anuken d095d526b2 More conservative max read network plans 2026-04-23 19:46:31 -04:00
Anuken ccfb280293 Slightly less conservative message block max length 2026-04-22 18:45:35 -04:00
Anuken ecc873096e Merge remote-tracking branch 'origin/master' 2026-04-22 13:41:49 -04:00
Anuken b69eb3cb1a Cap message block contents at 250 chars/1000 bytes (#11963) 2026-04-22 13:41:41 -04:00
bendn f8d13af736 add which unitcommand it is to unitcommand actiontype (#11962) 2026-04-22 09:51:24 -04:00
Anuken 4fed863744 Merge remote-tracking branch 'origin/master' 2026-04-22 09:48:55 -04:00
Anuken b77b0039cf Fixed #11959 2026-04-22 09:48:49 -04:00
Github Actions d859e2badf Automatic bundle update 2026-04-22 13:46:18 +00:00
Anuken 071dfb6ddb Merge remote-tracking branch 'origin/master' 2026-04-22 09:44:54 -04:00
Anuken 68145c1bac Fixed #11958 2026-04-22 09:44:46 -04:00
Pyratite No Lead be7180af39 Update Simplified Chinese translation (#11948) 2026-04-22 09:44:06 -04:00
Anuken 6442f9ebe9 why 2026-04-21 22:14:21 -04:00
buthed010203 caf6658dcd Only host needs to fetch admin list (#11956)
Not really an issue but saves a few api calls.
2026-04-21 21:16:16 -04:00
Anuken c2b6ce9135 Merge remote-tracking branch 'origin/master' 2026-04-21 21:14:42 -04:00
Anuken e20857bb0c Refactored query instruction to use an enum for shape 2026-04-21 21:14:35 -04:00
buthed010203 c1562c3236 Add cache bust to steam ban list. (#11955)
* Add cache busting

Github caches raws for a few minutes.

* Apply cache busting to refresh on admin join.

Also fix log message parameter order.
2026-04-21 20:13:45 -04:00
Anuken 3956e888f6 Fixed #11954 2026-04-21 20:13:00 -04:00
Anuken 2c6a17644d Merge remote-tracking branch 'origin/master' 2026-04-21 19:44:34 -04:00
Anuken 68f909c868 Instantly spawn/respawn when joining server 2026-04-21 19:44:17 -04:00
SITUVNgcd 6c2c1fdf1a Update Vietnamese translation (#11930)
* Update Vietnamese translation

https://github.com/Anuken/Mindustry/commit/7efa8596c14b21e493440afc68c83a2c1a1139ea

* Units/building queries

https://github.com/Anuken/Mindustry/commit/afc6aece47d0b84b528087ea4075e1acb990235c

* Units/building queries

https://github.com/Anuken/Mindustry/commit/afc6aece47d0b84b528087ea4075e1acb990235c
2026-04-21 15:14:39 -04:00
Ademdu136 213c108634 Update bundle_fr.properties (#11949)
Changed some areas name and the steam lobbies ban message
2026-04-21 14:33:21 -04:00
Github Actions 45ea60b0d3 Automatic bundle update 2026-04-21 18:32:26 +00:00
summoner b0d670ac4c Translation: Update bundle_hu.properties (#11927)
* Translation: Update bundle_hu.properties

* Translation: Update bundle_hu.properties

* Translation: Update bundle_hu.properties

Fix coherency -> rewording a sentence because drop zone = Spawn point and all other texts are using spawn or spawn point.

leszállóhely -> kezdőpont

* Translation: Update bundle_hu.properties
2026-04-21 14:31:01 -04:00
Anuken 5b399eee49 Merge remote-tracking branch 'origin/master' 2026-04-21 14:10:03 -04:00
Anuken ece51a1bdb Steam ban fixes 2026-04-21 14:09:58 -04:00
buthed010203 a4103c83b5 Fetch ban list on admin join (#11951)
Allows "propagating" ban list by joining every lobby for a brief time.
2026-04-21 14:08:23 -04:00
Anuken de540655bb Fixed #11946 2026-04-21 14:07:23 -04:00
Anuken 453bcb06aa Fixed #11944 2026-04-21 14:06:07 -04:00
Anuken c8cb70ee8e Merge remote-tracking branch 'origin/master' 2026-04-21 12:29:59 -04:00
Anuken c462d228ae Fixed others' build plans not showing when not respawned 2026-04-21 12:29:53 -04:00
Github Actions afc6aece47 Automatic bundle update 2026-04-20 18:57:56 +00:00
Anuken df32347c4d Documentation for query instruction 2026-04-20 14:56:36 -04:00
Anuken 9b55f270db Serpulo earlygame hint & research fixes / Logic query instruction 2026-04-20 14:51:31 -04:00
Anuken 07e0291685 Fixed #11941 2026-04-20 10:35:19 -04:00
Anuken aa8339d45f Pan to damaged core when clicking notification / Wall rendering gap fix 2026-04-19 01:07:18 -04:00
Anuken 732866c98d Fixed #11934 2026-04-18 21:39:54 -04:00
Anuken 2ddf32f718 Fixed #11929 / Fixed #11931 2026-04-18 12:09:26 -04:00
SITUVNgcd 5b0ab3ebb4 Update Vietnamese translation (#11904)
* Update Vietnamese translation

https://github.com/Anuken/Mindustry/commit/b7f990b3532d77ec8c41a7aad15f08adf88ce954

* Bullet spawns
2026-04-17 20:55:39 -04:00
Anuken 37f2a2d893 Merge remote-tracking branch 'origin/master' 2026-04-17 20:55:09 -04:00
Anuken c64823b85b Fixed #11920 2026-04-17 20:55:04 -04:00
Kevin Vilyan b345322ee3 Update Bundle ID (#11910)
* Another Bundle ID Update

* some minor changes

* status efc
2026-04-17 20:51:39 -04:00
Darkness d6d9073fd2 Update bundle_ru.properties (#11909) 2026-04-17 20:51:30 -04:00
summoner 587e0f56e7 Translation: update bundle_hu.properties (#11918) 2026-04-17 20:51:22 -04:00
EggleEgg 08edc135d6 Bugfix: Keepvel dont increase range when kiting (moving backwards) (#11922)
* testing for now

* this works

* dont increase lifetime instead
2026-04-17 20:51:00 -04:00
Anuken 80dd28e26c Fixed #11926 2026-04-17 20:50:24 -04:00
Anuken 0e01c36c63 Merge remote-tracking branch 'origin/master' 2026-04-17 20:47:08 -04:00
Anuken fd261d5007 Fixed #11925 2026-04-17 20:47:02 -04:00
Github Actions 7efa8596c1 Automatic bundle update 2026-04-18 00:43:38 +00:00
Anuken f0ee7c4a15 Ban database fix 2026-04-17 20:42:20 -04:00
Anuken 3b670ba348 Merge remote-tracking branch 'origin/master' 2026-04-17 19:58:16 -04:00
Anuken a1a871028f Steam ban database 2026-04-17 19:58:09 -04:00
Github Actions caa6a16b67 Automatic bundle update 2026-04-17 01:54:09 +00:00
Anuken c93c48831d Merge remote-tracking branch 'origin/master' 2026-04-16 21:52:49 -04:00
Anuken 3d691529dd Added spawn bullet logic instruction & ping sensors 2026-04-16 21:52:42 -04:00
Github Actions c8ab4f5cf8 Automatic bundle update 2026-04-16 22:27:47 +00:00
wan 4aa5908180 Translate bundle_ja.properties (#11906)
* Update bundle_ja.properties

* Update bundle_ja.properties
2026-04-16 18:26:29 -04:00
Anuken 621f3a8fd0 Fixed #11913 2026-04-16 13:35:50 -04:00
Anuken 24ff2de2da Fixed #11903 2026-04-15 13:41:09 -04:00
Github Actions c5e57683c9 Automatic bundle update 2026-04-15 17:23:00 +00:00
Vector 92459d89ac Update bundle_es.properties (#11869)
* Update bundle_es.properties

* Update bundle_es.properties

Translated sector descriptions

* Translate new string + some small fixes

* Update bundle_es.properties
2026-04-15 13:21:38 -04:00
summoner 80174768ec Translation: Update bundle_hu.properties (#11902) 2026-04-15 13:21:30 -04:00
rand0mized 18905691a6 Translation: Update bundle_ru.properties (#11892) 2026-04-15 13:21:22 -04:00
Space 53b0408e0d rules and databasetag translation(zh_CN) (#11900) 2026-04-15 13:21:13 -04:00
loleczkowo 774a2d7afe correct polish translation bundle_pl.properties (#11899)
Fixes #11898
2026-04-15 13:21:05 -04:00
wan a77afab556 Add files via upload (#11896) 2026-04-15 13:20:58 -04:00
Anuken 3c583d9126 (fixed uncomitted map) 2026-04-15 13:18:15 -04:00
Anuken c8b0d6a245 Merge remote-tracking branch 'origin/master' 2026-04-15 13:17:38 -04:00
Anuken 378ab92a91 Fixed #11897 2026-04-15 13:17:32 -04:00
Github Actions b7f990b353 Automatic bundle update 2026-04-15 16:56:44 +00:00
Anuken 3e6d6c2cb4 Names for missing status effects 2026-04-15 12:55:22 -04:00
IYAYII-hhgs 3193fd8168 global.properties restored(( (#11815) 2026-04-14 17:02:07 -04:00
Arktcode a5ecc2fc92 Translate various properties to Spanish - Arksource (#11886)
* Translate various properties to Spanish

Minor translations and others that are very necessary for the game in Spanish

* Update bundle_es.properties
2026-04-14 16:26:02 -04:00
summoner 2a29653e99 Translation: Update bundle_hu.properties (#11890)
Fixing some wording mistakes
Fix coherency
Make some sentences more understandable
Cleaning some sentences
2026-04-14 16:25:53 -04:00
SeuEarth 9464c7b743 Final bundle_ko.properties updates for 157.1 (#11894)
* Fix description for windswept islands sector

* another fix
2026-04-14 16:25:13 -04:00
Anuken 3273a15f52 Merge remote-tracking branch 'origin/master' 2026-04-14 16:25:00 -04:00
Anuken f5be90867f Fixed #11888 / Minor sector submission fixes 2026-04-14 16:24:54 -04:00
SITUVNgcd a31eccff18 Fix gammar on waves.spawn.first (#11885)
https://github.com/Anuken/Mindustry/commit/2639b2efbc6a96088dcdaf3d4ec06e9da47b2fc7#diff-6de391efc1c5322bc53143d47041a3a95a4c6dbe12def4b3144ef5c3553d6d46R526
2026-04-13 17:16:15 -04:00
Anuken be70941529 Merge remote-tracking branch 'origin/master' 2026-04-13 17:15:26 -04:00
Anuken d480021fac Fixed #11884 / Fixed some minor tech tree issues 2026-04-13 17:15:20 -04:00
summoner 5fe879da5d Translation: Update bundle_hu.properties (#11875) 2026-04-12 23:41:25 -04:00
Github Actions b7e5ac5784 Automatic bundle update 2026-04-13 03:40:53 +00:00
Kevin Vilyan 59a72ba22e Another Bundle ID Update 🗣️ (#11882)
* Another Bundle ID Update

* some minor changes
2026-04-12 23:39:37 -04:00
SITUVNgcd 2639b2efbc Update Vietnamese translation (#11881)
https://github.com/Anuken/Mindustry/commit/478c5cf2401d89678e92e2e1fde501037ab3a55e
2026-04-12 23:39:27 -04:00
Phinner cf12dfd4d3 French Translation: The sloppy remake (#11872)
* initial slop pass

* unslopiffy bundle_fr.properties

* unslopiffy metadata files

* use consistent case in achievements

* some more changes

* last tweaks I guess

* corrections from oveurnone on discord

* some more tweaks and consistency changes
2026-04-12 23:39:17 -04:00
red 8d64ef63e6 Translate indexed position description to Portuguese (#11879) 2026-04-12 23:38:57 -04:00
JniTrRny 4988f68b6b Update bundle_th.properties (#11878)
* Update bundle_th.properties

* Update bundle_th.properties
2026-04-12 23:38:51 -04:00
RTOmega 6bfc716325 Final TR Strings for v157.1 (#11876) 2026-04-12 23:38:45 -04:00
SeuEarth a4c27722bd Update bundle_ko.properties (#11857)
* Update bundle_ko.properties

* Small change

* other small change

* It is done

Updated Korean translations for various game content.
2026-04-12 23:38:35 -04:00
Anuken b3c1a5441a Fixed #11880 2026-04-12 21:51:51 -04:00
Anuken a131df1669 Merge remote-tracking branch 'origin/master' 2026-04-12 13:06:39 -04:00
Anuken 7c0564c0d1 beta no more 2026-04-12 13:06:33 -04:00
Github Actions 478c5cf240 Automatic bundle update 2026-04-12 17:01:35 +00:00
math-idiot 8a450f5b2c Translate rules in bundle_zh_TW.properties to Chinese (#11723) 2026-04-12 13:00:19 -04:00
67c06d167d Sync and improve Polish translations with upstream updates (#11852)
* Initial plan

* Translate 321 Polish localization entries from English

Translated UI text, descriptions, messages, sector names, block names,
difficulty settings, rules, logic editor tooltips (lglobal/laccess/lenum),
keybindings, database categories/tags, and tutorial text.

Proper game names (unit names, planet names, team names), technical
abbreviations (FPS, TPS, PvP, OK), and terms identical in Polish are
intentionally unchanged.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix Polish translation typos and translate remaining English entries

Co-authored-by: Szpieg0 <166158045+Szpieg0@users.noreply.github.com>

* Update core/assets/bundles/bundle_pl.properties

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update core/assets/bundles/bundle_pl.properties

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Initial plan

* Fix merge conflicts: add missing entries with Polish translations to bundle_pl.properties

Co-authored-by: Szpieg0 <166158045+Szpieg0@users.noreply.github.com>

* Sync bundle_pl.properties: apply 330 improved translations + translate 29 new upstream keys

- Applied 330 Polish translation improvements from community fork (Szpieg0/Mindustry)
- Translated 29 new keys added to upstream since the fork diverged
- Restored 4 Polish translations that the fork had reverted to English
  (slot, marker.quad.name, difficulty.casual, sector.frontier.name)
- Removed 4 obsolete keys no longer in upstream
  (sector.craters.*, setting.borderlesswindow.*, setting.crashreport.name,
   bullet.armorpiercing, command.boost, keybind.unit_command_boost.name)

Agent-Logs-Url: https://github.com/Szpieg0/Mindustry/sessions/3e53dd9b-9cbe-4a83-8cda-d8a8bcc6084d

Co-authored-by: Szpieg0 <166158045+Szpieg0@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-12 12:59:41 -04:00
Jun Hyeok Lee 5be35858b1 Improve Korean localization wording and localize hardcoded UI text (#11851)
* Improve Korean localization and bundle hardcoded UI text

* Revert editor-only localization changes
2026-04-12 12:59:10 -04:00
Kevin Vilyan 656f2554f5 Update Bundle ID 🗣️ (#11859)
* perisai

* di atas

* some minor changes

* new campaign notice

* dari

* shielded

* New Sector Descriptions goes brrrrrr 🗣

* checks up Pelajari

* no more word 'teliti'

* lil

* another minor changes

* nah
2026-04-12 12:58:12 -04:00
summoner a66764afee Translation: Update bundle_hu.properties (#11860)
* Translation: Update bundle_hu.properties

Translate new strings
Fixing a mistranslation

* Translation: Update bundle_hu.properties

Fix translation of the word threat. Ellenállás more accurate here.
2026-04-12 12:58:01 -04:00
SITUVNgcd 9b41c38503 Update Vietnanese translation (#11861)
https://github.com/Anuken/Mindustry/commit/17582011461f00973ed3ea81679873364d3e9b7b
2026-04-12 12:57:52 -04:00
Github Actions 0b8733a956 Automatic bundle update 2026-04-12 16:57:28 +00:00
Denzy 627e2fc5a5 Update bundle_be.properties (#11868) 2026-04-12 12:56:11 -04:00
XingHui-XH e53aaa6b52 Update bundle_zh_CN.properties (#11862) 2026-04-12 12:55:58 -04:00
1ue999and1ue999 ed3635dd40 stuff(tm) (#11867)
Co-authored-by: 1ue999 <1ue999owo@gmail.com>
2026-04-12 12:55:50 -04:00
RTOmega b64be10500 TR Translation for beta v8 (#11865) 2026-04-12 12:55:23 -04:00
Anuken 14f0399b7d Merge remote-tracking branch 'origin/master' 2026-04-12 12:54:03 -04:00
Anuken 4e9a66cfe5 Impact reactor power-less crash fix / Planet JSON ruleSetter support 2026-04-12 12:53:57 -04:00
Naths6andNathan Bombardier dd1f009765 Add range stats entry (#11874)
Co-authored-by: Nathan Bombardier <nathan.bombardier7@etu.univ-lorraine.fr>
2026-04-12 12:52:32 -04:00
Alone d1443a034f Add Mod#packSprites hook for dynamic texture packing (#11873)
* "Add a multiPacker parameter to AtlasPackEvent, allowing listeners to add custom textures through the multiPacker parameter."

* introduces a new hook method packSprites(MultiPacker packer) to the Mod class.

* formatting Mods.java

* formatting Mods.java

* formatting Mods.java

* formatting Mods.java

* d

* Update Vars.java
2026-04-12 12:52:13 -04:00
Anuken a059d86f5a Closes Anuken/Mindustry-Suggestions/issues/6231 2026-04-11 21:06:33 -04:00
Anuken 932d480ec8 Merge remote-tracking branch 'origin/master' 2026-04-11 17:15:24 -04:00
Anuken d537bb9929 Possible fix for empty UDP packets causing DC 2026-04-11 17:15:18 -04:00
ItsKirby69 bce079f71c Rotation for text in Drawf.text (#11870)
* Implements rotation for text in Drawf.text

* Adds method with original parameters just in case

* remove duplicate text creation
2026-04-11 16:02:17 -04:00
Anuken e22d4cbf99 arc 2026-04-10 18:33:09 -04:00
Anuken a7ba06f122 arc 2026-04-10 18:27:44 -04:00
Anuken 2b028e4371 arc 2026-04-10 16:09:32 -04:00
Anuken 521b47f546 Merge remote-tracking branch 'origin/master' 2026-04-10 16:04:40 -04:00
Anuken 9d840144ed Fixed naval pathfinding around destructible blocks 2026-04-10 16:04:34 -04:00
EggleEgg f5f33d8e63 If this breaks something somewhere somehow anywhere sometime I m killing santa (#11864) 2026-04-09 21:53:12 -04:00
Anuken a29b6505df Fixed #11855 2026-04-09 15:32:55 -04:00
Anuken bc725eeddc Merge remote-tracking branch 'origin/master' 2026-04-09 15:26:46 -04:00
Anuken b30cbd57ce Fixed #11854 / Fixed #11863 2026-04-09 15:26:40 -04:00
Anuken 8f4ad7bfca Update deployment.yml 2026-04-08 22:06:04 -04:00
Github Actions 1758201146 Automatic bundle update 2026-04-09 01:36:49 +00:00
Anuken 4aef9965af Research layout fixes 2026-04-08 21:35:27 -04:00
Anuken a1d76e7529 Merge remote-tracking branch 'origin/master' 2026-04-08 21:34:11 -04:00
Anuken cf6de53ee4 New descriptions for sectors / Many various sector tweaks 2026-04-08 21:33:59 -04:00
Github Actions c41ab26aba Automatic bundle update 2026-04-08 22:39:13 +00:00
Anuken 74c8953300 Merge branch '157' of https://github.com/Anuken/Mindustry 2026-04-08 18:37:33 -04:00
Anuken f3b7a5e65e Fixed names and objective text for many sectors 2026-04-08 18:37:23 -04:00
Anuken 950d195dc7 Merge remote-tracking branch 'origin/master' 2026-04-08 18:16:17 -04:00
Anuken 1df1276201 Sector submission name fixes 2026-04-08 18:16:11 -04:00
SITUVNgcd fcc3a40ed6 Update Vietnamese translation (#11816)
https://github.com/Anuken/Mindustry/commit/4628b294d584ff04dbe7898a679411db561ee5e0
2026-04-08 18:08:45 -04:00
Github Actions 0d8304fd4e Automatic bundle update 2026-04-08 22:06:41 +00:00
DenzyandAnuken 81432ba841 Update bundle_be.properties (#11820)
Co-authored-by: Anuken <arnukren@gmail.com>
2026-04-08 18:05:20 -04:00
Github Actions d734538db8 Automatic bundle update 2026-04-08 22:04:58 +00:00
summoner ae82103543 Translation: Update bundle_hu.properties (#11796)
* Translation: Update bundle_hu.properties

Follow the english bundle changes

* Fix translation

* Follow the changes of the english bundle

* Translation: Update bundle_hu.properties

Translate new strings

* Fix typo in campaign rework title

Corrected a typo in the campaign rework title.

* Translation: Update bundle_hu.properties

Follow the changes of the english bundle

* Translation: Update bundle_hu.properties

Translate new string
2026-04-08 18:03:38 -04:00
Anuken b716d7a27b Fixed #11844 2026-04-07 21:48:33 -04:00
Anuken 4cc9d8263a Merge remote-tracking branch 'origin/master' 2026-04-07 18:35:06 -04:00
Anuken b9d5a81ff1 Replace glowing red wire tiles with dark variants upon Serpulo sector capture 2026-04-07 18:34:57 -04:00
Github Actions d3f66b9828 Automatic bundle update 2026-04-07 06:00:33 +00:00
Anuken ef4dff5693 Megabase resized; WIP center submission added 2026-04-07 01:59:02 -04:00
Anuken 2f378c46b2 Fixed UDP network error allowance 2026-04-06 16:41:20 -04:00
Anuken 9c088ff44a Triggering build 2026-04-06 00:29:20 -04:00
Github Actions ef975835cf Automatic class mapping update 2026-04-05 03:03:08 +00:00
Anuken 93e053edb6 Merge remote-tracking branch 'origin/master' 2026-04-04 23:01:05 -04:00
Anuken b3573aa284 Removed unused events 2026-04-04 23:00:57 -04:00
Github Actions 24fe96de10 Automatic bundle update 2026-04-04 03:00:24 +00:00
Anuken 082aff3972 Removed unnecessary bundle entries 2026-04-03 22:58:55 -04:00
Anuken aea5d09faa Fixed #11835 2026-04-03 22:57:59 -04:00
Anuken cae337b781 Fullscreen system cleanup 2026-04-03 22:30:52 -04:00
Anuken db3cf1fba3 Write null when ReadI fails to prevent confusion 2026-04-02 18:07:24 -04:00
Anuken 4a3bc3ec98 Fixed #11832 2026-04-02 16:39:35 -04:00
Anuken c12324d678 Fixed #11821 2026-04-02 12:45:59 -04:00
Anuken 377d98e2e4 Fixed #11824 2026-04-02 12:15:14 -04:00
Anuken 87468ce565 Fixed #11822 2026-04-02 11:53:21 -04:00
Anuken d0f070717f Sync block inventories when opened / WorldLabel parent 2026-03-31 20:29:38 -04:00
Anuken 5c5c2e3dbd Merge remote-tracking branch 'origin/master' 2026-03-31 19:59:34 -04:00
Anuken a7dcba8ed7 Possible fix for remote units exploding near walls on non-headless servers 2026-03-31 19:59:03 -04:00
Cardillan b3e009b6b4 Fix ConditionOp.strictEqual handling (#11813) 2026-03-31 15:33:53 -04:00
Github Actions 8276f65314 Automatic class mapping update 2026-03-30 21:39:18 +00:00
Anuken 1b9b4e7c0c Added DrawBlockParts 2026-03-30 17:36:58 -04:00
Anuken 5ef346d94e Alternate fix for #11809 / Updated Littoral Shipyard submission 2026-03-30 14:00:52 -04:00
Anuken 18b428577f Triggering build 2026-03-30 00:35:21 -04:00
Anuken fc7ad9c579 Merge remote-tracking branch 'origin/master' 2026-03-29 22:52:01 -04:00
Anuken 41bfecbe1c Fixed #11808 2026-03-29 22:51:56 -04:00
Github Actions 4628b294d5 Automatic bundle update 2026-03-29 23:52:56 +00:00
Anuken 073f112bf3 Merge remote-tracking branch 'origin/master' 2026-03-29 19:51:35 -04:00
Anuken 21b5101267 Added a warning related to the campaign rework 2026-03-29 19:51:29 -04:00
Alone 48399b7772 "Add a multiPacker parameter to AtlasPackEvent, allowing listeners to add custom textures through the multiPacker parameter." (#11806) 2026-03-29 10:57:38 -04:00
Anuken 16af1627ee Triggering build 2026-03-29 10:56:39 -04:00
Anuken 772e693f08 Triggering build 2026-03-29 10:45:11 -04:00
Anuken 3e7fc6482d Made mobile console available in menu 2026-03-28 17:36:28 -04:00
Anuken 6447b26a9d Fixed ambient sounds restarting when paused 2026-03-28 17:17:41 -04:00
Anuken d24b2c4bfe Fixed local server host padding 2026-03-28 15:33:32 -04:00
Anuken 5223f088e7 Minor console fixes 2026-03-28 15:27:16 -04:00
Anuken d8a5c0ba27 arc 2026-03-28 15:12:18 -04:00
Anuken 3a82ebf4d8 Added mobile console support 2026-03-28 14:56:56 -04:00
Anuken dc6a56b7d1 Merge remote-tracking branch 'origin/master' 2026-03-28 11:13:42 -04:00
Anuken e7875cc10a Fixed #11802 2026-03-28 11:13:36 -04:00
Github Actions ef60fb1d57 Automatic bundle update 2026-03-28 01:51:25 +00:00
Anuken 9828ab6b25 Removed unused setting 2026-03-27 21:50:00 -04:00
Anuken 1ef97e7329 Fixed blacklist check for class loading 2026-03-27 18:01:54 -04:00
Anuken 41805bd3bb Increased max rule byte size 2026-03-27 14:03:31 -04:00
Anuken 02d07aa4f8 e 2026-03-27 12:51:35 -04:00
Anuken f413931239 Blacklisted older scheme-size versions 2026-03-27 12:51:03 -04:00
Anuken 062a8aa240 Updated littoral shipyard 2026-03-27 11:04:04 -04:00
Anuken 09e3daecd5 Removed power turret 'reload fix' 2026-03-26 11:04:25 -04:00
Anuken cda5296c02 Scale status effects correctly 2026-03-25 20:30:33 -04:00
Anuken 846121bc17 Fixed #11795 2026-03-25 19:55:32 -04:00
Anuken e4c2b3ee41 Fixed #11797 2026-03-25 19:42:26 -04:00
Anuken d11f372850 Allow occasional UDP errors on the client 2026-03-25 15:06:45 -04:00
Anuken b0d2c9a932 Merge remote-tracking branch 'origin/master' 2026-03-25 11:44:15 -04:00
Anuken cf43f0862d Fixed minimap ping position being offset for notched phones 2026-03-25 11:44:10 -04:00
SITUVNgcd c3a58fbbc9 Update Vietnanese translation (#11788)
* Update Vietnanese translation

https://github.com/Anuken/Mindustry/commit/6850704072ff86b21f39c9b160c277dc66b00cc7

* Update Vietnamese translation

https://github.com/Anuken/Mindustry/commit/b7196b15f9f85dcdf23178763a4d0d1660d4296c

* Fix some typo, title text

https://github.com/Anuken/Mindustry/pull/11757
2026-03-25 11:35:04 -04:00
summoner 07b60dc305 Translation: Update bundle_hu.properties (#11787)
Translate untranslated strings
2026-03-25 11:34:16 -04:00
Anuken 1beb1c073f Fixed #11793 2026-03-25 11:33:09 -04:00
Anuken b0d6e213fb Fixed sorting of maps in list 2026-03-25 01:01:37 -04:00
Anuken cfb9d69ec3 oh dear 2026-03-24 23:24:48 -04:00
Anuken 3935b72df5 Fixed some plan rendering bugs 2026-03-24 23:15:39 -04:00
Anuken 094af9280f Merge branch 'master' of https://github.com/Anuken/Mindustry 2026-03-24 21:48:31 -04:00
Anuken c8c49aa0f2 Fixed tests 2026-03-24 21:48:29 -04:00
Phinner 6daa82ac14 chore: Update kotlin plugin (#11792) 2026-03-24 21:47:48 -04:00
Anuken 915c7b04bb Moved 150 to 157 / Fixed drill item color 2026-03-24 17:31:37 -04:00
Anuken e17a93121a Merge remote-tracking branch 'origin/master' 2026-03-24 16:40:09 -04:00
Anuken a19935de51 Added another megabase side-submission 2026-03-24 16:40:00 -04:00
Github Actions f10496f5b7 Automatic bundle update 2026-03-24 16:51:33 +00:00
math-idiot 48e71fd828 Translate dependency-related messages to Chinese (#11719)
更改一些未翻譯的物件
2026-03-24 12:49:56 -04:00
XaphironiusandAnuken a714efa93c Translate sector names to Filipino and contextualize previous translations (#11667)
Updated sector names and descriptions to Filipino translations

Co-authored-by: Anuken <arnukren@gmail.com>
2026-03-24 12:49:43 -04:00
Github Actions dcab1acfa7 Automatic bundle update 2026-03-24 16:48:26 +00:00
vide017andAnuken c1de0a342b Update and added some polish translations (#11746)
Co-authored-by: Anuken <arnukren@gmail.com>
2026-03-24 12:47:06 -04:00
Adleanogare c4c67d80bc Update bundle_fr.properties by adding translation. (#11734) 2026-03-24 12:46:31 -04:00
AdleanogareandAnuken 9e7d0cce7e Update French translation (in bundle_fr.properties) (#11737)
* Update French translation (in bundle_fr.properties)

- Added translation for isolated components before line 1000.
- Some small adjusments of previous translations.

* Adding back a forgotten colored marker in french translation.

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-03-24 12:46:19 -04:00
Github Actions 2e29567170 Automatic bundle update 2026-03-24 16:29:34 +00:00
SITUVNgcdandAnuken 0d4675dd33 Update Vietnanese translation (#11702)
* Update Vietnanese translation

https://github.com/Anuken/Mindustry/commit/6850704072ff86b21f39c9b160c277dc66b00cc7

* new line?

* Translate sector names, stance, sector rename, large canvas

---------

Co-authored-by: Anuken <arnukren@gmail.com>
2026-03-24 12:28:00 -04:00
Github Actions 45d651d3d0 Automatic bundle update 2026-03-24 16:27:16 +00:00
Darkness a16387323d Update bundle_ru.properties (#11760)
* Update bundle_ru.properties

* Some small fixes

* Some more fixes

* Revert stell name
2026-03-24 12:25:52 -04:00
KienNgoo 2ffe1be0ad Update bundle_vi.properties (#11757)
* Update bundle_vi.properties

Added translation for 'Stance: Hold Position'.
Fixed inconsistency at the 'Logic' section in Gamerule menu.

* Update bundle_vi.properties

Fixed spelling mistake on server disclaimer.
A title should not have full stop.

* Update bundle_vi.properties

Capitalized 'google'.
2026-03-24 12:25:00 -04:00
summoner db1c449cbc Translation: Update bundle_hu.properties (#11695)
* Translation: Update bundle_hu.properties

Translate new string
Fixing a mistake

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings
Follow the changes of the english bundle

* Translation: Update bundle_hu.properties

* Translation: Update bundle_hu.properties

* Translation: Update bundle_hu.properties

* Translation: Update bundle_hu.properties

Fix rewording mistake

* Translation: Update bundle_hu.properties

Translate new strings
Following the changes of the english bundle

* Translation: Update bundle_hu.properties

Translate new string

* Translation: Update bundle_hu.properties

* Translation: 

Fix sentences

* Translation: Update bundle_hu.properties

Reverting a deleted word

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings
2026-03-24 12:24:44 -04:00
EggleEgg 7763c4b568 I hate mobile ui (#11782) 2026-03-24 12:24:32 -04:00
JniTrRny daca3f0ee0 Update bundle_th.properties (#11779)
* Keeping up with the changes

* I saw a complaint in 2021 about my choice of vocabulary
2026-03-24 11:59:25 -04:00
Kevin Vilyan 68ee42f7cd Update Bundle ID (#11783)
* Update bundle_id_ID.properties

* ff tutor

* filter map & armor stat

* fix ⚠️ & rename perisai -> penghalang

* New Stance Command

* KETAHUAN LUWH - hubung_sambung ahh

* new sector

* several new settings

* lil space

* New Rules & New Obj string

* forgor this two

* Update bundle_id_ID.properties

* sync
2026-03-24 11:58:46 -04:00
SeuEarth 3165d258f1 Update bundle_ko.properties (#11786)
* Update bundle_ko.properties

* guh

* another one

* third
2026-03-24 11:58:35 -04:00
Anuken 10c9a9dcb6 Fixed #11785 2026-03-24 11:56:04 -04:00
Anuken a3bf73e583 Fixed #11784 2026-03-24 11:49:36 -04:00
Anuken 8efec20cc0 Misc bugfixes and plan optimizations 2026-03-24 11:46:27 -04:00
Anuken 1773a4d0bc Removed reference to unused task 2026-03-23 15:38:50 -04:00
Anuken 53865d09fa Some more netcode fixes 2026-03-23 15:35:21 -04:00
Anuken 88663f6ca8 Merge remote-tracking branch 'origin/master' 2026-03-23 14:42:53 -04:00
Anuken f90cf8196d Minor mobile UI layout fixes 2026-03-23 14:42:46 -04:00
Github Actions b7196b15f9 Automatic bundle update 2026-03-23 01:21:54 +00:00
Anuken ed5ad8310a Added prompt for adjusting difficulty 2026-03-22 21:20:31 -04:00
Anuken d53faf5c98 Merge remote-tracking branch 'origin/master' 2026-03-22 18:30:41 -04:00
Anuken 6e8fbaa1f6 Made pings display the same size regardless of zoom 2026-03-22 18:30:16 -04:00
Github Actions d29b1c1982 Automatic bundle update 2026-03-22 22:13:23 +00:00
Anuken eaa6ee74f1 Nerfed several endgame attack maps 2026-03-22 18:11:51 -04:00
Anuken 324aaaf7f7 Class deserialization check 2026-03-22 16:47:01 -04:00
Anuken 194020de79 Player world reload plan fix 2026-03-22 13:04:04 -04:00
Anuken d619a05556 A wide range of bugfixes 2026-03-22 12:32:39 -04:00
Anuken 6342f499e4 Added a pause building button on mobile 2026-03-22 10:41:48 -04:00
Anuken 975ea198f7 Fixed #11774 2026-03-22 08:57:15 -04:00
Anuken e3174156a6 Fixed some plan sync bugs 2026-03-21 20:42:23 -04:00
Anuken 71e347a4f9 Updated littoralShipyard 2026-03-21 18:19:49 -04:00
Anuken 27d2fd8f78 Merge remote-tracking branch 'origin/master' 2026-03-21 18:17:05 -04:00
Anuken 4851440c10 Network serialization size limit fixes 2026-03-21 18:16:54 -04:00
alecthe2nd f4d155a0eb Fixed UnitAssembler canPlaceOn check using the placed block's getRect() to create the bounding box of the other assembler. (#11773)
* Fixed target ore check requiring wall-only miners to check for floor ore versions when deciding whether to mine the respective ore.

* Fixed UnitAssembler canPlaceOn check using the placed block's getRect() to create the bounding box of the other assembler.
It should now check if the other block is an assembler, and if it is, it will use that assembler's getRect method. If the other block is not an assembler, that block will be ignored.
2026-03-21 17:55:22 -04:00
Anuken 2bfe73da57 TypeIO array length limits 2026-03-21 17:03:36 -04:00
Anuken 6dd29baf0e Better player plan syncing 2026-03-21 11:03:58 -04:00
Anuken 22baa344df Merge remote-tracking branch 'origin/master' 2026-03-21 01:09:06 -04:00
Anuken e48e570d25 Added pings to minimap 2026-03-21 01:08:50 -04:00
Github Actions 4df2ef3926 Automatic bundle update 2026-03-21 04:25:36 +00:00
Anuken 55bd4df422 Ping marker text / Mobile & chat location ping support 2026-03-21 00:24:16 -04:00
Anuken 10095ac4ff Merge remote-tracking branch 'origin/master' 2026-03-20 21:36:02 -04:00
Anuken e002746617 Do not sync player plans across teams 2026-03-20 21:35:56 -04:00
Github Actions 5a62316f57 Automatic bundle update 2026-03-21 01:10:03 +00:00
Anuken d69a002349 Merge remote-tracking branch 'origin/master' 2026-03-20 21:08:43 -04:00
Anuken c41fc53202 Syncing of other player's build plans 2026-03-20 21:08:29 -04:00
Github Actions 2f28e54877 Automatic bundle update 2026-03-20 22:53:36 +00:00
Anuken ef430040b3 Added location ping button 2026-03-20 18:52:14 -04:00
Anuken 5df5471b99 Merge remote-tracking branch 'origin/master' 2026-03-20 13:59:11 -04:00
Anuken c100188ad9 Updated submission for 92 2026-03-20 13:58:57 -04:00
Github Actions 5d649e1b74 Automatic bundle update 2026-03-20 17:54:46 +00:00
Anuken 4f95349e3a Merge remote-tracking branch 'origin/master' 2026-03-20 13:53:20 -04:00
Anuken 6ca7a80c2a Added planet unit factory activation delay rule 2026-03-20 13:53:06 -04:00
buthed010203 5aebcdca58 Allow any version to join hidden steam lobbies (#11770) 2026-03-20 11:32:53 -04:00
Anuken 84c03b3bc0 Merge remote-tracking branch 'origin/master' 2026-03-20 11:10:55 -04:00
Anuken 8c9a4dede4 Cleanup 2026-03-20 11:10:48 -04:00
Github Actions 179a224877 Automatic bundle update 2026-03-20 15:09:58 +00:00
Anuken 6c86aafe5f Merge remote-tracking branch 'origin/master' 2026-03-20 11:08:23 -04:00
Anuken a35fb2d560 Slightly clearer core requirement message 2026-03-20 11:08:16 -04:00
EggleEgg 5c7415da1f Disable pausing gamerule (#11592)
* Enable pausing gamerule

* disable pausing

* wproc gamerule

* player list, skip waves, show message

* state.gameOver && state.isCampaign() check just in case
2026-03-20 11:07:47 -04:00
Anuken 650055d605 Possible game over layout fix 2026-03-19 21:42:09 -04:00
Anuken 6aa3e6027b Fixed maps with item/power sources 2026-03-19 15:05:07 -04:00
Anuken 30777e314e Internally renamed all maps to match sector name / Added unit tests to check for item/power sources 2026-03-19 12:21:09 -04:00
Anuken f989f5609c Test fixes 2026-03-19 11:05:54 -04:00
Anuken 71dd8587a6 Sector submission updates 2026-03-18 21:18:10 -04:00
Anuken 602f2b8557 Upload dependency jar along with releases 2026-03-18 16:13:00 -04:00
Anuken aa6809b16a Dependency order fix 2 2026-03-18 10:58:30 -04:00
Anuken 88a8647570 Minor dependency order fix 2026-03-18 10:47:10 -04:00
Anuken 31b3a88404 Made depsJar include sources 2026-03-18 10:46:44 -04:00
Anuken 2fe23966f9 Fixed tests / Removed win32 packr builds 2026-03-17 23:37:58 -04:00
Anuken e7ba494bfc Triggering a test build 2026-03-17 22:09:50 -04:00
Anuken 60f2c61346 Updated sector submissions / Added x/y to more drawer types 2026-03-17 21:20:34 -04:00
Anuken 98a9bf1e3c Merge remote-tracking branch 'origin/master' 2026-03-17 20:14:08 -04:00
Anuken aecf80c08c Fixed sector 13's objective display 2026-03-17 20:13:47 -04:00
Github Actions 1ca9582296 Automatic bundle update 2026-03-17 23:16:27 +00:00
Felipe Jovino 18c57bb9a3 Add UI edge padding setting (#11741)
* feat(ui): added edge padding support and translations

* Bundles: added uiEdgePadding translations

* add Jovinull in contributors

* refactor(ui): extract updateMargins and apply padding to longest axis

* refactor(settings): use Intc and call updateMargins directly
2026-03-17 19:15:09 -04:00
Anuken 29b54f0a93 Possible fix for #11758 2026-03-15 11:57:18 -04:00
Anuken ddfe45856f Merge remote-tracking branch 'origin/master' 2026-03-15 00:29:05 -04:00
Anuken f1372ded5d Added large canvas to tech tree 2026-03-15 00:29:00 -04:00
Github Actions 3ede4618fe Automatic bundle update 2026-03-15 04:28:01 +00:00
Anuken 26175c65b3 Added large canvas block & canvas image export/import 2026-03-15 00:26:40 -04:00
Anuken c920fe2d21 Removed usage of BoostAI in enter payload command 2026-03-14 02:05:23 -04:00
Anuken 5fd7f68510 Sector submission updates 2026-03-14 01:55:01 -04:00
Anuken 55d567395e Merge remote-tracking branch 'origin/master' 2026-03-14 00:15:56 -04:00
Anuken b8e3a9cd7f Fixed beam drill speed bar not reflecting power 2026-03-13 23:53:13 -04:00
Anuken 54bfc2baad Enable planet atmosphere on mobile by default 2026-03-13 18:40:27 -04:00
buthed010203 d15da6e07e Label ids, deletable labels & popups (#11753)
* Label ids, deletable labels & popups

* Add Nullable annotations
2026-03-13 18:06:41 -04:00
Github Actions deeecfda25 Automatic bundle update 2026-03-13 22:06:31 +00:00
OSPx 5eacd810a6 Added clipboard copy API to Call (#11756) 2026-03-13 18:05:13 -04:00
Anuken 4380f3ec09 Enable animated shields on Android by default 2026-03-13 18:02:30 -04:00
Anuken 06af1faf5b Merge remote-tracking branch 'origin/master' 2026-03-12 22:18:07 -04:00
Anuken 1fb6c0976d Canvas block dialog refactored / Fixed crateredBattleground being in the wrong place 2026-03-12 22:18:01 -04:00
Github Actions d107b264d8 Automatic bundle update 2026-03-12 21:56:29 +00:00
Anuken ab14f3dfb4 Merge remote-tracking branch 'origin/master' 2026-03-12 17:55:02 -04:00
Anuken f5c59ff54c Added a new "preparation" sector before PLT / Renamed "The Craters" 2026-03-12 17:54:51 -04:00
buthed010203 16bbcb62e6 Allow mods to mark themselves as legacy compatible meaning that mods from v7 which still work in v8 can continue to use an old repo and work in both versions. (#11752) 2026-03-12 17:03:10 -04:00
buthed010203 04465c4abc Implement popup id system so that popups don't flicker. (#11751) 2026-03-12 16:46:43 -04:00
Anuken 9fa69c59f9 Static field fix 2026-03-12 16:40:02 -04:00
Anuken f62c344d7a Merge remote-tracking branch 'origin/master' 2026-03-12 16:16:57 -04:00
Anuken 09e30bac71 Massive optimizations to build plan rendering (~100x) 2026-03-12 16:16:47 -04:00
Cardillan 6cc7ea5e57 Gracefully handle string value size exceeding 65535 bytes (#11750) 2026-03-11 19:09:05 -04:00
Anuken b3561933f7 Fixed Perilous Harbor walls blocking enemies 2026-03-11 15:01:03 -04:00
Anuken 37357154f8 Merge remote-tracking branch 'origin/master' 2026-03-10 14:44:23 -04:00
Anuken 9c9980c329 Removed leftover message blocks from Fallen Vessel submission 2026-03-10 14:44:17 -04:00
Github Actions 7210bdc0c9 Automatic bundle update 2026-03-10 06:52:11 +00:00
Felipe JovinoandDinoWattz a7e97c06c6 Completes the Brazilian Portuguese localization (#11742)
* locales: update Brazilian Portuguese (pt_BR) translations for v7 and Erekir contente

* add Jovinull in contributors

* Apply suggestion from @DinoWattz

Co-authored-by: DinoWattz <116862698+DinoWattz@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DinoWattz <116862698+DinoWattz@users.noreply.github.com>

* Apply suggestions from code review part2

* Update bundle_pt_BR.properties part 4

* Update bundle_pt_BR.properties part 5

* Update bundle_pt_BR.properties part 6

* Apply suggestions from code review

Co-authored-by: DinoWattz <116862698+DinoWattz@users.noreply.github.com>

* Update launch pad names to match English bundle

---------

Co-authored-by: DinoWattz <116862698+DinoWattz@users.noreply.github.com>
2026-03-10 02:50:37 -04:00
Anuken 00cc2cd1bf Fixed #11744 2026-03-10 02:06:52 -04:00
Anuken 7858e29b21 Merge remote-tracking branch 'origin/master' 2026-03-09 21:24:55 -04:00
Anuken 6e793a1c1d Fixed #11747 2026-03-09 21:24:27 -04:00
Github Actions 3bf47520a0 Automatic bundle update 2026-03-09 02:01:39 +00:00
Anuken 19ab8423eb Added 'hold position' stance (closes Anuken/Mindustry-Suggestions/issues/6157) 2026-03-08 22:00:02 -04:00
Anuken 45e5ca3612 More stat tracking 2026-03-07 20:58:04 -05:00
Anuken b85056a493 WIP campaign stat tracking (not displayed yet) 2026-03-07 20:55:24 -05:00
Anuken 2b74317b34 Fixed sector remapping in JSON mods / New 76 submission 2026-03-07 20:11:11 -05:00
Anuken 63f0776079 Fixed attribute check with placeableLiquid blocks 2026-03-06 20:54:16 -05:00
Anuken ac361d4e8f Merge remote-tracking branch 'origin/master' 2026-03-06 11:57:04 -05:00
Anuken 319593e0b6 Tweaks to Atolls tutorial and bases 2026-03-06 11:56:57 -05:00
Github Actions 86dc36a372 Automatic bundle update 2026-03-06 04:56:15 +00:00
Anuken 79a991a2a0 Made boosting a stance 2026-03-05 23:54:35 -05:00
Anuken 70c2010ea5 Fixed GenericCrafter patch crash 2026-03-04 23:57:42 -05:00
Anuken 65e4a22c84 Fixed Japanese font being displayed incorrectly 2026-03-04 23:48:49 -05:00
Anuken 0215cabda8 Added fallback for monospace font 2026-03-04 19:16:22 -05:00
Anuken 2ed9fa8834 Fixed #11735 2026-03-04 17:14:17 -05:00
Anuken d3b4943c55 Removed unused stat 2026-03-03 22:05:27 -05:00
Anuken 8232e5aa52 Minor sector submission update 2026-03-03 21:06:49 -05:00
Anuken 785054d28b Renamed Erekir editor-only shield projector to "barrier projector" 2026-03-02 21:56:40 -05:00
Anuken fe620796b4 Merge remote-tracking branch 'origin/master' 2026-03-01 14:19:51 -05:00
Anuken c9efe991df Fixed #11728 2026-03-01 14:19:46 -05:00
Gureumi df9d6bbfda Delete Korea server entry from servers_v7.json (#11729) 2026-03-01 14:18:40 -05:00
Anuken 1c2a3eb2e5 Merge remote-tracking branch 'origin/master' 2026-02-28 00:05:32 -05:00
Anuken d0005aea7f Turret reload 'fix' moved to PowerTurret 2026-02-28 00:05:22 -05:00
Cardillan f9fa92afc1 Fix draw image bug with tiled displays. (#11721) 2026-02-28 00:01:56 -05:00
Efsfse2280 ef5d5abfff Update UnitTypes.java (#11727) 2026-02-28 00:01:27 -05:00
Anuken 5a2a1658ce Fixed #11717 2026-02-27 22:48:02 -05:00
Anuken 6ad8d06015 Hacky wait time save/loading for processors 2026-02-26 23:50:52 -05:00
Anuken adb9a82d84 Fixed Ground Zero being land-able with IPA, leading to buggy behavior 2026-02-25 23:11:20 -05:00
Anuken 0d112fd655 Merge remote-tracking branch 'origin/master' 2026-02-25 22:32:36 -05:00
Anuken 4d8ebbcc15 Fixed some disabled image buttons being 'clickable' 2026-02-25 22:32:30 -05:00
SomeonesShade 3fd0d817e7 Armor Multiplier Display Adjustments (#11710)
* Made Armor Weakness a number rather than a % for display.

* Renamed to ArmorPiercing to PartialArmorPierce

* ArmorMult doesn't display if Pierce Armor is On
renamed the bundle to "% armor pierce"

* Just In Case
2026-02-25 22:31:30 -05:00
Github Actions 515c7e9f72 Automatic bundle update 2026-02-26 03:26:59 +00:00
ItsKirby69 9cb2ae259c Add new Map Filter Options (#11712)
* bundles

* Add new filters
2026-02-25 22:25:27 -05:00
Anuken 4462f1bea4 Fixed #11714 2026-02-25 22:20:32 -05:00
Anuken 2fa5cf5dab Added sounds for picking up and dropping payloads 2026-02-24 22:01:41 -05:00
Anuken 8d16c1768e Fixed tests 2026-02-24 12:19:23 -05:00
Anuken 769e45e65a Merge remote-tracking branch 'origin/master' 2026-02-24 12:13:42 -05:00
Anuken cc1cea5b93 Fixed #11709 2026-02-24 12:13:36 -05:00
Github Actions 36076eb7f8 Automatic class mapping update 2026-02-24 17:03:55 +00:00
Anuken d1e512e7c8 Fixed push script 2026-02-24 12:01:34 -05:00
Anuken f0df12127f Added actions task to automatically update class mappings 2026-02-24 11:54:47 -05:00
Anuken 628efdc6f2 Fixed packing 2026-02-24 11:39:37 -05:00
Anuken 41edbd338d Updated to Gradle 9 2026-02-24 00:32:22 -05:00
Anuken eedfb62cf2 Fixed banned units on Coastline 2026-02-23 22:31:00 -05:00
Anuken f5e83e1e20 Possible power fix for derelict structures 2026-02-22 20:51:17 -05:00
Anuken f20e3ff946 Fixed #11705 2026-02-22 20:09:44 -05:00
Anuken 7da63ac504 Fixed #11697 2026-02-20 17:03:47 -05:00
Anuken 76dc529d23 Fixed #11698 2026-02-20 16:19:39 -05:00
Anuken 74b9589eb6 Merge remote-tracking branch 'origin/master' 2026-02-20 15:58:09 -05:00
Anuken 3b179315c1 Better attribute parsing error message 2026-02-20 15:58:03 -05:00
Github Actions 6850704072 Automatic bundle update 2026-02-20 03:54:05 +00:00
Anuken fd00f3fae3 New basic frozen forest tutorial 2026-02-19 22:52:36 -05:00
Anuken b00b88476b Fixed a crash with width/height == 0 2026-02-19 22:05:15 -05:00
Anuken f8ab28196b Merge remote-tracking branch 'origin/master' 2026-02-19 22:01:31 -05:00
Anuken 26bae55830 Fixed #11694 2026-02-19 22:01:25 -05:00
Github Actions 85b44f02b3 Automatic bundle update 2026-02-19 03:42:15 +00:00
EggleEgg 061b12ed80 Stat info entry (#11674)
* Stat info entry

* oop cleanup imports
2026-02-18 22:40:44 -05:00
Github Actions b72031e62f Automatic bundle update 2026-02-19 03:38:07 +00:00
SITUVNgcd 56a7588736 Update Vietnamese translation (#11677)
* Update Vietnamese translation

https://github.com/Anuken/Mindustry/commit/58fe731e7021dcaddc61d1e18b60e416218d8745

* Something went wrong while export from translation tool. Fixed
2026-02-18 22:36:25 -05:00
Anuken a7f2bb3b79 Merge remote-tracking branch 'origin/master' 2026-02-18 21:43:33 -05:00
Anuken 4fcb89cb28 Fixed #11690 2026-02-18 21:43:25 -05:00
Alone 9127d8a8ac Replace '@category.' + cat.name with cat.localized() to achieve better compatibility with StatCat. I don't understand why localized was written but not used. (#11687) 2026-02-17 16:51:19 -05:00
Github Actions 75155f7304 Automatic bundle update 2026-02-17 21:47:15 +00:00
Anuken 50f6b1675e Merge branch 'master' of https://github.com/Anuken/Mindustry 2026-02-17 16:45:28 -05:00
Anuken 40ca70ae26 arc 2026-02-17 16:45:25 -05:00
summoner 34ee406445 Translation: Update bundle_hu.properties (#11685)
* Translation: Update bundle_hu.properties

Fix mistakes

* Translation: Update bundle_hu.properties. Follow the changes of the english bundle.
2026-02-17 16:45:10 -05:00
Fu'ad Husnan 3f8fe03003 Update Prcessors' description for Indonesian translation (#11678)
Updated descriptions for micro, logic, and hyper processors to use 'perulangan' (means 'iteration') instead of 'lingkaran' (means 'circle').
2026-02-17 16:45:01 -05:00
Anuken 07d5b03e35 More achievement fixes 2026-02-16 13:30:21 -05:00
Anuken 3c239e8af0 Defer even firing until after unit is added 2026-02-16 13:22:32 -05:00
Anuken 9d759d03eb Correctly fire UnitCreateEvent in UnitAssembler 2026-02-16 13:21:56 -05:00
Anuken 6c53474479 Apparently zenity is still needed, marvelous 2026-02-16 12:59:43 -05:00
SomeonesShade 10e9655a43 Copper Salvo: 50% Armor Weakness with 5x Ammo Mult (#11686) 2026-02-16 12:53:07 -05:00
Anuken 13ad318ad9 Buffer fixes 2026-02-16 12:50:34 -05:00
Anuken 4aa78c6a11 Fixed #11649 2026-02-16 12:47:54 -05:00
Anuken f34ddc8d9b Earlier version and logging initialization 2026-02-16 12:27:10 -05:00
Anuken 59fb89c243 Merge remote-tracking branch 'origin/master' 2026-02-16 11:58:47 -05:00
Anuken e5202a8f92 Fixed #11672 2026-02-16 11:58:42 -05:00
Github Actions 5ddff4ce22 Automatic bundle update 2026-02-16 16:45:12 +00:00
Anuken 1ae0f6171b 32-bit messages cleaned up 2026-02-16 11:43:36 -05:00
Anuken 550bc0c311 Fixed #11688 2026-02-16 11:40:02 -05:00
Anuken ca04662341 Fixed #11680 2026-02-16 11:38:56 -05:00
Anuken a3682756dc Revert "Removed borderless fullscreen option (window should always be borderless fullscreen anyway)"
This reverts commit d4cda24fb8.
2026-02-16 11:30:35 -05:00
Anuken 4f52ec4846 Fixed #11681 2026-02-16 11:27:20 -05:00
Anuken b26685f05e Fixed #11679 2026-02-16 11:24:41 -05:00
Anuken a6743e8217 Fixed core database search being broken 2026-02-16 11:23:27 -05:00
Anuken 0580e1afbb SDL3 is broken, reverting to SDL2 (Closes #11671, #11676) 2026-02-16 10:58:34 -05:00
Anuken d8e94923d6 Merge remote-tracking branch 'origin/master' 2026-02-15 12:49:34 -05:00
Anuken b1d40fb039 Added error dialog when launching with 32-bit windows or Java 8 2026-02-15 12:49:28 -05:00
Chorus dc0ced3ca3 Added some translations (#11513) 2026-02-13 20:35:58 -05:00
Anuken f6266db2bc Triggering BE build 2026-02-13 20:31:08 -05:00
Anuken f5b2b81c21 Fixed attempts to load folders as maps in mods 2026-02-13 20:20:31 -05:00
Anuken 50c40be5e2 Buildscript updates 2026-02-13 13:58:38 -05:00
Anuken fa13d108d9 Buildscript fixes 2026-02-13 11:29:36 -05:00
Anuken 8069a7b306 Merge remote-tracking branch 'origin/master' 2026-02-13 11:17:48 -05:00
Anuken 42fe38c2aa Fixed improperly initialized mods crashing the database 2026-02-13 11:17:43 -05:00
summoner 87b71295f2 Translation: Update bundle_hu.properties (#11475)
* Translation: Update bundle_hu.properties

Fix mistranslations
Fix typos
Finetune sentences for ingame coding consistency

* Translation: Update bundle_hu.properties

Translate new strings

* Follow the changes of the english bundle

* Translation: Follow the changes of the english bundle

Follow the changes of the english bundle

* Fix translation

fix the word "projector" translation

kivetítő -> vetítő

* Fine tune latest building names

* Fix mistakes

* Translate new strings

* Translate new string

* Update bundle_hu.properties

Fixing mistakes and typos

* Update bundle_hu.properties

Add missed sentence to string

* Update bundle_hu.properties

add missing .

* Update bundle_hu.properties

Fix consistency and coherency

* Update bundle_hu.properties

fix . dot

* Update bundle_hu.properties

fix translation of the word pause
Fix consistency

* Fix "x" -> db, fix consistency

* Fix spaces

* Fix some words translation: duct, shield, utility / csatorna, pajzs, fenntartó

* Fix translation

* Update bundle_hu.properties

Fine-tune translation

* Fine tuning strings

* Translate new string

* Translation: Update bundle_hu.properties

Translate new strings
Fix translation of rebuild and respawn words -> újjáépítés and újjáéledés

* Translation: Update bundle_hu.properties

Delete dupe line

* Translation: Update bundle_hu.properties

Translate new strings

* Translation: Update bundle_hu.properties

Translate new strings.
Follow the changes of the english bundle

* Translation: Update bundle_hu.properties

Follow the english bundle changes

Coastline -> Humid Coastline
Partvidék -> Párás partvidék

* Translation: Update bundle_hu.properties

Fix Partvonal -> Partvidék

* Translation: Update description.txt

Fix consistency and coherency with the bundle_hu.properties

* Translation: Update achievements.vdf

Fix coherency and consitency with the bundle_hu properties

* Translation: Update bundle_hu.properties

* Translation: Update hu-hu.json

Translate new strings.
Follow the changes of the english bundle.

* Translation: Update bundle_hu.properties

Translate new strings

* Update bundle_hu.properties

fixing words
2026-02-13 11:13:46 -05:00
Anuken 03bea6b291 Updated scripts to match the proper SDL backend name 2026-02-13 11:06:24 -05:00
Anuken 0aa091b212 Fixed #11666 2026-02-13 10:01:37 -05:00
Anuken dec4913090 No AI-generated PRs 2026-02-13 00:42:16 -05:00
TheCuber222 c01a35d410 Translate:Removed outdated description (#11659)
Omura will no longer produce Flare; this information is outdated.
2026-02-12 16:41:08 -05:00
Anuken 15f5885b0f arc 2026-02-12 13:06:14 -05:00
Anuken c3ccee72a7 Triggering build 2026-02-12 12:40:12 -05:00
Anuken 139d7626b2 Proper shield arc velocity nullification 2026-02-12 12:22:00 -05:00
Anuken d285dd6855 Merge remote-tracking branch 'origin/master' 2026-02-12 09:12:28 -05:00
Anuken 0a066fbef7 Another wayland fix attempt 2026-02-12 09:12:19 -05:00
Anuken 4d70395204 Update deployment.yml 2026-02-11 21:00:45 -05:00
Anuken 98d4130222 Update deployment.yml 2026-02-11 20:55:27 -05:00
574 changed files with 22865 additions and 8800 deletions
+18 -5
View File
@@ -19,8 +19,6 @@ jobs:
uses: actions/setup-java@v1
with:
java-version: 17
- name: Fetch latest Arc
run: git clone --depth=1 --branch=master https://github.com/Anuken/Arc ../Arc
- name: Set env
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Add Arc release
@@ -48,11 +46,11 @@ jobs:
git add .
git commit --allow-empty -m "Updating"
git tag ${RELEASE_VERSION}
git push https://Anuken:${{ secrets.API_TOKEN_GITHUB }}@github.com/Anuken/MindustryJitpack
git push https://Anuken:${{ secrets.API_TOKEN_GITHUB }}@github.com/Anuken/MindustryJitpack ${RELEASE_VERSION}
cd ../Mindustry
- name: Create artifacts
run: |
./gradlew desktop:dist server:dist core:mergedJavadoc -Pbuildversion=${RELEASE_VERSION:1}
./gradlew desktop:dist server:dist core:depsJar core:assetsJar core:mergedJavadoc -Pbuildversion=${RELEASE_VERSION:1}
- name: Update docs
run: |
cd ../
@@ -66,7 +64,7 @@ jobs:
cd docs
git add .
git commit --allow-empty -m "Update ${RELEASE_VERSION:1}"
git push https://Anuken:${{ secrets.API_TOKEN_GITHUB }}@github.com/MindustryGame/docs
git push https://Anuken:${{ secrets.API_TOKEN_ORG_GITHUB }}@github.com/MindustryGame/docs
cd ../Mindustry
- name: Update F-Droid build string
run: |
@@ -92,3 +90,18 @@ jobs:
file: server/build/libs/server-release.jar
tag: ${{ github.ref }}
- name: Upload dependency JAR
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: core/build/libs/core-release-deps.jar
asset_name: dependencies.jar
tag: ${{ github.ref }}
- name: Upload assets JAR
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: core/build/libs/core-release-assets.jar
asset_name: assets.jar
tag: ${{ github.ref }}
+12
View File
@@ -41,6 +41,18 @@ jobs:
git commit -m "Automatic bundle update"
git push
fi
- name: Update scripts and class mappings
if: ${{ github.repository == 'Anuken/Mindustry' }}
run: |
./gradlew updateScripts
if [ -n "$(git status --porcelain)" ]; then
git config --global user.name "Github Actions"
git config --global user.email "actions@github.com"
git add core/assets/scripts/* core/src/mindustry/mod/ClassMap.java
git commit -m "Automatic class mapping update"
git push
fi
- name: Update JITpack repo
if: ${{ github.repository == 'Anuken/Mindustry' }}
run: |
+6
View File
@@ -20,6 +20,12 @@ Yes, there are occurrences of trailing spaces, extra newlines, empty indents, an
I **especially** do not want to see PRs that apply any kind of automated analysis to the source code to "optimize" anything - my IDE can do that already. If the PR doesn't actually change anything useful, I'm not going to review or merge it.
### Do not make AI "contributions".
If I see a PR with significant amounts of code that's obviously written by AI, I will reject your PR, and you will be blocked. Don't waste my time with slop.
Asking AI questions, and using that information to help you write code? Fine. Using it to actually write code? No.
## Style Guidelines
### Follow the formatting guidelines.
-1
View File
@@ -14,7 +14,6 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:isGame="true"
android:theme="@style/ArcTheme"
android:usesCleartextTraffic="true"
android:appCategory="game"
android:label="@string/app_name"
android:fullBackupContent="@xml/backup_rules"
+8 -7
View File
@@ -3,7 +3,6 @@ buildscript{
mavenLocal()
mavenCentral()
google()
maven{ url "https://oss.sonatype.org/content/repositories/snapshots/" }
}
dependencies{
@@ -17,7 +16,7 @@ configurations{ natives }
repositories{
mavenCentral()
maven{ url "https://maven.google.com" }
maven{ url = "https://maven.google.com" }
}
task deploy(type: Copy){
@@ -40,9 +39,11 @@ android{
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets', 'src/main/assets', '../core/assets/']
jniLibs.srcDirs = ['libs']
if(localArc){
jniLibs.srcDirs += ['../../Arc/natives/natives-android/libs', '../../Arc/natives/natives-freetype-android/libs']
}else{
jniLibs.srcDirs = ['libs']
}
}
@@ -70,12 +71,12 @@ android{
}
props.store(file('../core/assets/version.properties').newWriter(), null)
multiDexEnabled true
multiDexEnabled = true
}
compileOptions{
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
flavorDimensions = ["google"]
@@ -113,7 +114,7 @@ android{
if(project.hasProperty("RELEASE_STORE_FILE") || System.getenv("CI") == "true"){
buildTypes{
release{
signingConfig signingConfigs.release
signingConfig = signingConfigs.release
}
}
}
@@ -5,20 +5,22 @@ import android.app.*;
import android.content.*;
import android.content.pm.*;
import android.net.*;
import android.os.Build.*;
import android.os.*;
import android.os.Build.*;
import android.telephony.*;
import arc.*;
import arc.backend.android.*;
import arc.files.*;
import arc.func.*;
import arc.scene.ui.layout.*;
import arc.struct.*;
import arc.util.*;
import dalvik.system.*;
import mindustry.*;
import mindustry.game.Saves.*;
import mindustry.io.*;
import mindustry.net.*;
import mindustry.ui.*;
import mindustry.ui.FileChooser.*;
import mindustry.ui.dialogs.*;
import java.io.*;
@@ -30,7 +32,7 @@ import static mindustry.Vars.*;
public class AndroidLauncher extends AndroidApplication{
public static final int PERMISSION_REQUEST_CODE = 1;
boolean doubleScaleTablets = true;
FileChooser chooser;
FileChooserDialog chooser;
Runnable permCallback;
@Override
@@ -97,8 +99,7 @@ public class AndroidLauncher extends AndroidApplication{
}
};
}catch(SecurityException e){
//`setReadOnly` to jar file in `/sdcard/Android/data/...` does not work on some Android 14 device
//But in `/data/...` it works
//`setReadOnly` to jar file in `/sdcard/Android/data/...` does not work on some Android 14 devices, but in `/data/...`, it does
if(Build.VERSION.SDK_INT < VERSION_CODES.O_MR1){
throw e;
@@ -127,27 +128,34 @@ public class AndroidLauncher extends AndroidApplication{
}
@Override
public void showFileChooser(boolean open, String title, String extension, Cons<Fi> cons){
showFileChooser(open, title, cons, extension);
}
void showFileChooser(boolean open, String title, Cons<Fi> cons, String... extensions){
public void showFileChooser(FileChooserParams params){
try{
String extension = extensions[0];
String extension = params.extensions[0];
if(VERSION.SDK_INT >= VERSION_CODES.Q){
Intent intent = new Intent(open ? Intent.ACTION_OPEN_DOCUMENT : Intent.ACTION_CREATE_DOCUMENT);
Intent intent = new Intent(params.open ? Intent.ACTION_OPEN_DOCUMENT : Intent.ACTION_CREATE_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType(extension.equals("zip") && !open && extensions.length == 1 ? "application/zip" : "*/*");
intent.putExtra(Intent.EXTRA_TITLE, "export." + extension);
intent.setType(extension.equals("zip") && !params.open && params.extensions.length == 1 ? "application/zip" : "*/*");
intent.putExtra(Intent.EXTRA_TITLE, params.fileName);
if(params.allowMultiple){
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
}
addResultListener(i -> startActivityForResult(intent, i), (code, in) -> {
if(code == Activity.RESULT_OK && in != null && in.getData() != null){
Uri uri = in.getData();
Uri[] uris;
if(in.getClipData() != null){
uris = new Uri[in.getClipData().getItemCount()];
for(int i = 0; i < uris.length; i++){
uris[i] = in.getClipData().getItemAt(i).getUri();
}
}else{
uris = new Uri[]{in.getData()};
}
if(uri.getPath().contains("(invalid)")) return;
if(uris.length == 0 || uris[0].getPath().contains("(invalid)")) return;
Core.app.post(() -> Core.app.post(() -> cons.get(new Fi(uri.getPath()){
Fi[] files = Seq.with(uris).map(uri -> new Fi(uri.getPath()){
@Override
public InputStream read(){
try{
@@ -165,18 +173,14 @@ public class AndroidLauncher extends AndroidApplication{
throw new ArcRuntimeException(e);
}
}
})));
}).toArray(Fi.class);
Core.app.post(() -> Core.app.post(() -> params.handleChooseResult(files)));
}
});
}else if(VERSION.SDK_INT >= VERSION_CODES.M && !(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED &&
checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)){
chooser = new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), open, file -> {
if(!open){
cons.get(file.parent().child(file.nameWithoutExtension() + "." + extension));
}else{
cons.get(file);
}
});
chooser = FileChooser.createFallbackFileChooser(params);
ArrayList<String> perms = new ArrayList<>();
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
@@ -187,22 +191,13 @@ public class AndroidLauncher extends AndroidApplication{
}
requestPermissions(perms.toArray(new String[0]), PERMISSION_REQUEST_CODE);
}else{
if(open){
new FileChooser(title, file -> Structs.contains(extensions, file.extension().toLowerCase()), true, cons).show();
}else{
super.showFileChooser(open, "@open", extension, cons);
}
FileChooser.showFallbackFileChooser(params);
}
}catch(Throwable error){
Core.app.post(() -> Vars.ui.showException(error));
}
}
@Override
public void showMultiFileChooser(Cons<Fi> cons, String... extensions){
showFileChooser(true, "@open", cons, extensions);
}
@Override
public void beginForceLandscape(){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
@@ -235,7 +230,6 @@ public class AndroidLauncher extends AndroidApplication{
Log.err("Failed to delete cached folder", t);
}
//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...");
@@ -5,6 +5,21 @@ import java.lang.annotation.*;
public class Annotations{
//region entity interfaces
@Repeatable(BuildingListDefs.class)
@Retention(RetentionPolicy.SOURCE)
@Target({ElementType.TYPE})
public @interface BuildingListDef{
String qualifiedType() default "";
Class<?> type() default void.class;
String method();
}
@Retention(RetentionPolicy.SOURCE)
@Target({ElementType.TYPE})
public @interface BuildingListDefs{
BuildingListDef[] value();
}
/** Indicates that a method overrides other methods. */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.SOURCE)
@@ -35,6 +50,10 @@ public class Annotations{
@Retention(RetentionPolicy.SOURCE)
public @interface NoSync{}
/** Indicates that a field should be synced, but not serialized */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.SOURCE)
public @interface NoSerialize{}
/** Indicates that a component field is imported from other components. This means it doesn't actually exist. */
@Target({ElementType.FIELD})
@@ -84,6 +103,7 @@ public class Annotations{
boolean collide() default false;
boolean spatial() default false;
boolean mapping() default false;
boolean update() default false;
}
/** Indicates an entity definition. */
@@ -103,6 +123,8 @@ public class Annotations{
boolean genio() default true;
/** Whether I made a massive mistake by merging two different class branches */
boolean legacy() default false;
/** Groups to exclude. */
String[] excludeGroups() default {};
}
/** Indicates an internal interface for entity components. */
@@ -232,7 +232,7 @@ public abstract class BaseProcessor extends AbstractProcessor{
@Override
public SourceVersion getSupportedSourceVersion(){
return SourceVersion.RELEASE_8;
return SourceVersion.RELEASE_17;
}
public void process(RoundEnvironment env) throws Exception{
@@ -0,0 +1,112 @@
package mindustry.annotations.entity;
import mindustry.annotations.Annotations.*;
import mindustry.annotations.*;
import javax.annotation.processing.*;
import javax.lang.model.type.*;
import javax.tools.*;
import java.io.*;
@SupportedAnnotationTypes("mindustry.annotations.Annotations.BuildingListDefs")
public class BuildingListProcess extends BaseProcessor{
static final String template = """
package mindustry.gen;
import ELEMENT_TYPE;
public class CLASS_NAME{
public ELEMENT_TYPE[] values = new ELEMENT_TYPE[50];
public int size, index;
public void update(){
for(index = 0; index < size; index++){
values[index].UPDATE_METHOD_NAME();
}
}
public void add(ELEMENT_TYPE building){
ELEMENT_TYPE[] items = values;
if(size == items.length){
int newLength = (int)(size * 1.75f);
ELEMENT_TYPE[] newItems = new ELEMENT_TYPE[newLength];
System.arraycopy(items, 0, newItems, 0, size);
values = items = newItems;
}
items[building.buildingArrayIndex = size++] = building;
}
public void remove(ELEMENT_TYPE type){
int position = type.buildingArrayIndex;
if(position != -1 && position < size){
//rarely the entity index is wrong; fallback to slow implementation
if(values[position] != type){
type.buildingArrayIndex = -1;
for(int i = 0; i < size; i++){
if(values[position] == type){
type.buildingArrayIndex = i;
break;
}
}
//not found in the array (attempt to remove a building that does not exist?)
if(type.buildingArrayIndex == -1) return;
}
//swap head with current
if(size > 1){
var head = values[size - 1];
head.buildingArrayIndex = position;
values[position] = head;
}
size--;
values[size] = null;
//fix iteration index when removing
if(index >= position){
index--;
}
}
}
}
""";
@Override
public void process(RoundEnvironment env) throws Exception{
var types = types(BuildingListDefs.class);
for(var type : types){
for(var listDef : type.annotation(BuildingListDefs.class).value()){
String fullName;
if(!listDef.qualifiedType().isEmpty()){
fullName = listDef.qualifiedType();
}else{
try{
fullName = listDef.type().getCanonicalName();
}catch(MirroredTypeException e){
fullName = e.getTypeMirror().toString();
}
}
String simpleName = simpleName(fullName);
var listMethod = listDef.method();
String listClassName = (simpleName.endsWith("Build") ? simpleName.replace("Build","") : simpleName) + "List";
String resultClass = template
.replaceAll("ELEMENT_TYPE", fullName)
.replaceAll("CLASS_NAME", listClassName)
.replaceAll("UPDATE_METHOD_NAME", listMethod)
;
JavaFileObject object = filer.createSourceFile(packageName + "." + listClassName);
Writer stream = object.openWriter();
stream.write(resultClass);
stream.close();
}
}
}
}
@@ -13,6 +13,8 @@ import mindustry.annotations.util.TypeIOResolver.*;
import javax.lang.model.element.*;
import java.lang.annotation.*;
import static mindustry.annotations.BaseProcessor.instanceOf;
public class EntityIO{
@@ -56,7 +58,8 @@ public class EntityIO{
Seq<FieldSpec> fields = typeFields.select(spec ->
!spec.hasModifier(Modifier.TRANSIENT) &&
!spec.hasModifier(Modifier.STATIC) &&
!spec.hasModifier(Modifier.FINAL)/* &&
!spec.hasModifier(Modifier.FINAL)
/* &&
(spec.type.isPrimitive() || serializer.has(spec.type.toString()))*/);
//sort to keep order
@@ -77,7 +80,7 @@ public class EntityIO{
}
}
void write(MethodSpec.Builder method, boolean write) throws Exception{
void write(MethodSpec.Builder method, boolean write, Seq<Svar> allFields) throws Exception{
this.method = method;
this.write = write;
@@ -89,6 +92,7 @@ public class EntityIO{
st("write.s($L)", revisions.peek().version);
//write uses most recent revision
for(RevisionField field : revisions.peek().fields){
if(fieldHasAnno(field, allFields, NoSerialize.class)) continue;
io(field.type, "this." + field.name, false);
}
}else{
@@ -106,6 +110,7 @@ public class EntityIO{
//add code for reading revision
for(RevisionField field : rev.fields){
if(fieldHasAnno(field, allFields, NoSerialize.class)) continue;
//if the field doesn't exist, the result will be an empty string, it won't get assigned
io(field.type, presentFields.contains(field.name) ? "this." + field.name + " = " : "", false);
}
@@ -118,6 +123,11 @@ public class EntityIO{
}
}
boolean fieldHasAnno(RevisionField field, Seq<Svar> allFields, Class<? extends Annotation> type){
Svar var = allFields.find(s -> s.name().equals(field.name));
return var != null && var.has(type);
}
void writeSync(MethodSpec.Builder method, boolean write, Seq<Svar> allFields) throws Exception{
this.method = method;
this.write = write;
@@ -125,8 +135,7 @@ public class EntityIO{
if(write){
//write uses most recent revision
for(RevisionField field : revisions.peek().fields){
Svar var = allFields.find(s -> s.name().equals(field.name));
if(var == null || var.has(NoSync.class)) continue;
if(fieldHasAnno(field, allFields, NoSync.class)) continue;
io(field.type, "this." + field.name, true);
}
@@ -237,8 +246,8 @@ public class EntityIO{
st("$L(write, $L)", network ? serializer.getNetWriter(type, null) : serializer.writers.get(type), field);
}else if(serializer.mutatorReaders.containsKey(type) && !write && !field.replace(" = ", "").contains(" ") && !field.isEmpty()){
st("$L$L(read, $L)", field, serializer.mutatorReaders.get(type), field.replace(" = ", ""));
}else if(serializer.readers.containsKey(type) && !write){
st("$L$L(read)", field, serializer.readers.get(type));
}else if((serializer.readers.containsKey(type) || (network && serializer.netReaders.containsKey(type))) && !write){
st("$L$L(read)", field, network ? serializer.getNetReader(type, null) : serializer.readers.get(type));
}else if(type.endsWith("[]")){ //it's a 1D array
String rawType = type.substring(0, type.length() - 2);
@@ -242,7 +242,7 @@ public class EntityProcess extends BaseProcessor{
boolean collides = an.collide();
groupDefs.add(new GroupDefinition(name,
ClassName.bestGuess(packageName + "." + groupType), types, an.spatial(), an.mapping(), collides));
ClassName.bestGuess(packageName + "." + groupType), types, an.spatial(), an.mapping(), collides, an.update()));
TypeSpec.Builder accessor = TypeSpec.interfaceBuilder("IndexableEntity__" + name);
accessor.addMethod(MethodSpec.methodBuilder("setIndex__" + name).addModifiers(Modifier.ABSTRACT, Modifier.PUBLIC).addParameter(int.class, "index").returns(void.class).build());
@@ -258,7 +258,7 @@ public class EntityProcess extends BaseProcessor{
//all component classes (not interfaces)
Seq<Stype> components = allComponents(type);
Seq<GroupDefinition> groups = groupDefs.select(g -> (!g.components.isEmpty() && !g.components.contains(s -> !components.contains(s))) || g.manualInclusions.contains(type));
Seq<GroupDefinition> groups = groupDefs.select(g -> (!g.components.isEmpty() && !Structs.contains(ann.excludeGroups(), g.name) && !g.components.contains(s -> !components.contains(s))) || g.manualInclusions.contains(type));
ObjectMap<String, Seq<Smethod>> methods = new ObjectMap<>();
ObjectMap<FieldSpec, Svar> specVariables = new ObjectMap<>();
ObjectSet<String> usedFields = new ObjectSet<>();
@@ -505,7 +505,7 @@ public class EntityProcess extends BaseProcessor{
//SPECIAL CASE: I/O code
//note that serialization is generated even for non-serializing entities for manual usage
if((first.name().equals("read") || first.name().equals("write"))){
io.write(mbuilder, first.name().equals("write"));
io.write(mbuilder, first.name().equals("write"), allFields);
specialIO = true;
}
@@ -700,7 +700,11 @@ public class EntityProcess extends BaseProcessor{
}
}
groupUpdate.addStatement("all.update()");
for(GroupDefinition group : groupDefs){
if(group.updates){
groupUpdate.addStatement("$L.update()", group.name);
}
}
for(GroupDefinition group : groupDefs){
if(group.collides){
@@ -985,16 +989,17 @@ public class EntityProcess extends BaseProcessor{
final String name;
final ClassName baseType;
final Seq<Stype> components;
final boolean spatial, mapping, collides;
final boolean spatial, mapping, collides, updates;
final ObjectSet<Selement> manualInclusions = new ObjectSet<>();
public GroupDefinition(String name, ClassName bestType, Seq<Stype> components, boolean spatial, boolean mapping, boolean collides){
public GroupDefinition(String name, ClassName bestType, Seq<Stype> components, boolean spatial, boolean mapping, boolean collides, boolean updates){
this.baseType = bestType;
this.components = components;
this.name = name;
this.spatial = spatial;
this.mapping = mapping;
this.collides = collides;
this.updates = updates;
}
@Override
@@ -142,6 +142,19 @@ public class AssetsProcess extends BaseProcessor{
.addParameter(int.class, "id")
.returns(Sound.class)
.addStatement("return (Sound)idToSound.get(id, () -> Sounds.none)").build());
type.addMethod(MethodSpec.methodBuilder("registerSound")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.addParameter(Sound.class, "sound")
.addParameter(int.class, "id")
.returns(void.class)
.addStatement("idToSound.put(id, sound); soundToId.put(sound, id);").build());
type.addMethod(MethodSpec.methodBuilder("unregisterSound")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.addParameter(Sound.class, "sound")
.returns(void.class)
.addStatement("int id = soundToId.get(sound); if(id != 0){ soundToId.remove(sound); idToSound.remove(id); }").build());
}
HashSet<String> names = new HashSet<>();
@@ -56,6 +56,15 @@ public class CallGenerator{
packet.addMethod(writeHandleMethod(ent, true));
}
if(!(ent.where.isClient && ent.where.isServer)){
packet.addMethod( MethodSpec.methodBuilder("allow")
.addModifiers(Modifier.PUBLIC)
.addParameter(boolean.class, "server")
.addAnnotation(Override.class)
.returns(boolean.class)
.addCode("return " + (ent.where.isClient ? "server" : "!server") + ";").build());
}
//register packet
register.addStatement("mindustry.net.Net.registerPacket($L.$L::new)", packageName, ent.packetClassName);
@@ -193,7 +202,7 @@ public class CallGenerator{
builder.addStatement("$L = READ.$L()", varName, pname);
}else{
//else, try and find a serializer
String ser = serializer.readers.get(typeName.replace("mindustry.gen.", ""), SerializerResolver.locate(ent.element.e, var.mirror(), false));
String ser = serializer.getNetReader(typeName.replace("mindustry.gen.", ""), SerializerResolver.locate(ent.element.e, var.mirror(), false));
if(ser == null){ //make sure a serializer exists!
BaseProcessor.err("No read method to read class type '" + typeName + "' in method " + ent.targetMethod + "; " + serializer.readers, var);
@@ -16,7 +16,7 @@ public class TypeIOResolver{
* Maps fully qualified class names to their serializers.
*/
public static ClassSerializer resolve(BaseProcessor processor){
ClassSerializer out = new ClassSerializer(new ObjectMap<>(), new ObjectMap<>(), new ObjectMap<>(), new ObjectMap<>());
ClassSerializer out = new ClassSerializer(new ObjectMap<>(), new ObjectMap<>(), new ObjectMap<>(), new ObjectMap<>(), new ObjectMap<>());
for(Stype type : processor.types(TypeIOHandler.class)){
//look at all TypeIOHandler methods
Seq<Smethod> methods = type.methods();
@@ -27,11 +27,11 @@ public class TypeIOResolver{
if(params.size == 2 && params.first().tname().toString().equals("arc.util.io.Writes")){
//Net suffix indicates that this should only be used for sync operations
ObjectMap<String, String> targetMap = meth.name().endsWith("Net") ? out.netWriters : out.writers;
targetMap.put(fix(params.get(1).tname().toString()), type.fullName() + "." + meth.name());
}else if(params.size == 1 && params.first().tname().toString().equals("arc.util.io.Reads") && !meth.isVoid()){
//1 param, one is reader, returns type
out.readers.put(fix(meth.retn().toString()), type.fullName() + "." + meth.name());
}else if(params.size == 1 && params.first().tname().toString().equals("arc.util.io.Reads") && !meth.isVoid()){ //1 param, one is reader, returns type
//Net suffix indicates that this should only be used for sync operations
ObjectMap<String, String> targetMap = meth.name().endsWith("Net") ? out.netReaders : out.readers;
targetMap.put(fix(meth.retn().toString()), type.fullName() + "." + meth.name());
}else if(params.size == 2 && params.first().tname().toString().equals("arc.util.io.Reads") && !meth.isVoid() && meth.ret().equals(meth.params().get(1).mirror())){
//2 params, one is reader, other is type, returns type - these are made to reduce garbage allocated
out.mutatorReaders.put(fix(meth.retn().toString()), type.fullName() + "." + meth.name());
@@ -50,17 +50,22 @@ public class TypeIOResolver{
/** Information about read/write methods for class types. */
public static class ClassSerializer{
public final ObjectMap<String, String> writers, readers, mutatorReaders, netWriters;
public final ObjectMap<String, String> writers, readers, mutatorReaders, netWriters, netReaders;
public ClassSerializer(ObjectMap<String, String> writers, ObjectMap<String, String> readers, ObjectMap<String, String> mutatorReaders, ObjectMap<String, String> netWriters){
public ClassSerializer(ObjectMap<String, String> writers, ObjectMap<String, String> readers, ObjectMap<String, String> mutatorReaders, ObjectMap<String, String> netWriters, ObjectMap<String, String> netReaders){
this.writers = writers;
this.readers = readers;
this.mutatorReaders = mutatorReaders;
this.netWriters = netWriters;
this.netReaders = netReaders;
}
public String getNetWriter(String type, String fallback){
return netWriters.get(type, writers.get(type, fallback));
}
public String getNetReader(String type, String fallback){
return netReaders.get(type, readers.get(type, fallback));
}
}
}
@@ -19,6 +19,7 @@ mindustry.entities.comp.DecalComp=8
mindustry.entities.comp.EffectStateComp=9
mindustry.entities.comp.FireComp=10
mindustry.entities.comp.LaunchCoreComp=11
mindustry.entities.comp.LocationPingComp=48
mindustry.entities.comp.PlayerComp=12
mindustry.entities.comp.PosTeam=27
mindustry.entities.comp.PosTeamDef=28
@@ -0,0 +1 @@
{version:1,fields:[{name:flags,type:byte},{name:fontSize,type:float},{name:parent,type:mindustry.gen.Posc},{name:text,type:java.lang.String},{name:x,type:float},{name:y,type:float},{name:z,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:9,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:9,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:1,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:2,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:9,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:1,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:2,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:9,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:2,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:building,type:Building},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:3,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:building,type:Building},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:6,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:2,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:lifetime,type:float},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:time,type:float},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:3,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:lifetime,type:float},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:time,type:float},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:6,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:6,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:6,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:payloads,type:arc.struct.Seq<mindustry.world.blocks.payloads.Payload>},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:baseRotation,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:9,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:7,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:8,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:1,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:2,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:4,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:ammo,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
@@ -0,0 +1 @@
{version:5,fields:[{name:abilities,type:"mindustry.entities.abilities.Ability[]"},{name:aimX,type:float},{name:aimY,type:float},{name:controller,type:mindustry.entities.units.UnitController},{name:elevation,type:float},{name:flag,type:double},{name:health,type:float},{name:isShooting,type:boolean},{name:mineTile,type:mindustry.world.Tile},{name:mounts,type:"mindustry.entities.units.WeaponMount[]"},{name:plans,type:arc.struct.Queue<mindustry.entities.units.BuildPlan>},{name:rotation,type:float},{name:shield,type:float},{name:spawnedByCore,type:boolean},{name:stack,type:mindustry.type.ItemStack},{name:statuses,type:arc.struct.Seq<mindustry.entities.units.StatusEntry>},{name:team,type:mindustry.game.Team},{name:type,type:mindustry.type.UnitType},{name:updateBuilding,type:boolean},{name:vel,type:arc.math.geom.Vec2},{name:x,type:float},{name:y,type:float}]}
+69 -29
View File
@@ -4,7 +4,7 @@ buildscript{
ext{
arcHash = property("archash")
localArc = !project.hasProperty("release") && new File(rootDir.parent, 'Arc').exists() && !project.hasProperty("noLocalArc")
localArc = new File(rootDir.parent, 'Arc').exists() && !project.hasProperty("noLocalArc")
arcModule = { String name ->
//skip to last submodule
@@ -17,8 +17,7 @@ buildscript{
mavenLocal()
mavenCentral()
google()
maven{ url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven{ url 'https://jitpack.io' }
maven{ url = 'https://jitpack.io' }
}
dependencies{
@@ -28,8 +27,8 @@ buildscript{
}
plugins{
id "org.jetbrains.kotlin.jvm" version "2.1.10"
id "org.jetbrains.kotlin.kapt" version "2.1.10"
id "org.jetbrains.kotlin.jvm" version "2.3.20"
id "org.jetbrains.kotlin.kapt" version "2.3.20"
}
allprojects{
@@ -40,7 +39,7 @@ allprojects{
ext{
versionNumber = '8'
if(!project.hasProperty("versionModifier")) versionModifier = 'beta'
if(!project.hasProperty("versionModifier")) versionModifier = 'release'
if(!project.hasProperty("versionType")) versionType = 'official'
appName = 'Mindustry'
steamworksVersion = '0b86023401880bb5e586bc404bedbaae9b1f1c94'
@@ -181,9 +180,8 @@ allprojects{
repositories{
mavenLocal()
mavenCentral()
maven{ url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven{ url "https://oss.sonatype.org/content/repositories/releases/" }
maven{ url 'https://jitpack.io' }
maven{ url = "https://central.sonatype.com/repository/maven-snapshots" }
maven{ url = 'https://jitpack.io' }
}
task clearCache{
@@ -195,7 +193,7 @@ allprojects{
}
tasks.withType(JavaCompile){
targetCompatibility = 8
targetCompatibility = JavaVersion.VERSION_17
sourceCompatibility = JavaVersion.VERSION_17
options.encoding = "UTF-8"
options.compilerArgs += ["-Xlint:deprecation"]
@@ -216,16 +214,32 @@ allprojects{
configure(project(":annotations")){
tasks.withType(JavaCompile){
targetCompatibility = 8
sourceCompatibility = 8
targetCompatibility = JavaVersion.VERSION_17
sourceCompatibility = JavaVersion.VERSION_17
options.fork = true
options.compilerArgs.addAll([
"--add-exports", "jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED",
"--add-exports", "jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED",
"--add-exports", "java.base/sun.reflect.annotation=ALL-UNNAMED"
])
}
}
//compile with java 8 compatibility for everything except the annotation project
configure(subprojects - project(":annotations") - project(":tests")){
tasks.withType(JavaCompile){
options.compilerArgs.addAll(['--release', '8'])
options.compilerArgs.addAll(['--release', '17'])
}
tasks.withType(Javadoc){
@@ -246,6 +260,8 @@ project(":desktop"){
implementation project(":core")
implementation arcModule("extensions:profiling")
implementation arcModule("extensions:discord")
implementation arcModule("natives:natives-filedialogs")
implementation arcModule("extensions:filedialogs")
implementation arcModule("natives:natives-desktop")
implementation arcModule("natives:natives-freetype-desktop")
@@ -253,8 +269,7 @@ project(":desktop"){
implementation "com.github.Anuken:steamworks4j:$steamworksVersion"
implementation arcModule("backends:backend-sdl3")
annotationProcessor 'com.github.Anuken:jabel:0.9.0'
implementation arcModule("backends:backend-sdl")
}
}
@@ -266,7 +281,7 @@ project(":core"){
kapt{
javacOptions{
option("-source", "17")
option("-target", "1.8")
option("-target", "17")
}
}
@@ -304,22 +319,52 @@ project(":core"){
}
}
task depsJar(type: Jar, dependsOn: [classes, ":server:dist"]){
archiveClassifier = 'deps'
from files(sourceSets.main.output.classesDirs)
from{ configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) } }
from zipTree("../server/build/libs/server-release.jar")
from files("src/")
from files("../../Arc/arc-core/src/")
from files("../../Arc/extensions/arcnet/src/")
from files("../../Arc/extensions/g3d/src/")
from files("../../Arc/extensions/flabel/src/")
from files("../../Arc/extensions/freetype/src/")
from files("../server/src/")
exclude("META-INF/**")
exclude("vfxshaders/**")
exclude("maps/**")
exclude("baseparts/**")
exclude("vfxshaders/**")
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
task sourcesJar(type: Jar, dependsOn: classes){
archiveClassifier = 'sources'
from sourceSets.main.allSource
}
task assetsJar(type: Jar, dependsOn: ":tools:pack"){
task assetsJar(type: Jar){
archiveClassifier = 'assets'
from files("assets"){
exclude "config", "cache", "music", "sounds", "sprites/fallback"
into('assets'){
from 'assets'
exclude 'config', 'cache', 'music', 'sounds', 'sprites/fallback'
}
into('assets-raw/sprites'){
from 'assets-raw/sprites_out'
include '**/*.png'
}
}
task musicJar(type: Jar){
archiveClassifier = 'music'
from files("assets"){
include "music/*", "sounds/*"
into('assets'){
from 'assets'
include '**/*.ogg', '**/*.mp3'
}
}
@@ -337,7 +382,6 @@ project(":core"){
if(localArc && debugged()) api arcModule("extensions:recorder")
if(localArc) api arcModule(":extensions:packer")
annotationProcessor 'com.github.Anuken:jabel:0.9.0'
compileOnly project(":annotations")
if(!project.hasProperty("noKapt")) kapt project(":annotations")
}
@@ -382,7 +426,7 @@ project(":server"){
dependencies{
implementation project(":core")
implementation arcModule("backends:backend-headless")
annotationProcessor 'com.github.Anuken:jabel:0.9.0'
implementation 'org.jline:jline:4.0.0'
}
}
@@ -396,6 +440,7 @@ project(":tests"){
testImplementation arcModule("backends:backend-headless")
testImplementation "org.json:json:20230618"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.7.1"
testRuntimeOnly "org.junit.platform:junit-platform-launcher"
}
tasks.withType(JavaCompile){
@@ -407,6 +452,7 @@ project(":tests"){
test{
//fork every test so mods don't interact with each other
forkEvery = 1
jvmArgs = ["-XX:+HeapDumpOnOutOfMemoryError"]
useJUnitPlatform()
workingDir = new File("../core/assets")
testLogging{
@@ -427,7 +473,6 @@ project(":tools"){
implementation arcModule("backends:backend-headless")
implementation("com.google.guava:guava:33.3.1-jre")
annotationProcessor 'com.github.Anuken:jabel:0.9.0'
}
}
@@ -450,10 +495,6 @@ configure([":core", ":server"].collect{project(it)}){
publications{
maven(MavenPublication){
from components.java
//TODO: uncomment this once the jitpack packing is fixed (currently depends on a newer glibc version)
//if(project.name == "core"){
// artifact(tasks.named("assetsJar"))
//}
}
}
}
@@ -474,7 +515,6 @@ task deployAll{
dependsOn cleanDeployOutput
dependsOn "desktop:packrLinux64"
dependsOn "desktop:packrWindows64"
dependsOn "desktop:packrWindows32"
dependsOn "desktop:packrMacOS"
if(versionModifier != "steam"){
dependsOn "server:deploy"
+181 -7
View File
@@ -308,12 +308,6 @@
"discord-logo-white"
]
},
{
"uid": "dd6df3b754e8d0dbf09d9b24088f0442",
"css": "box",
"code": 59422,
"src": "iconic"
},
{
"uid": "f08ba9f0e8f9b426a92efcaa59c1e932",
"css": "reddit-alien",
@@ -1083,6 +1077,186 @@
"search": [
"arrow-note"
]
},
{
"uid": "9ea0a737ccc45d6c510dcbae56058849",
"css": "music",
"code": 59402,
"src": "fontawesome"
},
{
"uid": "81db033e704eb7c586a365559d7c0f36",
"css": "file-audio",
"code": 61895,
"src": "fontawesome"
},
{
"uid": "e44601720c64e6bb6a2d5cba6b0c588c",
"css": "volume-off",
"code": 59404,
"src": "fontawesome"
},
{
"uid": "fee6e00f36e8ca8ef3e4a62caa213bf6",
"css": "volume-down",
"code": 59423,
"src": "fontawesome"
},
{
"uid": "76857a03fbaa6857fe063b6c25aa98ed",
"css": "volume-up",
"code": 59424,
"src": "fontawesome"
},
{
"uid": "3db5347bd219f3bce6025780f5d9ef45",
"css": "tag",
"code": 59425,
"src": "fontawesome"
},
{
"uid": "a3f89e106175a5c5c4e9738870b12e55",
"css": "tags",
"code": 59432,
"src": "fontawesome"
},
{
"uid": "69bd9dfe950d07d910f39c6988364e49",
"css": "battery-4",
"code": 62016,
"src": "fontawesome"
},
{
"uid": "7ab4ec24078133effbc4e923b65ef835",
"css": "battery-3",
"code": 62017,
"src": "fontawesome"
},
{
"uid": "e430a168b45ba40aa988ca1a5034a553",
"css": "battery-2",
"code": 62018,
"src": "fontawesome"
},
{
"uid": "99f4ea74adc24022106932d84a49b055",
"css": "battery-1",
"code": 62019,
"src": "fontawesome"
},
{
"uid": "9983d2489e028d659d196915a25ef3ca",
"css": "battery-0",
"code": 62020,
"src": "fontawesome"
},
{
"uid": "26613a2e6bc41593c54bead46f8c8ee3",
"css": "file-code",
"code": 61897,
"src": "fontawesome"
},
{
"uid": "dd69d9aa589ea7bc0a82a3fe67039f4b",
"css": "file-video",
"code": 61896,
"src": "fontawesome"
},
{
"uid": "e80ae555c1413a4ec18b33fb348b4049",
"css": "file-archive",
"code": 61894,
"src": "fontawesome"
},
{
"uid": "c95735c17a10af81448c7fed98a04546",
"css": "folder-open",
"code": 59438,
"src": "fontawesome"
},
{
"uid": "b091a8bd0fdade174951f17d936f51e4",
"css": "folder-empty",
"code": 61716,
"src": "fontawesome"
},
{
"uid": "6533bdc16ab201eb3f3b27ce989cab33",
"css": "folder-open-empty",
"code": 61717,
"src": "fontawesome"
},
{
"uid": "c7a75a25880928fe76981a53eca4f926",
"css": "inbox",
"code": 59439,
"src": "fontawesome"
},
{
"uid": "6fe95ffc3c807e62647d4f814a96e0d7",
"css": "sitemap",
"code": 61672,
"src": "fontawesome"
},
{
"uid": "2c413e78faf1d6631fd7b094d14c2253",
"css": "cloud",
"code": 59441,
"src": "fontawesome"
},
{
"uid": "de2fc7a5c986ab8c622f63455d7cf814",
"css": "upload-cloud",
"code": 61678,
"src": "fontawesome"
},
{
"uid": "f5999a012fc3752386635ec02a858447",
"css": "download-cloud",
"code": 61677,
"src": "fontawesome"
},
{
"uid": "e7a4824e79002c2d8ce3047b2da8b5a2",
"css": "rain",
"code": 59442,
"src": "typicons"
},
{
"uid": "ac10a3a3077eab1b9d66509eb25fb9b4",
"css": "cloud-sun",
"code": 59448,
"src": "typicons"
},
{
"uid": "6f200a5a449259c51cd0ccf56b4c1e93",
"css": "drizzle",
"code": 59452,
"src": "typicons"
},
{
"uid": "3cac7625657b10cf706e7f332749c912",
"css": "cloud-flash",
"code": 59456,
"src": "typicons"
},
{
"uid": "364cc69fb3edb8fb21caa6a2c0489589",
"css": "cloud-wind",
"code": 59457,
"src": "typicons"
},
{
"uid": "cc05df515bebe11df3ada0a5910a8f6d",
"css": "box",
"code": 59422,
"src": "entypo"
},
{
"uid": "d5f287ad8e3a2db8f808bc09980ec3dc",
"css": "chart-alt",
"code": 59459,
"src": "typicons"
}
]
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 751 B

After

Width:  |  Height:  |  Size: 393 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 468 B

After

Width:  |  Height:  |  Size: 428 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 633 B

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 B

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 B

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 B

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 359 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 364 B

After

Width:  |  Height:  |  Size: 400 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 442 B

After

Width:  |  Height:  |  Size: 403 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 560 B

After

Width:  |  Height:  |  Size: 424 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 413 B

After

Width:  |  Height:  |  Size: 405 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1010 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 244 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 717 B

Before

Width:  |  Height:  |  Size: 660 B

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 831 B

After

Width:  |  Height:  |  Size: 814 B

+206 -50
View File
@@ -15,9 +15,11 @@ link.wiki.description = Official Mindustry wiki
link.suggestions.description = Suggest new features
link.bug.description = Found one? Report it here
linkopen = This server has sent you a link. Are you sure you want to open it?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Failed to open link!\nThe URL has been copied to your clipboard.
screenshot = Screenshot saved to {0}
screenshot.invalid = Map too large, potentially not enough memory for screenshot.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Game Over
gameover.disconnect = Disconnect
gameover.pvp = The[accent] {0}[] team is victorious!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Waiting for next map...
highscore = [accent]New highscore!
copied = Copied.
indev.notready = This part of the game isn't ready yet
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Sounds
load.map = Maps
@@ -49,11 +52,19 @@ mods.browser.view-releases = View Releases
mods.browser.noreleases = [scarlet]No Releases Found\n[accent]Couldn't find any releases for this mod. Check if the mod's repository has any releases published.
mods.browser.latest = [lightgray][Latest]
mods.browser.releases = Releases
mods.browser.fetching = Fetching Releases...
mods.github.open = Repo
mods.github.open-release = Release Page
mods.browser.sortdate = Sort by recent
mods.browser.sortstars = Sort by stars
export.file = Export File
import.file = Import File
copy.clipboard = Copy to Clipboard
import.clipboard = Import from Clipboard
workshop.browse = Browse Workshop
workshop.share = Share on Workshop
schematic = Schematic
schematic.add = Save Schematic...
schematics = Schematics
@@ -61,12 +72,6 @@ schematic.search = Search schematics...
schematic.replace = A schematic by that name already exists. Replace it?
schematic.exists = A schematic by that name already exists.
schematic.import = Import Schematic...
schematic.exportfile = Export File
schematic.importfile = Import File
schematic.browseworkshop = Browse Workshop
schematic.copy = Copy to Clipboard
schematic.copy.import = Import from Clipboard
schematic.shareworkshop = Share on Workshop
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Flip Schematic
schematic.saved = Schematic saved.
schematic.delete.confirm = This schematic will be utterly eradicated.
@@ -124,9 +129,12 @@ maps.none = [lightgray]No maps found!
invalid = Invalid
pickcolor = Pick Color
color = Color
import = Import
export = Export
preparingconfig = Preparing Config
preparingcontent = Preparing Content
uploadingcontent = Uploading Content
content.createdby = Created by: {0}
uploadingpreviewfile = Uploading Preview File
committingchanges = Committing Changes
done = Done
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = This mod is unable to be loaded due to inva
mod.requiresversion = Requires game version: [red]{0}
mod.errors = Errors have occurred loading content.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [red]You have mods with errors.[] Either disable the affected mods or fix the errors before playing.
mod.enable = Enable
mod.requiresrestart = The game will now close to apply the mod changes.
@@ -212,6 +221,10 @@ campaign.none = [lightgray]Select a planet to start on.\nThis can be switched at
campaign.erekir = Newer, more polished content. Mostly linear campaign progression.\n\nMore difficult. Higher quality maps and overall experience.
campaign.serpulo = Older content; the classic experience. More open-ended, more content.\n\nPotentially unbalanced maps and campaign mechanics. Less polished.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\n\
Sector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\n\
For a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Researched
techtree = Tech Tree
techtree.select = Tech Tree Selection
@@ -235,6 +248,7 @@ server.kicked.vote = You have been vote-kicked. Goodbye.
server.kicked.clientOutdated = Outdated client! Update your game!
server.kicked.serverOutdated = Outdated server! Ask the host to update!
server.kicked.banned = You are banned on this server.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = This server is not compatible with your build type.
server.kicked.playerLimit = This server is full. Wait for an empty slot.
server.kicked.recentKick = You have been kicked recently.\nWait before connecting again.
@@ -318,7 +332,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Unable to join game ([accent]{0}[]).
connecting = [accent]Connecting...
reconnecting = [accent]Reconnecting...
connecting.data = [accent]Loading world data...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = I/O error occurred while receiving assets.
server.port = Port:
server.invalidport = Invalid port number!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +354,13 @@ save.export = Export Save
save.import.invalid = [accent]This save is invalid!
save.import.fail = [scarlet]Failed to import save: [accent]{0}
save.export.fail = [scarlet]Failed to export save: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n\
[lightgray]This is likely because the save file was not properly exported.\n\
[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n\
[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Import Save
save.newslot = Save name:
save.rename = Rename
@@ -354,16 +380,12 @@ save.mode = Gamemode: {0}
save.date = Last Saved: {0}
save.playtime = Playtime: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\n\
As newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\n\
Please upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\n\
If you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Warning.
warning = Warning!
confirm = Confirm
delete = Delete
view.workshop = View In Workshop
workshop.listing = Edit Workshop Listing
hide = Hide
ok = OK
open = Open
customize = Customize Rules
@@ -375,7 +397,6 @@ command.repair = Repair
command.rebuild = Rebuild
command.assist = Assist Player
command.move = Move
command.boost = Boost
command.enterPayload = Enter Payload Block
command.loadUnits = Load Units
command.loadBlocks = Load Blocks
@@ -386,7 +407,9 @@ stance.shoot = Stance: Shoot
stance.holdfire = Stance: Hold Fire
stance.pursuetarget = Stance: Pursue Target
stance.patrol = Stance: Patrol Path
stance.holdposition = Stance: Hold Position
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Open Link
@@ -433,6 +456,7 @@ saveimage = Save Image
unknown = Unknown
custom = Custom
builtin = Built-In
modded = Modded
map.delete.confirm = Are you sure you want to delete this map? This action cannot be undone!
map.random = [accent]Random Map
map.nospawn = This map does not have any cores for the player to spawn in! Add a {0} core to this map in the editor.
@@ -472,14 +496,6 @@ editor.rules = Rules
editor.generation = Generation
editor.objectives = Objectives
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Data Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = World Processors
editor.worldprocessors.editname = Edit Name
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -493,12 +509,86 @@ editor.center = Center
editor.search = Search maps...
editor.filters = Filter Maps
editor.filters.mode = Gamemodes:
editor.filters.priorities = Priorities:
editor.filters.type = Map Type:
editor.filters.search = Search In:
editor.filters.author = Author
editor.filters.description = Description
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift X
editor.shifty = Shift Y
asset.patch = Patches
asset.content = Content
asset.bundle = Translation Bundles
asset.image = Images
asset.sound = Sounds
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Data Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets found.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Image Zip
asset.image.exportzip = Export Image Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Waves
waves.team = Team
@@ -513,10 +603,10 @@ waves.spawn = spawn:
waves.spawn.all = <all>
waves.spawn.select = Spawn Select
waves.spawn.none = [scarlet]no spawns found in map
waves.spawn.first = [lightgray](first {0})
waves.max = max units
waves.guardian = Guardian
waves.preview = Preview
waves.edit = Edit...
waves.random = Random
waves.copy = Copy to Clipboard
waves.load = Load from Clipboard
@@ -532,6 +622,7 @@ waves.search = Search waves...
waves.filter = Unit Filter
waves.units.hide = Hide All
waves.units.show = Show All
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = counts
@@ -542,7 +633,9 @@ all = All
editor.default = [lightgray]<Default>
details = Details...
edit = Edit
edit.menu = Edit...
variables = Vars
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Are you sure you want to clear all code from this processor?
logic.restart = Restart
logic.globals = Built-in Variables
@@ -618,6 +711,8 @@ toolmode.drawteams.description = Draw teams instead of blocks.
#unused
toolmode.underliquid = Under Liquids
toolmode.underliquid.description = Draw floors under liquid tiles.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]No filters! Add one with the button below.
@@ -681,6 +776,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Width:
height = Height:
@@ -752,8 +849,10 @@ objective.build = [accent]Build: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Build Unit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destroy: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Enemies approaching in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production begins in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Destroy Enemy Core
objective.command = [accent]Command Units
objective.nuclearlaunch = [accent]\u26A0 Missile launch detected: [lightgray]{0}
@@ -840,7 +939,8 @@ sector.changeicon = Change Icon
sector.noswitch.title = Unable to Switch Sectors
sector.noswitch = You may not switch sectors while an existing sector is under attack.\n\nSector: [accent]{0}[] on [accent]{1}[]
sector.view = View Sector
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.foundationrequired = [lightgray] Core: Foundation Required Nearby
sector.shielded = [lightgray] Shielded
threat.low = Low
threat.medium = Medium
@@ -848,6 +948,10 @@ threat.high = High
threat.extreme = Extreme
threat.eradication = Eradication
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -867,7 +971,7 @@ planet.sun.name = Sun
sector.impact0078.name = Impact 0078
sector.groundZero.name = Ground Zero
sector.craters.name = The Craters
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Frozen Forest
sector.ruinousShores.name = Ruinous Shores
sector.stainedMountains.name = Stained Mountains
@@ -886,7 +990,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Planetary Launch Terminal
sector.coastline.name = Humid Coastline
sector.navalFortress.name = Naval Fortress
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -895,27 +998,39 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = The optimal location to begin once more. Low enemy threat. Few resources.\nGather as much lead and copper as possible.\nMove on.
sector.groundZero.description = The optimal location to begin once more. Low enemy threat. Few resources.\n\nGather as much lead and copper as possible.\nMove on.
sector.frozenForest.description = Even here, closer to mountains, the spores have spread. The frigid temperatures cannot contain them forever.\n\nBegin the venture into power. Build combustion generators. Learn to use menders.
sector.saltFlats.description = On the outskirts of the desert lie the Salt Flats. Few resources can be found in this location.\n\nThe enemy has erected a resource storage complex here. Eradicate their core. Leave nothing standing.
sector.craters.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Past the wastes, is the shoreline. Once, this location housed a coastal defense array. Not much of it remains. Only the most basic defense structures have remained unscathed, everything else reduced to scrap.\nContinue the expansion outwards. Rediscover the technology.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Past the wastes, is the shoreline. Once, this location housed a coastal defense array. Not much of it remains. Only the most basic defense structures have remained unscathed, everything else reduced to scrap.\n\nContinue the expansion outwards. Rediscover the technology.
sector.stainedMountains.description = Further inland lie the mountains, yet untainted by spores.\nExtract the abundant titanium in this area. Learn how to use it.\n\nThe enemy presence is greater here. Do not give them time to send their strongest units.
sector.overgrowth.description = This area is overgrown, closer to the source of the spores.\nThe enemy has established an outpost here. Build Mace units. Destroy it.
sector.tarFields.description = The outskirts of an oil production zone, between the mountains and desert. One of the few areas with usable tar reserves.\nAlthough abandoned, this area has some dangerous enemy forces nearby. Do not underestimate them.\n\n[lightgray]Research oil processing technology if possible.
sector.desolateRift.description = An extremely dangerous zone. Plentiful resources, but little space. High risk of destruction. Build air and ground defenses as soon as possible. Do not be fooled by the long spacing between enemy attacks.
sector.nuclearComplex.description = A former facility for the production and processing of thorium, reduced to ruins.\n[lightgray]Research the thorium and its many uses.\n\nThe enemy is present here in great numbers, constantly scouting for attackers.
sector.fungalPass.description = A transition area between high mountains and lower, spore-ridden lands. A small enemy reconnaissance base is located here.\nDestroy it.\nUse Dagger units. Take out the enemy core.
sector.overgrowth.description = This area is overgrown, closer to the origin of the spores.\n\nThe enemy has established an outpost here. Build Mace units. Destroy it.
sector.tarFields.description = The outskirts of an oil production zone, between the mountains and desert. One of the few areas with usable tar reserves.\nAlthough abandoned, this area has some dangerous enemy forces nearby. Do not underestimate them.\n\nResearch oil processing technology if possible.
sector.desolateRift.description = An extremely dangerous zone. Plentiful resources, but little space. High risk of destruction.\n\nBuild air and ground defenses as soon as possible. Do not be fooled by the infrequent nature of enemy attacks.
sector.nuclearComplex.description = A former facility for the production and processing of thorium, reduced to ruins.\nResearch the Thorium Reactor, and utilize it for advanced power generation.\n\nThe enemy is present here in great numbers, constantly scouting for attackers.
sector.fungalPass.description = A transition area between high mountains and lower, spore-ridden lands. A small enemy reconnaissance base is located here.\n\nUtilize Dagger units. Destroy the enemy outpost.
sector.biomassFacility.description = The origin of spores. This is the facility in which they were researched and initially produced.\nResearch the technology contained within. Cultivate spores for the production of fuel and plastics.\n\n[lightgray]Upon this facility's demise, the spores were released. Nothing in the local ecosystem could compete with such an invasive organism.
sector.windsweptIslands.description = Further past the shoreline is this remote chain of islands. Records show they once had [accent]Plastanium[]-producing structures.\n\nFend off the enemy's naval units. Establish a base on the islands. Research these factories.
sector.windsweptIslands.description = Further past the shoreline is this remote chain of islands. Records show they once had structures producing Plastanium.\n\nFend off the enemy's naval units. Establish a base on the islands. Research these factories.
sector.extractionOutpost.description = A remote outpost, constructed by the enemy for the purpose of launching resources to other sectors.\n\nCross-sector transport technology is essential for further conquest. Destroy the base. Research their Launch Pads.
sector.impact0078.description = Here lie remnants of the interstellar transport vessel that first entered this system.\n\nSalvage as much as possible from the wreckage. Research any intact technology.
sector.planetaryTerminal.description = The final target.\n\nThis coastal base contains a structure capable of launching Cores to local planets. It is extremely well guarded.\n\nProduce naval units. Eliminate the enemy as quickly as possible. Research the launch structure.
sector.coastline.description = Remnants of naval unit technology have been detected at this location. Repel the enemy attacks, capture this sector, and acquire the technology.
sector.planetaryTerminal.description = The final objective.\n\nThis coastal base contains a structure capable of launching Cores to local planets. It is extremely well guarded.\n\nProduce naval units. Eliminate the enemy as quickly as possible. Research the launch structure.
sector.coastline.description = Remnants of alloy synthesis technology have been detected at this location.\n\nRepel the enemy attacks, capture this sector, and acquire the technology.
sector.navalFortress.description = The enemy has established a base on a remote, naturally-fortified island. Destroy this outpost. Acquire their advanced naval craft technology, and research it.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = The Onset
sector.aegis.name = Aegis
@@ -969,6 +1084,10 @@ status.blasted.name = Blasted
status.corroded.name = Corroded
status.unmoving.name = Unmoving
status.boss.name = Guardian
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Language
settings.data = Game Data
@@ -988,6 +1107,13 @@ settings.clearresearch = Clear Research
settings.clearresearch.confirm = Are you sure you want to clear all of your campaign research?
settings.clearcampaignsaves = Clear Campaign Saves
settings.clearcampaignsaves.confirm = Are you sure you want to clear all of your campaign saves?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Paused >
clear = Clear
banned = [scarlet]Banned
@@ -1020,6 +1146,7 @@ stat.targetsground = Targets Ground
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Move Speed
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Time Between Launches
stat.shootrange = Range
stat.size = Size
@@ -1042,6 +1169,8 @@ stat.weapons = Weapons
stat.bullet = Bullet
stat.moduletier = Module Tier
stat.unittype = Unit Type
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Speed Increase
stat.range = Range
stat.drilltier = Drillables
@@ -1050,6 +1179,7 @@ stat.boosteffect = Boost Effect
stat.maxunits = Max Active Units
stat.health = Health
stat.armor = Armor
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Build Time
stat.maxconsecutive = Max Consecutive
stat.buildcost = Build Cost
@@ -1184,9 +1314,12 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~ [stat]{1}[lightgray] tiles
bullet.incendiary = [stat]incendiary
bullet.homing = [stat]homing
bullet.armorpierce = [stat]armor piercing
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor pierce
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0}[lightgray] seconds of repair suppression ~ [stat]{1}[lightgray] tiles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1255,7 +1388,6 @@ setting.shadows.name = Shadows
setting.blockreplace.name = Automatic Block Suggestions
setting.linear.name = Linear Filtering
setting.hints.name = Hints
setting.logichints.name = Logic Hints
setting.backgroundpause.name = Pause In Background
setting.buildautopause.name = Auto-Pause Building
setting.doubletapmine.name = Double-Tap to Mine
@@ -1265,6 +1397,8 @@ setting.modcrashdisable.name = Disable Mods On Startup Crash
setting.animatedwater.name = Animated Surfaces
setting.animatedshields.name = Animated Shields
setting.playerindicators.name = Player Indicators
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Enemy Indicators
setting.autotarget.name = Auto-Target
setting.keyboard.name = Mouse+Keyboard Controls (Experimental)
@@ -1274,6 +1408,8 @@ setting.fpscap.none = None
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI Scaling
setting.uiscale.description = Restart required to apply changes.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Always Diagonal Placement
setting.screenshake.name = Screen Shake
setting.bloomintensity.name = Bloom Intensity
@@ -1287,9 +1423,6 @@ setting.saveinterval.name = Save Interval
setting.seconds = {0} seconds
setting.milliseconds = {0} milliseconds
setting.fullscreen.name = Fullscreen
setting.borderlesswindow.name = Borderless Window
setting.borderlesswindow.name.windows = Borderless Fullscreen
setting.borderlesswindow.description = Restart may be required to apply changes.
setting.fps.name = Show FPS & Ping
setting.console.name = Enable Console
setting.smoothcamera.name = Smooth Camera
@@ -1308,7 +1441,6 @@ setting.ambientvol.name = Ambient Volume
setting.mutemusic.name = Mute Music
setting.sfxvol.name = SFX Volume
setting.mutesound.name = Mute Sound
setting.crashreport.name = Send Anonymous Crash Reports
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Auto-Create Saves
setting.steampublichost.name = Public Game Visibility
@@ -1339,6 +1471,8 @@ category.command.name = Unit Command
category.multiplayer.name = Multiplayer
category.blocks.name = Block Select
placement.blockselectkeys = \n[lightgray]Key: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Respawn
keybind.control.name = Control Unit
keybind.clear_building.name = Clear Building
@@ -1362,13 +1496,14 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
@@ -1488,6 +1623,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Infinite Enemy Team Resources
rules.blockhealthmultiplier = Block Health Multiplier
rules.blockdamagemultiplier = Block Damage Multiplier
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Unit Production Speed Multiplier
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Unit Health Multiplier
@@ -1529,8 +1666,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Fire
rules.anyenv = <Any>
rules.explosions = Block/Unit Explosion Damage
@@ -2010,8 +2148,8 @@ block.radar.name = Radar
block.build-tower.name = Build Tower
block.regen-projector.name = Regen Projector
block.shockwave-tower.name = Shockwave Tower
block.shield-projector.name = Shield Projector
block.large-shield-projector.name = Large Shield Projector
block.shield-projector.name = Barrier Projector
block.large-shield-projector.name = Large Barrier Projector
block.armored-duct.name = Armored Duct
block.overflow-duct.name = Overflow Duct
block.underflow-duct.name = Underflow Duct
@@ -2052,6 +2190,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tank Refabricator
block.mech-refabricator.name = Mech Refabricator
block.ship-refabricator.name = Ship Refabricator
@@ -2063,6 +2204,7 @@ block.reinforced-payload-router.name = Reinforced Payload Router
block.payload-mass-driver.name = Payload Mass Driver
block.small-deconstructor.name = Deconstructor
block.canvas.name = Canvas
block.large-canvas.name = Large Canvas
block.world-processor.name = World Processor
block.world-cell.name = World Cell
block.tank-fabricator.name = Tank Fabricator
@@ -2125,7 +2267,6 @@ hint.payloadPickup.mobile = [accent]Tap and hold[] a small block or unit to pick
hint.payloadDrop = Press [accent]][] to drop a payload.
hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a payload there.
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
hint.generator = :combustion-generator: [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with :power-node: [accent]Power Nodes[].
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or :graphite: [accent]Graphite[] :duo:Duo/:salvo:Salvo ammunition to take Guardians down.
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a :core-foundation: [accent]Foundation[] core over the :core-shard: [accent]Shard[] core. Make sure it is free from nearby obstructions.
hint.serpuloCoreZone = Additional :core-shard: [accent]Cores[] may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2157,6 +2298,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts.
gz.zone3 = A wave will begin now.\nGet ready.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2513,6 +2664,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Fires standard bullets at enemy targets.
unit.mace.description = Fires streams of flame at enemy targets.
@@ -2587,6 +2739,7 @@ lst.radar = Locate units around a building with range.
lst.sensor = Get data from a building or unit.
lst.set = Set a variable.
lst.operation = Perform an operation on 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Jump to the top of the instruction stack.
lst.wait = Wait a certain number of seconds.
lst.stop = Halt execution of this processor.
@@ -2599,6 +2752,7 @@ lst.unitlocate = Locate a specific type of position/building anywhere on the map
lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Apply or clear a status effect from a unit.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2617,9 +2771,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nLimited to 20 times a second per variable.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]\"game1\"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.\n[accent]null []values are ignored.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
File diff suppressed because it is too large Load Diff
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Официално Mindustry ръководство
link.suggestions.description = Предложете Вашата идея
link.bug.description = Намерихте грешка? Съобщете тук
linkopen = Този сървър Ви изпрати линк. Сигурни ли сте, че искате да го отворите?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Неуспех при отваряне на връзка!\nURL адресът е копиран в клипборда ви.
screenshot = Записана екранна снимка в {0}
screenshot.invalid = Картата е твърде голяма, възможно е да не достига памет за екранната снимка.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Играта свърши.
gameover.disconnect = Прекъснете връзката
gameover.pvp = [accent]{0}[] отбор спечели!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Изчакване за следваща карта..
highscore = [accent]Нов рекорд!
copied = Копирано.
indev.notready = Тази част от играта все още е в разработка
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Звук
load.map = Карти
@@ -49,11 +52,19 @@ mods.browser.view-releases = Вижте издания
mods.browser.noreleases = [scarlet]Не са открити издания\n[accent]Не бяха открити издания за тази модификация. Проверете дали хранилището на модификацията има публикувани издания.
mods.browser.latest = <Latest>
mods.browser.releases = Издания
mods.browser.fetching = Fetching Releases...
mods.github.open = Сайт
mods.github.open-release = Страница на изданията
mods.browser.sortdate = Сортирай по дата
mods.browser.sortstars = Сортирай по рейтинг
export.file = Изнасяне във файл
import.file = Внасяне от файл
copy.clipboard = Копирай в Клипборда
import.clipboard = Внеси от Клипборда
workshop.browse = Browse Workshop
workshop.share = Сподели в Работилницата
schematic = Схема
schematic.add = Запази Схема...
schematics = Схеми
@@ -61,12 +72,6 @@ schematic.search = Търсене из схемите...
schematic.replace = Вече съществува схема с това име. Да бъде ли заместена?
schematic.exists = Вече съществува схема с това име.
schematic.import = Внасяне на Схема...
schematic.exportfile = Изнасяне във файл
schematic.importfile = Внасяне от файл
schematic.browseworkshop = Работилница
schematic.copy = Копирай в Клипборда
schematic.copy.import = Внеси от Клипборда
schematic.shareworkshop = Сподели в Работилницата
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Обърни схемата
schematic.saved = Схемате беше запазена.
schematic.delete.confirm = Тази схема ще бъде напълно унищожена.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Няма намерени карти!
invalid = Невалидно
pickcolor = Избери цвят
color = Color
import = Import
export = Export
preparingconfig = Подготовка на Настройки
preparingcontent = Подготовка на Съдържание
uploadingcontent = Качване на Съдържание
content.createdby = Created by: {0}
uploadingpreviewfile = Качване на Изображение за визуализация
committingchanges = Запазване на Промени
done = Готово
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Тази модификация не мож
mod.requiresversion = Нужна е версия на играта: [red]{0}
mod.errors = Възникнаха грешки при зареждане на съдържанието.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]Има грешки в някои от модовете, които използвате.[] Трябва да деактивирате тези модове или да поправите грешките преди да играете.
mod.enable = Активирай
mod.requiresrestart = Играта ще се затвори за да приложи промените в модовете.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Изберете на коя планета да за
campaign.erekir = По-ново полирано съдържание. Напредъкът в кампанията е линеен.\n\nКартите са с по-високо качество за по-добро изживяване.
campaign.serpulo = По-старо съдържание; класическото преживяване. По-отворена игра.\n\nВъзможно е картите и механиките на кампанията да са небалансирани и с по-ниско качество.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Завършено
techtree = Технологичен план
techtree.select = Избиране на технологичен план
@@ -235,6 +246,7 @@ server.kicked.vote = Бяхте изгонени чрез гласуване. Д
server.kicked.clientOutdated = Остарял клиент!\nАктуализирайте играта си!
server.kicked.serverOutdated = Остарял сървър!\nПоискайте от собственика да го актуализира!
server.kicked.banned = Вие сте баннат в този сървър.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Този сървър не е съвместим с вашата компилация.
server.kicked.playerLimit = Сървърът е пълен.\nИзчакайте някой да излезе.
server.kicked.recentKick = Вие сте били изхвърлени наскоро.\nОпитайте отново по-късно.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Неуспех при свързване към игра ([accent]{0}[]).
connecting = [accent]Свързване...
reconnecting = [accent]Повторно свързване...
connecting.data = [accent]Зареждане на информация за света...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Порт:
server.invalidport = Невалиден порт!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +352,10 @@ save.export = Изнеси Запис
save.import.invalid = [accent]Този запис е невалиден!
save.import.fail = [scarlet]Грешка при внасяне на запис: [accent]{0}
save.export.fail = [scarlet]Грешка при изнасяне на запис: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Внеси Запис
save.newslot = Име на запис:
save.rename = Преименувай
@@ -354,13 +375,12 @@ save.mode = Решим на игра: {0}
save.date = Последно Записан: {0}
save.playtime = Играно време: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Тревога.
confirm = Потвърди
delete = Изтрий
view.workshop = Отвори в Работилницата
workshop.listing = Редактирай в Работилницата
hide = Hide
ok = OK
open = Отвори
customize = Персонализирай правилата
@@ -372,7 +392,6 @@ command.repair = Ремонт
command.rebuild = Възстановяване
command.assist = Помогни на играч
command.move = Движение
command.boost = Ускоряване
command.enterPayload = Enter Payload Block
command.loadUnits = Load Units
command.loadBlocks = Load Blocks
@@ -383,7 +402,9 @@ stance.shoot = Stance: Shoot
stance.holdfire = Stance: Hold Fire
stance.pursuetarget = Stance: Pursue Target
stance.patrol = Stance: Patrol Path
stance.holdposition = Stance: Hold Position
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Отвори Линк
@@ -430,6 +451,7 @@ saveimage = Запази Изображение
unknown = Неизвестно
custom = Персонализирано
builtin = Вградено
modded = Modded
map.delete.confirm = Сигурни ли сте, че искате да изтриете тази карта? Това действие не може да бъде отменено!
map.random = [accent]Случайна Карта
map.nospawn = Тази карта няма позиция за ядро на играча! Добавете поне едно {0} ядро от редактора на карти.
@@ -469,14 +491,6 @@ editor.rules = Правила:
editor.generation = Генериране:
editor.objectives = Задачи
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = World Processors
editor.worldprocessors.editname = Edit Name
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -490,12 +504,86 @@ editor.center = Център
editor.search = Търсене на карти...
editor.filters = Фелтриране на карти
editor.filters.mode = Режими на игра:
editor.filters.priorities = Priorities:
editor.filters.type = Тип карта:
editor.filters.search = Търсене в:
editor.filters.author = Автор
editor.filters.description = Описание
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift X
editor.shifty = Shift Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Работилница
waves.title = Вълни от нападатели
waves.team = Team
@@ -510,10 +598,10 @@ waves.spawn = пускане:
waves.spawn.all = <all>
waves.spawn.select = Пускане на единици
waves.spawn.none = [scarlet]няма открити единици на картата
waves.spawn.first = [lightgray](first {0})
waves.max = макс. единици
waves.guardian = Пазител
waves.preview = Преглед
waves.edit = Редактирай...
waves.random = Случаен брой
waves.copy = Кобирай в Клипборд
waves.load = Зареди от Клипборда
@@ -529,6 +617,7 @@ waves.search = Търсене на вълни...
waves.filter = Филтър за единици
waves.units.hide = Скриване на всички
waves.units.show = Показване на всички
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = бройки
@@ -539,7 +628,9 @@ all = All
editor.default = [lightgray]<Стандартно>
details = Детайли...
edit = Редактирай...
edit.menu = Edit...
variables = Променливи
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Are you sure you want to clear all code from this processor?
logic.restart = Restart
logic.globals = Built-in Variables
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Променя отбора, не типа на
#unused
toolmode.underliquid = Под течности
toolmode.underliquid.description = Рисува повърхности под течни полета.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Няма избран филтър! Изберете чрез бутона отдолу.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Дължина:
height = Височина:
@@ -749,8 +844,10 @@ objective.build = [accent]Построете: [][lightgray]{0}[]x\n{1}[lightgray
objective.buildunit = [accent]Постройте единица: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Унищожете: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Враговете наближават след [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Вражеската продукция се увеличава след [lightgray]{0}[]
objective.enemyairunits = [accent]Вражеското производство на въздушни сили започва след [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Унищожете вражеско ядро
objective.command = [accent]Командвайте единици
objective.nuclearlaunch = [accent]⚠ Засечен е ядрен изстрел: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Невъзможно е превключването н
sector.noswitch = Не можете да смените секторите, докато вече съществуващ сектор е под нападение.\nСектор: [accent]{0}[] на [accent]{1}[]
sector.view = Виж сектор
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Ниска
threat.medium = Средна
@@ -845,6 +943,10 @@ threat.high = Висока
threat.extreme = Екстремна
threat.eradication = Унищожителна
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Слънце
sector.impact0078.name = Сблъсък 0078
sector.groundZero.name = Епицентър
sector.craters.name = Кратерите
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Замръзнала гора
sector.ruinousShores.name = Брегови руини
sector.stainedMountains.name = Зацапаните планини
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Терминал за космически мисии
sector.coastline.name = Крайбрежие
sector.navalFortress.name = Крайморска крепост
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = Перфектното място за започване отначало. Ниска заплаха. Малко ресурси.\nСъберете колкото се може повече мед и олово.\nПродължете напред.
sector.frozenForest.description = Дори тук, близо до планините, спорите са се разпространили. Мразовитите температури не могат да ги задържат вечно.\n\nОвладейте електричеството. Постройте горивни генератори. Научете се да ползвате възстановители.
sector.saltFlats.description = На покрайнините на пустинята лежат Солените равнини. Няма много ресурси на това място.\n\nВрагът е издигнал комплекс за съхранение на ресурси тук. Изкоренете ядрото му. Сравнете всичко със земята.
sector.craters.description = В този кратер се е събрала вода, спомен от забравени войни. Възстановете региона. Съберете пясък. Помиришете метастъклото. Използвайте вода за да охлаждате вашите оръдия и свредели.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Сред отпадъците е и бреговата линия. Някога тук е стояла бреговата защитна линия. Няма много следи от нея. Останали са само някои елементарни защитни механизми, всичко останало е сведено до скрап.\nПродължете разширяването навън. Преоткрийте технологията.
sector.stainedMountains.description = По-навътре в континента се намират планините, все още незамърсени от спорите.\nИзвлечете изоставеният титан в тази зона. Научете се да го използвате.\n\nПрисъствието на врагове тук е по-високо. Не им оставяйте време да изпратят тежката артилерия.
sector.overgrowth.description = Обладана от висока растителност, тази зона се намира изключително близо до източника на спорите. Врагът е установил военен лагер тук. Постройте единици модел 'Боздуган' и унищожете вражеската база.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Тук лежат останките от пър
sector.planetaryTerminal.description = Крайна цел.\n\nТази крайбрежна база съдържа структура, създадена с цел междупланетарен транспорт на ядра, макар и само в рамките на локалната звездна система. Тази локация има изключително висока защита.\n\nИзползвайте военноморски единици. Елиминирайте врага възможно най-бързо. Проучете изстрелващата структура.
sector.coastline.description = На това място са засечени останките от технология за производството на морски единици. Отблъснете вражеските атаки, завладейте този сектор и присвоете технологията.
sector.navalFortress.description = Врагът е установил база на отдалечен, естествено укрепен остров. Унищожете базите им. Придобийте напредналата им морска технология и я проучете.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = Началото
sector.aegis.name = Егида
@@ -966,6 +1079,10 @@ status.blasted.name = Взривоопасен
status.corroded.name = Corroded
status.unmoving.name = Неподвижен
status.boss.name = Пазител
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Език
settings.data = Данни на играта
@@ -985,6 +1102,13 @@ settings.clearresearch = Изчисти проучванията
settings.clearresearch.confirm = Сигурни ли сте, че искате да изчистите всичките си проучвания от кампанията?
settings.clearcampaignsaves = Изчисти запазените игри в кампанията
settings.clearcampaignsaves.confirm = Сигурни ли сте, че искате да изтриете всичките си записи от кампанията?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Играта е в пауза >
clear = Изчисти
banned = [scarlet]Баннат
@@ -1017,6 +1141,7 @@ stat.targetsground = Напада по земя
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Скорост на движение
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Време между изстрелванията
stat.shootrange = Обхват
stat.size = Размер
@@ -1039,6 +1164,8 @@ stat.weapons = Оръжия
stat.bullet = Муниции
stat.moduletier = Ниво на модул
stat.unittype = Вид единица
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Ускорение
stat.range = Обхват
stat.drilltier = Изкопаеми ресурси
@@ -1047,6 +1174,7 @@ stat.boosteffect = Ефект на усилване
stat.maxunits = Максимални активни единици
stat.health = Точки живот
stat.armor = Броня
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Време за построяване
stat.maxconsecutive = Максимално последователни
stat.buildcost = Разходи за изграждане
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] щети на площ ~[stat] {1}[li
bullet.incendiary = [stat]Подпалване
bullet.homing = [stat]Самонасочване
bullet.armorpierce = [stat]Пробождане на броня
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] ограничена щета
bullet.suppression = [stat]{0} сек[lightgray] възпиране на поправки ~ [stat]{1}[lightgray] плочки
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Сенки
setting.blockreplace.name = Автоматични предложения за блокове
setting.linear.name = Линейно филтриране
setting.hints.name = Съвети
setting.logichints.name = Логически съвети
setting.backgroundpause.name = Пауза при загуба на фокус
setting.buildautopause.name = Автоматична пауза на изграждането
setting.doubletapmine.name = Двоен клик за добив на ресурс
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Забрани Модовете При Старт
setting.animatedwater.name = Анимирани повърхности
setting.animatedshields.name = Анимирани щитове
setting.playerindicators.name = Индикатори за играчите
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Индикатори за враговете
setting.autotarget.name = Автоматичен прицел
setting.keyboard.name = Управление: мишка/клавиатура
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Няма
setting.fpscap.text = {0} FPS
setting.uiscale.name = Размер на интерфейса[lightgray] (изисква рестарт)[]
setting.uiscale.description = Нужен е рестарт, за да се приложат промените.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Винаги диагонално поставяне
setting.screenshake.name = Клатене на екрана
setting.bloomintensity.name = Интензитет на сиянията
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Време между автоматичен зап
setting.seconds = {0} секунди
setting.milliseconds = {0} милисекунди
setting.fullscreen.name = Цял екран
setting.borderlesswindow.name = Прозорец без рамка[lightgray] (може да изисква рестарт)
setting.borderlesswindow.name.windows = Цял екран без рамка
setting.borderlesswindow.description = Може да е нужен рестарт, за да се приложат промените.
setting.fps.name = Показвай FPS & пинг
setting.console.name = Включване на конзолата
setting.smoothcamera.name = Гладка камера
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Сила на звука на околната сре
setting.mutemusic.name = Заглуши музиката
setting.sfxvol.name = Сила на звуковите ефекти
setting.mutesound.name = Заглуши звука
setting.crashreport.name = Изпращай анонимни отчети за сривове
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Автоматични записи
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Управление на единици
category.multiplayer.name = Мрежова игра
category.blocks.name = Избор на блок
placement.blockselectkeys = \n[lightgray]Клавиш: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Връщане при ядрото
keybind.control.name = Управляване на единица
keybind.clear_building.name = Изчистване на строежен план
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Поведение: Не стреляй
keybind.unit_stance_pursue_target.name = Поведение: Преследвай целта
keybind.unit_stance_patrol.name = Поведение: Патрул
keybind.unit_stance_ram.name = Поведение: Забий се
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Команда: Движение
keybind.unit_command_repair.name = Команда: Поправка
keybind.unit_command_rebuild.name = Команда: Ремонт
keybind.unit_command_assist.name = Команда: Съдействие
keybind.unit_command_mine.name = Команда: Копаене
keybind.unit_command_boost.name = Команда: Подсилване
keybind.unit_command_load_units.name = Команда: Натовари единици
keybind.unit_command_load_blocks.name = Команда: Натовари блокове
keybind.unit_command_unload_payload.name = Команда: Разтовари
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Безкрайни ресурси за компютъра (Червеният отбор)
rules.blockhealthmultiplier = Множител на точките живот на блокове
rules.blockdamagemultiplier = Множител на щетите на блокове
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Множител на скоростта на производство на единици
rules.unitcostmultiplier = Множител на цената за единици
rules.unithealthmultiplier = Множител на точките живот на единици
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Огън
rules.anyenv = <Any>
rules.explosions = Блокирай/Единици вреда от експлозия
@@ -2049,6 +2185,9 @@ block.disperse.name = Разпръсък
block.afflict.name = Мъчител
block.lustre.name = Блясък
block.scathe.name = Поражение
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Рефабрикатор за танкове
block.mech-refabricator.name = Рефабрикатор за машини
block.ship-refabricator.name = Рефабрикатор за кораби
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Подсилен рутер за това
block.payload-mass-driver.name = Масиран двигател за товари
block.small-deconstructor.name = Малък разглобител
block.canvas.name = Платно
block.large-canvas.name = Large Canvas
block.world-processor.name = Световен процесор
block.world-cell.name = Световна клетка
block.tank-fabricator.name = Фабрикатор за танкове
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Докоснете и задръжте[] в
hint.payloadDrop = Натиснете [accent]][], за да оставите товара си.
hint.payloadDrop.mobile = [accent]Докоснете и задръжте[] върху празна позиция, за да оставите товара си там.
hint.waveFire = Оръдията [accent]Вълна[] заредени със вода ще действат и като пожарогасители.
hint.generator = \uf879 [accent]Горивните генератори[] горят въглища и зареждат с електроенергия съседни блокове.\n\nРазстоянието за предаване на енергия може да се увеличи чрез \uf87f [accent]Електрически възли[].
hint.guardian = [accent]Пазителите[] са единици с повече броня. Слаби боеприпаси като [accent]Мед[] и [accent]Олово[] са [scarlet]неподходящи[] срещу тях.\n\nИзползвайте по-мощни оръдия или заредете Вашите \uf861Дуо/\uf859Салво с \uf835 [accent]Графит[], за да ги повалите.
hint.coreUpgrade = Ядрата могат да бъдат подобрявани като [accent]поставите по-добро ядро върху тях[].\n\nПоставете \uf868 [accent]Фондация[] върху \uf869 ядрото [accent]Частица[]. Уверете се че няма други препятствия там, където поставяте ядрото.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Всичко построено в нейния радиус ще б
gz.zone3 = Сега ще започне една такава вълна.\nПригответе се.
gz.finish = Издигнете още оръдия, изкопайте повече ресурси\nи се защитете от всички прииждащи вълни, за да [accent]завладеете този сектор[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Поправя всички единици
block.radar.description = Постепенно разкрива терена и вражески единици в широк радиус. Нуждае се от електричество.
block.shockwave-tower.description = Поврежда и унищожава вражески снаряди в обхвата си. Нуждае се от цианоген.
block.canvas.description = Показва просто изображение с предзададена палитра. Може да се редактира.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Изстрелва стандартни боеприпаси по всички близки врагове.
unit.mace.description = Изстрелва поток от пламък по всички близки врагове.
@@ -2540,7 +2690,7 @@ unit.risso.description = Изстрелва залпове от ракети и
unit.minke.description = Изстрелва сачми и стандартни муниции по наземни мишени.
unit.bryde.description = Изстрелва далекообхватни боеприпаси и ракети по врагове.
unit.sei.description = Изстрелва поредица от ракети и бронебойни куршуми по врагове.
unit.omura.description = Изстрелва далечни пробивни релсови лазери по врагове. Изгражда единици модел Факел.
unit.omura.description = Изстрелва далечни пробивни релсови лазери по врагове.
unit.alpha.description = Защитава ядро Частица от врагове. Строи сгради.
unit.beta.description = Защитава ядро Фондация от врагове. Строи сгради.
unit.gamma.description = Защитава ядро Център от врагове. Строи сгради.
@@ -2584,6 +2734,7 @@ lst.radar = Намира единици около сграда в обхват.
lst.sensor = Взима информация от сграда или единица.
lst.set = Задава променлива.
lst.operation = Изпълнява операция с 1 или 2 променливи.
lst.select = Conditionally set a variable to one of two values.
lst.end = Започва списъка с инструкции от начало.
lst.wait = Изчаква определен брой секунди.
lst.stop = Спира изпълнението на този процесор.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Намира конкретен тип постройка/по
lst.getblock = Получаване на данни за повърхност от всяка локация.
lst.setblock = Задаване на данни за повърхност от всяка локация.
lst.spawnunit = Създава единица върху дадена повърхност.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Прилага или премахва определено състояние от единица.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Поставя притежанието на единица или
lst.effect = Create a particle effect.
lst.sync = Синхронизира променлива през мрежата.\nПредизвиква се най-много 10 пъти в секунда.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Viquipèdia oficial del Mindustry
link.suggestions.description = Suggereix canvis
link.bug.description = Heu trobat un error. Informeu-ne aquí!
linkopen = Aquest servidor us ha enviat un enllaç. Esteu segur que el voleu obrir?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = No s’ha pogut obrir l’enllaç!\nLa direcció URL s’ha copiat al porta-retalls.
screenshot = S’ha desat la captura de pantalla a {0}.
screenshot.invalid = El mapa és massa gran. No hi ha prou memòria per a fer la captura de pantalla.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Fi de la partida
gameover.disconnect = Desconnecta
gameover.pvp = Ha guanyat l’equip[accent] {0}[]!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]S’espera el proper mapa…
highscore = [accent]Nova puntuació rècord!
copied = S’ha copiat.
indev.notready = Aquesta part del joc encara no està preparada.
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Sons
load.map = Mapes
@@ -49,11 +52,19 @@ mods.browser.view-releases = Veure versions publicades
mods.browser.noreleases = [scarlet]No s’han trobat versions publicades.\n[accent]No s’ha trobat cap versió publicada d’aquest mod. Comproveu si el dipòsit del mod n’ha publicat alguna.
mods.browser.latest = [lightgray][La versió més recent]
mods.browser.releases = Versions
mods.browser.fetching = Fetching Releases...
mods.github.open = Dipòsit de GitHub
mods.github.open-release = Pàgina de versions publicades
mods.browser.sortdate = Ordena per data
mods.browser.sortstars = Ordena per valoració
export.file = Exporta un fitxer
import.file = Importa un fitxer
copy.clipboard = Copia al porta-retalls
import.clipboard = Importa del porta-retalls
workshop.browse = Browse Workshop
workshop.share = Comparteix al Workshop de l’Steam
schematic = Esquema
schematic.add = Desa l’esquema…
schematics = Esquemes
@@ -61,12 +72,6 @@ schematic.search = Cerca esquemes…
schematic.replace = Ja hi ha un esquema amb aquest nom. Voleu reemplaçar-lo?
schematic.exists = Ja hi ha un esquema amb aquest nom.
schematic.import = Importa un esquema
schematic.exportfile = Exporta un fitxer
schematic.importfile = Importa un fitxer
schematic.browseworkshop = Explora el Workshop de l’Steam
schematic.copy = Copia al porta-retalls
schematic.copy.import = Importa del porta-retalls
schematic.shareworkshop = Comparteix al Workshop de l’Steam
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Dóna la volta a l’esquema
schematic.saved = L’esquema s’ha desat.
schematic.delete.confirm = Aquest esquema s’esborrarà.
@@ -124,9 +129,12 @@ maps.none = [lightgray]No s’ha trobat cap mapa!
invalid = No vàlid
pickcolor = Tria un color
color = Color
import = Import
export = Export
preparingconfig = Es prepara la configuració…
preparingcontent = Es prepara el contingut…
uploadingcontent = Es puja el contingut…
content.createdby = Created by: {0}
uploadingpreviewfile = Es puja el fitxer de previsualització…
committingchanges = S’apliquen els canvis…
done = Fet!
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Aquest mod no es pot carregar perquè té u
mod.requiresversion = Cal la versió [red]{0}[] del joc.
mod.errors = S’han produït errors quan es carregava el contingut.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]S’executen mods amb errors.[] Desactiveu els mods afectats o arregleu les errades abans de jugar.
mod.enable = Activa
mod.requiresrestart = El programa es tancarà per a aplicar els canvis.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Trieu en quin planeta voleu començar.\nEs pot canvia
campaign.erekir = [accent]Recomanat per a jugadors novells.[]\n\nContingut revisat nou. Una campanya de progressió més o menys lineal.\n\nMapes de qualitat més alta i experiència més satisfactòria.
campaign.serpulo = [scarlet]No recomanat per a jugadors novells.[]\n\nContingut antic: l’experiència clàssica. Campanya més oberta.\n\nPotser els mapes i mecàniques de la campanya no estan massa equilibrats. Contingut en general menys polit que el d’Erekir.
campaign.difficulty = Dificultat
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Completat
techtree = Arbre tecnològic
techtree.select = Selecció de l’arbre tecnològic
@@ -235,6 +246,7 @@ server.kicked.vote = Us han expulsat per votació. Adéu.
server.kicked.clientOutdated = El client s’ha d’actualitzar.
server.kicked.serverOutdated = El servidor s’ha d’actualitzar. Demaneu-li a l’amfitrió que l’actualitzi.
server.kicked.banned = Se us ha bandejat d’aquest servidor.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = El servidor no és compatible amb el tipus de compilació actual.
server.kicked.playerLimit = El servidor està ple. Espereu que hi hagi una ranura buida.
server.kicked.recentKick = Us han expulsat fa poc.\nEspereu abans de connectar-vos.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = S’ha esgotat el temps d’espera mentre es rebien
cantconnect = No és possible unir-se a la partida ([accent]{0}[]).
connecting = [accent]Es connecta…
reconnecting = [accent]Es torna a connectar…
connecting.data = [accent]Es carreguen les dades del món…
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Port:
server.invalidport = El número de port no és vàlid!
server.error.addressinuse = [scarlet]El port 6567 no s’ha pogut obrir.[]\n\nAssegureu-vos que no s’executen altres servidors del Mindustry a la xarxa o dispositiu!
@@ -335,6 +352,10 @@ save.export = Exporta la desada
save.import.invalid = [accent]Aquesta desada no és vàlida!
save.import.fail = [scarlet]La desada no s’ha pogut importar: [accent]{0}
save.export.fail = [scarlet]La desada no s’ha pogut exportar: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Importa una partida desada
save.newslot = Nom del fitxer de la desada:
save.rename = Reanomena
@@ -354,13 +375,12 @@ save.mode = Mode de joc: {0}
save.date = Data de l’última desada: {0}
save.playtime = Temps de joc: {0}
dontshowagain = No ho mostris més
warn.32bit.title = Avís d’obsolescència dels 32 bits
warn.32bit = Feu servir una versió del Mindustry de [red]32 bits[].\nCom que les versions noves de Java ja no suporten les versions de Windows de 32 bits, [red]no es donarà suport per a 32 bits[].\n\nCanvieu a una màquina de 64 bits i assegureu-vos que teniu la versió del Mindustry de 64 bits.\n\nSi executeu el Mindustry com a fitxer JAR, assegureu-vos que feu servir el Java de 64 bits.
warning = Avís.
confirm = Confirmació
delete = Esborra
view.workshop = Mostra-ho al Workshop
workshop.listing = Edita el llistat del Workshop
hide = Hide
ok = D’acord
open = Obre
customize = Personalitza les regles
@@ -372,7 +392,6 @@ command.repair = Repara
command.rebuild = Reconstrueix
command.assist = Assisteix al jugador
command.move = Mou
command.boost = Sobrevola
command.enterPayload = Entra bloc
command.loadUnits = Carrega unitats
command.loadBlocks = Carrega blocs
@@ -383,7 +402,9 @@ stance.shoot = Comportament: Dispara
stance.holdfire = Comportament: Mantén el foc
stance.pursuetarget = Comportament: Persegueix l’objectiu
stance.patrol = Comportament: Patrulla el camí
stance.holdposition = Stance: Hold Position
stance.ram = Comportament: Senzill\n[lightgray]Mou-te en línia recta, sense encaminador
stance.boost = Boost
stance.mineauto = Extracció automàtica
stance.mine = Extrau l’element: {0}
openlink = Obre l’enllaç
@@ -430,6 +451,7 @@ saveimage = Desa la imatge
unknown = Desconegut
custom = Personalitzat
builtin = *Integrat*
modded = Modded
map.delete.confirm = Esteu segur que voleu esborrar aquest mapa? Aquesta acció no es pot desfer!
map.random = [accent]Mapa aleatori
map.nospawn = Aquest mapa no té cap nucli per tal que el jugador hi pugui aparèixer! Afegiu-hi un nucli {0} amb l’editor.
@@ -469,14 +491,6 @@ editor.rules = Regles
editor.generation = Generació
editor.objectives = Objectius
editor.locales = Paquet de traduccions
editor.patches.guide = Guia de pedaços
editor.patches = Pedaços de continguts
editor.patch = Conjunt de pedaços: {0}
editor.patches.none = [lightgray]No s’han carregat pedaços.
editor.patches.errors = Errors del conjunt de pedaços
editor.patches.importerror = No s’ha pogut importar el conjunt de pedaços.
editor.patches.delete.confirm = Esteu segur que voleu esborrar aquest conjunt de pedaços?
editor.patch.fields = {0} camps
editor.worldprocessors = Processadors integrats
editor.worldprocessors.editname = Edita el nom
editor.worldprocessors.none = [lightgray]No s’han trobat blocs de processadors integrats!\nAfegiu-ne un a l’editor de mapes o feu servir el botó \ue813 de sota.
@@ -490,12 +504,86 @@ editor.center = Centra
editor.search = Cerca mapes
editor.filters = Filtra els mapes
editor.filters.mode = Modes de partida:
editor.filters.priorities = Priorities:
editor.filters.type = Tipus de mapa:
editor.filters.search = Cerca a:
editor.filters.author = Autor
editor.filters.description = Descripció
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Desplaça en l’eix X
editor.shifty = Desplaça en l’eix Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Pedaços de continguts
patch.set = Patchset: {0}
patch.none = [lightgray]No s’han carregat pedaços.
patch.errors = Errors del conjunt de pedaços
patch.importerror = No s’ha pogut importar el conjunt de pedaços.
patch.delete.confirm = Esteu segur que voleu esborrar aquest conjunt de pedaços?
patch.path = Path:
patch.fields = {0} camps
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Onades
waves.team = Equip
@@ -510,10 +598,10 @@ waves.spawn = aparèixer:
waves.spawn.all = <tots>
waves.spawn.select = Selecciona la zona d’aparició
waves.spawn.none = [scarlet]No s’han trobat zones d’aparició al mapa.
waves.spawn.first = [lightgray](first {0})
waves.max = nombre màxim d’unitats
waves.guardian = Guardià
waves.preview = Previsualització
waves.edit = Edita
waves.random = Aleatori
waves.copy = Copia al porta-retalls
waves.load = Carrega del porta-retalls
@@ -529,6 +617,7 @@ waves.search = Es busquen onades…
waves.filter = Filtre d'unitats
waves.units.hide = Amaga-les totes
waves.units.show = Mostra-les totes
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = comptades
@@ -539,7 +628,9 @@ all = Tots
editor.default = [lightgray]<Per defecte>
details = Detalls
edit = Edita
edit.menu = Edit...
variables = Variables
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Esteu segur que voleu esborrar tot el codi d’aquest processador?
logic.restart = Reinicia
logic.globals = Variables internes
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Dibuixa els equips en lloc de dibuixar blocs.
#unused
toolmode.underliquid = Sota els líquids
toolmode.underliquid.description = Dibuixa el terra a sota de les caselles de líquids.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Sense filtres! Afegiu-ne un amb el botó de sota.
@@ -678,6 +771,8 @@ locales.showsame = Mostra les propietats que tenen els mateixos valors en traduc
locales.viewproperty = Mostra en totes les traduccions
locales.viewing = Es mostra la propietat «{0}»
locales.addicon = Afegeix una icona
locales.property.name = name
locales.property.text = text
width = Amplada:
height = Alçada:
@@ -749,8 +844,10 @@ objective.build = [accent]Construïu: [][lightgray]{0}[]×\n{1}[lightgray]{2}
objective.buildunit = [accent]Construïu unitats: [][lightgray]{0}[]×\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destruïu [][lightgray]{0}[] unitats.
objective.enemiesapproaching = [accent]Arribaran enemics d’aquí [lightgray]{0}[].
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]La producció enemiga augmentarà d’aquí [lightgray]{0}[]
objective.enemyairunits = [accent]L’enemic començarà a produir unitats aèries d’aquí [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Destruïu el nucli enemic.
objective.command = [accent]Dirigiu les unitats.
objective.nuclearlaunch = [accent]⚠ S’ha detectat un llançament nuclear: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Els sectors no es poden canviar.
sector.noswitch = Potser no podeu canviar de sector perquè n’ataquen un altre.\n\nSector: [accent]{0}[] de [accent]{1}[]
sector.view = Veure el sector
sector.foundationrequired = [lightgray] Nucli: Calen fonaments
sector.shielded = [lightgray] Shielded
threat.low = Baixa
threat.medium = Mitjana
@@ -845,6 +943,10 @@ threat.high = Alta
threat.extreme = Extrema
threat.eradication = Erradicació
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Molt fàcil
difficulty.easy = Fàcil
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Sol
sector.impact0078.name = Impacte 0078
sector.groundZero.name = Zona zero
sector.craters.name = Els cràters
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = El bosc gelat
sector.ruinousShores.name = Costes en ruïnes
sector.stainedMountains.name = Muntanyes tacades
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Les gorges infestades
sector.planetaryTerminal.name = Terminal de llançament interplanetari
sector.coastline.name = Línia de costa
sector.navalFortress.name = Fortalesa naval
sector.polarAerodrome.name = Aeròdrom polar
sector.atolls.name = Els atol·lons
sector.testingGrounds.name = Camps de proves
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Bastió micelial
sector.frontier.name = La frontera
sector.sunkenPier.name = Moll afonat
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscapada
sector.geothermalStronghold.name = Fortalesa geotèrmica
sector.groundZero.description = El lloc adequat per a començar de nou. Amenaça enemiga baixa. Pocs recursos.\nRecolliu tot el coure i plom que pugueu.\nDesprés, continueu en un altre sector.
sector.frozenForest.description = Les espores han arribat fins aquí, prop de les muntanyes. Les temperatures baixes no les podran contenir per sempre.\n\nComenceu el camí del poder. Construïu generadors a combustió. Apreneu a fer servir els reparadors.
sector.saltFlats.description = Als límits del desert hi ha les Salines. Aquesta regió té pocs recursos.\n\nL’enemic hi ha aixecat un complex d’emmagatzematge de recursos. Elimineu el seu nucli i no en deixeu cap rastre.
sector.craters.description = L’aigua s’ha acumulat en aquest cràter, relíquia de les guerres passades. Reclameu l’àrea, recolliu sorra i foneu metavidre. Bombegeu aigua per a refredar les torretes i les perforadores.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Més enllà dels erms, hi ha la costa. En el seu temps, hi havia una línia de defensa costera. No en queda molt. Només hi queden intactes les estructures de defensa més bàsiques; de la resta només en queda ferralla.\nContinueu l’expansió i redescobriu tecnologies perdudes.
sector.stainedMountains.description = Terra endins, hi ha muntanyes que no han estat contaminades per les espores.\nExtraieu el titani que abunda a l’àrea. Apreneu a usar-lo.\n\nEn aquesta zona hi ha més presència enemiga. No els deixeu temps per a enviar-vos les unitats més fortes.
sector.overgrowth.description = En aquesta àrea s’ha produït un creixement desmesurat i està a prop de la font de les espores.\nL’enemic hi ha establit un post avançat. Construïu unitats [accent]Maça[] i destruïu-lo.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Aquí hi ha les restes de la primera nau de tran
sector.planetaryTerminal.description = L’objectiu final.\n\nAquesta base costera conté una estructura capaç de llançar nuclis a altres planetes. Està molt ben vigilida.\n\nProduïu unitats navals, elimineu l’enemic tan aviat com pugueu i investigueu l’estructura de llançament.
sector.coastline.description = S’han detectat restes de tecnologia naval a prop. Repel·liu els atacs enemics, captureu el sector i aconseguiu la tecnologia.
sector.navalFortress.description = L’enemic ha establert una base en una illa distant amb defenses geològiques naturals. Destruïu el post avançat i aconseguiu i investigueu les seves tecnologies navals avançades.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = El principi
sector.aegis.name = L’ègida
@@ -966,6 +1079,10 @@ status.blasted.name = Explosionat
status.corroded.name = Oxidat
status.unmoving.name = Immòbil
status.boss.name = Guardià
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Idioma
settings.data = Dades del joc
@@ -985,6 +1102,13 @@ settings.clearresearch = Esborra la recerca
settings.clearresearch.confirm = Esteu segur que voleu esborrar tota la recerca feta en el mode campanya?
settings.clearcampaignsaves = Esborra les desades de la campanya
settings.clearcampaignsaves.confirm = Esteu segur que voleu esborrar totes les desades de la campanya?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< En pausa >
clear = Esborra
banned = [scarlet]Expulsat
@@ -1017,6 +1141,7 @@ stat.targetsground = Dispara objectius terrestres
stat.crushdamage = Dany per aixafament
stat.legsplashdamage = Dany per aixafament
stat.itemsmoved = Velocitat de moviment
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Temps entre llançaments
stat.shootrange = Abast
stat.size = Mida
@@ -1039,6 +1164,8 @@ stat.weapons = Armes
stat.bullet = Bala
stat.moduletier = Nivell del mòdul
stat.unittype = Tipus d’unitat
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Augment de velocitat
stat.range = Abast
stat.drilltier = Perforables
@@ -1047,6 +1174,7 @@ stat.boosteffect = Efecte del potenciador
stat.maxunits = Unitats actives màximes
stat.health = Salut
stat.armor = Armadura
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Temps de construcció
stat.maxconsecutive = Màxim consecutiu
stat.buildcost = Cost de construcció
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] de dany a l’àrea ~[stat] {1}[light
bullet.incendiary = [stat]incendiari
bullet.homing = [stat]munició guiada
bullet.armorpierce = [stat]perforador d’armadures
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] de dany límit
bullet.suppression = [stat]Supressió de reparacions cada {0} s[lightgray] ~ [stat]{1}[lightgray] caselles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Ombres
setting.blockreplace.name = Suggeriments de bloc automàtics
setting.linear.name = Filtrat lineal
setting.hints.name = Consells
setting.logichints.name = Consells de blocs lògics
setting.backgroundpause.name = Pausa automàtica quan s’estigui en segon pla
setting.buildautopause.name = Pausa automàtica quan es construeixi
setting.doubletapmine.name = Dos tocs/clics per a extreure recursos
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Desactiva els mods quan no es pugui iniciar el jo
setting.animatedwater.name = Animacions del terreny
setting.animatedshields.name = Animacions dels escuts
setting.playerindicators.name = Indicadors de jugadors
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Indicadors d’enemics
setting.autotarget.name = Apunta automàticament
setting.keyboard.name = Controls amb ratolí i teclat
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Cap
setting.fpscap.text = {0} FPS
setting.uiscale.name = Escala de la interfície
setting.uiscale.description = Cal reiniciar perquè s’apliquin els canvis.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Permet sempre construir en diagonal
setting.screenshake.name = Sacseig de pantalla
setting.bloomintensity.name = Intensitat de l’efecte «bloom»
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Interval de les desades automàtiques
setting.seconds = {0} s
setting.milliseconds = {0} ms
setting.fullscreen.name = Pantalla completa
setting.borderlesswindow.name = Finestra sense vora
setting.borderlesswindow.name.windows = Pantalla completa sense vora
setting.borderlesswindow.description = Potser caldrà reiniciar el joc per a aplicar els canvis.
setting.fps.name = Mostra els FPS i el ping
setting.console.name = Activa la consola
setting.smoothcamera.name = Moviment de càmera suau
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Volum del so ambiental
setting.mutemusic.name = Silencia la música
setting.sfxvol.name = Volums dels efectes de so
setting.mutesound.name = Silencia el so
setting.crashreport.name = Envia informes d’error anònims
setting.communityservers.name = Cerca la llista de servidors de la comunitat
setting.savecreate.name = Desa automàticament la partida
setting.steampublichost.name = Visibilitat de la partida pública
@@ -1336,6 +1466,8 @@ category.command.name = Ordre d’unitat
category.multiplayer.name = Multijugador
category.blocks.name = Selecció d’estructures per construir
placement.blockselectkeys = \n[lightgray]Tecles: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Reapareix
keybind.control.name = Controla una unitat
keybind.clear_building.name = Desmunta una estructura
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Comportament: Mantén el foc
keybind.unit_stance_pursue_target.name = Comportament: Persegueix l’objectiu
keybind.unit_stance_patrol.name = Comportament: Patrulla
keybind.unit_stance_ram.name = Comportament: Senzill
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Ordre d’unitat: Mou
keybind.unit_command_repair.name = Ordre d’unitat: Repara
keybind.unit_command_rebuild.name = Ordre d’unitat: Reconstrueix
keybind.unit_command_assist.name = Ordre d’unitat: Assisteix
keybind.unit_command_mine.name = Ordre d’unitat: Extrau
keybind.unit_command_boost.name = Ordre d’unitat: Sobrevola
keybind.unit_command_load_units.name = Ordre d’unitat: Carrega unitats
keybind.unit_command_load_blocks.name = Ordre d’unitat: Carrega blocs
keybind.unit_command_unload_payload.name = Ordre d’unitat: Descarrega blocs
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = Mentre estigui desactivat, les estructures d’aques
rules.enemyCheat = Recursos infinits per a la IA (equip vermell)
rules.blockhealthmultiplier = Multiplicador de la salut dels blocs
rules.blockdamagemultiplier = Multiplicador del dany dels blocs
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Multiplicador de la velocitat de producció d’unitats
rules.unitcostmultiplier = Multiplicador del cost de les unitats
rules.unithealthmultiplier = Multiplicador de la salut de les unitats
@@ -1526,8 +1661,9 @@ rules.invasions = Invasions de setors enemics
rules.legacylaunchpads = Mecàniques de plataformes de llançament antigues
rules.legacylaunchpads.info = Permet fer servir plataformes de llançament sense plataformes d’aterratge, com a la versió 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Desactivat[lightgray] (plataformes de llançament antigues activades)
rules.showspawns = Mostra l’aparició d’enemics
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = IA d’onades immprevisible
rules.pauseDisabled = Disable Pausing
rules.fire = Foc
rules.anyenv = <Qualsevol>
rules.explosions = Dany de les explosions als blocs/unitats
@@ -2049,6 +2185,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Milloradora de tancs
block.mech-refabricator.name = Milloradora de meques
block.ship-refabricator.name = Milloradora de naus
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Encaminador de blocs reforçat
block.payload-mass-driver.name = Transportador a distància de blocs
block.small-deconstructor.name = Desconstructor petit
block.canvas.name = Llenç
block.large-canvas.name = Large Canvas
block.world-processor.name = Processador integrat
block.world-cell.name = Cel·la de memòria integrada
block.tank-fabricator.name = Fabricadora de tancs
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Manteniu premut[] un bloc petit per a recoll
hint.payloadDrop = Premeu [accent]][] per a deixar el bloc o la unitat.
hint.payloadDrop.mobile = [accent]Manteniu premuda[] una posició buida per a deixar-hi un bloc o una unitat.
hint.waveFire = Les torretes de tipus [accent]Wave[] que usin aigua com munició apagaran els focs propers automàticament.
hint.generator = Els :combustion-generator: [accent]Generadors a combustió[] cremen carbó i transmeten energia als blocs adjacents.\n\nL’abast de la transmissió d’energia es pot expandir amb :power-node: [accent]node d’energia[].
hint.guardian = Les unitats de tipus [accent]Guardià[] són unitats blindades. La munició dèbil com ara el [accent]Coure[] i el [accent]Plom[] [scarlet]no és efectiva[].\n\nEmpreu torretes de nivell més alt o carregueu torretes :duo:Duo/:salvo:Salvo amb :graphite: [accent]Grafit[] per a destruir-los.
hint.coreUpgrade = Els nuclis es poden millorar [accent]construint-hi a sobre nuclis amb millors característiques[].\n\nSitueu un nucli de tipus [accent]Fonament[] a sobre del nucli [accent]Estella[]. Assegureu-vos que no hi hagin obstruccions properes.
hint.serpuloCoreZone = Additional :core-shard: [accent]Cores[] may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Tot el que es construeixi a dins es destruirà quan comenci la proper
gz.zone3 = Ara comença una onada.\nPrepareu-vos.
gz.finish = Construïu més torretes, extraieu més recursos \ni defense-vos contra totes les onades per a [accent]capturar el sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repara totes les unitats a prop. Necessita
block.radar.description = Escaneja el terreny gradualment i localitza unitats enemigues a gran distància. Necessita energia.
block.shockwave-tower.description = Danya i destrueix projectils enemics dintre del seu abast. Requereix cianogen.
block.canvas.description = Mostra una imatge senzilla amb una paleta predefinida. Es pot editar.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Dispara munició estàndard a tots els enemics propers.
unit.mace.description = Dispara flames a tots els enemics propers.
@@ -2540,7 +2690,7 @@ unit.risso.description = Dispara una pluja de míssils i bales a tots els enemic
unit.minke.description = Dispara projectils i bales estàndard als objectius terrestres.
unit.bryde.description = Dispara projectils d’artilleria i míssils de llarg abast als enemics.
unit.sei.description = Dispara una pluja de míssils i bales capaces de perforar escuts als enemics.
unit.omura.description = Dispara projectils perforadors de llarg abast amb un canó electromagnètic. Construeix unitats «Flare».
unit.omura.description = Dispara projectils perforadors de llarg abast amb un canó electromagnètic.
unit.alpha.description = Defensa el nucli «Estella» dels enemics. Construeix estructures.
unit.beta.description = Defensa el nucli «Fonament» des enemics. Construeix estructures.
unit.gamma.description = Defensa el nucli «Punt neuràlgic» des enemics. Construeix estructures.
@@ -2584,6 +2734,7 @@ lst.radar = Localitza unitats al voltant d’un bloc amb l’abast indicat.
lst.sensor = Obtén dades d’una estructura o unitat.
lst.set = Estableix una variable.
lst.operation = Executa una operació amb 1 o 2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Salta al principi de la llista d’instruccions.
lst.wait = Espera el nombre indicat de segons.
lst.stop = Para l’execució d’aquest processador.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Localitza un tipus específic de posició/estructura en qualsev
lst.getblock = Obtén les dades d’un bloc en qualsevol posició.
lst.setblock = Estableix les dades d’un bloc en qualsevol posició.
lst.spawnunit = Fes aparèixer una unitat en una posició.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Aplica o esborra un efecte d’estat d’una unitat.
lst.weathersense = Comprova si un tipus de temps meteorològics està actiu.
lst.weatherset = Estableix l’estat actual per a un tipus de temps meteorològic.
@@ -2614,9 +2766,11 @@ lst.setprop = Estableix una propietat d’una unitat o estructura.
lst.effect = Crea un efecte de partícula.
lst.sync = Sincronitza una variable a través de la xarxa.\nS’invoca com a molt 10 vegades per segon.
lst.playsound = Reprodueix un so.\nEl volum i la panoramització (pan) poden ser un valor global o calculat segons la posició.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Crea una marca lògica al món.\nS’ha de donar un ID per a identificar-la.\nEs poden establir fins a 20.000 marcadors per món.
lst.setmarker = Estableix una propietat per a la marca.\nL’ID que es faci servir ha de ser el mateix que el de la instrucció de crear la marca.
lst.localeprint = Afegeix el valor d’una propietat de la traducció d’un mapa a la cua d’impressió.\nPer a establir paquets de traducció de mapes a l’editor de mapes, comproveu [accent]Informació del mapa > Paquets de traducció[].\nSi el client és un dispositiu mòbil, primer intenta imprimir una propietat que acabi en «.mobile».
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
File diff suppressed because it is too large Load Diff
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Det officielle Mindustry-wiki
link.suggestions.description = Foreslå nye ændringer
link.bug.description = Found one? Report it here
linkopen = This server has sent you a link. Are you sure you want to open it?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Kunne ikke åbne link!\n Linkets URL er kopieret til din udklipsholder.
screenshot = Screenshot gemt i {0}
screenshot.invalid = Banen er for stor; der er ikke nok hukommelse til et skærmbillede.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Game Over
gameover.disconnect = Disconnect
gameover.pvp = [accent] {0}[] hold har vundet!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Waiting for next map...
highscore = [accent]Ny highscore!
copied = Kopieret.
indev.notready = Denne del af spillet er ikke klar endnu.
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Lyd
load.map = Bane
@@ -49,11 +52,19 @@ mods.browser.view-releases = View Releases
mods.browser.noreleases = [scarlet]No Releases Found\n[accent]Couldn't find any releases for this mod. Check if the mod's repository has any releases published.
mods.browser.latest = <Latest>
mods.browser.releases = Releases
mods.browser.fetching = Fetching Releases...
mods.github.open = Repo
mods.github.open-release = Release Page
mods.browser.sortdate = Sort by recent
mods.browser.sortstars = Sort by stars
export.file = Exporter fil
import.file = Importer fil
copy.clipboard = Kopier til udklipsholder
import.clipboard = Importer fra udklipsholder
workshop.browse = Browse Workshop
workshop.share = Del på Workshop
schematic = Skabelon
schematic.add = Gem skabelon...
schematics = Skabeloner
@@ -61,12 +72,6 @@ schematic.search = Search schematics...
schematic.replace = En skabelon med det navn eksisterer allerede - vil du erstatte denne?
schematic.exists = En skabelon med det navn eksisterer allerede.
schematic.import = Importer skabelon ...
schematic.exportfile = Exporter fil
schematic.importfile = Importer fil
schematic.browseworkshop = Søg i Workshop
schematic.copy = Kopier til udklipsholder
schematic.copy.import = Importer fra udklipsholder
schematic.shareworkshop = Del på Workshop
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Vend skabelon
schematic.saved = Skabelon gemt.
schematic.delete.confirm = Denne skabelon vil være væk for altid.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Ingen baner fundet!
invalid = Ugyldig
pickcolor = Vælg farve
color = Color
import = Import
export = Export
preparingconfig = Klargører konfiguration
preparingcontent = Klargører indhold
uploadingcontent = Uploading indhold
content.createdby = Created by: {0}
uploadingpreviewfile = Uploader forhåndsvisnings-fil
committingchanges = Sender ændringer
done = Færdig
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = This mod is unable to be loaded due to inva
mod.requiresversion = Requires game version: [red]{0}
mod.errors = Fejl ved afhentning af indhold.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]Du har mods med fejl.[] Deaktiver det eller løs fejl før du starter spillet.
mod.enable = Aktiver
mod.requiresrestart = Spillet vil nu lukke for at tilføje mod ændringerne
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Select a planet to start on.\nThis can be switched at
campaign.erekir = Newer, more polished content. Mostly linear campaign progression.\n\nHigher quality maps and overall experience.
campaign.serpulo = Older content; the classic experience. More open-ended.\n\nPotentially unbalanced maps and campaign mechanics. Less polished.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Færdiggjort
techtree = Teknologi træ
techtree.select = Tech Tree Selection
@@ -235,6 +246,7 @@ server.kicked.vote = Du er blevet stemt ud af serveren. Hygge-hejsa.
server.kicked.clientOutdated = Forældet klient! Opdater dit spil!
server.kicked.serverOutdated = Forældet server! Få værten til at opdatere serveren!
server.kicked.banned = Du er banlyst fra denne server.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Denne server er ikke kompatibel med din version.
server.kicked.playerLimit = Denne server er fuld - vent på en ledig plads.
server.kicked.recentKick = Du er blevet sparket ud for nylig.\nVent før du forsøger at forbinde igen.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Kunne ikke deltage i spil ([accent]{0}[]).
connecting = [accent]Forbinder...
reconnecting = [accent]Reconnecting...
connecting.data = [accent]Indlæser bane-data...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Port:
server.invalidport = Ugyldigt port-nummer!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +352,10 @@ save.export = Eksporter gem
save.import.invalid = [accent]Dette gem er i stykker!
save.import.fail = [crimson]Kunne ikke importere gem: [accent]{0}
save.export.fail = [crimson]Kunne ikke eksportere gem: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Import Gem
save.newslot = Gem-navn:
save.rename = Omdøb
@@ -354,13 +375,12 @@ save.mode = Spil-tilstand: {0}
save.date = Sidste gem: {0}
save.playtime = Spiltid: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Advarsel.
confirm = Bekræft
delete = Slet
view.workshop = Se på Workshop
workshop.listing = Ændr Workshop-indlæg
hide = Hide
ok = Okay
open = Åben
customize = Customize Rules
@@ -372,7 +392,6 @@ command.repair = Repair
command.rebuild = Rebuild
command.assist = Assist Player
command.move = Move
command.boost = Boost
command.enterPayload = Enter Payload Block
command.loadUnits = Load Units
command.loadBlocks = Load Blocks
@@ -383,7 +402,9 @@ stance.shoot = Stance: Shoot
stance.holdfire = Stance: Hold Fire
stance.pursuetarget = Stance: Pursue Target
stance.patrol = Stance: Patrol Path
stance.holdposition = Stance: Hold Position
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Åben Link
@@ -430,6 +451,7 @@ saveimage = Gem billede
unknown = Ukendt
custom = Brugerdefineret
builtin = Indbygget
modded = Modded
map.delete.confirm = Er du sikker på, at du vil slette dette spil? Dette kan ikke blive genskabt!
map.random = [accent]Tilfældig bane
map.nospawn = Denne bane har ikke nogen kerne, spillere kan opstå fra! Tilføj en {0} kerne til denne bane via bane-editoren.
@@ -469,14 +491,6 @@ editor.rules = Regler:
editor.generation = Generering:
editor.objectives = Objectives
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = World Processors
editor.worldprocessors.editname = Edit Name
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -490,12 +504,86 @@ editor.center = Center
editor.search = Search maps...
editor.filters = Filter Maps
editor.filters.mode = Gamemodes:
editor.filters.priorities = Priorities:
editor.filters.type = Map Type:
editor.filters.search = Search In:
editor.filters.author = Author
editor.filters.description = Description
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift X
editor.shifty = Shift Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Bølger
waves.team = Team
@@ -510,10 +598,10 @@ waves.spawn = spawn:
waves.spawn.all = <all>
waves.spawn.select = Spawn Select
waves.spawn.none = [scarlet]no spawns found in map
waves.spawn.first = [lightgray](first {0})
waves.max = max units
waves.guardian = Vogter
waves.preview = Forhåndsvisning
waves.edit = Rediger...
waves.random = Random
waves.copy = Kopier til udklipsholder
waves.load = Indlæs fra udklipsholder
@@ -529,6 +617,7 @@ waves.search = Search waves...
waves.filter = Unit Filter
waves.units.hide = Hide All
waves.units.show = Show All
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = tal
@@ -539,7 +628,9 @@ all = All
editor.default = [lightgray]<standard>
details = Detaljer...
edit = Rediger...
edit.menu = Edit...
variables = Vars
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Are you sure you want to clear all code from this processor?
logic.restart = Restart
logic.globals = Built-in Variables
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Tegner hold i stedet for blokke.
#unused
toolmode.underliquid = Under Liquids
toolmode.underliquid.description = Draw floors under liquid tiles.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Ingen filtre! Tilføj filter nedenfor.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Bredde:
height = Højde:
@@ -749,8 +844,10 @@ objective.build = [accent]Build: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Build Unit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destroy: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Enemies approaching in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Destroy Enemy Core
objective.command = [accent]Command Units
objective.nuclearlaunch = [accent]⚠ Nuclear launch detected: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Unable to Switch Sectors
sector.noswitch = You may not switch sectors while an existing sector is under attack.\n\nSector: [accent]{0}[] on [accent]{1}[]
sector.view = View Sector
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Low
threat.medium = Medium
@@ -845,6 +943,10 @@ threat.high = High
threat.extreme = Extreme
threat.eradication = Eradication
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Solen
sector.impact0078.name = Impact 0078
sector.groundZero.name = Ground Zero
sector.craters.name = Kraterne
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Den Frosne Skov
sector.ruinousShores.name = Ruinous Shores
sector.stainedMountains.name = Stained Mountains
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Planetary Launch Terminal
sector.coastline.name = Humid Coastline
sector.navalFortress.name = Naval Fortress
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = The optimal location to begin once more. Low enemy threat. Few resources.\nGather as much lead and copper as possible.\nMove on.
sector.frozenForest.description = Even here, closer to mountains, the spores have spread. The frigid temperatures cannot contain them forever.\n\nBegin the venture into power. Build combustion generators. Learn to use menders.
sector.saltFlats.description = On the outskirts of the desert lie the Salt Flats. Few resources can be found in this location.\n\nThe enemy has erected a resource storage complex here. Eradicate their core. Leave nothing standing.
sector.craters.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Past the wastes, is the shoreline. Once, this location housed a coastal defense array. Not much of it remains. Only the most basic defense structures have remained unscathed, everything else reduced to scrap.\nContinue the expansion outwards. Rediscover the technology.
sector.stainedMountains.description = Further inland lie the mountains, yet untainted by spores.\nExtract the abundant titanium in this area. Learn how to use it.\n\nThe enemy presence is greater here. Do not give them time to send their strongest units.
sector.overgrowth.description = This area is overgrown, closer to the source of the spores.\nThe enemy has established an outpost here. Build Titan units. Destroy it. Reclaim that which was lost.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Here lie remnants of the interstellar transport
sector.planetaryTerminal.description = The final target.\n\nThis coastal base contains a structure capable of launching Cores to local planets. It is extremely well guarded.\n\nProduce naval units. Eliminate the enemy as quickly as possible. Research the launch structure.
sector.coastline.description = Remnants of naval unit technology have been detected at this location. Repel the enemy attacks, capture this sector, and acquire the technology.
sector.navalFortress.description = The enemy has established a base on a remote, naturally-fortified island. Destroy this outpost. Acquire their advanced naval craft technology, and research it.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = The Onset
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Blasted
status.corroded.name = Corroded
status.unmoving.name = Unmoving
status.boss.name = Guardian
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Sprog
settings.data = Spildata
@@ -985,6 +1102,13 @@ settings.clearresearch = Ryd research
settings.clearresearch.confirm = Er du sikker på, at du vil rydde alt din research?
settings.clearcampaignsaves = Ryd kampagne-gem
settings.clearcampaignsaves.confirm = Er du sikker på at du vil slette alt kampagne-fremskridt?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Pauset >
clear = Ryd
banned = [scarlet]Banlyst
@@ -1017,6 +1141,7 @@ stat.targetsground = Skyder fodgængere
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Bevægelseshastighed
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Tid mellem affyringer
stat.shootrange = Rækkevidde
stat.size = Størrelse
@@ -1039,6 +1164,8 @@ stat.weapons = Weapons
stat.bullet = Bullet
stat.moduletier = Module Tier
stat.unittype = Unit Type
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Hastigheds-forøgelse
stat.range = Rækkevidde
stat.drilltier = Kan bores
@@ -1047,6 +1174,7 @@ stat.boosteffect = Boost-effekt
stat.maxunits = Max aktive enheder
stat.health = Helbred
stat.armor = Armor
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Bygge-tid
stat.maxconsecutive = Max fortløbende
stat.buildcost = Bygge-pris
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] områdeskade ~[stat] {1}[lightgray] f
bullet.incendiary = [stat]brændfarlig
bullet.homing = [stat]målsøgende
bullet.armorpierce = [stat]armor piercing
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Skygger
setting.blockreplace.name = Automatiske Blok-forslag
setting.linear.name = Lineær Filtrering
setting.hints.name = Hints
setting.logichints.name = Logic Hints
setting.backgroundpause.name = Pause In Background
setting.buildautopause.name = Auto-pause af bygning
setting.doubletapmine.name = Double-Tap to Mine
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Disable Mods On Startup Crash
setting.animatedwater.name = Animeret vand
setting.animatedshields.name = Animeret skjold
setting.playerindicators.name = Player-indikatorer
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Fjende-/venne-indikatorer
setting.autotarget.name = Auto-mål
setting.keyboard.name = Mus- og Tasatur-styring
@@ -1271,6 +1403,8 @@ setting.fpscap.none = None
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI-skalering[lightgray] (genstart kræves)[]
setting.uiscale.description = Restart required to apply changes.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Altid diagonal placering
setting.screenshake.name = Skærm-ryst
setting.bloomintensity.name = Bloom Intensity
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Gemme-interval
setting.seconds = {0} sekunder
setting.milliseconds = {0} millesekunder
setting.fullscreen.name = Fuldskærm
setting.borderlesswindow.name = Kantløst vindue[lightgray] (kræver nok genstart)
setting.borderlesswindow.name.windows = Borderless Fullscreen
setting.borderlesswindow.description = Restart may be required to apply changes.
setting.fps.name = Vis FPS & Ping
setting.console.name = Enable Console
setting.smoothcamera.name = Blødt kamera
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Stemningslyde-volumen
setting.mutemusic.name = Forstum musik
setting.sfxvol.name = SFX-volumen
setting.mutesound.name = Forstum lyde
setting.crashreport.name = Send anonyme fejlrapporter
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Gem automatisk
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Unit Command
category.multiplayer.name = Spil med andre
category.blocks.name = Blokvalg
placement.blockselectkeys = \n[lightgray]Tast: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Genopstå
keybind.control.name = Kontroller enhed
keybind.clear_building.name = Ryd bygning
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Uendelig AI (rødt hold) resurser.
rules.blockhealthmultiplier = Blok-helbreds-forstærker.
rules.blockdamagemultiplier = Blok-skade-forstærker.
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Enheds-produktionshastigheds-forstærker
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Enheds-helbreds-forstærker
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Ild
rules.anyenv = <Any>
rules.explosions = Blok/Enheds-eksplosionsskade
@@ -2049,6 +2185,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tank Refabricator
block.mech-refabricator.name = Mech Refabricator
block.ship-refabricator.name = Ship Refabricator
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Reinforced Payload Router
block.payload-mass-driver.name = Payload Mass Driver
block.small-deconstructor.name = Small Deconstructor
block.canvas.name = Canvas
block.large-canvas.name = Large Canvas
block.world-processor.name = World Processor
block.world-cell.name = World Cell
block.tank-fabricator.name = Tank Fabricator
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Tap and hold[] a small block or unit to pick
hint.payloadDrop = Press [accent]][] to drop a payload.
hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a payload there.
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
hint.generator = :combustion-generator: [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with :power-node: [accent]Power Nodes[].
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or :graphite: [accent]Graphite[] :duo:Duo/:salvo:Salvo ammunition to take Guardians down.
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a :core-foundation: [accent]Foundation[] core over the :core-shard: [accent]Shard[] core. Make sure it is free from nearby obstructions.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts.
gz.zone3 = A wave will begin now.\nGet ready.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Fires standard bullets at all nearby enemies.
unit.mace.description = Fires streams of flame at all nearby enemies.
@@ -2540,7 +2690,7 @@ unit.risso.description = Fires a barrage of missiles and bullets at all nearby e
unit.minke.description = Fires shells and standard bullets at nearby ground targets.
unit.bryde.description = Fires long-range artillery shells and missiles at enemies.
unit.sei.description = Fires a barrage of missiles and armor-piercing bullets at enemies.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies. Constructs flare units.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies.
unit.alpha.description = Defends the Shard core from enemies. Builds structures.
unit.beta.description = Defends the Foundation core from enemies. Builds structures.
unit.gamma.description = Defends the Nucleus core from enemies. Builds structures.
@@ -2584,6 +2734,7 @@ lst.radar = Locate units around a building with range.
lst.sensor = Get data from a building or unit.
lst.set = Set a variable.
lst.operation = Perform an operation on 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Jump to the top of the instruction stack.
lst.wait = Wait a certain number of seconds.
lst.stop = Halt execution of this processor.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Locate a specific type of position/building anywhere on the map
lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Offizielles Mindustry-Wiki
link.suggestions.description = Neue Ideen vorschlagen
link.bug.description = Hast du einen Bug gefunden? Melde ihn hier!
linkopen = Dieser Server hat dir einen Link geschickt. Möchtest du ihn öffnen?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Fehler beim Öffnen des Links!\nDie URL wurde in die Zwischenablage kopiert.
screenshot = Screenshot gespeichert unter {0}
screenshot.invalid = Karte zu groß! Eventuell nicht ausreichend Arbeitsspeicher für Screenshot.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Der Kern wurde zerstört.
gameover.disconnect = Verbindung trennen
gameover.pvp = Das[accent] {0}[] Team ist siegreich!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Warte auf neue Karte...
highscore = [accent]Neuer Highscore!
copied = Kopiert.
indev.notready = Dieser Teil vom Spiel ist noch nicht fertig.
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Audio
load.map = Karten
@@ -49,11 +52,19 @@ mods.browser.view-releases = Versionen ansehen
mods.browser.noreleases = [scarlet]Keine Versionen gefunden\n[accent]Konnte für diese Mod keine Versionen finden. Überprüfe, ob die Mod auf GitHub Releases hat.
mods.browser.latest = [lightgray][Neueste]
mods.browser.releases = Versionen
mods.browser.fetching = Fetching Releases...
mods.github.open = GitHub-Repo
mods.github.open-release = Versionen Webseite
mods.browser.sortdate = Nach neuesten sortieren
mods.browser.sortstars = Nach Sternen sortieren
export.file = Datei exportieren
import.file = Datei importieren
copy.clipboard = In Zwischenablage kopieren
import.clipboard = Aus Zwischenablage importieren
workshop.browse = Browse Workshop
workshop.share = Im Workshop teilen
schematic = Entwurf
schematic.add = Entwurf speichern...
schematics = Entwürfe
@@ -61,12 +72,6 @@ schematic.search = Suche nach Entwürfen...
schematic.replace = Es gibt bereits einen Entwurf mit diesem Namen. Diesen ersetzen?
schematic.exists = Es gibt schon einen Entwurf mit diesem Namen.
schematic.import = Entwurf importieren...
schematic.exportfile = Datei exportieren
schematic.importfile = Datei importieren
schematic.browseworkshop = Workshop durchsuchen
schematic.copy = In Zwischenablage kopieren
schematic.copy.import = Aus Zwischenablage importieren
schematic.shareworkshop = Im Workshop teilen
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Entwurf umkehren
schematic.saved = Entwurf gespeichert.
schematic.delete.confirm = Dieser Entwurf wird vollständig vernichtet.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Keine Karten gefunden!
invalid = Ungültig
pickcolor = Farbe wählen
color = Color
import = Import
export = Export
preparingconfig = Konfiguration vorbereiten
preparingcontent = Inhalt vorbereiten
uploadingcontent = Inhalt hochladen
content.createdby = Created by: {0}
uploadingpreviewfile = Vorschaudatei hochladen
committingchanges = Veränderungen werden übernommen
done = Fertig
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Diese Mod kann aufgrund fehlenden oder ung
mod.requiresversion = Benötigt Spielversion: [red]{0}
mod.errors = Beim Laden von Inhalt sind Fehler aufgetreten.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [red]Du hast Mods mit Fehlern.[] Deaktiviere die Mods oder behebe die Fehler, bevor du spielst.
mod.enable = Aktivieren
mod.requiresrestart = Das Spiel wird jetzt beendet, um die Mod-Änderungen anzuwenden.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Wähle einen Planeten, auf dem du starten möchtest.\
campaign.erekir = Neuerer, besserer Inhalt. Größtenteils linearer Fortschritt.\n\nSchwieriger. Höhere Karten- und Spielqualität.
campaign.serpulo = Älterer Inhalt; das klassische Spiel. Offener, mehr Inhalt. \n\nKarten und Spielmechanismen möglicherweise qualitativ schlechter und ohne Balance.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Abgeschlossen
techtree = Forschungsbaum
techtree.select = Forschungsbaum auswählen
@@ -235,6 +246,7 @@ server.kicked.vote = Es wurde abgestimmt, dich rauszuwerfen. Tschüss.
server.kicked.clientOutdated = Veralteter Client! Aktualisiere dein Spiel!
server.kicked.serverOutdated = Veralteter Server! Bitte den Host um ein Update!
server.kicked.banned = Du wurdest vom Server verbannt.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Dieser Server ist nicht mit deinem Buildtyp kompatibel.
server.kicked.playerLimit = Dieser Server ist voll. Warte auf einen freien Platz.
server.kicked.recentKick = Du wurdest gerade gekickt.\nWarte, bevor du dich wieder verbindest.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Zeitüberschreitung beim Empfangen von UDP-Snapshot
cantconnect = Nicht möglich beizutreten ([accent]{0}[]).
connecting = [accent] Verbinde...
reconnecting = [accent]Verbindung wird wiederhergestellt...
connecting.data = [accent] Welt wird geladen...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Port:
server.invalidport = Falscher Port!
server.error.addressinuse = [scarlet]Fehler beim Öffnen des Servers auf Port 6567.[]\n\nStelle sicher, dass keine anderen Mindustry-Server auf deinem Gerät oder Netzwerk laufen!
@@ -335,6 +352,10 @@ 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.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Spielstand importieren
save.newslot = Name:
save.rename = Umbenennen
@@ -354,13 +375,12 @@ save.mode = Spielmodus: {0}
save.date = Zuletzt gespeichert: {0}
save.playtime = Spielzeit: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Warnung
confirm = Bestätigen
delete = Löschen
view.workshop = Im Workshop ansehen
workshop.listing = Workshop-Auflistung bearbeiten
hide = Hide
ok = OK
open = Öffnen
customize = Anpassen
@@ -372,7 +392,6 @@ command.repair = Reparieren
command.rebuild = Wiederaufbauen
command.assist = Spieler unterstützen
command.move = Bewegen
command.boost = Boost
command.enterPayload = Frachtblock betreten
command.loadUnits = Einheiten laden
command.loadBlocks = Blöcke laden
@@ -383,7 +402,9 @@ stance.shoot = Stellung: schießen
stance.holdfire = Stellung: nicht schießen
stance.pursuetarget = Stellung: Ziel verfolgen
stance.patrol = Stellung: Pfad patroullieren
stance.holdposition = Stance: Hold Position
stance.ram = Stellung: rammen[lightgray]in einer geraden Linie bewegen, gegen Wände laufen
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Link öffnen
@@ -430,6 +451,7 @@ saveimage = Bild speichern
unknown = Unbekannt
custom = Benutzerdefiniert
builtin = Enthalten
modded = Modded
map.delete.confirm = Bist du sicher, dass du diese Karte löschen willst? Dies kann nicht rückgängig gemacht werden!
map.random = [accent]Zufällige Karte
map.nospawn = Diese Karte hat keine Kerne, in denen die Spieler beginnen können! Füge einen {0} Kern zu dieser Karte im Editor hinzu.
@@ -469,14 +491,6 @@ editor.rules = Regeln
editor.generation = Generator
editor.objectives = Ziele
editor.locales = Sprach-Bundle
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = Weltprozessoren
editor.worldprocessors.editname = Name bearbeiten
editor.worldprocessors.none = [lightgray]Keine Weltprozessor-Blöcke gefunden!\nFüge einen im Karteneditor hinzu oder benutze den \ue813 Hinzufügen-Button unten.
@@ -490,12 +504,86 @@ editor.center = Zur Mitte
editor.search = Karten durchsuchen...
editor.filters = Karten filtern
editor.filters.mode = Spielmodi:
editor.filters.priorities = Priorities:
editor.filters.type = Kartentyp:
editor.filters.search = Suchen nach:
editor.filters.author = Autor
editor.filters.description = Beschreibung
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Verschieben X
editor.shifty = Verschieben Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Wellen
waves.team = Team
@@ -510,10 +598,10 @@ waves.spawn = Startpunkte:
waves.spawn.all = <alle>
waves.spawn.select = Startpunktauswahl
waves.spawn.none = [scarlet]keine Startpunkte gefunden
waves.spawn.first = [lightgray](first {0})
waves.max = maximale Einheiten
waves.guardian = Boss
waves.preview = Vorschau
waves.edit = Bearbeiten...
waves.random = Zufällig
waves.copy = In die Zwischenablage kopieren
waves.load = Aus der Zwischenablage laden
@@ -529,6 +617,7 @@ waves.search = Wellen durchsuchen...
waves.filter = Einheiten Filter
waves.units.hide = Alle verstecken
waves.units.show = Alle anzeigen
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = Menge
@@ -539,7 +628,9 @@ all = All
editor.default = [lightgray]<Standard>
details = Details
edit = Bearbeiten
edit.menu = Edit...
variables = Variablen
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Willst du wirklich den gesamten Code aus diesem Prozessor löschen?
logic.restart = Restart
logic.globals = Eingebaute Variablen
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Zeichnet Teams statt Blöcke.
#unused
toolmode.underliquid = Unter Flüssigkeiten
toolmode.underliquid.description = Malt Boden unter Flüssigkeiten.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Keine Filter! Füge einen mit dem unteren Knopf hinzu.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Breite:
height = Höhe:
@@ -749,8 +844,10 @@ objective.build = [accent]Baue: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Baue Einheit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Zerstöre: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Gegner in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Gegnerische Einheit-Produktion steigert sich in [lightgray]{0}[]
objective.enemyairunits = [accent]Gegnerische Lufteinheit-Produktion startet in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Gegnerischen Kern zerstören
objective.command = [accent]Einheiten Steuern
objective.nuclearlaunch = [accent]⚠ Atomraketenstart festgestellt: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Kann Sektoren nicht wechseln
sector.noswitch = Du kannst nicht zwischen Sektoren wechseln, wenn ein anderer angegriffen wird.\n\nSektor: [accent]{0}[] auf [accent]{1}[]
sector.view = Sektor ansehen
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Niedrig
threat.medium = Mittel
@@ -845,6 +943,10 @@ threat.high = Hoch
threat.extreme = Extrem
threat.eradication = Zerstörung
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Sonne
sector.impact0078.name = Einschlag 0078
sector.groundZero.name = Nullpunkt
sector.craters.name = Die Krater
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Gefrorener Wald
sector.ruinousShores.name = Trümmerstrände
sector.stainedMountains.name = Beflecktes Gebirge
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Verseuchter Canyon
sector.planetaryTerminal.name = Planetares Launchterminal
sector.coastline.name = Küstenlinie
sector.navalFortress.name = Marinefestung
sector.polarAerodrome.name = Polarer Flugplatz
sector.atolls.name = Atolle
sector.testingGrounds.name = Testgelände
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Myzel-Festung
sector.frontier.name = Frontlinie
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = Der optimale Ort, um anzufangen. Schwache Gegner und weniger Ressourcen.\nSammele so viel Kupfer und Blei wie möglich.\nGeh weiter.
sector.frozenForest.description = Auch hier, näher an den Bergen, sind die Sporen. Sogar die niedrigen Temperaturen können sie nicht zurückhalten.\n\nLerne, Strom zu verwenden. Baue Verbrennungsgeneratoren und Reparateure.
sector.saltFlats.description = Du befindest dich in der Nähe der Wüste. Hier gibt es nur wenige Ressourcen.\n\nDer Gegner hat hier ein Lager aufgestellt. Zerstöre es. Lasse nichts stehen.
sector.craters.description = Wasser hat sich hier, in diesem Überbleibsel aus dem alten Krieg, versammelt. Sammele Sand. Stelle Metaglas her. Benutze Wasser, um Bohrer und Geschütze zu kühlen.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Hinter der Wüste ist das Ufer. Es gab hier vor langer Zeit ein Uferabwehrsystem. Heute sind nur noch die einfachsten Abwehrgeschütze vorhanden, der Rest wurde verschrottet.\nBreite dich weiter aus. Finde die verlorenen Technologien wieder.
sector.stainedMountains.description = Im Landesinneren sind die Berge, noch unversehrt von den Sporen.\nNutze das reichliche vorhandene Titan und lerne, es zu benutzen.\n\nDie Gegner hier sind stärker. Gib ihnen keine Zeit, um ihre stärksten Einheiten zu schicken.
sector.overgrowth.description = Dieser Bereich ist überwuchert, näher an die Quelle der Sporen.\nDer Gegner hat hier einen Außenposten errichtet. Baue Mace-Einheiten. Zerstöre ihn.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Hier liegen Reste der interplanetarischen Transp
sector.planetaryTerminal.description = Das Endziel.\n\nDiese Uferbasis besitzt ein Gerät, mit dem es möglich ist, Kerne auf andere Planeten zu schicken. Es ist [accent]sehr[] gut beschützt.\n\nStelle Wassereinheiten her. Eliminiere den Gegner so schnell wie möglich. Erforsche das Launchgerät.
sector.coastline.description = Überreste alter Schiffstechnologien wurden hier entdeckt. Wehre dich gegen die gegnischen Angriffe, erobere den Sektor und erforsche diese Technologie.
sector.navalFortress.description = Der Gegner hat auf einer abgelegenen, von Natur aus sicheren Insel eine Basis aufgebaut. Zerstöre diesen Außenposten. Finde deren fortgeschrittene Schiffstechnologien und erforsche diese weiter.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = Der Anfang
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Sprengend
status.corroded.name = Corroded
status.unmoving.name = Unbeweglich
status.boss.name = Boss
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Sprache
settings.data = Spieldaten
@@ -985,6 +1102,13 @@ settings.clearresearch = Erforschungen löschen
settings.clearresearch.confirm = Möchtest du wirklich alle Erforschungen löschen?
settings.clearcampaignsaves = Kampagne-Speicherstände löschen
settings.clearcampaignsaves.confirm = Möchtest du wirklich alle Kampagne-Speicherstände löschen?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Pausiert >
clear = Leeren
banned = [scarlet]Verbannt
@@ -1017,6 +1141,7 @@ stat.targetsground = Visiert Bodeneinheiten an
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Bewegungsgeschwindigkeit
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Zeit zwischen Starts
stat.shootrange = Reichweite
stat.size = Größe
@@ -1039,6 +1164,8 @@ stat.weapons = Waffen
stat.bullet = Geschoss
stat.moduletier = Modulstufe
stat.unittype = Einheitentyp
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Geschwindigkeitserhöhung
stat.range = Reichweite
stat.drilltier = Abbaubare Erze
@@ -1047,6 +1174,7 @@ stat.boosteffect = Verstärkungseffekt
stat.maxunits = Max. aktive Einheiten
stat.health = Lebenspunkte
stat.armor = Rüstung
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Baudauer
stat.maxconsecutive = Max. Konsekutive
stat.buildcost = Baukosten
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] Flächenschaden ~[stat] {1}[lightgray
bullet.incendiary = [stat]entzündend
bullet.homing = [stat]zielsuchend
bullet.armorpierce = [stat]panzerbrechend
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0} sec[lightgray] Heilungsunterdrückung ~ [stat]{1}[lightgray] Kacheln
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Schatten
setting.blockreplace.name = Automatische Blockvorschläge
setting.linear.name = Lineare Filterung
setting.hints.name = Tipps
setting.logichints.name = Logiktipps
setting.backgroundpause.name = Im Hintergrund pausieren
setting.buildautopause.name = Bauen automatisch pausieren
setting.doubletapmine.name = Doppeltippen zum Abbauen
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Mods bei Absturz deaktivieren
setting.animatedwater.name = Animierte Oberflächen
setting.animatedshields.name = Animierte Schilde
setting.playerindicators.name = Spieler-Indikatoren
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Verbündeten-Indikatoren
setting.autotarget.name = Auto-Zielauswahl
setting.keyboard.name = Maus+Tastatur-Steuerung
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Kein(e)
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI-Skalierung
setting.uiscale.description = Neustart erforderlich.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Immer diagonale Platzierung
setting.screenshake.name = Wackeleffekt
setting.bloomintensity.name = Bloomstärke
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Autosave-Häufigkeit
setting.seconds = {0} Sekunden
setting.milliseconds = {0} Millisekunden
setting.fullscreen.name = Vollbild
setting.borderlesswindow.name = Randloses Fenster
setting.borderlesswindow.name.windows = Randloses Vollbild
setting.borderlesswindow.description = Neustart vielleicht erforderlich.
setting.fps.name = FPS anzeigen
setting.console.name = Konsole freigeben
setting.smoothcamera.name = Sanfte Kamerabewegungen
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Ambient-Lautstärke
setting.mutemusic.name = Musik stummschalten
setting.sfxvol.name = Audioeffekt-Lautstärke
setting.mutesound.name = Audioeffekte stummschalten
setting.crashreport.name = Anonyme Absturzberichte senden
setting.communityservers.name = Community-Server-Liste abrufen
setting.savecreate.name = Automatisch speichern
setting.steampublichost.name = Spiel öffentlich sichtbar
@@ -1336,6 +1466,8 @@ category.command.name = Einheitenbefehle
category.multiplayer.name = Mehrspieler
category.blocks.name = Blockauswahl
placement.blockselectkeys = \n[lightgray]Taste: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Respawn
keybind.control.name = Einheit steuern
keybind.clear_building.name = Bauplan löschen
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Stellung: nicht schießen
keybind.unit_stance_pursue_target.name = Stellung: Ziel verfolgen
keybind.unit_stance_patrol.name = Stellung: patroullieren
keybind.unit_stance_ram.name = Stellung: rammen
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Befehl: bewegen
keybind.unit_command_repair.name = Befehl: reparieren
keybind.unit_command_rebuild.name = Befehl: wiederaufbauen
keybind.unit_command_assist.name = Befehl: Spieler helfen
keybind.unit_command_mine.name = Befehl: Ressourcen abbauen
keybind.unit_command_boost.name = Befehl: Boost
keybind.unit_command_load_units.name = Befehl: Einheiten aufnehmen
keybind.unit_command_load_blocks.name = Befehl: Blöcke aufnehmen
keybind.unit_command_unload_payload.name = Befehl: Last abladen
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Unbegrenzte gegnerische Ressourcen
rules.blockhealthmultiplier = Block-Lebenspunkte-Multiplikator
rules.blockdamagemultiplier = Block-Schaden-Multiplikator
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Einheiten-Baugeschwindigkeit Multiplikator
rules.unitcostmultiplier = Einheit-Baukosten Multiplikator
rules.unithealthmultiplier = Einheit-Lebenspunkte-Multiplikator
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechaniken
rules.legacylaunchpads.info = Launchpads können ohne Landepads benutzt werden, wie in Version 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Deaktiviert[lightgray] (Legacy Launch Pads aktiviert)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unvorhersehbare Wellen-KI
rules.pauseDisabled = Disable Pausing
rules.fire = Feuer
rules.anyenv = <Jede>
rules.explosions = Explosionsschaden
@@ -2049,6 +2185,9 @@ block.disperse.name = Streu
block.afflict.name = Afflikt
block.lustre.name = Lustre
block.scathe.name = Skate
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Panzerverbesserer
block.mech-refabricator.name = Mechverbesserer
block.ship-refabricator.name = Schiffverbesserer
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Verstärkter Frachtverteiler
block.payload-mass-driver.name = Frachtmassenbeschleuniger
block.small-deconstructor.name = Dekonstruktor
block.canvas.name = Kanvas
block.large-canvas.name = Large Canvas
block.world-processor.name = Weltprozessor
block.world-cell.name = Weltzelle
block.tank-fabricator.name = Panzerhersteller
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Halte deinen Finger[] auf eine kleine Einhei
hint.payloadDrop = Drücke [accent]][], um etwas fallen zu lassen.
hint.payloadDrop.mobile = [accent]Halte deinen Finger[] auf einen freien Ort, um eine Einheit oder einen Block da fallen zu lassen.
hint.waveFire = [accent]Wellen[]-Geschütze mit Wassermunition löschen automatisch Feuer.
hint.generator = :combustion-generator: [accent]Verbrennungsgeneratoren[] verbrennen Kohle und übertragen diesen Strom in angrenzende Blöcke.\n\nDie Reichweite der Stromübertragung kann mit :power-node: [accent]Stromknoten[] erweitert werden.
hint.guardian = [accent]Boss[]-Einheiten sind gepanzert. Schwache Munition wie [accent]Kupfer[] und [accent]Blei[] sind [scarlet]nicht effektiv[].\n\nBenutze bessere Geschütze oder :graphite: [accent]Graphit[] als :duo:Duo-/:salvo:Salvenmunition um einen Boss zu besiegen.
hint.coreUpgrade = Kerne können aufgerüstet werden, indem man [accent]bessere Kerne über sie platziert[].\n\nPlatziere einen :core-foundation: [accent]Fundament[]-Kern über einen :core-shard: [accent]Scherben[]-Kern. Stelle sicher, dass ausreichend Platz verfügbar ist.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Alle Blöcke in der Zone werden zerstört, wenn eine Welle kommt.
gz.zone3 = Jetzt kommt eine Welle.\nBereite dich vor.
gz.finish = Baue mehr Geschütze, sammele mehr Ressourcen\nund besiege alle Wellen, um den [accent]Sektor zu erobern[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Heilt alle Einheiten in der Nähe. Benöti
block.radar.description = Entdeckt schrittweise die Umgebung und gegnerische Einheiten in einem großen Radius. Benötigt Strom.
block.shockwave-tower.description = Beschädigt und zerstört gegnerische Projektile in der Nähe.
block.canvas.description = Zeigt ein einfaches Bild mit einer vordefinierten Farbpalette. Bearbeitbar.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Schießt normale Kugeln auf nahe feindliche Ziele.
unit.mace.description = Schießt Feuer auf nahe feindliche Ziele.
@@ -2540,7 +2690,7 @@ unit.risso.description = Schießt ein Sperrfeuer aus Raketen und Kugeln auf alle
unit.minke.description = Schießt Geschosse und Kugeln auf Feinde.
unit.bryde.description = Schießt Artilleriegeschosse und Raketen mit großer Reichweite auf alle feindlichen Ziele.
unit.sei.description = Schießt ein Sperrfeuer aus Raketen und durchdringende Geschosse auf feindliche Ziele.
unit.omura.description = Schießt eine Railgun mit hoher Reichweite, um Gegner zu zerstören. Stellt Flare-Einheiten her.
unit.omura.description = Schießt eine Railgun mit hoher Reichweite, um Gegner zu zerstören.
unit.alpha.description = Beschützt den Scherbenkern vor Feinden. Baut Blöcke.
unit.beta.description = Beschützt den Fundamentkern vor Feinden. Baut Blöcke.
unit.gamma.description = Beschützt den Nukleuskern vor Feinden. Baut Blöcke.
@@ -2584,6 +2734,7 @@ lst.radar = Findet Einheiten.
lst.sensor = Gibt Daten über einen Block oder eine Einheit wieder.
lst.set = Setzt eine Variable fest.
lst.operation = Verändert eine Variable.
lst.select = Conditionally set a variable to one of two values.
lst.end = Springt wieder nach oben.
lst.wait = Wartet eine bestimmte Zeit.
lst.stop = Halte diesen Prozessor ganz an.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Findet mit [accent]@unit[] bestimmte Positionen / Blöcke auf d
lst.getblock = Lese Tile-Daten von jedem Standort.
lst.setblock = Setze Tile-Daten an jedem Standort.
lst.spawnunit = Einheit an einem Standort erstellen.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Füge einer Einheit einen Effekt hinzu oder entferne ihn.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Setzt eine Eigenschaft einer Einheit oder eines Blockes.
lst.effect = Erstelle einen Partikeleffekt
lst.sync = Synchronisiert eine Variable im Netzwerk.\nWird maximal 10 Mal pro Sekunde ausgefürht.
lst.playsound = Spielt einen Ton.\nDie Lautstärke kann ein fester Wert sein, oder anhand der Position berechnet werden. (weiter weg: leiser)
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Erstelle einen neuen Logikmarker in der Welt.\nEine ID zur Identifizierung muss angegeben werden.\nDerzeit können nur maximal 20.000 Marker pro Welt platziert werden.
lst.setmarker = Lege eine Eigenschaft für einen Marker fest.\nDie ID muss die selbe wie bei der Erstellung des Markers sein.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+242 -88
View File
@@ -15,9 +15,11 @@ link.wiki.description = Wiki oficial de Mindustry
link.suggestions.description = Sugerir nuevas características
link.bug.description = ¿Encontraste un error? Puedes reportarlo aquí
linkopen = Este servidor te ha enviado un enlace. ¿Estás seguro de que quieres abrirlo?\n\n[sky]{0}
clipboardcopy = Este servidor quiere copiar texto a tu portapapeles. ¿Estás seguro de querer continuar?\n\n[sky]{0}
linkfail = ¡Error al abrir el enlace!\nLa URL se ha copiado al portapapeles.
screenshot = Captura de pantalla guardada en {0}
screenshot.invalid = El mapa es demasiado grande, no hay suficiente memoria para la captura de pantalla.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Fin de la partida
gameover.disconnect = Desconectarse
gameover.pvp = ¡El equipo[accent] {0}[] ha ganado!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Esperando el próximo mapa...
highscore = [accent]¡Nuevo récord!
copied = Copiado.
indev.notready = Esta parte del juego no esta lista aún
bundle.external = Nota: Has cargado correctamente un paquete de traducción externo.\n[accent]{0}
load.sound = Sonidos
load.map = Mapas
@@ -49,11 +52,19 @@ mods.browser.view-releases = Versiones
mods.browser.noreleases = [scarlet]No disponible.\n[accent]No se encontró ninguna versión publicada para este mod. Comprueba si el repositorio del mod ha publicado alguna versión.
mods.browser.latest = <Última>
mods.browser.releases = Versiones
mods.browser.fetching = Buscando Versiones...
mods.github.open = Repositorio de GitHub
mods.github.open-release = Lista de versiones
mods.browser.sortdate = Más recientes
mods.browser.sortstars = Mejor valorados
export.file = Exportar archivo
import.file = Importar archivo
copy.clipboard = Copiar al portapapeles
import.clipboard = Importar desde el portapapeles
workshop.browse = Browse Workshop
workshop.share = Compartir en Steam Workshop
schematic = Esquema
schematic.add = Guardar esquema...
schematics = Esquemas
@@ -61,12 +72,6 @@ schematic.search = Buscar esquemas..
schematic.replace = Ya existe un esquema con ese nombre. ¿Quieres reemplazarlo?
schematic.exists = Ya existe un esquema con ese nombre.
schematic.import = Importar esquema...
schematic.exportfile = Exportar archivo
schematic.importfile = Importar archivo
schematic.browseworkshop = Buscar en Steam Workshop
schematic.copy = Copiar al portapapeles
schematic.copy.import = Importar desde el portapapeles
schematic.shareworkshop = Compartir en Steam Workshop
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Invertir esquema
schematic.saved = Esquema guardado.
schematic.delete.confirm = Este esquema será absolutamente erradicado.
@@ -124,9 +129,12 @@ maps.none = [lightgray]¡No se han encontrado mapas!
invalid = No es válido
pickcolor = Selección de color
color = Color
import = Importar
export = Exportar
preparingconfig = Preparando configuración
preparingcontent = Preparando contenido
uploadingcontent = Subiendo contenido
content.createdby = Creado por: {0}
uploadingpreviewfile = Subiendo archivo de vista previa
committingchanges = Sincronizando cambios
done = Hecho
@@ -148,7 +156,7 @@ mod.enabled = [lightgray]Activado
mod.disabled = [scarlet]Desactivado
mod.multiplayer.compatible = [gray]Compatible con multijugador
mod.disable = Desactivar
mod.version = Version:
mod.version = Versión:
mod.content = Contenido:
mod.delete.error = No se pudo elminar el mod. Puede que el archivo esté en uso.
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Este mod no se puede cargar debido a depend
mod.requiresversion = Requiere la versión del juego: [red]{0}
mod.errors = Ha ocurrido un fallo al cargar el contenido.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]Se están ejecutando algunos mods con fallos.[]Debes deshabilitarlos o arreglar los errores antes de jugar.
mod.enable = Activar
mod.requiresrestart = El juego se cerrará para aplicar los cambios del mod.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Elige un planeta donde empezar.\nPuedes cambiar en cu
campaign.erekir = [accent]Recomendado para nuevos jugadores.[]\n\nContenido más reciente y pulido. Progresión de campaña lineal.\n\nNiveles y experiencia de mayor calidad.
campaign.serpulo = [scarlet]No recomendado para jugadores novatos.[]\n\nContenido más antiguo; La experiencia clásica. More open-ended.\n\nNiveles y mecánicas de juego potencialmente desequilibrados.
campaign.difficulty = Dificultad
campaign.rework.title = Aviso de Cambios a la Campaña
campaign.rework.serpulo = [accent]⚠ La campaña de Serpulo ha sido retrabajada.[]\n\nLas posiciones de los sectores y la dificultad han cambiado. Es posible que te encuentres problemas relacionados a archivos guardados de campaña que quedaron del diseño anterior.\n\nPara una experiencia más limpia, considera reiniciar tu campaña en los ajustes.
completed = [accent]Completado
techtree = Investigaciones tecnológicas
techtree.select = Selección de esquemas de tecnologías
@@ -235,6 +246,7 @@ server.kicked.vote = Has sido expulsado por votación. Hasta luego.
server.kicked.clientOutdated = ¡Cliente desactualizado! ¡Actualiza el juego!
server.kicked.serverOutdated = ¡Servidor desactualizado! ¡Pídele al anfitrión que lo actualice!
server.kicked.banned = Estás vetado en este servidor.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Este servidor no es compatible con el tipo de compilación de tu versión actual.
server.kicked.playerLimit = Este servidor está lleno. Puedes esperar a que alguien deje un hueco.
server.kicked.recentKick = Has sido expulsado recientemente.\nEspera antes de conectarte de nuevo.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Tiempo de espera agotado al recibir instantánea UD
cantconnect = No es posible unirse a la partida ([accent]{0}[]).
connecting = [accent]Conectando...
reconnecting = [accent]Reconectado...
connecting.data = [accent]Cargando datos del mundo...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Puerto:
server.invalidport = ¡El número de puerto no es valido!
server.error.addressinuse = [scarlet]Error al abrir servidor en puerto 6567.[]\n\n¡Asegúrate que no haya otros servidores Mindustry corriendo en tu dispositivo o red!
@@ -335,6 +352,10 @@ save.export = Exportar archivo de guardado
save.import.invalid = [accent]¡Este archivo no es válido!
save.import.fail = [scarlet]Hubo un fallo al importar el archivo de guardado: [accent]{0}
save.export.fail = [scarlet]Ha fallado la exportación del guardado: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Importar guardado
save.newslot = Nombre del archivo de guardado:
save.rename = Renombrar
@@ -354,13 +375,12 @@ save.mode = Modo de juego: {0}
save.date = Último guardado: {0}
save.playtime = Tiempo de juego: {0}
dontshowagain = No mostrar de nuevo
warn.32bit.title = Advertencia de obsolencia 32-bit
warn.32bit = Estas usando una versión [red]32-bit[] de Mindustry.\nDado que versiones mas nuevas de Java han abandonado el soporte 32-bit para Windows, [red]el soporte 32-bit será discontinuado a futuro[].\n\nPor favor, actualiza a una máquina 64-bit y asegúrate de tener la versión 64-bit de Mindustry descargada.\n\nSi estas ejecutando Mindustry como un JAR, asegúrate de usar Java 64-bit.
warning = Aviso.
confirm = Confirmar
delete = Borrar
view.workshop = Ver en Steam Workshop
workshop.listing = Editar el listado del Worshop
hide = Ocultar
ok = OK
open = Abrir
customize = Personalizar reglas
@@ -372,7 +392,6 @@ command.repair = Reparar
command.rebuild = Reconstruir
command.assist = Asistir al jugador
command.move = Moverse
command.boost = Sobrevolar
command.enterPayload = Entrar a bloque de carga
command.loadUnits = Cargar unidades
command.loadBlocks = Cargar bloques
@@ -383,7 +402,9 @@ stance.shoot = Acción: Disparar
stance.holdfire = Acción: No disparar
stance.pursuetarget = Acción: Seguir al objetivo
stance.patrol = Acción: Patrullar ruta
stance.holdposition = Acción: Mantener la posición
stance.ram = Acción: Embestir\n[lightgray]Movimiento en linea recta, sin pathfinding
stance.boost = Sobrevolar
stance.mineauto = Minar automáticamente
stance.mine = Minar objeto: {0}
openlink = Abrir enlace
@@ -430,6 +451,7 @@ saveimage = Guardar imagen
unknown = Desconocido
custom = Personalizado
builtin = Incorporado
modded = De un Mod
map.delete.confirm = ¿Quieres borrar este mapa? ¡Esta acción no se puede deshacer!
map.random = [accent]Mapa aleatorio
map.nospawn = ¡Este mapa no tiene ningún núcleo para que aparezca el jugador! Agrega un núcleo {0} al mapa desde el editor.
@@ -469,14 +491,6 @@ editor.rules = Normas:
editor.generation = Generación:
editor.objectives = Objetivos
editor.locales = Paquetes de localización
editor.patches.guide = Guia de parches
editor.patches = Parches de datos
editor.patch = Conjunto de parches: {0}
editor.patches.none = [lightgray]No hay conjuntos de parches cargados.
editor.patches.errors = Errores del conjunto de parches
editor.patches.importerror = Error al importar el conjunto de parches
editor.patches.delete.confirm = ¿Estas seguro de eliminar este conjunto de parches?
editor.patch.fields = {0} campos
editor.worldprocessors = Procesadores estáticos
editor.worldprocessors.editname = Editar nombre
editor.worldprocessors.none = [lightgray]¡No se encontraron procesadores estáticos!\nAñade uno en el editor del mapa, o usa el botón \ue813 Añadir.
@@ -490,12 +504,86 @@ editor.center = Centrar
editor.search = Buscar mapas...
editor.filters = Filtrar mapas
editor.filters.mode = Modos de juego:
editor.filters.priorities = Prioridades:
editor.filters.type = Tipo de mapa:
editor.filters.search = Buscar en:
editor.filters.author = Autor
editor.filters.description = Descripción
editor.filters.modname = Nombre del mod
editor.filters.prioritizemod = Priorizar de un Mod
editor.filters.prioritizecustom = Priorizar Personalizados
editor.filters.planetselect = Planet Selection
editor.shiftx = Trasladar X
editor.shifty = Trasladar Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Parches de datos
patch.set = Patchset: {0}
patch.none = [lightgray]No hay conjuntos de parches cargados.
patch.errors = Errores del conjunto de parches
patch.importerror = Error al importar el conjunto de parches
patch.delete.confirm = ¿Estas seguro de eliminar este conjunto de parches?
patch.path = Path:
patch.fields = {0} campos
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Steam Workshop
waves.title = Oleadas
waves.team = Equipo
@@ -510,11 +598,11 @@ waves.spawn = generar:
waves.spawn.all = <todo>
waves.spawn.select = Seleccionar zona de aparición
waves.spawn.none = [scarlet]No se encontraron zonas de aterrizaje en el mapa
waves.spawn.first = [lightgray](primero {0})
waves.max = máximo de unidades
waves.guardian = Guardián
waves.preview = Vista previa
waves.edit = Editar...
waves.random = Random
waves.random = Aleatorizadas
waves.copy = Copiar al portapapeles
waves.load = Cargar del portapapeles
waves.invalid = Los ajustes de oleadas copiados en el portapapeles no son válidos.
@@ -529,6 +617,7 @@ waves.search = Buscar oleadas...
waves.filter = Filtro de unidades
waves.units.hide = Ocultar todo
waves.units.show = Mostrar todo
pause.disabled = [scarlet]La pausa está desactivada
#these are intentionally in lower case
wavemode.counts = limitadas
@@ -539,7 +628,9 @@ all = Todos
editor.default = [lightgray]<Por defecto>
details = Detalles...
edit = Editar...
edit.menu = Edit...
variables = Variables
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = ¿Seguro quieres limpiar todo el código de este procesador?
logic.restart = Reiniciar
logic.globals = Variables Integradas
@@ -555,7 +646,7 @@ editor.errorlegacy = Este mapa es demasiado antiguo y usa un formato obsoleto.
editor.errornot = Esto no es un fichero de mapa.
editor.errorheader = Este mapa no es válido o está corrupto.
editor.errorname = El mapa no tiene un nombre definido. ¿Estás intentando cargar un fichero de guardado?
editor.errorlocales = Error reading invalid locale bundles.
editor.errorlocales = Error al leer paquetes de localización invalidos.
editor.update = Actualizar
editor.randomize = Aleatorizar
editor.moveup = Subir
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Dibuja equipos en lugar de bloques.
#unused
toolmode.underliquid = Bajo líquidos
toolmode.underliquid.description = Dibuja suelos bajo bloques con líquidos.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]¡No hay filtros! Añade uno con el botón de abajo.
@@ -678,6 +771,8 @@ locales.showsame = Mostrar propiedades que tienen valores iguales en distintos p
locales.viewproperty = Ver en todos los paquetes de localización
locales.viewing = Viendo propiedad "{0}"
locales.addicon = Añadir ícono
locales.property.name = Nombre
locales.property.text = Texto
width = Ancho:
height = Alto:
@@ -749,8 +844,10 @@ objective.build = [accent]Construye: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Ensambla unidades: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destruye: [][lightgray]{0}[]x Unidades
objective.enemiesapproaching = [accent]Se aproximan enemigos a [lightgray]{0}[]
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]La produccion enemiga escalará en [lightgray]{0}[]
objective.enemyairunits = [accent]La producción de unidades aereas enemigas iniciará en [lightgray]{0}[]
objective.enemyunitproduction = [accent]La producción de unidades enemigas iniciará en [lightgray]{0}[]
objective.destroycore = [accent]Destruye el núcleo enemigo
objective.command = [accent]Dirige unidades
objective.nuclearlaunch = [accent]⚠ Lanzamiento nuclear detectado: [lightgray]{0}
@@ -812,7 +909,7 @@ sectors.wave = Oleada:
sectors.stored = Almacenado:
sectors.resume = Reanudar
sectors.launch = Lanzar
sectors.nolaunchcandidate = No Launch Sector
sectors.nolaunchcandidate = No hay sectores validos
sectors.viewsubmission = \ue80d Ver propuestas
sectors.select = Seleccionar
sectors.launchselect = Seleccionar destino de lanzamiento
@@ -838,6 +935,7 @@ sector.noswitch.title = No se pueden cambiar los sectores
sector.noswitch = Tal vez no puedas cambiar de sector mientras se encuentre bajo ataque.\n\nSector: [accent]{0}[] en [accent]{1}[]
sector.view = Ver sector
sector.foundationrequired = [lightgray] Núcleo: Foundation requerido
sector.shielded = [lightgray] Protegido con un escudo
threat.low = Baja
threat.medium = Media
@@ -845,10 +943,14 @@ threat.high = Alta
threat.extreme = Extrema
threat.eradication = Erradicación
difficulty.guide.title = Aviso
difficulty.guide = Si un sector te resulta demasiado difícil, puedes ajustar la dificultad de la campaña para que la experiencia sea más sencilla.
difficulty.guide.confirm = Ajustar Dificultad
difficulty.casual = Casual
difficulty.easy = Facil
difficulty.easy = Fácil
difficulty.normal = Normal
difficulty.hard = Dificil
difficulty.hard = Difícil
difficulty.eradication = Erradicación
difficulty.enemyHealthMultiplier = Salud del enemigo: {0}
@@ -864,7 +966,7 @@ planet.sun.name = Sol
sector.impact0078.name = Impacto 0078
sector.groundZero.name = Zona de Impacto
sector.craters.name = Los Cráteres
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Bosque Congelado
sector.ruinousShores.name = Costas Ruinosas
sector.stainedMountains.name = Montañas Manchadas
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Cañones Infestados
sector.planetaryTerminal.name = Terminal de Lanzamiento Interplanetario
sector.coastline.name = Litoral Húmedo
sector.navalFortress.name = Fortaleza Naval
sector.polarAerodrome.name = Aeródromo Polar
sector.atolls.name = Atolones
sector.testingGrounds.name = Campo de Pruebas
sector.perilousHarbor.name = Puerto Peligroso
@@ -892,27 +993,39 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Bastión Infestado
sector.frontier.name = Frontera
sector.sunkenPier.name = Muelle Hundido
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Fortaleza Geotérmica
sector.groundZero.description = La ubicación adecuada para empezar una vez más. Baja amenaza enemiga. Pocos recursos.\nReúne la mayor cantidad de plomo y cobre posible y sigue adelante.
sector.groundZero.description = La ubicación adecuada para empezar una vez más. Baja amenaza enemiga. Pocos recursos.\n\nReúne la mayor cantidad de plomo y cobre posible.\nSigue adelante.
sector.frozenForest.description = Incluso aquí, cerca de las montañas, se han extendido las esporas. Las gélidas temperaturas no las contendrán para siempre.\nDescubre la energía eléctrica. Construye generadores de combustión. Aprende a usar reparadores.
sector.saltFlats.description = En los límites del desierto se encuentran las Salinas. No hay muchos recursos en esta ubicación.\n\nEl enemigo ha creado un complejo de almacenamiento de recursos aquí. Erradica su núcleo. No dejes nada en pie.
sector.craters.description = El agua se ha acumulado en este cráter, reliquia de las antiguas guerras. Recupera la zona. Procesa la arena. Funde metacristal. Bombea agua para enfriar torretas y taladros.
sector.ruinousShores.description = Más allá de los páramos, se encuentra la costa. Antaño, esta ubicación albergó todo un sistema de defensa costera. Ya no queda mucho de aquello. Solo las estructuras de defensa más básicas han quedado ilesas, todo lo demás está reducido a chatarra.\nContinúa la expansión. Redescubre la tecnología.
sector.crateredBattleground.description = El agua se ha acumulado en este cráter, reliquia de las antiguas guerras. Recupera la zona. Recolecta arena. Funde metacristal. Bombea agua para enfriar torretas y taladros.
sector.ruinousShores.description = Más allá de los páramos, se encuentra la costa. Antaño, esta ubicación albergó todo un sistema de defensa costera. Ya no queda mucho de aquello. Solo las estructuras de defensa más básicas han quedado ilesas, todo lo demás está reducido a chatarra.\n\nContinúa la expansión. Redescubre la tecnología.
sector.stainedMountains.description = Más allá se encuentran las montañas, aún intactas por las esporas.\nExtrae el titanio que abunda en esta zona. Aprende a usarlo.\n\nLa presencia enemiga es mayor aquí. No les des tiempo para enviar sus unidades más fuertes.
sector.overgrowth.description = El área está cubierta de maleza, próxima a la fuente de las esporas.\nEl enemigo ha establecido un puesto de avanzada aquí. Construye unidades Mace. Destrúyelo.
sector.tarFields.description = Las afueras de una zona de producción de petróleo, entre las montañas y el desierto. Una de las pocas áreas con reservas de alquitrán utilizables.\nAunque está abandonada, esta zona tiene algunos escuadrones enemigos peligrosos cerca. No los subestimes.\n\n[lightgray]Investiga la tecnología de procesamiento de petróleo si es posible.
sector.desolateRift.description = Una zona extremadamente peligrosa. Recursos abundantes, y poco espacio. Alto riesgo de destrucción. Abandona el lugar lo antes posible. No te dejes engañar por el intervalo entre los ataques enemigos.
sector.nuclearComplex.description = Antigua instalación de producción y procesamiento de torio, reducida a ruinas.\n[lightgray] Investiga el torio y sus múltiples usos.\n\nGrandes cantidades de unidades enemigas patrullan la zona constantemente.
sector.fungalPass.description = Un área de transición entre las altas montañas y las tierras plagadas de esporas. Aquí se encuentra una pequeña base de reconocimiento enemiga.\nDestrúyela.\nUsa unidades Dagger y Crawler. Acaba con los dos núcleos.
sector.overgrowth.description = El área está cubierta de maleza, próxima al origen de las esporas.\n\nEl enemigo ha establecido un puesto de avanzada aquí. Construye unidades Mace. Destrúyelo.
sector.tarFields.description = Las afueras de una zona de producción de petróleo, entre las montañas y el desierto. Una de las pocas áreas con reservas de alquitrán utilizables.\nAunque está abandonada, esta zona tiene algunos escuadrones enemigos peligrosos cerca. No los subestimes.\n\nInvestiga la tecnología de procesamiento de petróleo si es posible.
sector.desolateRift.description = Una zona extremadamente peligrosa. Recursos abundantes, y poco espacio. Alto riesgo de destrucción.\n\nConstruye defensas terrestres y aereas lo antes posible. No te dejes engañar por la infrecuente naturaleza de los ataques enemigos.
sector.nuclearComplex.description = Antigua instalación de producción y procesamiento de torio, reducida a ruinas.\nInvestiga el reactor de torio y utilizalo para generación avanzada de energía.\n\nGrandes cantidades de unidades enemigas patrullan la zona constantemente en busca de atacantes.
sector.fungalPass.description = Un área de transición entre las altas montañas y las tierras plagadas de esporas. Aquí se encuentra una pequeña base de reconocimiento enemiga.\n\nUtiliza unidades Dagger. Destruye la base enemiga.
sector.biomassFacility.description = El origen de las esporas. Este es el centro en el que se investigaron, y donde fueron incialmente producidas.\nDescubre la tecnología restante que contiene. Cultiva esporas para producir combustibles y plásticos.\n\n[lightgray]Tras la caída de este complejo, las esporas fueron liberadas. Nada en este ecosistema local pudo combatir semejante organismo tan invasivo.
sector.windsweptIslands.description = Más allá de la costa, se encuentra esta remota cadena de islas. Las grabaciones muestran que aquí existieron estructuras relacionadas con la producción de [accent]Plastanio[].\n\nDefiéndete de las unidades navales enemigas. Establece una base en las islas. Investiga estas fábricas.
sector.windsweptIslands.description = Más allá de la costa, se encuentra esta remota cadena de islas. Las grabaciones muestran que aquí existieron estructuras relacionadas con la producción de plastanio.\n\nDefiéndete de las unidades navales enemigas. Establece una base en las islas. Investiga estas fábricas.
sector.extractionOutpost.description = Una base remota, construida por el enemigo con el propósito de lanzar recursos a otros sectores.\n\nLa tecnología de transporte de recursos entre sectores es esencial para la conquista a gran escala. Destruye la base. Investiga sus plataformas de lanzamiento.
sector.impact0078.description = Aquí yacen las ruinas de la primera nave de transporte interestelar que entró en este sistema.\n\nRecupera todo lo posible entre los escombros. Investiga cualquier tecnología intacta.
sector.planetaryTerminal.description = El objetivo final.\n\nEsta base costera alberga una estructura capaz de lanzar núcleos a planetas locales. Está extremadamente bien protegida.\n\nProduce unidades navales. Acaba con el enemigo lo antes posible. Analiza la estructura de lanzamiento.
sector.coastline.description = Se han detectado restos de tecnología de unidades navales en esta ubicación. Repele los ataques enemigos, captura este sector, y consigue esa tecnología.
sector.coastline.description = Se han detectado restos de tecnología de sintesís de aleación en esta ubicación. Repele los ataques enemigos, captura este sector, y consigue esa tecnología.
sector.navalFortress.description = El enemigo ha establecido una base en una remota isla naturalmente fortificada. Destruye este puesto de avanzada. Hazte con su tecnología naval avanzada, e investígala.
sector.facility32m.description = Este sector contiene las ruinas en descomposición de un puesto de fabricación de explosivos.\n\nCaptura esta área.Investiga el mezclador de explosivos. Produce compuesto explosivo para su uso como munición en torrretas.
sector.taintedWoods.description = [gray][optional objective][]\nRico en reservas de petróleo, este sector contiene una gran cantidad de esporas, haciendolo difícil de atravesar.\n\nUtiliza sus recursos para producir Plastanio. Repele al enemigo.
sector.sunkenPier.description = [gray][optional objective][]\nHace tiempo una plataforma petrolera en alta mar, esta instalación ha estado mucho tiempo en abandono.\n\nGrandes cantidades de unidades navales enemigas detectadas. Preparate para ataques desde múltiples direcciones.
sector.atolls.description = [gray][optional objective][]\nMúltiples bases navales enemigas han sido detectadas en esta ubicación.\n\nUtiliza la capacidad de carga de las unidades Mega para transportar fuerzas terrestres a posiciones de ataque. Construye unidades navales para destruir las bases en la periferia.
sector.frontier.description = Una pequeña base enemiga ha sido detectada aquí.\n\nConstruye unidades Mono para extraer recursos de manera más efectiva. Utiliza los reconstructores aditivos para construir unidades más fuertes.
sector.infestedCanyons.description = Mas allá de las montañas se extiende un río serpenteante, ahora cubierto por capas de musgo de esporas.\n\nResiste la ofensiva enemiga. Construye unidades navales. Elimina todos los núcleos.
sector.testingGrounds.description = [gray][optional objective][]\nUn valle desértico plagado de cráteres, usado anteriormente como un campo de pruebas para proyectos militares.\n\nDebido a la falta de agua, establecer una base aquí puede suponer un reto. Preparate para ataques desde múltiples direcciones.
sector.perilousHarbor.description = Múltiples bases enemigas se han establecido a lo largo de esta traicionera región costera.\n\nConstruye unidades navales y destruye sus fortificaciones.
sector.weatheredChannels.description = [gray][optional objective][]\nEste sistema de canales alberga una gran cantidad de recursos. Aterriza tu núcleo. Repele las oleadas enemigas para reclamarlos.\n\nEl enemigo tomará múltiples rutas para atacar tu infraestructura. Observa posibles señales de emboscadas y actúa en consideración.
sector.mycelialBastion.description = Este fortificado complejo se extiende en lo más profundo de las regiones infectadas de esporas, amenazando sectores adyacentes con unidades insectoides avanzadas.\n\nAtaca el complejo. Obtén su tecnología. Utiliza unidades capaces de pasar sobre los muros.
sector.littoralShipyard.description = Situado en los confines del mar central, esta base de producción naval contiene tecnología para construir unidades avanzadas.\n\nDestruyela y usa su tecnología para contribuir a alcanzar el objetivo final.
sector.onset.name = El Inicio
sector.aegis.name = Égida
@@ -966,6 +1079,10 @@ status.blasted.name = Explosión
status.corroded.name = Corrosión
status.unmoving.name = Inmóvil
status.boss.name = Guardián
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Idioma
settings.data = Datos del juego
@@ -985,6 +1102,13 @@ settings.clearresearch = Borrar investigaciones tecnológicas
settings.clearresearch.confirm = ¿Quieres eliminar todo el progreso de las investigaciones tecnológicas del modo campaña?
settings.clearcampaignsaves = Borrar datos de campaña
settings.clearcampaignsaves.confirm = ¿Quieres borrar tus partidas guardadas en el modo campaña?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent] < Pausado >
clear = Borrar
banned = [scarlet]Vetado
@@ -1015,8 +1139,9 @@ stat.frequency = Frecuencia
stat.targetsair = Apunta al aire
stat.targetsground = Apunta a tierra
stat.crushdamage = Daño de aplastamiento
stat.legsplashdamage = Daño de area por pisotón
stat.legsplashdamage = Daño de área por pisotón
stat.itemsmoved = Velocidad de movimiento
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Tiempo entre lanzamientos
stat.shootrange = Alcance
stat.size = Tamaño
@@ -1032,13 +1157,15 @@ stat.itemcapacity = Capacidad de objetos
stat.memorycapacity = Capacidad de memoria
stat.basepowergeneration = Generación de energía
stat.productiontime = Tiempo de producción
stat.warmuptime = Warmup Time
stat.warmuptime = Tiempo de calentamiento
stat.repairtime = Tiempo de reparación completa de bloques
stat.repairspeed = Velocidad de reparación
stat.weapons = Armas
stat.bullet = Proyectil
stat.moduletier = Categoría de módulo
stat.unittype = Tipo de unidad
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Aumento de velocidad
stat.range = Alcance
stat.drilltier = Taladrables
@@ -1047,6 +1174,7 @@ stat.boosteffect = Efecto de potenciador
stat.maxunits = Máximo de unidades activas
stat.health = Vida
stat.armor = Armadura
stat.armor.info = Daño aplicado = daño recibido - armadura.\nReducción del daño de hasta un 90%.
stat.buildtime = Tiempo de construcción
stat.maxconsecutive = Máximo consecutivo
stat.buildcost = Coste de construcción
@@ -1075,7 +1203,7 @@ stat.minetier = Nivel de taladro
stat.payloadcapacity = Capacidad de transporte
stat.abilities = Habilidades
stat.canboost = Puede volar
stat.boostingspeed = Boosting Speed
stat.boostingspeed = Velocidad al sobrevolar
stat.flying = Aéreo
stat.ammouse = Uso de munición
stat.ammocapacity = Capacidad de munición
@@ -1090,20 +1218,20 @@ stat.healing = Curación
stat.efficiency = [stat]{0}% Eficiencia
ability.forcefield = Área de Escudo
ability.forcefield.description = Projecta un campo de fuerza que absorve balas
ability.forcefield.description = Projecta un campo de fuerza que absorbe balas
ability.repairfield = Área de Reparación
ability.repairfield.description = Repara unidades cercanas
ability.statusfield = Área de Potenciación
ability.statusfield.description = Aplica un efecto de estado a unidades cercanas
ability.unitspawn = Fábrica
ability.unitspawn.description = Construye unidades
ability.shieldregenfield = Área de Regeneración de Armaduras
ability.shieldregenfield = Área de Regeneración de Armadura
ability.shieldregenfield.description = Regenera el escudo de unidades cercanas
ability.movelightning = Movimiento Relámpago
ability.movelightning.description = Lanza rayos mientras se mueve
ability.armorplate = Placa de blindaje
ability.armorplate.description = Reduce el daño recibido al disparar
ability.shieldarc = Area de Escudo
ability.shieldarc = Área de Escudo
ability.shieldarc.description = Proyecta un escudo de fuerza en forma de arco que absorbe balas
ability.suppressionfield = Área de Bloqueo de Regeneración
ability.suppressionfield.description = Detiene construcciones de reparación cercanas
@@ -1181,16 +1309,19 @@ bullet.splashdamage = [stat]{0}[lightgray] daño en área ~[stat] {1}[lightgray]
bullet.incendiary = [stat]incendiaria
bullet.homing = [stat]rastreadora
bullet.armorpierce = [stat]perforación de armadura
bullet.armorweakness = [red]{0}%[lightgray] debilidad contra armadura
bullet.armorpiercing = [stat]{0}%[lightgray] perforación de armadura
bullet.armorweakness = [red]{0}x[lightgray] debilidad contra armadura
bullet.partialarmorpierce = [stat]{0}%[lightgray] perforación de armadura
bullet.antiarmor = [stat]{0}x[lightgray] anti-armadura
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] daño límite
bullet.suppression = [stat]{0} seg[lightgray] supresión de reparación ~ [stat]{1}[lightgray] casillas
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
bullet.empboost = [stat]{0}%[lightgray] overdrive ~ [stat]{1}[lightgray]
bullet.empdamage = [stat]{0}%[lightgray] power damage
bullet.empslowdown = [stat]{0}%[lightgray] enemy power overdrive ~ [stat]{1}[lightgray]
bullet.empunitdamage = [stat]{0}%[lightgray] unit damage
bullet.empradius = [stat]{0}[lightgray] radio PEM en bloques
bullet.empboost = [stat]{0}%[lightgray] sobrecarga ~ [stat]{1}[lightgray]
bullet.empdamage = [stat]{0}%[lightgray] potencia de daño
bullet.empslowdown = [stat]{0}%[lightgray] sobrecarga de poder enemigo ~ [stat]{1}[lightgray]
bullet.empunitdamage = [stat]{0}%[lightgray] daño a unidad
bullet.interval = [stat]{0}/seg[lightgray] balas por intervalo:
bullet.frags = [stat]{0}[lightgray]x proyectiles fragmentados:
bullet.lightning = [stat]{0}[lightgray]x rayos ~ [stat]{1}[lightgray] daño
@@ -1232,10 +1363,10 @@ unit.items = objetos
unit.thousands = k
unit.millions = M
unit.billions = B
unit.shots = shots
unit.shots = tiros
unit.pershot = /disparo
unit.perleg = por pata
unit.perside = per side
unit.perside = por lado
category.purpose = Objetivo
category.general = General
category.power = Energía
@@ -1252,7 +1383,6 @@ setting.shadows.name = Sombras
setting.blockreplace.name = Sugerencias de bloques
setting.linear.name = Filtrado lineal
setting.hints.name = Consejos
setting.logichints.name = Consejos sobre "Bloques Lógicos"
setting.backgroundpause.name = Pausar en segundo plano
setting.buildautopause.name = Auto-pausar construcción
setting.doubletapmine.name = Doble clic para extraer minerales
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Desactivar mods si el juego no puede iniciarse
setting.animatedwater.name = Animaciones de terreno
setting.animatedshields.name = Animación de escudos
setting.playerindicators.name = Indicadores de jugadores
setting.showpings.name = Mostrar Pings
setting.showotherbuildplans.name = Mostrar planos de construcción de otros jugadores
setting.indicators.name = Indicadores de enemigos
setting.autotarget.name = Auto-apuntado
setting.keyboard.name = Controles de teclado y ratón
@@ -1270,8 +1402,10 @@ setting.fpscap.name = Límite de FPS
setting.fpscap.none = No
setting.fpscap.text = {0} FPS
setting.uiscale.name = Escala de interfaz
setting.uiscale.description = Es necesario reiniciar para aplicar los cambios.
setting.swapdiagonal.name = Construir siempre en diagonal
setting.uiscale.description = Se requiere reiniciar para aplicar los cambios.
setting.uiEdgePadding.name = Espaciado de bordes de UI
setting.uiEdgePadding.description = Añade espaciado a los bordes de la UI. Útil para pantallas con esquinas redondeadas o muescas.
setting.swapdiagonal.name = Colocación siempre diagonal
setting.screenshake.name = Vibración de pantalla
setting.bloomintensity.name = Intensidad de desenfoque de Bloom
setting.bloomblur.name = Difuminado de puntos de luz (Bloom)
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Intervalo de autoguardado
setting.seconds = {0} segundos
setting.milliseconds = {0} milisegundos
setting.fullscreen.name = Pantalla completa
setting.borderlesswindow.name = Ventana sin bordes
setting.borderlesswindow.name.windows = Ventana a pantalla completa
setting.borderlesswindow.description = Aplicar los cambios podría requerir un reinicio.
setting.fps.name = Mostrar FPS y ping
setting.console.name = Activar consola
setting.smoothcamera.name = Movimiento de cámara suave
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Volumen del ambiente
setting.mutemusic.name = Silenciar música
setting.sfxvol.name = Volumen del sonido
setting.mutesound.name = Silenciar sonido
setting.crashreport.name = Enviar registros de errores anónimos
setting.communityservers.name = Buscar lista de servidores de la comunidad
setting.savecreate.name = Guardado automático
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Comandar unidades
category.multiplayer.name = Multijugador
category.blocks.name = Seleccionar bloque
placement.blockselectkeys = \n[lightgray]Teclas: [{0},
ping.text = Ping:
keybind.ping.name = Posicionar Ping
keybind.respawn.name = Reaparecer
keybind.control.name = Controlar unidad
keybind.clear_building.name = Eliminar construcción
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Acción de unidad: No disparar
keybind.unit_stance_pursue_target.name = Acción de unidad: Seguir objetivo
keybind.unit_stance_patrol.name = Acción de unidad: Patrullar
keybind.unit_stance_ram.name = Acción de unidad: Embestir
keybind.unit_stance_boost.name = Acción de unidad: Sobrevolar
keybind.unit_stance_hold_position.name = Acción de unidad: Mantener la posición
keybind.unit_command_move.name = Comando de unidad: Moverse
keybind.unit_command_repair.name = Comando de unidad: Reparar
keybind.unit_command_rebuild.name = Comando de unidad: Reconstruir
keybind.unit_command_assist.name = Comando de unidad: Asistir al jugador
keybind.unit_command_mine.name = Comando de unidad: Minar
keybind.unit_command_boost.name = Comando de unidad: Sobrevolar
keybind.unit_command_load_units.name = Comando de unidad: Cargar unidades
keybind.unit_command_load_blocks.name = Comando de unidad: Cargar bloques
keybind.unit_command_unload_payload.name = Comando de unidad: Soltar carga
@@ -1446,8 +1579,8 @@ rules.hidebannedblocks = Ocultar bloques prohibidos
rules.infiniteresources = Recursos infinitos
rules.fillitems = Llenar el núcleo con recursos
rules.onlydepositcore = Sólo permitir depositar recursos en el núcleo
rules.coreunloaders = Allow Core Unloaders
rules.coreunloaders.info = When enabled, Serpulo unloaders can take items from the core.\nDoes not affect Erekir unloaders.
rules.coreunloaders = Permitir descargadores en núcleo
rules.coreunloaders.info = Cuando está activado, Los descargadores de Serpulo pueden tomar recursos del núcleo.\nNo afecta a los descargadores de Erekir.
rules.derelictrepair = Permitir reparar bloques abandonados
rules.reactorexplosions = Explosiones de reactores
rules.coreincinerates = Incinerar exceso de recursos en el núcleo
@@ -1478,22 +1611,24 @@ rules.cleanupdeadteams = Eliminar estructuras de equipos derrotados (JcJ)
rules.corecapture = Capturar núcleo al destruirlo
rules.polygoncoreprotection = Protección de núcleo poligonal
rules.placerangecheck = Comprobar rango de construcción
rules.protectcores = Protect Cores
rules.protectcores.info = When disabled, the core no-build radius won't affect this team.\nPlayers won't be assigned to unprotected teams.
rules.checkplacement = Check Placement
rules.checkplacement.info = When disabled, buildings of this team are ignored in placement range checks.
rules.protectcores = Proteger Núcleos
rules.protectcores.info = Cuando está desactivada, el radio de no construcción del núcleo no afectará a este equipo.\nLos jugadores no serán asignados a equipos desprotegidos.
rules.checkplacement = Verficar Colocación
rules.checkplacement.info = Cuando está desactivada, las construcciones de este equipo son ignoradas en los rangos de colocación.
rules.enemyCheat = La IA (Equipo Rojo) tiene recursos infinitos
rules.blockhealthmultiplier = Multiplicador de vida de estructuras
rules.blockdamagemultiplier = Multiplicador de daño de estructuras
rules.unitfactoryactivation = Retardo de activación de las fabricas de unidades
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Multiplicador de velocidad de producción de unidades
rules.unitcostmultiplier = Multiplicador de costo de unidades
rules.unithealthmultiplier = Multiplicador de vida de unidades
rules.unitdamagemultiplier = Multiplicador de daño de unidades
rules.unitcrashdamagemultiplier = Multiplicador de daño de colisión de unidades
rules.unitminespeedmultiplier = Multiplicador de velocidad de mineria de unidades
rules.logicunitcontrol = Logic Unit Control
rules.logicunitbuild = Logic Unit Building
rules.logicunitdeconstruct = Logic Unit Deconstruction
rules.logicunitcontrol = Control de unidades usando lógica
rules.logicunitbuild = Construción por unidades controladas con lógica
rules.logicunitdeconstruct = Deconstrucción por unidades controladas con lógica
rules.solarmultiplier = Multiplicador de energía solar
rules.unitcapvariable = Las categorías del núcleo alteran el límite máximo de unidades
rules.unitpayloadsexplode = Las cargas transportadas explotan con la unidad
@@ -1523,11 +1658,12 @@ rules.title.planet = Planeta
rules.lighting = Iluminación
rules.fog = Ocultar terreno inexplorado (Fog of War)
rules.invasions = Invasiones de sector enemigo
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Mostrar puntos de aparición de unidades enemigas
rules.randomwaveai = Oleada impredecible de IA
rules.legacylaunchpads = Mecánicas antiguas de la plataforma de lanzamiento
rules.legacylaunchpads.info = Permite usar plataformas de lanzamiento sin plataformas de aterrizaje, como en la versión 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Desactivado[lightgray] (Plataformas de lanzamiento antiguas activadas)
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = IA de las oleadas impredecible
rules.pauseDisabled = Desactivar la pausa
rules.fire = Fuego
rules.anyenv = <Cualquiera>
rules.explosions = Daño de explosiones a bloques/unidades
@@ -2049,6 +2185,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Refabricador de tanques
block.mech-refabricator.name = Refabricador de mechs
block.ship-refabricator.name = Refabricador de aeronaves
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Enrutador de carga reforzado
block.payload-mass-driver.name = Catapulta electromagnética de carga
block.small-deconstructor.name = Deconstructor pequeño
block.canvas.name = Lienzo
block.large-canvas.name = Lienzo grande
block.world-processor.name = Procesador estático
block.world-cell.name = Unidad de memoria estática
block.tank-fabricator.name = Fabricador de tanques
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Mantén[] sobre un bloque o unidad para reco
hint.payloadDrop = Pulsa [accent]][] para soltar la carga.
hint.payloadDrop.mobile = [accent]Mantén[] sobre un lugar vacío para soltar la carga.
hint.waveFire = Cuando las torretas [accent]Wave[] usen agua como munición, apagarán fuego e incendios cercanos automáticamente.
hint.generator = Los [accent]Generadores de combustión[] querman carbón para transmitir energía a bloques adyacentes.\n\nEl alcance de transmisión de energía se puede extender usando [accent]Nodos de energía[].
hint.guardian = Los [accent]Guardianes[] poseen una robusta armadura. Municiones débiles como el [accent]Cobre[] o el [accent]Plomo[] no son [scarlet]effectivas[] contra él.\n\nUsa torretas de mayor categoría o por ejemplo, munición de [accent]Grafito[] en torretas [accent]Salvo[] para derribar a los Guardianes con más facilidad.
hint.coreUpgrade = Los núcleos se pueden mejorar [accent]construyendo núcleos de mayor calidad encima[].\n\nColoca un núcleo [accent]Foundation[] sobre el núcleo [accent]Shard[]. Asegúrate de que no hay obstáculos cerca.
hint.serpuloCoreZone = :core-shard: [accent]Núcleos[] Adicionales pueden ser construidos en: Casillas de[accent]Núcleo[].
@@ -2154,6 +2293,16 @@ gz.zone2 = Cualquier estructura en el área será destruida al comenzar una olea
gz.zone3 = Ahora comenzará una oleada.\nPrepárate.
gz.finish = Construye más torretas, extrae más recursos,\ny defiéndete de todas las oleadas para [accent]capturar este sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Usa [accent]unidades[] para defender construcciones y atacar al enemigo.\nInvestiga y construye una :ground-factory: [accent]fábrica terrestre[].
fungalpass.tutorial2 = Selecciona unidades :dagger: [accent]Dagger[] en la fábrica.\nProduce 3 unidades.
@@ -2161,9 +2310,9 @@ frontier.tutorial1 = El :additive-reconstructor: [accent]Reconstructor aditivo[]
frontier.tutorial2 = Oleadas enemigas enviadas [accent]indefinidamente[] hasta que todos los núcleos enemigos sean [unlaunched]destruidos.
frontier.tutorial3 = [accent]Ataca rápidamente la base enemiga para evitar que las oleadas se vuelvan demasiado altas[].
atolls.destroy1 = Destroy the 2 enemy [accent]foundation cores[] first.\n[accent]Gain access to thorium[].
atolls.mega1 = Enter [accent]command mode[] and select the :mega:[accent]Mega[] units.
atolls.mega2 = Select the \ue87b [accent]Load Units[] command to have Mega units to pick up ground units.
atolls.destroy1 = Destruye los 2 [accent]núcleos foundation[] enemigos primero.\n[accent]Obtén acceso a torio[].
atolls.mega1 = Accede al [accent]modo comando[] y elige las unidades :mega:[accent]Mega[].
atolls.mega2 = Usa el comando \ue87b [accent]Load Units[] para que los Mega transporten unidades terrestres.
atolls.mega3 = Move the Mega units [accent]above[] ground units to load them in.
atolls.mega4 = [accent]Drop ground units here to attack.
atolls.mega5 = Select the \ue879 [accent]Unload Payload[] command to have Mega units drop their carried units.
@@ -2177,10 +2326,10 @@ atolls.carry2 = 1: Command Mega units to [accent]move over[] the ground units.
atolls.carry3 = 2: Select the \ue87b [accent]Load Units[] command in order to pick up the ground units with the Mega units.
atolls.carry4 = 3: Command and move the Mega carriers [accent]loaded with units[].
atolls.carry5 = 4: Select the \ue879 [accent]'Unload Payload'[] command in order for the Mega units to drop the ground units.
atolls.carry6 = These steps can be reviewed [accent]here[].
atolls.carry7 = Follow these instructions to airdrop more units near the enemy base.
atolls.noairunit = This base is too well-fortified to destroy with air units.
atolls.2strategies = There are two strategies to destroy this base.
atolls.carry6 = Estos pasos se pueden revisar [acento]aquí[].
atolls.carry7 = Sigue estas instrucciones para lanzar más unidades por aire cerca de la base enemiga.
atolls.noairunit = Esta base está demasiado fortificada como para ser destruida con unidades aéreas.
atolls.2strategies = Existen dos estrategias para destruir esta base.
onset.mine = Haz clic para minar :beryllium: [accent]berilio[] de las paredes.\n\nUsa [accent][[WASD] para moverte.
onset.mine.mobile = Toca para minar :beryllium: [accent]berilio[] de las paredes.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repara todas las unidades en su área. Req
block.radar.description = Descubre gradualmente el terreno y las unidades enemigas en un amplio radio. Requiere energía.
block.shockwave-tower.description = Daña y destruye proyectiles enemigos dentro de su radio de acción. Requiere cianógeno.
block.canvas.description = Muestra una imagen simple con una paleta predefinida. Editable.
block.large-canvas.description = Muestra una imagen simple con una paleta predefinida. Editable.
unit.dagger.description = Dispara proyectiles básicos a enemigos cercanos.
unit.mace.description = Ataca con llamaradas a enemigos cercanos.
@@ -2584,6 +2734,7 @@ lst.radar = Localiza unidades alrededor de una estructura con rango de detecció
lst.sensor = Recopila datos de una estructura o unidad.
lst.set = Establece una variable.
lst.operation = Realiza una operación sobre 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Salta al inicio de la lista de instrucciones.
lst.wait = Espera unos segundos.
lst.stop = Detiene la ejecución de este procesador.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Localiza un tipo específico de posición/estructura en cualqui
lst.getblock = Obtiene los datos de un bloque en cualquier lugar.
lst.setblock = Cambia los datos de un bloque en cualquier lugar.
lst.spawnunit = Crea una unidad en una localización.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Aplica o elimina un efecto de alteración de estado a una unidad.
lst.weathersense = Comprueba si un tipo de clima está activo.
lst.weatherset = Establece el estado actual de un tipo de clima.
@@ -2614,9 +2766,11 @@ lst.setprop = Establece una propiedad de una unidad o construcción.
lst.effect = Crea un efecto de partículas.
lst.sync = Sincroniza una variable a través de la red.\nSolo se invoca 10 veces por segundo como máximo.
lst.playsound = Reproduce un sonido.\nEl volumen y la panorámica pueden ser valores globales, o pueden ser calculados basados en posición.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Crea un nuevo marcador lógico en el mundo.\nUna ID para identificar este marcador debe proporcionarse.\nLos marcadores se limitan actualmente a 20,000 por mapa.
lst.setmarker = Establece una propiedad para un marcador.\nLa ID usada debe ser la misma que se uso en la instrucción Make Marker.
lst.localeprint = Añade el valor de una propiedad de localización al buffer de texto.\nPara establecer conjuntos de localización en el editor del mapa, revisa [accent]Información del mapa > Paquetes de localización[].\nSi el cliente es un dispositivo móvil, trata de imprimir primero una propiedad con terminación ".mobile".
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
@@ -2719,9 +2873,9 @@ lenum.emod = Modulo verdadero, el signo del resultado viene del divisor.
lenum.equal = Igual. Coacciona tipos.\nObjetos no-nulos coaccionados con números pasan a 1, si no coinciden pasan a 0.
lenum.notequal = No igual. Coacciona tipos.
lenum.strictequal = Igualdad estricta. No coacciona tipos.\nSe puede usar para comprobar si un resultado es [accent]null[].
lenum.shl = Cambia bits a izquierda.
lenum.shr = Cambia bits a derecha.
lenum.ushr = Unsigned bit-shift right.
lenum.shl = Desplaza bits a la izquierda.
lenum.shr = Desplaza bits a la derecha.
lenum.ushr = Desplazamiento de bits sin signo a la derecha.
lenum.or = Comprobación bit a bit OR.
lenum.land = Comprobación lógica AND.
lenum.and = Comprobación bit a bit AND.
@@ -2851,7 +3005,7 @@ lenum.blockhealth = Con cuanta salud los bloques empiezan.
lenum.blockdamage = Cuanto daño los bloques (torretas) realizan.
lenum.rtsminweight = Ventaja mínima necesaria para que un escuadrón ataque. Mayor -> más cautelosa.
lenum.rtsminsquad = Tamaño mínimo de un escuadrón de ataque.
lenum.maparea = Area jugable del mapa. Cualquier cosa fuera de esta area no será interactuable.
lenum.maparea = Área jugable del mapa. Cualquier cosa fuera de esta área no será interactuable.
lenum.ambientlight = Color de la iluminación ambiental. Usado cuando la iluminación está activada.
lenum.solarmultiplier = Multiplica la salida de energía de los paneles solares.
lenum.dragmultiplier = Multiplicador de arrastre del ambiente.
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Mängu ametlik viki
link.suggestions.description = Anna soovitusi
link.bug.description = Leidsid vea? Kirjuta siia
linkopen = See server saatis sulle lingi. Oled kindel, et tahad avada?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Lingi avamine ebaõnnestus!\nVeebiaadress kopeeriti.
screenshot = Kuvatõmmis salvestati: {0}
screenshot.invalid = Maailm on liiga suur: kuvatõmmise salvestamiseks ei pruugi olla piisavalt mälu.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Mäng läbi!
gameover.disconnect = Lahku
gameover.pvp = Võistkond[accent] {0}[] võitis!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Ootan järgmist kaarti...
highscore = [accent]Uus rekord!
copied = Kopeeritud.
indev.notready = See osa mängust ei ole veel valmis
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Helid
load.map = Maailmad
@@ -49,11 +52,19 @@ mods.browser.view-releases = Kuva Versioonid
mods.browser.noreleases = [scarlet]Ei leidnud versioone\n[accent]Ei leidnud selle modi jaoks ühtegi väljaannet. Kontrollige, kas modi repositooriumis on avaldatud versioone.
mods.browser.latest = <Uusim>
mods.browser.releases = Versioonid
mods.browser.fetching = Fetching Releases...
mods.github.open = Repo
mods.github.open-release = Väljastusleht
mods.browser.sortdate = Sorteeri uusimad enne
mods.browser.sortstars = Sorteeri tähtede järgi
export.file = Ekspordi Fail
import.file = Impordi Fail
copy.clipboard = Kopeeri Lõikelauale
import.clipboard = Impordi Lõikelaualt
workshop.browse = Browse Workshop
workshop.share = Jaga Workshop'is
schematic = Skeem
schematic.add = Salvesta Skeem...
schematics = Skeemid
@@ -61,12 +72,6 @@ schematic.search = Otsi skeemide hulgast...
schematic.replace = Selle nimega skeem juba eksisteerib. Asenda?
schematic.exists = Selle nimega skeem juba eksisteerib.
schematic.import = Impordi Skeem...
schematic.exportfile = Ekspordi Fail
schematic.importfile = Impordi Fail
schematic.browseworkshop = Lehitse Workshop'i
schematic.copy = Kopeeri Lõikelauale
schematic.copy.import = Impordi Lõikelaualt
schematic.shareworkshop = Jaga Workshop'is
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Peegelda Skeem
schematic.saved = Skeem salvestatud.
schematic.delete.confirm = See skeem hävitatakse täielikult.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Ühtegi maailma ei leitud!
invalid = Kehtetu
pickcolor = Vali Värv
color = Color
import = Import
export = Export
preparingconfig = Konfiguratsiooni Ettevalmistamine
preparingcontent = Sisu Ettevalmistamine
uploadingcontent = Sisu Üleslaadimine
content.createdby = Created by: {0}
uploadingpreviewfile = Eelvaate Faili Üleslaadimine
committingchanges = Muudatuste Teostamine
done = Valmis
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = This mod is unable to be loaded due to inva
mod.requiresversion = Requires game version: [red]{0}
mod.errors = Errors have occurred loading content.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]You have mods with errors.[] Either disable the affected mods or fix the errors before playing.
mod.enable = Enable
mod.requiresrestart = The game will now close to apply the mod changes.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Select a planet to start on.\nThis can be switched at
campaign.erekir = Newer, more polished content. Mostly linear campaign progression.\n\nHigher quality maps and overall experience.
campaign.serpulo = Older content; the classic experience. More open-ended.\n\nPotentially unbalanced maps and campaign mechanics. Less polished.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Olemas
techtree = Uurimispuu
techtree.select = Tech Tree Selection
@@ -235,6 +246,7 @@ server.kicked.vote = Sind hääletati mängust välja. Hüvasti!
server.kicked.clientOutdated = Aegunud versioon. Uuenda mängu!
server.kicked.serverOutdated = Aegunud server. Palu omanikul serverit uuendada!
server.kicked.banned = Sulle on keelatud selles serveris mängida.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = See server ei ühildu sinu platvormiga.
server.kicked.playerLimit = Selle serveri mängijate limiit on täis. Oota, kuni koht vabaneb.
server.kicked.recentKick = Sind visati hiljuti mängust välja.\nOota enne uuesti proovimist.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Mänguga ei saanud liituda ([accent]{0}[]).
connecting = [accent]Ühendamine...
reconnecting = [accent]Reconnecting...
connecting.data = [accent]Maailma andmete allalaadimine...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Port:
server.invalidport = Ebasobiv pordi number!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +352,10 @@ save.export = Ekspordi
save.import.invalid = [accent]See salvestis on kehtetu!
save.import.fail = [crimson]Salvestise importimine ebaõnnestus: [accent]{0}
save.export.fail = [crimson]Salvestise eksportimine ebaõnnestus: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Impordi
save.newslot = Salvestise nimi:
save.rename = Nimeta ümber
@@ -354,13 +375,12 @@ save.mode = Mänguviis: {0}
save.date = Viimati salvestatud: {0}
save.playtime = Mänguaeg: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Hoiatus
confirm = Kinnita
delete = Kustuta
view.workshop = Vaata Workshop'is
workshop.listing = Edit Workshop Listing
hide = Hide
ok = OK
open = Ava
customize = Kohanda reegleid
@@ -372,7 +392,6 @@ command.repair = Repair
command.rebuild = Rebuild
command.assist = Assist Player
command.move = Move
command.boost = Boost
command.enterPayload = Enter Payload Block
command.loadUnits = Load Units
command.loadBlocks = Load Blocks
@@ -383,7 +402,9 @@ stance.shoot = Stance: Shoot
stance.holdfire = Stance: Hold Fire
stance.pursuetarget = Stance: Pursue Target
stance.patrol = Stance: Patrol Path
stance.holdposition = Stance: Hold Position
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Ava link
@@ -430,6 +451,7 @@ saveimage = Salvesta pilt
unknown = <puudub>
custom = Mängija loodud
builtin = Sisse-ehitatud
modded = Modded
map.delete.confirm = Oled kindel, et soovid maailma kustutada? Seda ei saa tagasi võtta!
map.random = [accent]Suvaline maailm
map.nospawn = Selles maailmas ei ole mängijate tuumikuid!\nLisa redaktoris sellele maailmale {0} tuumik.
@@ -469,14 +491,6 @@ editor.rules = Reeglid:
editor.generation = Genereerimine:
editor.objectives = Objectives
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = World Processors
editor.worldprocessors.editname = Edit Name
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -490,12 +504,86 @@ editor.center = Center
editor.search = Search maps...
editor.filters = Filter Maps
editor.filters.mode = Gamemodes:
editor.filters.priorities = Priorities:
editor.filters.type = Map Type:
editor.filters.search = Search In:
editor.filters.author = Author
editor.filters.description = Description
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift X
editor.shifty = Shift Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Lahingulained
waves.team = Team
@@ -510,10 +598,10 @@ waves.spawn = spawn:
waves.spawn.all = <all>
waves.spawn.select = Spawn Select
waves.spawn.none = [scarlet]no spawns found in map
waves.spawn.first = [lightgray](first {0})
waves.max = max units
waves.guardian = Guardian
waves.preview = Eelvaade
waves.edit = Muuda...
waves.random = Random
waves.copy = Kopeeri puhvrisse
waves.load = Lae puhvrist
@@ -529,6 +617,7 @@ waves.search = Search waves...
waves.filter = Unit Filter
waves.units.hide = Hide All
waves.units.show = Show All
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = counts
@@ -539,7 +628,9 @@ all = All
editor.default = [lightgray]<Vaikimisi>
details = Üksikasjad...
edit = Muuda...
edit.menu = Edit...
variables = Vars
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Are you sure you want to clear all code from this processor?
logic.restart = Restart
logic.globals = Built-in Variables
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Joonista blokkide asemel võistkondi.
#unused
toolmode.underliquid = Under Liquids
toolmode.underliquid.description = Draw floors under liquid tiles.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Filtrid puuduvad! Lisa filtreid alloleva nupuga.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Laius:
height = Kõrgus:
@@ -749,8 +844,10 @@ objective.build = [accent]Build: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Build Unit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destroy: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Enemies approaching in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Destroy Enemy Core
objective.command = [accent]Command Units
objective.nuclearlaunch = [accent]⚠ Nuclear launch detected: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Unable to Switch Sectors
sector.noswitch = You may not switch sectors while an existing sector is under attack.\n\nSector: [accent]{0}[] on [accent]{1}[]
sector.view = View Sector
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Low
threat.medium = Medium
@@ -845,6 +943,10 @@ threat.high = High
threat.extreme = Extreme
threat.eradication = Eradication
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Sun
sector.impact0078.name = Impact 0078
sector.groundZero.name = Ground Zero
sector.craters.name = The Craters
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Frozen Forest
sector.ruinousShores.name = Ruinous Shores
sector.stainedMountains.name = Stained Mountains
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Planetary Launch Terminal
sector.coastline.name = Humid Coastline
sector.navalFortress.name = Naval Fortress
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = The optimal location to begin once more. Low enemy threat. Few resources.\nGather as much lead and copper as possible.\nMove on.
sector.frozenForest.description = Even here, closer to mountains, the spores have spread. The frigid temperatures cannot contain them forever.\n\nBegin the venture into power. Build combustion generators. Learn to use menders.
sector.saltFlats.description = On the outskirts of the desert lie the Salt Flats. Few resources can be found in this location.\n\nThe enemy has erected a resource storage complex here. Eradicate their core. Leave nothing standing.
sector.craters.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Past the wastes, is the shoreline. Once, this location housed a coastal defense array. Not much of it remains. Only the most basic defense structures have remained unscathed, everything else reduced to scrap.\nContinue the expansion outwards. Rediscover the technology.
sector.stainedMountains.description = Further inland lie the mountains, yet untainted by spores.\nExtract the abundant titanium in this area. Learn how to use it.\n\nThe enemy presence is greater here. Do not give them time to send their strongest units.
sector.overgrowth.description = This area is overgrown, closer to the source of the spores.\nThe enemy has established an outpost here. Build Titan units. Destroy it. Reclaim that which was lost.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Here lie remnants of the interstellar transport
sector.planetaryTerminal.description = The final target.\n\nThis coastal base contains a structure capable of launching Cores to local planets. It is extremely well guarded.\n\nProduce naval units. Eliminate the enemy as quickly as possible. Research the launch structure.
sector.coastline.description = Remnants of naval unit technology have been detected at this location. Repel the enemy attacks, capture this sector, and acquire the technology.
sector.navalFortress.description = The enemy has established a base on a remote, naturally-fortified island. Destroy this outpost. Acquire their advanced naval craft technology, and research it.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = The Onset
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Blasted
status.corroded.name = Corroded
status.unmoving.name = Unmoving
status.boss.name = Guardian
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Keel
settings.data = Mänguandmed
@@ -985,6 +1102,13 @@ settings.clearresearch = Clear Research
settings.clearresearch.confirm = Are you sure you want to clear all of your campaign research?
settings.clearcampaignsaves = Clear Campaign Saves
settings.clearcampaignsaves.confirm = Are you sure you want to clear all of your campaign saves?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Paus >
clear = Clear
banned = [scarlet]Banned
@@ -1017,6 +1141,7 @@ stat.targetsground = Sihib maapinnale
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Transportimise kiirus
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Aeg lendutõusude vahel
stat.shootrange = Ulatus
stat.size = Suurus
@@ -1039,6 +1164,8 @@ stat.weapons = Weapons
stat.bullet = Bullet
stat.moduletier = Module Tier
stat.unittype = Unit Type
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Kiiruse suurenemine
stat.range = Ulatus
stat.drilltier = Kaevandatav
@@ -1047,6 +1174,7 @@ stat.boosteffect = Kiirendaja mõju
stat.maxunits = Maks. aktiivseid väeüksuseid
stat.health = Elud
stat.armor = Armor
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Ehitamise aeg
stat.maxconsecutive = Max Consecutive
stat.buildcost = Ehitamise maksumus
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] hävituspunkti ~[stat] {1}[lightgray]
bullet.incendiary = [stat]süttiv
bullet.homing = [stat]isesihtiv
bullet.armorpierce = [stat]armor piercing
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Varjud
setting.blockreplace.name = Automatic Block Suggestions
setting.linear.name = Lineaarne tekstuurivastendus
setting.hints.name = Hints
setting.logichints.name = Logic Hints
setting.backgroundpause.name = Pause In Background
setting.buildautopause.name = Auto-Pause Building
setting.doubletapmine.name = Double-Tap to Mine
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Disable Mods On Startup Crash
setting.animatedwater.name = Animeeritud vesi
setting.animatedshields.name = Animeeritud kilbid
setting.playerindicators.name = Player Indicators
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Vaenlaste/Liitlaste osutid
setting.autotarget.name = Automaatne sihtimine
setting.keyboard.name = Hiire ja klaviatuuri juhtnupud
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Puudub
setting.fpscap.text = {0} kaadrit/s
setting.uiscale.name = Kasutajaliidese suurus[lightgray] (vajab mängu taaskäivitamist)[]
setting.uiscale.description = Restart required to apply changes.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Paiguta alati diagonaalselt
setting.screenshake.name = Ekraani värisemine
setting.bloomintensity.name = Bloom Intensity
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Salvestamise intervall
setting.seconds = {0} sekundit
setting.milliseconds = {0} milliseconds
setting.fullscreen.name = Täisekraan
setting.borderlesswindow.name = Äärteta ekraan[lightgray] (võib vajada mängu taaskäivitamist)
setting.borderlesswindow.name.windows = Borderless Fullscreen
setting.borderlesswindow.description = Restart may be required to apply changes.
setting.fps.name = Näita kaadrite arvu sekundis
setting.console.name = Enable Console
setting.smoothcamera.name = Smooth Camera
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Taustahelide tugevus
setting.mutemusic.name = Vaigista muusika
setting.sfxvol.name = Heliefektide tugevus
setting.mutesound.name = Vaigista heli
setting.crashreport.name = Saada automaatseid veateateid
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Loo automaatseid salvestisi
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Unit Command
category.multiplayer.name = Mitmikmäng
category.blocks.name = Block Select
placement.blockselectkeys = \n[lightgray]Key: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Respawn
keybind.control.name = Control Unit
keybind.clear_building.name = Clear Building
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = [scarlet]Vaenlastel[] on lõputult ressursse
rules.blockhealthmultiplier = Block Health Multiplier
rules.blockdamagemultiplier = Block Damage Multiplier
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Väeüksuste tootmiskiiruse kordaja
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Väeüksuste elude kordaja
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Fire
rules.anyenv = <Any>
rules.explosions = Block/Unit Explosion Damage
@@ -2049,6 +2185,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tank Refabricator
block.mech-refabricator.name = Mech Refabricator
block.ship-refabricator.name = Ship Refabricator
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Reinforced Payload Router
block.payload-mass-driver.name = Payload Mass Driver
block.small-deconstructor.name = Small Deconstructor
block.canvas.name = Canvas
block.large-canvas.name = Large Canvas
block.world-processor.name = World Processor
block.world-cell.name = World Cell
block.tank-fabricator.name = Tank Fabricator
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Tap and hold[] a small block or unit to pick
hint.payloadDrop = Press [accent]][] to drop a payload.
hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a payload there.
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
hint.generator = :combustion-generator: [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with :power-node: [accent]Power Nodes[].
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or :graphite: [accent]Graphite[] :duo:Duo/:salvo:Salvo ammunition to take Guardians down.
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a :core-foundation: [accent]Foundation[] core over the :core-shard: [accent]Shard[] core. Make sure it is free from nearby obstructions.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts.
gz.zone3 = A wave will begin now.\nGet ready.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Fires standard bullets at all nearby enemies.
unit.mace.description = Fires streams of flame at all nearby enemies.
@@ -2540,7 +2690,7 @@ unit.risso.description = Fires a barrage of missiles and bullets at all nearby e
unit.minke.description = Fires shells and standard bullets at nearby ground targets.
unit.bryde.description = Fires long-range artillery shells and missiles at enemies.
unit.sei.description = Fires a barrage of missiles and armor-piercing bullets at enemies.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies. Constructs flare units.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies.
unit.alpha.description = Defends the Shard core from enemies. Builds structures.
unit.beta.description = Defends the Foundation core from enemies. Builds structures.
unit.gamma.description = Defends the Nucleus core from enemies. Builds structures.
@@ -2584,6 +2734,7 @@ lst.radar = Locate units around a building with range.
lst.sensor = Get data from a building or unit.
lst.set = Set a variable.
lst.operation = Perform an operation on 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Jump to the top of the instruction stack.
lst.wait = Wait a certain number of seconds.
lst.stop = Halt execution of this processor.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Locate a specific type of position/building anywhere on the map
lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Mindustry wiki ofiziala
link.suggestions.description = Proposatu ezaugarri berriak
link.bug.description = Akatsen bat aurkitu duzu? Eman berri hemen
linkopen = Zerbitzari honek esteka bat bidali dizu. Ziur ireki nahi duzula?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Huts egin du esteka irekitzean!\nURL-a zure arbelera kopiatu da.
screenshot = Pantaila-argazkia {0} helbidean gorde da
screenshot.invalid = Mapa handiegia, baliteke pantaila-argazkirako memoria nahiko ez egotea.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Partida amaitu da
gameover.disconnect = Deskonektatu
gameover.pvp = [accent] {0}[] taldeak irabazi du!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Hurrengo maparen zain...
highscore = [accent]Marka berria!
copied = Kopiatuta.
indev.notready = Jolasaren atal hau ez dago prest
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Soinuak
load.map = Mapak
@@ -49,11 +52,19 @@ mods.browser.view-releases = Ikusi bertsioak
mods.browser.noreleases = [scarlet]Ez da bertsiorik aurkitu\n[accent]Ez da mod honen bertsiorik aurkitu. Egiaztatu mod-aren biltegian bertsiorik argitaratu ote den.
mods.browser.latest = <Azkena>
mods.browser.releases = Bersioak
mods.browser.fetching = Fetching Releases...
mods.github.open = Biltegia
mods.github.open-release = Bertsioaren orria
mods.browser.sortdate = Ordenatu dataren arabera
mods.browser.sortstars = Ordenatu izarren arabera
export.file = Esportatu fitxategia
import.file = Inportatu fitxategia
copy.clipboard = Kopiatu arbelera
import.clipboard = Inportatu arbeletik
workshop.browse = Browse Workshop
workshop.share = Partekatu tailerrean
schematic = Eskema
schematic.add = Gorde eskema...
schematics = Eskemak
@@ -61,12 +72,6 @@ schematic.search = Search schematics...
schematic.replace = Badago izen bereko eskema bat. Ordeztu nahi duzu?
schematic.exists = Badago izen bereko eskema bat.
schematic.import = Inportatu eskema...
schematic.exportfile = Esportatu fitxategia
schematic.importfile = Inportatu fitxategia
schematic.browseworkshop = Arakatu tailerra
schematic.copy = Kopiatu arbelera
schematic.copy.import = Inportatu arbeletik
schematic.shareworkshop = Partekatu tailerrean
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: itzulbiratu eskema
schematic.saved = Eskema gordeta.
schematic.delete.confirm = Eskema hau behin betiko suntsituko da.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Ez da maparik aurkitu!
invalid = Baliogabea
pickcolor = Hautatu kolorea
color = Kolorea
import = Import
export = Export
preparingconfig = Konfigurazioa prestatzen
preparingcontent = Edukia prestatzen
uploadingcontent = Edukia igotzen
content.createdby = Created by: {0}
uploadingpreviewfile = Aurrebista fitxategia igotzen
committingchanges = Aldaketak aplikatzen
done = Egina
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Mod hau ezin da kargatu dependentzia elbarr
mod.requiresversion = Beharrezko joko bertsioa: [red]{0}
mod.errors = Erroreak gertatu dira edukia kargatzean.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]Erroreak dituzten mod-ak dituzu.[] Desgaitu kaltetutako mod-ak edo konpondu erroreak jolastu aurretik.
mod.enable = Gaitu
mod.requiresrestart = Jolasa itxi egingo da mod-aren aldaketak aplikatzeko.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]hautatu hasteko planeta.\nHau edonoiz aldatu daiteke.
campaign.erekir = [accent]Jokalari berrientzak aholkatua.[]\n\nEduki berriagoa eta landuagoa. Kanpaina aurreratze lineala.\n\nKalitate hobeko mapak eta esperientzia orokorra.
campaign.serpulo = [scarlet]Ez aholkatua jokalari berrientzat.[]\n\nEduki zaharra; esperientzia klasikoa. Irekiagoa.\n\nAgian desorekatuak dauden mapak eta kanpainaren mekanikak. Ez horren landua.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Ikertua
techtree = Teknologia zuhaitza
techtree.select = Teknologia zuhaitzeko hautaketa
@@ -235,6 +246,7 @@ server.kicked.vote = Botoen bidez kanporatu zaituzte. Agur.
server.kicked.clientOutdated = Bezero zaharkitua! Eguneratu zure jolasa!
server.kicked.serverOutdated = Zerbitzari zaharkitua! Eskatu ostalariari eguneratzeko!
server.kicked.banned = Zerbitzari honetan debekatuta zaude.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Zerbitzari hau ez da zure konpilazio motarekin bateragarria.
server.kicked.playerLimit = Zerbitzari hau beteta dago. Itxaron zirrikitu bat libratu arte.
server.kicked.recentKick = Duela gutxi kanporatu zaituzte.\nItxaron berriro konektatzeko.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Denbora agortuta UDPren argazkiak jasotzen zituen b
cantconnect = Ezin izan da partidara elkartu ([accent]{0}[]).
connecting = [accent]Konektatzen...
reconnecting = [accent]Birkonektatzen...
connecting.data = [accent]Munduaren datuak kargatzen...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Ataka:
server.invalidport = Ataka zenbaki baliogabea!
server.error.addressinuse = [scarlet]Errorea zerbitzaria 6567 portuan konektatzerakoan.[]\n\nZiurtatu beste Mindustry zerbitzaririk ez dabilela zure gailuan edo sarean!
@@ -335,6 +352,10 @@ save.export = Esportatu gordetako partida
save.import.invalid = [accent]Gordetako partida hau baliogabea da!
save.import.fail = [crimson]Huts egin du gordetako partida inportatzean: [accent]{0}
save.export.fail = [crimson]Huts egin du gordetako partida esportatzean: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Inportatu gordetako partida
save.newslot = Gordetako partidaren izena:
save.rename = Aldatu izena
@@ -354,13 +375,12 @@ save.mode = Jolas-modua: {0}
save.date = Azkenekoz gordeta: {0}
save.playtime = Jolastua: {0}
dontshowagain = Ez erakutsi berriro
warn.32bit.title = 32 biteko deprekuzioaren abisua
warn.32bit = [red]32-bit[] eko Mindustry bertsioa erabiltzen zabiltza.\nJavaren bertsio berrienek 32-biteko Windowsen soportea alde batera utzi dutenez, [red]32-biteko bertsioaren soportea ez da eguneratuko etorkizunean[].\n\nMesedez, eguneratu 64 biteko makina batera eta ziurtatu Mindustryren 64 biteko bertsioa deskargatuta duzula.\n\nMindustry exekutatzen ari bazara JAR fitxategi gisa, ziurtatu 64 biteko Java erabiltzen ari zarela.
warning = Abisua.
confirm = Baieztatu
delete = Ezabatu
view.workshop = Ikusi tailerrean
workshop.listing = Editatu tailerreko zerrenda
hide = Hide
ok = Ados
open = Ireki
customize = Aldatu arauak
@@ -372,7 +392,6 @@ command.repair = Konpondu
command.rebuild = Berreraiki
command.assist = Jokalaria lagundu
command.move = Mugitu
command.boost = Bultzatu
command.enterPayload = Karga erabilgarriko blokea sartu
command.loadUnits = Unitateak kargatu
command.loadBlocks = Blokeak kargatu
@@ -383,7 +402,9 @@ stance.shoot = Jarrera: Tiro egin
stance.holdfire = Jarrera: Su-etena
stance.pursuetarget = Jarrera: Objetiboa jarraitu
stance.patrol = Jarrera: Patruila bidea
stance.holdposition = Stance: Hold Position
stance.ram = Jarrera: Ram\n[lightgray]Mugimendua lerro zuzenean, biderik bilatu gabe
stance.boost = Boost
stance.mineauto = Meatzaritza automatikoa
stance.mine = Minatutako objektua: {0}
openlink = Ireki esteka
@@ -430,6 +451,7 @@ saveimage = Gorde irudia
unknown = Ezezaguna
custom = Pertsonalizatua
builtin = Jolas barnekoa
modded = Modded
map.delete.confirm = Ziur mapa hau ezabatu nahi duzula? Ekintza hau ezin da desegin!
map.random = [accent]Ausazko mapa
map.nospawn = Mapa honek ez du muinik jokalaria sortu dadin! Gehitu muin {0} bat mapa honi editorean.
@@ -469,14 +491,6 @@ editor.rules = Arauak:
editor.generation = Sorrarazi:
editor.objectives = Helburuak
editor.locales = Eskualde-konfigurazioko paketeak
editor.patches.guide = Adabakien gida
editor.patches = Eduki adabakiak
editor.patch = Adabaki multzoa: {0}
editor.patches.none = [lightgray]Ez dago adabaki multzorik kargatuta.
editor.patches.errors = Adabaki multzoen erroreak
editor.patches.importerror = Errorea adabakien multzoa inportatzean
editor.patches.delete.confirm = Ziur zaude adabaki multzo hau ezabatu nahi duzula?
editor.patch.fields = {0} eremuak
editor.worldprocessors = Munduko prozesadoreak
editor.worldprocessors.editname = Izena editatu
editor.worldprocessors.none = [lightgray]Ez dira munduko prozesadore blokeak aurkitu!\nGehitu bat mapa-editorean edo erabili \ue813 Gehitu botoia segituan.
@@ -490,12 +504,86 @@ editor.center = Zentroa
editor.search = Bilatu mapak...
editor.filters = Filtratu mapak
editor.filters.mode = Joko moduak:
editor.filters.priorities = Priorities:
editor.filters.type = Mapa mota:
editor.filters.search = Bilatu:
editor.filters.author = Egilea
editor.filters.description = Deskripzioa
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift X
editor.shifty = Shift Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Eduki adabakiak
patch.set = Patchset: {0}
patch.none = [lightgray]Ez dago adabaki multzorik kargatuta.
patch.errors = Adabaki multzoen erroreak
patch.importerror = Errorea adabakien multzoa inportatzean
patch.delete.confirm = Ziur zaude adabaki multzo hau ezabatu nahi duzula?
patch.path = Path:
patch.fields = {0} eremuak
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Lantegia
waves.title = Boladak
waves.team = Taldea
@@ -510,10 +598,10 @@ waves.spawn = agerpen puntua:
waves.spawn.all = <all>
waves.spawn.select = Agerpen puntua aukeratu
waves.spawn.none = [scarlet]ez da mapan agerpen punturik aurkitu
waves.spawn.first = [lightgray](first {0})
waves.max = unitate maximoa
waves.guardian = Zaindaria
waves.preview = Aurrebista
waves.edit = Editatu...
waves.random = Ausaz
waves.copy = Kopiatu arbelera
waves.load = Kargatu arbeletik
@@ -529,6 +617,7 @@ waves.search = Olatuak bilatu...
waves.filter = Unitate-iragazkia
waves.units.hide = Ezkutatu denak
waves.units.show = Erakutsi denak
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = zenbaketak
@@ -539,7 +628,9 @@ all = Denak
editor.default = [lightgray]<Lehenetsia>
details = Xehetasunak...
edit = Editatu...
edit.menu = Edit...
variables = aldagaiak
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Ziur zaude prozesadore honen kode guztia garbitu nahi duzula?
logic.restart = Berrabiarazi
logic.globals = Sartutako aldagaiak
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Marraztu taldeak blokeen ordez.
#unused
toolmode.underliquid = Likidoen Azpian
toolmode.underliquid.description = Mosaiko likidoen azpian solairuak marraztea.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Iragazkirik ez! Gehitu bat beheko botoiarekin.
@@ -678,6 +771,8 @@ locales.showsame = Lokal desberdinetan balio berberak dituzten propietateak erak
locales.viewproperty = Lokal guztietan erakutsi
locales.viewing = "{0}" propietatea ikusten
locales.addicon = Ikonoa erantsi
locales.property.name = name
locales.property.text = text
width = Zabalera:
height = Altuera:
@@ -749,8 +844,10 @@ objective.build = [accent]Eraiki: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Unitatea eraiki: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Suntsitu: [][lightgray]{0}[]x Unitate
objective.enemiesapproaching = [accent]Etsaiak gerturatzen [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Etsaien ekoizketa eskalatzen [lightgray]{0}[]
objective.enemyairunits = [accent]Etsaien aire unitateen ekoizketaren hasiera [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Suntsitu etsai nukleoa
objective.command = [accent]Unitateak agindu
objective.nuclearlaunch = [accent]⚠ Jaurtiketa nuklearra detektatuta: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Sektoreak ezin dira aldatu.
sector.noswitch = Ezin duzu sektorez aldatu lehendik dagoen sektore bat erasopean dagoen bitartean.\n\nSektorea: [accent]{0}[] [accent]{1}[]-n
sector.view = Ikusi sektorea
sector.foundationrequired = [lightgray] Nukleoa: Fundazioa beharrezkoa
sector.shielded = [lightgray] Shielded
threat.low = Txikia
threat.medium = Ertaina
@@ -845,6 +943,10 @@ threat.high = Handia
threat.extreme = Sekulakoa
threat.eradication = Desagerrarazpena
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Kasuala
difficulty.easy = Erraza
difficulty.normal = Normala
@@ -864,7 +966,7 @@ planet.sun.name = Sun
sector.impact0078.name = Impact 0078
sector.groundZero.name = Ground Zero
sector.craters.name = The Craters
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Frozen Forest
sector.ruinousShores.name = Ruinous Shores
sector.stainedMountains.name = Stained Mountains
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Planetary Launch Terminal
sector.coastline.name = Humid Coastline
sector.navalFortress.name = Naval Fortress
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = Kokapen ezin hobea berriro hasteko. Etsaiaren mehatxu txikia. Baliabide gutxi.\nAhalik eta berun eta kobre gehien bildu.\nAurrera.
sector.frozenForest.description = Hemen ere, mendietatik hurbilago, esporak zabaldu dira. Tenperatura hotzek ezin dituzte betiko eduki.\n\nHasi agintea lortzen. Eraiki errekuntza-sorgailuak. Konpontzaileak erabiltzen ikasi.
sector.saltFlats.description = Basamortuaren kanpoaldean Gatz Etxeak daude. Leku honetan baliabide gutxi aurki daitezke.\n\nEtsaiak baliabideak gordetzeko gune bat eraiki du hemen. Nukleoa desagerrarazi. Ez utzi ezer zutik.
sector.craters.description = Krater honetan ura metatu da, gerra zaharren erlikia. Eremua erreklamatu. Bildu hondarra. Metaglasa usaintsua. Ponpatu ura dorreak eta zulagailuak hozteko.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Hondakinak pasatuta, itsasertza dago. Behin, leku horretan kostaldeko defentsa bat zegoen. Ez da asko geratzen. Defentsa-egitura oinarrizkoenak bakarrik geratu dira zutik, gainerako guztia hondatuta.\nJarraitu kanpora zabaltzen. Teknologia berraurkitu.
sector.stainedMountains.description = Barrurago daude mendiak, baina esporarik gabe.\nAtera hemen dagoen titanio ugaria. Ikasi erabiltzen.\n\nEtsaien presentzia handiagoa da hemen. Ez eman denborarik unitate indartsuenak bidaltzeko.
sector.overgrowth.description = Eremu hau landarez gainezka dago, esporen jatorritik gertuago.\nEtsaiak postu bat ezarri du hemen. Titan unitateak eraiki. Suntsitu. Galdutakoa erreklamatu.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Sistema honetan lehen aldiz sartu zen izarrartek
sector.planetaryTerminal.description = Azken helburua.\n\nKostaldeko base horrek nukleoak planeta lokaletara jaurtitzeko gai den egitura du. Oso ondo babestuta dago.\n\nItsasontzi-unitateak ekoiztu. Ezabatu etsaia ahalik eta azkarren. Jaurtiketa egitura ikertu.
sector.coastline.description = Itsasontzi-unitateen teknologia-hondarrak hauteman dira toki horretan. Etsaien erasoei aurre egin, sektore hau harrapatu eta teknologia eskuratu.
sector.navalFortress.description = Etsaiak base bat ezarri du uharte urrun eta gotortu batean. Suntsitu postu aurreratu hau. Ontzi-teknologia aurreratua eskuratu eta ikertu.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = The Onset
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Madarikatuta
status.corroded.name = Janda
status.unmoving.name = Geldi
status.boss.name = Zaindari
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Hizkuntza
settings.data = Jolasaren datuak
@@ -985,6 +1102,13 @@ settings.clearresearch = Ikerketa ezabatu
settings.clearresearch.confirm = Ziur zaude zure kanpainaren ikerketa guztia ezabatu nahi duzula?
settings.clearcampaignsaves = Ezabatu kanpainan gordetako partidak
settings.clearcampaignsaves.confirm = Ziur zaude zure kanpaina guztiak ezabatu nahi dituzula?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Pausatuta >
clear = Garbitu
banned = [scarlet]Debekatuta
@@ -1017,6 +1141,7 @@ stat.targetsground = Lurrera tirokatzen du
stat.crushdamage = Zapalketak eragindako kaltea
stat.legsplashdamage = Hanketako zipriztinek eragindako kalteak.
stat.itemsmoved = Garraio-abiadura
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Egozketen arteko denbora
stat.shootrange = Irismena
stat.size = Neurria
@@ -1039,6 +1164,8 @@ stat.weapons = Armak
stat.bullet = Bala
stat.moduletier = Modulu maila
stat.unittype = Unitate mota
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Abiadura areagotzea
stat.range = Irismena
stat.drilltier = Ustiagarriak
@@ -1047,6 +1174,7 @@ stat.boosteffect = Indartze-efektua
stat.maxunits = Gehieneko unitate aktiboak
stat.health = Osasuna
stat.armor = Armadura
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Eraikitze-denbora
stat.maxconsecutive = Elkarren segidako maximoa
stat.buildcost = Eraikitze-kostua
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] ingurune-kaltea ~[stat] {1}[lightgray
bullet.incendiary = [stat]su-eragilea
bullet.homing = [stat]gidatua
bullet.armorpierce = [stat]armadura zulatzea
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] kalteen muga
bullet.suppression = [stat]{0} seg[lightgray] konponketa kentzea ~ [stat]{1}[lightgray] teilak
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Itzalak
setting.blockreplace.name = Bloke proposamen automatikoak
setting.linear.name = Iragazte lineala
setting.hints.name = Pistak
setting.logichints.name = Logika aholkuak
setting.backgroundpause.name = Pausatu atzeko planoan
setting.buildautopause.name = Eraikina automatikoki pausatu
setting.doubletapmine.name = Ukitu bikoitza minatzeko.
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Modak desgaitu hasierako istripuan
setting.animatedwater.name = Animatutako ura
setting.animatedshields.name = Animatutako ezkutuak
setting.playerindicators.name = Jokalariaren adierazleak
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Etsai/Aliatu adierazleak
setting.autotarget.name = Punteria automatikoa
setting.keyboard.name = Sagu+Teklatu kontrolak
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Bat ere ez
setting.fpscap.text = {0} FPS
setting.uiscale.name = Interfaze-eskala[lightgray] (berrabiarazi behar da)[]
setting.uiscale.description = Berrabiarazi egin behar da aldaketak aplikatzeko.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Kokatu beti diagonalean
setting.screenshake.name = Pantailaren astindua
setting.bloomintensity.name = Bloom intentsitatea
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Gordetzeko tartea
setting.seconds = {0} segundo
setting.milliseconds = {0} milisegundo
setting.fullscreen.name = Pantaila osoa
setting.borderlesswindow.name = Ertzik gabeko leihoa[lightgray] (berrabiaraztea behar lezake)
setting.borderlesswindow.name.windows = Ertzik gabeko pantaila osoa
setting.borderlesswindow.description = Berrabiarazi egin behar da aldaketak aplikatzeko.
setting.fps.name = Erakutsi FPS
setting.console.name = Gaitu kontsola
setting.smoothcamera.name = Kamera leuna
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Giroaren bolumena
setting.mutemusic.name = Isilarazi musika
setting.sfxvol.name = Efektuen bolumena
setting.mutesound.name = Isilarazi soinua
setting.crashreport.name = Bidali kraskatze txosten automatikoak
setting.communityservers.name = Eskuratu komunitate zerbitzarien zerrenda
setting.savecreate.name = Gorde automatikoki
setting.steampublichost.name = Jokoaren ikusgarritasun publikoa
@@ -1336,6 +1466,8 @@ category.command.name = Unitateko Agintea
category.multiplayer.name = Hainbat jokalari
category.blocks.name = Blokea aukeratu
placement.blockselectkeys = \n[lightgray]Giltza: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Berpizte puntua
keybind.control.name = Kontrol unitatea
keybind.clear_building.name = Garrbitu eraikina
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Unitatearen jarrera: Eutsi sua
keybind.unit_stance_pursue_target.name = Unitatearen jarrera: Helburua jarraitu
keybind.unit_stance_patrol.name = Unitatearen jarrera: Patruila
keybind.unit_stance_ram.name = Unitatearen jarrera: Aharia
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unitateko agindua: Mugitu
keybind.unit_command_repair.name = Unitateko agindua: Konponketa
keybind.unit_command_rebuild.name = Unitateko agindua: Berreraiki
keybind.unit_command_assist.name = Unitateko agindua: Laguntza
keybind.unit_command_mine.name = Unitateko agindua: Minatu
keybind.unit_command_boost.name = Unitateko agindua: Bultzatu
keybind.unit_command_load_units.name = Unitateko agindua: Karga unitateak
keybind.unit_command_load_blocks.name = Unitateko agindua: Kargatu blokeak
keybind.unit_command_unload_payload.name = Unitateko agindua: Deskargatu karga erabilgarria
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = AI-k (talde gorriak) baliabide amaigabeak ditu
rules.blockhealthmultiplier = Blokeen osasun biderkatzailea
rules.blockdamagemultiplier = Blokeen kalte biderkatzailea
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Unitateen sorrerarako abiadura-biderkatzailea
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Unitateen osasun-biderkatzailea
@@ -1526,8 +1661,9 @@ rules.invasions = Etsaien sektorearen inbasioak
rules.legacylaunchpads = Oinordetzan hartutako jaurtiketa-plataformaren mekanika
rules.legacylaunchpads.info = 7.0 bertsioan bezala, lurreratze-plataformarik gabeko jaurtiketa-plataformak erabiltzea baimentzen du.
landingpad.legacy.disabled = [scarlet]\ue815 Desgaituta[lightgray] (Oinordetzan hartutako jaurtiketa plataforma gaitu)
rules.showspawns = Etsaien spawn-ak erakutsi
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Olatu aurreikusezinen AI
rules.pauseDisabled = Disable Pausing
rules.fire = Sua
rules.anyenv = <Any>
rules.explosions = Blokea/Unitateko leherketa kalteak
@@ -2049,6 +2185,9 @@ block.disperse.name = Sakabanatu
block.afflict.name = Atsekabetu
block.lustre.name = Distira
block.scathe.name = Astindu
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tankeen berregituratzailea
block.mech-refabricator.name = Mekaniko berregituratzailea
block.ship-refabricator.name = Ontzi berregituratzailea
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Karga erabilgarriaren bideratzaile indart
block.payload-mass-driver.name = Karga erabilgarriaren masa-gidaria
block.small-deconstructor.name = Deseraikitzaile txikia
block.canvas.name = Oihala
block.large-canvas.name = Large Canvas
block.world-processor.name = Munduko prozesadorea
block.world-cell.name = Munduko zelula
block.tank-fabricator.name = Tanke fabrikatzailea
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Sakatu eta eutsi[] bloke edo unitate txikia
hint.payloadDrop = Sakatu [accent]][] karga erabilgarria botatzeko.
hint.payloadDrop.mobile = [accent]Sakatu eta eutsi[] hutsik dagoen kokaleku bat karga erabilgarria hor botatzeko.
hint.waveFire = Munizio gisa ura duten [accent]Olatu[] dorreak automatikoki itzaliko dituzte inguruko suteak.
hint.generator = :combustion-generator: [accent]Errekuntza sorgailuak[] ikatza erre eta energia ondoko blokeetara garraiatzen dute.\n\nPotentziatransmisioaren irismena zabaldu daiteke :power-node: [accent]Potentzia nodoekin[].
hint.guardian = [accent]Zaindari[] unitateak blindatuta daude. Munizio ahula, hala nola [accent]Kobrea[] edo [accent]Beruna[] [scarlet]ez eraginkorra[] da.\n\nErabili maila handiagoko dorreak edo :graphite: [accent]Grafitozko[] :duo:Duo/:salvo:Salba munizioa.
hint.coreUpgrade = Nukleoak hobetzeko [accent]maila handiagoko nukleoak jar daitezke haien gainean[].\n\nKokatu :core-foundation: [accent]Fundazio[] nukleoa :core-shard: [accent]Shard[] nukleoaren gainean. Ziurtatu inguruko oztopoetatik libre dagoela.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Erradioan eraikitako edozer suntsitzen da olatu bat hasten denean.
gz.zone3 = Bolada bat hasiko da orain\nPrestatu.
gz.finish = Eraiki dorre gehiago, atera baliabide gehiago,\neta defendatu olatu guztien aurka [accent]sektorea konkistatzeko[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Fires standard bullets at all nearby enemies.
unit.mace.description = Fires streams of flame at all nearby enemies.
@@ -2540,7 +2690,7 @@ unit.risso.description = Fires a barrage of missiles and bullets at all nearby e
unit.minke.description = Fires shells and standard bullets at nearby ground targets.
unit.bryde.description = Fires long-range artillery shells and missiles at enemies.
unit.sei.description = Fires a barrage of missiles and armor-piercing bullets at enemies.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies. Constructs flare units.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies.
unit.alpha.description = Defends the Shard core from enemies. Builds structures.
unit.beta.description = Defends the Foundation core from enemies. Builds structures.
unit.gamma.description = Defends the Nucleus core from enemies. Builds structures.
@@ -2584,6 +2734,7 @@ lst.radar = Locate units around a building with range.
lst.sensor = Get data from a building or unit.
lst.set = Set a variable.
lst.operation = Perform an operation on 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Jump to the top of the instruction stack.
lst.wait = Wait a certain number of seconds.
lst.stop = Halt execution of this processor.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Locate a specific type of position/building anywhere on the map
lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+187 -33
View File
@@ -15,9 +15,11 @@ link.wiki.description = Virallinen Mindustry wiki
link.suggestions.description = Ehdota uusia ominaisuuksia
link.bug.description = Löysitkö bugin? Ilmoita se täällä
linkopen = This server has sent you a link. Are you sure you want to open it?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Linkin avaaminen epäonnistui!\nOsoite on kopioitu leikepöydällesi.
screenshot = Kuvankaappaus tallennettu sijaintiin {0}
screenshot.invalid = Kartta liian laaja, levytila voi olla liian vähissä kuvankaappausta varten.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Peli ohi
gameover.disconnect = Katkaise yhteys
gameover.pvp = [accent] {0}[] joukkue voittaa!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Odotetaan seuraavaa karttaa...
highscore = [accent]Uusi ennätys!
copied = Kopioitu.
indev.notready = Tämä osa peliä ei ole vielä valmis
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Ääniä
load.map = Karttoja
@@ -49,11 +52,19 @@ mods.browser.view-releases = Näytä julkaistut versiot
mods.browser.noreleases = [scarlet]Julkaistuja versioita ei löytynyt\n[accent]Tästä lisäosasta ei löytynyt julkaistuja versioita. Tarkista, onko lisäosan repositoriossa julkaistuja versioita.
mods.browser.latest = <Viimeisin>
mods.browser.releases = Julkaistut versiot
mods.browser.fetching = Fetching Releases...
mods.github.open = Repositorio
mods.github.open-release = Julkaisusivu
mods.browser.sortdate = Järjestä laskevaan aikajärjestykseen
mods.browser.sortstars = Järjestä tähtien määrän perusteella
export.file = Vie tiedosto
import.file = Tuo tiedosto
copy.clipboard = Kopioi leikepöydälle
import.clipboard = Tuo leikepöydältä
workshop.browse = Browse Workshop
workshop.share = Jaa Workshoppiin
schematic = Kaavio
schematic.add = Tallenna kaavio...
schematics = Kaaviot
@@ -61,12 +72,6 @@ schematic.search = Search schematics...
schematic.replace = Kaavio tällä nimellä on jo olemassa. Haluatko korvata sen?
schematic.exists = Kaavio tällä nimellä on jo olemassa.
schematic.import = Tuo kaavio...
schematic.exportfile = Vie tiedosto
schematic.importfile = Tuo tiedosto
schematic.browseworkshop = Selaa Steam Workshoppia
schematic.copy = Kopioi leikepöydälle
schematic.copy.import = Tuo leikepöydältä
schematic.shareworkshop = Jaa Workshoppiin
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Käännä Kaavio
schematic.saved = Kaavio tallennettu.
schematic.delete.confirm = Tämä kaavio poistetaan.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Karttoja ei löytynyt!
invalid = Virheellinen
pickcolor = Valitse väri
color = Color
import = Import
export = Export
preparingconfig = Valmistellaan asetuksia
preparingcontent = Valmistellaan sisältöä
uploadingcontent = Julkaistaan sisältöä
content.createdby = Created by: {0}
uploadingpreviewfile = Julkaistaan esikatseltavaa tiedostoa
committingchanges = Varmistetaan muutokset
done = Valmis
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = This mod is unable to be loaded due to inva
mod.requiresversion = Requires game version: [red]{0}
mod.errors = Virheitä on tapahtunut pelin ladatessa.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]Sinulla on virheellisiä modeja.[] Joko poista ne käytöstä tai korjaa virheet.
mod.enable = Käytä
mod.requiresrestart = Peli suljetaan jotta muutokset voisivat toteutua.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Select a planet to start on.\nThis can be switched at
campaign.erekir = Newer, more polished content. Mostly linear campaign progression.\n\nHigher quality maps and overall experience.
campaign.serpulo = Older content; the classic experience. More open-ended.\n\nPotentially unbalanced maps and campaign mechanics. Less polished.
campaign.difficulty = Difficulty
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Suoritettu
techtree = Edistyspuu
techtree.select = Edistyspuun valinta
@@ -235,6 +246,7 @@ server.kicked.vote = Sinut on äänestetty pois. Hyvästi.
server.kicked.clientOutdated = Pelisi on vanhentunut! Päivitä se!
server.kicked.serverOutdated = Vanhentunut palvelin! Pyydä isäntää päivittämään!
server.kicked.banned = Sinulla on porttikielto tälle palvelimelle.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Tämä palvelin ei ole yhteensopiva koontiversiosi kanssa.
server.kicked.playerLimit = Tämä palvelin on täynnä. Odota vapaata tilaa.
server.kicked.recentKick = Sinut on potkittu äskettäin.\nOdota ennen kuin yhdistät uudestaan.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Peliin ei voitu liittyä ([accent]{0}[]).
connecting = [accent]Yhdistetään...
reconnecting = [accent]Yhdistetään uudelleen...
connecting.data = [accent]Ladataan maailman tietoja...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Portti:
server.invalidport = Tällä portilla ei löytynyt peliä!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +352,10 @@ save.export = Vie tallennus
save.import.invalid = [accent]Tämä tallennus on kelvoton!
save.import.fail = [crimson]Tallennuksen tuominen epäonnistui: [accent]{0}
save.export.fail = [crimson]Tallennuksen vieminen epäonnistui: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Tuo tallennus
save.newslot = Tallennuksen nimi:
save.rename = Nimeä uudelleen
@@ -354,13 +375,12 @@ save.mode = Pelimuoto: {0}
save.date = Viimeksi tallennettu: {0}
save.playtime = Peliaika: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Varoitus.
confirm = Vahvista
delete = Poista
view.workshop = Näytä Workshopissa
workshop.listing = Muokkaa Workshop-listausta
hide = Hide
ok = Ok
open = Avaa
customize = Muokkaa sääntöjä
@@ -372,7 +392,6 @@ command.repair = Repair
command.rebuild = Rebuild
command.assist = Assist Player
command.move = Move
command.boost = Boost
command.enterPayload = Enter Payload Block
command.loadUnits = Load Units
command.loadBlocks = Load Blocks
@@ -383,7 +402,9 @@ stance.shoot = Stance: Shoot
stance.holdfire = Stance: Hold Fire
stance.pursuetarget = Stance: Pursue Target
stance.patrol = Stance: Patrol Path
stance.holdposition = Stance: Hold Position
stance.ram = Stance: Ram\n[lightgray]Straight line movement, no pathfinding
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Avaa linkki
@@ -430,6 +451,7 @@ saveimage = Tallenna kuva
unknown = Tuntematon
custom = Mukautettu
builtin = Sisäänrakennettu
modded = Modded
map.delete.confirm = Oletko varma että haluat poistaa tämän kartan? Poistoa ei voi peruuttaa!
map.random = [accent]Satunnainen kartta
map.nospawn = Tässä kartassa ei ole ytimiä joihin syntyä! Lisää {0} ydin karttaan editorissa.
@@ -469,14 +491,6 @@ editor.rules = Säännöt:
editor.generation = Generaatio:
editor.objectives = Tehtävät
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = World Processors
editor.worldprocessors.editname = Edit Name
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -490,12 +504,86 @@ editor.center = Keskitä
editor.search = Hae karttoja...
editor.filters = Rajaa karttoja
editor.filters.mode = Pelitilat:
editor.filters.priorities = Priorities:
editor.filters.type = Kartan tyyppi:
editor.filters.search = Search in:
editor.filters.author = Tekijä
editor.filters.description = Kuvaus
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Siirrä X-akselin suunnassa
editor.shifty = Siirrä Y-akselin suunnassa
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Työpaja
waves.title = Tasot
waves.team = Team
@@ -510,10 +598,10 @@ waves.spawn = syntypiste:
waves.spawn.all = <kaikki>
waves.spawn.select = Syntypisteen valinta
waves.spawn.none = [scarlet]kartasta ei löytynyt syntypisteitä
waves.spawn.first = [lightgray](first {0})
waves.max = maksimijoukot
waves.guardian = Vartija
waves.preview = Esikatselu
waves.edit = Muokkaa...
waves.random = Random
waves.copy = Kopioi leikepöydälle
waves.load = Lataa leikepöydältä
@@ -529,6 +617,7 @@ waves.search = Search waves...
waves.filter = Unit Filter
waves.units.hide = Piilota kaikki
waves.units.show = Näytä kaikki
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = lukumäärä
@@ -539,7 +628,9 @@ all = All
editor.default = [lightgray]<Oletus>
details = Yksityiskohdat...
edit = Muokkaa...
edit.menu = Edit...
variables = Muuttujat
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Are you sure you want to clear all code from this processor?
logic.restart = Restart
logic.globals = Built-in Variables
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Piirrä joukkueita palikkojen sijaan.
#unused
toolmode.underliquid = Pinnanalainen tila
toolmode.underliquid.description = Piirrä lattioita nestelaattojen alle.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Ei filttereitä! Lisää yksi alla olevasta napista.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Leveys:
height = Korkeus:
@@ -749,8 +844,10 @@ objective.build = [accent]Rakenna: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Rakenna yksikkö: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Tuhoa: [][lightgray]{0}[]x yksikköä
objective.enemiesapproaching = [accent]Vihollinen lähestyy ajassa [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Tuhoa vihollisydin
objective.command = [accent]Komenna yksikköjä
objective.nuclearlaunch = [accent]⚠ Ydinaseen laukaisu havaittu: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Sektoria ei voida vaihtaa
sector.noswitch = Et voi vaihtaa sektoria, kun olemassaoleva sektori on hyökkäyksen kohteena.\n\nSektori: [accent]{0}[] planeetalla [accent]{1}[]
sector.view = Näytä sektori
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Matala
threat.medium = Kohtalainen
@@ -845,6 +943,10 @@ threat.high = Korkea
threat.extreme = Äärimmäinen
threat.eradication = Täystuho
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Easy
difficulty.normal = Normal
@@ -864,7 +966,7 @@ planet.sun.name = Aurinko
sector.impact0078.name = Törmäys 0078
sector.groundZero.name = Tapahtumahorisontti
sector.craters.name = Kraatterit
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Jäätyneet metsät
sector.ruinousShores.name = Taistelujen ranta
sector.stainedMountains.name = Kalliovuoret
@@ -883,7 +985,6 @@ sector.infestedCanyons.name = Infested Canyons
sector.planetaryTerminal.name = Planetaarinen laukaisuterminaali
sector.coastline.name = Rantaviiva
sector.navalFortress.name = Laivastolinnoitus
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
@@ -892,13 +993,14 @@ sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.groundZero.description = Optimaalinen sijainti aloittaa jälleen kerran. Matala vihollisuhka. Vähän resursseja.\nKerää niin paljon kuparia ja lyijyä, kuin mahdollista.\nJatka matkaa.
sector.frozenForest.description = Itiöt ovat levittäytyneet jopa tänne, lähemmäs vuoria. Jäätävät lämpötilat eivät voi torjua niitä ikuisesti.\n\nAloita seikkailusi virtaan. Rakenna polttogeneraattoreita. Opi käyttämään korjaajia.
sector.saltFlats.description = Aavikon reunamilla sijaitsevat suolatasangot. Tässä sijainnissa resurssit ovat vähäisiä.\n\nVihollinen on pystyttänyt tänne varastokompleksin. Hävitä heidän ytimensä. Älä jätä mitään jäljelle.
sector.craters.description = Vesi on kerääntynyt tähän kraatteriin, jäännökseen vanhoista sodista. Kunnosta alue. Kerää hiekkaa. Sulata metalasia. Pumppaa vettä jäähdyttääksesi tykkitorneja ja poria.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Autiomaiden jälkeen seuraa rantaviiva. Kerran tällä alueella oli rannikkopuolustusrivi. Vain vähän siitä on säilynyt. Vain kaikkein yksinkertaisimmat puolustusrakennukset ovat säilyneet vahingoittumattomina, ja kaikki muu on hävitetty romuksi.\nJatka laajenemista ulospäin. Tutki teknologia uudelleen.
sector.stainedMountains.description = Kauempana sisämaassa sijaitsevat vuoret, jotka eivät vielä ole itiöiden saastuttamia.\nKaiva tällä alueella runsasta titaania. Opi, kuinka käyttää sitä.\n\nVihollisen läsnäolo on täällä suurempaa. Älä anna heille aikaa lähettää vahvimpia joukkojaan.
sector.overgrowth.description = Tämä alue on umpeenkasvanut, ja on lähempänä itiöiden lähdettä.\nVihollinen on perustanut tänne vartioaseman. Rakenna Mace-yksikköjä. Tuho se. Ota takaisin se, mikä oli menetettyä.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Täällä lepäävät tähtienvälisen aluksen,
sector.planetaryTerminal.description = Viimeinen kohde.\n\nTämä rannikkotukikohta sisältää rakennuksen, joka pystyy laukaisemaan ytimiä paikallisille planeetoille. Se on vartioitu äärimmäisen hyvin.\n\nRakenna laivayksiköitä. Eliminoi vihollinen mahdollisimman pian. Tutki laukaisurakennus.
sector.coastline.description = Tällä alueella on havaittu jälkiä meriyksikköjen teknologiasta. Torju vihollisen hyökkäykset, valtaa tämä sektori ja hanki teknologia.
sector.navalFortress.description = Vihollinen on perustanut tukikohdan syrjäiselle, luonnostaan linnoitetulle saarelle. Tuhoa tämä etuvartioasema. Hanki heidän kehittynyt merialusteknologiansa ja tutki se.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = Alku
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Räjähtänyt
status.corroded.name = Corroded
status.unmoving.name = Liikkumaton
status.boss.name = Vartija
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Kieli
settings.data = Peli Data
@@ -985,6 +1102,13 @@ settings.clearresearch = Poista tutkimukset
settings.clearresearch.confirm = Oletko varma, että haluat tyhjentää kaikki tutkimuksesi polussa?
settings.clearcampaignsaves = Poista kampanjatallennukset
settings.clearcampaignsaves.confirm = Oletko varma, että haluat poistaa kaikki kampanjatallennuksesi?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Pysäytetty >
clear = Tyhjä
banned = [scarlet]Kielletty
@@ -1017,6 +1141,7 @@ stat.targetsground = Hyökkää maahan
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Liikkumisnopeus
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Aika laukaisujen välillä
stat.shootrange = Kantama
stat.size = Koko
@@ -1039,6 +1164,8 @@ stat.weapons = Aseet
stat.bullet = Ammukset
stat.moduletier = Moduulin taso
stat.unittype = Unit Type
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Nopeuden kasvu
stat.range = Etäisyys
stat.drilltier = Porattavat
@@ -1047,6 +1174,7 @@ stat.boosteffect = Tehostamisem vaikutus
stat.maxunits = Maksimimäärä yksikköjä
stat.health = Elämäpisteet
stat.armor = Haarniska
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Rakentamisaika
stat.maxconsecutive = Max. peräkkäisiä
stat.buildcost = Rakentamishinta
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] Aluevahinko ~[stat] {1}[lightgray] pa
bullet.incendiary = [stat]sytyttävä
bullet.homing = [stat]itseohjautuva
bullet.armorpierce = [stat]haarniskan läpäisevä
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Varjot
setting.blockreplace.name = Automaattisia Palikka Suosituksia
setting.linear.name = Lineaarinen suodatus
setting.hints.name = Vihjeet
setting.logichints.name = Logiikkavihjeet
setting.backgroundpause.name = Pysäytä taustalla
setting.buildautopause.name = Automaattisest Pysäytä Rakentaessa
setting.doubletapmine.name = Kaksoisklikkaa kaivaaksesi
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Poista lisäosat käytöstä käynnistyskaatumisi
setting.animatedwater.name = Animoitu vesi
setting.animatedshields.name = Animoidut kilvet
setting.playerindicators.name = Pelaajaindikaattorit
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Vihollis/Puolulais Indikaattorit
setting.autotarget.name = Automaatinen Tähtäys
setting.keyboard.name = Hiiri+Näppäimistö -ohjaus
@@ -1271,6 +1403,8 @@ setting.fpscap.none = Ei Mitään
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI Koko[lightgray] (vaatii uudelleenkäynnistyksen)[]
setting.uiscale.description = Muutosten toteuttaminen vaatii uudelleenkäynnistyksen
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Aina vino korvaus
setting.screenshake.name = Näytön keikkuminen
setting.bloomintensity.name = Bloom-intensiteetti
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Tallennuksen Aikaväli
setting.seconds = {0} Sekuntia
setting.milliseconds = {0} millisekuntia
setting.fullscreen.name = Täysnäyttö
setting.borderlesswindow.name = Reunaton Ikkuna[lightgray] (vaatii uudelleenkäynnistyksen)
setting.borderlesswindow.name.windows = Reunaton koko näytön tila
setting.borderlesswindow.description = Uudelleenkäynnistys saatetaan vaatia muutosten toteuttamiseksi.
setting.fps.name = Näytä FPS
setting.console.name = Salli konsoli
setting.smoothcamera.name = Pehmeä kamera
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Taustaäänet
setting.mutemusic.name = Mykistä musiikki
setting.sfxvol.name = SFX-voimakkuus
setting.mutesound.name = Mykistä äänet
setting.crashreport.name = Lähetä anonyymejä kaatumisilmoituksia
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Luo tallenuksia automaattisesti
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Unit Command
category.multiplayer.name = Moninpeli
category.blocks.name = Palikan Valinta
placement.blockselectkeys = \n[lightgray]Näppäin: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Synny Uudelleen
keybind.control.name = Käytä Yksikköä
keybind.clear_building.name = Tyhjennä rakennus
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Loputtomat AI:n (punaisen joukkueen) resurssit
rules.blockhealthmultiplier = Palikkojen elämäpistekerroin
rules.blockdamagemultiplier = Palikkojen vahinkokerroin
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Yksikköjen tuotantonopeuskerroin
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Yksikköjen elämäpistekerroin
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Tuli
rules.anyenv = <mikä tahansa>
rules.explosions = Palikkojen/Yksikköjen räjähdysvahinko
@@ -2049,6 +2185,9 @@ block.disperse.name = Hälvennys
block.afflict.name = Aiheuttaja
block.lustre.name = Kiilto
block.scathe.name = Vahinko
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tankkijälleenrakentaja
block.mech-refabricator.name = Robottijälleenrakentaja
block.ship-refabricator.name = Ilma-alusjälleenrakentaja
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Vahvistettu lastireititin
block.payload-mass-driver.name = Lastimassalinko
block.small-deconstructor.name = Pieni hajottaja
block.canvas.name = Kanvaasi
block.large-canvas.name = Large Canvas
block.world-processor.name = Maailmaprosessori
block.world-cell.name = Maailmasolu
block.tank-fabricator.name = Tankkirakentaja
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]Paina ja pidä pohjassa[] pientä palikkaa t
hint.payloadDrop = Paina [accent]][] pudottaaksesi lastin.
hint.payloadDrop.mobile = [accent]Paina ja pidä pohjassa[] tyhjässä kohdassa pudottaaksesi lastin sinne.
hint.waveFire = [accent]Aalto[]-tykit, jotka on ladattu vedellä, sammuttavat kantamalla olevia tulipaloja automaattisesti.
hint.generator = :combustion-generator: [accent]Aggregaatit[] polttavat hiiltä ja lähettävät energiaa viereisille palikoille.\n\nEnergiansiirtokantamaa voi laajentaa :power-node:[accent]Sähkötolpilla[].
hint.guardian = [accent]Vartija[]yksiköt ovat haarniskoituja. Heikot ammukset kuten [accent]kupari[] ja [accent]lyijy[][scarlet]eivät ole tehokkaita[].\n\nKäytä korkeamman tason tykkejä tai :graphite:[accent]Grafiittia[] :duo:Duon/:salvo:Salvon ammuksena voittaaksesi vartijan.
hint.coreUpgrade = Ytimen voi päivittää [accent]sijoittamalla suuremman tason ytimen niiden päälle[].\n\nSijoita :core-foundation:[accent]Pohjaus[]-ydin :core-shard:[accent]Siru[]-ytimen päälle. Varmista, että tiellä ei ole esteitä.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts.
gz.zone3 = A wave will begin now.\nGet ready.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Ampuu normaaleja ammuksia kaikkiin läheisiin vihollisiin.
unit.mace.description = Ampuu liekkisuihkuja kaikkiin läheisiin vihollisiin.
@@ -2540,7 +2690,7 @@ unit.risso.description = Ampuu ryöpyn ohjuksia ja ammuksia kaikkiin läheisiin
unit.minke.description = Ampuu kranaatteja ja normaaleja ammuksia läheisiin maakohteisiin.
unit.bryde.description = Ampuu pitkän kantaman tykistötulta ja ohjuksia vihollisiin.
unit.sei.description = Ampuu ryöpyn ohjuksia ja haarniskan läpäiseviä ammuksia vihollisiin.
unit.omura.description = Ampuu pitkän kantaman lävistävän raidetykin vasaman vihollisiin. Tuottaa Flare-yksiköitä.
unit.omura.description = Ampuu pitkän kantaman lävistävän raidetykin vasaman vihollisiin.
unit.alpha.description = Puolustaa Siru-ydintä vihollisilta. Rakentaa rakennuksia.
unit.beta.description = Puolustaa Pohjaus-ydintä vihollisilta. Rakentaa rakennuksia.
unit.gamma.description = Puolustaa Tuma-ydintä vihollisilta. Rakentaa rakennuksia.
@@ -2584,6 +2734,7 @@ lst.radar = Paikantaa yksiköitä kantamallisen rakennuksen ympärillä.
lst.sensor = Selvitä rakennuksen tai yksikön data.
lst.set = Aseta muuttuja.
lst.operation = Suorita laskutoimitus 1-2 muuttujalla.
lst.select = Conditionally set a variable to one of two values.
lst.end = Hyppää ohjepinon alkuun.
lst.wait = Odota tietty määrä sekunteja.
lst.stop = Halt execution of this processor.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Paikanna tietyntyyppinen arvo/rakennus missä tahansa kartalla.
lst.getblock = Selvitä laattadata missä tahansa sijainnissa.
lst.setblock = Aseta laattadata missä tahansa sijainnissa.
lst.spawnunit = Luo joukko tietyssä sijainnissa.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Lisää tai poista statusefekti yksiköltä.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1
+213 -59
View File
@@ -15,9 +15,11 @@ link.wiki.description = Opsiyal na ensiklopedya ng Mindustry.
link.suggestions.description = Magmungkahi ng mga bagong feature.
link.bug.description = Nakahanap ng isang sira? Ipaulat dito!
linkopen = Ang server na ito ay nagbigay ng isang link. Gusto mo ba na ibuksan?\n\n[sky]{0}
clipboardcopy = This server wants to copy text to your clipboard. Are you sure you want to continue?\n\n[sky]{0}
linkfail = Hindi mabuksan ang link!\nKinopya na sa iyong clipboard ang URL.
screenshot = Kinunan na ang screenshot sa {0}
screenshot.invalid = Masiyadong malaki ang lugar, maaaring kulang ang espasyo para sa screenshot.
screenshot.error = Failed to take screenshot. Your device likely does not support screenshots this large.
gameover = Natapos ang laro.
gameover.disconnect = Nawalan ka ng koneksyon.
gameover.pvp = Ang[accent] {0}[] na pangkat ay nanalo!
@@ -25,6 +27,7 @@ gameover.waiting = [accent]Hintayin ang bagong lugar...
highscore = [accent]Panibagong mataas na Iskor!
copied = Kinopya.
indev.notready = Ang bahaging ito ng laro ay hindi pa handa
bundle.external = Note: You have successfully loaded an external translation bundle.\n[accent]{0}
load.sound = Mga Tunog
load.map = Mga Lugar
@@ -49,11 +52,19 @@ mods.browser.view-releases = Tingan ang mga ipinalabas na bersyon
mods.browser.noreleases = [scarlet]Walang ipinalabas na bersyon ang nahanap.\n[accent]Hindi makahanap ng bersyon sa pangbago na ito. Tingan kung may ipinalabas na bersyon ang repositoryo ng pangbago nito.
mods.browser.latest = <Pinaka-bago>
mods.browser.releases = Ipinalabas na bersyon
mods.browser.fetching = Fetching Releases...
mods.github.open = Repositoryo
mods.github.open-release = Pahina ng mga ipinalabas na bersyon
mods.browser.sortdate = Uriin sa pinakabago
mods.browser.sortstars = Uriin sa kasikatan
export.file = Mag-export ng File
import.file = Kumuha ng File
copy.clipboard = Kopyahin sa Clipboard
import.clipboard = Kunin mula sa Clipboard
workshop.browse = Browse Workshop
workshop.share = Ibahagi sa Workshop
schematic = Eskematiko
schematic.add = I-adya ang Eskematiko...
schematics = Mga Eskematiko
@@ -61,12 +72,6 @@ schematic.search = Search eskematiko...
schematic.replace = Ang eskematiko na ito ay magkaparehas ng pangalan. Gusto mo bang palitan ito?
schematic.exists = Ang eskematiko na ito ay magkaparehas ng pangalan.
schematic.import = Kunin ang eskematiko...
schematic.exportfile = Mag-export ng File
schematic.importfile = Kumuha ng File
schematic.browseworkshop = Maghanap sa Workshop
schematic.copy = Kopyahin sa Clipboard
schematic.copy.import = Kunin mula sa Clipboard
schematic.shareworkshop = Ibahagi sa Workshop
schematic.flip = [accent][[{0}][]/[accent][[{1}][]: Baligtarin ang eskematiko
schematic.saved = Nabago na ang eskematiko.
schematic.delete.confirm = Ang eskematiko na ito ay tuluyang mawawala.
@@ -124,9 +129,12 @@ maps.none = [lightgray]Walang lugar na nahanap!
invalid = Hindi Puwede
pickcolor = Pumili ng Kulay
color = Color
import = Import
export = Export
preparingconfig = Inihahanda ang Konpigurasyon
preparingcontent = Inihahanda ang mga Nilalaman
uploadingcontent = Pinag-uupload ang Nilalaman
content.createdby = Created by: {0}
uploadingpreviewfile = Pinag-uupload ang Preview File
committingchanges = Gumagawa ng mga Pagbabago
done = Tapos
@@ -171,6 +179,7 @@ mod.incompletedependencies.details = Hindi ma-load ang mod na ito dahil sa di-wa
mod.requiresversion = Nangangailangan ng bersyon ng laro: [red]{0}
mod.errors = May mga pagkamali na naitala habang binubuksan ang nilalaman.
mod.errors.map = [scarlet]Errors have occurred loading map content. All custom content has been disabled.[]\nThis map will likely not function correctly.
mod.noerrorplay = [scarlet]May mga pangbago kang may pagkamali.[] Maaaring huwag munang paganahin ang mga apektadong pangbago o hindi kaya ay ayusin ang mga pagkamali bago maglaro.
mod.enable = Paganahin
mod.requiresrestart = Ang laro ay magsasara upang mailagay ang mga pagbabago sa pangbago.
@@ -212,6 +221,8 @@ campaign.none = [lightgray]Pumili ng planetang sisimulan.\nMaaari itong palitan
campaign.erekir = Mas bago, mas pinakintab na content. Kadalasan ay linear na pag-unlad ng kampanya.\n\nMas mahirap. Mas mataas na kalidad at pangkalahatang karanasan.
campaign.serpulo = Mas lumang nilalaman; ang klasikong karanasan. Mas open-ended.\n\nPotensyal na hindi balanseng mga mapa at mekaniko ng campaign. Hindi gaanong tapos.
campaign.difficulty = Kahirapan
campaign.rework.title = Campaign Changes Notice
campaign.rework.serpulo = [accent]⚠ The Serpulo campaign has been reworked.[]\n\nSector positions and difficulty have changed. You may encounter issues relating to leftover campaign saves from the old layout.\n\nFor a cleaner experience, consider resetting your campaign saves in the settings.
completed = [accent]Nakumpleto
techtree = Tech Tree
techtree.select = Pagpili ng Tech Tree
@@ -235,6 +246,7 @@ server.kicked.vote = Ipinagbotohan ka na itanggal sa server. Paalam.
server.kicked.clientOutdated = Outdated na kliyente! I-Update mo ang iyong laro!
server.kicked.serverOutdated = Lumang server! Hilingin sa may-ari na ibago!
server.kicked.banned = Ikaw ay pinagbawalan sa server na ito.
server.kicked.steamBanned = You have been banned from Steam lobbies for disruptive and shameful behavior.
server.kicked.typeMismatch = Ang server na ito ay hindi tugma sa iyong uri ng build.
server.kicked.playerLimit = Puno na ang server na ito. Maghintay ng libreng slot.
server.kicked.recentKick = na-kick ka recently.\nMaghintay bago kumonekta muli.
@@ -318,7 +330,12 @@ disconnect.snapshottimeout = Timed out while receiving UDP snapshots.\nThis may
cantconnect = Hindi kayant sumali sa larong ([accent]{0}[]).
connecting = [accent]Connecting...
reconnecting = [accent]Reconnecting...
connecting.data = [accent]Loading world data...
connecting.establish = [accent]Establishing connection...
receiving.world = [accent]Receiving world data ({0})...
receiving.assets = [accent]Receiving assets ({0})...
receiving.assets.fail = Error occurred while receiving assets.
server.port = Port:
server.invalidport = Invalid port number!
server.error.addressinuse = [scarlet]Failed to open server on port 6567.[]\n\nMake sure no other Mindustry servers are running on your device or network!
@@ -335,6 +352,10 @@ save.export = Ipamigay ang Save
save.import.invalid = [accent]Hindi puwede ang intong save!
save.import.fail = [scarlet]Pumalya ang pag-kuha ng save: [accent]{0}
save.export.fail = [scarlet]Pumalya ang pag-bigay ng save: [accent]{0}
save.export.needsload = [scarlet]⚠ This save contains embedded assets.[]\nLoad into this save before exporting it.
save.assets.missing = Missing Assets
save.assets.missing.list = Asset List...
save.assets.missing.info = [scarlet]⚠ This save contains missing assets![]\n\n[lightgray]This is likely because the save file was not properly exported.\n[lightgray]When sharing saves, only export through the in-game UI. Do not copy save files directly.\n[lightgray]If transferring files is necessary, make sure the [accent]assetCache[] folder is copied as well.
save.import = Kumuha ng Save
save.newslot = Pangalan ng save:
save.rename = Ipangalan ulit
@@ -354,13 +375,12 @@ save.mode = Gamemode: {0}
save.date = Last Saved: {0}
save.playtime = Playtime: {0}
dontshowagain = Don't show again
warn.32bit.title = 32-bit Deprecation Warning
warn.32bit = You are using a [red]32-bit[] version of Mindustry.\nAs newer Java versions have dropped 32-bit Windows support, [red]32-bit support will be discontinued in the future[].\n\nPlease upgrade to a 64-bit machine, and make sure you have the 64-bit version of Mindustry downloaded.\n\nIf you are running Mindustry as a JAR file, make sure you are using 64-bit Java.
warning = Warning.
confirm = Kumpirmahin
delete = Tanggalin
view.workshop = Tingnan Sa Workshop
workshop.listing = I-edit ang Listahan sa Workshop
hide = Hide
ok = OK
open = Buksan
customize = I-customize ang Mga Panuntunan
@@ -372,7 +392,6 @@ command.repair = Ipagawa
command.rebuild = Itayo
command.assist = Asistahan ang maglalaro
command.move = Galaw
command.boost = Magpabilis
command.enterPayload = Pumasok sa payload
command.loadUnits = Ipasok ang Unit
command.loadBlocks = Ipasok ang tapak
@@ -383,7 +402,9 @@ stance.shoot = Paninindigan: Barilan
stance.holdfire = Paninindigan: Huwag Bumaril
stance.pursuetarget = Paninindigan: Habulin ang Iaatake
stance.patrol = Paninindigan: Patrolyang Lakarin
stance.holdposition = Stance: Hold Position
stance.ram = Paninindigan: Daan\n[lightgray]Tuwid na linyang paggalaw, walang paghanag ng path
stance.boost = Boost
stance.mineauto = Automatic Mining
stance.mine = Mine Item: {0}
openlink = Buksan Link
@@ -430,6 +451,7 @@ saveimage = I-Save ng Imahe
unknown = Di-alam
custom = Di-karaniwan
builtin = Gawa sa sistema
modded = Modded
map.delete.confirm = Sigurado ka bang gusto mong tanggalin ang mapang ito? Ang gawaing ito ay hindi pwedeng baguhin!
map.random = [accent]Kung-ano-anong Map
map.nospawn = Ang mapa na ito ay walang anumang mga core para sa player upang maipabuhay! Mag-dagdag ng {0} core sa editor ng mapa!
@@ -469,14 +491,6 @@ editor.rules = Mga Alintuntunin:
editor.generation = Pagbuo:
editor.objectives = Mga Gawain
editor.locales = Locale Bundles
editor.patches.guide = Patch Guide
editor.patches = Content Patches
editor.patch = Patchset: {0}
editor.patches.none = [lightgray]No patchsets loaded.
editor.patches.errors = Patchset Errors
editor.patches.importerror = Failed to import patchset
editor.patches.delete.confirm = Are you sure you want to delete this patchset?
editor.patch.fields = {0} fields
editor.worldprocessors = Proseso ng Map
editor.worldprocessors.editname = Iedit ang pangalan
editor.worldprocessors.none = [lightgray]No world processor blocks found!\nAdd one in the map editor, or use the \ue813 Add button below.
@@ -490,12 +504,86 @@ editor.center = Center
editor.search = Search maps...
editor.filters = I-filter ang Maps
editor.filters.mode = Mode ng laro:
editor.filters.priorities = Priorities:
editor.filters.type = Uri ng Map:
editor.filters.search = Hanapin Sa:
editor.filters.author = Manggagawa
editor.filters.description = Deskripsyon
editor.filters.modname = Mod Name
editor.filters.prioritizemod = Mod Priority
editor.filters.prioritizecustom = Custom Priority
editor.filters.planetselect = Planet Selection
editor.shiftx = Shift ang X
editor.shifty = Shift ang Y
asset.patch = Patch
asset.content = Content
asset.bundle = Translation Bundle
asset.image = Image
asset.sound = Sound
asset.music = Music
content.unit = Unit
content.item = Item
content.liquid = Liquid
content.block = Block
content.planet = Planet
content.weather = Weather
content.status = Status Effect
patches = Content Patches
patch.set = Patchset: {0}
patch.none = [lightgray]No patchsets loaded.
patch.errors = Patchset Errors
patch.importerror = Failed to import patchset
patch.delete.confirm = Are you sure you want to delete this patchset?
patch.path = Path:
patch.fields = {0} fields
bundle.lines = {0} lines
images = Images
asset.guide = Usage Guide
asset.bundle.exists = A bundle with path '{0}' already exists.
asset.importzip = Import Asset Zip
asset.exportzip = Export Asset Zip
asset.image.importzip = Import Zip
asset.image.exportzip = Export Zip
asset.clearall = Clear All
asset.clearall.confirm = Are you sure that you want to clear [red]all[] assets from this map?\nThis includes images, audio, content, etc.
asset.imports = Import Results
asset.imported = [accent]{0} assets imported.
asset.import.none = No valid asset files found in zip archive.
asset.content.errors = Content Errors
asset.content.add = Add Content
asset.content.type = Type:
asset.content.exists = [red]Content with that name already exists!
asset.content.badname = [red]Invalid name! Most symbols are not allowed.
asset.content.import.file = Import File
asset.content.import.clipboard = Import From Clipboard
asset.exists = An asset of that type with the same path/name already exists:\n[lightgray]{0}
asset.broken = This asset file could not be located.\nThis can be caused by improper import of data, or an incorrectly exported save.
asset.audio.invalid = Audio file could not be loaded.\nEnsure that it is a valid OGG or MP3 file.
asset.delete.confirm = Are you sure you want to delete this asset?
asset.images = Data Patch Images
asset.image.imports = Import Results
asset.image.imported = [accent]{0} images imported.
asset.image.none = No valid PNG files found in zip archive.
asset.image.error = [red]The following errors were encountered:[]
asset.image.clearall.confirm = Are you certain that you wish to clear all images?
asset.image.info = Image Info
asset.image.toolarge = Image ([lightgray]{0}x{1}[]) is too large. Maximum size is {2}x{3}.
asset.image.exists = An image with that path/name already exists:\n[lightgray]{0}
asset.image.delete.confirm = Are you certain that you wish to delete this image?
asset.image.name = [accent]File Name: [lightgray]{0}
asset.image.region.name = [accent]Region Name: [lightgray]{0}
asset.image.path = [accent]Path: [lightgray]{0}
asset.image.env = [accent]Uses Environment Atlas: [lightgray]{0}
asset.image.size = [accent]Size: [lightgray]{0}x{1}
asset.image.filesize = [accent]File Size: [lightgray]{0}
asset.image.packfailed = [red]⚠ Failed to pack sprite![]
asset.image.packfailed.env = This is likely caused by a lack of space in the environment atlas.\nNote that environment sprites are limited to a 512x512 total area.
workshop = Workshop
waves.title = Magaatake
waves.team = Pangkat
@@ -510,10 +598,10 @@ waves.spawn = bubuhayan:
waves.spawn.all = <lahat>
waves.spawn.select = Pagpipilian sa pagbubuhayan
waves.spawn.none = [scarlet]no spawns found in map
waves.spawn.first = [lightgray](first {0})
waves.max = max units
waves.guardian = Guardian
waves.preview = Preview
waves.edit = Edit...
waves.random = Random
waves.copy = I-Copy to Clipboard
waves.load = I-Load mula sa Clipboard
@@ -529,6 +617,7 @@ waves.search = Search waves...
waves.filter = Unit Filter
waves.units.hide = Itago lahat
waves.units.show = Ipakita lahat
pause.disabled = [scarlet]Pause is disabled
#these are intentionally in lower case
wavemode.counts = counts
@@ -539,7 +628,9 @@ all = Lahat
editor.default = [lightgray]<Default>
details = Mga Detalya...
edit = Edit...
edit.menu = Edit...
variables = Vars
logic.error.toolong = Processor code too long (Limit: {0} compressed bytes, actual length: {1} bytes)
logic.clear.confirm = Sigurado ka bang na gusto mo itangal ang lahat na code sa itong processor?
logic.restart = Iulitin
logic.globals = Built-in Variables
@@ -615,6 +706,8 @@ toolmode.drawteams.description = Draw teams instead of blocks.
#unused
toolmode.underliquid = Under Liquids
toolmode.underliquid.description = Draw floors under liquid tiles.
toolmode.fillunderliquid = Fill Under Liquids
toolmode.fillunderliquid.description = Fill floors under liquid tiles.
filters.empty = [lightgray]Walang mga filter! Magdagdag ng isa gamit ang button sa ibaba.
@@ -678,6 +771,8 @@ locales.showsame = Show properties that have same values in different locales
locales.viewproperty = View in all locales
locales.viewing = Viewing property "{0}"
locales.addicon = Add Icon
locales.property.name = name
locales.property.text = text
width = Width:
height = Height:
@@ -749,8 +844,10 @@ objective.build = [accent]Build: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.buildunit = [accent]Build Unit: [][lightgray]{0}[]x\n{1}[lightgray]{2}
objective.destroyunits = [accent]Destroy: [][lightgray]{0}[]x Units
objective.enemiesapproaching = [accent]Enemies approaching in [lightgray]{0}[]
#TODO: fix the typo (escelating -> escalating) and update every objective that uses it
objective.enemyescelating = [accent]Enemy production escalating in [lightgray]{0}[]
objective.enemyairunits = [accent]Enemy air unit production beginning in [lightgray]{0}[]
objective.enemyunitproduction = [accent]Enemy unit production begins in [lightgray]{0}[]
objective.destroycore = [accent]Destroy Enemy Core
objective.command = [accent]Command Units
objective.nuclearlaunch = [accent]⚠ Nai-detect ang nuclear strike: [lightgray]{0}
@@ -838,6 +935,7 @@ sector.noswitch.title = Hindi ka mapalit sa ibang Sectors
sector.noswitch = Hindi ka pwede magpalit ng sectors habang ina-atake ang isang sector mo.\n\nSector: [accent]{0}[] on [accent]{1}[]
sector.view = Tingnan ang Sector
sector.foundationrequired = [lightgray] Core: Foundation Required
sector.shielded = [lightgray] Shielded
threat.low = Mababa
threat.medium = Medium
@@ -845,6 +943,10 @@ threat.high = Mataas
threat.extreme = Sobra-sobra
threat.eradication = Tiyak na talo sa hindi handa
difficulty.guide.title = Notice
difficulty.guide = If a sector poses too much of a challenge, campaign difficulty can be adjusted for an easier experience.
difficulty.guide.confirm = Adjust Difficulty
difficulty.casual = Casual
difficulty.easy = Madali
difficulty.normal = Normal
@@ -862,43 +964,43 @@ planet.serpulo.name = Serpulo
planet.erekir.name = Erekir
planet.sun.name = Araw
sector.impact0078.name = Impact 0078
sector.groundZero.name = Ground Zero
sector.craters.name = Mga Bunganga
sector.frozenForest.name = Kagubatang Nagyelo
sector.ruinousShores.name = Ruinous Shores
sector.stainedMountains.name = Stained Mountains
sector.desolateRift.name = Desolate Rift
sector.nuclearComplex.name = Complex para sa Nuklear na Produksyon
sector.overgrowth.name = Labis ng paglalaki
sector.tarFields.name = Tar Fields
sector.saltFlats.name = Salt Flats
sector.fungalPass.name = Fungal Pass
sector.impact0078.name = Impak 0078
sector.groundZero.name = Panimulang Punto
sector.crateredBattleground.name = Cratered Battleground
sector.frozenForest.name = Nagyeyelong Kagubatan
sector.ruinousShores.name = Warak Na Dalampasigan
sector.stainedMountains.name = Mantsadong Bulubundukin
sector.desolateRift.name = Desoladong Lambak
sector.nuclearComplex.name = Nuklear Produksyon Kompleks
sector.overgrowth.name = Kasukalan
sector.tarFields.name = Pinaglalangisan
sector.saltFlats.name = Kaasinan
sector.fungalPass.name = Pungal Na Lagusan
sector.biomassFacility.name = Biomass Synthesis Facility
sector.windsweptIslands.name = Windswept Islands
sector.windsweptIslands.name = Mahanging Kapuluan
sector.extractionOutpost.name = Extraction Outpost
sector.facility32m.name = Pasilidad 32 M
sector.taintedWoods.name = Tainted Woods
sector.infestedCanyons.name = Infested Canyons
sector.taintedWoods.name = Namantsahang Kakahuyan
sector.infestedCanyons.name = Pinamumugarang Kanyon
sector.planetaryTerminal.name = Planetary Launch Terminal
sector.coastline.name = Humid Coastline
sector.navalFortress.name = Kutang Pantubig
sector.polarAerodrome.name = Polar Aerodrome
sector.atolls.name = Atolls
sector.testingGrounds.name = Testing Grounds
sector.perilousHarbor.name = Perilous Harbor
sector.weatheredChannels.name = Weathered Channels
sector.fallenVessel.name = Fallen Vessel
sector.mycelialBastion.name = Mycelial Bastion
sector.frontier.name = Frontier
sector.sunkenPier.name = Sunken Pier
sector.cruxscape.name = Cruxscape
sector.geothermalStronghold.name = Geothermal Stronghold
sector.coastline.name = Mahalumigmig na Baybayin
sector.navalFortress.name = Himpilang Pandagat
sector.atolls.name = Mga Atoll
sector.testingGrounds.name = Lupaing Eksperimental
sector.perilousHarbor.name = Mapanganib Na Daungan
sector.weatheredChannels.name = Napanahunang Mga Tsanel
sector.fallenVessel.name = Bumagsak Na Besel
sector.mycelialBastion.name = Tanggulang Sanghiblayanin
sector.frontier.name = Unahan
sector.sunkenPier.name = Lumubog Na Pantalan
sector.littoralShipyard.name = Littoral Shipyard
sector.cruxscape.name = Kruskapaligiran
sector.geothermalStronghold.name = Tanggulang Heotermal
sector.groundZero.description = Ang pinakamainam na lokasyon upang magsimulang muli. Mababang banta ng kaaway. Kaunting mapagkukunan.\nMagtipon ng mas maraming tingga at tanso hangga't maaari.\nItuloy.
sector.frozenForest.description = Kahit dito, mas malapit sa mga bundok, ang mga spore ay kumalat. Ang napakalamig na temperatura ay hindi maaaring maglaman ng mga ito magpakailanman.\n\nSimulan ang pakikipagsapalaran sa kapangyarihan. Bumuo ng mga generator ng pagkasunog. Matutong gumamit ng mga mender.
sector.saltFlats.description = Sa labas ng disyerto ay matatagpuan ang Salt Flats. Ilang resource ang makikita sa lokasyong ito.\n\nNagtayo ang kaaway ng resource storage complex dito. Tanggalin ang kanilang core. Walang iwanan na nakatayo.
sector.craters.description = Ang tubig ay naipon sa bunganga na ito, relic ng mga lumang digmaan. Bawiin ang lugar. Mangolekta ng buhangin. Gumawa ng metaglass. Magbomba ng tubig upang palamig ang mga turret at drill.
sector.crateredBattleground.description = Water has accumulated in this crater, relic of the old wars. Reclaim the area. Collect sand. Smelt metaglass. Pump water to cool turrets and drills.
sector.ruinousShores.description = Nakalipas ang mga basura, ay ang baybayin. Minsan, ang lokasyong ito ay mayroong hanay ng pagtatanggol sa baybayin. Hindi gaanong natitira. Tanging ang pinakapangunahing mga istruktura ng depensa ang nananatiling hindi nasaktan, lahat ng iba pa ay nabawasan sa scrap.\nIpagpatuloy ang pagpapalawak. Tuklasin muli ang teknolohiya.
sector.stainedMountains.description = Sa kabilang bahagi ng lupain ay matatagpuan ang mga bundok, ngunit hindi nababahiran ng mga spores.\nI-extract ang masaganang titanium sa lugar na ito. Alamin kung paano ito gamitin.\n\nMas malaki ang presensya ng kaaway dito. Huwag silang bigyan ng oras na ipadala ang kanilang pinakamalakas na unit.
sector.overgrowth.description = Ang lugar na ito ay tinutubuan, mas malapit sa pinagmumulan ng mga spores.\nNagtatag ang kalaban ng isang outpost dito. Bumuo ng mga yunit ng Titan. Sirain mo. Bawiin ang nawala.
@@ -913,6 +1015,17 @@ sector.impact0078.description = Dito nakalatag ang mga labi ng interstellar tran
sector.planetaryTerminal.description = Ang huling target.\n\nAng coastal base na ito ay naglalaman ng isang istraktura na may kakayahang maglunsad ng mga Core sa mga lokal na planeta. Ito ay napakahusay na binabantayan.\n\nGumawa ng mga yunit ng hukbong-dagat. Tanggalin ang kalaban sa lalong madaling panahon. Magsaliksik sa istraktura ng paglulunsad.
sector.coastline.description = Remnants of naval unit technology have been detected at this location. Repel the enemy attacks, capture this sector, and acquire the technology.
sector.navalFortress.description = The enemy has established a base on a remote, naturally-fortified island. Destroy this outpost. Acquire their advanced naval craft technology, and research it.
sector.facility32m.description = This sector contains the moldering remnants of an explosives production facility.\n\nCapture this area. Research the Blast Mixer. Produce Blast Compound for use as turret ammunition.
sector.taintedWoods.description = [gray][optional objective][]\nRich in oil reserves, this sector contains large masses of fungal growth, making it difficult to traverse.\n\nUtilize its resources to produce Plastanium. Fend off the enemy.
sector.sunkenPier.description = [gray][optional objective][]\nOnce an offshore oil platform, this facility has long-since fallen into disrepair.\n\nHigh amounts of enemy naval units detected. Be prepared for attacks from multiple directions.
sector.atolls.description = [gray][optional objective][]\nMultiple enemy naval bases have been detected at this location.\n\nUtilize Mega payload units to transport ground forces into attack positions. Build naval units to destroy the peripheral outposts.
sector.frontier.description = A small enemy outpost has been detected here.\n\nBuild Mono units in order to harvest resources more effectively. Utilize the Additive Reconstructor to construct stronger units.
sector.infestedCanyons.description = Beyond the mountains lies a winding river valley, now covered in layers of spore moss.\n\nHold your ground against the enemy onslaught. Construct naval units. Eliminate all enemy cores.
sector.testingGrounds.description = [gray][optional objective][]\nA crater-riddled desert valley, formerly used as a testing ground for military projects.\n\nDue to lack of water, establishing a presence in this location may pose a challenge. Be prepared for attacks from multiple directions.
sector.perilousHarbor.description = Multiple enemy bases have been established across this treacherous coastal region.\n\nConstruct naval units, and crush their fortifications.
sector.weatheredChannels.description = [gray][optional objective][]\nThis channel system harbors abundant resources. Land your core. Fend off the enemy waves to claim them.\n\nThe enemy will take multiple routes to assault your infrastructure. Look for signs of a possible ambush and defend accordingly.
sector.mycelialBastion.description = This fortified complex lies deep within the fungal regions, threatening neighboring sectors with advanced insectoid units.\n\nAssault the complex. Obtain the technology within. Utilize units capable of traversing walls.
sector.littoralShipyard.description = Located upon the far reaches of the central sea, this naval production facility contains technology for building advanced units.\n\nDestroy this facility, and use its technology to further assist in the completion of the final objective.
sector.onset.name = The Onset
sector.aegis.name = Aegis
@@ -966,6 +1079,10 @@ status.blasted.name = Blasted
status.corroded.name = Corroded
status.unmoving.name = Di-magalaw
status.boss.name = Namumuno
status.slow.name = Slow
status.fast.name = Fast
status.shielded.name = Shielded
status.disarmed.name = Disarmed
settings.language = Wika
settings.data = Game Data
@@ -985,6 +1102,13 @@ settings.clearresearch = I-Clear Research
settings.clearresearch.confirm = Sigurado ka bang gusto mong i-clear ang lahat ng iyong campaign research?
settings.clearcampaignsaves = Tanggalin ang mga Campaign Save
settings.clearcampaignsaves.confirm = Sigurado ka bang gusto mong i-clear ang lahat ng iyong mga campaign save?
settings.clearplanetdata = Clear Planet Data
settings.planetselect = Planet: {0}
settings.clearplanetresearch = Clear Planet Research
settings.clearplanetresearch.confirm = Are you sure you want to clear {0}'s research?
settings.clearplanetcampaignsaves = Clear Planet Campaign Saves
settings.clearplanetcampaignsaves.confirm = Are you sure you want to clear {0}'s campaign saves?
paused = [accent]< Paused >
clear = Clear
banned = [scarlet]Pinagbabawalan!
@@ -1017,6 +1141,7 @@ stat.targetsground = Tinatarget ng mga Ground
stat.crushdamage = Crush Damage
stat.legsplashdamage = Leg Splash Damage
stat.itemsmoved = Bilis ng Pag-galaw
stat.itemsmoved.info = Throughput is often not linear and tied to FPS/TPS.
stat.launchtime = Oras sa pagitan ng mga launches
stat.shootrange = Saklaw
stat.size = Laki
@@ -1039,6 +1164,8 @@ stat.weapons = Armas
stat.bullet = Bala
stat.moduletier = Module Tier
stat.unittype = Uri ng mga Unit
stat.receiverate = Receiving Rate
stat.receiverate.info = Affected by overdrive. Throughput can be increased by placing additional unloaders.
stat.speedincrease = Pag-taas ng bilis
stat.range = Saklaw
stat.drilltier = Mga Drillable
@@ -1047,6 +1174,7 @@ stat.boosteffect = Epekto ng Lakas
stat.maxunits = Max Active Units
stat.health = Health
stat.armor = Baluti
stat.armor.info = Applied damage = incoming damage - armor.\nUp to 90% maximum damage reduction.
stat.buildtime = Oras ng pagbuo
stat.maxconsecutive = Max Consecutive
stat.buildcost = Gastos ng pagbuo
@@ -1181,9 +1309,12 @@ bullet.splashdamage = [stat]{0}[lightgray] area dmg ~[stat] {1}[lightgray] tiles
bullet.incendiary = [stat]incendiary
bullet.homing = [stat]homing
bullet.armorpierce = [stat]armor piercing
bullet.armorweakness = [red]{0}%[lightgray] armor weakness
bullet.armorpiercing = [stat]{0}%[lightgray] armor piercing
bullet.armorweakness = [red]{0}x[lightgray] armor weakness
bullet.partialarmorpierce = [stat]{0}%[lightgray] armor piercing
bullet.antiarmor = [stat]{0}x[lightgray] anti-armor
bullet.blockarmorweakness = [red]{0}x[lightgray] building armor weakness
bullet.blockpartialarmorpierce = [stat]{0}%[lightgray] building armor pierce
bullet.blockantiarmor = [stat]{0}x[lightgray] building anti-armor
bullet.maxdamagefraction = [stat]{0}%[lightgray] damage limit
bullet.suppression = [stat]{0} sec[lightgray] repair suppression ~ [stat]{1}[lightgray] tiles
bullet.empradius = [stat]{0}[lightgray] tiles EMP radius
@@ -1252,7 +1383,6 @@ setting.shadows.name = Shadows
setting.blockreplace.name = Automatic Block Suggestions
setting.linear.name = Linear Filtering
setting.hints.name = Hints
setting.logichints.name = Logic Hints
setting.backgroundpause.name = Pause In Background
setting.buildautopause.name = Auto-Pause Building
setting.doubletapmine.name = Double-Tap to Mine
@@ -1262,6 +1392,8 @@ setting.modcrashdisable.name = Huwag paganahin ang Mods Sa Startup Crash
setting.animatedwater.name = Animated Fluids
setting.animatedshields.name = Animated Shields
setting.playerindicators.name = Player Indicators
setting.showpings.name = Show Pings
setting.showotherbuildplans.name = Show Other Player's Build Plans
setting.indicators.name = Enemy Indicators
setting.autotarget.name = Auto-Target
setting.keyboard.name = Mouse+Keyboard Controls
@@ -1271,6 +1403,8 @@ setting.fpscap.none = None
setting.fpscap.text = {0} FPS
setting.uiscale.name = UI Scaling[lightgray] (restart required)[]
setting.uiscale.description = Kinakailangan ang pag-restart upang mailapat ang mga pagbabago.
setting.uiEdgePadding.name = UI Edge Padding
setting.uiEdgePadding.description = Adds padding to the edges of the UI. Useful for displays with rounded corners or notches.
setting.swapdiagonal.name = Palaging Diagonal na Placement
setting.screenshake.name = Screen Shake
setting.bloomintensity.name = Bloom Intensity
@@ -1284,9 +1418,6 @@ setting.saveinterval.name = Save Interval
setting.seconds = {0} segundo
setting.milliseconds = {0} millisegundo
setting.fullscreen.name = Fullscreen
setting.borderlesswindow.name = Borderless Window[lightgray] (restart may be required)
setting.borderlesswindow.name.windows = Borderless Fullscreen
setting.borderlesswindow.description = Maaaring kailanganin ang pag-restart upang mailapat ang mga pagbabago.
setting.fps.name = Ipakita ang FPS & Ping
setting.console.name = Enable Console
setting.smoothcamera.name = Smooth Camera
@@ -1305,7 +1436,6 @@ setting.ambientvol.name = Ambient Volume
setting.mutemusic.name = Mute Music
setting.sfxvol.name = SFX Volume
setting.mutesound.name = Mute Sound
setting.crashreport.name = Mag-send ng Anonymous Crash Reports
setting.communityservers.name = Fetch Community Server List
setting.savecreate.name = Auto-Create Saves
setting.steampublichost.name = Public Game Visibility
@@ -1336,6 +1466,8 @@ category.command.name = Unit Command
category.multiplayer.name = Multiplayer
category.blocks.name = Block Select
placement.blockselectkeys = \n[lightgray]Key: [{0},
ping.text = Ping:
keybind.ping.name = Ping Location
keybind.respawn.name = Respawn
keybind.control.name = Control Unit
keybind.clear_building.name = Clear Building
@@ -1359,13 +1491,14 @@ keybind.unit_stance_hold_fire.name = Unit Stance: Hold Fire
keybind.unit_stance_pursue_target.name = Unit Stance: Pursue Target
keybind.unit_stance_patrol.name = Unit Stance: Patrol
keybind.unit_stance_ram.name = Unit Stance: Ram
keybind.unit_stance_boost.name = Unit Stance: Boost
keybind.unit_stance_hold_position.name = Unit Stance: Hold Position
keybind.unit_command_move.name = Unit Command: Move
keybind.unit_command_repair.name = Unit Command: Repair
keybind.unit_command_rebuild.name = Unit Command: Rebuild
keybind.unit_command_assist.name = Unit Command: Assist
keybind.unit_command_mine.name = Unit Command: Mine
keybind.unit_command_boost.name = Unit Command: Boost
keybind.unit_command_load_units.name = Unit Command: Load Units
keybind.unit_command_load_blocks.name = Unit Command: Load Blocks
keybind.unit_command_unload_payload.name = Unit Command: Unload Payload
@@ -1485,6 +1618,8 @@ rules.checkplacement.info = When disabled, buildings of this team are ignored in
rules.enemyCheat = Infinite AI (Red Team) Resources
rules.blockhealthmultiplier = Block Health Multiplier
rules.blockdamagemultiplier = Block Damage Multiplier
rules.unitfactoryactivation = Unit Factory Activation Delay
rules.unitfactoryactivation.objective = Unit Factories Activating: {0}
rules.unitbuildspeedmultiplier = Unit Production Speed Multiplier
rules.unitcostmultiplier = Unit Cost Multiplier
rules.unithealthmultiplier = Unit Health Multiplier
@@ -1526,8 +1661,9 @@ rules.invasions = Enemy Sector Invasions
rules.legacylaunchpads = Legacy Launch Pad Mechanics
rules.legacylaunchpads.info = Allows using launch pads without landing pads, as in 7.0.
landingpad.legacy.disabled = [scarlet]\ue815 Disabled[lightgray] (Legacy Launch Pads enabled)
rules.showspawns = Show Enemy Spawns
rules.hidespawns = Hide Enemy Spawns
rules.randomwaveai = Unpredictable Wave AI
rules.pauseDisabled = Disable Pausing
rules.fire = Fire
rules.anyenv = <Any>
rules.explosions = Block/Unit Explosion Damage
@@ -2049,6 +2185,9 @@ block.disperse.name = Disperse
block.afflict.name = Afflict
block.lustre.name = Lustre
block.scathe.name = Scathe
block.scathe.carbide.info = Travels significantly faster.\nModerate damage at any range.
block.scathe.surge-alloy.info = Splits into micro missiles.\nHeavy damage at close distance.
block.scathe.phase-fabric.info = Equipped with a force field.\nLow damage, largest radius.
block.tank-refabricator.name = Tank Refabricator
block.mech-refabricator.name = Mech Refabricator
block.ship-refabricator.name = Ship Refabricator
@@ -2060,6 +2199,7 @@ block.reinforced-payload-router.name = Reinforced Payload Router
block.payload-mass-driver.name = Payload Mass Driver
block.small-deconstructor.name = Small Deconstructor
block.canvas.name = Canvas
block.large-canvas.name = Large Canvas
block.world-processor.name = World Processor
block.world-cell.name = World Cell
block.tank-fabricator.name = Tank Fabricator
@@ -2122,7 +2262,6 @@ hint.payloadPickup.mobile = [accent]I-tap nang matagal ang[] isang maliit na blo
hint.payloadDrop = Pindutin ang [accent]][] para mag-drop ng payload.
hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a payload there.
hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires.
hint.generator = :combustion-generator: [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with :power-node: [accent]Power Nodes[].
hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or :graphite: [accent]Graphite[] :duo:Duo/:salvo:Salvo ammunition to take Guardians down.
hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a :core-foundation: [accent]Foundation[] core over the :core-shard: [accent]Shard[] core. Make sure it is free from nearby obstructions.
hint.serpuloCoreZone = Additional cores may be constructed on :core-zone: [accent]Core Zone[] tiles.
@@ -2154,6 +2293,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts.
gz.zone3 = A wave will begin now.\nGet ready.
gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[].
ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[].
ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[].
ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core.
ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[].
ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[].
ff.coalpower.objective = :combustion-generator: Produce Power
ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator.
ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node.
ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node.
fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[].
fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units.
@@ -2510,6 +2659,7 @@ block.unit-repair-tower.description = Repairs all units in its vicinity. Require
block.radar.description = Gradually uncovers terrain and enemy units in a large radius. Requires power.
block.shockwave-tower.description = Damages and destroys enemy projectiles in a radius. Requires cyanogen.
block.canvas.description = Displays a simple image with a pre-defined palette. Editable.
block.large-canvas.description = Displays a simple image with a pre-defined palette. Editable.
unit.dagger.description = Fires standard bullets at all nearby enemies.
unit.mace.description = Fires streams of flame at all nearby enemies.
@@ -2540,7 +2690,7 @@ unit.risso.description = Fires a barrage of missiles and bullets at all nearby e
unit.minke.description = Fires shells and standard bullets at nearby ground targets.
unit.bryde.description = Fires long-range artillery shells and missiles at enemies.
unit.sei.description = Fires a barrage of missiles and armor-piercing bullets at enemies.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies. Constructs flare units.
unit.omura.description = Fires a long-range piercing railgun bolt at enemies.
unit.alpha.description = Defends the Shard core from enemies. Builds structures.
unit.beta.description = Defends the Foundation core from enemies. Builds structures.
unit.gamma.description = Defends the Nucleus core from enemies. Builds structures.
@@ -2584,6 +2734,7 @@ lst.radar = Locate units around a building with range.
lst.sensor = Get data from a building or unit.
lst.set = Set a variable.
lst.operation = Perform an operation on 1-2 variables.
lst.select = Conditionally set a variable to one of two values.
lst.end = Jump to the top of the instruction stack.
lst.wait = Wait a certain number of seconds.
lst.stop = Halt execution of this processor.
@@ -2596,6 +2747,7 @@ lst.unitlocate = Locate a specific type of position/building anywhere on the map
lst.getblock = Get tile data at any location.
lst.setblock = Set tile data at any location.
lst.spawnunit = Spawn unit at a location.
lst.spawnbullet = Spawns a bullet at a location.
lst.applystatus = Apply or clear a status effect from a uniut.
lst.weathersense = Check if a type of weather is active.
lst.weatherset = Set the current state of a type of weather.
@@ -2614,9 +2766,11 @@ lst.setprop = Sets a property of a unit or building.
lst.effect = Create a particle effect.
lst.sync = Sync a variable across the network.\nOnly invoked 10 times a second at most.
lst.playsound = Plays a sound.\nVolume and pan can be a global value, or calculated based on position.
lst.playmusic = Plays a music track by name, e.g. [accent]"game1"[].\nIf [accent]interrupt[] is true, the previously playing music will be stopped.\nPlaying with null music and interrupt set to true will stop the current track.\nNote that music from data patches must be prefixed with [accent]dp-[].
lst.makemarker = Create a new logic marker in the world.\nAn ID to identify this marker must be provided.\nMarkers currently limited to 20,000 per world.
lst.setmarker = Set a property for a marker.\nThe ID used must be the same as in the Make Marker instruction.
lst.localeprint = Add map locale property value to the text buffer.\nTo set map locale bundles in map editor, check [accent]Map Info > Locale Bundles[].\nIf client is a mobile device, tries to print a property ending in ".mobile" first.
lst.query = Queries units/buildings in a specified area.\nResults are outputted into [accent]@queries[].\nResults can be read from [accent]@queries[] using the [accent]Read[] instruction and an index.\nLength of [accent]@queries[] can be sensed using [accent]@size[] as a parameter.
lglobal.false = 0
lglobal.true = 1

Some files were not shown because too many files have changed in this diff Show More