Giter VIP home page Giter VIP logo

buildcraft's Introduction

Welcome to BuildCraft on GitHub

Reporting an issue

Please open an issue for a bug report only if:

  • you are sure the bug is caused by BuildCraft and not by any other mod,
  • you have at least one of the following:
    • a crash report,
    • means of reproducing the bug in question,
    • screenshots/videos/etc. to demonstrate the bug.

If you are not sure if a bug report is valid, please use the "Ask Help!" subforum.

Please only use official BuildCraft releases for any kind of bug reports unless otherwise told to do by the BuildCraft team. Custom builds (for instance from Jenkins) are unsupported, often buggy and will not get any support from the developers.

Please check if the bug has been reported beforehand. Also, provide the version of BuildCraft used - if it's a version compiled from source, link to the commit/tree you complied from.

Please mention if you are using MCPC+, Cauldron, OptiFine, FastCraft or any other mods which optimize or otherwise severely modify the functioning of the Minecraft engine. That is very helpful when trying to reproduce a bug.

Please do not open issues for features unless you are a member of the BuildCraft team. For that, use the "Feature Requests" subforum.

BuildCraft, being an open-source project, gives you the right to submit a pull request if a particular fix or feature is important to you. However, if the change in question is major, please contact the team beforehand - we wish to prevent wasted effort.

Contributing

