Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More Mekanism #60

Merged
merged 64 commits into from
Jul 10, 2024
Merged
Show file tree
Hide file tree
Changes from 62 commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
1d70df0
feat: Mekanism Bio Generator input adapter
bananasov Oct 7, 2023
f650a57
feat: Mekanism Chemical Tank input adapter
bananasov Oct 7, 2023
fab7e55
fix: Incorrect return table
bananasov Oct 7, 2023
5d0d36a
feat: Add production rate to bio generator
bananasov Oct 7, 2023
2c8ea86
feat: Mekanism Gas Generator input adapter
bananasov Oct 7, 2023
daa85e1
feat: Mekanism Digital Miner input adapter
bananasov Oct 7, 2023
cd6f5e5
feat: Mekanism dynamic tank input adapter
bananasov Oct 7, 2023
6d5f1c2
fix: Use B and B/t for gas/chemicals/fluids
bananasov Oct 7, 2023
e816ede
chore: Add new input adapters to input.lua
bananasov Oct 7, 2023
7e2a1c0
feat: Add laser and laser amp input adapters
bananasov Oct 8, 2023
d8cb736
feat: Add universal cable input adapter
bananasov Oct 8, 2023
483bb0b
feat: Add PressurizedTube input adapter
bananasov Oct 8, 2023
85d7005
feat: Add Mechanical Pipe input adapter
bananasov Oct 8, 2023
a2266b3
feat: Add Isotopic Centrifuge input adapter
bananasov Oct 8, 2023
04378fa
feat: Add Quantum Entangloporter input adapter
bananasov Oct 8, 2023
6814f0d
fix: Patch up bio generator to comply with bits requests.
bananasov Oct 24, 2023
b243c62
fix: Patch up digital miner input adapter per bits requests
bananasov Oct 24, 2023
d4e44df
fix: Fix up mistake in DigitalMinerInputAdapter
bananasov Oct 24, 2023
a8b2dc8
Merge pull request #19 from bananasov/feature/more-mekanism
cyberbit Jun 15, 2024
72c4b57
Merge branch 'main' into feature/more-mekanism
cyberbit Jun 16, 2024
5004222
📦 move common mek queries to base input
cyberbit Jun 17, 2024
8f31a55
📦parallelize mek queries, convert old format mek adapters
cyberbit Jun 22, 2024
3397026
📦 tweak mek adapter queries, rollback callElse
cyberbit Jun 22, 2024
d3d1662
📦 update isotopic centrifuge adapter
cyberbit Jun 23, 2024
2858a01
📦 update digital miner adapter
cyberbit Jun 23, 2024
b7e4726
📦 update laser and laser amplifier adapters
cyberbit Jun 23, 2024
16ece6a
📦 update mechanical pipe and pressurized tube adapters
cyberbit Jun 23, 2024
936ce9f
📦 update universal cable adapter
cyberbit Jun 24, 2024
a7a2512
📦 update quantum entangloporter adapter
cyberbit Jun 24, 2024
78f7f0e
📦 initial work for mekanism adapter minting
cyberbit Jun 25, 2024
5555f9a
📦 add intersect to Fluent
cyberbit Jun 25, 2024
876cfc2
📦 more mekanism adapter minting
cyberbit Jun 25, 2024
ca911ef
📦 add APNS, bin, boiler adapters
cyberbit Jun 26, 2024
b51be25
📦 add chemical crystallizer, update apns with output buffer count
cyberbit Jun 27, 2024
9edb4ba
📦 add chemical dissolution chamber
cyberbit Jun 27, 2024
308618d
📦 add chemical infuser, oxidizer, washer adapters, fix APNS item counts
cyberbit Jun 28, 2024
d5958d5
📦 add combiner, osmium compressor, electric pump adapters
cyberbit Jun 29, 2024
619fd7d
📦 add electrolytic separator, energy cube, fluid tank adapters
cyberbit Jun 29, 2024
cd15767
📦 add storage needed metric to chem tank adapter
cyberbit Jun 29, 2024
b833c8f
📦 add ingame interval source option to calc delta middleware
cyberbit Jun 29, 2024
5fc68fc
📦 add fluidic plenisher, assemblicator, and fuelwood heater adapters
cyberbit Jun 30, 2024
c06a2a0
📦 add heat generator adapter
cyberbit Jun 30, 2024
2d4b193
📦 add laser tractor beam, logistical sorter, metallurgic infuser adap…
cyberbit Jul 1, 2024
2f21c40
📦 update digital miner and formulaic assembler to use slot usage quer…
cyberbit Jul 1, 2024
66ff435
📦 add nutritional liquifier, oredictionificator, painting machine ada…
cyberbit Jul 2, 2024
992539e
📦 add pigment extractor, pigment mixer, precision sawmill adapters
cyberbit Jul 3, 2024
bfa58c2
📦 bump version
cyberbit Jul 4, 2024
35ac183
📦 add pressurized reaction chamber, resistive heater, rotary condense…
cyberbit Jul 4, 2024
579d445
📦 add stub for radioactive waste barrel adapter
cyberbit Jul 4, 2024
4462da4
📦 add SPS adapter
cyberbit Jul 4, 2024
b4d7c75
📦 add seismic vibrator, solar generator, solar neutron activator adap…
cyberbit Jul 4, 2024
fb4cb68
📦 add teleporter, thermal evaporation plant, and wind generator adapt…
cyberbit Jul 5, 2024
4f870c4
📦 add chemical injection chamber, purification chamber adapters
cyberbit Jul 5, 2024
99ea937
📦 add crusher, energized smelter, enrichment chamber adapters
cyberbit Jul 5, 2024
2da30ce
📦 add crushing, enriching, smelting factory adapters
cyberbit Jul 6, 2024
2c41668
📦 add combining, compressing, infusing, injecting, purifying, sawing …
cyberbit Jul 6, 2024
bfec579
📦 tweak some adapters to align with standards
cyberbit Jul 6, 2024
cf53eb5
📦 add QIO drive array adapter
cyberbit Jul 7, 2024
c8ae910
📦 update radioactive waste barrel and seismic vibrator adapters for n…
cyberbit Jul 7, 2024
f04cb00
📦 add APNS to docs, update APNS adapter to align with standards
cyberbit Jul 7, 2024
33217d5
📦 add docs for bin, bio generator
cyberbit Jul 8, 2024
fa756b8
📦 update bin adapter to standards
cyberbit Jul 8, 2024
eb776d9
Merge branch 'main' into feature/more-mekanism
cyberbit Jul 9, 2024
0ee60c2
👌 pr fixes
cyberbit Jul 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ export default defineConfig({
text: 'Mekanism',
collapsed: true,
items: [
{ text: 'Antiprotonic Nucleosynthesizer', link: '/reference/input/mekanism/AntiprotonicNucleosynthesizer' },
{ text: 'Bin', link: '/reference/input/mekanism/Bin' },
{ text: 'Bio Generator', link: '/reference/input/mekanism/BioGenerator' },
{ text: 'Fission Reactor', link: '/reference/input/mekanism/FissionReactor' },
{ text: 'Fusion Reactor', link: '/reference/input/mekanism/FusionReactor' },
{ text: 'Induction Matrix', link: '/reference/input/mekanism/InductionMatrix' },
Expand Down
Binary file added docs/assets/mekanism-bin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
153 changes: 153 additions & 0 deletions docs/reference/input/mekanism/AntiprotonicNucleosynthesizer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
# Mekanism Antiprotonic Nucleosynthesizer Input <RepoLink path="lib/input/mekanism/AntiprotonicNucleosynthesizerInputAdapter.lua" />

```lua
telem.input.mekanism.apns (
peripheralID: string,
categories?: string[] | '*'
)
```

::: warning Mod Dependencies
Requires **Mekanism**.
:::

See the Usage section for a complete list of the metrics in each category.

<PropertiesTable
:properties="[
{
name: 'peripheralID',
type: 'string',
default: 'nil',
description: 'Peripheral ID of the Antiprotonic Nucleosynthesizer'
},
{
name: 'categories',
type: 'string[] | &quot;*&quot;',
default: '{ &quot;basic&quot; }'
}
]"
>
<template v-slot:categories>

List of metric categories to query. The value `"*"` can be used to include all categories, which are listed below.

```lua
{ "basic", "advanced", "input", "output", "energy", "recipe" }
```
</template>
</PropertiesTable>

## Usage

```lua{4}
local telem = require 'telem'

local backplane = telem.backplane()
:addInput('my_apns', telem.input.mekanism.apns('right', '*'))
:cycleEvery(5)()
```

Given an Antiprotonic Nucleosynthesizer peripheral on the `right` side of the computer, this appends the following metrics to the backplane (grouped by category here for clarity):

### Basic

<MetricTable
:metrics="[
{
name: 'mekapns:input_chemical_filled_percentage',
value: '0.0 - 1.0'
},
{
name: 'mekapns:input_item_count',
value: '0 - inf',
unit: 'item'
},
{
name: 'mekapns:output_item_count',
value: '0 - inf',
unit: 'item'
},
{
name: 'mekapns:energy_filled_percentage',
value: '0.0 - 1.0'
},
{
name: 'mekapns:energy_usage',
value: '0.0 - inf',
unit: 'FE/t'
}
]"
/>

### Advanced

<MetricTable
:metrics="[
{
name: 'mekapns:comparator_level',
value: '0 - 15'
}
]"
/>

