Скачать моды для Mindustry
Mindustry – песочница выполненная в 2D стиле. Здесь вы будете добывать ресурсы, строить заводы, буры, электростанции и многое многое другое. Игра стоит того, чтобы в нее поиграть.
Как установить моды для Mindustry:
1. В главном меню находим раздел Модификации и заходим в него.
2. Нажимаем кнопку импортировать модификацию.
3. Высвечивается окно с папками, выберите ту, в которую скачали архив с модом. Обычно это либо рабочий стол (1), либо загрузки(2).
4. Уже в папке находим наш мод, выбираем его и нажимаем кнопку загрузить.
5. Ваш мод установлен! Не пугайтесь надписи необходим перезапуск, игра автоматически перезапустит все модификации после выхода из этого раздела. Удачных вам игр!
Моды для Mindustry
1.ExampleMod by Anuken
Добавляет еще больше заводов, карт и ресурсов в ваш мир Mindustry, например золото, серебро и т.д. Мод был разработан самим автором игры как небольшое, но интересное дополнение. По его словам, эта модификация служит примером для всех остальных, которые будут созданы после этой.
2. AdvanceContent by EyeOfDarkness
Добавляет в игру более 50 новых турелей с новыми видами атаки. Действительно, Mindustry не хватает комбинированных турелей, только стандартные. Данная модификация решит эту проблему. К слову автор также призывает народ делать больше дополнений для игры, показав своим примером, как это стоит делать.
3. Mechanical Warfare by JerichoFletcher
Мод Mindustry, в котором добавляются совершенно новые юниты, мехи и турели. Не для самых слабых генераторов.
Особенности:
Новые предметы и жидкости (с соответствующими мастерами)
Мощные юниты, корабли и роботы разделены на 4 класса
Новые турели как средство защиты от новых врагов
Более сложные зоны кампании с новыми плитками окружения
4. Commandblocks by sk7725
Этот мод добавляет командные блоки в стиле Minecraft, а также другие блоки. Эта модификация позволит делать вам невозможные вещи, автоматическая постройка, настраиваемое движение юнитов и т.д. Однако нужно разбираться в этой механике.
Блоки мода: Командный блок, Блок команд для юнита, Устройство тегов, Счетчик позиции, Mp3-плеер, Стена камеры, Стена направленной камеры, Блок клавиш, Транзистор, Блок питания узла Logic Gate 2.
5. Vanilla-Upgraded by Mesokrix
6. Progressed Materials by MEEPofFaith
Update: В связи с выходом Mindustry v.6 мод был совмещен с Progressed Materials. Добавили:
Коллайдер;
Тектанит – новый материал, в том числе для коллайдера;
Эраптор – выливает лаву на врагов, колоссальный урон;
Миниган;
Тесла – фокусит 1 врага(большой урон);
7. Better Blocks Mod by MemFaceGo
Этот мод добавляет больше блоков, материалов и врагов. Расширит ваш набор блоков для защиты и не только.
8. Extended Unit Arsenal by Garmundo
В mindustry добавлены 9 новых юнитов «крейсерского класса» (вариант ревенанта), 2 новых «столицы» (вместе с фабриками личей и жнецов) и 2 мощных эсминца класса «материнский корабль». Все требуют ресурсов ванили и имеют спрайты, напоминающие стиль ванильного искусства.
Турели: 7 турелей с ванильными ресурсами и 5 с использованием специальных руд 9 новых «темных» вражеских юнитов Плюс 11 карт кампании и карта битвы с боссом.
9. ShadowMod by Pietro303HD
Добавит в игру особый ресурс Теневой материал, из которого в дальнейшем можно создать кучу новых турелей и т.д.
10. NoiTech by XZimur
Как заявляет автор, эта модификация должна усложнить геймплей вашей игры. Добавляет множество различных ресурсов, блоков. Заводов и т.д. Этот мод поддерживает русский язык.
11. Braindustry Mod by pixaxeofpixie
Добавляет новый игровой контент:
2 типа юнитов ;
Более 10 турелей;
Новые блоки редактора ;
Новые жидкости ;
Новые материалы;
12. ReVision by Slava0135 
Мод добавляет большое количество техники, турелей и т.д.
Ветряные турбины;
Машины для добычи снега/воды;
Новые дрели ит.д из металлолома, теперь есть смысл его добывать;
и т.д;
13. Diamond Ore by z0mbiesrock
Данный мод добавляет Алмазную руду и очень много машин с ней связанных.
Алмазный бур – чрезвычайно быстрое сверло, которое может добывать все, что можно извлечь.
Сжатый алмазный бур – чрезвычайно быстрое сверло, которое может добывать все, что можно извлечь. Занимает только одну плитку.
Алмазная турель – имеет четыре размера и принимает различные типы боеприпасов.
Заградительная турель – скорострельная турель с большим уроном для ближнего боя.
Корабельная площадка Эпсилон – превратите своего робота в медленную, но надежную транспортную и горнодобывающую машину.
Дальнобойный мех. пад – превратите своего меха в меха дальнобойной артиллерии.
Плазменный мех.пад – Превратите своего робота в большого медленного робота, который запускает шары плазмы.
Телепортитовый мех.пад – превратите своего робота в несколько медленный корабль, который может телепортироваться.
Завод быстрейших дронов – строит дешевые быстрые дроны, которые слабые, но в которые трудно попасть. На каждой фабрике может появиться до 10 дронов.
Завод гранатометов – строит наземные подразделения гранатометов.
Воздушная фабрика – строит летучие воздушные юниты.
Наземная фабрика – строит быстрые ракетные установки наземного базирования.
Охотничья фабрика- строит тяжелые дробовики наземного базирования.
Фабрика Тайсеров – строит медленные, но очень мощные молниеносные авиационные юниты.
Фабрика Спайкеров – строит быстрые прочные отряды ближнего боя.
Завод чинил – строит мобильные юниты целителей.
Алмазный синтезатор – питаемый шлаком, он использует большое количество угля для синтеза алмаза, который идентичен природным алмазам по химическому составу.
Криогеновый компрессор – использует энергию для превращения криогенной жидкости в твердые куски, которые вы можете запускать с помощью ядра.
Криогеновый диссипатор – использует энергию для превращения криогемов обратно в криогенную жидкость для использования в охлаждающих турелях или ториевых реакторах.
Создатель струн – создает фазовую цепочку, которая может быть превращена в фазовую ткань или использоваться с волновыми турелями для заманивания вражеских юнитов.
Отвердитель фазовой цепочки – превращает фазовую цепочку в фазовую ткань.
Стена из алмаза – четыре размера; могут серьезно относиться к большим наказаниям, особенно за огромные и гигантские размеры.
Алмазная солнечная панель – гораздо более прочная солнечная панель.
Алмазный контейнер – прочный блок для хранения.
Массовый распределитель – маршрутизатор большего размера.
Водный бур – компактный водоотборник
Усиленный аккумулятор – блок 2×2, объединяющий 4 обычных аккумулятора в один прочный блок.
Усиленный резервуар для жидкости – блок 5×5 с гораздо большей емкостью для жидкости.
Усиленный распределитель мощности – 3×3 силовой узел с диапазоном 50 блоков. Его изолированное покрытие делает невозможным автоматическое подключение.
Импульсный реактор – блок электрогенератора 6х6, работающий на импульсном сплаве. Очень нестабильно и требует большого количества криогенной жидкости для безопасной работы …
Хрустальный конвейер – лучший конвейер с большим здоровьем и скоростью. Имеет бронированный купол над ним, который блокирует движение наземных юнитов.
Турель “Тор” – ракетная турель в поздней игре.
Турель “Один(не одИн)” – зенитная турель в поздней игре.
Турель “Локи” – противотанковая турель для поздней игры.
Пиро-печь – Кремниевый завод в конце игры
Крио-сепаратор – сепаратор поздней игры, который может выводить любой ванильный ресурс в игре. * Фазовая ткань тупо редка.
Мульти-компрессор – пластановый компрессор на поздней стадии разработки.
Мульти Пиро-смешиватель – Пиратитовый смеситель для поздней стадии игры
Ультра миксер – Взрывной миксер для поздней стадии разработки
Тяжелый завод сплавов – более крупный смеситель для сплавов.
Пиро-печь для металлолома – Создайте сплав для ударных волн из лома, используя пиратит в качестве катализатора.
Промышленный алмазный синтезатор – более крупный и эффективный алмазный синтезатор.
Дифференциальный реактор – Дифференциальный генератор был слабаком до этого мода! Теперь это очень мощно, и всем это нравится!
14. Heavy Armaments Industries by Eschatologue 
Данный мод включил в себе 2 направления: Добавить кучу контента для техники, машиностроения и также для добычи ресурсов. Модификация получилась годная, да и еще русский язык поддерживается.
15. Refine by Slava0135 
Модификация усложняет процесс получения металлов. Теперь при добыче буром, будет появляться необработанные (сырые) медь/свинец/титан. Уже их нужно будет переплавить в печи. Очень интересный мод, советую. Вообще данный автор делает хорошие вещи.
Здесь вы узнали самые лучшие, актуальные моды для Mindustry. В дальнейшем мы будем добавлять новые модификации.
Если Ты знаешь какой-то классный мод – пиши незамедлительно его в комментарии, обязательно рассмотрим и, если он будет хорошим, выложим в статью.
Modding Introduction
Mindustry mods are simply directories of assets. There are many ways to use the modding API, depending on exactly what you want to do, and how far you’re willing to go to do it.
You could just resprite existing game content, you can create new game content with the simpler Json API (which is the main focus of this documentation), you can add custom sounds (or reuse existing ones). It’s possible to add maps to campaign mode, and add scripts to program special behavior into your mod, like custom effects.
Sharing your mod is as simple as giving someone your project directory; mods are also cross platfrom to any platform that supports them. You’ll want to use GitHub (or a similar service) for hosting your source code. To make mods all you really need is any computer with a text editor.
Directory Structure
Your project directory should look something like this:
Every platform has a different user application data directory, and this is where your mods should be placed:
Note that your filenames should be lowercased and hyphen separated:
Hjson
Mindustry uses Hjson, which for anyone who knows Json, is simply a superset of the very popular serialization language known as Json. – This means that any valid Json will work, but you get extra useful stuff:
If you don’t know any of those words. – A serialization language, is simply a language which encodes information for a program, and encode means to translate informantion from one form to another, and in this case, to translate text into Java data structures.
mod.hjson
At the root of your project directory, you must have a mod.json which defines the basic metadata for your project. This file can also be (optionally) named mod.hjson to potentially help your text editor pick better syntax highlighting.
Content
At the root of your project directory you can have a content/ directory, this is where all the Json/Hjson data goes. Inside of content/ you have subdirectories for the various kinds of content, these are the current common ones:
Note that each one of these subdirectories needs a specific content type. The filenames of these files is important, because the stem name of your path (filename without the extension) is used to reference it.
Furthermore the files within these content/ /* directories may be arbitrarly nested into other sub-directories of any name, to help you organize them further, for example:
The content of these files will tend to look something like this:
| field | type | notes |
|---|---|---|
| type | String | Content type of this object. |
| name | String | Displayed name of content. |
| description | String | Displayed description of content. |
Other fields included will be the fields of the type itself.
Types
Types have numerous fields, but the important one is type ; this is a special field used by the content parser, that changes which type your object is. A Router type can’t be a Turret type, as they’re just completely different.
While not particularly useful for vanilla types, this can be used to load block types from other Java mods as dependencies.
Tech Tree
Much like type there exist another magical field known as research which can go at the root of any block object to put it in the techtree.
| type | cost | notes |
|---|---|---|
| blocks | requirements ^ 1.1 * 20 * researchCostMultiplier | researchCostMultiplier is a stat that can be set on blocks |
| units | requirements ^ 1.1 * 50 | — |
The cost is then rounded down to the nearest 10, 100, 1k, 10k, or 100k depending on how expensive the cost is.
requirements is the cost of the block or unit. Units use their build cost/upgrade cost for the calculations.
If you want to set custom research requirements use this object in place of just a name:
This can be used to override block or unit costs, or make resources need to be researched instead of just having to produce it.
Sprites
If any of them are not 32-bit RGBA formatted, fix them.
You can find all the vanilla sprites here:
Another thing to know about sprites is that some of them are modified by the game. Turrets specifically have a black border added to them, so you must account for that while making your sprites, leaving transparent space around turrets for example: Ripple
Sound
Here’s a list of built-in sounds:
artillery back bang beam bigshot boom breaks build buttonClick click combustion conveyor corexplode cutter door drill explosion explosionbig fire flame flame2 grinding hum laser laserbig laserblast lasercharge lasercharge2 lasershoot machine message mineDeploy minebeam missile mud noammo pew place plantBreak plasmaboom plasmadrop press pulse railgun rain release respawn respawning rockBreak sap shield shoot shootBig shootSnap shotgun smelter spark splash spray steam swish techloop thruster tractorbeam unlock wave wind wind2 wind3 windhowl windowHide none
Dependencies
You can add dependencies to your mod by simple adding other mods name in your mod.json :
To reference the other mods assets, you must prefix the asset with the other mods name:
Bundles
An optional addition to your mod is called bundles. The main use of bundles are give translations of your content, but there’s no reason you couldn’t use them in English. These are plaintext files which go in the bundles/ subdirectory, and they should be named something like bundle_ru.properties (for Russian).
The contents of this file is very simple:
If you’ve read the first few sections of this guide, you’ll spot it right away:
With your own custom bundle lines for use in scripts you can use whatever key you like:
List of content types:
item block bullet liquid status unit weather sector error planet
List of bundle suffixes relative to languages:
en hu vi ro bg lt fil pt_BR pl da zh_TW it tk es pt_PT fi in_ID be ja de sv eu ko fr zh_CN nl_BE cs th tr nl et uk_UA ru
GitHub
Once you have a mod of some kind, you’ll want to actually share it, and you may even want to work with other people on it, and to do that you can use GitHub. If you don’t know what Git (or GitHub) is at all, then you should look into GitHub Desktop, otherwise simply use your favorite command line tool or text editor plugin.
All you need understand is how to open repositories on GitHub, stage and commit changes in your local repository, and push changes to the GitHub repository. Once your project is on GitHub, there are three ways to share it:
Mindustry Modding Guide
Modding documentation for Mindustry v104 (0cbd9a1fc)
Table of Contents
1 Overview
Mindustry mods are simply directories of assests. There are many ways to use the modding API, depending on exactly what you want to do, and how far you’re willing to go to do it.
You could just resprite existing game content, you can create new game content with the simpler Json API (which is the main focus of this documentation), you can add custom sounds (or reuse existing ones). It’s possible to add maps to campaign mode, and add scripts to program special behavior into your mod, like custom effects.
Sharing your mod is as simple as giving someone your project directory; mods are also cross platfrom to any platform that supports them. Realistically speaking you’ll want to use GitHub, you should also checkout the Example Mod repository on GitHub: https://github.com/Anuken/ExampleMod
To make mods all you really need is any computer with a text editor.
1.1 Directory Structure
Your project directory should look something like this:
Every platform has a different user application data directory, and this is where your mods should be placed:
Note that your filenames should be lowercased and hyphen separated:
1.2 Hjson
Mindustry uses Hjson, which for anyone who knows Json, is simply a superset of the very popular serialization language known as Json. – This means that any valid Json will work, but you get extra useful stuff:
If you don’t know any of those words. – A serialization language, is simply a language which encodes information for a program, and encode means to translate informantion from one form to another, and in this case, to translate text into Java data structures.
1.3 mod.json
At the root of your project directory, you must have a mod.json which defines the basic metadata for your project. This file can also be (optionally) named mod.hjson to potentially help your text editor pick better syntax highlighting.
1.4 Content
At the root of your project directory you can have a content/ directory, and this is where all the Json/Hjson data goes. Inside of content/ you have subdirectories for the various kinds of content, these are the current common ones:
Note that each one of these subdirectories needs a specific content type. The filenames of these files is important, because the stem name of your path (filename without the extension) is used to reference it.
Furthermore the files within theseb content/ /* directories may be arbitrarly nested into other sub-directories of any name, to help you organize them further, for example:
The content of these files will tend to look something like this:
| field | type | notes |
|---|---|---|
| type | String | Content type of this object. |
| name | String | Displayed name of content. |
| description | String | Displayed description of content. |
Other fields included will be the fields of the type itself.
1.5 Types
Types have numerous fields, but the important one is type ; this is a special field used by the content parser, that changes which type your object is. A Router type can’t be a Turret type, as they’re just completely different.
type can be refer to the actual type field of the object. A type may also refer to other things like float is a type so it means you can type 0.3 in a field.
1.6 Tech Tree
Much like type there exist another magical field known as research which can go at the root of any block object to put it in the techtree.
1.7 Sprites
Sprites can simply be dropped in the sprites/ subdirectory. The content parser will look through it recursively, so you can organize them how ever you feel.
You can find all the vanilla sprites here:
Another thing to know about sprites is that some of them are modified by the game. Turrets specifically have a black border added to them, so you must account for that while making your sprites, leaving transparent space around turrets for example: Ripple
1.8 Sound
Custom sounds can be added through the modding system by dropping them in the sounds/ subdirectory. It doesn’t matter where you put them. Two formats are needed:
Here’s a list of built-in sounds:
1.9 Dependencies
You can add dependencies to your mod by simple adding other mods name in your mod.json :
To reference the other mods assets, you must prefix the asset with the other mods name:
1.10 Bundles
An optional addition to your mod is called bundles. The main use of bundles are give translations of your content, but there’s no reason you couldn’t use them in English. These are plaintext files which go in the bundles/ subdirectory, and they should be named something like bundle_ru.properties (for Russian).
The contents of this file is very simple:
If you’ve read the first few sections of this guide, you’ll spot it right away:
List of content type:
List of filenames relative to languages:
1.11 Markup
The text renderer uses a simple makeup language for coloring text.
Built-in Colors
1.12 Schematic
As of now, the only purpose of schematics is to give a zone a loadout.
1.13 Scripts
1.14 GitHub
Once you have a mod of some kind, you’ll want to actually share it, and you may even want to work with other people on it, and to do that you can use GitHub. If you don’t know what Git (or GitHub) is at all, then you should look into GitHub Desktop, otherwise simply use your favorite command line tool or text editor plugin.
All you need understand is how to open repositories on GitHub, stage and commit changes in your local repository, and push changes to the GitHub repository. Once your project is on GitHub, there are three ways to share it:
1.15 FAQ
1.16 Change Log
This is a log of changes done on the Mindustry Master branch that affected the modding API. The sections are ordered by date commited, and provide a description of what was changed, with a link to the diff on Github.
Mar 5
Feb 11
[ commit improved battery brightness display ]
Jan 24
[ commit fixed #1436 / fixed crawlers not exploding ]
Jan 23
Jan 22
[ commit added default ore flags for modded ores ]
Jan 19
[ commit cleanup of scripts ]
Jan 14
Jan 08
[ commit make rebuildable a block attribute (#1338) ]
Jan 07
Jan 04
[ commit merge remote-tracking branch ‘origin/master’ ]
Jan 03
[ commit use findAll to iterate through mod content ]
Dec 12
[ commit add liquid void block ]
Dec 09
[ commit Removed unnecessary unit types ]
Dec 08
[ commit Merge branches master and rhino-js-suffering ]
Dec 04
[ commit Added experimental server block syncing ]
Nov 26
[ commit Texture overrides / Potential mod texture binding optimizations ]
Nov 22
[ commit Switched to hjson extension ]
Nov 22
[ commit Added optional mod minimum game version ]
Nov 20
[ commit Better mod parsing ]
2 World
2.1 Block
Block is the base type of all blocks in the game. All blocks have at least one sprite, which is picked relative to the blocks name.
Fields for all objects that are blocks.
| field | type | default | notes |
|---|---|---|---|
| update | boolean | whether this block has a tile entity that updates | |
| destructible | boolean | whether this block has health and can be destroyed | |
| unloadable | boolean | true | whether unloaders work on this block |
| solid | boolean | whether this is solid | |
| solidifes | boolean | whether this block CAN be solid. | |
| rotate | boolean | whether this is rotateable | |
| breakable | boolean | whether you can break this with rightclick | |
| rebuildable | boolean | true | whether to add this block to brokenblocks or not (like ShockMine or NuclearReactor ) |
| placeableOn | boolean | true | whether this floor can be placed on. |
| insulated | boolean | false | whether this block has insulating properties. |
| health | int | -1 | tile entity health |
| baseExplosiveness | float | 0 | base block explosiveness |
| floating | boolean | false | whether this block can be placed on edges of liquids. |
| size | int | 1 | multiblock size; 1 makes the block 1×1, 2 makes the block 2×2, and so on. |
| expanded | boolean | false | Whether to draw this block in the expanded draw range. |
| timers | int | 0 | Max of timers used. |
| cacheLayer | CacheLayer | normal | Cache layer. Only used for ‘cached’ rendering. |
| fillesTile | true | Special flag; if false, floor will be drawn under this block even if it is cached. | |
| alwaysReplace | boolean | false | whether this block can be replaced in all cases |
| group | BlockGroup | none | Unless canReplace is overriden, blocks in the same group can replace each other. |
| priority | TargetPriority | base | Targeting priority of this block, as seen by enemies. |
| configurable | boolean | Whether the block can be tapped and selected to configure. | |
| consumesTap | boolean | Whether this block consumes touchDown events when tapped. | |
| drawLiquidLight | boolean | true | Whether to draw the glow of the liquid for this block, if it has one. |
| posConfig | boolean | Whether the config is positional and needs to be shifted. | |
| sync | boolean | Whether to periodically sync this block across the network. | |
| targetable | boolean | true | Whether units target this block. |
| canOverdrive | boolean | true | Whether the overdrive core has any effect on this block. |
| outlineColor | Color | 404049 | Outlined icon color. |
| outlineIcon | boolean | false | Whether the icon region has an outline added. |
| hasShadow | boolean | true | Whether this block has a shadow under it. |
| breakSound | Sound | boom | Sounds made when this block breaks. |
| activeSound | Sound | none | The sound that this block makes while active. One sound loop. Do not overuse. |
| activeSoundVolume | float | 0.5 | Active sound base volume. |
| idleSound | Sound | none | The sound that this block makes while idle. Uses one sound loop for all blocks. |
| idleSoundVolume | float | 0.5 | Idle sound base volume. |
| requirements | [ ItemStack ] | Cost of constructing and researching this block. | |
| category | Category | distribution | Category in place menu. |
| buildCost | float | Cost of building this block; do not modify directly! | |
| buildVisibility | BuildVisibility | hidden | Whether this block is visible and can currently be built. |
| buildCostMultiplier | float | 1 | Multiplier for speed of building this block. |
| instantTransfer | boolean | false | Whether this block has instant transfer. |
| alwaysUnlocked | boolean | false | |
| layer | Layer | null | Layer to draw extra stuff on. |
| layer2 | Layer | null | Extra layer to draw extra stuff on. |
2.2 Consumers
| field | type | notes |
|---|---|---|
| item | String | shorthand for items |
| items | ConsumeItems | consume a number of different items |
| liquid | ConsumeLiquid | consume a single liquid |
| power | float or ConsumePower | consume or buffer power |
| powerBuffered | float | amount of power buffered |
2.3 Consume
Abstract type which defines a type of resource that a block can consume.
| field | type | default | notes |
|---|---|---|---|
| optional | boolean | consumer will not influence consumer validity. | |
| booster | boolean | consumer will be displayed as a boost input. | |
| update | boolean | true |
ConsumeItems
Type to consume ItemStacks.
| field | type |
|---|---|
| items | [ ItemStack ] |
ConsumeLiquid
Type to consume a LiquidStack.
| field | type | default | notes |
|---|---|---|---|
| liquid | String | the name of liquid type consumed | |
| amount | float | amount used per frame | |
| timePeriod | float | 60 | how much time is taken to use this liquid, example: a normal ConsumeLiquid with 10/s and a 10 second timePeriod would display as 100 seconds, but without a time override it would display as 10 liquid/second. This is used for generic crafters. |
ConsumePower
Type to consume or buffer power.
| field | type | notes |
|---|---|---|
| usage | float | The maximum amount of power which can be processed per tick. This might influence efficiency or load a buffer |
| capacity | float | The maximum power capacity in power units. |
| buffered | boolean | True if the module can store power. |
2.4 BlockStorage
Type for blocks which may store a buffer of items or liquid.
| field | type | default |
|---|---|---|
| hasItems | boolean | |
| hasLiquids | boolean | |
| hasPower | boolean | |
| outputsLiquid | boolean | false |
| consumesPower | boolean | true |
| outputsPower | boolean | false |
| itemCapacity | int | 10 |
| liquidCapacity | float | 10 |
| item | float | 10 |
| liquidPressure | float | 1 |
| consumes | Consumers |
2.5 Environment
Environmental blocks are blocks that must be placed from the editor, and they’re the ones that will generally dictate how the game can or will be played. These blocks wont appear on a map unless you’ve built a map to support them.
Floor
Type used for floors themselves or extended to make ores and other things.
