If you wish to submit a pull request to fix bugs or broken behaviour feel free to do so. If you would like to add features or change existing behaviour or balance, please discuss it on discord before submitting a PR (https://discord.gg/v4geqgA).

Do not submit pull requests which solely "fix" formatting. As these kinds of changes are usually very intrusive in commit history and everyone has their own idea what "proper formatting" is, they should be done by one of the main contributors. Please only submit "code cleanup", if the changes actually have a substantial impact on readability.

PR implementing new features or changing large portions of code are helpful. But if you're doing such a change and if it gets accepted, please don't "fire and forget". Complex changes are introducing bugs, and as thorough as testing and peer review may be, there will be bugs. Please carry on playing your changes after initial commit and fix residual issues. It is extremely frustrating for others to spend days fixing regressions introduced by unmaintained submissions.

Frequently reported

  • java.lang.AbstractMethodError, java.lang.NoSuchMethodException
    • A mod has not updated to the current BuildCraft API
    • You are not using the correct version of BuildCraft for your Forge/Minecraft versions
    • You are using the dev version on a normal game instance (or vice versa)
  • Render issue (Quarry causes flickering) - Try without OptiFine first! This is a known issue with some versions of OptiFine.

Compiling and packaging BuildCraft

  1. Ensure that Java (found here), Git (found here) are installed correctly on your system.
  • Optional: Install Gradle (found here). You probably want to install version 4.3.1.
  1. Create a base directory for the build
  2. Clone the BuildCraft repository into 'baseDir/BuildCraft/'
  3. Clone (and update) the submodules into 'baseDir/BuildCraft with 'git submodule init' and 'git submodule update'
  4. Navigate to basedir/BuildCraft in a shell and run one of two commands:
    • ./gradlew setupCIWorkspace build to just build a current jar (this may take a while).
    • ./gradlew setupDecompWorkspace to setup a complete development environment.
    • With Gradle installed: use gradle instead of ./gradlew
    • On Windows: use gradlew.bat instead of ./gradlew
  5. The compiles and obfuscated module jars will be in 'baseDir/BuildCraft/build/libs/<build number>/modules'

Your directory structure should look like this before running gradle:


baseDir
\- BuildCraft
 |- buildcraft_resources
 |- common
 |- ...
 \- BuildCraftAPI
  |- api
  |- ...
 \- BuildCraft-Localization
  |- lang
  |- ...

And like this after running gradle:


basedir
\- BuildCraft
 |- .gradle
 |- build
 |- buildcraft_resources
 |- common
 |- ...
 \- BuildCraftAPI
  |- api
  |- ...
 \- BuildCraft-Localization
  |- lang
  |- ...

Localizations

Localizations can be submitted here. Localization PRs against this repository will have to be rejected.

Depending on BuildCraft

Instructions for depending on BC 7.1.x can be found here (for 1.7.10).

8.0.x hasn't been finished yet, so there are no instructions for depending on it :(

The following instructions are for BC 7.99.12 (1.12.2):

Add the following to your build.gradle file:

repositories {
    maven {
        name "BuildCraft"
        url = "https://mod-buildcraft.com/maven"
    }
}

If you want to depend on JUST the API then do this:

dependencies {
    deobfCompile "com.mod-buildcraft:buildcraft-api:7.99.12"
}

If you want to depend on JUST the lib then do this:

dependencies {
    deobfCompile "com.mod-buildcraft:buildcraft-lib:7.99.12"
}

If you want to depend on the whole of buildcraft do this:

dependencies {
    deobfCompile "com.mod-buildcraft:buildcraft:7.99.12"
}

Where 7.99.12 is the desired version of BuildCraft.

buildcraft's People

Contributors

aartbluestoke avatar aenterprise avatar afdw avatar alexiil avatar asiekierka avatar cisien avatar covertjaguar avatar cpw avatar davboecki avatar dmillerw avatar flow86 avatar hea3ven avatar immibis avatar ititus avatar justwannafly avatar krapht avatar kubuxu avatar mystise avatar pahimar avatar psxlover avatar sandgrainone avatar sfplayer1 avatar sirsengir avatar soaryn avatar spacetoad avatar taelnia avatar tambry avatar tarzanbuzzyman avatar viliml avatar zlangbert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

buildcraft's Issues

Buildcraft 2 API?

I am trying to make my mod compatible with Buildcraft 2. I am currently using the Buildcraft 3 API and it seems to crash when the player has Buildcraft 2 installed. I tried looking for the BC 2 API but I can't seem to find it. Anyone has a link for the old API?

I need the old API because BC2 is multiplayer compatible. Unless BC3 is going to be released soon, I think the BC2 API should be still publicly (and easily) downloadable.

Thanks,
Calclavia

Golden Waterproof Pipes in SMP

Golden waterproof pipes in smp either have the same capacity as normal pipes, or they don't display the liquid correctly.

Stripes Transpot Pipe

Both ssp and smp:
When a stripes transport pipe tries to place a pipe that is not transport (waterproof or conductive) you get an NPE (when it is a transport pipe it replaces itself with the pipe and puts a stripes pipe infront of it).

Smp:
When it removes a block from the world (when it is powered) the block still appears on the client till you restart (it doesn't update)
When placing a transport pipe, the block that had the stripe pipe doesn't update, so it still shows up as a stripe pipe, instead of the placed transport pipe.

Picking up engines converts to stack with other engine type

(SMP only?)
How to reproduce:

Start with empty inventory
Get 1 redstone engine
Get 1 combustion engine
Drop combustion engine
Pick it up
You now have 2 redstone engines

The same happens if you shift-click a engine A while you have engine B in inventory

Cleanup non-functional PersistentWorld/-Tile

�21��<�cpw�>���21 sengir: epic synchronization fail in Persistentworld
�18�<��29immibis�>�� what does PersistentWorld even do?
�18�<��27cpw�>�� it looks like it's caching all the pipes in the world
�18�<��27cpw�>�� not sure why

�18�<��27cpw�>�� i don't think persistent world / persistent tile are necessary at all
�31�<�Sengir�>���30 cpw, I am considering removing the Persistent* stuff...
�31�<�Sengir�>���30 ninja'd.
�18�<��27cpw�>�� yes. agree.
�18�<��27cpw�>�� the cache is clearly not working properly
�18�<��27cpw�>�� it looks to be a hackaround

Dependencies

Buildcraft factory (I think) depends on Silicon. Perhaps a try-catch block will be enough to fix that.

Pipes that implement IPowerReceptor receive power from PipeTransportPower pipes

Right now only engines directly connected to a wooden transport pipe (or any other pipe that implements IPowerReceptor) will cause DoWork to be called.

Here is my patch to allow PipeTransportPower pipes to power pipes that implement IPowerReceptor. There are a few kinks, like it only pulls out 3-10 items at a time instead of a full stack.

From 9be4a9064b06ffc0eb7dc9fc9157d6ac849b1f3c Mon Sep 17 00:00:00 2001
From: leftler <[email protected]>
Date: Tue, 12 Jun 2012 00:07:34 -0500
Subject: [PATCH] Added ability to connect power transport pipes to non power
 transport pipes that support IPowerReceptor

---
 .../buildcraft/transport/PipeTransportPower.java   |   48 +++++++++++++++++---
 1 file changed, 42 insertions(+), 6 deletions(-)

diff --git a/common/net/minecraft/src/buildcraft/transport/PipeTransportPower.java b/common/net/minecraft/src/buildcraft/transport/PipeTransportPower.java
index 0e57fa6..8b11548 100644
--- a/common/net/minecraft/src/buildcraft/transport/PipeTransportPower.java
+++ b/common/net/minecraft/src/buildcraft/transport/PipeTransportPower.java
@@ -58,13 +58,15 @@ public class PipeTransportPower extends PipeTransport {
        step();

        TileEntity tiles[] = new TileEntity[6];
-
+        boolean connectedPipes[] = new boolean[6];
        // Extract the nearby connected tiles

        for (int i = 0; i < 6; ++i)
-           if (Utils.checkPipesConnections(container.getTile(Orientations.values()[i]), container))
+       {
+           connectedPipes[i] = Utils.checkPipesConnections(container.getTile(Orientations.values()[i]), container);
+           if (connectedPipes[i] || elligablePowerConnection(this, container.getTile(Orientations.values()[i])))
                tiles[i] = container.getTile(Orientations.values()[i]);
-
+       }
        // Send the power to nearby pipes who requested it

        displayPower = new short[] { 0, 0, 0, 0, 0, 0 };
@@ -84,7 +86,7 @@ public class PipeTransportPower extends PipeTransport {
                    if (j != i && powerQuery[j] > 0) {
                        double watts = (totalWatt / div * powerQuery[j]);

-                       if (tiles[j] instanceof TileGenericPipe) {
+                       if (tiles[j] instanceof TileGenericPipe && connectedPipes[j]) {
                            TileGenericPipe nearbyTile = (TileGenericPipe) tiles[j];

                            PipeTransportPower nearbyTransport = (PipeTransportPower) nearbyTile.pipe.transport;
@@ -111,7 +113,7 @@ public class PipeTransportPower extends PipeTransport {
        // Compute the tiles requesting energy that are not pipes

        for (int i = 0; i < 6; ++i)
-           if (tiles[i] instanceof IPowerReceptor && !(tiles[i] instanceof TileGenericPipe)) {
+           if (tiles[i] instanceof IPowerReceptor && !(tiles[i] instanceof TileGenericPipe && connectedPipes[i])) {
                IPowerReceptor receptor = (IPowerReceptor) tiles[i];
                int request = receptor.powerRequest();

@@ -135,7 +137,7 @@ public class PipeTransportPower extends PipeTransport {

        for (int i = 0; i < 6; ++i)
            if (transferQuery[i] != 0)
-               if (tiles[i] != null) {
+               if (tiles[i] != null && connectedPipes[i]) {
                    TileEntity entity = tiles[i];

                    if (entity instanceof TileGenericPipe) {
@@ -226,5 +228,39 @@ public class PipeTransportPower extends PipeTransport {
    public boolean allowsConnect(PipeTransport with) {
        return with instanceof PipeTransportPower;
    }
+   
+   //Checks for neighboring TileEntries that support IPowerReceptor. This could be moved in to Utils.
+   public static boolean elligablePowerConnection(PipeTransportPower source, TileEntity tile2)
+   {
+       if (source == null || tile2 == null)
+           return false;
+
+       if (!(tile2 instanceof IPowerReceptor))
+           return false;
+       
+       if (((IPowerReceptor)tile2).getPowerProvider() == null)
+           return false;
+       
+       //Check that it is next to the source.
+       Orientations o = Orientations.Unknown;
+
+       if (source.xCoord - 1 == tile2.xCoord)
+           o = Orientations.XNeg;
+       else if (source.xCoord + 1 == tile2.xCoord)
+           o = Orientations.XPos;
+       else if (source.yCoord - 1 == tile2.yCoord)
+           o = Orientations.YNeg;
+       else if (source.yCoord + 1 == tile2.yCoord)
+           o = Orientations.YPos;
+       else if (source.zCoord - 1 == tile2.zCoord)
+           o = Orientations.ZNeg;
+       else if (source.zCoord + 1 == tile2.zCoord)
+           o = Orientations.ZPos;
+
+       if (o == Orientations.Unknown)
+           return false;
+
+       return true;
+   }

 }
-- 
1.7.10.msysgit.1

Striping on smp

When pipe striping on smp, the pipe doesn't update until a block is placed next to it, or a wire/gate is placed on it.

Incorect items names

I am using buildcraft client version 3.1.6.9 (Almost latest).

I am using Logistic pipe plugin for buildcraft. My NEI shows basic logistic pipe as "item.PipeItemsBasicLogistics". Simular thing happens with additional buildcraft pipes (Teleport Pipes).

edit: This happens only on development build not with Buildcraft 3.1.5

NPE in Refinery GUI

NPE appear when i click on right or left slot of Refinery..

java.lang.NullPointerException
at buildcraft.core.CoreProxy.sendToServer(CoreProxy.java:89)
at buildcraft.factory.ContainerRefinery.setFilter(ContainerRefinery.java:63)
at buildcraft.factory.GuiRefinery.a(GuiRefinery.java:83)
at vp.f(SourceFile:122)
at gb.f(GuiContainer.java:425)
at vp.i(SourceFile:110)
at gb.i(GuiContainer.java:419)
at net.minecraft.client.Minecraft.k(Minecraft.java:1561)
at net.minecraft.client.Minecraft.x(Minecraft.java:819)
at net.minecraft.client.Minecraft.run(Minecraft.java:747)
at java.lang.Thread.run(Unknown Source)

Random Pipe Output Selection with high updateFactor- isn't random

I can read code fairly well, but I know very little about how Minecraft's internals work, so please forgive me if I'm totally off the mark on this one (at least as far as my solution goes; I Know the problem exists..)

The basic issue is that, with a high update factor, an item will apparently "remember" the first decision it makes as far as which pipe branch to take, and always make that same decision when possible. To test this, I constructed a simple distributor with 9 chests (1 input, 8 output) and a bunch of stone pipe, such that, theoretically, each of the 8 output chests should theoretically receive a fair share of the input (tested with 4 stacks of cobblestone.) You can see the layout (and the problem!) here: http://i.imgur.com/WiBok.png

From looking at the code, what I believe to be happening is that the deterministicRandomization property of each of the items isn't updated between the time the item is first generated and the time it reaches the chest, because the updateFactor is high.

I propose (and I don't know if there are horrible side effects of this, or if it can't happen for some reason; but I'd love to find out why if there is a problem with both these ideas) that either:

(a) The deterministicRandomization property is used as the seed for a random number generator (which will allow each client to still get the same results as the server, but will "appear" and should solve the problem; or
(b) Calculate a vector of deterministic random numbers instead of a single value (logically, a larger vector based on how big updateFactor is?), and send/save those with the item.

Either way, the key should be that, frankly, reusing the same deterministicRandomization value is a bug, since it results in distinctly non-random behavior.

Random error

I'm getting this error while I'm in the assembly table gui at random intervals. Not sure if it has anything to do with it or if it just happened to occur then:

init:
Deleting: C:\Users\Alex\Downloads\Minecraft\mcp62 - Buildcraft\bin\built-jar.properties
deps-jar:
Updating property file: C:\Users\Alex\Downloads\Minecraft\mcp62 - Buildcraft\bin\built-jar.properties
compile:
run:
27 achievements
182 recipes
LWJGL Version: 2.4.2
Ιουν 19, 2012 12:22:34 ΠΜ cpw.mods.fml.common.FMLCommonHandler beginLoading
INFO: Attempting early MinecraftForge initialization
Ιουν 19, 2012 12:22:34 ΠΜ cpw.mods.fml.common.FMLCommonHandler beginLoading
INFO: Completed early MinecraftForge initialization
2012-06-19 00:22:34 [INFO] Forge Mod Loader version 2.2.48.135 for Minecraft 1.2.5 loading
2012-06-19 00:22:34 [INFO] Loading mods from C:\Users\Alex\Downloads\Minecraft\mcp62 - Buildcraft\jars\mods
2012-06-19 00:22:34 [INFO] Forge Mod Loader has loaded 8 mods
WARNING: Found unknown Windows version: Windows 7
Attempting to use default windows plug-in.
Loading: net.java.games.input.DirectAndRawInputEnvironmentPlugin
Failed to create rumblers: Failed to create effect (0x80004001)

Failed to create rumblers: Failed to create effect (0x80004001)

MinecraftForge v3.3.7.135 Initialized
2012-06-19 00:22:34 [INFO] MinecraftForge v3.3.7.135 Initialized
Starting BuildCraft 3.x SVN r2
Copyright (c) SpaceToad, 2011-2012
http://www.mod-buildcraft.com
2012-06-19 00:22:34 [INFO] Forge Mod Loader load complete, 8 mods loaded

Starting up SoundSystem...
Initializing LWJGL OpenAL
(The LWJGL binding of OpenAL. For more information, see http://www.lwjgl.org)
OpenAL initialized.

Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
Detected pipe with unknown key. Did you remove a buildcraft addon?
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:357)
at java.util.Properties.getProperty(Properties.java:951)
at java.util.Properties.getProperty(Properties.java:970)
at net.minecraft.src.buildcraft.core.utils.Localization.get(Localization.java:47)
at net.minecraft.src.buildcraft.core.utils.StringUtil.localize(StringUtil.java:6)
at net.minecraft.src.buildcraft.core.ItemBlockBuildCraft.getItemDisplayName(ItemBlockBuildCraft.java:23)
at net.minecraft.src.ItemStack.getItemNameandInformation(ItemStack.java:483)
at net.minecraft.src.GuiContainer.drawScreen(GuiContainer.java:109)
at net.minecraft.src.EntityRenderer.updateCameraAndRender(EntityRenderer.java:972)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:873)
at net.minecraft.client.Minecraft.run(Minecraft.java:750)
at java.lang.Thread.run(Thread.java:722)
2012-06-19 00:22:48 [SEVERE] A critical error has occurred.
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:357)
at java.util.Properties.getProperty(Properties.java:951)
at java.util.Properties.getProperty(Properties.java:970)
at net.minecraft.src.buildcraft.core.utils.Localization.get(Localization.java:47)
at net.minecraft.src.buildcraft.core.utils.StringUtil.localize(StringUtil.java:6)
at net.minecraft.src.buildcraft.core.ItemBlockBuildCraft.getItemDisplayName(ItemBlockBuildCraft.java:23)
at net.minecraft.src.ItemStack.getItemNameandInformation(ItemStack.java:483)
at net.minecraft.src.GuiContainer.drawScreen(GuiContainer.java:109)
at net.minecraft.src.EntityRenderer.updateCameraAndRender(EntityRenderer.java:972)
at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:873)
at net.minecraft.client.Minecraft.run(Minecraft.java:750)
at java.lang.Thread.run(Thread.java:722)
2012-06-19 00:22:48 [SEVERE] 8 mods loaded
Minecraft Forge 3.3.7.135
FML v2.2.48.135
Forge Mod Loader version 2.2.48.135 for Minecraft 1.2.5
mod_BuildCraftBuilders : Available (src)
mod_BuildCraftCore : Available (src)
mod_BuildCraftDevel : Available (src)
mod_BuildCraftEnergy : Available (src)
mod_BuildCraftFactory : Available (src)
mod_BuildCraftSilicon : Available (src)
mod_BuildCraftTransport : Available (src)
mod_MinecraftForge : Available (src)

Stopping!

SoundSystem shutting down...
Author: Paul Lamb, www.paulscode.com

BUILD SUCCESSFUL (total time: 31 seconds)

Placing builder on an unlit green marker corrupts world

Crashes with saving chunks. I had to mcedit the builder out to get the world back.

java.util.NoSuchElementException
at java.util.LinkedList$ListItr.next(Unknown Source)
at buildcraft.builders.TileBuilder$PathIterator.(TileBuilder.java:72)
at buildcraft.builders.TileBuilder.iterateBpt(TileBuilder.java:347)
at buildcraft.builders.TileBuilder.a(TileBuilder.java:432)
at yu.d(SourceFile:76)
at dd.a(SourceFile:144)
at ki.a(PlayerController.java:139)
at gb.a(GuiContainer.java:296)
at gb.clickSlot(GuiContainer.java:302)
at codechicken.nei.NEIController.replacementClickHandler(NEIController.java:110)
at gb.a(GuiContainer.java:266)
at vp.f(SourceFile:122)
at gb.f(GuiContainer.java:425)
at vp.i(SourceFile:110)
at gb.i(GuiContainer.java:419)
at net.minecraft.client.Minecraft.k(Minecraft.java:1561)
at net.minecraft.client.Minecraft.x(Minecraft.java:819)
at net.minecraft.client.Minecraft.run(Minecraft.java:747)
at java.lang.Thread.run(Unknown Source)
--- END ERROR REPORT fd83dec4 ----------

Autarchic Gates

Braking a pipe that has an autarchic gate on it, gives you two normal gates.

Striping a pipe that has an autarchic gate on it, gives you a normal gate.

Quarry Not Fixing Pipes in 3.1.5

When I break the orange pipes surrounding the quarry, nothing happens. They break, but do not give a drop(they did in previous versions), and the quarry continues to work, no problem. Any ideas?

When Lasers are warming up

java.lang.Exception
at buildcraft.core.EntityLaser.d(EntityLaser.java:137)
at nn.(Entity.java:213)
at buildcraft.core.EntityLaser.(EntityLaser.java:39)
at buildcraft.core.EntityEnergyLaser.(EntityEnergyLaser.java:28)
at buildcraft.silicon.TileLaser.aim(TileLaser.java:149)
at buildcraft.silicon.TileLaser.n_(TileLaser.java:59)
at xd.n(World.java:2079)
at net.minecraft.client.Minecraft.k(Minecraft.java:1867)
at net.minecraft.client.Minecraft.x(Minecraft.java:822)
at net.minecraft.client.Minecraft.run(Minecraft.java:750)
at java.lang.Thread.run(Unknown Source)

Only happens when the assembly table lasers are, going from Cold to Hot stages, once laser hits Blue the error stops.

Gate stripping

When you strip a gate, the information about what was set in the gate don't get removed.
You can exploit this by using e.g. an iron gate, putting a on redwire signal, removing the iron gate and using a normal gate with a redwirte signal event.

item router

It would be great if i can route items in a pipe depeding on the redstone is turned of orr not.
For example i can improve the iron transport pipe with a gate, and i can choose if blue signal is on, route to left, if blue is off, route to right.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.