├── .cache
└── plugin
│ └── git-committers
│ └── page-authors.json
├── .devcontainer
└── devcontainer.json
├── .gitattributes
├── .github
├── ISSUE_TEMPLATE
│ ├── config.yml
│ └── doc_report.yml
└── workflows
│ └── main.yml
├── .gitignore
├── .vscode
└── settings.json
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README.md
├── docs
├── blog
│ ├── .authors.yml
│ ├── index.md
│ └── posts
│ │ └── first_post.md
├── changelogs
│ ├── 0.7.24r.md
│ └── 0.7r.md
├── extra.css
├── guides
│ ├── cooldowns_and_fuel_consumption.md
│ ├── filters.md
│ ├── how_to_report.md
│ ├── objects.md
│ └── storage_system_functions.md
├── img
│ ├── bridge_requester.png
│ ├── chat_box
│ │ ├── toast.png
│ │ └── toast_formatted.png
│ ├── colony_integrator
│ │ ├── citizen_list.png
│ │ └── colony_info.png
│ ├── me_bridge
│ │ ├── autocraft_example.png
│ │ └── mecpus_example.png
│ └── previews
│ │ ├── ar_controller.png
│ │ ├── ar_goggles.png
│ │ ├── basin.png
│ │ ├── beacon.png
│ │ ├── blaze_burner.png
│ │ ├── block_reader.png
│ │ ├── botania_flowers.gif
│ │ ├── capacitor.png
│ │ ├── chat_box.png
│ │ ├── chatty_turtle.png
│ │ ├── chunk_controller.png
│ │ ├── chunky_turtle.png
│ │ ├── colony_integrator.png
│ │ ├── computer_tool.png
│ │ ├── end_automata.png
│ │ ├── energy_detector.png
│ │ ├── environment_detector.png
│ │ ├── environment_turtle.png
│ │ ├── fluid_tank.png
│ │ ├── geo_scanner.png
│ │ ├── geo_scanner_turtle.png
│ │ ├── husbandry_automata.png
│ │ ├── inventory_manager.png
│ │ ├── mana_pool.png
│ │ ├── mana_spreader.png
│ │ ├── me_bridge.png
│ │ ├── mechanical_mixer.png
│ │ ├── memory_card.png
│ │ ├── nbt_storage.png
│ │ ├── noteblock.png
│ │ ├── overpowered_automata.gif
│ │ ├── player_detector.png
│ │ ├── player_turtle.png
│ │ ├── pocket_computer.png
│ │ ├── redstone_connector.png
│ │ ├── redstone_integrator.png
│ │ ├── redstone_probe.png
│ │ ├── rs_bridge.png
│ │ ├── storage_drawer.gif
│ │ ├── variable_store.png
│ │ └── weak_automata.png
├── index.md
├── integrations
│ ├── botania
│ │ ├── flowers.md
│ │ ├── pool.md
│ │ └── spreader.md
│ ├── create
│ │ ├── basin.md
│ │ ├── blazeburner.md
│ │ ├── fluidtank.md
│ │ ├── mechanicalmixer.md
│ │ └── scrollbehaviour.md
│ ├── draconic_evolution
│ │ ├── energy_core.md
│ │ ├── index.md
│ │ └── reactor.md
│ ├── immersive_engineering
│ │ ├── connector.md
│ │ └── probe.md
│ ├── index.md
│ ├── integrated_dynamics
│ │ └── variable_store.md
│ ├── mekanism
│ │ ├── boiler.md
│ │ ├── chemical.md
│ │ ├── digital_miner.md
│ │ ├── dynamic_tank.md
│ │ ├── fission.md
│ │ ├── fluid_tank.md
│ │ ├── fusion.md
│ │ ├── generic.md
│ │ ├── index.md
│ │ ├── induction.md
│ │ ├── solar_evaporation.md
│ │ ├── transmitter.md
│ │ ├── turbine.md
│ │ └── waste_barrel.md
│ ├── minecraft
│ │ ├── beacon.md
│ │ └── noteblock.md
│ ├── powah
│ │ ├── ender_cell.md
│ │ ├── energy_cell.md
│ │ ├── furnator.md
│ │ ├── magmator.md
│ │ ├── reactor.md
│ │ ├── solar_panel.md
│ │ └── thermo_generator.md
│ └── storage_drawers
│ │ └── drawer.md
├── items
│ ├── ar_goggles.md
│ ├── chunk_controller.md
│ ├── computer_tool.md
│ ├── memory_card.md
│ └── pocket_computer.md
├── peripherals
│ ├── ar_controller.md
│ ├── block_reader.md
│ ├── chat_box.md
│ ├── colony_integrator.md
│ ├── energy_detector.md
│ ├── environment_detector.md
│ ├── geo_scanner.md
│ ├── inventory_manager.md
│ ├── me_bridge.md
│ ├── nbt_storage.md
│ ├── player_detector.md
│ ├── redstone_integrator.md
│ └── rs_bridge.md
└── turtles
│ ├── chatty_turtle.md
│ ├── chunky_turtle.md
│ ├── environment_turtle.md
│ ├── geo_scanner_turtle.md
│ ├── metaphysics
│ ├── end_automata.md
│ ├── husbandry_automata.md
│ ├── overpowered_automata.md
│ └── weak_automata.md
│ └── player_turtle.md
├── mike.yml
├── mkdocs.yml
├── netlify.toml
├── overrides
├── img
│ └── loading.gif
└── partials
│ └── comments.html
├── poetry.lock
├── pyproject.toml
└── requirements.txt
/.devcontainer/devcontainer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Python 3.13.2 with MkDocs",
3 | "image": "python:3.13.2",
4 | "postStartCommand": "pip install poetry && poetry install",
5 | "forwardPorts": [
6 | 8000
7 | ]
8 | }
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: true
2 | contact_links:
3 | - name: Mod issues
4 | url: https://github.com/Seniorendi/AdvancedPeripherals/issues
5 | about: Please report bugs at the advanced peripherals repository. This repository is for documentation only.
6 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/doc_report.yml:
--------------------------------------------------------------------------------
1 | name: Documentation issue report
2 | description: Report issues with the documentation like typos or missing entries
3 | body:
4 | - type: markdown
5 | attributes:
6 | value: "Please use the search function before submitting an issue!"
7 | - type: textarea
8 | attributes:
9 | label: Describe
10 | description: Clearly describe the issue you found
11 | placeholder: A clear description of what the issue is
12 | validations:
13 | required: true
14 | - type: textarea
15 | attributes:
16 | label: Steps to reproduce
17 | description: Steps to reproduce the behavior. Feel free to remove or add steps.
18 | placeholder:
19 | 1. Do this...
20 | 2. Then hit this...
21 | 3. Then...
22 | validations:
23 | required: true
24 | - type: input
25 | attributes:
26 | label: Direct URL
27 | description: A direct URL to the site of the issue
28 | placeholder: "https://docs.intelligence-modding.de/1.19/peripherals/chat_box/"
29 | validations:
30 | required: true
31 | - type: input
32 | attributes:
33 | label: Screenshots or Videos
34 | description: If applicable, add screenshots or videos to help explain your problem.
35 |
--------------------------------------------------------------------------------
/.github/workflows/main.yml:
--------------------------------------------------------------------------------
1 | name: Publish docs via GitHub Pages
2 | on:
3 | workflow_dispatch:
4 | push:
5 | branches:
6 | - main
7 |
8 | jobs:
9 | build:
10 | name: Deploy docs
11 | runs-on: self-hosted
12 | steps:
13 | - name: Checkout master
14 | uses: actions/checkout@v1
15 |
16 | - name: Deploy docs
17 | uses: mhausenblas/mkdocs-deploy-gh-pages@2833747909e0fab61db67a60e8d6e91a871f60aa
18 | env:
19 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
20 | REQUIREMENTS: requirements.txt
21 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | site/
2 | .idea
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "oxcYamlHelper.rulesetDocumentationSettings": 0
3 | }
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Contributor Covenant Code of Conduct
2 |
3 | ## Our Pledge
4 |
5 | We as members, contributors, and leaders pledge to make participation in our
6 | community a harassment-free experience for everyone, regardless of age, body
7 | size, visible or invisible disability, ethnicity, sex characteristics, gender
8 | identity and expression, level of experience, education, socio-economic status,
9 | nationality, personal appearance, race, religion, or sexual identity
10 | and orientation.
11 |
12 | We pledge to act and interact in ways that contribute to an open, welcoming,
13 | diverse, inclusive, and healthy community.
14 |
15 | ## Our Standards
16 |
17 | Examples of behavior that contributes to a positive environment for our
18 | community include:
19 |
20 | * Demonstrating empathy and kindness toward other people
21 | * Being respectful of differing opinions, viewpoints, and experiences
22 | * Giving and gracefully accepting constructive feedback
23 | * Accepting responsibility and apologizing to those affected by our mistakes,
24 | and learning from the experience
25 | * Focusing on what is best not just for us as individuals, but for the
26 | overall community
27 |
28 | Examples of unacceptable behavior include:
29 |
30 | * The use of sexualized language or imagery, and sexual attention or
31 | advances of any kind
32 | * Trolling, insulting or derogatory comments, and personal or political attacks
33 | * Public or private harassment
34 | * Publishing others' private information, such as a physical or email
35 | address, without their explicit permission
36 | * Other conduct which could reasonably be considered inappropriate in a
37 | professional setting
38 |
39 | ## Enforcement Responsibilities
40 |
41 | Community leaders are responsible for clarifying and enforcing our standards of
42 | acceptable behavior and will take appropriate and fair corrective action in
43 | response to any behavior that they deem inappropriate, threatening, offensive,
44 | or harmful.
45 |
46 | Community leaders have the right and responsibility to remove, edit, or reject
47 | comments, commits, code, wiki edits, issues, and other contributions that are
48 | not aligned to this Code of Conduct, and will communicate reasons for moderation
49 | decisions when appropriate.
50 |
51 | ## Scope
52 |
53 | This Code of Conduct applies within all community spaces, and also applies when
54 | an individual is officially representing the community in public spaces.
55 | Examples of representing our community include using an official e-mail address,
56 | posting via an official social media account, or acting as an appointed
57 | representative at an online or offline event.
58 |
59 | ## Enforcement
60 |
61 | Instances of abusive, harassing, or otherwise unacceptable behavior may be
62 | reported to the community leaders responsible for enforcement via our email (report AT intelligence-modding DOT de).
63 | All complaints will be reviewed and investigated promptly and fairly.
64 |
65 | All community leaders are obligated to respect the privacy and security of the
66 | reporter of any incident.
67 |
68 | ## Enforcement Guidelines
69 |
70 | Community leaders will follow these Community Impact Guidelines in determining
71 | the consequences for any action they deem in violation of this Code of Conduct:
72 |
73 | ### 1. Correction
74 |
75 | **Community Impact**: Use of inappropriate language or other behavior deemed
76 | unprofessional or unwelcome in the community.
77 |
78 | **Consequence**: A private, written warning from community leaders, providing
79 | clarity around the nature of the violation and an explanation of why the
80 | behavior was inappropriate. A public apology may be requested.
81 |
82 | ### 2. Warning
83 |
84 | **Community Impact**: A violation through a single incident or series
85 | of actions.
86 |
87 | **Consequence**: A warning with consequences for continued behavior. No
88 | interaction with the people involved, including unsolicited interaction with
89 | those enforcing the Code of Conduct, for a specified period of time. This
90 | includes avoiding interactions in community spaces as well as external channels
91 | like social media. Violating these terms may lead to a temporary or
92 | permanent ban.
93 |
94 | ### 3. Temporary Ban
95 |
96 | **Community Impact**: A serious violation of community standards, including
97 | sustained inappropriate behavior.
98 |
99 | **Consequence**: A temporary ban from any sort of interaction or public
100 | communication with the community for a specified period of time. No public or
101 | private interaction with the people involved, including unsolicited interaction
102 | with those enforcing the Code of Conduct, is allowed during this period.
103 | Violating these terms may lead to a permanent ban.
104 |
105 | ### 4. Permanent Ban
106 |
107 | **Community Impact**: Demonstrating a pattern of violation of community
108 | standards, including sustained inappropriate behavior, harassment of an
109 | individual, or aggression toward or disparagement of classes of individuals.
110 |
111 | **Consequence**: A permanent ban from any sort of public interaction within
112 | the community.
113 |
114 | ## Attribution
115 |
116 | This Code of Conduct is adapted from the [Contributor Covenant][homepage],
117 | version 2.0, available at
118 | https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
119 |
120 | Community Impact Guidelines were inspired by [Mozilla's code of conduct
121 | enforcement ladder](https://github.com/mozilla/diversity).
122 |
123 | [homepage]: https://www.contributor-covenant.org
124 |
125 | For answers to common questions about this code of conduct, see the FAQ at
126 | https://www.contributor-covenant.org/faq. Translations are available at
127 | https://www.contributor-covenant.org/translations.
128 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 SirEndii
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Advanced Peripherals Documentation
2 |
3 |
10 |
11 | This is the source of the documentation for Advanced Peripherals.
12 | The documentation is built with [mkdocs](https://www.mkdocs.org).
13 | I recommend using mkdocs if you want to contribute, but you do not need to.
14 |
15 | ## Site
16 | The docs can be viewed at any of the below:
17 | https://docs.intelligence-modding.de/
18 | https://advancedperipherals.madefor.cc/
19 | https://advancedperipherals.netlify.app/
20 |
21 | # Contributing
22 |
23 | If you want to contribute, fork this repository then in your fork make changes to the file you want to edit or add new files. Once you have made the changes make a pull request to contribute your changes to this repository. You can use mkdocs if you want to see your changes live, you will need [Material for Mkdocs](https://squidfunk.github.io/mkdocs-material/) and [Python](https://www.python.org/downloads/) to get it running.
24 |
25 | ## Setup with Poetry
26 | You will need to install [Poetry for Python](https://python-poetry.org/docs/) to use this setup.
27 | Install mkdocs dependencies by running:
28 | ~~~zsh
29 | poetry install
30 | ~~~
31 | :warning: *Make sure you are in the folder with the `pyproject.toml` file*
32 |
33 | Once dependencies have been installed you can now serve with mkdocs to view your changes:
34 | ~~~zsh
35 | poetry run mkdocs serve
36 | ~~~
37 | Click the url in your terminal to open the docs in your browser.
38 |
39 | ---
40 |
41 | ## Setup with Pip
42 | If you have python installed on your machine you will have pip installed.
43 | Install the necessary dependencies by running:
44 | ~~~zsh
45 | pip install -r requirements.txt
46 | ~~~
47 | :warning: *Make sure you are in the folder with the `requirements.txt` file*
48 |
49 | Once dependencies have been installed you can now serve with mkdocs to view your changes:
50 | ~~~zsh
51 | python -m mkdocs serve
52 | ~~~
53 | Click the url in your terminal to open the docs in your browser.
--------------------------------------------------------------------------------
/docs/blog/.authors.yml:
--------------------------------------------------------------------------------
1 | authors:
2 | endi:
3 | name: SirEndi
4 | description: AP Author
5 | avatar: https://avatars.githubusercontent.com/u/67484093
6 | url: https://github.com/SirEndii
--------------------------------------------------------------------------------
/docs/blog/index.md:
--------------------------------------------------------------------------------
1 | # Advanced Peripherals Blog
2 |
--------------------------------------------------------------------------------
/docs/blog/posts/first_post.md:
--------------------------------------------------------------------------------
1 | ---
2 | authors: [endi]
3 | date: 2025-01-19
4 | readtime: 2
5 | categories:
6 | - General
7 | pin: true
8 | comments: true
9 | ---
10 |
11 | # AP has a blog now!
12 |
13 | Greetings party people! So, we've just launched a brand new blog where we'll be sharing all sorts of stuff - from updates on Advanced Peripherals (Especially for the upcoming major release) to some really cool examples of what you can do with it. We're also planning to create more detailed guides as time goes on, so you can get the
14 | most out of AP.
15 |
16 | Think of it like a behind-the-scenes look at how we're constantly improving Advanced Peripherals while we prepare the 0.8/1.0 update. We'll be sharing tips and tricks, as well as showcasing some amazing projects that have been built with it. It's going to be a great resource for anyone looking to get more out of Advanced
17 | Peripherals, so keep an eye on it!
18 |
19 | ### Discord
20 |
21 | Everytime we make a new post, we will make an announcement in our [:fontawesome-brands-discord:Discord](https://discord.intelligence-modding.de/) - if you want to get notified, subscribe for the @News role!
--------------------------------------------------------------------------------
/docs/changelogs/0.7.24r.md:
--------------------------------------------------------------------------------
1 | ---
2 | hide:
3 | - toc
4 | ---
5 |
6 | # Changelog 1.18.2-0.7.24r / 1.19.3-0.7.23b
7 |
8 | ## Table of Contents
9 |
10 | 1. [Item/Fluid Filter](#itemfluid-filter)
11 | 2. [Inventory manager](#inventory-manager)
12 | 3. [ME and RS Bridge](#me-and-rs-bridge)
13 |
14 |
15 |
16 | The 0.7.24r update brings some changes to our inventory system.
17 | All major and breaking changes are listed here to help with updating your scripts.
18 |
19 | ### Item/Fluid Filter
20 |
21 | You may know that we use tables to filter for items for some of our inventory transferring functions. This system got a rework and is now used for more functions but also got some syntax changes.
22 |
23 | Fluids also now use a filter system.
24 |
25 | The following keys got removed:
26 | - `json`
27 | - `tag`
28 |
29 | The `nbt` key now uses json typed nbt values like `{nbt="{StoredEnchantments: [{lvl: 2s, id: \"minecraft:blast_protection\"}]}"}`
30 |
31 | The `name` key can now search for tags.
32 | ``` lua
33 | {
34 | name="#minecraft:wool" -- searches for the wool tag
35 | -- OR
36 | name="#forge:ores/gold" -- searches for the forge gold tag
37 | -- OR
38 | name="minecraft:white_wool" -- searches for white wool
39 | }
40 | ```
41 |
42 | You CAN NOT search for multiple items/tags at once.
43 |
44 | Item Filters can filter for slots with `toSlot` and `fromSlot`.
45 |
46 | You can find the new filter documentation [here](/guides/filters)
47 |
48 |
49 |
50 | ### Inventory manager
51 |
52 | The following functions got deprecated:
53 |
54 | - `removeItemFromPlayer(direction: string, count: int[, slot: int, item: string])`
55 |
56 | - `addItemToPlayer(direction: string, count: int[, slot: int, item: string])`
57 |
58 | - `removeItemFromPlayerNBT(direction: string, count: int[, slot: int, item: table])`
59 |
60 | - `addItemToPlayerNBT(direction: string, count: int[, slot: int, item: table])`
61 |
62 | These will be replaced in the next major update with the following two functions:
63 |
64 | - `removeItemFromPlayer(direction: direction, string: table)`
65 |
66 | - `addItemToPlayer(direction: string, item: table)`
67 |
68 | The following functions now use the new [filter](/guides/filters) system:
69 |
70 | - `removeItemFromPlayerNBT(direction: string, count: int[, slot: int, item: filter])`
71 |
72 | - `addItemToPlayerNBT(direction: string, count: int[, slot: int, item: filter]))`
73 |
74 |
75 |
76 | ### ME and RS Bridge
77 |
78 | Added the following functions to the me bridge:
79 |
80 | - `getTotalItemStorage`
81 | - `getTotalFluidStorage`
82 | - `getUsedItemStorage`
83 | - `getUsedFluidStorage`
84 | - `getAvailableItemStorage`
85 | - `getAvailableFluidStorage`
86 | - `listCells`
87 | - `isConnected`
88 |
89 | More functions now return a Method Result. This means they're capable to report errors if something wrong. For more information, refer to the documentation of the specific function.
90 | This is not a breaking change.
91 |
92 |
93 |
94 |
--------------------------------------------------------------------------------
/docs/changelogs/0.7r.md:
--------------------------------------------------------------------------------
1 | ---
2 | hide:
3 | - toc
4 | ---
5 |
6 | # Changelog 0.7r
7 |
8 | ## Table of Contents
9 |
10 | 1. [Update Video](#video)
11 | 2. [New Features](#features)
12 | 1. [Integrated Dynamics Integration](#integrated-dynamics-integration-116)
13 | 2. [Storage Drawer Integration](#storage-drawer-integration-116)
14 | 3. [Colony Integrator](#colony-integrator)
15 | 4. [Geo Scanner](#geo-scanner)
16 | 5. [Block Reader](#block-reader)
17 | 6. [NBT Storage](#nbt-storage)
18 | 7. [New Turtles Upgrades](#new-turtles-upgrades)
19 | 8. [New Ingame Documentation](#new-ingame-documentation)
20 | 3. [Small features and improvements](#small-features-and-improvements)
21 | 1. [Breaking changes](#breaking-changes)
22 | 2. [New functions, events and translations!](#new-functions-events-and-translations)
23 | 3. [Improved mod integration](#improved-mod-integration)
24 | 4. [Support for relative and cardinal directions](#support-for-relative-and-cardinal-directions)
25 | 4. [Bug fixes](#bug-fixes)
26 |
27 |
28 |
29 | ## First of all
30 |
31 | First of all, big thanks to SirEdvin and FatalMerlin! These awesome hoomans helped a lot with this update!
32 |
33 | ---
34 |
35 | ### Video
36 |
37 | If you don't want to read, you can watch this wonderful short video!
38 |
39 |
40 |
41 |
42 |
43 | ## Features
44 |
45 | ### New Integrations
46 |
47 | - #### Integrated Dynamics Integration
48 | We added a peripheral to the "Variable Store" Block from [Integrated Dynamics](https://www.curseforge.com/minecraft/mc-mods/integrated-dynamics) to read variables from integrated dynamics.
49 |
50 | ##### [View here](../integrations/integrated_dynamics/variable_store.md)
51 |
52 | - #### Storage Drawer Integration
53 | You can now access [Storage Drawers](https://www.curseforge.com/minecraft/mc-mods/storage-drawers). Store items, push and pull items or do whatever you want to do with items. This new feature is a mod integration.
54 |
55 | ##### [View here](../integrations/storage_drawers/drawer.md)
56 |
57 | ### New Peripherals
58 |
59 | - #### Colony Integrator
60 | We added the **Colony Integrator** that interacts with [MineColonies](https://www.curseforge.com/minecraft/mc-mods/minecolonies). You can use this peripheral to get information about your colony. It can be used as a [pocket upgrade](../items/pocket_computer.md) or as a block.
61 |
62 | ##### [View here](../peripherals/colony_integrator.md)
63 |
64 | - #### Geo Scanner
65 | The **Geo Scanner** provides information about blocks around it and information about the current chunk. You could use it to search the current chunk and nearby blocks for ores.
66 |
67 | ##### [View here](../peripherals/geo_scanner.md)
68 |
69 | - #### Block Reader
70 | With the **Block Reader** you can read the data of neighboring blocks and tile entites.
71 |
72 | ##### [View here](../peripherals/block_reader.md)
73 |
74 | - #### NBT Storage
75 | With the **NBT Storage** peripheral you are able to store tables or other values into a block as NBT data. You can read and write values to the block with the peripheral functions.
76 |
77 | ##### [View here](../peripherals/nbt_storage.md)
78 |
79 | ### New Turtles Upgrades
80 | New powerful turtle upgrades!
81 | With these small upgrades you finally can use any tools just from turtle inventories, perform right click on blocks, collect items in a small range, transport animals and much more! But be aware, the new abilities require fuel and most of them have a cooldown. Big thanks to SirEdvin who made these upgrades.
82 |
83 | ### New Ingame Documentation
84 | Advanced Peripherals now uses [Patchouli](https://www.curseforge.com/minecraft/mc-mods/patchouli) to generate ingame documentation. You can now get quick information about the mod in-game, without the need for internet access!
85 |
86 |
87 |
88 | ## Small features and improvements
89 |
90 | This update also provides a lot of small features and improvements.
91 |
92 | ---
93 |
94 | #### Breaking changes
95 |
96 | - We changed some function names of the ME Bridge and RS Bridge peripherals.
97 | - Removed the Peripheral Proxy
98 |
99 | ---
100 |
101 | #### New functions, events and translations
102 |
103 | - Added the slot parameter to the functions of the [Inventory Manager](../peripherals/inventory_manager.md).
104 | - Added `uuid` and `isHidden` return values to the chat event.
105 | - Added a lot of new functions to the [Player Detector](../peripherals/player_detector.md).
106 | - Added the `sendFormattedMessage` function to the chat box.
107 | - Added russian translations by DrHesperus.
108 |
109 | ---
110 |
111 | #### Improved mod integration
112 | You can now connect supported blocks directly with a modem. We completely removed the Peripheral Proxy.
113 |
114 | ---
115 |
116 | #### Support for relative and cardinal directions
117 | You can now use relative directions (`right`, `left`, `front`, `back`, `top` `bottom`) and cardinal directions (`north`, `south`, `east`, `west`, `up`, `down`) at the same time.
118 | **Example:**
119 | ```lua linenums="1"
120 | -- Both of these will work
121 | redstoneIntegrator.setOutput("north", true)
122 | redstoneIntegrator.setOutput("right", true)
123 | ```
124 |
125 |
126 |
127 | ## Bug fixes
128 |
129 | *\* Not all fixed bugs are listed here*
130 |
131 | - Fixed server crashes with the RS Bridge
132 | - Fixed chunky turtle performance issues
133 | - Fixed that the redstone integrators lets pass redstone signal through it
134 | - Fixed that the redstone integrator does not update blocks around it
135 | - Improved chat event performance
136 |
--------------------------------------------------------------------------------
/docs/extra.css:
--------------------------------------------------------------------------------
1 | @import url(https://unpkg.com/simple-icons-font@v5/font/simple-icons.min.css);
2 |
3 | h2 {
4 | position: relative;
5 | }
6 |
7 | h2::after {
8 | display: block;
9 | content: '';
10 | width: 1rem;
11 | height: 5px;
12 | background: var(--md-primary-fg-color--light);
13 | position: absolute;
14 | bottom: -2px;
15 | left: 0;
16 | border-radius: 2px;
17 | }
18 |
19 | [data-md-color-scheme="slate"] h2::after {
20 | background: var(--md-primary-fg-color--dark);
21 | }
22 |
23 | .picture-spacing {
24 | height: var(--ps);
25 | display: none;
26 | visibility: hidden;
27 | }
28 |
29 | @media screen and (min-width: 45em) {
30 | .picture-spacing {
31 | display: block;
32 | visibility: unset;
33 | }
34 | }
35 |
36 | .si {
37 | text-align: center;
38 | vertical-align: middle;
39 | }
40 |
41 | b.si {
42 | font-weight: normal;
43 | font-size: 1.5rem;
44 | padding-right: 0.3rem;
45 | vertical-align: 1rem;
46 | }
47 |
48 | /* Center Markdown Tables (requires md_in_html extension) */
49 | .center-table {
50 | text-align: center;
51 | }
52 |
53 | .md-typeset .center-table :is(td,th):not([align]) {
54 | /* Reset alignment for table cells */
55 | text-align: initial;
56 | }
--------------------------------------------------------------------------------
/docs/guides/cooldowns_and_fuel_consumption.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Turtles: Cooldowns and Fuel consumption
6 |
7 | For information on the different types of cooldowns and operations that a turtle may have see the Automatas:
8 |
9 | - [Weak Automata](../turtles/metaphysics/weak_automata.md)
10 | - [Husbandry Automata](../turtles/metaphysics/husbandry_automata.md)
11 | - [End Automata](../turtles/metaphysics/end_automata.md)
12 | - [Overpowered Automata](../turtles/metaphysics/overpowered_automata.md)
13 |
14 | ---
15 |
16 | All world changing operations will consume turtle fuel (unless it is disabled in the CC:Tweaked configuration). Most of these operations have cooldowns, so you should consider this in your code. Hopefully, every active cooldown can be retrieved via peripheral methods.
17 |
18 | ## Consumption vs Cooldowns
19 |
20 | Higher fuel consumption rate will reduce operation cooldowns, but obviously will increase the consumption of fuel. For example, if a click operation required 1 fuel point to perform and has a 5 second cooldown; with a fuel consumption rate of 2 you can perform a click operation every 2.5 seconds, but at the cost of 2 fuel points.
21 |
22 | ## Maximum fuel consumption
23 |
24 | However, fuel consumption rate is not so simple! Every mechanic soul has a max fuel consumption limitation, that can be retrieved via the [`getConfiguration()`](../turtles/metaphysics/weak_automata.md#getconfiguration) method.
25 |
26 | ## Fuel point usage
27 |
28 | Also, the number of required fuel points increases faster than fuel consumption for every reduction in cooldowns. Fuel consumption 3 requires 4 fuel points, fuel consumption 4 requires 6 fuel points, etc.
29 |
30 |
31 |
32 | $$
33 | \operatorname{cost} C = \operatorname{consumption} f + \max\{0, f - 2\}
34 | $$
35 |
36 |
37 |
--------------------------------------------------------------------------------
/docs/guides/filters.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Filters
6 |
7 | !!! success "Added in version 1.18.2-0.7.24r and 1.19.3-0.7.23b"
8 |
9 | The tables which are added to one of our item/fluid transferring functions are called Item/Fluid Filters. The functions
10 | use these to find the item you're looking for.
11 | These can set the item, count, slots, tags, nbt or fingerprint values.
12 |
13 | ## Syntax
14 |
15 | ### Item/Fluid/Chemical Name and Tag
16 |
17 | The item's/fluid's filter name or tag can be specified with the `name` field.
18 | If this field is not set, the filter will try to search for items with the right nbt values specified in the `nbt` field
19 | or fingerprints.
20 |
21 | This can be a tag or a name. To filter for tags, place a `#` in front of the name.
22 |
23 | ```lua
24 | {
25 | name = "minecraft:enchanted_book" -- Will just search for an enchanted book, nbt values are ginored
26 | }
27 | ```
28 |
29 | ```lua
30 | {
31 | name = "#forge:ores/gold" -- Will search for the gold ore tag, nbt values are ignored
32 | }
33 | ```
34 |
35 | ### Types
36 |
37 | !!! success "Added in version 0.8 and 1.21.1-0.7"
38 |
39 | Some functions can be used with any type of filter to prevent the same functions with just a different name. These filters are called generic filters.
40 | They automatically search if the `name` provided is an item, a fluid or a mekanism chemical - in this order.
41 | If none could be found, it will return an empty filter with the message `NO_VALID_FILTER_TYPE`.
42 |
43 | A type can also be forced using the `type` key.
44 | Depending on the AP version and the function, the following types can be used: `item`, `fluid` and `chemical`.
45 |
46 | ```lua
47 | {
48 | name = "minecraft:water"
49 | type = "fluid"
50 | }
51 | ```
52 |
53 | The following example would return nil with the message `FLUID_NOT_FOUND` when used in a function.
54 | ```lua
55 | {
56 | name = "minecraft:dirt"
57 | type = "fluid"
58 | }
59 | ```
60 |
61 |
62 | ### Count
63 |
64 | The item's/fluid's filter amount can be specified with the `count` field.
65 | Standard values are 64 or 1000 for fluids.
66 |
67 | ```lua
68 | {
69 | name = "minecraft:cobblestone",
70 | count = 128000 -- Will try to export 128000 cobblestone to the target inventory. It will transfer less if there is not enough space in the target inventory or if there aren't enough items in the source inventory
71 | }
72 | ```
73 |
74 | ### NBT Values
75 |
76 | !!! warning "Only for MC versions 1.20.4 and older!"
77 |
78 | [NBT Values](https://minecraft.fandom.com/wiki/NBT_format) are specified with the `nbt` field. The field needs to be a
79 | string which contains a json which can be parsed to a nbt tag.
80 |
81 | ```lua
82 | {
83 | name = "minecraft:enchanted_book"
84 | nbt="{StoredEnchantments: [{lvl: 2s, id: \"minecraft:blast_protection\"}]}"} -- Will search for an enchanted book with the blast protection enchantment level 2
85 | }
86 | ```
87 |
88 | Any strings inside the nbt value needs to be prefixed with a \\
89 |
90 | ### Data Components
91 |
92 | !!! warning "Only for MC versions 1.20.5 and newer!"
93 |
94 | Since 1.20.5, mojang moved to a new data component system to store data for items and other things instead of using NBT.
95 | To use that new filter, you need to provide a `components` key instead of the old `nbt` key.
96 |
97 | ```lua
98 | {
99 | name = "minecraft:enchanted_book"
100 | components= {
101 | ["minecraft:stored_enchantments"] = {
102 | levels = {
103 | ["minecraft:aqua_affinity"] = 1
104 | }
105 | }
106 | } -- Will search for an enchanted book with the aqua affinity enchantment level 1
107 | }
108 | ```
109 |
110 | Other AP features also return a `components` key for items which you can directly use as a filter.
111 |
112 | ### Slots
113 |
114 | !!! danger "Only available for item filters"
115 |
116 | Slots can be specified with the `toSlot` or `fromSlot` field.
117 | The inventory manager uses `103-100` for the armor slots helmet to boots and 36 for the offhand.
118 |
119 | Storage systems like the rs or me bridge will ignore these fields if they are used to specify the slot of the system.
120 | Like `toSlot` if you use it for `importItem`
121 |
122 | If the slot can't be found or if the slot can't accept this item, the item will not be transferred.
123 |
124 | ```lua
125 | {
126 | toSlot = 6, -- Tries to move the item to this slot of the target inventory
127 | fromSlot = 36, -- Tries to remove the item from the offhand
128 | }
129 | ```
130 |
131 | ### Fingerprints
132 |
133 | The `fingerprint` is a MD5 hash calculated of the nbt tag, the registry name and the display name.
134 |
135 | This can be useful if you want to only filter for one very specific item.
136 | Also helpful if you don't want to copy the nbt tag for an item into the filter.
137 |
138 | A `fingerprint` can be generated with the `/advancedperipherals getHashItem` command while holding the item in your main
139 | hand.
140 |
141 | If the `fingerprint` field is specified, the `nbt` and `name` field will be ignored.
142 |
143 | ```lua
144 | {
145 | fingerprint = "227FCCBE693942047DD04AA96F735F2E" -- The hash for a protection 4 enchanted book
146 | count = 5 -- Try to move 5 protection 4 books to the target inventory
147 | }
148 | ```
149 |
--------------------------------------------------------------------------------
/docs/guides/how_to_report.md:
--------------------------------------------------------------------------------
1 | ### How to report an issue or request a feature
2 |
3 |
4 | We appreciate your dedication to making the project better by helping us squash those pesky bugs and suggesting exciting new features. The process of reporting a bug or requesting a new feature is straightforward and user-friendly. Here's how to do it:
5 |
6 |
7 | ## Reporting a Bug
8 |
9 | **Expected Behavior:** Start by describing what you expected to happen when you encountered the bug. This helps us understand the issue better.
10 |
11 | **Steps to Reproduce:** Provide a clear, step-by-step guide on how to reproduce the bug. Include every detail, like which items you used, where you were, and what actions you took.
12 |
13 | **Logs:** If the bug is critical, or you're not sure what's causing it, including logs can be a game-changer. Share any error messages or log files related to the issue.
14 |
15 | **Pictures:** A picture is worth a thousand words! If you can, add screenshots to visually demonstrate the problem.
16 |
17 | **Optional - Video:** Want to be an awesome bug hunter? Record a short video showing the bug in action. It can make the bug-hunting process even smoother!
18 |
19 | ## Requesting a Feature
20 |
21 | **Clear Description:** Tell us exactly what you want to see in the mod. Be specific and clear about the new features purpose.
22 |
23 | **API Functions:** If your feature request involves changes or additions to the Lua functions, let us know which functions or methods you'd like to see added or modified.
24 |
25 | **Use Cases:** Explain how this new feature would enhance your gameplay. Share scenarios where it would come in handy.
26 |
27 |
28 | Remember, our modding community is built on collaboration and a love for Minecraft. Be friendly and respectful in your reports and requests.
29 |
30 | To report a bug or request a feature, head over to our [github repository](https://github.com/SirEndii/AdvancedPeripherals/issues). Your feedback is important to us, and it makes the project what it is today!
31 |
32 | If you need assistance or want to discuss a feature or something else, head out to our [discord](https://discord.intelligence-modding.de/)
--------------------------------------------------------------------------------
/docs/guides/objects.md:
--------------------------------------------------------------------------------
1 | # Common Lua Objects
2 |
3 | AP contains a lot of different objects based on in-game content, including Items, Item Stacks, Fluids, Entities and more.
4 | This guide contains the most objects we have, including a description and every property with its type it can contain.
5 |
6 | ## Item
7 | Base ítem properties:
8 |
9 | | Property | Type | Description |
10 | |----------|------|-------------|
11 | | tags | table | List of item tags |
12 | | name | string | Registry key of the item |
13 |
14 | ## Item Stack
15 | Represents a specific amount of an item with additional properties. Includes all Item properties plus:
16 |
17 | | Property | Type | Description |
18 | |----------|------|-------------|
19 | | count | number | Amount of items in the stack |
20 | | displayName | string | Display name of the item |
21 | | maxStackSize | number | Maximum stack size |
22 | | components | table | NBT component data |
23 | | fingerprint | string | Unique identifier for the stack |
24 | | tags | table | List of item tags |
25 | | name | string | Registry key of the item |
26 | | slot | number | (Optional) Slot number when in inventory |
27 |
28 | ## Fluid
29 | Base fluid properties:
30 |
31 | | Property | Type | Description |
32 | |----------|------|-------------|
33 | | tags | table | List of fluid tags |
34 | | name | string | Registry key of the fluid |
35 |
36 | ## Fluid Stack
37 | Represents a specific amount of fluid with additional properties. Includes all Fluid properties plus:
38 |
39 | | Property | Type | Description |
40 | |----------|------|-------------|
41 | | count | number | Amount of fluid |
42 | | displayName | string | Display name of the fluid |
43 | | fluidType | table | FluidType properties |
44 | | components | table | NBT component data |
45 | | fingerprint | string | Unique identifier for the stack |
46 |
47 | ## Mekanism Chemical
48 | Base chemical properties:
49 |
50 | | Property | Type | Description |
51 | |----------|------|-------------|
52 | | tags | table | List of chemical tags |
53 | | name | string | Registry key of the chemical |
54 | | isGaseous | boolean | Whether the chemical is gaseous |
55 | | radioactivity | number | Radioactivity level of the chemical |
56 |
57 | ## Mekanism Chemical Stack
58 | Represents a specific amount of chemical with additional properties. Includes all Chemical properties plus:
59 |
60 | | Property | Type | Description |
61 | |----------|------|-------------|
62 | | count | number | Amount of chemical |
63 | | displayName | string | Display name of the chemical |
64 | | fingerprint | string | Unique identifier for the stack |
65 |
66 |
67 | ## Entity
68 | | Property | Type | Description |
69 | |----------|------|-------------|
70 | | id | number | Entity ID |
71 | | uuid | string | Entity UUID |
72 | | name | string | Entity name |
73 | | tags | table | Entity tags |
74 | | canFreeze | boolean | Whether entity can freeze |
75 | | isGlowing | boolean | Whether entity is glowing |
76 | | isInWall | boolean | Whether entity is in a wall |
77 |
78 | ## Living Entity
79 | Inherits all properties from Entity, plus:
80 |
81 | | Property | Type | Description |
82 | |----------|------|-------------|
83 | | health | number | Current health |
84 | | maxHealth | number | Maximum health |
85 | | lastDamageSource | string | Last damage source (or nil) |
86 |
87 | ## Animal
88 | Inherits all properties from LivingEntity, plus:
89 |
90 | | Property | Type | Description |
91 | |----------|------|-------------|
92 | | baby | boolean | Whether the animal is a baby |
93 | | inLove | boolean | Whether the animal is in love state |
94 | | aggressive | boolean | Whether the animal is aggressive |
95 | | shareable | boolean | Whether the animal can be sheared (if applicable) |
96 |
97 | ## Position
98 | Common block position object used for some filters and return values.
99 |
100 | | Property | Type | Description |
101 | |----------|------|-------------|
102 | | x | number | X coordinate |
103 | | y | number | Y coordinate |
104 | | z | number | Z coordinate |
105 |
106 | ## Fluid Type
107 | | Property | Type | Description |
108 | |----------|------|-------------|
109 | | viscosity | number | Fluid viscosity |
110 | | density | number | Fluid density |
111 | | canHydrate | boolean | Whether fluid can hydrate |
112 | | canExtinguish | boolean | Whether fluid can extinguish |
113 | | canDrownIn | boolean | Whether entities can drown in it |
114 | | canSwim | boolean | Whether entities can swim in it |
115 | | canPushEntity | boolean | Whether fluid can push entities |
116 | | supportsBoating | boolean | Whether boats can float on it |
117 | | canConvertToSource | boolean | Whether fluid can convert to source blocks |
118 | | temperature | number | Fluid temperature |
--------------------------------------------------------------------------------
/docs/img/bridge_requester.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/bridge_requester.png
--------------------------------------------------------------------------------
/docs/img/chat_box/toast.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/chat_box/toast.png
--------------------------------------------------------------------------------
/docs/img/chat_box/toast_formatted.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/chat_box/toast_formatted.png
--------------------------------------------------------------------------------
/docs/img/colony_integrator/citizen_list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/colony_integrator/citizen_list.png
--------------------------------------------------------------------------------
/docs/img/colony_integrator/colony_info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/colony_integrator/colony_info.png
--------------------------------------------------------------------------------
/docs/img/me_bridge/autocraft_example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/me_bridge/autocraft_example.png
--------------------------------------------------------------------------------
/docs/img/me_bridge/mecpus_example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/me_bridge/mecpus_example.png
--------------------------------------------------------------------------------
/docs/img/previews/ar_controller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/ar_controller.png
--------------------------------------------------------------------------------
/docs/img/previews/ar_goggles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/ar_goggles.png
--------------------------------------------------------------------------------
/docs/img/previews/basin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/basin.png
--------------------------------------------------------------------------------
/docs/img/previews/beacon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/beacon.png
--------------------------------------------------------------------------------
/docs/img/previews/blaze_burner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/blaze_burner.png
--------------------------------------------------------------------------------
/docs/img/previews/block_reader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/block_reader.png
--------------------------------------------------------------------------------
/docs/img/previews/botania_flowers.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/botania_flowers.gif
--------------------------------------------------------------------------------
/docs/img/previews/capacitor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/capacitor.png
--------------------------------------------------------------------------------
/docs/img/previews/chat_box.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/chat_box.png
--------------------------------------------------------------------------------
/docs/img/previews/chatty_turtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/chatty_turtle.png
--------------------------------------------------------------------------------
/docs/img/previews/chunk_controller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/chunk_controller.png
--------------------------------------------------------------------------------
/docs/img/previews/chunky_turtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/chunky_turtle.png
--------------------------------------------------------------------------------
/docs/img/previews/colony_integrator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/colony_integrator.png
--------------------------------------------------------------------------------
/docs/img/previews/computer_tool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/computer_tool.png
--------------------------------------------------------------------------------
/docs/img/previews/end_automata.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/end_automata.png
--------------------------------------------------------------------------------
/docs/img/previews/energy_detector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/energy_detector.png
--------------------------------------------------------------------------------
/docs/img/previews/environment_detector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/environment_detector.png
--------------------------------------------------------------------------------
/docs/img/previews/environment_turtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/environment_turtle.png
--------------------------------------------------------------------------------
/docs/img/previews/fluid_tank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/fluid_tank.png
--------------------------------------------------------------------------------
/docs/img/previews/geo_scanner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/geo_scanner.png
--------------------------------------------------------------------------------
/docs/img/previews/geo_scanner_turtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/geo_scanner_turtle.png
--------------------------------------------------------------------------------
/docs/img/previews/husbandry_automata.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/husbandry_automata.png
--------------------------------------------------------------------------------
/docs/img/previews/inventory_manager.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/inventory_manager.png
--------------------------------------------------------------------------------
/docs/img/previews/mana_pool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/mana_pool.png
--------------------------------------------------------------------------------
/docs/img/previews/mana_spreader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/mana_spreader.png
--------------------------------------------------------------------------------
/docs/img/previews/me_bridge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/me_bridge.png
--------------------------------------------------------------------------------
/docs/img/previews/mechanical_mixer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/mechanical_mixer.png
--------------------------------------------------------------------------------
/docs/img/previews/memory_card.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/memory_card.png
--------------------------------------------------------------------------------
/docs/img/previews/nbt_storage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/nbt_storage.png
--------------------------------------------------------------------------------
/docs/img/previews/noteblock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/noteblock.png
--------------------------------------------------------------------------------
/docs/img/previews/overpowered_automata.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/overpowered_automata.gif
--------------------------------------------------------------------------------
/docs/img/previews/player_detector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/player_detector.png
--------------------------------------------------------------------------------
/docs/img/previews/player_turtle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/player_turtle.png
--------------------------------------------------------------------------------
/docs/img/previews/pocket_computer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/pocket_computer.png
--------------------------------------------------------------------------------
/docs/img/previews/redstone_connector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/redstone_connector.png
--------------------------------------------------------------------------------
/docs/img/previews/redstone_integrator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/redstone_integrator.png
--------------------------------------------------------------------------------
/docs/img/previews/redstone_probe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/redstone_probe.png
--------------------------------------------------------------------------------
/docs/img/previews/rs_bridge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/rs_bridge.png
--------------------------------------------------------------------------------
/docs/img/previews/storage_drawer.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/storage_drawer.gif
--------------------------------------------------------------------------------
/docs/img/previews/variable_store.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/variable_store.png
--------------------------------------------------------------------------------
/docs/img/previews/weak_automata.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/docs/img/previews/weak_automata.png
--------------------------------------------------------------------------------
/docs/index.md:
--------------------------------------------------------------------------------
1 | ---
2 | hide:
3 | - navigation
4 | - toc
5 | ---
6 |
7 | # Advanced Peripherals
8 |
9 | [](https://www.curseforge.com/minecraft/mc-mods/advanced-peripherals)
10 |
11 | **Advanced Peripherals** is a mod that adds many useful extensions for [CC:Tweaked](https://tweaked.cc).
12 | You can communicate with Refined Storage, Applied Energistics 2 or with the whole Minecraft world.
13 |
14 | With Advanced Peripherals you can control your base in Minecraft only with messages in the chat, you can develop an AI that controls your farms - there really is no limit to what you can create with **CC:Tweaked** and **Advanced Peripherals**.
15 |
16 | #### Links
17 |
18 | If you need help, join the [Discord](https://discord.intelligence-modding.de/)
19 | See the mod page on [Curseforge](https://www.curseforge.com/minecraft/mc-mods/advanced-peripherals)
20 | Find the mod source code on [Github](https://github.com/SirEndii/AdvancedPeripherals)
21 |
22 | #### Version support
23 |
24 | | Supported Version | 1.16.5 | 1.17.1 | 1.18.2 | 1.19.2 | 1.19.3 | 1.20.1 | 1.20.4 | 1.21.1 |
25 | |-------------------|--------------------|--------------------|--------------------|--------------------|--------------------|--------------------|--------------------|--------------------|
26 | | Security patches | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
27 | | Critical fixes | :x: | :x: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
28 | | Minor fixes | :x: | :x: | :x: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
29 | | Minor features | :x: | :x: | :x: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
30 | | Fully supported | :x: | :x: | :x: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
31 | | Will be supported | :x: | :x: | :o: | :o: | :o: | :o: | :o: | :o: |
32 |
33 |
34 | #### Netlify
35 |
36 | [Netlify](https://www.netlify.com) is a cloud computing company that offers a development platform for web applications and dynamic websites. It provides a unified workflow that integrates build tools, web frameworks, APIs, and various web technologies. The platform is designed to support the development, deployment, and scaling of websites whose source files are stored in Git and then generated into static web content files
37 |
38 | #### Contribute
39 |
40 | If you want to contribute to this documentation or fix any spelling mistakes, feel free to do so on the documentation [ Github](https://github.com/Seniorendi/Advanced-Peripherals-Documentation), checkout the **Contribute** section in the README for more info.
41 |
42 |
43 |
44 | Documentation rewrite and overhaul by [ SyntheticDev](https://github.com/Synthetic-Dev)
45 |
--------------------------------------------------------------------------------
/docs/integrations/botania/flowers.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Mana Generating Flowers
6 |
7 | !!! success "Available in all versions"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | Mana generating flowers from botania can generate mana for other recipes or rituals.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Botania](https://www.curseforge.com/minecraft/mc-mods/botania) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | --------------- | ---------- | ------------- |
25 | | manaFlower | Mana flowers | No | 0.6b |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getMana
34 | ```
35 | getMana() -> number
36 | ```
37 | Returns the amount of mana stored in the flower.
38 |
39 | ---
40 |
41 | ### getMaxMana
42 | ```
43 | getMaxMana() -> number
44 | ```
45 | Returns the maximum amount of mana that the flower can hold.
46 |
47 | ---
48 |
49 | ### isFloating
50 | ```
51 | isFloating() -> boolean
52 | ```
53 | Returns true if the flower is a floating flower.
54 |
55 | ---
56 |
57 | ### isOnEnchantedSoil
58 | ```
59 | isOnEnchantedSoil() -> boolean
60 | ```
61 | Returns true if the flower is placed on enchanted soil.
62 |
63 | ---
64 |
65 | !!! success "Available in versions >=1.20.1-0.7.39r"
66 |
67 | ### isEmpty
68 | ```
69 | isEmpty() -> boolean
70 | ```
71 | Returns true if the Flower is empty.
72 |
73 | ---
74 |
75 | !!! success "Available in versions >=1.20.1-0.7.39r"
76 |
77 | ### isFull
78 | ```
79 | isFull() -> boolean
80 | ```
81 | Returns true if the Flower is full.
82 |
83 | ---
84 |
85 | ## Changelog/Trivia
86 |
87 | **1.20.1-0.7.39r**
88 | Ported Botania integration to 1.20.1
89 | Added `isFull()` and `isEmpty()`
90 |
91 | **0.7.16**
92 | Ported Botania integration to 1.18
93 |
94 | **0.6b**
95 | Added integration for Botania
96 |
--------------------------------------------------------------------------------
/docs/integrations/botania/pool.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Mana Pool
6 |
7 | !!! success "Available in all versions"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | Mana Pools are used to store mana. They are also used to craft items.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Botania](https://www.curseforge.com/minecraft/mc-mods/botania) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | --------------- | ---------- | ------------- |
25 | | manaPool | Mana Pool block | No | 0.6b |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getMana
34 | ```
35 | getMana() -> number
36 | ```
37 | Returns the amount of mana stored in the pool.
38 |
39 | ---
40 |
41 | ### getMaxMana
42 | ```
43 | getMaxMana() -> number
44 | ```
45 | Returns the maximum amount of mana that the pool can hold.
46 |
47 | ---
48 |
49 | !!! success "Added in version 0.7.4r"
50 |
51 | ### getManaNeeded
52 | ```
53 | getManaNeeded() -> number
54 | ```
55 |
56 | Returns the amount of mana needed to fill the pool. Equivalent to `getMaxMana() - getMana()`.
57 |
58 | ---
59 |
60 | ### isEmpty
61 | ```
62 | isEmpty() -> boolean
63 | ```
64 | Returns true if the Mana Pool is empty.
65 |
66 | ---
67 |
68 | ### isFull
69 | ```
70 | isFull() -> boolean
71 | ```
72 | Returns true if the Mana Pool is full.
73 |
74 | ---
75 |
76 | !!! success "Available in versions >=1.20.1-0.7.39r"
77 |
78 | ### canChargeItem
79 | ```
80 | canChargeItem() -> boolean
81 | ```
82 | Returns true if mode of the Mana Pool is set to charge the items on it.
83 |
84 | ---
85 |
86 | !!! success "Available in versions >=1.20.1-0.7.39r"
87 |
88 | ### hasItems
89 | ```
90 | hasItems() -> boolean
91 | ```
92 | Returns true if the Mana Pool has at least one item on it.
93 |
94 | ---
95 |
96 | !!! success "Available in versions >=1.20.1-0.7.39r"
97 |
98 | ### getItems
99 | ```
100 | getItems() -> table
101 | ```
102 | Returns a table with the items lying on the Mana Pool.
103 |
104 | ---
105 |
106 | ## Changelog/Trivia
107 |
108 | **1.20.1-0.7.39r**
109 | Ported Botania integration to 1.20.1
110 | Added `getItems()`, `hasItems()` and `canChargeItem()`
111 |
112 | **0.7.16**
113 | Ported Botania integration to 1.18
114 |
115 | **0.7.4r**
116 | Added `getManaNeeded` to the Mana Pool integration
117 |
118 | **0.6b**
119 | Added integration for Botania
120 |
--------------------------------------------------------------------------------
/docs/integrations/botania/spreader.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Mana Spreader
6 |
7 | !!! success "Available in all versions"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | Mana Spreaders are used to transfer mana from one source to another.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Botania](https://www.curseforge.com/minecraft/mc-mods/botania) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | ------------------- | ---------- | ------------- |
25 | | manaSpreader | Mana Spreader block | No | 0.6b |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getMana
34 | ```
35 | getMana() -> number
36 | ```
37 | Returns the amount of mana stored in the spreader.
38 |
39 | ---
40 |
41 | ### getMaxMana
42 | ```
43 | getMaxMana() -> number
44 | ```
45 | Returns the maximum amount of mana that the spreader can hold.
46 |
47 | ---
48 |
49 | ### isEmpty
50 | ```
51 | isEmpty() -> boolean
52 | ```
53 | Returns true if the Mana Spreader is empty.
54 |
55 | ---
56 |
57 | ### isFull
58 | ```
59 | isFull() -> boolean
60 | ```
61 | Returns true if the Mana Spreader is full.
62 |
63 | ---
64 |
65 | ### getVariant
66 | ```
67 | getVariant() -> string
68 | ```
69 | Returns the variant of the Mana Spreader.
70 |
71 | ---
72 |
73 | ### getBounding
74 | ```
75 | getBounding() -> table
76 | ```
77 | Returns the coordinates of the Mana Spreader's target.
78 |
79 | #### Properties
80 |
81 | | table | Description |
82 | | ----------- | ------------------------------------------- |
83 | | x: `number` | The x coordinate |
84 | | y: `number` | The y coordinate |
85 | | z: `number` | The z coordinate |
86 |
87 | ---
88 |
89 | !!! success "Available in versions >=1.20.1-0.7.39r"
90 |
91 | ### hasLens
92 | ```
93 | hasLens() -> boolean
94 | ```
95 | Returns true if the Spreader has a lens.
96 |
97 | ---
98 |
99 | !!! success "Available in versions >=1.20.1-0.7.39r"
100 |
101 | ### getLens
102 | ```
103 | getLens() -> table
104 | ```
105 | Returns the current lens item as a table.
106 |
107 | ---
108 |
109 | ## Changelog/Trivia
110 |
111 | **1.20.1-0.7.39r**
112 | Ported Botania integration to 1.20.1
113 | Added `getLens()` and `hasLens()`
114 |
115 | **0.7.16**
116 | Ported Botania integration to 1.18
117 |
118 | **0.6b**
119 | Added integration for Botania
120 |
--------------------------------------------------------------------------------
/docs/integrations/create/basin.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Basin
6 |
7 | !!! success "Available in versions 1.18+"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | A Basin can hold items and fluids for many different crafting recipes.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Create](https://www.curseforge.com/minecraft/mc-mods/create) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | --------------- | ---------- | ------------- |
25 | | basin | Basin block | No | 0.7.16 |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getInputFluids
34 | ```
35 | getInputFluids() -> table
36 | ```
37 | Returns a list of information about all of the fluids in the input tank of the Basin.
38 |
39 | ---
40 |
41 | ### getOutputFluids
42 | ```
43 | getOutputFluids() -> table
44 | ```
45 | Returns a list of information about all of the fluids in the output tank of the Basin.
46 |
47 | ---
48 |
49 | ### getFilter
50 | ```
51 | getFilter() -> table
52 | ```
53 | Returns the Basin's filter item.
54 |
55 | ---
56 |
57 | ### getInventory
58 | ```
59 | getInventory() -> table
60 | ```
61 | Returns a list of information about all of the items in the Basin.
62 |
63 | ---
64 |
65 | ## Changelog/Trivia
66 |
67 | **0.7.16**
68 | Added Create integration
69 |
--------------------------------------------------------------------------------
/docs/integrations/create/blazeburner.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Blaze Burner
6 |
7 | !!! success "Available in all versions"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | A Blaze Burner uses different fuel types to heat up things above it like basins and fluid tanks.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Create](https://www.curseforge.com/minecraft/mc-mods/create) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | ------------------ | ---------- | ------------- |
25 | | blazeBurner | Blaze Burner block | No | 0.7.16 |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getInfo
34 | ```
35 | getInfo() -> table
36 | ```
37 | Returns a table with information about the Blaze Burner.
38 |
39 | #### Properties
40 |
41 | | info | Description |
42 | | --------------------------- | ------------------------------------------------- |
43 | | fuelType: `string` | The type of fuel in the burner |
44 | | heatLevel: `string` | The blaze burner heat level |
45 | | remainingBurnTime: `number` | The amount of burn time left for the current fuel |
46 | | isCreative: `boolean` | If the burner is using creative fuel |
47 |
48 | ---
49 |
50 | ## Changelog/Trivia
51 |
52 | **0.7.16**
53 | Added Create integration
54 |
--------------------------------------------------------------------------------
/docs/integrations/create/fluidtank.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Fluid Tank
6 |
7 | !!! success "Available in versions 1.18+"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | A Fluid Tank is a multiblock structure which can hold fluids. With each block being able to hold 8 buckets worth.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Create](https://www.curseforge.com/minecraft/mc-mods/create) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | ---------------- | ---------- | ------------- |
25 | | fluidTank | Fluid Tank block | No | 0.7.16 |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### getInfo
34 | ```
35 | getInfo() -> table
36 | ```
37 | Returns a table with information about the Blaze Burner.
38 |
39 | #### Properties
40 |
41 | | info | Description |
42 | | ------------------- | ---------------------------------------------- |
43 | | capacity: `number` | The maximum amount of fluid the tank can hold |
44 | | amount: `number` | The amount of fluid in the tank |
45 | | fluid: `string` | The registry name for the tank's current fluid |
46 | | isBoiler: `boolean` | If the tank is part of a boiler |
47 |
48 | ---
49 |
50 | ## Changelog/Trivia
51 |
52 | **0.7.16**
53 | Added Create integration
54 |
--------------------------------------------------------------------------------
/docs/integrations/create/mechanicalmixer.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Mechanical Mixer
6 |
7 | !!! success "Available in versions 1.18+"
8 |
9 | !!! picture inline end
10 | { align=right }
11 |
12 | A Mechanical Mixer is used in combination with a Basin to process many shapeless recipes with items and fluid.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Create](https://www.curseforge.com/minecraft/mc-mods/create) mod to be installed
16 |
17 |
18 |
19 | ---
20 |
21 |
22 |
23 | | Peripheral Name | Interfaces with | Has events | Introduced in |
24 | | --------------- | ---------------------- | ---------- | ------------- |
25 | | mechanicalMixer | Mechanical Mixer block | No | 0.7.16 |
26 |
27 |
28 |
29 | ---
30 |
31 | ## Functions
32 |
33 | ### isRunning
34 | ```
35 | isRunning() -> boolean
36 | ```
37 | Returns true if the mixer is currently running.
38 |
39 | ---
40 |
41 | ### hasBasin
42 | ```
43 | hasBasin() -> boolean
44 | ```
45 | Returns true if the mixer has a basin below it.
46 |
47 | ---
48 |
49 | ## Changelog/Trivia
50 |
51 | **0.7.16**
52 | Added Create integration
53 |
--------------------------------------------------------------------------------
/docs/integrations/create/scrollbehaviour.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Blocks with Scroll Value Behaviours
6 |
7 | !!! success "Available in all versions"
8 |
9 | This integration works for all blocks with any type of scroll value behaviour. Like the Speed Controller and Creative Motor.
10 |
11 | !!! info
12 | This integration only works for Speed based scroll value behaviour blocks. So this will not work for blocks like the Smart Funnel.
13 |
14 | !!! warning "Requirement"
15 | Requires the [Create](https://www.curseforge.com/minecraft/mc-mods/create) mod to be installed
16 |
17 | ---
18 |
19 |
20 |
21 | | Peripheral Name | Interfaces with | Has events | Introduced in |
22 | | --------------------- | ----------------------------- | ---------- | ------------- |
23 | | scrollBehaviourEntity speedController (1.16) | Scroll Value Behaviour blocks | No | 0.7.16 |
24 |
25 |
26 |
27 | ---
28 |
29 | ## Functions
30 |
31 | ### getTargetSpeed
32 | ```
33 | getTargetSpeed() -> number
34 | ```
35 | Returns the target behaviour value of the block.
36 |
37 | ---
38 |
39 | ### setTargetSpeed
40 | ```
41 | setTargetSpeed(value: number) -> boolean
42 | ```
43 | Sets the target behavious value of the block to the given `value`.
44 | Returns whether or not the value was successfully set.
45 |
46 | ---
47 |
48 | ## Changelog/Trivia
49 |
50 | **0.7.16**
51 | Added Create integration
52 |
--------------------------------------------------------------------------------
/docs/integrations/draconic_evolution/energy_core.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | # Draconic Energy Core
4 |
5 | !!! danger "Only available in versions =>1.16-0.7.4r, <1.16-0.7.7r"
6 |
7 | !!! picture inline end
8 | ![Image of the Energy Pylon block](){ align=right }
9 |
10 | The Draconic Energy Core is a multiblock structure which can store massive amounts of energy.
11 |
12 | !!! warning "Requirement"
13 | Requires the [Draconic Evolution](https://www.curseforge.com/minecraft/mc-mods/draconic-evolution) mod to be installed
14 |
15 |
16 |
17 | ## Functions
18 |
19 | ### getEnergyStored
20 | ```
21 | getEnergyStored() -> number
22 | ```
23 | Returns the amount of energy stored in the energy core in FE.
24 |
25 | ---
26 |
27 | ### getMaxEnergyStored
28 | ```
29 | getMaxEnergyStored() -> number
30 | ```
31 | Returns the maximum amount of energy that the energy core can hold in FE.
32 |
33 | ---
34 |
35 | ### getTransferPerTick
36 | ```
37 | getTransferPerTick() -> number
38 | ```
39 | Returns the amount of energy being transferred in/out of the core per tick in FE.
40 |
41 | ---
42 |
43 | ### getTier
44 | ```
45 | getTier() -> number
46 | ```
47 | Returns the energy core's tier. A number from 1 to 8.
48 |
49 | ---
50 |
51 | ## Changelog/Trivia
52 |
53 | **0.7.4r**
54 | Added Draconic Evolution integration
55 |
--------------------------------------------------------------------------------
/docs/integrations/draconic_evolution/index.md:
--------------------------------------------------------------------------------
1 | # Draconic Evolution
2 |
3 | !!! danger "Only available in versions =>1.16-0.7.4r, <1.16-0.7.7r"
4 |
5 | The Draconic Evolution integration was only briefly available in the mod. Hence the documentation for the mod's integrations have been excluded from the side navigation.
6 | However, if needed they can still be accessed using the links below:
7 |
8 | ## Docs
9 |
10 | - [Draconic Energy Core](./energy_core.md)
11 | - [Draconic Reactor](./reactor.md)
12 |
13 | ---
14 |
15 | ## Changelog/Trivia
16 |
17 | **0.7.7r**
18 | Removed Draconic Evolution integration
19 |
20 | **0.7.4r**
21 | Added Draconic Evolution integration
--------------------------------------------------------------------------------
/docs/integrations/draconic_evolution/reactor.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Boiler Valve
9 | The [Themoelectric Boiler](https://wiki.aidancbrady.com/wiki/Thermoelectric_Boiler) is a multiblock structure from mekanism to generate steam or other gases.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getCoolant() | table | Returns the type of coolant and the amount. |
24 | | getCoolantCapacity() | int | Returns capacity of the coolant tank. |
25 | | getCoolantNeeded() | int | Returns the coolant that is needed the tank is full. |
26 | | getCoolantFilledPercentage() | int | Returns the amount of the coolant in percent. |
27 | | getHeatedCoolant() | table | Returns the type of heated coolant and the amount. |
28 | | getHeatedCoolantCapacity() | int | Returns capacity of the heated coolant tank. |
29 | | getHeatedCoolantNeeded() | int | Returns the amount of heated coolant that is needed to fill the tank. |
30 | | getHeatedCoolantFilledPercentage() | int | Returns the amount of the heated coolant in percent. |
31 | | getWater() | int | Returns the amount of the water. |
32 | | getWaterCapacity() | int | Returns the capacity of the water. |
33 | | getWaterNeeded() | int | Returns the amount of water that is needed to fill the tank. |
34 | | getWaterFilledPercentage() | int | Returns the amount of the water in percent. |
35 | | getSteam() | int | Returns the stored amount of the water. |
36 | | getSteamCapacity() | int | Returns the capacity of the steam. |
37 | | getSteamNeeded() | int | Returns the amount of steam that is needed to fill the tank. |
38 | | getSteamFilledPercentage() | int | Returns the amount of the steam in percent. |
39 | | getEnvironmentalLoss() | int | Returns the environmental loss. |
40 | | getTemperature() | int | Returns the temperature of the reactor. |
41 | | getBoilRate() | int | Returns the boil rate. |
42 | | getMaxBoilRate() | int | Returns the max boil rate. |
43 | | getSuperheaters() | int | Returns the amount of superheating elements. |
44 | | getBoilCapacity() | int | Returns the capacity of the boiler. |
45 |
46 | ##Changelog/Trivia
47 |
48 | 0.6b
49 | Added integration for Mekanism
50 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/chemical.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | # Chemical Tank
4 |
5 | !!! picture inline end
6 | { align=right }
7 | Mod: Mekanism
8 | Block: Chemical Tank
9 | [Chemical Tanks](https://wiki.aidancbrady.com/wiki/Chemical_Tanks) are used to store Gases. They can be placed as a block and can interact with Pressurized Tubes. They come in the four tiers, each tier being double the capacity and output rate of its predecessor. It can store the following gases:
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
17 |
18 | ##Functions
19 | | Function | Returns | Description |
20 | |----------|---------|-------------|
21 | | getStored() | table | Returns the type and the amount of the chemical. |
22 | | getCapacity() | int | Returns the capacity. |
23 | | getFilledPercentage() | int | Returns the amount of the stored chemical in percent. |
24 | | getNeeded() | int | Returns the amount of chemicals that is needed to fill the tank. |
25 |
26 | ##Changelog/Trivia
27 |
28 | 0.6.6b
29 | Added integration for the chemical tank
30 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/digital_miner.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Digital Miner
9 | The [Digital Miner](https://wiki.aidancbrady.com/wiki/Digital_Miner) is the scale mining machine of Mekanism. However, this machine is like no other as it "magically-teleports" mined blocks to its inventory.
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | !!! info
19 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
20 |
21 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
22 |
23 | ##Functions
24 | | Function | Returns | Description |
25 | |----------|---------|-------------|
26 | | getDelay() | int | Returns the delay between two mining operations. |
27 | | getRadius() | int | Returns the radius. |
28 | | setRadius(int radius) | | Set the radius. |
29 | | getMinY() | int | Returns the minium mining high. |
30 | | setMinY(int high) | | Set the minium mining high. |
31 | | getMaxY() | int | Returns the maximum mining high. |
32 | | setMaxY(int high) | | Set the maximum mining high. |
33 | | toggleSilkTouch() | | Toggles the silk touch mode. |
34 | | toggleInverse() | | Toggles the inverse mode. |
35 | | toggleAutoEject() | | Toggles the auto eject mode. |
36 | | toggleAutoPull() | | Toggles the auto pull mode. |
37 | | start() | | Starts the miner. |
38 | | stop() | | Stops the miner. |
39 | | reset() | | Resets the miner. |
40 | | getTotalEnergyFilledPercentage() | int | Returns the amount of the energy in percent. |
41 |
42 | ##Changelog/Trivia
43 |
44 | 0.6.5b
45 | Added the digital miner integration
46 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/dynamic_tank.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Dynamic Tank Valve
9 | The [Dynamic tank](https://wiki.aidancbrady.com/wiki/Dynamic_Tank) is a multiblock structure from mekanism to store fluids, gases and more.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getStored() | table | Returns a table with the amount, the name of the stored type and the current type(fluid, gas, ...). |
24 | | getCapacity() | int | Returns the capacity of the tank. |
25 | | getFilledPercentage | int | Returns the amount in percent. |
26 | | getNeeded() | int | Returns the amount that is needed to fill the tank. |
27 | | isEmpty() | boolean | Returns true if the tank is empty. |
28 |
29 |
30 | ##Changelog/Trivia
31 |
32 | 0.7.3r
33 | Added dynamic tank integration
34 |
35 | 0.6b
36 | Added integration for Mekanism
37 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/fission.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Fission Reactor Logic Adapter
9 | The [Fission Reactor](https://wiki.aidancbrady.com/wiki/Fission_Reactor) is a reactor from Mekanism.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getCoolant() | table | Returns the type of coolant and the amount. |
24 | | getCoolantCapacity() | int | Returns capacity of the coolant tank. |
25 | | getCoolantNeeded() | int | Returns the coolant that is needed the tank is full. |
26 | | getCoolantFilledPercentage() | int | Returns the amount of the coolant in percent. |
27 | | getHeatedCoolant() | table | Returns the type of heated coolant and the amount. |
28 | | getHeatedCoolantCapacity() | int | Returns capacity of the heated coolant tank. |
29 | | getHeatedCoolantNeeded() | int | Returns the amount of heated coolant that is needed to fill the tank. |
30 | | getHeatedCoolantFilledPercentage() | int | Returns the amount of the heated coolant in percent. |
31 | | getFuel() | int | Returns the amount of fuel. |
32 | | getFuelCapacity() | int | Returns capacity of the fuel tank. |
33 | | getFuelNeeded() | int | Returns the amount of fuel that is needed to fill the tank. |
34 | | getFuelFilledPercentage() | int | Returns the amount of the fuel in percent. |
35 | | getWaste() | int | Returns the amount of waste. |
36 | | getWasteCapacity() | int | Returns capacity of the waste tank. |
37 | | getWasteNeeded() | int | Returns the waste that is needed to fill the tank. |
38 | | getWasteFilledPercentage() | int | Returns the amount of the waste in percent. |
39 | | getStatus() | booleans | Returns true if the reactor is active false if not. |
40 | | scram() | | Deactivates the reactor. |
41 | | activate() | | Activates the reactor. |
42 | | getBurnRate() | int | Returns the burn rate of the reactor that is set. |
43 | | setBurnRate(int rate) | | Set the burn rate. |
44 | | getActualBurnRate() | int | Actual burn rate as it may be lower if say there is not enough fuel . |
45 | | getMaxBurnRate() | int | Returns the max burn rate. |
46 | | getDamagePercent() | int | Returns the damage in percent. |
47 | | getHeatingRate() | int | Returns the heating rate. |
48 | | getEnvironmentalLoss() | int | Returns the environmental loss. |
49 | | getTemperature() | int | Returns the temperature of the reactor. |
50 | | getHeatCapacity() | int | Returns the max temperature. |
51 | | getFuelAssemblies() | int | Returns the amount of fuel assemblies. |
52 | | getFuelSurfaceArea() | int | Returns the surface area of the fuel. |
53 | | getBoilEfficiency() | int | |
54 | | getActualBurnRate() | int | Actual burn rate as it may be lower if say there is not enough fuel . |
55 | | getMaxBurnRate() | int | Returns the max burn rate. |
56 | | getDamagePercent() | int | Returns the damage in percent. |
57 | | getHeatingRate() | int | Returns the heating rate. |
58 | | getEnvironmentalLoss() | int | Returns the environmental loss. | getTemperature
59 |
60 | ##Changelog/Trivia
61 |
62 | 0.6b
63 | Added integration for Mekanism
64 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/fluid_tank.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Fluid Tanks
9 | [Fluid Tanks](https://wiki.aidancbrady.com/wiki/Fluid_Tanks) are tanks from mekanism to store fluids, obviously.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getStored() | table | Returns a table with the amount and the name of the stored type. |
24 | | getTier() | string | Returns the tier of the tank(Basic, Advanced, ...). |
25 | | getCapacity() | int | Returns the capacity of the tank. |
26 | | getFilledPercentage | int | Returns the amount in percent. |
27 | | getNeeded() | int | Returns the amount that is needed to fill the tank. |
28 |
29 | ##Changelog/Trivia
30 |
31 | 0.7.2r
32 | Added fluid tank integration
33 |
34 | 0.6b
35 | Added integration for Mekanism
36 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/fusion.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Fusion Reactor Logic Adapter
9 | The [Fusion Reactor](https://wiki.aidancbrady.com/wiki/Fusion_Reactor) is a reactor from Mekanism.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getHohlraum() | table | Returns the item stack of the hohlraum. |
24 | | getPlasmaTemperature() | int | Returns the temperature of the plasma. |
25 | | getCaseTemperature() | int | Returns the temperature of the case. |
26 | | getWater() | int | Returns the amount of the water. |
27 | | getWaterCapacity() | int | Returns the capacity of the water. |
28 | | getWaterNeeded() | int | Returns the amount of water that is needed to fill the tank. |
29 | | getWaterFilledPercentage() | int | Returns the amount of the water in percent. |
30 | | getSteam() | int | Returns the stored amount of the water. |
31 | | getSteamCapacity() | int | Returns the capacity of the steam. |
32 | | getSteamNeeded() | int | Returns the amount of steam that is needed to fill the tank. |
33 | | getSteamFilledPercentage() | int | Returns the amount of the steam in percent. |
34 | | getTritium() | int | Returns the amount of the tritium. |
35 | | getTritiumCapacity() | int | Returns the capacity of the tritium. |
36 | | getTritiumNeeded() | int | Returns the amount of tritium that is needed to fill the tank. |
37 | | getTritiumFilledPercentage() | int | Returns the amount of the tritium in percent. |
38 | | getDeuterium() | int | Returns the stored amount of the deuterium. |
39 | | getDeuteriumCapacity() | int | Returns the capacity of the deuterium. |
40 | | getDeuteriumNeeded() | int | Returns the amount of deuterium that is needed to fill the tank. |
41 | | getDeuteriumFilledPercentage() | int | Returns the amount of the deuterium in percent. |
42 | | getDTFuel() | int | Returns the stored amount of the dt-fuel. |
43 | | getDTFuelCapacity() | int | Returns the capacity of the dt-fuel. |
44 | | getDTFuelNeeded() | int | Returns the amount of dt-fuel that is needed to fill the tank. |
45 | | getDTFuelFilledPercentage() | int | Returns the amount of the dt-fuel in percent. |
46 | | getProduction() | int | Returns the energy production. |
47 | | getInjectionRate() | int | Returns the injection rate. |
48 | | setInjectionRate(int rate) | | Set the injection rate. |
49 | | getPassiveGeneration(boolean isWaterCooled) | int | Returns the passive generation. |
50 |
51 | ##Changelog/Trivia
52 |
53 | 0.6b
54 | Added integration for Mekanism
55 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/generic.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Any energy supporting block
9 | This proxy integration will add a integration for every energy supporting machine from Mekanism.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getTotalEnergy() | int | Returns the amount of stored energy. |
24 | | getTotalEnergyNeeded() | int | Returns the amount of energy that is needed to fill the block. |
25 | | getTotalEnergyFilledPercentage() | int | Returns the amount of the energy in percent. |
26 | | getTotalMaxEnergy() | int | Returns the capacity of the machine. |
27 |
28 | ##Changelog/Trivia
29 |
30 | 0.6b
31 | Added integration for Mekanism
32 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/index.md:
--------------------------------------------------------------------------------
1 | # Mekanism
2 |
3 | !!! danger "Only available in versions =>1.16-0.6b, <1.16-0.7.7r"
4 |
5 | The Mekanism integration was removed from the mod due to mekanism adding CC:Tweaked support internally. Hence the documentation for the mod's integrations have been excluded from the side navigation.
6 | For updated documentation on mekanism integration see the [Mekanism wiki](https://mekanism.github.io).
7 | If needed the old docs can still be accessed using the links below:
8 |
9 | ## Docs
10 |
11 | - [Boiler Valve](./boiler.md)
12 | - [Induction Valve](./induction.md)
13 | - [Chemical Tank](./chemical.md)
14 | - [Dynamic Tank](./dynamic_tank.md)
15 | - [Fluid Tank](./fluid_tank.md)
16 | - [Digital Miner](./digital_miner.md)
17 | - [Fission](./fission.md)
18 | - [Fusion](./fusion.md)
19 | - [Solar Evaporation](./solar_evaporation.md)
20 | - [Transmitter](./transmitter.md)
21 | - [Turbine](./turbine.md)
22 | - [Waste Barrel](./waste_barrel.md)
23 | - [Energy Blocks](./generic.md)
24 |
25 | ---
26 |
27 | ## Changelog/Trivia
28 |
29 | **0.7.7r**
30 | Removed Mekanism integration
31 |
32 | **0.6b**
33 | Added integration for Mekanism
--------------------------------------------------------------------------------
/docs/integrations/mekanism/induction.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Induction Valve
9 | The [Induction Matrix](https://wiki.aidancbrady.com/wiki/Induction_Matrix) is a multiblock structure from mekanism made to store large amounts of energy.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getEnergy() | int | Returns the amount of stored energy. |
24 | | getLastInput() | int | Returns the input rate per tick. |
25 | | getLastOutput() | int | Returns the output rate per tick. |
26 | | getEnergyNeeded() | int | Returns the amount of energy that is needed to fill the matrix. |
27 | | getEnergyFilledPercentage() | int | Returns the amount of the energy in percent. |
28 | | getTransferCap() | table | Returns the max transfer rate per tick. This is defined by the amount of [induction providers](https://wiki.aidancbrady.com/wiki/Induction_Providers) |
29 | | getInstalledCells() | int | Returns the amount of the installed [induction cells](https://wiki.aidancbrady.com/wiki/Induction_Cells). |
30 | | getInstalledProviders() | int | Returns the amount of the installed induction providers. |
31 | | getMaxEnergy() | int | Returns the capacity of the induction matrix. |
32 |
33 | ##Changelog/Trivia
34 |
35 | 0.6b
36 | Added integration for Mekanism
37 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/solar_evaporation.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Thermal Evaporation Valve
9 | A [Solar Evaporation Plant](https://wiki.aidancbrady.com/wiki/Thermal_Evaporation_Plant) is a multiblock structure from mekanism to create brine or lithium.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getInputTank() | table | Returns the name and the amount of the stored fluid of the input tank(left). |
24 | | getInputTank() | table | Returns the name and the amount of the stored fluid of the output tank(right). |
25 | | getHeat() | int | Returns the amount heat. |
26 | | getHeight() | int | Returns the height of the tower. |
27 | | getProduction() | int | Returns the production rate of the tower. |
28 |
29 |
30 | ##Changelog/Trivia
31 |
32 | 0.7.1r
33 | Added evaporation tower integration
34 |
35 | 0.6b
36 | Added integration for Mekanism
37 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/transmitter.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Any transmitter. See full list below
9 | Transmitters from mekanism are blocks which can transport various types of things like gases, fluids, energy or more.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ### Supported transmitters
21 | Supporte transmitters are
22 |
23 | - Universal Cable
24 | - Thermodynamic Conductor
25 | - Pressurized Tube
26 | - Mechanical Pipe
27 | - Logistical Transporter
28 |
29 | ##Functions
30 |
31 | Functions for every transmitter
32 |
33 | | Function | Returns | Description |
34 | |----------|---------|-------------|
35 | | getTransmitters | int | Returns the amount of transmitters. (Amount of cables) |
36 | | getAcceptors | int | Returns the amount of acceptors. (Amount of cables which are connected) |
37 | | getThroughput | int | Returns how much the cable can transfer at ones.(Use `getPull()` for the logistical transporter) |
38 | | getTier | string | Returns the tier of the transporter. (Basic to ultimate) |
39 | | getCapacity | int | Returns the capacity of the cable. (Not available for: logistical transporter) |
40 | | getStored | int | Returns the amount of stored things in the cable. (Not available for: logistical transporter) |
41 | | getNetworkCapacity | int | Returns the capacity of the network. (Not available for: logistical transporter, thermodynamic conductor) |
42 | | getNetworkStored | int | Returns the amount of stored things in the network. (Not available for: logistical transporter, thermodynamic conductor) |
43 |
44 | ### Logistical Transporter
45 |
46 | | Function | Returns | Description |
47 | |----------|---------|-------------|
48 | | getBaseSpeed | int | Returns the base speed(blocks per second) of the transmitter. |
49 | | getBasePull | int | Returns the base pull speed(items per second) of the transmitter. |
50 | | getSpeed | int | Returns the base speed (blocks per second) of the transmitter based on the configuration. |
51 | | getPull | int | Returns the base pull speed(items per second) of the transmitter based on the configuration. |
52 |
53 | ##Changelog/Trivia
54 |
55 | 0.7.6r
56 | Added transmitter integration
57 |
58 | 0.6b
59 | Added integration for Mekanism
60 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/turbine.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Turbine Valve
9 | The [Industrial Turbine](https://wiki.aidancbrady.com/wiki/Industrial_Turbine) is a multiblock structure from mekanism to generate energy with steam.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getSteam() | int | Returns the stored amount of the water. |
24 | | getSteamCapacity() | int | Returns the capacity of the steam. |
25 | | getSteamNeeded() | int | Returns the amount of steam that is needed to fill the tank. |
26 | | getSteamFilledPercentage() | int | Returns the amount of the steam in percent. |
27 | | getLastSteamInputRate() | int | Returns the amount of steam that is imported to the turbine. |
28 | | getDumpingMode() | string | Returns the gas dumping mode. |
29 | | getProductionRate() | int | Returns the energy production per tick. |
30 | | getMaxProduction() | int | Returns the max possible energy production per tic. |
31 | | getFlowRate() | int | Returns the current flow rate per tick. |
32 | | getMaxFlowRate() | int | Returns the current max possible flow rate per tick. |
33 | | getMaxWaterOutput() | int | Returns the max possible water output. |
34 | | getDispersers() | int | Returns the amount of dispersers. |
35 | | getVents() | int | Returns the amount of vents. |
36 | | getBlades() | int | Returns the amount of blades. |
37 | | getCoils() | int | Returns the amount of coils. |
38 | | getCondensers() | int | Returns the amount of condensers. |
39 |
40 | ##Changelog/Trivia
41 |
42 | 0.6b
43 | Added integration for Mekanism
44 |
--------------------------------------------------------------------------------
/docs/integrations/mekanism/waste_barrel.md:
--------------------------------------------------------------------------------
1 |
8 | Block: Waste Barrel
9 | [Waste Barrels](https://wiki.aidancbrady.com/wiki/Radioactive_Waste_Barrel) are blocks from mekanism to store nuclear waste.
10 |
11 |
12 |
13 |
14 |
15 | !!! info
16 | Energy functions will always return in FE. If you want it in joules, multiply the value with 2.5
17 |
18 | The functions which returns a value in percent, will return a number between 1-0. (50% would be 0.5)
19 |
20 | ##Functions
21 | | Function | Returns | Description |
22 | |----------|---------|-------------|
23 | | getStored() | int | Returns the amount of stored waste. |
24 | | getCapacity() | string | Returns the capacity of the barrel. |
25 | | getFilledPercentage | int | Returns the amount of waste in percent. |
26 |
27 | ##Changelog/Trivia
28 |
29 | 0.7.2r
30 | Added waste barrel integration
31 |
32 | 0.6b
33 | Added integration for Mekanism
34 |
--------------------------------------------------------------------------------
/docs/integrations/minecraft/beacon.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Beacon
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | A [Beacon](https://minecraft.fandom.com/wiki/Beacon) is a block that projects a light beam skyward and can provide status effects such as Speed, Jump Boost, Haste, Regeneration, Resistance, or Strength to nearby players.
11 |
12 |
13 |
14 | ---
15 |
16 |
17 |
18 | | Peripheral Name | Interfaces with | Has events | Introduced in |
19 | | --------------- | --------------- | ---------- | ------------- |
20 | | beacon | Beacon block | No | 0.6b |
21 |
22 |
23 |
24 | ---
25 |
26 | ## Functions
27 |
28 | ### getLevel
29 | ```
30 | getLevel() -> number
31 | ```
32 | Returns the level of the Beacon.
33 |
34 | ---
35 |
36 | ### getPrimaryEffect
37 | ```
38 | getPrimaryEffect() -> string
39 | ```
40 | Returns the registry name of the beacon's primary effect.
41 |
42 | ---
43 |
44 | ### getSecondaryEffect
45 | ```
46 | getSecondaryEffect() -> string
47 | ```
48 | Returns the registry name of the beacon's secondary effect.
49 |
50 | ---
51 |
52 | ## Changelog/Trivia
53 |
54 | **0.6b**
55 | Added integration for Minecraft
56 |
--------------------------------------------------------------------------------
/docs/integrations/minecraft/noteblock.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Note Block
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | A [Note Block](https://minecraft.fandom.com/wiki/Note_Block) is a musical block that emits sounds when punched or powered with redstone.
11 |
12 |
13 |
14 | ---
15 |
16 |
17 |
18 | | Peripheral Name | Interfaces with | Has events | Introduced in |
19 | | --------------- | --------------- | ---------- | ------------- |
20 | | noteBlock | Note Block | No | 0.7.4r |
21 |
22 |
23 |
24 | ---
25 |
26 | ## Functions
27 |
28 | ### playNote
29 | ```
30 | playNote() -> void
31 | ```
32 | Plays the Note Block's current note sound.
33 |
34 | ---
35 |
36 | ### getNote
37 | ```
38 | getNote() -> number
39 | ```
40 | Returns the index for the Note Block's current note. A number from 0 to 24.
41 |
42 | ---
43 |
44 | ### changeNoteBy
45 | ```
46 | changeNoteBy(note: number) -> number
47 | ```
48 | Changes the Note Block's note to the given `note`. `note` must be a number from 0 to 24.
49 | Returns the `note` if successful or -1 if not successful.
50 |
51 | ---
52 |
53 | ### changeNote
54 | ```
55 | changeNote() -> number
56 | ```
57 | Increments the Note Block's note to the next available note.
58 | Returns the new note if successful or -1 if not successful.
59 |
60 | ---
61 |
62 | ## Changelog/Trivia
63 |
64 | **0.7.4r**
65 | Added the Note Block integration
66 |
67 | **0.6b**
68 | Added integration for Minecraft
69 |
--------------------------------------------------------------------------------
/docs/integrations/powah/ender_cell.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Ender Cell
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 | The Ender Cell is a block from Powah to receive, store, and send energy on specific channels of the owner. You can access the energy from anywhere.
10 |
11 | !!! warning "Requirement"
12 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | ----------------- | ----------------------------------- | ---------- | ------------- |
22 | | enderCell | Every Ender Cell block (all tiers) | No | N/A |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getName
31 | ```
32 | getName() -> string
33 | ```
34 | Returns the name of the peripheral
35 |
36 | ---
37 |
38 | ### getEnergy
39 | ```
40 | getEnergy() -> number
41 | ```
42 | Returns the quantity of stored energy inside the cell.
43 |
44 | ---
45 |
46 | ### getMaxEnergy
47 | ```
48 | getMaxEnergy() -> number
49 | ```
50 | Returns the maximum quantity of storable energy inside the cell.
51 |
52 | ---
53 |
54 | ### getChannel()
55 | ```
56 | getChannel() -> number
57 | ```
58 | Returns the channel the Ender Cell is set to. A number from 1 to `getMaxChannels()`.
59 |
60 | ---
61 |
62 | ### getMaxChannels()
63 | ```
64 | getMaxChannels() -> number
65 | ```
66 | Returns the maximum number of channels of the Ender Cell set in the Powah config file.
67 |
68 | ---
69 |
70 | ### setChannel()
71 | ```
72 | setChannel(channel: number) -> void
73 | ```
74 | Sets the channel of the Ender cell to `channel`. `channel` must be a number between 1 to `getMaxChannels()`. Does not change the channel if `channel` is invalid.
75 |
76 | ---
77 |
78 |
79 | ## Changelog/Trivia
80 |
81 | **1.19.2-0.X.XX.X**
82 | Added integration for Powah's Ender Cell
83 |
--------------------------------------------------------------------------------
/docs/integrations/powah/energy_cell.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Energy Cell
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 | The Energy Cell is a block from Powah to receive, store and send energy.
10 |
11 | !!! warning "Requirement"
12 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | ----------------- | ----------------------------------- | ---------- | ------------- |
22 | | energyCell | Every energy cell block (all tiers) | No | N/A |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getName
31 | ```
32 | getName() -> string
33 | ```
34 | Returns the name of the peripheral
35 |
36 | ---
37 |
38 | ### getEnergy
39 | ```
40 | getEnergy() -> number
41 | ```
42 | Returns the quantity of stored energy inside the cell.
43 |
44 | ---
45 |
46 | ### getMaxEnergy
47 | ```
48 | getMaxEnergy() -> number
49 | ```
50 | Returns the maximum quantity of storable energy inside the cell.
51 |
52 | ---
53 |
54 |
55 | ## Changelog/Trivia
56 |
57 | **1.19.2-0.7.26.r**
58 | Added integration for Powah
59 |
--------------------------------------------------------------------------------
/docs/integrations/powah/furnator.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Furnator
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 | The Furnator is a block from Powah to generate power given a fuel source.
10 |
11 | !!! warning "Requirement"
12 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | ----------------- | ----------------------------------- | ---------- | ------------- |
22 | | furnator | Every furnator block (all tiers) | No | N/A |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getName
31 | ```
32 | getName() -> string
33 | ```
34 | Returns the name of the peripheral
35 |
36 | ---
37 |
38 | ### getEnergy
39 | ```
40 | getEnergy() -> number
41 | ```
42 | Returns the quantity of stored energy inside the Furnator.
43 |
44 | ---
45 |
46 | ### getMaxEnergy
47 | ```
48 | getMaxEnergy() -> number
49 | ```
50 | Returns the maximum quantity of storable energy inside the Furnator.
51 |
52 | ---
53 |
54 | ### isBurning
55 | ```
56 | isBurning() -> boolean
57 | ```
58 | Returns true if the Furnator is currently burning (generating energy from a fuel source).
59 |
60 | ---
61 |
62 | ### getCarbon
63 | ```
64 | getCarbon() -> number
65 | ```
66 | Returns the percentage of stored carbon (fuel) inside the Furnator.
67 |
68 | ---
69 |
70 | ### getInventory
71 | ```
72 | getInventory() -> table
73 | ```
74 | Returns a table containing the ItemStack infos of the item inside the Furnator.
75 |
76 | ---
77 |
78 | ## Changelog/Trivia
79 |
80 | **1.19.2-0.7.26.r**
81 | Added integration for Powah
82 |
--------------------------------------------------------------------------------
/docs/integrations/powah/magmator.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Magmator
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 |
10 | The Magmator is a block from Powah to generate power from a fluid heat source (lava)
11 |
12 | !!! warning "Requirement"
13 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
14 |
15 |
16 |
17 | ---
18 |
19 |
20 |
21 | | Peripheral Name | Interfaces with | Has events | Introduced in |
22 | | ----------------- | ----------------------------------- | ---------- | ------------- |
23 | | magmator | Every magmator block (all tiers) | No | N/A |
24 |
25 |
26 |
27 | ---
28 |
29 | ## Functions
30 |
31 | ### getName
32 | ```
33 | getName() -> string
34 | ```
35 | Returns the name of the peripheral
36 |
37 | ---
38 |
39 | ### getEnergy
40 | ```
41 | getEnergy() -> number
42 | ```
43 | Returns the quantity of stored energy inside the Magmator.
44 |
45 | ---
46 |
47 | ### getMaxEnergy
48 | ```
49 | getMaxEnergy() -> number
50 | ```
51 | Returns the maximum quantity of storable energy inside the Magmator.
52 |
53 | ---
54 |
55 | ### isBurning
56 | ```
57 | isBurning() -> boolean
58 | ```
59 | Returns true if the Magmator is currently burning (generating energy from the fluid heat source).
60 |
61 | ---
62 |
63 | ### getTankCapacity
64 | ```
65 | getTankCapacity() -> number
66 | ```
67 | Returns the overall capacity of the Magmator tank.
68 |
69 | ---
70 |
71 | ### getFluidInTank
72 | ```
73 | getFluidInTank() -> number
74 | ```
75 | Returns the stored volume (mb) of fluid inside the Magmator tank.
76 |
77 | ---
78 |
79 | ## Changelog/Trivia
80 |
81 | **1.19.2-0.7.26.r**
82 | Added integration for Powah
83 |
--------------------------------------------------------------------------------
/docs/integrations/powah/reactor.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Reactor
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 | The Reactor is a block from Powah to generate power from uraninite.
10 |
11 | !!! warning "Requirement"
12 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | ----------------- | ---------------------------------------------- | ---------- | ------------- |
22 | | uraniniteReactor | Every reactor multiblock structure (all tiers) | No | N/A |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getName
31 | ```
32 | getName() -> string
33 | ```
34 | Returns the name of the peripheral
35 |
36 | ---
37 |
38 | ### getEnergy
39 | ```
40 | getEnergy() -> number
41 | ```
42 | Returns the quantity of stored energy inside the cell.
43 |
44 | ---
45 |
46 | ### getMaxEnergy
47 | ```
48 | getMaxEnergy() -> number
49 | ```
50 | Returns the maximum quantity of storable energy inside the Reactor.
51 |
52 | ---
53 |
54 | ### isRunning
55 | ```
56 | isRunning() -> boolean
57 | ```
58 | Returns true if the Reactor is currently running.
59 |
60 | ---
61 |
62 | ### getFuel
63 | ```
64 | getFuel() -> number
65 | ```
66 | Returns the stored quantity fuel in percentage.
67 |
68 | ---
69 |
70 | ### getCarbon
71 | ```
72 | getCarbon() -> number
73 | ```
74 | Returns the stored quantity of carbon in percentage.
75 |
76 | ---
77 |
78 | ### getRedstone
79 | ```
80 | getRedstone() -> number
81 | ```
82 | Returns the stored quantity of redstone in percentage.
83 |
84 | ---
85 |
86 | ### getTemperature
87 | ```
88 | getTemperature() -> number
89 | ```
90 | Returns the current temperature of the Reactor.
91 |
92 | ---
93 |
94 | ### getInventoryUraninite
95 | ```
96 | getInventoryUraninite() -> table
97 | ```
98 | Returns a table containing the ItemStack infos of the item inside the uraninite slot of the Reactor.
99 |
100 | ---
101 |
102 |
103 | ### getInventoryRedstone
104 | ```
105 | getInventoryRedstone() -> table
106 | ```
107 | Returns a table containing the ItemStack infos of the item inside the redstone slot of the Reactor.
108 |
109 | ---
110 |
111 |
112 | ### getInventoryCarbon
113 | ```
114 | getInventoryCarbon() -> table
115 | ```
116 | Returns a table containing the ItemStack infos of the item inside the carbon slot of the Reactor.
117 |
118 | ---
119 |
120 |
121 |
122 | ## Changelog/Trivia
123 |
124 | **1.19.2-0.7.26.r**
125 | Added integration for Powah
126 |
--------------------------------------------------------------------------------
/docs/integrations/powah/solar_panel.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Solar Panel
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 | The Solar Panel is a block from Powah to generate power given direct exposure to the sky.
10 |
11 | !!! warning "Requirement"
12 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | ----------------- | ----------------------------------- | ---------- | ------------- |
22 | | solarPanel | Every solar panel block (all tiers) | No | N/A |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getName
31 | ```
32 | getName() -> string
33 | ```
34 | Returns the name of the peripheral
35 |
36 | ---
37 |
38 | ### getEnergy
39 | ```
40 | getEnergy() -> number
41 | ```
42 | Returns the quantity of stored energy inside the Solar Panel.
43 |
44 | ---
45 |
46 | ### getMaxEnergy
47 | ```
48 | getMaxEnergy() -> number
49 | ```
50 | Returns the maximum quantity of storable energy inside the Solar Panel.
51 |
52 | ---
53 |
54 | ### canSeeSky
55 | ```
56 | canSeeSky() -> boolean
57 | ```
58 | Returns true if the Solar Panel can directly see the sky without any block blocking inbetween.
59 |
60 | ---
61 |
62 | ## Changelog/Trivia
63 |
64 | **1.19.2-0.7.26.r**
65 | Added integration for Powah
--------------------------------------------------------------------------------
/docs/integrations/powah/thermo_generator.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Thermo Generator
6 |
7 | !!! danger "Only available in version 1.19.2"
8 |
9 |
10 | The Thermo Generator is block from Powah to generate power from an appropriate heat source block beneath it (magma block, lava)
11 |
12 | !!! warning "Requirement"
13 | Requires the [Powah](https://www.curseforge.com/minecraft/mc-mods/powah-rearchitected) mod to be installed
14 |
15 |
16 |
17 | ---
18 |
19 |
20 |
21 | | Peripheral Name | Interfaces with | Has events | Introduced in |
22 | | ----------------- | ---------------------------------------- | ---------- | ------------- |
23 | | thermo | Every thermo generator block (all tiers) | No | N/A |
24 |
25 |
26 |
27 | ---
28 |
29 | ## Functions
30 |
31 | ### getName
32 | ```
33 | getName() -> string
34 | ```
35 | Returns the name of the peripheral
36 |
37 | ---
38 |
39 | ### getEnergy
40 | ```
41 | getEnergy() -> number
42 | ```
43 | Returns the quantity of stored energy inside the Thermo Generator.
44 |
45 | ---
46 |
47 | ### getMaxEnergy
48 | ```
49 | getMaxEnergy() -> number
50 | ```
51 | Returns the maximum quantity of storable energy inside the Thermo Generator.
52 |
53 | ---
54 |
55 | ### getCoolantInTank
56 | ```
57 | getCoolantInTank() -> number
58 | ```
59 | Returns the stored quantity of coolant inside the Thermo Generator tank.
60 |
61 | ---
62 |
63 | ## Changelog/Trivia
64 |
65 | **1.19.2-0.7.26.r**
66 | Added integration for Powah
67 |
--------------------------------------------------------------------------------
/docs/integrations/storage_drawers/drawer.md:
--------------------------------------------------------------------------------
1 | # Drawer
2 |
3 | !!! danger "Only available in version 1.16"
4 |
5 | !!! picture inline end
6 | { align=right }
7 |
8 | Drawers are a storage block from the Storage Drawer mod. This integration fixes weird interactions between the generic CC:Tweaked inventory integration and Storage Drawer logic.
9 |
10 | !!! warning "Requirement"
11 | Requires the [Storage Drawers](https://www.curseforge.com/minecraft/mc-mods/storage-drawers) mod to be installed
12 |
13 |
14 |
15 | ---
16 |
17 | ## Functions
18 |
19 | See the [generic inventory](https://tweaked.cc/generic_peripheral/inventory.html) peripheral from CC:Tweaked for details.
20 |
21 | ---
22 |
23 | ## Changelog/Trivia
24 |
25 | **0.7r**
26 | Added integration for Storage Drawers
27 |
--------------------------------------------------------------------------------
/docs/items/ar_goggles.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # AR Goggles
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The AR Goggles can be used in combination with the AR Controller to have a customizable overlay wherever you go. Fun!
11 | See the documenation for the [AR Controller](../peripherals/ar_controller.md) to learn more.
12 |
13 | !!! hint
14 | To link your goggles to an AR Controller, right click it with them in your hand. Multiple Goggles can be linked to one Controller.
15 |
16 | !!! bug
17 | The AR Goggles are slightly buggy in 1.18x and completely disabled in 1.19x. We work on a rework of the AR Goggles system with a bunch of new features for 0.8/1.0
18 |
19 | ---
20 |
21 | ## Changelog/Trivia
22 |
23 | **0.5b**
24 | Added the AR Controller and AR Goggles, made by Olfi01#6413
25 |
--------------------------------------------------------------------------------
/docs/items/chunk_controller.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Chunk Controller
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Chunk Controller is a crafting ingredient for the [Chunky Turtle](../turtles/chunky_turtle.md).
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.4b**
19 | Added as the crafting ingredient for the chunky turtle.
20 |
--------------------------------------------------------------------------------
/docs/items/computer_tool.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Computer Tool
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Computer Tool is a tool to open GUI's from the mod blocks.
11 |
12 | !!! note
13 | Currently the Computer Tool is useless.
14 |
15 |
16 |
17 | ---
18 |
19 | ## Changelog/Trivia
20 |
21 | **0.5b**
22 | Added the Computer Tool
--------------------------------------------------------------------------------
/docs/items/memory_card.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Memory Card
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Memory Card can be used in combination with the Inventory Manager to manipulate with the player's inventory.
11 | See the [Inventory Manager](../peripherals/inventory_manager.md) documenation for more info.
12 |
13 | !!! hint
14 | Right click with the Memory Card in your hand to assign it to yourself to the card.
15 |
16 |
17 |
18 | ---
19 |
20 | ## Changelog/Trivia
21 |
22 | **0.5b**
23 | Added the Inventory Manager and Memory Card
24 |
--------------------------------------------------------------------------------
/docs/items/pocket_computer.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Pocket Computers
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | There are Pocket Computer versions of the following peripherals:
11 |
12 | * [Environment Detector](../peripherals/environment_detector.md) ➜ Environment ..
13 | * [Player Detector](../peripherals/player_detector.md) ➜ Player ..
14 | * [Chat Box](../peripherals/chat_box.md) ➜ Chatty ..
15 | * [Geo Scanner](../peripherals/geo_scanner.md) ➜ Geoscanning ..
16 | * [Colony Integrator](../peripherals/colony_integrator.md) ➜ Colony ..
17 |
18 | !!! failure "Events"
19 | The pocket computer versions of the peripherals do not receive the peripheral events.
20 |
21 | ---
22 |
23 | ## Changelog/Trivia
24 |
25 | **0.7r**
26 | Added Geo Scanner pocket computer.
27 |
28 | **0.4.3b**
29 | Added the Player Detector and Chat Box pocket computers.
30 |
31 | **0.4.1b**
32 | Added the Environment Detector pocket computer.
33 |
--------------------------------------------------------------------------------
/docs/peripherals/ar_controller.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # AR Controller
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The AR Controller is used to control your [AR Goggles](../items/ar_goggles.md) wirelessly. You can draw anything you wish into an overlay that will be visible as long as you're wearing the goggles.
11 |
12 | !!! hint
13 | To link your goggles to an AR Controller, right click it with them in your hand. Multiple Goggles can be linked to one Controller.
14 |
15 | !!! bug
16 | The AR Goggles are currently slightly buggy. Sometimes, they just don't do what they should do. We will rework the AR System in 0.8r/1.0r
17 |
18 | ---
19 |
20 |
21 |
22 | | Peripheral Name | Interfaces with | Has events | Introduced in |
23 | | --------------- | --------------- | ---------- | ------------- |
24 | | arController | AR Goggles | No | 0.5b |
25 |
26 |
27 |
28 | ---
29 |
30 | While the Controller is in relative mode, it interprets all coordinates as if they were on a virtual screen of the size you specified, and then scales them according to your screen size.
31 |
32 | All color values are hexadecimal color codes (for example `0xff00ff`)
33 |
34 | Everything that is painted onto the canvas remains there until `clear()` or if the element is removed using `clearElement(id)`, however, it might be repositioned if relative mode is toggled on or off.
35 |
36 | ## Functions
37 |
38 | ### clear
39 | ```
40 | clear() -> void
41 | ```
42 |
43 | Clears the entire canvas.
44 |
45 | ---
46 |
47 | ### clearElement
48 | ```
49 | clearElement(id: string) -> void
50 | ```
51 |
52 | Clears the element with the given `id`.
53 |
54 | ---
55 |
56 | ### horizontalLine
57 | ```
58 | horizontalLine(minX: number, maxX: number, y: number, color: number) -> void
59 | ```
60 |
61 | Draws a horizontal line in the given color from minX to maxX at vertical y.
62 |
63 | ---
64 |
65 | ### horizontalLineWithId
66 | ```
67 | horizontalLineWithId(id: string, minX: number, maxX: number, y: number, color: number) -> void
68 | ```
69 |
70 | The same as [`horizontalLine()`](#horizontalline), but has an id so it can be overridden later on or can be completely cleared.
71 |
72 | ---
73 |
74 | ### verticalLine
75 | ```
76 | verticalLine(x: number, minY: number, maxY: number, color: number) -> void
77 | ```
78 |
79 | Draws a vertical line in the given color from minY to maxY at horizontal x.
80 |
81 | ---
82 |
83 | ### verticalLineWithId
84 | ```
85 | verticalLineWithId(id: string, x: number, minY: number, maxY: number, color: number) -> void
86 | ```
87 |
88 | The same as [`verticalLine()`](#verticalline), but has an id so it can be overridden later on or can be completely cleared.
89 |
90 | ---
91 |
92 | ### drawString
93 | ```
94 | drawString(text: string, x: number, y: number, color: number) -> void
95 | ```
96 |
97 | Draws the given string to the specified position with the specified text color.
98 |
99 | ---
100 |
101 | ### drawStringWithId
102 | ```
103 | drawStringWithId(id: string, text: string, x: number, y: number, color: number) -> void
104 | ```
105 |
106 | The same as [`drawString()`](#drawstring), but has an id so it can be overridden later on or can be completely cleared.
107 |
108 | ---
109 |
110 | ### drawCenteredString
111 | ```
112 | drawCenteredString(text: string, x: number, y: number, color: number) -> void
113 | ```
114 |
115 | The same as [`drawString()`](#drawstring), but centers the string horizontally around the specified position.
116 |
117 | ---
118 |
119 | ### drawCenteredStringWithId
120 | ```
121 | drawCenteredStringWithId(id: string, text: string, x: number, y: number, color: number) -> void
122 | ```
123 |
124 | The same as [`drawCenteredString()`](#drawcenteredstring), but has an id so it can be overridden later on or can be completely cleared.
125 |
126 | ---
127 |
128 | ### drawRightboundString
129 | ```
130 | drawRightboundString(text: string, x: number, y: number, color: number) -> void
131 | ```
132 |
133 | The same as [`drawString()`](#drawstring), but the string is positioned with its right end at the specified position.
134 |
135 | ---
136 |
137 | ### drawRightboundStringWithId
138 | ```
139 | drawRightboundStringWithId(id: string, text: string, x: number, y: number, color: number) -> void
140 | ```
141 |
142 | The same as [`drawRightboundString()`](#drawrightboundstring), but has an id so it can be overridden later on or can be completely cleared.
143 |
144 | ---
145 |
146 | ### drawItemIcon
147 | ```
148 | drawItemIcon(itemId: string, x: number, y: number) -> void
149 | ```
150 |
151 | !!! success "Added in version 0.5.2b"
152 |
153 | Draws the given item to the specified position.
154 |
155 | ---
156 |
157 | ### drawItemIconWithId
158 | ```
159 | drawItemIconWithId(id: string, itemId: string, x: number, y: number) -> void
160 | ```
161 |
162 | !!! success "Added in version 0.5.2b"
163 |
164 | The same as [`drawItemIcon()`](#drawitemicon), but has an id so it can be overridden later on or can be completely cleared.
165 |
166 | ---
167 |
168 | ### drawCircle
169 | ```
170 | drawCircle(x: number, y: number, radius: number, color: number) -> void
171 | ```
172 |
173 | !!! success "Added in version 0.5.2b"
174 |
175 | Draws a circle without filling it.
176 |
177 | ---
178 |
179 | ### drawCircleWithId
180 | ```
181 | drawCircleWithId(id: string, x: number, y: number, radius: number, color: number) -> void
182 | ```
183 |
184 | !!! success "Added in version 0.5.2b"
185 |
186 | The same as [`drawCircle()`](#drawcircle), but has an id so it can be overridden later on or can be completely cleared.
187 |
188 | ---
189 |
190 | ### fill
191 | ```
192 | fill(minX: number, minY: number, maxX: number, maxY: number, color: number)
193 | ```
194 |
195 | Fills a rectangle with the given color from the corner minX, minY to maxX, maxY.
196 |
197 | ---
198 |
199 | ### fillWithId
200 | ```
201 | fill(id: string, minX: number, minY: number, maxX: number, maxY: number, color: number)
202 | ```
203 |
204 | The same as [`fill()`](#fill), but has an id so it can be overridden later on or can be completely cleared.
205 |
206 | ---
207 |
208 | ### fillCircle
209 | ```
210 | fillCircle(x: number, y: number, radius: number, color: number) -> void
211 | ```
212 |
213 | !!! success "Added in version 0.5.2b"
214 |
215 | Draws a full circle.
216 |
217 | ---
218 |
219 | ### fillCircleWithId
220 | ```
221 | fillCircleWithId(id: string, x: number, y: number, radius: number, color: number) -> void
222 | ```
223 |
224 | !!! success "Added in version 0.5.2b"
225 |
226 | The same as [`fillCircle()`](#fillcircle), but has an id so it can be overridden later on or can be completely cleared.
227 |
228 | ---
229 |
230 | ### fillGradient
231 | ```
232 | fillGradient(minX: number, minY: number, maxX: number, maxY: number, colorFrom: number, colorTo: number) -> void
233 | ```
234 |
235 | Draws a rectangular gradient from colorFrom to colorTo with the given corners.
236 |
237 | ---
238 |
239 | ### fillGradientWithId
240 | ```
241 | fillGradientWithId(id: string, minX: number, minY: number, maxX: number, maxY: number, colorFrom: number, colorTo: number) -> void
242 | ```
243 |
244 | The same as [`fillGradient()`](#fillgradient), but has an id so it can be overridden later on or can be completely cleared.
245 |
246 | ---
247 |
248 | ### isRelativeMode
249 | ```
250 | isRelativeMode(): true, number, number | false
251 | ```
252 |
253 | Returns true and the size of the virtual screen if relative mode is active, or just false if it isn't.
254 |
255 | ---
256 |
257 | ### setRelativeMode
258 | ```
259 | setRelativeMode(enabled: boolean, virtualScreenWidth?: number, virtualScreenHeight?: number) -> void
260 | ```
261 |
262 | Activates or deactivates relative mode. Requires virtual screen width and height if it is being enabled.
263 |
264 | ---
265 |
266 | !!! hint
267 | Use negative coordinates to specify an x value from the right end of the screen or a y value from the bottom!
268 |
269 | ## Examples
270 |
271 | ### Example 1
272 |
273 | Olfi01 made a simple script that shows the current date and time in the top right corner of the screen and updates every second.
274 |
275 | ```lua linenums="1"
276 | local controller = peripheral.find("arController") -- Finds the peripheral if one is connected
277 |
278 | if controller == nil then error("arController not found") end
279 |
280 | controller.setRelativeMode(true, 1600, 900) -- Convenient Aspect ratio for most screens
281 | while true do
282 | local timer = os.startTimer(1)
283 | local event, id
284 | repeat
285 | event, id = os.pullEvent("timer")
286 | until id == timer
287 | controller.clear() -- If you don't do this, the texts will draw over each other
288 | controller.drawRightboundString(os.date(), -10, 10, 0xffffff)
289 | end
290 | ```
291 |
292 | ### Example 2
293 |
294 | Olfi01 made another script to draw .nfp files, which you can draw with the paint program, in cc in your HUD.
295 |
296 | First, we have a script with more adaptability. You can define x, y, width and height.
297 |
298 | Script 1: [Github](https://gist.github.com/Seniorendi/ce4971245b20fb031ca9b65ec4fcb4d0)
299 |
300 | And we have another script which depends on the script above, but is simpler to use.
301 |
302 | Script 2: [Github](https://gist.github.com/Seniorendi/954e9888fac01efe8f23e82d0ae06e92)
303 |
304 | ---
305 |
306 | ## Changelog/Trivia
307 |
308 | **0.5.2b**
309 | Added `fillCircle`, `drawCircle` and `drawItemIcon`.
310 |
311 | **0.5b**
312 | Added the AR Controller and Goggles, made by Olfi01#6413
313 |
--------------------------------------------------------------------------------
/docs/peripherals/block_reader.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Block Reader
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | This block is able to read data about any blocks or tile entities in front of it.
11 |
12 |
13 |
14 | ---
15 |
16 |
17 |
18 | | Peripheral Name | Interfaces with | Has events | Introduced in |
19 | | --------------- | --------------- | ---------- | ------------- |
20 | | blockReader | Blocks | No | 0.7r |
21 |
22 |
23 |
24 | ---
25 |
26 | ## Functions
27 |
28 | ### getBlockName
29 | ```
30 | getBlockName() -> string
31 | ```
32 |
33 | Returns the registry name of the block (ex. `minecraft:dirt`)
34 |
35 | ```lua linenums="1"
36 | local reader = peripheral.find("blockReader")
37 |
38 | print("There is a " .. read.getBlockName() .. " in front.")
39 | ```
40 |
41 | ---
42 |
43 | ### getBlockData
44 | ```
45 | getBlockData() -> table | nil
46 | ```
47 |
48 | Returns the block data of the block if block is a tile entity.
49 |
50 | ```lua linenums="1"
51 | local reader = peripheral.find("blockReader")
52 |
53 | --Prints the contents of the data
54 | for k, v in ipairs(reader.getBlockData()) do
55 | print(k, v)
56 | end
57 | ```
58 |
59 | ---
60 |
61 | !!! success "Added in version 1.19.2-0.7.33r | 1.20.1-0.7.37r"
62 |
63 | ### getBlockStates
64 | ```
65 | getBlockStates() -> table | nil
66 | ```
67 |
68 | Returns the properties of a block and its state
69 |
70 | ---
71 |
72 | !!! success "Added in version 1.19.2-0.7.33r | 1.20.1-0.7.37r"
73 |
74 | ### isTileEntity
75 | ```
76 | isTileEntity() -> boolean | nil
77 | ```
78 |
79 | Returns true whether the block is a tile entity or not
80 |
81 | ## Changelog/Trivia
82 |
83 | **1.19.2-0.7.33r/1.20.1-0.7.37r**
84 | Added `getBlockStates` and `isTileEntity`
85 |
86 | **0.7r**
87 | Added the Block Reader peripheral.
88 |
--------------------------------------------------------------------------------
/docs/peripherals/chat_box.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Chat Box
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Chat Box is able to read and write messages to the in-game chat. You can send messages to just one player or to everyone.
11 |
12 | !!! hint
13 | If you prefix your message with a $ the message will not be sent to the global chat but it will still fire the chat event.
14 | Example:
15 | `$this message is hidden!`
16 |
17 | ---
18 |
19 |
20 |
21 | | Peripheral Name | Interfaces with | Has events | Introduced in |
22 | | --------------- | --------------- | ---------- | ------------- |
23 | | chatBox | Game Chat | Yes | 0.1b |
24 |
25 |
26 |
27 | ---
28 |
29 | ## Events
30 |
31 | ### chat
32 | Fires when a player sends a message into the chat.
33 | **Values:**
34 | 1. `username: string` The username of the player who sent the message
35 | 2. `message: string` The message sent by the player
36 | 3. `uuid: string` The player's uuid
37 | 4. `isHidden: boolean` Whether the message is hidden or not
38 |
39 | ```lua linenums="1"
40 | local event, username, message, uuid, isHidden = os.pullEvent("chat")
41 | print("The 'chat' event was fired with the username " .. username .. " and the message " .. message)
42 | ```
43 |
44 | !!! info
45 | The `chat` event will fire when a chatbox has been connected to a computer. You don't have to `.wrap()` or `.find()` the peripheral (unless you intend to send messages).
46 |
47 | ---
48 |
49 | ## Functions
50 |
51 | ### sendMessage
52 | ```
53 | sendMessage(message: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
54 | ```
55 | Broadcasts a message to the global chat or if `range` is specified it is sent to all players in the range.
56 | The `prefix` will change the text that appears inside the brackets at the start of a message. Defaults to "AP".
57 | To change the `brackets` used around the prefix you must specify a string like so:
58 | `"[]"`, `"()"`, `"<>"`, ...
59 | `bracketColor` specifies the color to use for the brackets, this must be in the [MOTD code format](https://www.digminecraft.com/lists/color_list_pc.php).
60 |
61 | Returns true if the message is successfully sent, or nil and an error message if it fails.
62 |
63 | ```lua linenums="1"
64 | local chatBox = peripheral.find("chatBox")
65 |
66 | chatBox.sendMessage("Hello world!") -- Sends "[AP] Hello world!" in chat
67 | os.sleep(1) -- We must account for the cooldown between messages, this is to prevent spam
68 | chatBox.sendMessage("I am dave", "Dave") -- Sends "[Dave] I am dave"
69 | os.sleep(1)
70 |
71 | -- Sends message "Welcome!" with cyan <> brackets around ""
72 | -- to players within 30 blocks of the chat box
73 | chatBox.sendMessage("Welcome!", "Box", "<>", "&b", 30)
74 | ```
75 |
76 | !!! tip
77 | Just like the `bracketColor` argument you can add colors to the `message` and `prefix` arguments using the same [MOTD color code format](https://www.digminecraft.com/lists/color_list_pc.php).
78 | Since CC doesn't accept non-ascii charactor `§`, you should replace it with `&`.
79 | If you want to send colored message but not only colored brackets, please use [`sendFormattedMessage()`](#sendformattedmessage) instead.
80 |
81 | ---
82 |
83 | ### sendMessageToPlayer
84 | ```
85 | sendMessageToPlayer(message: string, username: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
86 | ```
87 | Similar to [`sendMessage()`](#sendmessage) this sends a message to one specific player. Specify the player to send the message to with the `username` parameter.
88 |
89 | ```lua linenums="1"
90 | local chatBox = peripheral.find("chatBox")
91 |
92 | chatBox.sendMessageToPlayer("Hello there.", "Player123") -- Sends "[AP] Hello there." to Player123 in chat
93 | ```
94 |
95 | ### sendToastToPlayer
96 | ```
97 | sendToastToPlayer(message: string, title: string, username: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
98 | ```
99 | Sends a toast to the specified player. The design of the toast is the classic notification design. It's planned to add a custom rendered design in the future.
100 |
101 | 
102 |
103 |
104 | ```lua linenums="1"
105 | local chatBox = peripheral.find("chatBox")
106 |
107 | chatBox.sendToastToPlayer("I will chat box you", "Hello", "Dev", "&4&lBoxi", "()", "&c&l")
108 | ```
109 |
110 | ---
111 |
112 | ### sendFormattedMessage
113 | ```
114 | sendFormattedMessage(json: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
115 | ```
116 | This function is fundamentally the same as [`sendMessage()`](#sendmessage) except it takes a json text component as the first parameter.
117 | Find out more information on how the text component format works on the [minecraft wiki](https://minecraft.wiki/w/Text_component_format).
118 | You can generate the json at [minecraft.tools](https://minecraft.tools/en/json_text.php?json=Welcome%20to%20Minecraft%20Tools).
119 |
120 | ```lua linenums="1"
121 | local chatBox = peripheral.find("chatBox")
122 |
123 | local message = {
124 | {text = "Click "},
125 | {
126 | text = "here",
127 | underlined = true,
128 | color = "aqua",
129 | clickEvent = {
130 | action = "open_url",
131 | value = "https://advancedperipherals.madefor.cc/"
132 | }
133 | },
134 | {text = " for the AP "},
135 | {text = "documentation", color = "red"},
136 | {text = "!"}
137 | }
138 |
139 | local json = textutils.serialiseJSON(message)
140 |
141 | chatBox.sendFormattedMessage(json)
142 | ```
143 |
144 | ---
145 |
146 | ### sendFormattedMessageToPlayer
147 | ```
148 | sendFormattedMessageToPlayer(json: string, username: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
149 | ```
150 | Similar to [`sendFormattedMessage()`](#sendformattedmessage) this sends a formatted message to one specific player. Specify the player to send the message to with the `username` parameter.
151 |
152 | ---
153 |
154 | ### sendFormattedToastToPlayer
155 | ```
156 | sendFormattedToastToPlayer(messageJson: string, titleJson: string, username: string[, prefix: string, brackets: string, bracketColor: string, range: number]) -> true | nil, string
157 | ```
158 | This function is fundamentally the same as [`sendToast()`](#sendtoasttoplayer) except it takes a json text component as the first and second parameter.
159 | Find out more information on how the text component format works on the [minecraft wiki](https://minecraft.wiki/w/Text_component_format).
160 | You can generate the json at [minecraft.tools](https://minecraft.tools/en/json_text.php?json=Welcome%20to%20Minecraft%20Tools).
161 |
162 | 
163 |
164 | ```lua linenums="1"
165 | local chatBox = peripheral.find("chatBox")
166 |
167 |
168 | local title = {
169 | { text = "Hello", color = "dark_purple"}
170 | }
171 |
172 | local message = {
173 | { text = "I will chat "},
174 | { text = "box ", color = "red"},
175 | { text = "you"}
176 | }
177 |
178 | local titleJson = textutils.serializeJSON(title)
179 | local messageJson = textutils.serialiseJSON(message)
180 |
181 | successful, error = chatBox.sendFormattedToastToPlayer(messageJson, titleJson, "Dev", "&4&lBoxi", "()", "&c&l")
182 | ```
183 |
184 | ---
185 |
186 | ## Changelog/Trivia
187 |
188 | **1.19.2-0.7.33r/1.20.1-0.7.37r**
189 | Added `sendToastToPlayer` and `sendFormattedToastToPlayer`
190 |
191 | **0.7r**
192 | Added the `uuid` and `isHidden` parameter to the **chat** event. Also added the `sendFormattedMessage` function.
193 |
194 | **4.0b**
195 | Fixed the chat box so that is should now work in LAN worlds
196 |
197 | **0.1b**
198 | Added the chat box. This was the first feature of the mod.
199 |
--------------------------------------------------------------------------------
/docs/peripherals/energy_detector.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Energy Detector
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Energy Detector can detect energy flow and acts as a resistor. You can define the max flow rate to use it as a resistor.
11 |
12 | !!! bug
13 | The Energy Detector does not work on versions below 0.4.5b.
14 | It is recommended that you always use the latest version.
15 |
16 |
17 |
18 | ---
19 |
20 |
21 |
22 | | Peripheral Name | Interfaces with | Has events | Introduced in |
23 | | --------------- | --------------- | ---------- | ------------- |
24 | | energyDetector | Forge Energy | No | 0.4.1b |
25 |
26 |
27 |
28 | ---
29 |
30 | ## Functions
31 |
32 | ### getTransferRate
33 |
34 | ```
35 | getTransferRate() -> int
36 | ```
37 |
38 | Returns the current energy that is going through the block.
39 |
40 | ```lua linenums="1"
41 | local detector = peripheral.find("energyDetector")
42 |
43 | -- prints "Current transfer rate: xxx FE/t"
44 | -- where 'xxx' is the current energy flowing through the block
45 | print("Current transfer rate: " .. detector.getTransferRate() .. " FE/t")
46 | ```
47 |
48 | ---
49 |
50 | ### getTransferRateLimit
51 |
52 | ```
53 | getTransferRateLimit() -> int
54 | ```
55 |
56 | Returns the max rate limit of energy through the block which has been set using [`setTransferRateLimit`](#settransferratelimit).
57 |
58 | ---
59 |
60 | ### setTransferRateLimit
61 |
62 | ```
63 | setTransferRateLimit(limit: int) -> void
64 | ```
65 |
66 | Set the max energy rate that will go through the block.
67 |
68 | ```lua linenums="1"
69 | local detector = peripheral.find("energyDetector")
70 |
71 | detector.setTransferRateLimit(512) -- Only 512 FE/t can go through the block
72 | ```
73 |
74 | ---
75 |
76 | ## Changelog/Trivia
77 |
78 | The Energy Detector had some weird problems in versions before 0.4.6b
79 | The block was able to store infinite amounts of energy or it creates an limitless amount of energy.
80 |
81 | **0.4.6b**
82 | The energy detector is now bug free. _hopefully_
83 |
84 | **0.4.5b**
85 | Completely changed the system of the energy detector, but the energy detector was able to drain energy without any reason.
86 |
87 | **0.4.3b**
88 | Created a crafting recipe for the detector.
89 |
90 | **0.4.2b**
91 | The energy detector is now able to send energy automatically.
92 |
93 | **0.4.1b**
94 | Added the lovely bugged energy detector.
95 |
--------------------------------------------------------------------------------
/docs/peripherals/environment_detector.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Environment Detector
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Environment Detector provides current information from the environment like the current time, the current moon phase,
11 | the light level of the block and many more.
12 |
13 |
14 |
15 | ---
16 |
17 |
18 |
19 | | Peripheral Name | Interfaces with | Has events | Introduced in |
20 | | ------------------- | --------------- | ---------- | ------------- |
21 | | environmentDetector | World | No | 0.1b |
22 |
23 |
24 |
25 | ---
26 |
27 | ## Functions
28 |
29 | ### getBiome
30 |
31 | ```
32 | getBiome() -> string
33 | ```
34 |
35 | Returns the current biome the block is in.
36 |
37 | ```lua linenums="1"
38 | local detector = peripheral.find("environmentDetector")
39 |
40 | -- e.g. prints "Biome: minecraft:plains"
41 | print("Biome: " .. detector.getBiome())
42 | ```
43 |
44 | ---
45 |
46 | ### getBlockLightLevel
47 |
48 | ```
49 | getBlockLightLevel() -> number
50 | ```
51 |
52 | Returns the block light level (0 to 15) at the detector block, this can be influenced by light sources
53 |
54 | ---
55 |
56 | ### getDayLightLevel
57 |
58 | ```
59 | getDayLightLevel() -> number
60 | ```
61 |
62 | Returns the day light level of the current world from 0 to 15. This is uneffected by blocks covering the peripheral.
63 |
64 | ---
65 |
66 | ### getSkyLightLevel
67 |
68 | ```
69 | getSkyLightLevel() -> number
70 | ```
71 |
72 | Returns the current sky light level from 0 to 15 (like a daylight sensor).
73 |
74 | ---
75 |
76 | ### getDimension
77 |
78 | ```
79 | getDimension() -> string
80 | ```
81 |
82 | Returns the name of the current dimension (ex. `overworld`, `the_nether` or `the_end`).
83 |
84 | ```lua linenums="1"
85 | local detector = peripheral.find("environmentDetector")
86 |
87 | -- e.g. prints "Dimension: the_nether"
88 | print("Dimension: " .. detector.getDimension())
89 | ```
90 |
91 | ---
92 |
93 | ### getDimensionPaN
94 |
95 | ```
96 | getDimensionPaN() -> string
97 | ```
98 |
99 | Similar to [`getDimensionName`](#getdimensionname) it returns the name of the dimension prefixed with the provider name (ex. `minecraft:overworld`).
100 |
101 | ---
102 |
103 | ### getDimensionProvider
104 |
105 | ```
106 | getDimensionProvider() -> string
107 | ```
108 |
109 | Returns the provider of the dimension (ex. `minecraft`).
110 |
111 | ---
112 |
113 | ### getMoonId
114 |
115 | ```
116 | getMoonId() -> number
117 | ```
118 |
119 | Returns the current moon phase's id.
120 |
121 | !!! info
122 | There are 8 different moon phases, see below a list of their names and ids
123 |
124 | `0 = Full moon`, `1 = Waning gibbous`, `2 = Third quarter`, `3 = Waning crescent`, `4 = New moon`, `5 = Waxing crescent`, `6 = First quarter`, `7 = Waxing gibbous`
125 |
126 | ### getMoonName
127 |
128 | ```
129 | getMoonName() -> string
130 | ```
131 |
132 | Returns the current moon phase's name.
133 |
134 | ---
135 |
136 | ### getTime
137 |
138 | ```
139 | getTime() -> number
140 | ```
141 |
142 | !!! warning "WIP"
143 |
144 | Returns the daytime of the current world.
145 |
146 | ---
147 |
148 | ### getRadiation
149 |
150 | ```
151 | getRadiation() -> table
152 | ```
153 |
154 | !!! success "Added in version 0.6.1b"
155 |
156 | !!! warning "Requirement"
157 | Requires the [Mekanism](https://www.curseforge.com/minecraft/mc-mods/mekanism) mod to be installed
158 |
159 | Returns the current radiation level from the Mekanism mod with the radiation unit.
160 |
161 | #### Properties
162 |
163 | | table | Description |
164 | | ------------------- | --------------------------------------- |
165 | | radiation: `string` | The current radiation level as a string |
166 | | unit: `string` | The radiation unit |
167 |
168 | ---
169 |
170 | ### getRadiationRaw
171 |
172 | ```
173 | getRadiationRaw() -> number
174 | ```
175 |
176 | !!! success "Added in version 0.6.5b"
177 |
178 | !!! warning "Requirement"
179 | Requires the [Mekanism](https://www.curseforge.com/minecraft/mc-mods/mekanism) mod to be installed
180 |
181 | Returns the current raw radiation level in Sv/h.
182 |
183 | ---
184 |
185 | ### isDimension
186 |
187 | ```
188 | isDimension(dimension: string) -> boolean
189 | ```
190 |
191 | Returns true if the current dimension matches the `dimension` parameter.
192 |
193 | ---
194 |
195 | ### isMoon
196 |
197 | ```
198 | isMoon(moonPhaseId: number) -> boolean
199 | ```
200 |
201 | Returns true if the current moon phase matches the `moonPhaseId` parameter.
202 |
203 | ---
204 |
205 | ### isRaining
206 |
207 | ```
208 | isRaining() -> boolean
209 | ```
210 |
211 | Returns true if it is raining.
212 |
213 | ---
214 |
215 | ### isSunny
216 |
217 | ```
218 | isSunny() -> boolean
219 | ```
220 |
221 | Returns true if it is sunny.
222 |
223 | ---
224 |
225 | ### isThunder
226 |
227 | ```
228 | isThunder() -> boolean
229 | ```
230 |
231 | Returns true if it is thundering.
232 |
233 | ---
234 |
235 | ### isSlimeChunk
236 |
237 | ```
238 | isSlimeChunk() -> boolean
239 | ```
240 |
241 | Returns true if the current chunk is a slime chunk.
242 |
243 | ---
244 |
245 | ### listDimensions
246 |
247 | ```
248 | listDimensions() -> table
249 | ```
250 |
251 | Returns a table with all of the registered dimensions for the current world, this includes modded dimensions.
252 |
253 | !!! example
254 | As an example `listDimensions` might return a table like so:
255 | ```
256 | {"minecraft:overworld", "minecraft:the_nether", "minecraft:the_end", "twilightforest:twilight_forest"}
257 | ```
258 |
259 | ---
260 |
261 | ### scanEntities
262 |
263 | ```
264 | scanEntities(range: number) -> table
265 | ```
266 |
267 | Returns a table with all entities in the given range
268 | Coordinates are relativ and not absolute
269 |
270 | !!! example
271 | Example output for an entity:
272 | ```lua
273 | {
274 | {
275 | canFreeze = true,
276 | uuid = "380df991-f603-344c-a090-369bad2a924a",
277 | tags = {},
278 | id = 158,
279 | y = 0.99835407917146,
280 | x = 2.3657836835311,
281 | name = "Dev",
282 | isGlowing = false,
283 | z = 1.2416321248782,
284 | isInWall = false,
285 | maxHealth = 20,
286 | health = 20,
287 | },
288 | }
289 | ```
290 |
291 |
292 | ## Changelog/Trivia
293 |
294 | **0.6.5b**
295 | Added `getRadiationRaw`
296 |
297 | **0.6.1b**
298 | Added `getRadiation`
299 |
300 | **0.3.3b**
301 | Added many more functions to the environment detector. The environment detector was a useless block before this update.
302 |
303 | **0.1b**
304 | Added the block. It was the second feature of the mod.
305 |
--------------------------------------------------------------------------------
/docs/peripherals/geo_scanner.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Geo Scanner
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Geo Scanner provides information about blocks around it and the chunk of that it is in.
11 |
12 | The Geo scanner has a delay between scans, so you must wait until you can scan again.
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | --------------- | --------------- | ---------- | ------------- |
22 | | geoScanner | Blocks | No | 0.7r |
23 |
24 |
25 |
26 | ---
27 |
28 | ## Functions
29 |
30 | ### getFuelLevel
31 | ```
32 | getFuelLevel() -> number
33 | ```
34 |
35 | Returns the amount of stored fuel.
36 |
37 | ---
38 |
39 | ### getMaxFuelLevel
40 | ```
41 | getMaxFuelLevel() -> number
42 | ```
43 |
44 | Returns the maximum amount of possible stored fuel.
45 |
46 | ---
47 |
48 | ### cost
49 | ```
50 | cost(radius: number) -> number
51 | ```
52 |
53 | Returns the cost in FE for a scan with the given `radius`.
54 |
55 | ---
56 |
57 | ### scan
58 | ```
59 | scan(radius: number) -> table | nil, string
60 | ```
61 |
62 | Returns a list of data about all blocks in the radius. Or if the scan fails it returns nil and an error message.
63 |
64 | #### Block Properties
65 |
66 | | block | Description |
67 | | ---------------------- | --------------------------------------- |
68 | | name: `string` | The registry name of the block |
69 | | tags: `table` | A list of block tags |
70 | | x: `number` | The block's x coordinate |
71 | | y: `number` | The block's y coordinate |
72 | | z: `number` | The block's z coordinate |
73 |
74 | ---
75 |
76 | ### getScanCooldown
77 | ```
78 | getScanCooldown() -> number
79 | ```
80 |
81 | Returns the current time remaining until then next `scan()` can be ran.
82 |
83 | ---
84 |
85 | ### chunkAnalyze
86 | ```
87 | chunkAnalyze() -> table | nil, reason
88 | ```
89 |
90 | Returns a table of data about how many of each ore type is in the block's chunk. Or if the analyze fails it returns nil and an error message.
91 |
92 | ---
93 |
94 | ## Changelog/Trivia
95 |
96 | **0.7r**
97 | Added Geo Scanner peripheral.
98 |
--------------------------------------------------------------------------------
/docs/peripherals/inventory_manager.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Inventory Manager
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Inventory Manager can communicate with the player's inventory. You need to assign yourself to a [Memory Card](../items/memory_card.md) and put the card into the manager to use it.
11 |
12 | !!! note
13 | Only one Memory Card can be used per Inventory Manager.
14 |
15 |
16 |
17 | ---
18 |
19 |
20 |
21 | | Peripheral Name | Interfaces with | Has events | Introduced in |
22 | | ---------------- | ---------------- | ---------- | ------------- |
23 | | inventoryManager | Player Inventory | No | 0.5b |
24 |
25 |
26 |
27 | ---
28 |
29 | !!! failure
30 |
You need to place the inventory you want to use next to the inventory manager and **NOT** next to the computer!
31 |
32 | ## Functions
33 |
34 | ### addItemToPlayer
35 | ```
36 | addItemToPlayer(direction: string, item: table) -> number
37 | ```
38 |
39 | Adds an item to the player's inventory and returns the amount of the item added.
40 | The `direction` is the direction of the container relative to the peripheral.
41 | The `slot` is the slot to take items from in the container.
42 | The Inventory Manager will add a random item to the player's inventory if the `item` or `slot` argument are not provided.
43 |
44 | !!! tip "Since version 0.7r"
45 | You can now use both relative (`right`, `left`, `front`, `back`, `top`, `bottom`) and cardinal (`north`, `south`, `east`, `west`, `up`, `down`) directions for the `direction` argument.
46 |
47 | ```lua linenums="1"
48 | local manager = peripheral.find("inventoryManager")
49 |
50 | -- Add 32 cobblestone to the players offhand slot from the block above
51 | manager.addItemToPlayer("up", {name="minecraft:cobblestone", toSlot=36, count=32})
52 | ```
53 |
54 | ---
55 |
56 | ### removeItemFromPlayer
57 | ```
58 | removeItemFromPlayer(direction: string item: table) -> number
59 | ```
60 |
61 | Removes an item from the player's inventory and returns the amount of the item removed.
62 | The `direction` is the direction of the container relative to the peripheral to put the item into.
63 | The `slot` is the slot to take items from in the player's inventory.
64 | The Inventory Manager will remove a random item from the player's inventory if the `item` or `slot` argument are not provided.
65 | The `slot` and `count` are overwritten if `fromSlot` or `count` is specified in the `item` filter
66 | if the `item` argument is empty, the manager will move any item.
67 |
68 | ```lua linenums="1"
69 | local manager = peripheral.find("inventoryManager")
70 |
71 | -- Remove up to 5 of the item in slot 1 of the player's inventory
72 | -- and place it in the block above
73 | manager.removeItemFromPlayer("up", {name="minecraft:cobblestone", toSlot=3, fromSlot=1, count=5})
74 | ```
75 |
76 | ---
77 |
78 | ### getArmor
79 | ```
80 | getArmor() -> table
81 | ```
82 |
83 | Returns a list of the player's current armor slots
84 |
85 | #### Item Properties
86 |
87 | | item | Description |
88 | | ---------------------- | --------------------------------------- |
89 | | name: `string` | The registry name of the item |
90 | | count: `number` | The amount of the item |
91 | | maxStackSize: `number` | Maximum stack size for the item type |
92 | | displayName: `string` | The item's display name |
93 | | slot: `number` | The slot that the item stack is in |
94 | | tags: `table` | A list of item tags |
95 | | nbt: `table` | The item's nbt data |
96 |
97 | ```lua linenums="1"
98 | local manager = peripheral.find("inventoryManager")
99 |
100 | local armor = manager.getArmor()
101 | print("First armor piece is: " .. armor[1].displayName)
102 | ```
103 |
104 | ---
105 |
106 | ### getItems
107 | ```
108 | getItems() -> table
109 | ```
110 |
111 | Returns the contents of the player's inventory as a list of items
112 |
113 | #### Item Properties
114 |
115 | | item | Description |
116 | | ---------------------- | --------------------------------------- |
117 | | name: `string` | The registry name of the item |
118 | | count: `number` | The amount of the item |
119 | | maxStackSize: `number` | Maximum stack size for the item type |
120 | | slot: `number` | The slot that the item stack is in |
121 | | displayName: `string` | The item's display name |
122 | | tags: `table` | A list of item tags |
123 | | nbt: `table` | The item's nbt data |
124 |
125 | ---
126 |
127 | ### getOwner
128 | ```
129 | getOwner() -> string | nil
130 | ```
131 |
132 | Returns the username of the owner of the memory card in the manager or nil if there is no memory card or owner.
133 |
134 | ---
135 |
136 | ### isPlayerEquipped
137 | ```
138 | isPlayerEquipped() -> boolean
139 | ```
140 |
141 | Returns true if the player is wearing atleast one piece of armor.
142 |
143 | ---
144 |
145 | ### isWearing
146 | ```
147 | isWearing(slot: number) -> boolean
148 | ```
149 |
150 | Returns true if the player is wearing a armor piece on the given slot.
151 | Slots: `103`(Helmet) - `100`(Boots).
152 |
153 | ---
154 |
155 | ### getItemInHand
156 | ```
157 | getItemInHand() -> table
158 | ```
159 |
160 | !!! success "Added in version 0.7.4r"
161 |
162 | Returns the item in the player's main hand.
163 |
164 | #### Item Properties
165 |
166 | | item | Description |
167 | | ---------------------- | --------------------------------------- |
168 | | name: `string` | The registry name of the item |
169 | | count: `number` | The amount of the item |
170 | | maxStackSize: `number` | Maximum stack size for the item type |
171 | | displayName: `string` | The item's display name |
172 | | tags: `table` | A list of item tags |
173 | | nbt: `table` | The item's nbt data |
174 |
175 | ---
176 |
177 | ### getItemInOffHand
178 | ```
179 | getItemInOffHand() -> table
180 | ```
181 |
182 | !!! success "Added in version 0.7.4r"
183 |
184 | Returns the item in the player's off hand.
185 |
186 | #### Item Properties
187 |
188 | | item | Description |
189 | | ---------------------- | --------------------------------------- |
190 | | name: `string` | The registry name of the item |
191 | | count: `number` | The amount of the item |
192 | | maxStackSize: `number` | Maximum stack size for the item type |
193 | | displayName: `string` | The item's display name |
194 | | tags: `table` | A list of item tags |
195 | | nbt: `table` | The item's nbt data |
196 |
197 | ---
198 |
199 | ### getFreeSlot
200 | ```
201 | getFreeSlot() -> number
202 | ```
203 |
204 | !!! success "Added in version 0.7.4r"
205 |
206 | Returns the next free slot in the player's inventory. Or -1 if their inventory is full.
207 |
208 | ---
209 |
210 | ### isSpaceAvailable
211 | ```
212 | isSpaceAvailable() -> boolean
213 | ```
214 |
215 | !!! success "Added in version 0.7.4r"
216 |
217 | Returns true if space is available in the player's inventory.
218 |
219 | ---
220 |
221 | ### getEmptySpace
222 | ```
223 | getEmptySpace() -> number
224 | ```
225 |
226 | !!! success "Added in version 0.7.4r"
227 |
228 | Returns the number of empty slots in the player's inventory.
229 |
230 | ---
231 |
232 | ## Changelog/Trivia
233 |
234 | **0.7.4r**
235 | Added `getItemInHand`, `getItemInOffHand`, `getFreeSlot`, `isSpaceAvailable` and `getEmptySpace` to the inventory manager.
236 | Added support for armor items, you can use the slots `100 - 103` to access armor items.
237 |
238 | **0.7r**
239 | Added the `slot` parameter.
240 | Also changed the direction parameter to computercraft directions.
241 |
242 | **0.5.2b**
243 | Fixed the bug where the inventory manager does not drop its contents.
244 |
245 | **0.5b**
246 | Added the Inventory Manager and Memory Card
247 |
--------------------------------------------------------------------------------
/docs/peripherals/nbt_storage.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # NBT Storage
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | NBT Storage is a custom block that allows reading and writing of NBT data to the block for later use.
11 |
12 |
13 |
14 | ---
15 |
16 |
17 |
18 | | Peripheral Name | Interfaces with | Has events | Introduced in |
19 | | --------------- | --------------- | ---------- | ------------- |
20 | | nbtStorage | NBT | No | 0.7r |
21 |
22 |
23 |
24 | ---
25 |
26 | ## Functions
27 |
28 | ### read
29 | ```
30 | read() -> table
31 | ```
32 |
33 | Returns the NBT data stored in the block.
34 |
35 | ---
36 |
37 | ### writeJson
38 | ```
39 | writeJson(json: string) -> boolean | nil, string
40 | ```
41 |
42 | Writes the json as NBT data into the block and returns true if the json is valid and the data is successfully written. Otherwise it returns nil and an error message.
43 |
44 | ---
45 |
46 | ### writeTable
47 | ```
48 | writeTable(nbt: table) -> boolean | nil, string
49 | ```
50 |
51 | Writes NBT data into the block and returns true if the data is successfully written. Otherwise it returns nil and an error message.
52 |
53 | ```lua linenums="1"
54 | local storage = peripheral.find("nbtStorage")
55 |
56 | storage.writeTable({
57 | specialString = "A super special string"
58 | })
59 |
60 | local nbt = storage.read()
61 | -- prints "A super special string"
62 | print(nbt.specialString)
63 | ```
64 |
65 | ---
66 |
67 | ## Changelog/Trivia
68 |
69 | **0.7r**
70 | Added NBT Storage block.
71 |
--------------------------------------------------------------------------------
/docs/peripherals/player_detector.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Player Detector
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Player Detector is a useful peripheral that allows you to detect players within a certain range, position and area.
11 | You can get a list of all online players and detect when a player clicks on the block.
12 |
13 |
14 |
15 | ---
16 |
17 |
18 |
19 | | Peripheral Name | Interfaces with | Has events | Introduced in |
20 | |-----------------|-----------------|------------|---------------|
21 | | playerDetector | Players | Yes | 0.1b |
22 |
23 |
24 |
25 | ---
26 |
27 | ## Events
28 |
29 | ### playerClick
30 |
31 | Fires when a player clicks on the block.
32 | **Values:**
33 |
34 | 1. `username: string` The username of the player who clicked the block
35 | 2. `devicename: string` Th name of the peripheral like `playerDetector_4`
36 |
37 | ```lua linenums="1"
38 | local event, username, device = os.pullEvent("playerClick")
39 | print("The detector ".. device .." was clicked by " .. username)
40 | ```
41 |
42 | ### playerJoin
43 |
44 | Fires when a player joins the world/a server.
45 | **Values:**
46 |
47 | 1. `username: string` The username of the player who clicked the block
48 | 2. `dimension: string` The resource id of the dimension the player is in
49 |
50 | ```lua linenums="1"
51 | local event, username, dimension = os.pullEvent("playerJoin")
52 | print("Player " .. username .. " joined the server in the dimension " .. dimension)
53 | ```
54 |
55 | ### playerLeave
56 |
57 | Fires when a player leaves the world/a server.
58 | **Values:**
59 |
60 | 1. `username: string` The username of the player who clicked the block
61 | 2. `dimension: string` The resource id of the dimension the player was in
62 |
63 | ```lua linenums="1"
64 | local event, username, dimension = os.pullEvent("playerLeave")
65 | print("Player " .. username .. " left the server in the dimension " .. dimension)
66 | ```
67 |
68 | ### playerChangedDimension
69 |
70 | Fires when a player changes dimensions.
71 | **Values:**
72 |
73 | 1. `username: string` The username of the player who clicked the block
74 | 2. `fromDim: string` The resource id of the dimension the player was in
75 | 2. `toDim: string` The resource id of the dimension the player is in
76 |
77 | ```lua linenums="1"
78 | local event, username, fromDim, toDim = os.pullEvent("playerChangedDimension")
79 | print("Player " .. username .. " left the dimension " .. fromDim .. " and is now in " .. toDim)
80 | ```
81 |
82 | !!! info
83 | The events will fire when a player detector has been connected to a computer. You don't have to `.wrap()` or `.find()` the peripheral (unless you intend to send messages).
84 |
85 |
86 | ---
87 |
88 | ## Functions
89 |
90 | !!! info
91 | The player detector supports multidimensional spying(Since 1.19.2-0.7.30r & 1.20.1-0.7.32a). This only works if the config option `playerDetMultiDimensional` is set to true and the option `playerDetMaxRange` is set to -1(infinite)
92 |
93 | ### getPlayerPos / getPlayer
94 |
95 | ```
96 | getPlayerPos(username: string) -> table | nil
97 | ```
98 |
99 | Returns information about the player with the `username` passed.
100 |
101 | #### Properties
102 |
103 | !!! success "Added more properties in version 0.7.4r"
104 |
105 | | table | Description |
106 | |----------------------------|--------------------------------------------|
107 | | dimension: `string` | The dimension the player is in |
108 | | eyeHeight: `number` | The height of the player's eyes |
109 | | pitch: `number` | The pitch of the player's head |
110 | | health: `number` | The health of the player |
111 | | maxHealth: `number` | The max health of the player |
112 | | airSupply: `number` | The air supply of the player |
113 | | respawnPosition: `number` | The respawn position of the player |
114 | | respawnDimension: `number` | The respawn dimension of the player |
115 | | respawnAngle: `number` | The respawn angle of the player in degrees |
116 | | yaw: `number` | The yaw of the player's head |
117 | | x: `number` | The x coordinate |
118 | | y: `number` | The y coordinate |
119 | | z: `number` | The z coordinate |
120 |
121 | ```lua linenums="1"
122 | local detector = peripheral.find("playerDetector")
123 |
124 | -- Get the position of Player123 and print their coordinates
125 | local pos = detector.getPlayerPos("Player123")
126 | print("Position: " .. pos.x .. "," .. pos.y .. "," .. pos.z)
127 | ```
128 |
129 | ---
130 |
131 | ### getOnlinePlayers
132 |
133 | ```
134 | getOnlinePlayers() -> table
135 | ```
136 |
137 | !!! success "Added in version 0.7r"
138 |
139 | Returns a list of all online players.
140 |
141 | ---
142 |
143 | ### getPlayersInRange
144 |
145 | ```
146 | getPlayersInRange(range: number) -> table
147 | ```
148 |
149 | Returns a list of players within the given `range` of the peripheral.
150 |
151 | !!! note
152 | The center of the `range` is the Player Detector peripheral and not the Computer.
153 |
154 | ---
155 |
156 | ### getPlayersInCoords
157 |
158 | ```
159 | getPlayersInCoords(posOne: table, posTwo: table) -> table
160 | ```
161 |
162 | !!! success "Added in version 0.7r"
163 |
164 | Returns a list of players within the 2 positions `posOne` and `posTwo`.
165 |
166 | The `posOne` and `posTwo` tables must contain:
167 |
168 | - x: `number`
169 | - y: `number`
170 | - z: `number`
171 |
172 | !!! note
173 | The area the detector going to detect is \[x1, x2), \[y1, y2), \[z1, z2).
174 | Which means call `getPlayersInCoords({x=x, y=y, z=z}, {x=x, y=y, z=z})` will always return nothing
175 |
176 | ---
177 |
178 | ### getPlayersInCubic
179 |
180 | ```
181 | getPlayersInCubic(w: number, h: number, d: number) -> table
182 | ```
183 |
184 | !!! success "Added in version 0.7r"
185 |
186 | Returns a list of players within a cuboid centered at the peripheral.
187 | Where `w`, `h`, `d` correspond to the x, y, z axes and are the width, height and depth of the cuboid.
188 |
189 | ---
190 |
191 | ### isPlayerInRange
192 |
193 | ```
194 | isPlayerInRange(range: number, username: string) -> boolean
195 | ```
196 |
197 | Returns true if the player whose username matches the provided `username` is within the given `range` of the peripheral.
198 |
199 | ---
200 |
201 | ### isPlayerInCoords
202 |
203 | ```
204 | isPlayerInCoords(posOne: table, posTwo: table, username: string) -> boolean
205 | ```
206 |
207 | !!! success "Added in version 0.7r"
208 |
209 | Returns true if the player is within the 2 positions.
210 |
211 | The `posOne` and `posTwo` tables must contain:
212 |
213 | - x: `number`
214 | - y: `number`
215 | - z: `number`
216 |
217 | ---
218 |
219 | ### isPlayerInCubic
220 |
221 | ```
222 | isPlayerInCubic(w: number, h: number, d: number)
223 | ```
224 |
225 | !!! success "Added in version 0.7r"
226 |
227 | Returns true if the player is within the cuboid centered at the peripheral.
228 | Where `w`, `h`, `d` correspond to the x, y, z axes and are the width, height and depth of the cuboid.
229 |
230 | ---
231 |
232 | ### isPlayersInRange
233 |
234 | ```
235 | isPlayersInRange(range: number) -> boolean
236 | ```
237 |
238 | Returns true if there is any player in the given `range`.
239 |
240 | ---
241 |
242 | ### isPlayersInCoords
243 |
244 | ```
245 | isPlayersInCoords(posOne: table, posTwo: table) -> boolean
246 | ```
247 |
248 | !!! success "Added in version 0.7r"
249 |
250 | Returns true if any player is within the 2 positions.
251 |
252 | The `posOne` and `posTwo` tables must contain:
253 |
254 | - x: `number`
255 | - y: `number`
256 | - z: `number`
257 |
258 | ---
259 |
260 | ### isPlayersInCubic
261 |
262 | ```
263 | isPlayersInCubic(w: number, h: number, d: number)
264 | ```
265 |
266 | !!! success "Added in version 0.7r"
267 |
268 | Returns true if any player is within the cuboid centered at the peripheral.
269 | Where `w`, `h`, `d` correspond to the x, y, z axes and are the width, height and depth of the cuboid.
270 |
271 | ---
272 |
273 | ## Changelog/Trivia
274 |
275 | In early versions the player detector was also a buggy block, like the energy detector.
276 | We had bugs where the block used completely wrong coordinates or the range parameters did not work.
277 |
278 | **0.7.4r**
279 | Added more information to the `getPlayerPos` function. (Configurable)
280 |
281 | **0.7r**
282 | Added more functions to the player detector. One to define the range in every 3 axes, one to define 2 positions.
283 | Also added `getOnlinePlayers`.
284 |
285 | **0.4.2b**
286 | Added a max range config value.
287 |
288 | **0.3b**
289 | Added the functions `isPlayersInRange` and `isPlayerinRange`.
290 |
291 | **0.2.6b**
292 | Added the function `getPlayersInRange`.
293 |
294 | **0.1b**
295 | Added the player detector, it was the third feature of the mod.
296 |
--------------------------------------------------------------------------------
/docs/peripherals/redstone_integrator.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Redstone Integrator
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 |
11 | !!! warning
12 | The redstone integrator got removed in 1.21.1-0.7.50b since it got superseded by the [redstone relay](https://tweaked.cc/peripheral/redstone_relay.html) from CC:T
13 |
14 | The Redstone Integrator is able to interact with redstone.
15 | You can use the same code you would use for a computer on a Redstone Integrator.
16 |
17 | You may need this peripheral for cases where you need to output redstone signals on more sides than a regular computer has to offer.
18 |
19 |
20 |
21 | ---
22 |
23 |
24 |
25 | | Peripheral Name | Interfaces with | Has events | Introduced in |
26 | | ------------------ | --------------- | ---------- | ------------- |
27 | | redstoneIntegrator | Redstone | No | 0.5.3b |
28 |
29 |
30 |
31 | ---
32 |
33 |
34 | ## Functions
35 |
36 | ### getInput
37 | ```
38 | getInput(side: string) -> boolean
39 | ```
40 |
41 | Returns true or false depending on if the redstone at the given `side` is on.
42 |
43 | !!! tip "Since version 0.7r"
44 | You can now use both relative (`right`, `left`, `front`, `back`, `top`, `bottom`) and cardinal (`north`, `south`, `east`, `west`, `up`, `down`) directions for the `side` argument.
45 |
46 | ---
47 |
48 | ### getOutput
49 | ```
50 | getOutput(side: string) -> boolean
51 | ```
52 |
53 | Returns true or false depending on if the Redstone Integrator is sending a signal to the given `side`.
54 |
55 | ---
56 |
57 | ### getAnalogInput
58 | ```
59 | getAnalogInput(side: string) -> number
60 | ```
61 |
62 | Returns the redstone level input on the given `side`.
63 |
64 | !!! tip
65 | You can also use `Analogue` instead of `Analog` (ex. `getAnalogueInput`) both work exactly the same.
66 |
67 | ---
68 |
69 | ### getAnalogOutput
70 | ```
71 | getAnalogOutput(side: string) -> number
72 | ```
73 |
74 | Returns the redstone level being output by the Redstone Integrator on the given `side`.
75 |
76 | ---
77 |
78 | ### setOutput
79 | ```
80 | setOutput(side: string, powered: boolean) -> void
81 | ```
82 |
83 | Sets the redstone level output to 0 or 15 on the given `side` depending on `powered`.
84 |
85 | ```lua linenums="1"
86 | local integrator = peripheral.find("redstoneIntegrator")
87 |
88 | print("Left redstone level: ".. integrator.getAnalogInput("left")) -- prints the level of the redstone at the left side.
89 | print("Right redstone: ".. integrator.getOutput("right")) -- prints whether there is a redstone output on the right side.
90 | integrator.setOutput("top", true) -- Sets the redstone level to 15 for the top side.
91 | ```
92 |
93 | ---
94 |
95 | ### setAnalogOutput
96 | ```
97 | setAnalogOutput(side: string, power: number) -> void
98 | ```
99 |
100 | Sets the redstone level output on the given `side` to the given `power` level.
101 |
102 | ---
103 |
104 | ## Changelog/Trivia
105 |
106 | **0.5.3b**
107 | Added the lovely Redstone Integrator.
108 |
--------------------------------------------------------------------------------
/docs/turtles/chatty_turtle.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Chatty Turtle
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Chatty Turtle is the turtle version of the [Chat Box](../peripherals/chat_box.md) peripheral. See its documentation for more information.
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.4b**
19 | Added the Chatty Turtle
20 |
--------------------------------------------------------------------------------
/docs/turtles/chunky_turtle.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Chunky Turtle
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Chunky Turtle actively loads the current turtle's chunk. This turtle can be disabled in the mod's configuration file. This turtle has no functions or events.
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.4b**
19 | Added the Chunky Turtle
20 |
--------------------------------------------------------------------------------
/docs/turtles/environment_turtle.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Environment Turtle
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Environment Turtle is the turtle version of the [Environment Detector](../peripherals/environment_detector.md) peripheral. See its documenation for more information.
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.4b**
19 | Added the Environment Turtle
20 |
--------------------------------------------------------------------------------
/docs/turtles/geo_scanner_turtle.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Geoscanning Turtle
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Geoscanning Turtle is the turtle version of the [Geo Scanner](../peripherals/geo_scanner.md) peripheral. See its documenation for more information.
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.7r**
19 | Added the Geoscanning Turtle
20 |
--------------------------------------------------------------------------------
/docs/turtles/metaphysics/end_automata.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # End Automata
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | End automata is a turtle with an End Mechanic Soul upgrade. This upgrade has all of the abilities of a [Weak Automata](./weak_automata.md) plus its own additional abilites:
11 | • Teleport between saved locations
12 | • Save a location as a warp point
13 |
14 |
15 |
16 | ---
17 |
18 |
19 |
20 | | Peripheral Name | Interfaces with | Has events | Introduced in |
21 | | --------------- | --------------- | ---------- | ------------- |
22 | | endAutomata | World | No | 0.7r |
23 |
24 |
25 |
26 | ---
27 |
28 | ## How to craft
29 |
30 | To create an end soul, you need to feed 10 endermans via the [feedSoul](weak_automata.md#feedsoul) function to a weak automata core.
31 | The core needs to be placed inside the turtle into the current active slot(Usually the first one).
32 |
33 | The turtle needs 10 endermans in total:
34 |
35 | | Mob | Amount |
36 | |----------|--------|
37 | | Enderman | 10 |
38 |
39 | Step by Step:
40 |
41 | - Create a weak automata turtle(A normal turtle with a weak automata core as upgrade)
42 | - Place another weak automata core in the current active slot of the turtle
43 | - run `weakAutomata#feedSoul()` for every enderman while the enderman is in front of the turtle
44 |
45 | Example
46 | ```lua
47 | core = peripheral.find("weak_automata")
48 |
49 | successful, message = core.feedSoul()
50 | print(successful)
51 | print(message)
52 | ```
53 |
54 | ---
55 |
56 | ## Functions
57 |
58 | ### points
59 | ```
60 | points() -> table | nil, string
61 | ```
62 | Returns a list of all saved points and their names
63 |
64 | ---
65 |
66 | ### savePoint
67 | ```
68 | savePoint(name: string) -> true | nil, string
69 | ```
70 | This saves the turtle's current location as a warp point with the given `name` which can be teleported to at a future point in time.
71 | Returns true if the location is successfully saved, or nil and an error message.
72 |
73 | ---
74 |
75 | ### deletePoint
76 | ```
77 | deletePoint(name: string) -> true | nil, string
78 | ```
79 | This deletes a point with the given `name`.
80 | Returns true if the location is successfully deleted, nor nil and an error message.
81 |
82 | ---
83 |
84 | ### distanceToPoint
85 | ```
86 | distanceToPoint(name: string) -> number | nil, string
87 | ```
88 | Returns the distance from the turtle's current location to the location of the point using the [Manhattan distance formula](https://en.wikipedia.org/wiki/Taxicab_geometry). If the operation fails or the point does not exist then nil and an error message will be returned.
89 |
90 | ---
91 |
92 | ### getWarpCooldown
93 | ```
94 | getWarpCooldown() -> number
95 | ```
96 | Returns the current cooldown for warp operations.
97 |
98 | ---
99 |
100 | ### estimateWarpCost
101 | ```
102 | estimateWarpCost(name: string) -> number | nil, string
103 | ```
104 | Returns the fuel point cost to warp from the current location to the point with the given `name`. Or nil and an error message.
105 |
106 | ---
107 |
108 | ### warpToPoint
109 | ```
110 | warpToPoint(name: string) -> true | nil, string
111 | ```
112 | Teleports the turtle from the current location to the location of the point with the given `name`.
113 | Returns true if the turtle is successfully teleported or nil and an error message.
114 |
115 | ---
116 |
117 | ## Changelog/Trivia
118 |
119 | **0.7r**
120 | Added the End Automata
121 |
--------------------------------------------------------------------------------
/docs/turtles/metaphysics/husbandry_automata.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Husbandry Automata
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | Husbandry automata is a turtle with a Husbandry Mechanic Soul upgrade. This upgrade has all of the abilities of a [Weak Automata](./weak_automata.md) plus some additional abilites:
11 | • Use items on animals
12 | • Get information about an animal
13 | • Scan for nearby animals
14 | • Capture and release animals
15 |
16 |
17 |
18 | ---
19 |
20 |
21 |
22 | | Peripheral Name | Interfaces with | Has events | Introduced in |
23 | | ----------------- | --------------- | ---------- | ------------- |
24 | | husbandryAutomata | World | No | 0.7r |
25 |
26 |
27 |
28 | ---
29 |
30 | ## How to craft
31 |
32 | To create a husbandry soul, you need to feed 3 different types of animals via the [feedSoul](weak_automata.md#feedsoul) function to a weak automata core.
33 | The core needs to be placed inside the turtle into the current active slot(Usually the first one).
34 |
35 | The turtle needs 9 animals in total:
36 |
37 | | Animal | Amount |
38 | | ------ | ------ |
39 | | Cow | 3 |
40 | | Sheep | 3 |
41 | | Chicken | 3 |
42 |
43 | Step by Step:
44 |
45 | - Create a weak automata turtle(A normal turtle with a weak automata core as upgrade)
46 | - Place another weak automata core in the current active slot of the turtle
47 | - run `weakAutomata#feedSoul()` for every animal while the animal is in front of the turtle
48 |
49 | Example
50 | ```lua
51 | core = peripheral.find("weak_automata")
52 |
53 | successful, message = core.feedSoul()
54 | print(successful)
55 | print(message)
56 | ```
57 |
58 | ---
59 |
60 | ## Functions
61 |
62 | ### useOnAnimal
63 | ```
64 | useOnAnimal() -> (true | nil), string
65 | ```
66 | Tries to use the currently selected item on the animal in front of the turtle.
67 | Returns true and the interaction result as a string or if it fails it returns nil and an error message.
68 |
69 | ---
70 |
71 | ### inspectAnimal
72 | ```
73 | inspectAnimal() -> table | nil, string
74 | ```
75 | Returns information about the animal that is in front of the turtle or nil and an error message.
76 |
77 | ---
78 |
79 | ### searchAnimals
80 | ```
81 | searchAnimals() -> table | nil, string
82 | ```
83 | Returns a list of the animals around the turtle or nil and an error message.
84 |
85 | ---
86 |
87 | ### captureAnimal
88 | ```
89 | captureAnimal() -> true | nil, string
90 | ```
91 | If an animal is in front of the turtle that animal will be captured and stored in the turtle.
92 | Returns true if an animal is captured or nil and an error message.
93 |
94 | ---
95 |
96 | ### releaseAnimal
97 | ```
98 | releaseAnimal() -> true | nil, string
99 | ```
100 | Returns true if it releases the stored animal or nil and an error message.
101 |
102 | ---
103 |
104 | ### getCapturedAnimal
105 | ```
106 | getCapturedAnimal() -> table | nil, string
107 | ```
108 | Returns a table of information about the stored animal or nil and an error message.
109 |
110 | ---
111 |
112 | ## Changelog/Trivia
113 |
114 | **0.7r**
115 | Added the Husbandry Automata
116 |
--------------------------------------------------------------------------------
/docs/turtles/metaphysics/overpowered_automata.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Overpowered Automata
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | Overpowered automata is a turtle with an Overpowered Mechanic Soul upgrade. This upgrade has all of the abilities of the original automata.
11 |
12 | This automata will not use any item durability, however there is a very small chance that with every automata operation that the Mechanic Soul upgrade will just break- Forever. Once the upgrade has broken it can not be used again.
13 |
14 |
15 |
16 | ---
17 |
18 | | Peripheral Name | Interfaces with | Has events | Introduced in |
19 | | ---------------------------- | --------------- | ---------- | ------------- |
20 | | overpoweredWeakAutomata overpoweredHusbandryAutomata overpoweredEndAutomata | World | No | 0.7r |
21 |
22 | ---
23 |
24 | ## Changelog/Trivia
25 |
26 | **0.7r**
27 | Added the Overpowered Automata
28 |
--------------------------------------------------------------------------------
/docs/turtles/metaphysics/weak_automata.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Weak Automata
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | Weak automata is a turtle with a Weak Mechanic Soul upgrade. It has several different abilities:
11 | • Digging blocks with tools
12 | • Interact with blocks with an item or empty hand
13 | • Collect all or specific nearby items
14 | • Detect nearby items
15 | • Detect blocks and entities in front of the turtle
16 | • Charge the turtle with an energy cell in the turtle's inventory
17 |
18 |
19 |
20 | ---
21 |
22 |
23 |
24 | | Peripheral Name | Interfaces with | Has events | Introduced in |
25 | | --------------- | --------------- | ---------- | ------------- |
26 | | weakAutomata | World | No | 0.7r |
27 |
28 |
29 |
30 | ---
31 |
32 | ## Functions
33 |
34 | ### getFuelLevel
35 | ```
36 | getFuelLevel() -> number
37 | ```
38 | Returns the number of fuel points stored in the turtle.
39 |
40 | ---
41 |
42 | ### getFuelMaxLevel
43 | ```
44 | getFuelMaxLevel() -> number
45 | ```
46 | Returns the maximum amount of fuel points that the turtle can store.
47 |
48 | ---
49 |
50 | ### getFuelConsumptionRate
51 | ```
52 | getFuelConsumptionRate() -> number
53 | ```
54 | Returns the turtle's current fuel consumption rate.
55 |
56 | ---
57 |
58 | ### setFuelConsumptionRate
59 | ```
60 | setFuelConsumptionRate(rate: number) -> true | nil, string
61 | ```
62 | Allows you to control the fuel consumption `rate` of the turtle. See [Cooldowns and Fuel consumption](../../guides/cooldowns_and_fuel_consumption.md) to learn about how fuel consumption affects fuel cost and operation cooldowns.
63 |
64 | Returns true if the consumption rate was successfully set, or nil and an error message.
65 |
66 | ---
67 |
68 | ### getDigCooldown
69 | ```
70 | getDigCooldown() -> number
71 | ```
72 | Returns the current cooldown for dig operations.
73 |
74 | ---
75 |
76 | ### getSuckCooldown
77 | ```
78 | getSuckCooldown() -> number
79 | ```
80 | Returns the current cooldown for item collection operations.
81 |
82 | ---
83 |
84 | ### getUseOnBlockCooldown
85 | ```
86 | getUseOnBlockCooldown() -> number
87 | ```
88 | Returns the current cooldown for block interaction operations.
89 |
90 | ---
91 |
92 | ### getConfiguration
93 | ```
94 | getConfiguration() -> table
95 | ```
96 | Returns the configuration values for this automata.
97 |
98 | ---
99 |
100 | ### lookAtBlock
101 | ```
102 | lookAtBlock() -> table | nil, string
103 | ```
104 | Returns a table containing information about the block infront of the turtle or if the operation fails it will return nil and an error message.
105 |
106 | ---
107 |
108 | ### lookAtEntity
109 | ```
110 | lookAtEntity() -> table | nil, string
111 | ```
112 | Returns a table containing information about the entity infront of the turtle or if the operation fails it will return nil and an error message.
113 |
114 | ---
115 |
116 | ### digBlock
117 | ```
118 | digBlock() -> true | nil, string
119 | ```
120 | Tries to dig the block that the turtle is looking at with the current item. It returns true if it successfully mines the block or nil and an error message.
121 |
122 | ---
123 |
124 | ### useOnBlock
125 | ```
126 | useOnBlock() -> true | nil, string
127 | ```
128 | Tries to interact with the block that the turtle is looking at with the current item. It returns true if it successfully interacts with the block or nil and an error message.
129 |
130 | ---
131 |
132 | ### scanItems
133 | ```
134 | scanItems() -> table | nil, string
135 | ```
136 | Returns a list of items that are around the turtle or nil and an error message if it fails.
137 |
138 | ---
139 |
140 | ### collectItems
141 | ```
142 | collectItems([count: number]) -> true | nil, string
143 | ```
144 | Tries to collect all items or a specific amount if `count` is given around the turtle.
145 | Returns true if it successfully collects items or nil and an error message.
146 |
147 | ---
148 |
149 | ### collectSpecificItem
150 | ```
151 | collectSpecificItem(item: string[, count: number]) -> true | nil, string
152 | ```
153 | Tries to collect all items or a specific amount if `count` is given of the given `item` type that are around the turtle.
154 | Returns true if it successfully collects items or nil and an error message.
155 |
156 | ---
157 |
158 | ### feedSoul
159 | ```
160 | feedSoul() -> (true | nil), string
161 | ```
162 | Tries to feed the entity that is in front of the turtle to the mechanic soul upgrade in the the turtle's selected slot.
163 | Returns true and the interaction result as a string or if it fails nil and an error message.
164 |
165 | ---
166 |
167 | ### chargeTurtle
168 | ```
169 | chargeTurtle([fuel: number]) -> number | nil, string
170 | ```
171 | Tries to fuel the turtle using an energy cell in the turtle's inventory. The `fuel` argument limits the amount of fuel it will try to gain.
172 | Returns the amount of fuel points gained or nil and an error message.
173 |
174 | ---
175 |
176 | ## Changelog/Trivia
177 |
178 | **0.7r**
179 | Added the Weak Automata
180 |
--------------------------------------------------------------------------------
/docs/turtles/player_turtle.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 |
5 | # Player Turtle
6 |
7 | !!! picture inline end
8 | { align=right }
9 |
10 | The Player Turtle is the turtle version of the [Player Detector](../peripherals/player_detector.md) peripheral. See its documenation for more information.
11 |
12 |
13 |
14 | ---
15 |
16 | ## Changelog/Trivia
17 |
18 | **0.4b**
19 | Added the Player Turtle
20 |
--------------------------------------------------------------------------------
/mike.yml:
--------------------------------------------------------------------------------
1 | {
2 | "default": "0.7"
3 | }
--------------------------------------------------------------------------------
/mkdocs.yml:
--------------------------------------------------------------------------------
1 | site_name: Advanced Peripherals
2 | site_url: 'https://docs.advanced-peripherals.de/'
3 |
4 | nav:
5 | - 'Home': 'index.md'
6 | - 'Blog':
7 | - blog/index.md
8 | - 'Guides':
9 | - 'Lua Objects': 'guides/objects.md'
10 | - 'Item and Fluid Filters': 'guides/filters.md'
11 | - 'Cooldowns and Fuel consumption': 'guides/cooldowns_and_fuel_consumption.md'
12 | - 'Storage System Functions': 'guides/storage_system_functions.md'
13 | - 'How to: report a bug or request a feature': 'guides/how_to_report.md'
14 | - 'Peripherals':
15 | - 'Chat Box': 'peripherals/chat_box.md'
16 | - 'Energy Detector': 'peripherals/energy_detector.md'
17 | - 'Environment Detector': 'peripherals/environment_detector.md'
18 | - 'Player Detector': 'peripherals/player_detector.md'
19 | - 'Inventory Manager': 'peripherals/inventory_manager.md'
20 | - 'NBT Storage': 'peripherals/nbt_storage.md'
21 | - 'Block Reader': 'peripherals/block_reader.md'
22 | - 'Geo Scanner': 'peripherals/geo_scanner.md'
23 | - 'Redstone Integrator': 'peripherals/redstone_integrator.md'
24 | - 'AR Controller': 'peripherals/ar_controller.md'
25 | - 'ME Bridge': 'peripherals/me_bridge.md'
26 | - 'RS Bridge': 'peripherals/rs_bridge.md'
27 | - 'Colony Integrator': 'peripherals/colony_integrator.md'
28 | - 'Turtles':
29 | - 'Chatty Turtle': 'turtles/chatty_turtle.md'
30 | - 'Chunky Turtle': 'turtles/chunky_turtle.md'
31 | - 'Environment Turtle': 'turtles/environment_turtle.md'
32 | - 'Player Turtle': 'turtles/player_turtle.md'
33 | - 'Geoscanning Turtle': 'turtles/geo_scanner_turtle.md'
34 | - 'Metaphysics':
35 | - 'Weak Automata': 'turtles/metaphysics/weak_automata.md'
36 | - 'Husbandry Automata': 'turtles/metaphysics/husbandry_automata.md'
37 | - 'End Automata': 'turtles/metaphysics/end_automata.md'
38 | - 'Overpowered Automata': 'turtles/metaphysics/overpowered_automata.md'
39 | - 'Items':
40 | - 'AR Goggles': 'items/ar_goggles.md'
41 | - 'Chunk Controller': 'items/chunk_controller.md'
42 | - 'Computer Tool': 'items/computer_tool.md'
43 | - 'Memory Card': 'items/memory_card.md'
44 | - 'Pocket Computers': 'items/pocket_computer.md'
45 | - 'Mod Integrations':
46 | - 'integrations/index.md'
47 | - 'Minecraft':
48 | - 'Beacon': 'integrations/minecraft/beacon.md'
49 | - 'Note Block': 'integrations/minecraft/noteblock.md'
50 | - 'Botania':
51 | - 'Flowers': 'integrations/botania/flowers.md'
52 | - 'Mana Pool': 'integrations/botania/pool.md'
53 | - 'Mana Spreader': 'integrations/botania/spreader.md'
54 | - 'Create':
55 | - 'Basin': 'integrations/create/basin.md'
56 | - 'Blaze Burner': 'integrations/create/blazeburner.md'
57 | - 'Fluid Tank': 'integrations/create/fluidtank.md'
58 | - 'Mechanical Mixer': 'integrations/create/mechanicalmixer.md'
59 | - 'Blocks with Scroll Behaviour': 'integrations/create/scrollbehaviour.md'
60 | - 'Draconic Evolution':
61 | - 'integrations/draconic_evolution/index.md'
62 | # - 'Energy Core': 'integrations/draconic_evolution/energy_core.md'
63 | # - 'Reactor': 'integrations/draconic_evolution/reactor.md'
64 | - 'Immersive Engineering':
65 | - 'Redstone Wire Connector': 'integrations/immersive_engineering/connector.md'
66 | - 'Redstone Probe': 'integrations/immersive_engineering/probe.md'
67 | - 'Integrated Dynamics':
68 | - 'Variable Store': 'integrations/integrated_dynamics/variable_store.md'
69 | - 'Mekanism':
70 | - 'integrations/mekanism/index.md'
71 | # - 'Boiler Valve': ''
72 | # - 'Induction Valve': ''
73 | # - 'Chemical Tank': ''
74 | # - 'Dynamic Tank': ''
75 | # - 'Fluid Tank': ''
76 | # - 'Digital Miner': ''
77 | # - 'Fission': ''
78 | # - 'Fusion': ''
79 | # - 'Solar Evaporation': ''
80 | # - 'Transmitter': ''
81 | # - 'Turbine': ''
82 | # - 'Waste Barrel': ''
83 | # - 'Energy Blocks': ''
84 | - 'Powah':
85 | - 'Energy cell': 'integrations/powah/energy_cell.md'
86 | - 'Furnator': 'integrations/powah/furnator.md'
87 | - 'Magmator': 'integrations/powah/magmator.md'
88 | - 'Reactor': 'integrations/powah/reactor.md'
89 | - 'Solar panel': 'integrations/powah/solar_panel.md'
90 | - 'Thermo generator': 'integrations/powah/thermo_generator.md'
91 | - 'Storage Drawers':
92 | - 'Drawer': 'integrations/storage_drawers/drawer.md'
93 | - 'Changelogs':
94 | - 'Changelog 0.7.24r': 'changelogs/0.7.24r.md'
95 | - 'Changelog 0.7r': 'changelogs/0.7r.md'
96 |
97 | watch:
98 | - overrides
99 |
100 | theme:
101 | name: material
102 | custom_dir: overrides
103 | features:
104 | - navigation.top
105 | # - navigation.instant # Breaks 'lightgallery' extension
106 | - navigation.indexes
107 | - navigation.tabs
108 | - navigation.footer
109 | # - navigation.sections # Makes navigation too long
110 | - content.code.annotate
111 | - content.code.copy
112 | - content.action.edit
113 | - content.action.view
114 | - content.tabs.link
115 | icon:
116 | edit: material/file-edit-outline
117 | view: material/file-eye-outline
118 | palette:
119 | - scheme: slate
120 | primary: blue
121 | toggle:
122 | icon: material/weather-sunny
123 | name: Switch to dark mode
124 | - scheme: default
125 | primary: blue
126 | toggle:
127 | icon: material/weather-night
128 | name: Switch to light mode
129 |
130 | plugins:
131 | - search:
132 | lang: en
133 | - glightbox
134 | - blog:
135 | post_date_format: long
136 | archive_date_format: MMMM yyyy
137 | archive_url_date_format: yyyy/MM
138 | - git-revision-date-localized:
139 | enable_creation_date: true
140 | type: date
141 | fallback_to_build_date: true
142 | enabled: !ENV [CI, false]
143 | - git-committers:
144 | repository: IntelligenceModding/Advanced-Peripherals-Documentation
145 | branch: "0.7-bridges"
146 | token: !ENV GITHUB_TOKEN
147 | enabled: !ENV [CI, false]
148 |
149 | extra_css:
150 | - extra.css
151 |
152 | extra_javascript:
153 | - https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML
154 |
155 | extra:
156 | version:
157 | default: 0.7
158 | provider: mike
159 | social:
160 | - icon: material/github
161 | link: https://github.com/IntelligenceModding/AdvancedPeripherals
162 | - icon: material/youtube
163 | link: https://www.youtube.com/@intelligencemodding4093
164 | - icon: fontawesome/brands/discord
165 | link: https://discord.intelligence-modding.de/
166 |
167 | repo_url: https://github.com/IntelligenceModding/Advanced-Peripherals-Documentation
168 | repo_name: IntelligenceModding/Advanced-Peripherals-Documentation
169 | edit_uri: edit/0.7-bridges/docs/
170 |
171 | markdown_extensions:
172 | - tables
173 | - md_in_html
174 | - mdx_math
175 | - def_list
176 | - attr_list
177 | - md_in_html
178 | - pymdownx.tasklist:
179 | custom_checkbox: true
180 | - codehilite:
181 | guess_lang: false
182 | - toc:
183 | permalink: true
184 | - admonition
185 | - pymdownx.superfences
186 | - pymdownx.tabbed:
187 | alternate_style: true
188 | - pymdownx.emoji:
189 | emoji_index: !!python/name:material.extensions.emoji.twemoji
190 | emoji_generator: !!python/name:material.extensions.emoji.to_svg
191 | - footnotes
192 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = """
3 | mkdocs build
4 | git config user.name "Version Deployment"
5 | git config user.email "netlifybot@example.com"
6 | git remote set-url origin https://${GITHUB_TOKEN}@github.com/SirEndii/Advanced-Peripherals-Documentation.git
7 | git config pull.rebase true
8 | git switch ${BRANCH}
9 | git commit -m "cache updates" --all
10 | git pull origin ${BRANCH}
11 | git push origin 0.7
12 | git switch gh-pages
13 | git pull origin gh-pages
14 | git switch ${BRANCH}
15 | echo "Trying to deploy $BRANCH ..."
16 | if [ "$BRANCH" = "0.8" ]; then
17 | echo "Deploying $BRANCH"
18 | mike deploy --push --update-aliases --ignore-remote-status --allow-empty 0.8 canary
19 | elif [ "$BRANCH" = "0.7" ]; then
20 | echo "Deploying $BRANCH"
21 | mike deploy --push --update-aliases --ignore-remote-status --allow-empty 0.7 latest
22 | else
23 | echo "Deploying $BRANCH"
24 | mike deploy --push --ignore-remote-status --allow-empty "$BRANCH"
25 | fi
26 | """
27 | publish = "site" # The directory where your built MkDocs site resides
28 |
29 | [context.deploy-preview]
30 | command = "mkdocs build" #build the preview, but don't deploy with mike.
31 | publish = "site"
--------------------------------------------------------------------------------
/overrides/img/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/IntelligenceModding/Advanced-Peripherals-Documentation/b49b7957c7688e4f04cfe106de2b53a7a62e40a2/overrides/img/loading.gif
--------------------------------------------------------------------------------
/overrides/partials/comments.html:
--------------------------------------------------------------------------------
1 | {% if page.meta.comments %}
2 |