### Input

<MetricTable
:metrics="[
{
name: 'mekapns:input_chemical',
value: '0.0 - inf',
unit: 'B'
},
{
name: 'mekapns:input_chemical_capacity',
value: '0.0 - inf',
unit: 'B'
},
{
name: 'mekapns:input_chemical_needed',
value: '0.0 - inf',
unit: 'B'
}
]"
/>

### Energy

<MetricTable
:metrics="[
{
name: 'mekapns:energy',
value: '0.0 - inf',
unit: 'FE'
},
{
name: 'mekapns:max_energy',
value: '0.0 - inf',
unit: 'FE'
},
{
name: 'mekapns:energy_needed',
value: '0.0 - inf',
unit: 'FE'
}
]"
/>

### Recipe

<MetricTable
:metrics="[
{
name: 'mekapns:recipe_progress',
value: '0 - inf',
unit: 't'
},
{
name: 'mekapns:ticks_required',
value: '0 - inf',
unit: 't'
}
]"
/>
85 changes: 85 additions & 0 deletions docs/reference/input/mekanism/Bin.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Mekanism Bin Input <RepoLink path="lib/input/mekanism/BinInputAdapter.lua" />

```lua
telem.input.mekanism.bin (
peripheralID: string,
categories?: string[] | '*'
)
```

