vexatos / computronics Goto Github PK
View Code? Open in Web Editor NEWA ComputerCraft/OpenComputers addon mod.
A ComputerCraft/OpenComputers addon mod.
Doesn't even need to be connected.
There's supposed to be a tape.lua that gets loaded into the filesystem of an OC computer when a tape drive is connected. Ping @fnuecke for guidance with the API!
@Vexatos you need to use base64 before creating string.
Right now the distance to a hit is based on the plain coordinates of the block that was hit. This means regardless of where a ray hits a block, the distance will always be the same. It'd be nice to get a more detailed distance to allow capturing the structure of the block, ideally using the block's collision bounds.
Based on my experiences from implementing the robots' picking logic, the World.clip(Vec3 origin, Vec3 target)
method can take care of the heavy lifting for blocks, but AFAIK it doesn't capture entities (e.g. the player). It might be worth using that as the 'base pass' nonetheless, to avoid reimplementing stuff already provided by Minecraft, and then running an addition collision check for entities (raytracing of entities is only done on the client by Minecraft itself, AFAIK, using OpenGL picking).
The downside of clip
is that transparent blocks (like glass) will still need special handling, in case their opacity should be taken into consideration. Things to look out for: clip
can hit the camera itself, so the origin would have to be offset accordingly.
Anyway, just some food for thought, in case this isn't planned already anyway :-)
I am not sure whether distanceUp() and distance() have the same problems, but it seems likely. Have fun!
And yes, this totally is a duplicate of #22.
Tape drives should have a higher range, but after what is the current range, a lowpass filter would be applied (like a real tape would do)
Reason: To annoy my ingame neighbors with this: http://www.youtube.com/watch?v=vLSG98kRrZU
It is currently broken. Appears to be packets not being sent?
When a tape is written and pulled out of a tape drive, it loses all stored data.
Vexatos, you fixed the electric feeder succesfully, but the electric tracks are still not working as peripheral.
Title sums it up, here's the crash report from breaking the cipher block: http://pastebin.com/qBrhNz2j
Crash from opening the block it is pretty similar but I can post it if required.
It was in single player, tried on a fresh world and it still happened.
AsieLib-1.7.10-0.3.1
Computronics-1.7.10-1.1.0
We could parse MapWriter files, if present: https://github.com/BevoTechPack/BevoTechPack/blob/904af760775df0f36b75ef69d8c0ebdadbaf6460/FULL/config/MapWriterBlockColours.txt
Current to-do list. More suggestions are appreciated.
Title says it all,
Person talks in area where a chatbox is not connected to a computer
gets disconnected with the error being "Disconnected from server"
Will do once OC 1.4 is in beta.
Basically, camera.distanceDown() always returns -1, and camera.distance() as well.
Blame SKS and skye for this.
Basically, guns using electricity (and some kind of ammo) to do damage.
Ideas so far:
Any more ideas?
Dimensional Doors integration, allow opening/closing a rift on demand, if possible, also allow reading all the blocks inside the dimension. Recipe should require some doors to make up for the lack of a physically required door.
To-do:
What the hell happened here? Time to do some sleuthing and repair work.
TTS support has been done before by a few mods, but none I care for too much - Mad Science uses a few canned phrases for its speech block, whereas Twisted is open-ended but its mechanics are based on abusing rabbits. The speech engine FreeTTS (which Twisted uses) allows speech synthesis. Would it be possible to get a speech block or card?
Exactly as it says. Try to use turtle.equipLeft() or turtle.equipRight() with a Particle Card, and it returns the error "Not a valid upgrade".
Hello,
When I try to open minecraft, my game has crashed :/
And when I delete Computronics of my mod folder, there is no problem :(
Forge version: 10.13.0.1208
Asie Lib 0.3.1 (1.7.10)
Computronics 1.0.1 (1.7.10)
Computer Craft 1.64 pr4
Railcraft 9.3.1.0 (1.7.10)
Crash report here:
https://www.dropbox.com/s/nutd1xd24gk5x8i/crash-2014-09-14_19.02.05-client.txt?dl=0
Thanks in advance ;)
Calling @asiekierka because this is a weird issue.
I found out that the Waila integration in Computronics is not working, i.e. only the most recently placed block properly shows the text it should. This is due to the fact that apparently the NBT tag inside the data accessor is not being updated which causes the x, y and z values to be incorrect when the Waila data accessor checks whether the NBT tag is valid.
Now the weird part: The Digital Detector is working. The block is extending BlockPeripheral, thus the Waila provider gets registered. It is, however, the only Tile Entity not extending TileEntityPeripheralBase, so there needs to be an issue somewhere in TileEntityPeripheralBase, TileMachine or TileEntityBase, but I have no clue where. Any help would be appreciated.
Calling @ProfMobius, maybe he knows what could be causing this strange behaviour or at least can tell us exactly how the Tile Entity and NBT Compounds are being constructed.
Hi,
When playing around with Computronics in my modpack I found that it does not work with the newer versions of OpenComputers.
Whenever I place a creative or nomal chatbox, this error appears:
http://pastebin.com/T99pAVBv
And it created another message every 40-50 seconds in the console:
http://pastebin.com/NYD641zs
Attempting to use the chatbox or iron noteblock via a computer gives this response:
lua> playNote(1, 1)
stdin:1: attempt to call global 'playNote' (a nil value)
stack traceback:
stdin:1: in main chunk
[C]: in function 'xpcall'
kernel:116: in function 'xpcall'
/bin/lua.lua:44: in main chunk
(...tail calls...)
Startup log:
http://pastebin.com/vaA46Yy9
Forced crash log:
http://pastebin.com/t9KvAVgq
Client info:
Forge 9.11.1.965
Opencomputers 1.2.7 and 1.2.9
Opencomponents 0.1.1.37, also tested without.
setRoutingTable("AND\nDest=\"Pastryfork\"\nOwner=\"asiekierka\"")
Of course all of that supporting Computercraft and OpenComputers, maybe even NedoComputers, if possible.
This proposal will be expanded as I get more ideas. Feel free to post suggestions down below!
For real.
an interesting idea I had
add to Computronics a beacon driver
which lets you use beacons as high-range wireless transmitters
where the range depends on the type of blocks beneath it
and the amount of
Was totally my idea.
well, if you place it next to a screen it will stop displaying stuff. Even after removeing the camera and rebooting the computer it still dont works. To fix it you need to break all screen blocks(for multi-block ones) an put them back.(without camera)
Attempt to open gui or break Cipher Block results in the below:
[17:55:22] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.NoSuchMethodError: pl.asie.computronics.tile.TileEntityPeripheralBase.getStackInSlot(I)Lnet/minecraft/item/ItemStack;
at pl.asie.computronics.tile.TileCipherBlock.func_70301_a(TileCipherBlock.java:323) ~[TileCipherBlock.class:?]
at net.minecraft.inventory.Slot.func_75211_c(Slot.java:67) ~[aay.class:?]
at net.minecraft.inventory.Container.func_75138_a(SourceFile:64) ~[zs.class:?]
at net.minecraft.inventory.Container.func_75132_a(SourceFile:53) ~[zs.class:?]
at cpw.mods.fml.common.network.internal.FMLNetworkHandler.openGui(FMLNetworkHandler.java:88) ~[FMLNetworkHandler.class:?]
at net.minecraft.entity.player.EntityPlayer.openGui(EntityPlayer.java:2208) ~[yz.class:?]
at pl.asie.lib.block.BlockBase.func_149727_a(BlockBase.java:254) ~[BlockBase.class:?]
at pl.asie.computronics.block.BlockCipher.func_149727_a(BlockCipher.java:50) ~[BlockCipher.class:?]
at net.minecraft.server.management.ItemInWorldManager.func_73078_a(ItemInWorldManager.java:376) ~[mx.class:?]
at net.minecraft.network.NetHandlerPlayServer.func_147346_a(NetHandlerPlayServer.java:554) ~[nh.class:?]
at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:60) ~[jo.class:?]
at net.minecraft.network.play.client.C08PacketPlayerBlockPlacement.func_148833_a(SourceFile:9) ~[jo.class:?]
at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212) ~[ej.class:?]
at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:165) ~[nc.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:659) ~[MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547) ~[MinecraftServer.class:?]
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:111) ~[bsx.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685) [?:?]
Feature request for more ciphers.
Have an additional slot in the Cipher Block for "cores". Cores determine which cipher is to be used.
Maybe even add some sort of API so that modders can add their own Ciphers?
lua> =component.tape_drive.getState()
"pl.asie.computronics.tile.TapeDriveState@cafebabe"
* Vexatos adds Bacon transceiver to Computronics
<ShadowKatStudios> Vexatos: We need something that scans stuff into a large thing of binary (like, 64KiB of binary) and can then re-build items based on that binary and a load of power.
<Vexatos> SKS: A teleporter?
<Vexatos> Like, seriously?
<ShadowKatStudios18> Could be used as one, but I was thinking a replicator.
<Vexatos> Then You will need me to check how much kB an ItemStack noms
<Vexatos> the larger the NBT data, the larger the ItemStack
<Vexatos> so I could indeed store an ItemStack as binary data inside OC
<Vexatos> And then rebuild using x amount of power per byte
<Vexatos> How does that sound, SKS
<ShadowKatStudios18> That sounds even better than what I was imagining.
<ShadowKatStudios18> Could it possibly teleport people?
<Vexatos> What did you imagine
<ShadowKatStudios18> I was just imagining every type of item had 64KiB of binary that could be used to create a new one of that item.
<Vexatos> SKS: Storing an ItemStack in data is easy
<Vexatos> copy item
<Vexatos> delete item from world
<Vexatos> on rebuild delete data after placing item in world
<Vexatos> A player is harder
<Vexatos> you cannot delete a player from the world
<Vexatos> as long as it is online
<ShadowKatStudios18> Trues, trues.
<Vexatos> You see my problem
<Vexatos> you cannot possible indefinitely store the player data
<Aucarndia18> you want to send a player over a modem?
<ShadowKatStudios18> What about if every player had a hash, and when that hash was used it could teleport the player?
<Vexatos> Now I need to check whether there is a way in Java to see how large an object is
<ucarndia> Vexatos: .length?
<Vexatos> SKS: for a plain x energy times y distance?
<ShadowKatStudios18> x items in inventory maybe?
<ShadowKatStudios18> wait
<Aucarndia18> i like the inventory idea
<ShadowKatStudios18> z items in inventory maybe?
<Aucarndia18> ? why z
<ShadowKatStudios18> Because you had x and y
<Vexatos> and plus ร amount of energy for a transdimensional journey
<ShadowKatStudios18> I was re-defining x and that would derp
<ShadowKatStudios18> Oooh, and if you don't have enough energy, it would eat items from your inventory?
<Aucarndia18> so, a base level of energy, and for every inventory item, and for distance
<Aucarndia18> no
<Aucarndia18> that would be bad
<Aucarndia18> and awful
<ShadowKatStudios18> It sounded like a cool idea, but OK.
Apparently throws Java exceptions! Should be a quick thing to fix, since the fix was already done with regular Cameras.
I tried to delete config file (it doesn't regenerate anymore) so I don't know what could cause this :/
Just an average of the blocks color(stone = 0x888888, redstone = 0xaa0000).
Colors for most vanilla/computer/computronics stuff would be included, additional colors could be added in the config.
Some things would have dynamic colors(eg color lamp, sky)...
Techokami: Walkman a.k.a. Portable Tape drive. now.
Vexatos: yes
Techokami: now.
now.
OpenComputers has smashed around the API once again with version 1.4, which is in open alpha. Updating Computronics to use the latest APIs shouldn't be too much of a hassle, just that there's a /lot/ more stuff than when I first jumped on!
This issue is mainly a reminder to myself about this.
Railcraft just got (literaly few minutes ago) updated to 9.4.0.0, but now the game crashes on load. When i remove Computronics everything works fine.
I know that you are not that fast to make an update when other mods update. So I am here just to let you know that this happened.
Anyway...
Crashlog: http://pastebin.com/qRvLe4AX
Forge: 10.13.1.1232
Computronics: 1.2.0
Railcraft: 9.4.0.0
:)
Someone wrote me a troll program: http://pastebin.com/5iEizNTC
After breaking the iron note block, it kicked me every time I tried to chat.
If incorrectly reporting it to you, I apologize.
@Vexatos you brought up the issue on IRC earlier that the environment for the battery buffers isn't created if the batter buffer is placed after the adapter. From what I can tell, that's because you perform the check as to whether the driver "works" in createEnvironment
. Don't. Do it in worksWith
(override it). That should fix it, since the driver will not be selected in the first query, but it will be selected in the second, meaning it should properly update.
Various triggers and actions for Buildcraft gates once @asiekierka tells me BuildCraft is stable enough to do so. Suggestions are appreciated.
An old todo from the Computronics wiki.
https://gist.github.com/Painstouch/c1c598761fde6879a7aa
Uh oh... Just updated to the new 1.0.1 version and 9.3.0.1 of RC
Waiting for BuildCraft to add the necessary APIs in 6.1.0 now.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.