::: warning Mod Dependencies
Requires **Mekanism**.
:::

See the Usage section for a complete list of the metrics in each category.

<PropertiesTable
:properties="[
{
name: 'peripheralID',
type: 'string',
default: 'nil',
description: 'Peripheral ID of the Antiprotonic Nucleosynthesizer'
},
{
name: 'categories',
type: 'string[] | &quot;*&quot;',
default: '{ &quot;basic&quot; }'
}
]"
>
<template v-slot:categories>

List of metric categories to query. The value `"*"` can be used to include all categories, which are listed below.

```lua
{ "basic" }
```
</template>
</PropertiesTable>

## Usage

```lua{4}
local telem = require 'telem'

local backplane = telem.backplane()
:addInput('my_bin', telem.input.mekanism.bin('right', '*'))
:cycleEvery(5)()
```

Given a Bin peripheral on the `right` side of the computer, this appends the following metrics to the backplane (grouped by category here for clarity):

### Basic

<MetricTable
:metrics="[
{
name: 'mekbin:stored',
value: '0 - inf',
unit: 'item'
},
{
name: 'mekbin:capacity',
value: '0 - inf',
unit: 'item'
}
]"
/>

## Storage
If the bin contains items, a storage metric is added for the item. Given a bin with the following contents:

![Mekanism Basic Bin with contents](/assets/mekanism-bin.png)

The following metric would be added:

<MetricTable
:metrics="[
{
name: 'storage:minecraft:lime_concrete_powder',
value: '71',
unit: 'item'
},
]"
/>
131 changes: 131 additions & 0 deletions docs/reference/input/mekanism/BioGenerator.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
# Mekanism Bio Generator Input <RepoLink path="lib/input/mekanism/BioGeneratorInputAdapter.lua" />

```lua
telem.input.mekanism.bioGenerator (
peripheralID: string,
categories?: string[] | '*'
)
```

::: warning Mod Dependencies
Requires **Mekanism** and **Mekanism Generators**.
:::

See the Usage section for a complete list of the metrics in each category.

<PropertiesTable
:properties="[
{
name: 'peripheralID',
type: 'string',
default: 'nil',
description: 'Peripheral ID of the Bio Generator'
},
{
name: 'categories',
type: 'string[] | &quot;*&quot;',
default: '{ &quot;basic&quot; }'
}
]"
>
<template v-slot:categories>

List of metric categories to query. The value `"*"` can be used to include all categories, which are listed below.

```lua
{ "basic", "advanced", "fuel", "energy" }
```
</template>
</PropertiesTable>

## Usage

```lua{4}
local telem = require 'telem'

local backplane = telem.backplane()
:addInput('my_biogen', telem.input.mekanism.bioGenerator('right', '*'))
:cycleEvery(5)()
```

Given a Bio Generator peripheral on the `right` side of the computer, this appends the following metrics to the backplane (grouped by category here for clarity):

### Basic

<MetricTable
:metrics="[
{
name: 'mekbiogen:production_rate',
value: '0.0 - inf',
unit: 'FE/t'
},
{
name: 'mekbiogen:energy_filled_percentage',
value: '0.0 - 1.0'
},
{
name: 'mekbiogen:bio_fuel_filled_percentage',
value: '0.0 - 1.0'
}
]"
/>

### Advanced

<MetricTable
:metrics="[
{
name: 'mekbiogen:comparator_level',
value: '0 - 15'
}
]"
/>

### Fuel

<MetricTable
:metrics="[
{
name: 'mekbiogen:bio_fuel_capacity',
value: '0.0 - inf',
unit: 'B'
},
{
name: 'mekbiogen:bio_fuel',
value: '0.0 - inf',
unit: 'B'
},
{
name: 'mekbiogen:bio_fuel_needed',
value: '0.0 - inf',
unit: 'B'
}
]"
/>

### Energy

<MetricTable
:metrics="[
{
name: 'mekbiogen:max_energy',
value: '0.0 - inf',
unit: 'FE'
},
{
name: 'mekbiogen:energy_needed',
value: '0.0 - inf',
unit: 'FE'
},
{
name: 'mekbiogen:energy',
value: '0.0 - inf',
unit: 'FE'
},
{
name: 'mekbiogen:max_energy_output',
value: '0.0 - inf',
unit: 'FE/t'
}
]"
/>
4 changes: 2 additions & 2 deletions src/telem/init.lua
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
-- Telem by cyberbit
-- MIT License
-- Version 0.7.1
-- Version 0.8.0

local _Telem = {
_VERSION = '0.7.1',
_VERSION = '0.8.0',
util = require 'telem.lib.util',
input = require 'telem.lib.input',
output = require 'telem.lib.output',
Expand Down
Loading