This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
SquidDev's profile picture

[MC 1.8.9-1.11.2] CC Tweaks

Started by SquidDev, 15 February 2015 - 01:58 PM
SquidDev #1
Posted 15 February 2015 - 02:58 PM
CC Tweaks is a collection of modifications to Computer Craft. Some ideas are from posts in the suggestions forums, others are just things I thought would be cool at the time.
Important!
CCTweaks is a core mod and makes modifications to the internals of ComputerCraft. Whilst the mod is thoroughly tested there may be issues. If you encounter any bugs report them here and not on the ComputerCraft issue tracker. This will ensure a faster response time and will ensure you do not frustrate DanTwoHundred.
Thanks :)/>!

Minecraft 1.10.2/1.11.2?
Whilst there isn't a stable build of ComputerCraft for Minecraft 1.10.2 and 1.11.2, there is support for both on the repository. You can download builds of ComputerCraft for 1.10.2 and 1.11.2 from the unofficial CC build server.

Features
SpoilerProgramming (More up-to-date list here)
  • Custom computer timeout
  • Whitelist debug API
  • Fix the binary strings (for fs, http, rednet and os.queueEvent)
  • TCP socket API (socket)
  • Compression API (data)
  • LuaJC compiler (compiles Lua code to Java for performance boost)
  • Cobalt VM (reentrant fork of LuaJ)
    • Custom termination handler
    • Several bugs fixed (any object error messages, string pattern matching, number format strings)
  • Return HTTP handle on failures
  • Allow getting headers from HTTP responses
  • API for adding custom APIs
  • Custom ROM for computers
Turtles
  • Blacklist turtle verbs - no more turtle.inspect if you don't like it.
  • Turtle refuel using RF/EU
  • Turtle tool host - use any tool with turtles
  • Turtles named dinnerbone or Grumm turn upside down [1.7.10 only]
Networking
  • Networking API: add custom network components
  • Multidimensional modems (connect wired networks together)
  • Full block modems (connect to peripherals on 6 sides)
  • Multipart support
  • Item transport through OpenPeripheral [1.7.10 only]
  • Beautiful network visualiser
More
  • Computer upgrades - convert normal computers to advanced!
  • Debug Wand - add the debug API to any computer
  • Monitors emit light
  • Pocket computer peripherals [1.7.10 uses Peripherals++, 1.8+ is built in]

Downloads
You can download from Curse.
The source is under the MIT license, and is on GitHub.

Bugs, issues, feature requests
Feedback is always welcome, however I would love it if this could go on the issues section of the GitHub repo instead. It just is easier for me to track progress on things.
Edited on 30 December 2017 - 08:58 PM
Lignum #2
Posted 15 February 2015 - 04:25 PM
Ah very nice. I tried out LuaJC on a raycaster I wrote a while back, where you can really notice the difference. It feels a lot smoother and there's no flickering when turning. Well done!
Geforce Fan #3
Posted 18 February 2015 - 02:49 AM
I am speechless
These all sound uber cool. Can't wait to try to the jc compiler
edit: I have no idea how to install this, and the instructions have confused me more. Can you elaborate?
Edited on 18 February 2015 - 01:59 AM
SquidDev #4
Posted 18 February 2015 - 08:59 AM
edit: I have no idea how to install this, and the instructions have confused me more. Can you elaborate?

This is just a normal Forge mod, so you should just drop it into the mods folder. You will need to edit the config settings to enable the LuaJC compiler. You can edit the file or do it in Minecraft:
  • On the main menu, click mods
  • Scroll down until you find CC-Tweaks (you don't want the one which is called CCTweaks ASM Transformer)
  • Select it and click config
  • Click 'Computers'
  • Set LuaJC to true.
Really glad that someone likes it though :)/>
Edited on 18 February 2015 - 08:02 AM
Geforce Fan #5
Posted 18 February 2015 - 11:39 PM
derp it's for 1.7
I'll check it out later. I develop using a modpack currently.
Nokiyen #6
Posted 27 February 2015 - 10:34 AM
Hello! I'm very interested in your mod, especially LuaJC!

But, I might have found a bug, so I report it here.
I'm sorry if it is already known for you…


Explanation: Crashed when calling turtle.refuel().
Version: CC Tweaks 0.1.1, ComputerCraft 1.73, Forge 1.7.10-10.13.2.1230
Reproduction Step: Just calling turtle.refuel() command.
SquidDev #7
Posted 27 February 2015 - 05:55 PM
Hello! I'm very interested in your mod, especially LuaJC!

But, I might have found a bug, so I report it here.
I'm sorry if it is already known for you…


Explanation: Crashed when calling turtle.refuel().
Version: CC Tweaks 0.1.1, ComputerCraft 1.73, Forge 1.7.10-10.13.2.1230
Reproduction Step: Just calling turtle.refuel() command.

Hmmm. Can I see your crash log. I'm pretty sure I know where it crashed, I just don't know why. I'll try to fix this now.

Fixed in CC-Tweaks 0.1.2. That was a really bad mistake on my part.

Thanks for taking an interest though! :)/>
Edited on 27 February 2015 - 06:12 PM
SquidDev #8
Posted 16 March 2015 - 05:15 PM
There have been a couple of updates since I've last posted, most of them are minor fixes but there are some larger changes:

Debug Wand
This enables you to inject the debug API into any computer whilst it is still running. You can simply shift-right click on a computer to activate use it. This is not enabled by default so you will have to pop into config to change it.

Computer Upgrade
Nothing much new here, just that recipes using it now show up in NEI.

LuaJC
This is the big one. The main change is that string.dump is now implemented so you can have lots of fun with bytecode! I would really like some feedback from people about this, bugs or optimisations I could use, there is still room for improvement I'm sure.
exayden #9
Posted 31 March 2015 - 10:15 AM
Like Nokiyen, i've got the same bug :

Version : ComputerCraft1.65, CCTweaks-1.7.10-0.1.4.1
Log : java.lang.NoSuchMethodError: net.minecraft.inventory.IInventory.getStackInSlot(I)Lnet/minecraft/item/ItemStack;
at dan200.computercraft.shared.turtle.core.TurtleRefuelCommand.execute(TurtleRefuelCommand.java)
at dan200.computercraft.shared.turtle.core.TurtleBrain.updateCommands(TurtleBrain.java:786)
at dan200.computercraft.shared.turtle.core.TurtleBrain.update(TurtleBrain.java:99)
at dan200.computercraft.shared.turtle.blocks.TileTurtle.func_145845_h(TileTurtle.java:274)
at net.minecraft.world.World.func_72939_s(World.java:1939)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:489)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:636)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)

Keep up the good work ;)/>
SquidDev #10
Posted 31 March 2015 - 05:44 PM
-snip-

Sorry, I've only just seen this. I'll try to get a fix out within the next couple of hours. It shouldn't take too long. Thanks!

Fixed as of 0.1.4.2. This versioning is getting silly now.
Edited on 31 March 2015 - 05:18 PM
ElvishJerricco #11
Posted 31 March 2015 - 08:13 PM
Can't believe I haven't seen this yet. This is great, Squid.

Is it possible for you to fix the string bug that disables binary downloads? I shed some light on the subject a while back, but didn't get any response.
SquidDev #12
Posted 31 March 2015 - 10:00 PM
Can't believe I haven't seen this yet. This is great, Squid.

Is it possible for you to fix the string bug that disables binary downloads? I shed some light on the subject a while back, but didn't get any response.

Thanks! There are still some bugs with LuaJC but for the most part it works. I've got a pretty good interface for overwriting classes so this shouldn't be too hard. I'll have a go tomorrow.
zurbo #13
Posted 04 April 2015 - 03:55 AM
Hello,
I'm really interested in this mod and I would like to know if I could share it in my (public) modpack ? and if yes what should i do for it ?
SquidDev #14
Posted 04 April 2015 - 08:37 AM
Hello,
I'm really interested in this mod and I would like to know if I could share it in my (public) modpack ? and if yes what should I do for it ?

You can. I'd love people to use this! I'm not really sure how much it would work but it should be fine. Most things are disabled by default so you will probably want to enable some things. However I would say the only things that are worth putting in a modpack are flux-refuel and Computer Upgrade, most of the features are 'dev tools'.
TheOddByte #15
Posted 04 April 2015 - 09:30 PM
I really like this mod, as it speeds up the computers a lot.
Was about to write alot instead of a lot
SquidDev #16
Posted 25 April 2015 - 09:41 AM
I thought I'd post a little spoiler about an upcoming feature. ElvishJerricco and I have been working on this for about 2 weeks now and there are some more features we would like to add, but I'm pretty excited about this one:



CC-Tweaks 0.2 rewrites a large portion of the networking API to provide some pretty nifty features like this. It isn't really ready for use yet, though most of it seems pretty stable.
Edited on 25 April 2015 - 07:41 AM
Bomb Bloke #17
Posted 25 April 2015 - 10:58 AM
Well, I see what I'm assuming are facades, and two modems within the one "block". Anything I'm missing?
SquidDev #18
Posted 25 April 2015 - 11:21 AM
Well, I see what I'm assuming are facades, and two modems within the one "block". Anything I'm missing?

We've got full multipart support for vanilla ComputerCraft cables. I know it doesn't look like much but it required a rewrite of almost all of CC's networking.
Bomb Bloke #19
Posted 25 April 2015 - 11:42 AM
I notice you've got those two cables divided by a panel; reckon it'd be feasible to make cables disconnectable with a wrench?
SquidDev #20
Posted 26 April 2015 - 04:23 PM
I notice you've got those two cables divided by a panel; reckon it'd be feasible to make cables disconnectable with a wrench?

It would be possible with multipart cables - but not normal ones which could be confusing. I'm considering adding an 'advanced cable' which adds functionality like that as we don't have to hack as much of CC's original cable. This could also have extended message reach or something. I'll add it, I'm just trying to find the best way to. The todo list, whilst not massive, has some pretty big features on it which could take some time.
Edited on 26 April 2015 - 02:23 PM
Lignum #21
Posted 26 April 2015 - 04:28 PM
I'm considering adding an 'advanced cable' which adds functionality like that as we don't have to hack as much of CC's original cable.

Perhaps you could give it the ability to send messages over unloaded chunks? While the LAN cable in immibis peripherals does this, it requires a custom modem.
SquidDev #22
Posted 26 April 2015 - 04:36 PM
Perhaps you could give it the ability to send messages over unloaded chunks? While the LAN cable in immibis peripherals does this, it requires a custom modem.

I'm currently implementing a wireless-bridge. Think AE's quantum link chamber but for wired networks - you can place two down and bind them and the two networks can access each other's peripherals (as long as their chunks are loaded). This isn't identical to immibis' cables but the end result is pretty similar.
Edited on 26 April 2015 - 02:37 PM
SquidDev #23
Posted 13 May 2015 - 05:51 PM
Another two weeks of work and another spoiler!



For those interested:
  • The yellow block is a 'Network Bridge', as described above this is a way of linking two networks together. There are no cables going between the furnaces and the computer. It has infinite range and works between dimensions too.
  • The grey block is a full block modem - a mixture of a peripheral proxy and a modem it allows you to connect to all 6 sides at once, even if they aren't full blocks.
  • There are four modems and a network bridge connected to those furnaces. I'm using OpenPeripheral to wrap them as peripherals.
  • ElvishJerricco has added an amazing feature allowing peripherals to access the entire network. We've also added OpenPeripheral support, so the computer pulls items out of the chest and pushes them into the furnaces, then pushes the result back into the chest.
Edited on 13 May 2015 - 03:52 PM
Bomb Bloke #24
Posted 14 May 2015 - 01:29 AM
The yellow block is a 'Network Bridge', … It has infinite range and works between dimensions too.

… and presumably has a price-tag to match? :blink:/>

The grey block is a full block modem - a mixture of a peripheral proxy and a modem it allows you to connect to all 6 sides at once, even if they aren't full blocks.

OpenPeripheral's Peripheral Proxy, at least last I tried it, was somewhat bugged in that if you hooked up a peripheral then broke that peripheral, even if you re-placed it the proxy would malfunction (acting as if the peripheral was still there in its last-seen state) until you broke and re-replaced the proxy too. Might be worth testing.

I'm also curious what this does for the cabling length cap. Normally it's 255 segments, does the full-block modem act as a repeater of some sort?

ElvishJerricco has added an amazing feature allowing peripherals to access the entire network. We've also added OpenPeripheral support, so the computer pulls items out of the chest and pushes them into the furnaces, then pushes the result back into the chest.

So you're saying that where OP would usually restrict you to pushing/pulling according to a direction such as east/north/up/whatever, this opens up the option of specifying chest_0/furnace_2/whatever?
ElvishJerricco #25
Posted 14 May 2015 - 02:20 AM
Also worth noting: We're in the process of re-rewriting the networking infrastructure. The hope is the make it simpler to understand and work with. But the end goal is an API for networking, allowing any mod developer to create their own kind of cables / network links, or to make any other potential kind of network device.
ElvishJerricco #26
Posted 14 May 2015 - 02:28 AM
… and presumably has a price-tag to match? :blink:/>

We haven't done much balancing yet =P We'll get to that.

OpenPeripheral's Peripheral Proxy, at least last I tried it, was somewhat bugged in that if you hooked up a peripheral then broke that peripheral, even if you re-placed it the proxy would malfunction (acting as if the peripheral was still there in its last-seen state) until you broke and re-replaced the proxy too. Might be worth testing.

CC's network handling is generally kinda bleh and buggy. Not surprising that the peripheral proxy is bleh and buggy. Our solutions should prove more reliable with the more reliable networking.

So you're saying that where OP would usually restrict you to pushing/pulling according to a direction such as east/north/up/whatever, this opens up the option of specifying chest_0/furnace_2/whatever?
Yes we have two new IInventory methods, (pullItemIntoSlotRemote, pushItemIntoSlotRemote). These reach into the cable network and find remote peripherals to attempt to push and pull from. It might prove a bit to overpowered since its free item teleportation for a cheap cost that's highly automatable… But it's cool =P
SquidDev #27
Posted 07 June 2015 - 09:38 PM
We've made some more progress on networks… I got distracted however…



No. I can't guarantee this will actually be in CCTweaks. I'm just putting this here because it was kinda amusing.
Edited on 07 June 2015 - 07:38 PM
dramondraco #28
Posted 08 June 2015 - 01:57 AM
Forgive me for asking, but how exactly do you make the turtle refuel using RF? I placed a resonant flux capacitator in the turtle, went to lua, and typed "turtle.refuel()", but all it returned was "Item not combustible." Is there a special command for this? On my second test, I tried moving the turtle, without any fuel, and the resonant flux capacitator inside of it, but it returned "Out of Fuel." Can you tell be how to make the turtle consume RF?
Thanks!
Bomb Bloke #29
Posted 08 June 2015 - 04:11 AM
According to their wiki, turtle.refuel() should do the job. Maybe check that config file it mentions?
SquidDev #30
Posted 08 June 2015 - 07:51 AM
-snip-
Hmmm, I've had no problems with this so everything should work. :S If you turn 'debug mode' on (Misc -> debug) and post your logs after trying again I should be able to find out what is going wrong.

According to their wiki, turtle.refuel() should do the job. Maybe check that config file it mentions?
It is on by default in the Config, but do also check your config.

Thanks.
SquidDev #31
Posted 09 June 2015 - 05:49 PM
Well, more slightly random features:



I realise those images are slightly askew. Sorry.

The tool host effectively allows you to use any tool with a turtle. At the moment only attacking is supported, though I'm looking at a good way to implement digging too. It uses the current slot in your inventory as the tool and does consume durability - though also allows enchantments and Tinker's tools. Slightly OP so there is some balancing to do.
Edited on 09 June 2015 - 03:50 PM
Bomb Bloke #32
Posted 10 June 2015 - 01:15 AM
Mining with tinker's tools would be a laugh, some of those can dig out multiple blocks at a time… give a turtle a crafting table and maybe even some sort of forge upgrade, and I suppose it could even repair its tools as it goes! :)/>
dramondraco #33
Posted 10 June 2015 - 01:35 AM
According to their wiki, turtle.refuel() should do the job. Maybe check that config file it mentions?

I looked at my configs, but it says that flux refuel is enabled, like this:
  • # Enable refuel from Redstone Flux items [default: true]
  • B:"Flux refuel"=true.

I don't know what's wrong. I'm using CCTweaks-1.7.10-0.1.4.2. Here is my full config.

Once again, thanks in advance for helping me.
SquidDev #34
Posted 10 June 2015 - 08:23 AM
I don't know what's wrong. I'm using CCTweaks-1.7.10-0.1.4.2. Here is my full config.
Once again, thanks in advance for helping me.

Right, this is a major bug in my end. I fixed it a while back for the 0.2 prerelease so you'll probably have to work with that for now. It is pretty stable so everything should be OK. Sorry :(/>.
dramondraco #35
Posted 11 June 2015 - 11:43 PM
Forgive me for asking so many questions, but when I downloaded CCTweaks-1.7.10-0.2-pr1 and tried running Minecraft, it gave me this error. I think it has some dependencies on Open Peripherals, which I don't have.
SquidDev #36
Posted 12 June 2015 - 07:52 AM
Forgive me for asking so many questions, but when I downloaded CCTweaks-1.7.10-0.2-pr1 and tried running Minecraft, it gave me this error. I think it has some dependencies on Open Peripherals, which I don't have.

Ahhh, I fixed that a while back and never updated the release. Sorry :(/>. If you redownload it should be fixed.

Don't worry about questions - the more bug reports I get the better!
biggest yikes #37
Posted 12 June 2015 - 02:23 PM
Any chances of an HTTP server block?
Wojbie #38
Posted 12 June 2015 - 02:28 PM
Any chances of an HTTP server block?
That sounds like a bad idea. I don't see how it would work and it could become a security hole for the server itself.
SquidDev #39
Posted 12 June 2015 - 03:05 PM
Any chances of an HTTP server block?

As in the user can open a socket on the server and so external people can connect. That doesn't count as a security hole - it just seems a really bad idea. I've got an todo list for some stuff I want to do with HTTP, though I don't think a server block in the form I imagine it would be a good idea.
Edited on 13 June 2015 - 06:06 AM
biggest yikes #40
Posted 12 June 2015 - 08:35 PM
I guess sort of like Someluigi's Peripherals, except instead of an event being sent, it accesses a file on the computer (presumably the output could be modified by a lua script).
Edited on 12 June 2015 - 06:40 PM
HydroNitrogen #41
Posted 13 June 2015 - 04:15 PM
Hey man! Nice mod! I included it in my modpack "Mega Computer Pack".

I have set your name in the credits and stuff ;)/>


Modpack link: http://www.technicpack.net/modpack/mega-computer-pack.668983
HydroNitrogen #42
Posted 13 June 2015 - 04:25 PM
My modpack crashes on launch!

If you could see whats wrong with the mod: here is the error log.

Until its fixed I will remove the mod from my modpack ;-)

Thanks to everybody who sees what is causing the error.
SquidDev #43
Posted 13 June 2015 - 04:38 PM
My modpack crashes on launch!

If you could see whats wrong with the mod: here is the error log.

Yeah, this was a pretty stupid mistake of mine a while back. It should be fixed in the 0.2 prerelease so you'll probably have to work with that for now. It is pretty stable so everything should be OK. Sorry :(/>.
HydroNitrogen #44
Posted 14 June 2015 - 11:57 AM
My modpack crashes on launch!

If you could see whats wrong with the mod: here is the error log.

Yeah, this was a pretty stupid mistake of mine a while back. It should be fixed in the 0.2 prerelease so you'll probably have to work with that for now. It is pretty stable so everything should be OK. Sorry :(/>.

Its okay mate, I will try to include it again ;-) Thanks for your fast reacton
SquidDev #45
Posted 21 June 2015 - 10:41 AM
For the last couple of months ElvishJerricco and I have been rewriting the ComputerCraft's networking system, adding additional functionality as well as some new features. We're nearing completion, but we need your help finding bugs.

What you can do
  • Download the beta here.
  • Use it: experiment with the new features, play with it, etc… Even just adding it to your world and using normal ComputerCraft helps!
Be careful: you should make regular backups as this is a beta.

Reporting bugs and other queries
Please post bugs on the repo, along with the logs. I really need the logs or otherwise it is hard to debug, screenshots are also useful if relevant. Do check if the issue hasn't already been reported.

If you need help using features PM me, though documentation is my next task.

What needs testing
I'll have a fancy post detailing the new features soon, but until then:
  • Networks - this involves modems, wireless bridge, OpenPeripheral integration.
  • Multipart support with cables.
  • Tool host - does it break with particular tools.
  • General crashes, incompatibilities, etc… - Are there mods that it breaks?
Edited on 21 June 2015 - 08:42 AM
SquidDev #46
Posted 30 June 2015 - 08:44 AM
So. CCTweaks 0.2 is released. Pretty sure this image covers it:



Major features:
  • Add custom, extensible network API (custom nodes, networked peripherals)
  • Cables support ChickenBones multipart
  • Full block modem
  • Wireless bridge which binds wired networks together (and multipart and turtle equivalents).
  • Tool Host allows turtles to use any tool
Minor features
  • Most config options do not require a restart now
  • Turtles turn upside down when called 'Dinnerbone' or 'Grumm'
  • Turtles can be refuelled from EU (IC2) sources.
  • OpenPeripheral inventories can send items to each other.
  • NEI documentation
Now on Curse. Before updating though, you'll want to delete your config file as I've restructured its contents. It is worth noting that CC 1.74 is required for this version. Thanks for the bug reports from people and many thanks to ElvishJerricco for all the work he has done on this.
Edited on 30 June 2015 - 04:19 PM
Bomb Bloke #47
Posted 30 June 2015 - 12:31 PM
Turtles turn upside down when called 'Dinnerbone' or 'Grumm'

Hah! I was wondering if that was going to make it in somehow. Does it work with "beginner" turtles and their "camera"?
Lupus590 #48
Posted 30 June 2015 - 12:56 PM
this page doesn't have a compiled download link
SquidDev #49
Posted 30 June 2015 - 05:08 PM
Turtles turn upside down when called 'Dinnerbone' or 'Grumm'

Hah! I was wondering if that was going to make it in somehow. Does it work with "beginner" turtles and their "camera"?

To be honest, I haven't tested with CCEdu. It should work with flipping them upside down, though it won't flip the camera upside down. Also, in response to your (much) earlier post about separating cables with shift right-clicking, I never added that, but am planning to add coloured cables instead.

this page doesn't have a compiled download link
You can download from here. I'm trying to migrate to Curse from GitHub's download system as it makes it easier to track usage (and is the standard now). I'll update the OP once it gets through the approval system. Now on Curse.
Edited on 30 June 2015 - 04:19 PM
SquidDev #50
Posted 20 July 2015 - 07:59 AM
Tiny update: 0.2.1

This fixes a couple of bugs people were having. Thanks very much to Nathan1852 for reporting them!

Also, just noticed we have 127 downloads on Curse - thanks to everyone who is using it!
Edited on 20 July 2015 - 06:06 AM
SquidDev #51
Posted 26 July 2015 - 12:55 PM
And they danced by the light of the moon screen.



I've seen it suggested a couple of times and thought it could be fun.
TheOddByte #52
Posted 26 July 2015 - 02:56 PM
And they danced by the light of the moon screen.



I've seen it suggested a couple of times and thought it could be fun.
Great to see this happening, I remember that it was suggested a long time ago, but never happened.
I'm curious, does it only emit light when connected to a computer? Or always?
SquidDev #53
Posted 26 July 2015 - 03:19 PM
Great to see this happening, I remember that it was suggested a long time ago, but never happened.
I'm curious, does it only emit light when connected to a computer? Or always?

Always, it would be nice to have it all the time but:
  1. I'm too lazy
  2. Lighting calculations are slow - I don't want to be changing state too much.
That said, I might add it if people really want it.
Parodper #54
Posted 03 September 2015 - 08:55 PM
I have a crash, here the crash report
Edited on 04 September 2015 - 12:55 PM
Wojbie #55
Posted 03 September 2015 - 10:05 PM
I must say i was doubtful when i read about your mod. But then i tried it and I am amazed at possibilities. I am in love with the full block modems. Now i can have 3 thick walls with symmetrical monitors! No need to offset them.

I have one question though. How do you place a Tool into Tool Host? Or i am using it wrong?
SquidDev #56
Posted 04 September 2015 - 03:39 PM
I have a crash, here the crash report

Ahh, my bad. Using a Java 7 class. If you can try to upgrade to Java 7, but I'll try to fix this tonight.


I must say i was doubtful when i read about your mod. But then i tried it and I am amazed at possibilities. I am in love with the full block modems. Now i can have 3 thick walls with symmetrical monitors! No need to offset them.

I have one question though. How do you place a Tool into Tool Host? Or i am using it wrong?

Thanks! The current tool is determined based on the active slot of the turtle - so you can just use turtle.equipLeft() on the tool host and then turtle.select(1). I feel this helps balance the benefits a bit - you loose a slot to gain more tools, and also I couldn't find a way to preserve NBT data.
Edited on 05 September 2015 - 07:47 AM
SquidDev #57
Posted 05 September 2015 - 01:05 PM
I have a crash, here the crash report
I've fixed this in the latest release, but I really recommend upgrading to Java 7/8.

CCTweaks 0.2.2:
Another rather minor update, though there are some new features:

Debug Wand network visualiser
This existed before but wasn't considered a 'release ready' feature. I've rewritten it and it looks pretty cool.

It shows all connections between network nodes, as well as displaying node names on mouse over and
current more information on shift-right-click.

Modem lights
Modems give off light.

Wireless Pocket Bridge
Thanks to Peripherals++ you can now mount wireless bridges on pocket computers.

As always, you can download on Curse.
Wojbie #58
Posted 10 September 2015 - 06:27 PM
Not sure if its applicable to you or to MoarPeripherals but http://www.computercraft.info/forums2/index.php?/topic/24614-incredably-frequent-crashes/page__pid__232198#entry232198 those 2 mods seem to not like each-other. IF you can do anything about it i would be grateful. If its not fixable then thanks for trying anyways.
Wojbie #59
Posted 10 September 2015 - 09:14 PM
Minor features
  • OpenPeripheral inventories can send items to each other.

Sorry for double post but i can't seem to find any information about this feature. How can i use it?
SquidDev #60
Posted 10 September 2015 - 09:22 PM
OpenPeripheral inventories can send items to each other.

Sorry for double post but i can't seem to find any information about this feature. How can i use it?

If you attach two inventories together (chest, furnace, etc…) with a modem then there should be two methods provided on the peripheral:
  • pullItemRemote(remoteName, slot, [maxAmount, direction, intoSlot, intoDirection]). Pull an item from the peripheral called "remoteName" from slot number "slot". So if you want to transfer from slot 3 of the chest called "chest_0" into "chest_1" you would do peripheral.call("chest_1", "pullItemRemote" "chest_0", 3)
  • pushItemRemote(remoteName, slot, [maxAmount, direction, intoSlot, intoDirection]). Same as above but in reverse. So if you want to transfer from slot 3 of the chest "chest_0" into "chest_1" then you would do: peripheral.call("chest_0", "pushItemRemote", "chest_1", 3)
Its a bit convoluted but it works.

EDIT: You can see the script I've used for my furnace setup on previous pages here.
Edited on 10 September 2015 - 07:24 PM
Wojbie #61
Posted 10 September 2015 - 09:33 PM
Hmm. Nope. pullItemRemote and pushItemRemote are not showing on peripherals.

We have

OpenModsLib-1.7.10-0.8
OpenPeripheral-1.7.10-AIO-5
CCTweaks-1.7.10-0.2.2
BiblioCraft[v1.11.0][MC1.7.10]

And those 2 methods don't show on wrap and are not valid to call eather.
Edited on 10 September 2015 - 07:35 PM
SquidDev #62
Posted 10 September 2015 - 09:41 PM
Hmm. Nope. pullItemRemote and pushItemRemote are not showing on peripherals.

And those 2 methods don't show on wrap and are not valid to call eather.

Right. I'll debug now. I've created some issues on GitHub for these two which is probably the best place to follow them and add any additional information.

Edit: In regards to OpenPeripheral: It should be a fairly trivial fix. They've renamed a method which means some of the hackery I need to do breaks. I'll try to fix this in the next couple of days.
Edited on 10 September 2015 - 07:48 PM
SquidDev #63
Posted 12 September 2015 - 06:16 PM
Hmm. Nope. pullItemRemote and pushItemRemote are not showing on peripherals.

And those 2 methods don't show on wrap and are not valid to call eather.

I've just published CCTweaks 0.2.2.1 to Curse to fix issues with OpenPeripheral. It should show up in the next hour or so.
SquidDev #64
Posted 18 September 2015 - 07:51 AM
I've released a fix for some concurrency issues with networking which should (fingers crossed) fix server crashes people were having.

CCTweaks 0.2.2.2 is available on Curse as always. It should show up in the next hour or so.
Edited on 10 October 2015 - 01:44 PM
SquidDev #65
Posted 10 October 2015 - 03:56 PM
So. I appear to have fixed The String Bug.

CCTweaks 0.2.3 can be downloaded on Curse. This update also prevents unnecessary chunk-loading when loading networks, fixes some bugs and improves debugging capabilities.

It can take an hour or so for the download to appear on Curse.
Edited on 10 October 2015 - 01:59 PM
justync7 #66
Posted 10 October 2015 - 09:32 PM
So. I appear to have fixed The String Bug.

CCTweaks 0.2.3 can be downloaded on Curse. This update also prevents unnecessary chunk-loading when loading networks, fixes some bugs and improves debugging capabilities.

It can take an hour or so for the download to appear on Curse.
What is this "String Bug" you speak of?
Lupus590 #67
Posted 10 October 2015 - 10:27 PM
-snip-
What is this "String Bug" you speak of?

It's a long-standing bug that ComputerCraft has (I think the bug is from LuaJ so it's not CC's fault). The bug has to do with one of the ways that LuaJ/CC uses strings and so is known as "the string bug".

Edit: Below post explains it better.

Just in case it disappears or something
To elaborate, binary data can't be represented in String form when converting between Java and Lua, because LuaJ treats all binary data as Unicode. This mangles the data supposedly irreparably. So the HTTP api (which only returns strings) can't be used to download binary files such as zip files.
Edited on 10 October 2015 - 09:09 PM
ElvishJerricco #68
Posted 10 October 2015 - 10:53 PM
What is this "String Bug" you speak of?

To elaborate, binary data can't be represented in String form when converting between Java and Lua, because LuaJ treats all binary data as Unicode. This mangles the data supposedly irreparably. So the HTTP api (which only returns strings) can't be used to download binary files such as zip files.
Bomb Bloke #69
Posted 11 October 2015 - 01:32 AM
So. I appear to have fixed The String Bug.

Could you please elaborate? I gave this code snippet a try with CCTweaks 0.2.3 installed, but chars 128 and above fail as usual;

local array = {}

for i = 0, 255 do
	array[i+1] = i
end

array = string.char(unpack(array))

local out = fs.open("test.txt", "w")
out.writeLine(array)
out.close()

local ink = fs.open("test.txt", "r")
print(array == ink.readLine() and "Match!" or "Mismatch...")
ink.close()
SquidDev #70
Posted 11 October 2015 - 12:49 PM
So. I appear to have fixed The String Bug.

Could you please elaborate? I gave this code snippet a try with CCTweaks 0.2.3 installed, but chars 128 and above fail as usual;

Should have explained. The fs API is the only one I haven't patched, partially because it is the most work, and partially because binary mode exists already. There isn't 'one size fits all' solution to the string bug so I've rewritten the relevant bits of most APIs (http, os.queueEvent, rednet) to support binary transfer. If people want it, I'll also patch the fs API but I left it as is for this release.

TLDR:
Everything works but fs.
ElvishJerricco #71
Posted 11 October 2015 - 11:38 PM
Should have explained. The fs API is the only one I haven't patched, partially because it is the most work, and partially because binary mode exists already. There isn't 'one size fits all' solution to the string bug so I've rewritten the relevant bits of most APIs (http, os.queueEvent, rednet) to support binary transfer. If people want it, I'll also patch the fs API but I left it as is for this release.

TLDR:
Everything works but fs.

Couldn't you patch the LuaJ string conversion methods to fix everything?
SquidDev #72
Posted 12 October 2015 - 07:36 AM
Couldn't you patch the LuaJ string conversion methods to fix everything?

Tried that. Doesn't work. Instead I avoid string conversion entirely and replace instances of String with byte[] (this is on an opt in basis in order not to break peripherals, etc…). This means I have to go through the class and find the best way of rewriting it. In the case of HTTP I just rewrote the entire thing (because BufferedReader also tries to encode the byte array). The filesystem is much more complicated than HTTP so I didn't touch it. I'll probably have a go over the next couple of days to see how possible it is.
SquidDev #73
Posted 16 October 2015 - 06:43 PM
Just released CCTweaks 0.2.3.1 (available from all good retailers, or failing that just Curse). This should fix crashes when passing tables to peripheral methods.
Lupus590 #74
Posted 16 October 2015 - 08:30 PM
The quadrocopers bug is fixed
SquidDev #75
Posted 17 October 2015 - 03:09 PM
Should have explained. The fs API is the only one I haven't patched, partially because it is the most work, and partially because binary mode exists already. There isn't 'one size fits all' solution to the string bug so I've rewritten the relevant bits of most APIs (http, os.queueEvent, rednet) to support binary transfer. If people want it, I'll also patch the fs API but I left it as is for this release.

TLDR:
Everything works but fs.

I've just implemented binary support for the file system (so file-system handles support can read/write binary without enabling the "b" flag). It will probably end up in the next CCTweaks version.
justync7 #76
Posted 18 October 2015 - 06:27 AM
snip
snip
Oh. That bug. That explains why Dan was complaining about how Lua doesn't have a 'string' type, just an array of bytes called 'string'. Thanks for the explanation.
SquidDev #77
Posted 20 October 2015 - 08:26 PM
We just passed 1024 downloads on Curse! Thanks for everyone for the support!
SquidDev #78
Posted 05 November 2015 - 06:09 PM
Just released CCTweaks 0.2.3.2 (I love versioning :)/>). This adds:
  • Bind to/from block for turtle wireless bridge
  • Binary support for file system
  • HTTP response headers (use getResponseHeaders)
  • HTTP response is sent as additional argument on failure (on the "http_failure" event).
It should appear on Curse in the next hour or so.
Creator #79
Posted 05 November 2015 - 06:33 PM
What is a binary filesystem?
SquidDev #80
Posted 05 November 2015 - 07:35 PM
What is a binary filesystem?

It is just my fix for the string bug applied to the filesystem, so you can now use readAll and write("\234 and other characters above 127") without it being corrupted.
Creator #81
Posted 05 November 2015 - 07:36 PM
What is a binary filesystem?

It is just my fix for the string bug applied to the filesystem, so you can now use readAll and write("\234 and other characters above 127") without it being corrupted.

Oh, thanks for the fix.
SquidDev #82
Posted 22 November 2015 - 12:16 PM
Just released CCTweaks 0.2.3.4: this fixes some interaction issues with Computronics and a couple of other bugs as I was using an older version of my Patcher library. I really recommend updating if you are running anything in the 0.2.3.* range.
Lion4ever #83
Posted 25 November 2015 - 06:57 PM
What does the data card do? Google could not help me :(/>
SquidDev #84
Posted 25 November 2015 - 09:12 PM
What does the data card do? Google could not help me :(/>

The data card is used to bind wireless bridges together. These are just cross-dimensional modems* but you need to bind them by shift-clicking with a data card on one and clicking on the other (like AE2's P2P tunnels).

*Wireless bridges actually share the entire wired network - allowing you to also share peripherals.
SquidDev #85
Posted 12 December 2015 - 10:57 AM
I've just released a alpha for 1.8. I've tested against 1.76pr3, but it should be compatible with all past and future versions. Do note that this is an alpha, and so may corrupt your world, cause buggyness, etc…

Get it on Curse now! (And report all the bugs you find on GitHub)

Changelog
  • Update to 1.8
  • Removed Multipart, OpenPeripheral and Peripherals++ integration - not updated to 1.8 yet
  • Removed turtle custom name rendering
Known bugs
  • The turtle tool host's digging doesn't work - I'm looking into it.
Edited on 12 December 2015 - 10:00 AM
SquidDev #86
Posted 27 December 2015 - 05:14 PM
So I've updated to 1.8. Get it on Curse!

Changelog
  • Fix toolhost
  • Add CC version checker - it will print a massive warning if running under a version that CCTweaks wasn't designed for.
SquidDev #87
Posted 02 February 2016 - 05:25 PM
CCTweaks 0.3 has finally been released! Introducing a 1.8.9 port! Get it on Curse.

Minecraft 1.7.10 Changelog
  • Tool manipulator: An extended tool host that allows right clicking (and bows!)
  • TCP socket API
  • Data API (allows compression)
  • LuaJC is now non-experimental! The latest version correctly implements debug hooks, and handles several edge cases.
Minecraft 1.8 Changelog
Same as 1.7.10 plus:
  • Pocket upgrades are back! No dependency on Peripherals++.
  • JEI integration
Minecraft 1.8.9 Changelog
Same as 1.8 plus:
  • MCMultipart integration
Wojbie #88
Posted 02 February 2016 - 05:32 PM
Yay for bow turtles? YAY for bow turtles!
Also yay for 1.8.9 version and JEI/MCMultipart integration
Edited on 02 February 2016 - 04:32 PM
SquidDev #89
Posted 02 February 2016 - 05:42 PM
Yay for bow turtles? YAY for bow turtles!
Also yay for 1.8.9 version and JEI/MCMultipart integration

My thoughts too. I haven't tested with Tinkers' bows (or any 1.8.9 Tinkers' tool for that matter), but they should also work.
SquidDev #90
Posted 06 February 2016 - 10:46 AM
I've just released CCTweaks 0.3.0.1 (versioning at its greatest). Get it on Curse.

Changelog
  • Fix possible memory leak in turtle tool host/manipulator
  • Add documentation for tool manipulator
  • Update LuaJC to 1.0.4. This adds incremental compilation and fixes a bug with returning uninitialised variables (thanks Lemmy).
  • Fix tool manipulator icon in 1.8 and 1.8.9
Sebra #91
Posted 18 February 2016 - 05:20 PM
It crash my 1.8.9 :(/>

http://pastebin.com/8KVEaGMD
SquidDev #92
Posted 18 February 2016 - 06:23 PM
It crash my 1.8.9 :(/>
http://pastebin.com/8KVEaGMD

Sorry about this. I fixed this yesterday but haven't released a patch yet. A temporary solution is to add MCMultipart.
SquidDev #93
Posted 19 February 2016 - 09:24 AM
Just released CCTweaks 0.3.0.2. This fixes a LuaJC bug and also stops crashing on 1.8.9 without MCMultipart: sorry about that.
Creator #94
Posted 19 February 2016 - 09:41 AM
How does cc tweaks add the debug lib?
SquidDev #95
Posted 19 February 2016 - 10:07 AM
How does cc tweaks add the debug lib?

There is a config setting under "computer" called whitelist globals. You can add "debug" to this list to access the debug API. This ASM hook removes the removal code for that global.
Sebra #96
Posted 21 February 2016 - 06:34 PM
… to add MCMultipart.
Thanks, but… stupid question: how to add it?
I'm adding .jar s mostly. ;)/>
SquidDev #97
Posted 21 February 2016 - 07:04 PM
… to add MCMultipart.
Thanks, but… stupid question: how to add it?
I'm adding .jar s mostly. ;)/>

Sorry. Should have linked to the Curse download instead. However the latest version of CCTweaks (0.3.0.2) doesn't require it (but I'd really recommend it - you can have Chisel and bits and CC cables in the same block).
Creator #98
Posted 21 February 2016 - 07:24 PM
Does CC Tweaks fix the rednet issue with strings that have characters above 127?
SquidDev #99
Posted 21 February 2016 - 08:35 PM
Does CC Tweaks fix the rednet issue with strings that have characters above 127?

Yep. All encoding issues are fixed now.
Sebra #100
Posted 21 February 2016 - 08:35 PM
Sorry. Should have linked to the Curse download instead. However the latest version of CCTweaks (0.3.0.2) doesn't require it (but I'd really recommend it - you can have Chisel and bits and CC cables in the same block).
Thanks! Was able to test it in hopes it would enable two levers in the same block trick ;)/>
Also had a look on CC Tweaks:
1.Computer Upgrade too cheap: 7 gold only. It is good for computer itself, but Turtle is made of 14 gold. And for Pocket one you need 15 (if you make that apple yourself).
2.Wireless Bridge block: should use wireless channels to connect wired networks. And programmed by computers. Data card is bad idea. Now it's magic. IMHO ofc.
3. …wirelessBridge.name in creative inventory.

Other than that nice ideas and descriptions.
SquidDev #101
Posted 21 February 2016 - 09:10 PM
  1. Computer Upgrade too cheap: 7 gold only. It is good for computer itself, but Turtle is made of 14 gold. And for Pocket one you need 15 (if you make that apple yourself).
  2. Wireless Bridge block: should use wireless channels to connect wired networks. And programmed by computers. Data card is bad idea. Now it's magic. IMHO ofc.
  3. wirelessBridge.name in creative inventory.

I chose the computer upgrade without thinking of turtles/pocket computers. I'll fix that. Also missed that unlocalised name for the wireless bridge. Woops.

Not sure what to do about the wireless bridge. I like the data card as it allows a bit more security but it also is a bit clunky. Whilst using wireless channels isn't really possible due to CC internals, using the same method would work. I'll put something on my issue tracker and see what others think.

If anybody has any thoughts on this, please comment here or on the GitHub issue.
Edited on 21 February 2016 - 08:19 PM
Sebra #102
Posted 22 February 2016 - 08:38 AM
There are two wireless bridges in creative inventory. One is block and have proper name and recipe. Other miss name and recipe and looks like modem.

If you cannot make bridge channels the same as modem channels then let them differ.

Your CC addon is the second for Minecraft 1.8.9. I still miss chunk loading for 1.8.9. Especially for Turtle.
SquidDev #103
Posted 22 February 2016 - 09:13 AM
There are two wireless bridges in creative inventory. One is block and have proper name and recipe. Other miss name and recipe and looks like modem.

That is intentional. The second one is a multipart wireless bridge and can be connected to a cable in the same way a modem can be.

If you cannot make bridge channels the same as modem channels then let them differ.

I'm going to have a think about how to do this. I prefer this as a concept, but want to keep some backwards compatibility too.

Your CC addon is the second for Minecraft 1.8.9. I still miss chunk loading for 1.8.9. Especially for Turtle.

I think I was the first to port :P/> - though it looks like OpenPeripheral is in the process of porting which is awesome. I'm not sure about adding a chunk loading turtle though as I don't feel it fits within the scope of CCTweaks. You might want to ask when Chunky Peripherals is going to be ported. Sorry :(/>.
Edited on 22 February 2016 - 08:14 AM
Sebra #104
Posted 22 February 2016 - 10:33 AM
KnightPeripherals was first I was able to run. Open* mods and most of others are 1.7.10 only. Chunky Peripherals is wanted but chances are doubtful. :(/>
It seems 1.9 release will prohibit 1.8.9 updates.
Sebra #105
Posted 23 February 2016 - 11:06 AM
Can I suggest you new feature for Tool Host or Manipulator?
There are cases, when breaking block did not give any drop. Would you add methods to know if equipped tool is "proper" for present block? For example Diamond pick is proper tool for obsidian, but stone pick is not.
It is up to you to decide would it count Diamond pick to be proper for Sand for example. Proper tool would be shovel but pick still can get sand.
But I definitely want Empty Bucket to be "proper tool" for any liquids.
SquidDev #106
Posted 23 February 2016 - 01:06 PM
Can I suggest you new feature for Tool Host or Manipulator? Would you add methods to know if equipped tool is "proper" for present block?

I've filed an issue. Tools should be pretty simple to add as MC has built in support for that. Buckets will have to have support added manually, so other mod's buckets (such as Tinkers'/Iguana Tweaks' clay bucket won't report yes).
SquidDev #107
Posted 05 March 2016 - 11:23 AM
I've just released CCTweaks 0.3.1. I'm only releasing for 1.7.10 and 1.8.9 because nobody really uses the 1.8 version. We've also hit 15,000 downloads which is pretty awesome: thanks everyone!

IMPORTANT (so important, I've put it in caps)
If you hit a bug whilst CCTweaks is installed, try to reproduce without CCTweaks. I don't want to annoy Dan with bug reports that aren't his fault.

Changelog
  • Add "swing" method to tool manipulator: attacks or digs
  • Add portal gun integration to tool manipulator (1.7.10 only). Also add an API for other mods to add special swing/use handlers.
  • Allow turning on/off full block modems from computers
  • Fix cost of the computer upgrade
  • Add "canSwing" and "canUse" methods to see if a tool is effective. Also add an API for mods to add custom effective handlers.
  • Allow using integer ids for wireless bridges
  • Add experimental Cobalt VM
Cobalt
You might have noticed "Add experimental Cobalt VM" above. This is a fork of LuaJ which supports multiple instances at once: so computers could run in parallel, though I haven't added it. It also fixes these LuaJ bugs (so you can benefit them in 1.7.10) and fixes the issue with string metatables being shared. However it is experimental and you should use it with caution. Any bugs you experience with it should be reported here.
Sebra #108
Posted 06 March 2016 - 03:26 PM
Hi!
I found strange bug with CCTweaks 0.3.1 and cannot reproduce it without.
Attempt to refuel my turtle with lava bucket gives empty bucket but leaves full one too. Turtle is fueled.
Turtle has no your peripheral, just pickaxe and ender modem.

Edit:0.3.0.2 version does it too.
Edited on 06 March 2016 - 03:04 PM
SquidDev #109
Posted 06 March 2016 - 04:58 PM
I found strange bug with CCTweaks 0.3.1 and cannot reproduce it without.
Attempt to refuel my turtle with lava bucket gives empty bucket but leaves full one too. Turtle is fueled.

CCTweaks replaces turtle refuelling to allow other sources such as RF and EU. Things changed for 1.8 and probably didn't notice it had broken, might be broken on 1.7.10 as well though :wacko:/>.
Edited on 06 March 2016 - 03:59 PM
KnightMiner #110
Posted 07 March 2016 - 04:54 AM
I can confirm the 1.7.10 version has this behavior. I would have reported it, but I've been to lazy to check which mod causes it.
chanzie #111
Posted 17 March 2016 - 07:00 PM
Spoiler—- Minecraft Crash Report —-
WARNING: coremods are present:
ThaumcraftLoader (Thaumcraft-1.8.9-5.2.4.jar)
TweaksLoadingPlugin (CCTweaks-1.8.9-0.3.1-dev.jar)
FMLPlugin (InventoryTweaks-1.60-40.jar)
Contact their authors BEFORE contacting forge
// Why is it breaking :(/>
Time: 3/17/16 1:55 PM
Description: There was a severe problem during mod loading that has caused the game to fail
net.minecraftforge.fml.common.LoaderException: java.lang.NoSuchMethodError: org.squiddev.cctweaks.items.ItemBase.setUnlocalizedName(Ljava/lang/String;)Lnet/minecraft/item/Item;
at net.minecraftforge.fml.common.LoadController.transition(LoadController.java:162)
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:559)
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:243)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:417)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:329)
at net.minecraft.client.main.Main.main(SourceFile:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Caused by: java.lang.NoSuchMethodError: org.squiddev.cctweaks.items.ItemBase.setUnlocalizedName(Ljava/lang/String;)Lnet/minecraft/item/Item;
at org.squiddev.cctweaks.items.ItemBase.<init>(ItemBase.java:19)
at org.squiddev.cctweaks.items.ItemBase.<init>(ItemBase.java:26)
at org.squiddev.cctweaks.items.ItemComputerAction.<init>(ItemComputerAction.java:17)
at org.squiddev.cctweaks.items.ItemComputerUpgrade.<init>(ItemComputerUpgrade.java:41)
at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:46)
at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:560)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:211)
at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:189)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:118)
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:556)
… 10 more

A detailed walkthrough of the error, its code path and all known details is as follows:
—————————————————————————————
– System Details –
Details:
Minecraft Version: 1.8.9
Operating System: Windows 10 (amd64) version 10.0
Java Version: 1.8.0_25, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 4497030752 bytes (4288 MB) / 6227755008 bytes (5939 MB) up to 6227755008 bytes (5939 MB)
JVM Flags: 26 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx6G -Xms6G -Xmn2048m -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled -XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30 -XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15 -XX:+UseFastAccessorMethods -XX:+UseCompressedOops -XX:+OptimizeStringConcat -XX:+AggressiveOpts -XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing -XX:SoftRefLRUPolicyMSPerMB=20000 -XX:ParallelGCThreads=10
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP 9.19 Powered by Forge 11.15.1.1764 25 mods loaded, 25 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCH mcp{9.19} [Minecraft Coder Pack] (minecraft.jar)
UCH FML{8.0.99.99} [Forge Mod Loader] (forge-1.8.9-11.15.1.1764.jar)
UCH Forge{11.15.1.1764} [Minecraft Forge] (forge-1.8.9-11.15.1.1764.jar)
UCH <CCTweaks ASM>{0.3.1} [<CCTweaks ASM>] (minecraft.jar)
UCH BuildCraft|Core{7.2.0} [BuildCraft] (buildcraft-7.2.0.jar)
UCH BuildCraft|Builders{7.2.0} [BC Builders] (buildcraft-7.2.0.jar)
UCH BuildCraft|Transport{7.2.0} [BC Transport] (buildcraft-7.2.0.jar)
UCH BuildCraft|Energy{7.2.0} [BC Energy] (buildcraft-7.2.0.jar)
UCH BuildCraft|Silicon{7.2.0} [BC Silicon] (buildcraft-7.2.0.jar)
UCH BuildCraft|Robotics{7.2.0} [BC Robotics] (buildcraft-7.2.0.jar)
UCH BuildCraft|Factory{7.2.0} [BC Factory] (buildcraft-7.2.0.jar)
UCH BuildCraft|Compat{7.2.0} [BuildCraft Compat] (buildcraft-compat-7.2.0.jar)
UCH ComputerCraft{1.79pr1} [ComputerCraft] (ComputerCraft1.79pr1.jar)
UCE CCTweaks{0.3.1} [CCTweaks] (CCTweaks-1.8.9-0.3.1-dev.jar)
UCH Chameleon{1.8.9-0.2.1} [Chameleon] (Chameleon-1.8.9-0.2.1.jar)
UCH inventorytweaks{1.60-40-e06e29a} [Inventory Tweaks] (InventoryTweaks-1.60-40.jar)
UCH JEI{2.28.7.174} [Just Enough Items] (jei_1.8.9-2.28.7.174.jar)
UCH Baubles{1.1.3.0} [Baubles] (Baubles-1.8.9-1.1.3.0.jar)
UCH Thaumcraft{5.2.4} [Thaumcraft] (Thaumcraft-1.8.9-5.2.4.jar)
UCH JEIAddons{0.12.0.57} [Just Enough Items Addons] (JEIAddons_1.8.9-0.12.0.57.jar)
UCH journeymap{1.8.9-5.1.5} [JourneyMap] (journeymap-1.8.9-5.1.5-unlimited.jar)
UCH mantle{1.8.9-0.9.1.jenkins99} [Mantle] (Mantle-1.8.9-0.9.1.jar)
UCH Psi{beta-23} [Psi] (Psi-beta-23.jar)
UCH StorageDrawers{1.8.9-2.4.4} [Storage Drawers] (StorageDrawers-1.8.9-2.4.4.jar)
UCH tconstruct{1.8.9-2.2.0.jenkins135} [Tinkers' Construct] (TConstruct-1.8.9-2.2.0b.jar)
Loaded coremods (and transformers):
ThaumcraftLoader (Thaumcraft-1.8.9-5.2.4.jar)

TweaksLoadingPlugin (CCTweaks-1.8.9-0.3.1-dev.jar)
org.squiddev.cctweaks.core.asm.ASMTransformer
FMLPlugin (InventoryTweaks-1.60-40.jar)
invtweaks.forge.asm.ContainerTransformer
GL info: ' Vendor: 'ATI Technologies Inc.' Version: '4.5.13417 Compatibility Profile Context 15.301.1801.1001' Renderer: 'AMD Radeon R9 200 Series'
Pulsar/tconstruct loaded Pulses:
- TinkerCommons (Enabled/Forced)
- TinkerWorld (Enabled/Not Forced)
- TinkerTools (Enabled/Not Forced)
- TinkerSmeltery (Enabled/Not Forced)
- TinkerGadgets (Enabled/Not Forced)
- TinkerOredict (Enabled/Forced)
- TinkerIntegration (Enabled/Forced)
- TinkerFluids (Enabled/Forced)
- TinkerMaterials (Enabled/Forced)

getting this crash most recent version of it…
SquidDev #112
Posted 17 March 2016 - 09:36 PM
-snip-

It looks like you're using the deobsfucated version of CCTweaks. Use this one instead.
minizbot2012 #113
Posted 20 March 2016 - 02:49 PM
Is there currently a way to control the white / black list for the stand-alone (ccemu) for the TCP (socket) api? If not, then could you please add a way to control those? Thanks
Edited on 20 March 2016 - 01:49 PM
SquidDev #114
Posted 20 March 2016 - 03:04 PM
Is there currently a way to control the white / black list for the stand-alone (ccemu) for the TCP (socket) api? If not, then could you please add a way to control those? Thanks

At the moment no. I'm trying to find a nice way to handle configs for the standalone version (something which works with both Minecraft and on its own), but that may take another couple of weeks.
minizbot2012 #115
Posted 20 March 2016 - 04:38 PM
At the moment no. I'm trying to find a nice way to handle configs for the standalone version (something which works with both Minecraft and on its own), but that may take another couple of weeks.
Okay :(/> thanks (was trying to hack all the json files within the emulator), since it is small scale testing for myself, I might just make a few tweaks in a local version of the source (basically allow my server, that I am running the socket setup on)

Edit: that was too easy to whitelist my server on my local-copy :)/>

Edit: Just noticed you updated with a workaround thanks :)/>
Edit: doesn't seem to be functional yet :/
Edited on 21 March 2016 - 01:04 AM
SquidDev #116
Posted 21 March 2016 - 08:00 AM
Edit: Just noticed you updated with a workaround thanks :)/>
Edit: doesn't seem to be functional yet :/

Sorry, I ended up having to fix some more bugs. I've re-released it with everything fixed (Who am I kidding? I'm sure there are more bugs) . This counts as the first stable CCTweaks standalone version. I'm hoping to merge this into actual CCTweaks this week.
SquidDev #117
Posted 21 March 2016 - 05:51 PM
Hello! I've just pushed CCTweaks 0.3.2. Nothing much has changed: most of this has been moving things to CCTweaks Lua (which is now an external dependency.) However, I've fixed the issue with refuelling buckets. Be warned though: the Cobalt VM seems to sometimes break under 1.7.10, I'm looking into it.

I've also updated the OP with a complete feature list. Have a look, see if there is something you didn't know about!

Also, just noticed CCTweaks has almost 20,000 downloads. Thanks to everyone for your support!
Edited on 21 March 2016 - 06:10 PM
minizbot2012 #118
Posted 21 March 2016 - 06:15 PM
Sorry, I ended up having to fix some more bugs. I've re-released it with everything fixed (Who am I kidding? I'm sure there are more bugs) . This counts as the first stable CCTweaks standalone version. I'm hoping to merge this into actual CCTweaks this week.

Also FYI, you didn't release it with a compiled version, while I know how to compile it myself, it might help others and not just me if it has a pre-compiled version.
SquidDev #119
Posted 21 March 2016 - 06:42 PM
Also FYI, you didn't release it with a compiled version, while I know how to compile it myself, it might help others and not just me if it has a pre-compiled version.

Fixed! The download failed the first time and I didn't notice :wacko:/> . Sorry.
Edited on 21 March 2016 - 06:10 PM
minizbot2012 #120
Posted 21 March 2016 - 07:17 PM
I hate telling you this but its the wrong file that you uploaded….. (Sorry)
Sebra #121
Posted 21 March 2016 - 07:28 PM
I've also updated the OP with a complete feature list. Have a look, see if there is something you didn't know about!
How Pocket computer peripherals works?
SquidDev #122
Posted 21 March 2016 - 07:54 PM
I hate telling you this but its the wrong file that you uploaded….. (Sorry)
Thanks. Serves me right for rushing!

How Pocket computer peripherals works?
You can add other peripherals to pocket computers through crafting the peripheral with a pocket computer (same way as you add the wireless modem). Currently you can only add the wireless bridge as a peripheral, though I'm happy to add others if people want it.
Sebra #123
Posted 21 March 2016 - 08:28 PM
You can add other peripherals to pocket computers through crafting the peripheral with a pocket computer (same way as you add the wireless modem). Currently you can only add the wireless bridge as a peripheral, though I'm happy to add others if people want it.
So you add ability to connect to wired network. Quite doubtful.
I see no logical candidates except Ender Modem.
By the way how much is the probability to use as peripheral helmet for example?
SquidDev #124
Posted 21 March 2016 - 09:01 PM
So you add ability to connect to wired network. Quite doubtful.
I see no logical candidates except Ender Modem.
Eh. I'm prioritising convenience rather than believability.

By the way how much is the probability to use as peripheral helmet for example?
I'm confused? I guess you mean peripherals mounted on a helmet? had a go at something like this a while back, but I'm not sure I'd put it in CCTweaks though, I'm not sure it really fits.
Sebra #125
Posted 22 March 2016 - 03:09 PM
So you add ability to connect to wired network. Quite doubtful.
I see no logical candidates except Ender Modem.
Eh. I'm prioritising convenience rather than believability.
As you wish.
By the way how much is the probability to use as peripheral helmet for example?
I'm confused? I guess you mean peripherals mounted on a helmet? had a go at something like this a while back, but I'm not sure I'd put it in CCTweaks though, I'm not sure it really fits.
I think as Computer can see Monitor above it, Pocket Computer in players inventory can find equipped helmet and use it as a peripheral. (in theory) I do not see Dan200 would want it so ask your opinion about it's possibility. Helmet? connected via special antenna is too weird for me. Bluetooth-like system is more logical.
What is on this picture?
SquidDev #126
Posted 01 April 2016 - 03:18 PM
Just pushed CCTweaks (the mod) v0.3.2.1 which fixes several issues with the CC 1.79. If you are updating to 1.79, you'll also need to update your CCTweaks version.
flaunting #127
Posted 23 April 2016 - 08:57 PM
Just wondering if there is any documentation for this mod for syntax and different commands, or an easy way for me to find them. sorry not great with the computers yet but this mod adds things I really want to use
SquidDev #128
Posted 24 April 2016 - 02:58 PM
Just wondering if there is any documentation for this mod for syntax and different commands, or an easy way for me to find them. sorry not great with the computers yet but this mod adds things I really want to use

There aren't any commands for CCTweaks, a lot of tweaks are done via config options. If you have a look in the CCTweaks config file most things are documented there (or you can use the config GUI in game). For any CCTweaks item you can press "r" and it should display a help message (if you have NEI/JEI installed). If you have any questions about particular features/functionality do post here or PM me.
masterdisasterHD #129
Posted 29 April 2016 - 03:10 PM
I can't get this to work across dimensions, any tips?
SquidDev #130
Posted 29 April 2016 - 03:14 PM
I can't get this to work across dimensions, any tips?

Sorry, I'm going to need a little bit more info. Which feature doesn't work across dimensions? Which version of the mod are you using (and which Minecraft version)?

Edit I see you've reported this on the issue tracker. Thanks!
Edited on 29 April 2016 - 01:21 PM
SquidDev #131
Posted 15 May 2016 - 03:42 PM
Due to a forum issue I'm posting this again. I've released CCTweaks 0.3.3. This adds ender modem upgrades to pocket computers and fixes some bugs. I've also noticed that we've hit 30,000 downloads: thanks to everyone for your support!
SquidDev #132
Posted 17 May 2016 - 08:46 PM
Just released CCTweaks-Lua 1.0.5. This will be merged into the main CCTweaks mod in the next couple of weeks

Changelog
  • Allow passing HTTP verbs to http.request
  • Fix more LuaJC bugs
  • Add profiler to Cobalt
flaunting #133
Posted 22 May 2016 - 08:09 AM
Ok I'm sure you will be able to answer this quickly but its the first time I have tried using tool host. How do you add a tool to a grabber turtle.

also local game times out from server when using NEI to get tool manipulator
SquidDev #134
Posted 22 May 2016 - 10:42 AM
Ok I'm sure you will be able to answer this quickly but its the first time I have tried using tool host. How do you add a tool to a grabber turtle.

also local game times out from server when using NEI to get tool manipulator

The tool host will use whichever tool is in the turtle's selected slot. Not sure about your computer timing when using NEI. CCTweaks doesn't do anything special but just in case could you put your logs on pastebin? Thanks!
SquidDev #135
Posted 23 May 2016 - 09:53 PM
Just pushed CCTweaks 1.0.0 for Minecraft 1.7.10 and 1.8.9 to Curse. Nothing major here, just bug fixes.
HDeffo #136
Posted 25 May 2016 - 06:33 PM
Just out of curiosity would it be possible to take out the client side changes within in the mod and make this a server side only mod? I am not sure how the communication works with computercraft but I assume simply changing to LuaJIT only needs to be done on the server side without impacting clients or forcing them to download another mod.
SquidDev #137
Posted 25 May 2016 - 06:48 PM
Just out of curiosity would it be possible to take out the client side changes within in the mod and make this a server side only mod? I am not sure how the communication works with computercraft but I assume simply changing to LuaJIT only needs to be done on the server side without impacting clients or forcing them to download another mod.

It depends. CCTweaks-Lua could trivially be ported over to a server side mod (you just need to add config loading and a core mod). Most of the functionality in the core mod however (such as network tweaks) cannot be as the client also needs those features. I'm reluctant do do this as managing multiple mods/versions is a pain. If you fancy doing it yourself though feel free: it could probably be done with a single file mod (+build file).
Edited on 25 May 2016 - 04:49 PM
HDeffo #138
Posted 25 May 2016 - 06:54 PM
I think I might just do that since I absolutely love your mod and would love to put at least most of its changes into existing modpacks and servers.
SquidDev #139
Posted 13 June 2016 - 11:06 AM
Just pushed CCTweaks-Lua 1.0.7. This includes custom backgrounds for CCEmuRedux and several bug fixes.
NanoBob #140
Posted 22 June 2016 - 09:37 PM
Can't believe I've never seen this, would love to play with the TCP stuff especially. Do you happen to know of any (popular-ish) modpacks which contains CCTweaks?
SquidDev #141
Posted 23 June 2016 - 08:11 AM
Can't believe I've never seen this, would love to play with the TCP stuff especially. Do you happen to know of any (popular-ish) modpacks which contains CCTweaks?

Sadly no. There are some mod packs using it, though none are especially popular. though you should just be able to drop it into an existing modpack's mods folder.
SquidDev #142
Posted 05 July 2016 - 09:53 PM
Just released CCTweaks 1.0.1 for 1.8.9. This is just a bug fix update.
  • Bump cctweaks-lua version
    • Fix http.readAll bug
    • Fix luaj.luajc bug with long programs
  • Fix crashes when tile entity has been removed
  • Fix multipart bridge crafting recipe
I've also decided to stop releasing 1.7.10 updates. However I'll still be releasing patches for critical bugs.
Xerxes #143
Posted 06 July 2016 - 04:24 AM
Just released CCTweaks 1.0.1 for 1.8.9. This is just a bug fix update.
  • Bump cctweaks-lua version
    • Fix http.readAll bug
    • Fix luaj.luajc bug with long programs
  • Fix crashes when tile entity has been removed
  • Fix multipart bridge crafting recipe
I've also decided to stop releasing 1.7.10 updates. However I'll still be releasing patches for critical bugs.

Thanks for this update. It's been very beneficial to my server.
SquidDev #144
Posted 22 September 2016 - 04:48 PM
Just released CCTweaks 1.1.0 for both 1.7.10 and 1.8.9. This fixes some server breaking crashes (hence the backport to 1.7.10).

Changelog
  • Fix peripherals not being detached from broken computers. This fixes the "not attached to this computer" crash.
  • Fix peripherals not being detached when their modem was broken.
  • Ensure the tile is still there when connecting to it
  • List attached computers on debug peripherals
  • Bump CCTweaks-Lua version
    • Add bitop library for LuaJIT style bitop functions
    • Add biginteger library for faster computation on arbitrary size integers.
    • Port LuaJC to Cobalt: now can be run on both LuaJ and Cobalt.
    • Fix peripherals not sending binary data correctly.
CCTweaks can be downloaded on CurseForge. The standalone version for emulators can be found here.

I've also updated the documentation for CCTweaks-Lua which should make it easier to find out how to do things. Have a look: you might find something useful!
Edited on 22 September 2016 - 04:39 PM
SquidDev #145
Posted 08 October 2016 - 10:35 PM



Heh heh heh. As it isn't especially clear: this is two computers executing at the same time. If you were to try this on vanilla ComputerCraft you wouldn't even be able to enter text into the second computer. This shares tasks between 4 threads, meaning up to 4 computers can run simultaneously. You can, of course, change the number of threads if you fancy.
Edited on 08 October 2016 - 08:38 PM
Creator #146
Posted 08 October 2016 - 11:18 PM
What is the code behind this long-task? Does the Lua code change in any way?
SquidDev #147
Posted 08 October 2016 - 11:21 PM
What is the code behind this long-task? Does the Lua code change in any way?
No changes are needed: you will need to run under the Cobalt (or upcoming Rembulan) runtime. The code looks like this:

print("Preparing to run a long task")
print("We're not going to yield much")

while true do
  for i = 1, 5 do
    for _ = 1, 2e6 do bit.band(1, 1) end
    print("Iteration " .. i)
  end
  write("Yielding... ")
  os.queueEvent("a")
  os.pullEvent("a")
  print("Done!")
end
SquidDev #148
Posted 24 October 2016 - 12:43 PM
Just release CCTweaks-Lua 1.1.0. Grab it if you feel like running multiple computers at once.

Changelog
  • Add Rembulan runtime - a Lua 5.3 implementation.
  • Fix INFLATE/DEFLATE including the zlib header.
  • Allow running multiple computers at once under the Cobalt and Rembulan runtimes.
  • Add additional LuaJC options
  • Add ability to change bios.lua path
  • Add file handle limit
Xerxes #149
Posted 25 October 2016 - 08:59 PM
Just release CCTweaks-Lua 1.1.0. Grab it if you feel like running multiple computers at once.

Changelog
  • Add Rembulan runtime - a Lua 5.3 implementation.
  • Fix INFLATE/DEFLATE including the zlib header.
  • Allow running multiple computers at once under the Cobalt and Rembulan runtimes.
  • Add additional LuaJC options
  • Add ability to change bios.lua path
  • Add file handle limit

squiddev my love <3

Can you tell me how much will break if I used Rembulan runtime on my server?
On the contrast, how much will break if I used Cobalt instead?

Also since this is not a release of CCTweaks itself, how would I go about using it? Just drop the CCTweaks-lua jar in my mods folder?
Edited on 25 October 2016 - 07:04 PM
SquidDev #150
Posted 25 October 2016 - 09:15 PM
Can you tell me how much will break if I used Rembulan runtime on my server?
It depends. If you have already disabled Lua 5.1 features then everything should work fine. If not then things are probably going to break as setfenv/getfenv don't exist any more.

On the contrast, how much will break if I used Cobalt instead?
Nothing. Well, hopefully anyway: if it does then its a bug.

Also since this is not a release of CCTweaks itself, how would I go about using it? Just drop the CCTweaks-lua jar in my mods folder?
You'll probably be better manually copying the files into the existing CCTweaks jar: its a bit more of a hassle but I'm not sure which classes will be loaded otherwise. I want to get a CCTweaks release out soon but finding an elegant solution to this bug is proving harder than expected.

Feel free to ping me on Gitter/GitHub if things break.
Edited on 25 October 2016 - 07:15 PM
Xerxes #151
Posted 26 October 2016 - 03:08 AM
Can you tell me how much will break if I used Rembulan runtime on my server?
It depends. If you have already disabled Lua 5.1 features then everything should work fine. If not then things are probably going to break as setfenv/getfenv don't exist any more.

On the contrast, how much will break if I used Cobalt instead?
Nothing. Well, hopefully anyway: if it does then its a bug.

Also since this is not a release of CCTweaks itself, how would I go about using it? Just drop the CCTweaks-lua jar in my mods folder?
You'll probably be better manually copying the files into the existing CCTweaks jar: its a bit more of a hassle but I'm not sure which classes will be loaded otherwise. I want to get a CCTweaks release out soon but finding an elegant solution to this bug is proving harder than expected.

Feel free to ping me on Gitter/GitHub if things break.

Do you think you could possibly create a pre-release of the next version without that last bug fix?
SquidDev #152
Posted 26 October 2016 - 11:03 AM
Do you think you could possibly create a pre-release of the next version without that last bug fix?

Eh, I just went for a full release. CCTweaks 1.2.0 has been released.
  • Bump CCTweaks-Lua version
    • Add Rembulan runtime
    • Add option to multi-thread computers
    • Fix HTTP request headers
    • Add ability to change bios.lua path
    • Add file handle limit
  • Massive network optimisations
    • Disable controller validation by default
    • INetworkNode.networkInvalidated is now only called when peripherals change
    • Optimise network visualiser rendering
    • Don't rescan whole network if all nodes have been found
  • Connecting to/detaching from networks should now be more predictable.
Xerxes #153
Posted 26 October 2016 - 11:17 AM
Do you think you could possibly create a pre-release of the next version without that last bug fix?

Eh, I just went for a full release. CCTweaks 1.2.0 has been released.
  • Bump CCTweaks-Lua version
    • Add Rembulan runtime
    • Add option to multi-thread computers
    • Fix HTTP request headers
    • Add ability to change bios.lua path
    • Add file handle limit
  • Massive network optimisations
    • Disable controller validation by default
    • INetworkNode.networkInvalidated is now only called when peripherals change
    • Optimise network visualiser rendering
    • Don't rescan whole network if all nodes have been found
  • Connecting to/detaching from networks should now be more predictable.

Sweet thanks! :)/>
SquidDev #154
Posted 27 October 2016 - 12:22 AM
And CCTweaks 1.2.1 is out which fixes everything being awful and not working.
  • Fixes Cobalt/Rembulan not executing tasks correctly
  • Fixes Cobalt ArrayOutOfBounds exception when using loadstring
  • Fixes several patches not being applied: multi-threading actually works in game now.
SquidDev #155
Posted 07 November 2016 - 09:50 PM
Just released CCTweaks 1.2.3. This is mostly a bug fix update. I'd like to say a big thank you to Xerxes and the rest of the SwitchCraft server in helping test this release and just encouraging me in what I do. They've been very tolerant of the crashes produced in testing this new release. Thanks to their help multi-threading is much more stable (famous last words).

Combining multi-threading with the new /cctweaks command has helped SwitchCraft to reduce much of the Computer lag on the server, meaning other players don't have to suffer from one badly written program :)/>.

Changelog
  • Bump CCTweaks-Lua version
    • Fixes Cobalt and Rembulan not working as expected
    • Limit labels to 32, printable ASCII characters
  • Add Cobalt and Rembulan support to the debug wand
  • Add commands (/cctweaks) to profile and list active computers: see which ones are taking up processor time.
  • Fix tool manipulator not syncing inventory correctly
  • Fix JEI documentation not being packaged on Windows
  • Many fixes to ensure multi-threading works correctly
  • Fix some turtle commands not supporting disabling
Edited on 07 November 2016 - 08:54 PM
Sewbacca #156
Posted 07 November 2016 - 10:04 PM
Wow and i really mean wow, not a wow, what a bad program, no i mean WOW!
Nice work dude!
Maybe i will download it, but i am not sure. i am coding a program, which should work on CC computers, but if i use this i dunno if i would get errors on normal computercraft. Where are the differences i mean the speed differences, because… i cannot explain it, but maybe you can guess what i mean.
Really nice work, i will test it!

An other question, is there any way to save a coroutine and the state of an coroutine with all upvalues?
SquidDev #157
Posted 07 November 2016 - 10:10 PM
I am coding a program, which should work on CC computers, but if i use this i dunno if i would get errors on normal computercraft. Where are the differences i mean the speed differences?
As long as you stick to vanilla ComputerCraft methods then everything will work as expected. The only real advantage of using CCTweaks exclusively for development is nicer error messages (though only under Cobalt) and access to the debug API (and the profiler API, and custom improved timeout handling, and custom timeout lengths, and… Wait, why aren't you using this already?). You won't notice massive speed boosts without enabling the LuaJC compiler: that is only ~1.5-2x faster.

Of course you can always utilise additional APIs provided by CCTweaks and fall back to another implementation if it does not exist: this is what Howl and BSRocks do for various tasks.

An other question, is there any way to save a coroutine and the state of an coroutine with all upvalues?
Nope. Persistence is something I'd love to add to ComputerCraft but it would require being able to serialise everythin, including peripherals which is not supported by the CC API.
Edited on 07 November 2016 - 10:08 PM
Xerxes #158
Posted 07 November 2016 - 11:21 PM
Just released CCTweaks 1.2.3. This is mostly a bug fix update. I'd like to say a big thank you to Xerxes and the rest of the SwitchCraft server in helping test this release and just encouraging me in what I do. They've been very tolerant of the crashes produced in testing this new release. Thanks to their help multi-threading is much more stable (famous last words).

Combining multi-threading with the new /cctweaks command has helped SwitchCraft to reduce much of the Computer lag on the server, meaning other players don't have to suffer from one badly written program :)/>.

Changelog
  • Bump CCTweaks-Lua version
    • Fixes Cobalt and Rembulan not working as expected
    • Limit labels to 32, printable ASCII characters
  • Add Cobalt and Rembulan support to the debug wand
  • Add commands (/cctweaks) to profile and list active computers: see which ones are taking up processor time.
  • Fix tool manipulator not syncing inventory correctly
  • Fix JEI documentation not being packaged on Windows
  • Many fixes to ensure multi-threading works correctly
  • Fix some turtle commands not supporting disabling

Thanks a lot for all the help! I'd like to point out that "much of the Computer lag" is quite an understatement. This update removed pretty much all of the computer lag on SwitchCraft.
SquidDev #159
Posted 09 November 2016 - 03:03 PM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
Spoiler

Well, it has taken much longer than I'd like but I've finally gotten round to it. Here we are: a beta release of CCTweaks for Minecraft 1.10.2. Grab it and ComputerCraft 1.80pr0 and enjoy! Be warned this is a beta release so expect some bugs.

What does this mean for 1.8.9?
We haven't got a stable version of ComputerCraft for 1.10.2 yet so the 1.8.9 version will remain my primary development version.

Doesn't 1.80pr0 have some problems?
Some people report it is working fine form them but, if you do have problems, I've written an additional mod which fixes all of the bugs reported on the GitHub repository, and some additional ones I found through testing. You can grab it here. Please note this is only a temporary mod until the next beta of ComputerCraft is released. Like CCTweaks, if you encounter bugs report them to me and not to Dan/the issue tracker.

I found a bug!
Great! Remember, this is still a beta so there will be some problems. Just add an issue on the CCTweaks repository and I'll be sure to fix it. Don't report it on the ComputerCraft issue tracker.
Edited on 25 June 2017 - 07:47 AM
Sewbacca #160
Posted 09 November 2016 - 05:22 PM
*Installing CCTweaks*
*Installed*
*Testing CCTweaks*
*Get questions*

What is the profiler API?
Can i messaure my func per ticks?
Give it the current time in nano sec?
It looks nice! – answer:9:question type expected got compliment
Is garabge collection integrated?
Edited on 09 November 2016 - 04:38 PM
SquidDev #161
Posted 11 November 2016 - 08:30 PM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerI've released an update to the CC 1.10.2 patcher.

Changelog
  • Fixes crash with adjacently powered redstone blocks
As said before, this is a beta so expect bugs. If you do encounter some, please report them and I'll get them fixed as soon as possible. Many thanks to the SwitchCraft team for using this and reporting the bugs they're finding.
Edited on 25 June 2017 - 07:45 AM
WhiteLion #162
Posted 24 November 2016 - 07:59 PM
Hihi,

is the any version of OpenPeripherals for MC 1.10.2 or any way to suck items form a chest with my turtle.
(not suck because it will not refill my turtle with a block as space holder of a specific block type)
SquidDev #163
Posted 24 November 2016 - 09:08 PM
is the any version of OpenPeripherals for MC 1.10.2 or any way to suck items form a chest with my turtle.
(not suck because it will not refill my turtle with a block as space holder of a specific block type)

You might want to look at Plethora which is another mod I'm developing with features similar to OpenPeripherals. If you wrap a chest as a peripheral you'll get these methods. I'm not sure if that is what you need?

Note: Plethora is still under beta so do expect some bugs.
WhiteLion #164
Posted 26 November 2016 - 03:26 PM
thank you for fast reply. I m unsure if this could help.

My old function I want to replace is this:


    function suckAllItems()
	  
	    local directions = {"north", "south", "east", "west"}
		    local chestDirection = ""
	    -- connect to the chest
		    local chest = peripheral.wrap("front")
	    if not chest then
		    print("Failed to connect to chest at front side.")
		    return false
	    end
		    -- probe test direction
		    for i = 1, #directions do
					  chestDirection = directions[i]
			  chestDirection = "north"
					  for i=1, chest.getInventorySize() do
				 print("i:"..i.." chestDirection:"..chestDirection)
							 chest.pushItem(chestDirection, i)
					  end
		    end
    end
SquidDev #165
Posted 26 November 2016 - 09:07 PM
thank you for fast reply. I m unsure if this could help.

My old function I want to replace is this:
So the methods you'd use are almost exactly the same, with getInventorySize() being replaced with size(). So your code would look something like:

local function suckAllItems()
	local directions = {"north", "south", "east", "west"}
	-- connect to the chest
	local chest = peripheral.wrap("front")
	if not chest then
		print("Failed to connect to chest at front side.")
		return false
	end
	-- probe test direction
	for i = 1, #directions do
		local chestDirection = directions[i]
		for i = 1, chest.size() do
			print("i:"..i.." chestDirection:"..chestDirection)
			chest.pushItem(chestDirection, i)
		end
	end
end
Edited on 26 November 2016 - 08:08 PM
SquidDev #166
Posted 27 November 2016 - 08:24 PM
I've just pushed an up update to CCTweaks and unborked:

CCTweaks 1.8.9: 1.2.4 changelog
  • Add command to shutdown computers
  • Computer upgrades correctly update the computer
  • Computer upgrades obey block protection
CCTweaks 1.10.2: 1.2.4 changelog
  • Fix computer upgrade not displaying animation
  • Fix broken wireless bridge turtle upgrade model
  • And all of the above
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerUnborked 1.0.4 changelog
  • Fix turtle.place not performing some actions (such as milking cows or breeding animals)
  • Don't dump ASM data by default
  • Fix turtle.drop throwing items a long distance
Edited on 25 June 2017 - 07:45 AM
vico #167
Posted 28 November 2016 - 10:12 PM
A small question: Is possible (and/or are you willing) to fix the annoying bugs (non-solid turtles/computers, huge turtle drop/on hand) introduced with 1.10.x with CCTweaks?
SquidDev #168
Posted 28 November 2016 - 10:35 PM
A small question: Is possible (and/or are you willing) to fix the annoying bugs (non-solid turtles/computers, huge turtle drop/on hand) introduced with 1.10.x with CCTweaks?
That is exactly what Unborked does: it fixes every 1.10.2 specific bug on the ComputerCraft issue tracker, plus a couple more we've discovered through testing. SwitchCraft have been running it for a couple of weeks now without a hitch, so it should be pretty stable. You can see the release post here for more information about the mod.
Edited on 28 November 2016 - 09:36 PM
vico #169
Posted 29 November 2016 - 04:15 AM
HOW
I
DIDNT
SEE
THIS
BEFORE!???

Thank you SO MUCH Squid!
SharkWipf #170
Posted 03 December 2016 - 01:47 AM
Unborked is exactly what I was looking for, I was wondering how CC Tweaks worked with the broken state Computercraft 1.10.2 currently is in.
I know you said this is a temporary mod until the next beta and everything, but as I haven't seen Dan200 mention Computercraft at all on his twitter over the past months I doubt we'll get it anytime soon.
Are we allowed to ship it as an external (non-Curse) mod with Curse modpacks? Currently Computercraft is basically unusable without it, not even redstone works.
vico #171
Posted 03 December 2016 - 03:33 AM
Unborked is exactly what I was looking for, I was wondering how CC Tweaks worked with the broken state Computercraft 1.10.2 currently is in.
I know you said this is a temporary mod until the next beta and everything, but as I haven't seen Dan200 mention Computercraft at all on his twitter over the past months I doubt we'll get it anytime soon.
Are we allowed to ship it as an external (non-Curse) mod with Curse modpacks? Currently Computercraft is basically unusable without it, not even redstone works.

I feel dan simpy give up of CC because he needs money; so i even have doubt about the future of this forum (hosting need money and that).
Anyway, i dont know if its possible, but could an 1.11 support with Unborked be in the plans? I dont know what kind of magic squid did to make the fixes, if is possible to add compatibility for CC for 1.11 we didnt even have dan200 anymore for updates :P/>
SquidDev #172
Posted 03 December 2016 - 08:01 AM
Are we allowed to ship it as an external (non-Curse) mod with Curse modpacks? Currently Computercraft is basically unusable without it, not even redstone works.
Yeah, feel free to do whatever with it (apart from claiming it is yours obviously). I'm pretty sure Curse allows you to upload custom files. If not, then I'll consider uploading it to curse, I'd just rather avoid it for now.

Dan200 mention Computercraft at all on his twitter over the past months I doubt we'll get it anytime soon.
A couple of weeks back he said we'll get an announcement soon so there is still hope :)/>. Obviously Redirection should be a priority for Dan though as he can earn money from it.

Anyway, i dont know if its possible, but could an 1.11 support with Unborked be in the plans? I dont know what kind of magic squid did to make the fixes, if is possible to add compatibility for CC for 1.11 we didnt even have dan200 anymore for updates :P/>
There was already a beta for 1.9 which, once "fixed", worked fine on 1.10 as there were few breaking changes. Truth be told, Dan had done most of the hard work already. 1.10 -> 1.11 has far more breaking changes, so I'm not sure how feasible it would be. It is something I will experiment with if it looks like the community begins to move towards 1.11, I suspect we will stick on 1.10 for some time.
Edited on 03 December 2016 - 07:02 AM
vico #173
Posted 03 December 2016 - 08:46 AM
Sadly. Most of the mods i use are already updating to 1.11. It would be a huuge advantage if you can begin experiment that :P/>

Anyway thanks a lot for this kind of support!
SharkWipf #174
Posted 03 December 2016 - 04:32 PM
Yeah, feel free to do whatever with it (apart from claiming it is yours obviously). I'm pretty sure Curse allows you to upload custom files. If not, then I'll consider uploading it to curse, I'd just rather avoid it for now.
Thanks! Yeah, Curse allows 3rd party mods if you can prove you have permission, so I'll link 'em to this reply and it should be fine. I'll make sure to credit you in the pack description as well.

A couple of weeks back he said we'll get an announcement soon so there is still hope :)/>. Obviously Redirection should be a priority for Dan though as he can earn money from it.
Oh, completely missed that tweet. Will keep an eye on it. Obviously his focus should be on Redirection now, he's worked hard on it for a long time, he deserves to earn his investment back from it now.

EDIT: Just got notified Unborked got added to the list of allowed 3rd party Curse mods (this list), so inclusion in Curse modpacks should be easier for people now.
For now it seems like my modpack is the only one on Curse with Computercraft working properly on 1.10.2 though \o/
Edited on 04 December 2016 - 01:35 AM
hugeblank #175
Posted 07 December 2016 - 11:17 PM
Have you talked to dan200 about putting your bugfixes into the curseforge post of computercraft? It's amazing that you went out and patched the issues, and Dan200 doesn't seem too apt to do it himself.
SquidDev #176
Posted 08 December 2016 - 08:01 AM
Have you talked to dan200 about putting your bugfixes into the curseforge post of computercraft? It's amazing that you went out and patched the issues, and Dan200 doesn't seem too apt to do it himself.
Dan has generally been hostile to mods which fiddle with the internals of ComputerCraft (which is fair - core mods are incredibly hacky and make everyone's lives harder). Whilst he has decided to turn a blind eye to CCTweaks, I don't want to go aggravating him by waving this under his nose. I'd love to see Unborked fixes (and several of CCTweaks' changes) merged into vanilla ComputerCraft, I just don't think it is ever going to happen.

Sorry :(/>.
Edited on 08 December 2016 - 07:02 AM
Lupus590 #177
Posted 08 December 2016 - 12:56 PM
@SquidDev Somewhat related question: If you found out that Dan200 had copied and pasted your code in order to 'Unbork' vanilla CC and add some features from CCTweaks, how would you react?
Edited on 08 December 2016 - 11:56 AM
SquidDev #178
Posted 08 December 2016 - 01:31 PM
@SquidDev Somewhat related question: If you found out that Dan200 had copied and pasted your code in order to 'Unbork' vanilla CC and add some features from CCTweaks, how would you react?
Hrrmrm. Unborked wise I'd be happy. I just want to have a working version of ComputerCraft for 1.10 (and kinda 1.11). After all, it isn't a mod I especially care about, nor do I want want to continue to maintain it.

CCTweaks is a much harder question. I originally started the mod as there were some great ideas in the suggestions forum which had been sitting idle for a while: my hope was always that they would end up in CC eventually. Other features I'm less sure about. My fear is that some features, were they to be merged, would not be as extensible or powerful as CCTweaks' implementation: making my job twice as hard. If they were integrated without limitations though, I'd be overjoyed. Frankly, I just want CC as good as possible, I don't mind how we get there.
hugeblank #179
Posted 11 December 2016 - 08:18 AM
I'm really glad that dan has put his time into redirection, the game looks freaking awesome, I just wish he would openly state that he is either continuing to work on CC, or giving up (This said, I'm 99% sure he'll continue it. The forums are still a thing. why would he keep it up if he didn't want to work on the mod anymore?). That way, if he is not continuing work, someone (or plural), can pick up from where he left off. Most people see me in game, on Nex-Core and such. I can say that this mod brought together a community that I would hate to see slip. I unfortunately already am seeing said slip in things like presence on CC related servers, the forums, and the like. That's not to say that it's hopeless to recover, just CC needs more frequent updates, and additions that are beneficial. I get that sometimes mods just go, and disappear off the face of the earth due to one reason or another. I never did think CC would get this close to it.
SquidDev #180
Posted 11 December 2016 - 09:04 AM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerI've just released Unborked 1.0.5. This fixes an issue with a couple of client side methods being used on the server side. You shouldn't need to update unless you are running a server.

Now for something completely different: I'm really struggling to find motivation to work on CCTweaks at the moment. Whilst I would consider the mod "finished", there are several bugs which need ironing out, as well as some improvements which could still be made. If you fancy helping out, it would be much appreciated: just working with other people provides a lot of motivation :)/>. Thanks!
Edited on 25 June 2017 - 07:45 AM
Bomb Bloke #181
Posted 11 December 2016 - 10:59 PM
You could always work on Taken
SquidDev #182
Posted 11 December 2016 - 11:25 PM
You could always work on Taken
Its on my backlog. Along with Plethora and a Howl rewrite and my inventory management program. :)/> I jump from shiny thing to shiny thing far to easily.
Edited on 11 December 2016 - 10:25 PM
vico #183
Posted 17 December 2016 - 04:22 AM
And you could always work on a 1.11 update for Unborked :P/>
Xerxes #184
Posted 18 December 2016 - 12:12 AM
A 1.11 update for CC does not exist yet.
Do you know how Unborked works? It patches the 1.9.4 version of CC. You cannot run the 1.9.4 version of CC on 1.11, at all. This is different from 1.10.2, where the forge bindings for 1.9.4 were almost exactly the same for 1.10.2.

Updating CC to 1.11 is not possible with patching alone as far as I know. The best solution would be to rewrite CC entirely and grab the visual assets from the 1.9.4 jar.
Edited on 17 December 2016 - 11:13 PM
SquidDev #185
Posted 18 December 2016 - 08:10 AM
A 1.11 update for CC does not exist yet.
Updating CC to 1.11 is not possible with patching alone as far as I know. The best solution would be to rewrite CC entirely and grab the visual assets from the 1.9.4 jar.
I mean, it is totally possible. I couldn't give you a percentage, but a fair bit of code wouldn't have to change. The issue is the bits of code which do have to change:
  • Mod ids now have to be lower case. I don't think this is too hard to change CC's but I haven't had a go.
  • Items can't be null. This means you have to change every null check to a validity check and every time you return null to return the invalid itemstack. This is hard enough to "fix" in a mod where you have access to the source but here you have to find every instance and patch it in an unobtrusive way.
At the moment I want to wait:
  • Until Forge 1.11.1 is released. Maybe even later. It is generally a couple of versions until Minecraft is "stable" anyway.
  • To see if Dan is going to port in the immediate future. I don't really want Unborked to exist, it is a hack to fix some problems I was having, rather than a thing that I want to stick around.
  • Until there is a sizeable shift to 1.11. Apart from Refined Storage, most mods are continuing to develop for 1.10.2 in tandem with 1.11.
This being said, I'm happy to guide someone else through the process of patching CC to 1.11, I just don't want to start on it quite yet.
Edited on 18 December 2016 - 07:10 AM
vico #186
Posted 18 December 2016 - 08:23 AM
At the moment I want to wait:
  • Until Forge 1.11.1 is released. Maybe even later. It is generally a couple of versions until Minecraft is "stable" anyway.

Well, we already have a RB for 1.11, and 1.10.2 Forge team already stopped developement.

At the moment I want to wait:
  • To see if Dan is going to port in the immediate future. I don't really want Unborked to exist, it is a hack to fix some problems I was having, rather than a thing that I want to stick around.
Assuming his latest tweets, i doubt he's willing to do anything aside his game and Pokemon Go. Plus he promise a lot of weeks ago an announcement for CC, but never gave it.

At the moment I want to wait:
  • Until there is a sizeable shift to 1.11. Apart from Refined Storage, most mods are continuing to develop for 1.10.2 in tandem with 1.11.
Well, at least my 1.10.2 modpack is almost complete for 1.11 (the major mods still to be updated are CC and OpenFM). I cant say much about big mods (those which shifts abruptly from vanilla gameplay), but looking at curse page for 1.11 mods there a decently number of mods for 1.11.


EDIT: Small edit just to reminder 1.11.2 is out, almost RB. What a great time to bring Unborked for 1.11, no?
Edited on 24 January 2017 - 04:06 AM
vico #187
Posted 27 January 2017 - 11:11 PM
Sorry the double post, seems like edits doesnt yeld any notification, just to reminder 1.11.2 is out, almost RB. What a great time to bring Unborked for 1.11.x, no?
SquidDev #188
Posted 07 February 2017 - 06:37 PM
Well, updates happened. A couple of updates to various things and a new mod! Well, sort of anyway. Anyways, changelog time:

CCTweaks-Lua 1.3.0
There isn't much exciting here, but that doesn't mean changes haven't occurred.

The "biggest" change is that I've moved a lot of stuff into a separate mod. CCTweaks-Lua was bundling 2 additional Lua runtimes and 2 Lua to Java compilers. This, as you can imagine, significantly increased the size of the distribution. As only Cobalt was seeing substantial use, I've moved Rembulan, luaj.luajc and cobalt.luajc elsewhere. On the bright side, CCTweaks-Lua is now half the size it used to be.

I've also added a primitive "plugin" system for CCTweaks-Lua, which allows you to run Lua specific addons (such as CCGit once I sort a couple of things out) inside an emulator.

Of course, most of you don't actually care about this so there have been some features and bug fixes too:
  • Rewrite the computer thread to correctly terminate programs. This means that the multi-threading executor should function identically to vanilla Lua's executor when the thread count is 1.
  • Add socket_messageand socket_connect events, meaning you don't have to poll for connections.
CCTweaks-Runtimes 1.0.0
As you may have gathered from the previous paragraph, these additional runtimes had to go somewhere. This somewhere is CCTweaks-Runtimes. It works both as a mod and in emulators such as CCEmuX and CCEmuRedux (as long as it is on the class path).

CCTweaks 1.3.0
Well now we get to the real meat of the update. A couple of warnings first though: this update has a few significant changes to CC's handling of things. This may break things, despite all my testing. If it does, please report straight away so I can fix it quickly. Thanks :)/>.

Important: On a similar vein: this update will break Plethora.Version 1.1.0 will fix that so make sure you update both at the same time.

Anyways, changes:
  • Save computer state when it changes. This is my attempt at fixing the infamous "computers are all off" bug. I'd really appreciate some feedback on this if it actually works or not.
  • Add JEI recipe providers for turtle and pocket upgrades. Whilst vanilla upgrades have their own recipes, this really helps with modded upgrades.
  • Improve network visualiser, reducing network traffic. This means you can view all connections of a 40k node network without major lag.
  • Add direction parameter to turtle.place, allowing some control over which direction blocks are facing when placed. This is by no means perfect, but it helps a little.
  • Optimise CC's packets, reducing network traffic. As mentioned above, this breaks the current release of Plethora so you'll want to disable this for now if you update.
  • Rewrite the /cctweaks command, adding the ability to view arbitrary computers and spawn in computers with a specified ID.
  • Add Forge Energy and Tesla fuel support for turtles.
  • Fix multipart cables and modems not converting correctly
  • Fix pocket upgrades being lost when upgrading
  • Fix computers being shut down when using Sponge's tick limiting.
I've also rewritten the documentation and fleshed it out a lot, hopefully making things a little clearer. Any feedback is welcome :)/>.

As always, please report any issues you encounter so I get about fixing them.
Edited on 07 February 2017 - 09:28 PM
Lupus590 #189
Posted 07 February 2017 - 10:24 PM
Important: On a similar vein: this update will break Plethora.The next version (which I'll hopefully release today or tomorrow) will fix that, but please don't update CCTweaks yet. If you really want to, you'll have to set everything in the packet section of the config to false.

[Plethora update]
If you're using CCTweaks (and if not, why not? :P/>) then you must update to 1.3.0. If you're not, then nothing to worry about.
I'm guessing that the compatibility issue for Plethora is resolved in the Plethora update.
Edited on 07 February 2017 - 09:26 PM
SquidDev #190
Posted 07 February 2017 - 10:28 PM
I'm guessing that the compatibility issue for Plethora is resolved in the Plethora update.
Yep. Thanks :)/>. I've updated the OP.
SquidDev #191
Posted 08 February 2017 - 11:32 PM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
Spoiler

Urrrh. Why do I do this to myself? Anyways, just in time for the first 1.12 snapshot I present to you unborked 1.1.0 for Minecraft 1.11.2. Now with 100% more black magic.

I'm not joking about the black magic. In order to trick Forge into loading a 1.9.4 mod in 1.11.2 we have to employ some really dirty hacks. In this case, we patch the CC jar before it gets loaded and apply some transformations. However, you CANNOT distribute this modified file as it is against the ComputerCraft license. Please keep a copy of the original jar and be careful in which one you distribute (should you ever want to build a mod pack out of this).

Needless to say there are probably a tonne of bugs in this so please report them on the CCTweaks issue tracker. Include "Unborked" in the title so I know what it is about. Don't forget to upload your logs somewhere!
Edited on 25 June 2017 - 07:44 AM
Dametqwerty #192
Posted 09 February 2017 - 03:35 AM


Urrrh. Why do I do this to myself? Anyways, just in time for the first 1.12 snapshot I present to you unborked 1.1.0 for Minecraft 1.11.2. Now with 100% more black magic.

I'm not joking about the black magic. In order to trick Forge into loading a 1.9.4 mod in 1.11.2 we have to employ some really dirty hacks. In this case, we patch the CC jar before it gets loaded and apply some transformations. However, you CANNOT distribute this modified file as it is against the ComputerCraft license. Please keep a copy of the original jar and be careful in which one you distribute (should you ever want to build a mod pack out of this).

Needless to say there are probably a tonne of bugs in this so please report them on the CCTweaks issue tracker. Include "Unborked" in the title so I know what it is about. Don't forget to upload your logs somewhere!

Is there a way to do this without breakiNg the license?
Lyqyd #193
Posted 09 February 2017 - 03:38 AM
Don't distribute the copy of ComputerCraft that's in the mods folder after you've launched the game with Unborked.
hugeblank #194
Posted 09 February 2017 - 07:22 AM
Hehehe for those of you that may have an interest in this, and may want to play with others, expect a 1.11.2 Unborked CC server (KrakenKraft [See the squid reference?]) to come Saturday, possibly earlier (possibly later) depending on time zones.

Has dan200 shown any interest in the continuation of CC? I'm sure there's a boatload of other people out there asking the same question, but it begs answering. Anyways, thanks so much for pulling this off squid, you're a real hero to the community.
Edited on 09 February 2017 - 06:27 AM
Bomb Bloke #195
Posted 09 February 2017 - 07:27 AM
He hasn't been around for a while, but there've been delays between updates before. I wouldn't read too much into it one way or the other.
hugeblank #196
Posted 09 February 2017 - 07:28 AM
Delays bigger than this one?
Bomb Bloke #197
Posted 09 February 2017 - 07:38 AM
Could be, could be not. I haven't counted the days. :)/>
hugeblank #198
Posted 09 February 2017 - 08:09 AM
Checking curseforge… no, there hasn't been a gap as large as this one. There are a couple 6 month gaps, but we're 7 strong currently. Seeing that gaps have occurred before does relieve some fear I had about dan abandoning CC.

And for the record, I am aware he does this for free, and really he can do whatever he wants, with little to no care about the community input. However disappearing for 7 months without a word about it is not a very beneficial strategy in maintaining interest in the mod. (Assuming interest is what he wants)
Edited on 09 February 2017 - 07:11 AM
SquidDev #199
Posted 09 February 2017 - 06:12 PM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerA tiny update to Unborked. This ensures the mod metadata is displays correctly on the mods page. It isn't especially exciting but every little helps.

Is there a way to do this without breaking the license?
As Lyqyd said, delete the patched one and place in the normal one instead before distributing. Unborked will rename the modified jar to include DO-NOT-DISTRIBUTE so it is pretty easy to tell which one is which.

Also guys, lets keep this thread clear of update speculation. We don't know what is happening so we shouldn't worry too much :)/>.
Edited on 25 June 2017 - 07:44 AM
Neekow #200
Posted 11 February 2017 - 11:14 PM
Hey! Don't know how i missed this server and opened a thread …

Who am i? Well, a quite ancient/inactive player. Played CC some years ago. Actually i'm a server admin.
Which server? To avoid any problem about advertising, wont tell unless an admin allows me. But the goals of the server are quite simple: Free (respecting EULA), Fair, Fun. Actually we have a Redstone world and a Command block world. (Bungee powered)
Why would i ComputerCraft? Well, as said before, we already have Redstone and CmdB. With them we can build computers, why not having ComputerCraft and start programming?

Note: About the server, we'r clearly not here to make money but to provide a cool place to who want to have fun.

about Unborked:
- Seems to be in 1.11, works only on forge? Or Sponge is good too? (clearly, i don't know both … i'm more spigot/bungee)
- Does it respect plots?
- Is there permissions? (max turtle/player, max comp/player etc …)
SquidDev #201
Posted 12 February 2017 - 12:05 AM
About Unborked:
- Seems to be in 1.11, works only on forge? Or Sponge is good too? (clearly, i don't know both … i'm more spigot/bungee)
It requires Forge as ComputerCraft is a Forge mod. Currently there is an issue with Sponge but I'm hoping to get this fixed in the next few days.

- Does it respect plots?
Yes and no. It uses Minecraft's internal block protection. Sponge hooks into this to fire the appropriate events. However, most Sponge plot/claim mods don't seem to handle all events correctly meaning that it doesn't always work. I know GriefPrevention works, but doesn't support plots, just claims.

- Is there permissions? (max turtle/player, max comp/player etc …)
No. This sort of limiting is kinda hard to get right: both in terms of player tracking and limiting. If someone can come up with a decent strategy to approach this I'd be happy to implement it.
Neekow #202
Posted 12 February 2017 - 12:49 AM
Thx! =)

I'll make some tests in few days. ;)/>
SquidDev #203
Posted 12 February 2017 - 09:47 AM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerAnother Unborked update, now with slightly less bugs!

Changelog
  • Allow running under Sponge.
  • Fix crashes caused by turtles trying to push players.
Many thanks to those people who have reported bugs, especially those on the KrakenKraft server.
Edited on 25 June 2017 - 07:44 AM
SquidDev #204
Posted 12 February 2017 - 08:08 PM


Oh hello? Is this a CCTweaks update?
Why yes. Yes it is.

Right. This is the first beta release of CCTweaks for 1.11.2. There shouldn't be any functionality changes: I've just updated the code to work on 1.11.2. As with all major releases, there will be bugs. Please report them on the issue tracker so I can fix them quickly.
Neekow #205
Posted 14 February 2017 - 04:20 AM
- Is there permissions? (max turtle/player, max comp/player etc …)
No. This sort of limiting is kinda hard to get right: both in terms of player tracking and limiting. If someone can come up with a decent strategy to approach this I'd be happy to implement it.

Hum, while trying to find Sponge was thinking about that. It's only an idea, i'm not a dev' at all. Why not creating a file (json?*)? When a player put a computer, it writes [computer ID | Player] if ever the player has a name computer, he can't place it (cancel event) if he already reached the maximum.
OFC, can be by passed if Comp/Turtle can be placed by dispenser … (never tried)

And by this way, having turtle ID and Player, should be possible to disable some functions, isn't it? Like, i'm using Pex atm, when a computer runs a program, should ping the player's permissions. (Clearly, i don't know why would i disable functions, but i know my player, you can build a massive concrete wall without door, they'll find a way pass through)

*if i'm not wrong, there already some plugins (even minecraft itself) uses json, and could be useful to log things like [comp/turtle | ID | player UUID | location (for comp) | etc….], quite easy to read this format.
Edited on 14 February 2017 - 03:24 AM
SquidDev #206
Posted 14 February 2017 - 08:07 AM
And by this way, having turtle ID and Player, should be possible to disable some functions, isn't it? Like, i'm using Pex atm, when a computer runs a program, should ping the player's permissions. (Clearly, i don't know why would i disable functions, but i know my player, you can build a massive concrete wall without door, they'll find a way pass through)
Interestingly, most of that is tracked already by Sponge (well I'm pretty sure it is). When a turtle breaks a block, it should be able to determine its owner, and so whether they have permission to dig there.

if ever the player has a name computer, he can't place it (cancel event) if he already reached the maximum. OFC, can be by passed if Comp/Turtle can be placed by dispenser … (never tried)
This is where things get more tricky. The first issue to consider is player tracking. It might be possible to hook into Sponge's tracking system, or I could re-implement it - it would be less effective but would mean people could still use the feature without Sponge. As you mention, what do you do when something has no owner though? Do you let it run un-limited? - obviously not ideal as everyone would just do that? Do you stop it all together? - again, not the nicest solution.

Another issue is how you handle a user having too many computers. Blocking people from placing turtles/computers seems an ugly solution to the problem. Similarly, stopping people from turning on a computer seems sub-optimal: I often leave computers on (in Minecraft that is) when I'm not using them - you don't want to force people to shut down everything just to use another computer. However, each computer which is on does have an overhead so it might be worth considering none the less. My "ideal" solution would be something which "slows down" a computer: buffering the events it receives. However the events turtles receive aren't that quick: there is probably 0.4-0.6 seconds worth of delay between each one.
Neekow #207
Posted 15 February 2017 - 02:08 AM
Well, limiting amount of computer will reduce the amount of useless ones and force player to learn and do better programs. ^^
About unowned computer/turtle: cancel event? well … by writing it just remembered how its fun to settle a turtle army so turtle has to have the right to put a lil' sister. Meh

I absolutely don't know how CC is done, but a huge improvement could be an asynchronous treatment of comps/turtle. I saw the difference between regular WorldEdit and moded WE (with FAWE). Regular: 200k bloc and crash, FAWE = 10M random blocks with light updates in something like 1 minutes

I'll try to do a list of what player's do with CC to find a suggestion ;)/>


Oh yeah, i cant launch CC =(. When i launch forge (1.11.1-13.20.0.2228) its says me that CC1.8pr0 (or above) is missing, but i've it in my folder =/
I promise, no more work on my server past 3am …
Edited on 15 February 2017 - 01:43 AM
vico #208
Posted 18 February 2017 - 11:48 AM
Thanks a LOT Squid! Its always a pleasure to play Minecraft with CC
Edited on 18 February 2017 - 10:52 AM
SquidDev #209
Posted 18 February 2017 - 11:51 AM
Thanks a LOT Squid! Its always a pleasure to play CC with Minecraft
Well how else are you going to play CC? In an emulator? :P/>
vico #210
Posted 18 February 2017 - 11:53 AM
Thanks a LOT Squid! Its always a pleasure to play CC with Minecraft
Well how else are you going to play CC? In an emulator? :P/>

Fixed that typo :P/>
SquidDev #211
Posted 18 February 2017 - 05:21 PM
Just released a small update: CCTweaks 1.3.1. This includes a couple of minor bug fixes, as well as the first "stable" release for 1.11.2. If you want to update your current world to 1.11.2, I recommend you first install CCTweaks 1.3.1 on your current version then upgrade.

Changelog
  • Prefix all tile entity names with cctweaks:. This is required for 1.11 to function correctly.
  • Correct text table width in terminal.
  • Broadcast terminal state when changing computer state.
vico #212
Posted 21 February 2017 - 12:28 AM
Hi!

I'm getting some issues running CC, unborked and CCTweakes beta on MC 1.11.2. When i try to load a world already with a CC block on it the game freezes. Removing the three jars and the game loads the world.

Here the crash log (i have a hard time figuring what happen, due the great sh*t new MC launcher), the log says something about MalisisCore but i just removed those 3 CCs jars and keep the rest and everyting worked as expected:


---- Minecraft Crash Report ----
WARNING: coremods are present:
  TweaksLoadingPlugin (CCTweaks-1.11.2-1.3.1.jar)
  UnborkedPlugin (unborked-1.11.2-1.80pr0-1.1.1.jar)
  CXLibraryCore (cxlibrary-1.11.2-1.4.0.jar)
  offlineskins (OfflineSkins-1.11.2-v1.jar)
  LoadingPlugin (DimensionRules-MC1.11-1.1.jar)
  ForgelinPlugin (Forgelin-1.3.1.jar)
  MalisisCorePlugin (malisiscore-1.11.2-5.1.1.jar)
Contact their authors BEFORE contacting forge
// I'm sorry, Dave.
Time: 2/20/17 9:10 PM
Description: Exception in server tick loop
java.lang.NoClassDefFoundError: kq
at net.minecraftforge.fml.common.event.FMLModIdMappingEvent.<init>(FMLModIdMappingEvent.java:77)
at net.minecraftforge.fml.common.Loader.fireRemapEvent(Loader.java:1064)
at net.minecraftforge.fml.common.registry.PersistentRegistryManager.injectSnapshot(PersistentRegistryManager.java:360)
at net.minecraftforge.fml.common.FMLContainer.readData(FMLContainer.java:329)
at net.minecraftforge.fml.common.FMLCommonHandler.handleWorldDataLoad(FMLCommonHandler.java:421)
at net.minecraft.world.storage.SaveFormatOld.loadAndFix(SaveFormatOld.java:119)
at net.minecraft.world.storage.SaveHandler.func_75757_d(SaveHandler.java:122)
at net.minecraft.server.integrated.IntegratedServer.func_71247_a(IntegratedServer.java:76)
at net.minecraft.server.integrated.IntegratedServer.func_71197_b(IntegratedServer.java:197)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442)
at java.lang.Thread.run(Thread.java:745)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- System Details --
Details:
Minecraft Version: 1.11.2
Operating System: Windows 10 (amd64) version 10.0
Java Version: 1.8.0_25, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 367879712 bytes (350 MB) / 860852224 bytes (820 MB) up to 1060372480 bytes (1011 MB)
JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP 9.38 Powered by Forge 13.20.0.2233 Optifine OptiFine_1.11.2_HD_U_B8_pre 32 mods loaded, 32 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCHIJAA minecraft{1.11.2} [Minecraft] (minecraft.jar)
UCHIJAA mcp{9.19} [Minecraft Coder Pack] (minecraft.jar)
UCHIJAA FML{8.0.99.99} [Forge Mod Loader] (forge-1.11.2-13.20.0.2233.jar)
UCHIJAA forge{13.20.0.2233} [Minecraft Forge] (forge-1.11.2-13.20.0.2233.jar)
UCHIJAA unborked_core{1.1.1} [Unborked Core] (minecraft.jar)
UCHIJAA <CCTweaks ASM>{1.3.1} [<CCTweaks ASM>] (minecraft.jar)
UCHIJAA mercurius_updater{1.0} [mercurius_updater] (MercuriusUpdater-1.11.jar)
UCHIJAA ambidextrous{1.1} [Ambidextrous] (ambidextrous-1.1.jar)
UCHIJAA computercraft{1.80pr0} [ComputerCraft] (ComputerCraft1.80pr0-patched-DO-NOT-DISTRIBUTE.jar)
UCHIJAA cctweaks{1.3.1} [CCTweaks] (CCTweaks-1.11.2-1.3.1.jar)
UCHIJAA chesttransporter{2.7.0} [Chest Transporter] (ChestTransporter-1.11.2-2.7.0.jar)
UCHIJAA crafttweakerjei{1.0.1} [CraftTweaker JEI Support] (CraftTweaker-1.11.2-3.0.21.jar)
UCHIJAA jei{4.2.6.238} [Just Enough Items] (jei_1.11.2-4.2.6.238.jar)
UCHIJAA crafttweaker{3.0.21} [Crafttweaker] (CraftTweaker-1.11.2-3.0.21.jar)
UCHIJAA ctgui{1.0.0} [CT-GUI] (CraftTweaker-1.11.2-3.0.21.jar)
UCHIJAA cxlibrary{1.4.0} [CXLibrary] (cxlibrary-1.11.2-1.4.0.jar)
UCHIJAA dimensionrules{1.1} [Dimension Rules] (DimensionRules-MC1.11-1.1.jar)
UCHIJAA fbp{2.0.2} [Fancy Block Particles] (FancyBlockParticles-1.11.2-2.0.2.jar)
UCHIJAA forgelin{1.3.0} [Forgelin] (Forgelin-1.3.1.jar)
UCHIJAA globalgamerules{2.0} [Global GameRules] (GlobalGameRules-1.11-2.0.jar)
UCHIJAA hopperducts{1.4.9} [Hopper Ducts] (hopperducts-mc1.11.2-1.4.9.jar)
UCHIJAA jeresources{0.6.2.101} [Just Enough Resources] (JustEnoughResources-1.11.2-0.6.2.101.jar)
UCHIJAA malisiscore{1.11.2-5.1.1} [MalisisCore] (malisiscore-1.11.2-5.1.1.jar)
UCHIJAA malisisblocks{1.11.2-5.1.0} [Malisis Blocks] (malisisblocks-1.11.2-5.1.0.jar)
UCHIJAA malisisdoors{1.11.2-6.1.0} [MalisisDoors] (malisisdoors-1.11.2-6.1.0.jar)
UCHIJAA offlineskins{1.11.2-v1} [OfflineSkins] (OfflineSkins-1.11.2-v1.jar)
UCHIJAA shadowmc{3.7.1} [ShadowMC] (ShadowMC-1.11.2-3.7.5.jar)
UCHIJAA unborked{1.1.1} [Unborked] (unborked-1.11.2-1.80pr0-1.1.1.jar)
UCHIJAA wearablebackpacks{2.3.0} [Wearable Backpacks] (WearableBackpacks-1.11.2-2.3.0.jar)
UCHIJAA wolfarmor{1.3.2} [Wolf Armor and Storage] (wolfarmor-1.3.3.6.jar)
UCHIJAA xaerominimap{1.12.2} [Xaero's Minimap] (Xaeros_Minimap_1.12.2_Forge_1.11.jar)
UCHIJAA xaeroworldmap{1.8} [Xaero's World Map] (XaerosWorldMap_b1.8_Forge_1.11.jar)
Loaded coremods (and transformers):
TweaksLoadingPlugin (CCTweaks-1.11.2-1.3.1.jar)
  org.squiddev.cctweaks.core.asm.ASMTransformer
UnborkedPlugin (unborked-1.11.2-1.80pr0-1.1.1.jar)
  org.squiddev.unborked.core.UnborkedTransformer
CXLibraryCore (cxlibrary-1.11.2-1.4.0.jar)
  cubex2.cxlibrary.CoreModTransformer
offlineskins (OfflineSkins-1.11.2-v1.jar)
  lain.mods.skins.asm.ASMTransformer
LoadingPlugin (DimensionRules-MC1.11-1.1.jar)
  lumien.dimensionrules.asm.ClassTransformer
ForgelinPlugin (Forgelin-1.3.1.jar)
 
MalisisCorePlugin (malisiscore-1.11.2-5.1.1.jar)
  net.malisis.core.util.chunkcollision.ChunkCollisionTransformer
  net.malisis.core.util.chunkblock.ChunkBlockTransformer
  net.malisis.core.renderer.transformer.MalisisRendererTransformer
  net.malisis.core.renderer.icon.asm.TextureMapTransformer
  net.malisis.core.util.clientnotif.ClientNotifTransformer
GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
Profiler Position: N/A (disabled)
Player Count: 0 / 8; []
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'
OptiFine Version: OptiFine_1.11.2_HD_U_B8_pre
Render Distance Chunks: 12
Mipmaps: 4
Anisotropic Filtering: 1
Antialiasing: 0
Multitexture: false
Shaders: null
OpenGlVersion: 4.4.0 - Build 10.18.15.4279
OpenGlRenderer: Intel(R) HD Graphics 5500
OpenGlVendor: Intel
CpuCount: 4
SquidDev #213
Posted 21 February 2017 - 07:39 AM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
Spoiler
I'm getting some issues running CC, unborked and CCTweakes beta on MC 1.11.2. When i try to load a world already with a CC block on it the game freezes. Removing the three jars and the game loads the world.
Thanks for the report, though for next time can you put it on GitHub or in a pastebin - just helps keep the thread a little neater :)/>. I'm pretty sure this bug was fixed with Unborked 1.1.2: it looks pretty similar to this one.
Edited on 25 June 2017 - 07:43 AM
vico #214
Posted 21 February 2017 - 07:45 AM
I'm getting some issues running CC, unborked and CCTweakes beta on MC 1.11.2. When i try to load a world already with a CC block on it the game freezes. Removing the three jars and the game loads the world.
Thanks for the report, though for next time can you put it on GitHub or in a pastebin - just helps keep the thread a little neater :)/>. I'm pretty sure this bug was fixed with Unborked 1.1.2: it looks pretty similar to this one.

Oh thanks for the tip, and i didnt see that CC update coming :P/>
Did i need to redowload the original beta CC jar to unborked patch again or the new version will fix the already patched jar?
SquidDev #215
Posted 21 February 2017 - 07:56 AM
Did i need to redownload the original beta CC jar to unborked patch again or the new version will fix the already patched jar?
Nah, it should re-patch the modified jar.
SquidDev #216
Posted 25 February 2017 - 12:51 PM
Just pushed Unborked 1.1.3. This fixes crashing when inserting/extracting items from inventories with hoppers.
Edited on 25 February 2017 - 11:56 AM
Nokiyen #217
Posted 25 February 2017 - 02:29 PM
Hello, SquidDev.

This is just a report. I released my CC addon for unborked-patched CC.
I'm still not sure your unborked is, hmm, "OK" or something like that. (it's difficult to say for me)
But your add-on is technically very great, and I am simply happy to play CC on MC1.11.2 :)/>
SquidDev #218
Posted 25 February 2017 - 07:01 PM
This is just a report. I released my CC addon for unborked-patched CC.
Thanks! It's nice to see other peripheral mods migrating to 1.11 :)/>

I'm still not sure your unborked is, hmm, "OK" or something like that. (it's difficult to say for me)
Yeah. the whole premise and implementation of unborked is kinda dodgy. It's sort of in a legal grey area where it doesn't break the CC license, but it also feels kinda "wrong". As I've said before, I don't plan for it to exist for ever: only until CC is updated.
SquidDev #219
Posted 25 February 2017 - 09:03 PM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerAwfully sorry about the update spam, but Unborked 1.1.4 has just been released. This fixes an issue with turtle.suck deleting items from inventories.
Edited on 25 June 2017 - 07:43 AM
CC_Jojo #220
Posted 01 March 2017 - 11:15 AM
Sorry if this is a really dumb question, but can you play this mod whitout computercraft cause it's not on 1.11 and on the curse dependencies page there is computercraft.

sry for bad english I'm German.
SquidDev #221
Posted 01 March 2017 - 11:27 AM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
Spoiler
Sorry if this is a really dumb question, but can you play this mod whitout computercraft cause it's not on 1.11 and on the curse dependencies page there is computercraft.
Yeah, this isn't very well documented/explained on my part.

Whilst there isn't an official port of ComputerCraft, I also develop a mod called Unborked which allows ComputerCraft 1.80pr0 to run on Minecraft 1.11.2: just drop Unborked and ComputerCraft in the mods folder and everything should "just work".
Edited on 25 June 2017 - 07:43 AM
CC_Jojo #222
Posted 01 March 2017 - 11:49 AM
Thanks, i was trying to use the normal cc. that didn't work.


Edit: the Unborked download link doesn't work. It just gives me an blank error page: "The requested path was not found."
Edited on 01 March 2017 - 10:51 AM
AitorDB #223
Posted 01 March 2017 - 11:56 AM
AgradeciHi! Sorry for bother, recently I have installed CC in my forge server (FTB Hermit pack), but I have a problem when I try launch "dj" command (this doesn't happen in singleplayer). I have tried with CC Tweaks but it doesn't fix it. I'm not sure that this was the correct site to post this, if it isn't, my apologizes.

Problem when I run "dj":
Java Exception Thrown: java.lang.NoSuchMethodError: net.minecraft.ite.ItemRecord.func_185075_h()Lnet/minecraft/util/SoundEvent:

I have not found any solution. If you could help me, I'll be really thankful.

Thanks you so much, and sorry for my bad english.
SquidDev #224
Posted 01 March 2017 - 01:31 PM
Edit: the Unborked download link doesn't work. It just gives me an blank error page: "The requested path was not found."
Ahh, awfully sorry. I somehow managed to add an extra character on the end of the link. Should be fixed now.
donoya #225
Posted 01 March 2017 - 08:37 PM
Where can I find documentation on Unborked? I've looked on github and couldn't find it and a google search turned up irrelevant results. I'm trying to get started with modding and would like to make a 1.11.2 addon for computercraft.
SquidDev #226
Posted 01 March 2017 - 11:27 PM
Where can I find documentation on Unborked? I've looked on github and couldn't find it and a google search turned up irrelevant results. I'm trying to get started with modding and would like to make a 1.11.2 addon for computercraft.
All you should need to do in a dev environment is put the development version of Unborked in your mods folder, along with the ComputerCraft jar. You can also put Unborked on the classpath, though the CC jar must be in the mods folder: you can have a look at Plethora's build.gradle file for an example of how to do this:


repositories {
    jcenter()
    maven { url = "https://dl.bintray.com/squiddev/maven" } // Unborked
    ivy { artifactPattern "http://addons-origin.cursecdn.com/files/2311/39/[module][revision](.[ext])" } // ComputerCraft
}

dependencies {
    // Note the "provided". We can't use "compile" as we have to explicitly place it in the mods folder.
    provided "ComputerCraft:ComputerCraft:1.80pr0"

    // Note "compile", though this could also be "runtime". The ":dev" is important: otherwise it won't work.
    compile "org.squiddev:unborked:1.11.2-1.80pr0-1.1.4:dev"
}
SquidDev #227
Posted 02 March 2017 - 08:38 PM
What, what old boy! It's a jolly good ol' CCTweaks update, and a rather nice one if I do say so my self.

A rather fancy pocket API
Well, all you spiffing chaps out there with your brand, spanking new pocket computers: this one's for you. The pocket API has got two shiny new methods: equip() and unequip(). These jolly fellas allow you to add and remove upgrades from your pocket computer, placing them back into your inventory. Rather useful I must say.

Custom ROM via crafting
A long time ago, some marvellous old fellow posted this proposition which I, like many of you, thought was a rather superb idea. Now, every Tom, Richard and Harry can try this for themselves: just acquire a disk, place bios.lua file in it's root directory and carefully craft it with your computer. Bravo old boy, you've escaped the shackles of CraftOS, and are free to do what you want.
Not quite, I still protect against accessing the string metatable and what not (unless you're on Cobalt, then it's perfectly safe).

If your appetite for information is not satisfied, I heartily recommend you traverse the documentation.

Full changelog
  • Add pocket API, with .equip() and .unequip() methods, allow you to change upgrades.
  • Allow booting computers from a custom ROM when crafted on a disk.
  • Fix key repeat events not triggering when JEI is installed.
  • Fix being able to craft an upgraded pocket computer with a modem.
Edited on 02 March 2017 - 07:56 PM
hugeblank #228
Posted 02 March 2017 - 10:45 PM
Question: does the bios.lua trick work with pocket computers?
SquidDev #229
Posted 02 March 2017 - 10:49 PM
Question: does the bios.lua trick work with pocket computers?
Not quite. I don't follow the original suggestion to the letter for various reasons. Instead you craft the finished computer/pocket computer/turtle with a disk in order to use a custom bios. For more details, see the wiki.
vico #230
Posted 05 March 2017 - 01:10 AM
A question: you can only update the bios.lua via crafting with a disk or we can add new programs (without changing the bios)?
SquidDev #231
Posted 05 March 2017 - 07:56 AM
A question: you can only update the bios.lua via crafting with a disk or we can add new programs (without changing the bios)?
It replaces the entire rom mount, meaning you have to write both the bios and all the desired programs and APIs. Of course, you can just copy all the files from the existing rom mount (and whatever parts of bios.lua you need).
SquidDev #232
Posted 05 March 2017 - 01:58 PM
I've just released a couple of minor bug-fix updates:

CCTweaks-Runtimes 1.0.1
This fixes using CCTweaks-Runtimes under Minecraft 1.10.2 and 1.11.2. Thanks to CoderPuppy for the PR!

CCTweaks 1.3.3
This update is just for 1.10.2 and 1.11.2, fixing a crash caused by a computer saving its NBT.

On a side note, using Asie's EnvironmentChecker it is possible to see every method that CCTweaks + Unborked modifies. If you're into that sort of thing it's rather interesting.
Dog #233
Posted 12 March 2017 - 04:14 AM
Don't know if this matters now that Dan has announced that CC will be going open source, but I've come up against an issue with Unborked for 1.11.2 and CC texture packs. Apparently Unborked is converting all the texture names to lower case when it patches the CC jar - and I'm guessing it does more than just rename the texture files as the default texture files still display correctly - as do modified textures with all lower case names, but not textures using the original camel case names. Not that worried about a fix, but thought I should put it out there for you to be aware of. Thanks for Unborked, ccTweaks, and Plethora - great mods.
SquidDev #234
Posted 12 March 2017 - 08:04 AM
I have installed CC in my forge server (FTB Hermit pack), but I have a problem when I try launch "dj" command (this doesn't happen in singleplayer).

Problem when I run "dj":
Java Exception Thrown: java.lang.NoSuchMethodError: net.minecraft.ite.ItemRecord.func_185075_h()Lnet/minecraft/util/SoundEvent:
I'm really sorry: I somehow missed this post earlier. The Hermit Pack is 1.10.2 right? If you haven't yet, please installed Unborked - I'm pretty sure that fixes this. If you have and this error still occurs, can you post a your logs and full mod list? Thanks!

Don't know if this matters now that Dan has announced that CC will be going open source.
I saw. Hype!

Apparently Unborked is converting all the texture names to lower case when it patches the CC jar - and I'm guessing it does more than just rename the texture files as the default texture files still display correctly - as do modified textures with all lower case names, but not textures using the original camel case names.
Sadly there isn't anything I can do about this: Minecraft 1.11.2 forces all resources to be lower case and so Unborked has to rename everything in order for it to work. This means resource packs also have to have their textures lowercased.
Edited on 12 March 2017 - 07:05 AM
Lupus590 #235
Posted 12 March 2017 - 02:31 PM
Apparently Unborked is converting all the texture names to lower case when it patches the CC jar - and I'm guessing it does more than just rename the texture files as the default texture files still display correctly - as do modified textures with all lower case names, but not textures using the original camel case names.
Sadly there isn't anything I can do about this: Minecraft 1.11.2 forces all resources to be lower case and so Unborked has to rename everything in order for it to work. This means resource packs also have to have their textures lowercased.

Could Unborked look through the resource pack and perform renames there too?
Edited on 12 March 2017 - 01:31 PM
Dog #236
Posted 12 March 2017 - 03:43 PM
Apparently Unborked is converting all the texture names to lower case when it patches the CC jar - and I'm guessing it does more than just rename the texture files as the default texture files still display correctly - as do modified textures with all lower case names, but not textures using the original camel case names.
Sadly there isn't anything I can do about this: Minecraft 1.11.2 forces all resources to be lower case and so Unborked has to rename everything in order for it to work. This means resource packs also have to have their textures lowercased.

No worries - at least the fix is an easy one on my end. Thanks for the explanation.

Could Unborked look through the resource pack and perform renames there too?

That would be quite convenient. In the end, though, renaming the files in the texture pack is trivial - shouldn't take but a moment with a file renamer.
SquidDev #237
Posted 12 March 2017 - 03:51 PM
Could Unborked look through the resource pack and perform renames there too?
It is technically possible but I'd rather avoid it. Modifying files before they are loaded is kinda horrible: both conceptually and code wise. The modification of the CC jar is done out of necessity rather than anything else.
Lyqyd #238
Posted 02 April 2017 - 05:03 PM
So I'm running a small 1.8.9 server at home with ComputerCraft 1.79 and CCTweaks 1.3.2. I had added CCTweaks because I thought I remembered that you'd managed to solve the computers-not-booting bug. Am I misremembering? The in-game evidence points that way.
SquidDev #239
Posted 02 April 2017 - 05:22 PM
So I'm running a small 1.8.9 server at home with ComputerCraft 1.79 and CCTweaks 1.3.2. I had added CCTweaks because I thought I remembered that you'd managed to solve the computers-not-booting bug. Am I misremembering? The in-game evidence points that way.
Yeah, I added a couple of experimental changes to try to fix that bug. Glad to hear that it seems to work! I'll try to add something on to the bug tracker explaining what I changed.

Edit: Just realised that I maybe not be reading this correctly. Are you saying the in-game evidence points towards you misremembering or it working?
Edited on 02 April 2017 - 03:26 PM
Lyqyd #240
Posted 02 April 2017 - 07:51 PM
Points toward me misremembering, i.e., it does not work. Computers that were running must be manually started each time the chunk is loaded.
SquidDev #241
Posted 02 April 2017 - 09:36 PM
Points toward me misremembering, i.e., it does not work. Computers that were running must be manually started each time the chunk is loaded.
Hrrmr, sorry about that. Right, I guess back to the drawing board - I'll see if I can figure what else might result in computers shutting down. Thanks for letting me know.
Lyqyd #242
Posted 18 April 2017 - 02:16 AM
Just noticed this, may be relevant:

Bomb Bloke #243
Posted 18 April 2017 - 04:58 AM
Dunno if you've noticed this yourself, or if it's true for all cases where the "computers don't boot on chunk load" thing occurs, but when I reproduced it myself I found that my computers were actually booting - but then they'd nearly immediately shut down again.

I noticed this because one was a Command Computer set to continuously reset the server time / weather, and although it was always turned off by the time my character got to it, the server log revealed that it was in fact getting off its first commands anyway. Presumably similar tests could be performed by having computers log stuff to their own drives, or scribble to an external monitor, or something.

https://github.com/dan200/ComputerCraft/issues/95
Edited on 18 April 2017 - 03:00 AM
Lyqyd #244
Posted 18 April 2017 - 07:59 PM
That actually jives better with what I'm seeing–monitors have things drawn on them, but computers are off.
SquidDev #245
Posted 18 April 2017 - 08:35 PM
Just noticed this, may be relevant:
Spoiler
No. This is just a side effect of the way I modify CC's code. It isn't anything to worry about. I might change it to a notice/debugging message though, as it isn't really an issue.

Dunno if you've noticed this yourself, or if it's true for all cases where the "computers don't boot on chunk load" thing occurs, but when I reproduced it myself I found that my computers were actually booting - but then they'd nearly immediately shut down again.
That actually jives better with what I'm seeing–monitors have things drawn on them, but computers are off.

The changes I've may cover this case already: I check if a computer is on, or in the process of turning on, in order to determine whether it should be saved as "on". I guess it is possible the computer tile gets recycled, meaning the "turn on" flag has been cleared by the first load. I'll look into it, thank for the info.

However, it is rather weird that monitors preserve their data, but computers lose it. Hrmrrm.
Edited on 18 April 2017 - 06:36 PM
Bomb Bloke #246
Posted 19 April 2017 - 04:27 AM
However, it is rather weird that monitors preserve their data, but computers lose it. Hrmrrm.

Er, no it's not? Turning a computer off won't clear external monitor content. Unloading the monitor's chunk would, but what I'm saying is that these systems are turning on correctly and then shutting down when they shouldn't.

As if the Lua VM were crashing very shortly after server start, for example.

I thought I'd try a test to get some more information about the timing of things. I placed two command computers at spawn, A and B, set to spam their letters via "while true do commands.say(<letter>) end" when booted. Well away from spawn (far enough to require a player to head over in order to chunk load them), I placed C and D with the same code. With A / C on and B / D off, I restarted the server and watched the log.

To my great annoyance… the game unbugged, and I haven't been able to reproduce since. As in, I've deleted the world and restored backups from when the issue was occurring nearly every server boot, but I can no longer get it to trigger at all. :|

Ah well, perhaps Lyqyd can try it? I was expecting the log to initially fill with "A"s, and then cut off after a few seconds. I was then planning to log in to the server, fly over to systems C/D, and see whether I got any "C"s.
Edited on 19 April 2017 - 02:56 AM
NaeRei #247
Posted 25 April 2017 - 01:14 PM
Greetings, before anything else, great work with this and specially with unborked, as it seams that cc and many other great mods stagnated, there is one thing i wish to ask but im not quite certain about it either, and its this:
I am on MC 1.10.2 and using Draconic Evolution, i remember being able to connect a computer to a fluxgate on a older version, probably on MC 1.7 but since it has been a long wile since i last touched minecraft or anything related and only now im getting back to it i dont remember if the ability to connect to a draconic evolution fluxgate was part of the mod or if it was a addon. Back to the question i wished to ask, can something be done so we can connect a computer or wired modem to the said fluxgate?

anyway, thanks and forgive my bad english
SquidDev #248
Posted 25 April 2017 - 08:31 PM
So, urm. This happened:



Originally from this suggestion. There are still a couple of rendering quirks which need to be worked out, but hey - it looks cool!

To my great annoyance… the game unbugged, and I haven't been able to reproduce since. As in, I've deleted the world and restored backups from when the issue was occurring nearly every server boot, but I can no longer get it to trigger at all. :|
This has been my biggest annoyance too. I occasionally see this in the wild, but every time I come to prod it on my test world (smp or ssp) everything decides to work. I don't suppose you have any tips on recreating it relatively reliably?
Lupus590 #249
Posted 25 April 2017 - 09:54 PM
So, urm. This happened:

Given your last few development update posts, it like you are doing this all accidentally.

Also, I'm guessing that a right click would allow me to 'open' the pocket computer and type/click in it.
SquidDev #250
Posted 25 April 2017 - 09:57 PM
Given your last few development update posts, it like you are doing this all accidentally.

Also, I'm guessing that a right click would allow me to 'open' the pocket computer and type/click in it.
It is a little like that. I sit down for a couple of hours and some feature pops out :)/>. Yep, they still function exactly like vanilla pocket computers - just are rendered slightly differently when in your hand.
Edited on 25 April 2017 - 07:57 PM
SquidDev #251
Posted 26 April 2017 - 12:21 AM
This post was originally about Unborked. As I'm trying to discourage the use of it, I'm hiding the original post. You should instead use the latest builds of ComputerCraft (see here for more info).
SpoilerSorry about the post spam today, but I've just pushed another Unborked update.

Unborked 1.10.2-1.80pr0-1.0.6
  • Fix pocket computers and printed pages not being usable in the off-hand
  • Fix pocket computers and printed pages also firing the off-hand action.
  • Correct Minecraft version in _HOST constant .
Unborked 1.11.2-1.80pr0-1.1.5
  • Everything above
  • Fix several models not being overwritten (disks, pocket computers and dyed turtles now have the correct size).
Please note that will not be able to use pocket computers in your offhand if you have CCTweaks installed as it also modifies this method. This will be fixed in the next version of CCTweaks.
Edited on 25 June 2017 - 07:42 AM
Bomb Bloke #252
Posted 26 April 2017 - 11:19 AM
This has been my biggest annoyance too. I occasionally see this in the wild, but every time I come to prod it on my test world (smp or ssp) everything decides to work. I don't suppose you have any tips on recreating it relatively reliably?

Afraid not. But for what little it's worth, I'm inclined to think that it's based on some sort of race condition, and that the start time of the server has a lot to do with it.
SquidDev #253
Posted 27 April 2017 - 09:55 PM
Firstly, an important notice: If you've downloaded Unborked 1.0.6 or 1.1.5 in the last couple of days then please re-download it - my build system mucked up which meant I was packaging the wrong version of a library. Sorry about that.

And now for something completely different: a CCTweaks update! This isn't a big update, just a couple of minor improvements and some new, interesting features. Please note that you must be running the latest version of Unborked in order for this to function correctly.

CCTweaks-Lua 1.4.0
  • Bump Cobalt version
    • Change the table system to be closer to Lua's.
    • Fix string metatable not being used for arithmetic operators.
  • Add IExtendedComputerAccess to provide more info to custom APIs.
  • Drop support for ComputerCraft 1.75 (for Minecraft 1.7.10).
  • No longer set _LUAJ_VERSION, _MC_VERSION or _CCVERSION globals for Cobalt runtime.
  • Add _RUNTIME global to specify the current Lua runtime.
  • Improve various argument error messages.
  • Add support for websockets.
CCTweaks 1.4.0 (for Minecraft 1.8.9)
  • Everything above.
  • Fix several crashes where the network was null.
  • Improve /cctweaks command permissions.
CCTweaks 1.4.0 (for Minecraft 1.10.2 and 1.11.2)
  • Everything above.
  • Add map-like rendering of pocket computers.
Edited on 02 May 2017 - 10:51 AM
Yurij #254
Posted 28 April 2017 - 03:54 PM
Unborked 1.0.5 makes the game crash
Minecraft 1.11.2 with forge 2282 or 2285
Spoilernet.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from ComputerCraft (computercraft)
Caused by: java.lang.NoSuchFieldError: EMPTY
at org.squiddev.unborked.Helpers.<clinit>(Helpers.java:13)
at dan200.computercraft.shared.proxy.ComputerCraftProxyCommon.registerItems(ComputerCraftProxyCommon.java:235)
at dan200.computercraft.shared.proxy.ComputerCraftProxyCommon.preInit(ComputerCraftProxyCommon.java:97)
at dan200.computercraft.ComputerCraft.preInit(ComputerCraft.java:269)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:246)
at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:224)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
at com.google.common.eventbus.EventBus.post(EventBus.java:275)
at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147)
at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647)
at net.minecraftforge.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:275)
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:440)
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:352)
at net.minecraft.client.main.Main.main(SourceFile:124)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Edited on 28 April 2017 - 01:55 PM
SquidDev #255
Posted 28 April 2017 - 04:14 PM
Unborked 1.0.5 makes the game crash
Minecraft 1.11.2 with forge 2282 or 2285
Awfully sorry about this. Apparently I managed to upload the changes without reobsfuscating it. I've updated the download, so redownloading it should fix it. Sorry :(/>.
augiteSoul #256
Posted 05 May 2017 - 06:21 PM
How do you use the tool host in 1.11.2?

Nevermind. :P/>
Why not adding Plethora compat?(it's another add-on made by you, so why not)
Edited on 05 May 2017 - 04:27 PM
SquidDev #257
Posted 05 May 2017 - 07:05 PM
Why not adding Plethora compat?(it's another add-on made by you, so why not)
Plethora already adds some support for CCTweaks. Is there a specific feature you're missing?
augiteSoul #258
Posted 05 May 2017 - 07:53 PM
Why not adding Plethora compat?(it's another add-on made by you, so why not)
Plethora already adds some support for CCTweaks. Is there a specific feature you're missing?

Didn't noticed the Plethora/CCTweaks support ^^ I'd like some peripheral support with the laser gun. Oh, and you could add RF/Tesla powered laser guns?
SquidDev #259
Posted 05 May 2017 - 08:03 PM
I'd like some peripheral support with the laser gun.
You can wrap the laser as a peripheral by using the manipulator. It can also be equipped directly onto turtles, pocket computers and minecart computers.

Oh, and you could add RF/Tesla powered laser guns?
The laser is just a silly feature, I don't really have any plans to extend it in any way, be that including RF support or additional upgrades. There are plenty of gun mods out there already, and I don't want to duplicate that :)/>.
augiteSoul #260
Posted 06 May 2017 - 10:59 AM
I'd like some peripheral support with the laser gun.
You can wrap the laser as a peripheral by using the manipulator. It can also be equipped directly onto turtles, pocket computers and minecart computers.

Oh, and you could add RF/Tesla powered laser guns?
The laser is just a silly feature, I don't really have any plans to extend it in any way, be that including RF support or additional upgrades. There are plenty of gun mods out there already, and I don't want to duplicate that :)/>.

Ooh. Okay. The laser gun is pretty OP because you can spam-click using it, making lots of damage.
SquidDev #261
Posted 06 May 2017 - 11:04 AM
Ooh. Okay. The laser gun is pretty OP because you can spam-click using it, making lots of damage.
Some aspects of Plethora (especially the laser gun and kinetic augment) are hideously unbalanced, at least by default. There are some config options which help tone things down a bit, but it is still in need of a little work. It's one my todo list, just finding something which gets the right balance between actually useful and stupidly overpowered is quite hard.
Lupus590 #262
Posted 09 May 2017 - 09:08 AM
Now that CC is opensource, what is the future of this mod?
SquidDev #263
Posted 09 May 2017 - 09:28 AM
Now that CC is opensource, what is the future of this mod?
Oh goodness, I don't know. I don't think that CCTweaks is going to vanish as there are many features that I don't think should be in actual ComputerCraft. However, ideally it will be a much smaller and simpler mod.

So, things which will almost certainly stay in CCTweaks:
  • Most items/blocks (wireless bridge, turtle tool host and manipulator, debug wand). I might move some of these to Plethora/a new mod and have CCTweaks just be a server-side mod. Who knows?
  • /cctweaks command - while this is a useful monitoring/profiling tool, I'm not sure it fits within CC.
  • JEI recipe handlers
  • Disable specific Turtle methods
  • MCMultipart support
  • data, bitinteger and bitop libraries.
  • Configurable runtimes
  • IArguments/extended binary string support.
  • Network visualiser
Ideally almost all of the ASM hacks will be merged into ComputerCraft, but I will have to wait and see what Dan says.
Edited on 09 May 2017 - 07:29 AM
SquidDev #264
Posted 12 May 2017 - 12:19 PM
Just pushed a very small update to the 1.10.2 version of CCTweaks, fixing a crash in SMP. Do note CCTweaks is not compatible with the latest builds of ComputerCraft - this will be rectified when there is a stable release of ComputerCraft.
cntkillme #265
Posted 17 May 2017 - 07:54 AM
I'm using the 1.8.9 version and a mod called "Simple Covers". Facading works perfectly fine but if it obstructs the path (like this or even like this) it ends up not being connected anymore.
Is this facading mod I'm using just bad and if so do you know of any for 1.8.9 as I can't find any working ones.
Edited on 17 May 2017 - 07:57 PM
SquidDev #266
Posted 18 May 2017 - 12:50 AM
I'm using the 1.8.9 version and a mod called "Simple Covers". Facading works perfectly fine but if it obstructs the path (like this or even like this) it ends up not being connected anymore.
Is this facading mod I'm using just bad and if so do you know of any for 1.8.9 as I can't find any working ones.
Hrrmr. It worked when I initially implemented these, but many things may have broken since then. Thanks for the report, I will investigate.
SquidDev #267
Posted 18 May 2017 - 03:34 PM
I've just noticed that we've hit 100k downloads on Curse! Many thanks to all those people who have used this mod over the last two years, providing feedback, bug reports and encouragement.
gronkdamage #268
Posted 06 June 2017 - 02:21 AM
Hey there - I've been loving being able to use computer craft again - but a strange thing happened:

Everything was working fine, then suddenly one of my turtles simply stopped working. I have a series of programs I use (like u - goes up x amount of blocks, mt - digs a tunnel forward (also digging one block up and down while it moves…) - now I thought it had something do with the server crashing, and when I load everything back up - the turtle loses it's inventory, id and whatever tool it was using… (that bug has been around forever…) - so I replaced the turtle, and it still won't work.

So I removed unborked and computercraft - reset the server - and put everything back and tried again… now neither of my turtles will move.

I noticed on the console it says: "[STDOUT]: [org.squiddev.patcher.logger:doWarn:23]: [WARN] Cannot find custom rewrite /org/squiddev/unborked/core/patch/TurtleTool_Patch$2.class

Any suggestions?

EDIT: I figured out what happened - the turtles hit the spawn protection (which I completely forgot to turn off…) - turned it off, and they started working normally again.
Edited on 06 June 2017 - 12:28 AM
SquidDev #269
Posted 10 June 2017 - 02:21 PM
Right, it's been a while since I issued an update so here goes:

The future of Unborked
The latest builds of ComputerCraft now work fine on Minecraft 1.9.4/1.10.2. There is also a PR to add support for Minecraft 1.11.2. Consequently, Unborked is no longer needed and so I will be removing the downloads in a couple of weeks. I've made it pretty clear in the past that it's an ugly hack, so I'm glad to be rid of it :)/>.

You can download the latest builds of ComputerCraft from the unofficial build server. If you encounter bugs on something which isn't the default download, please notify me instead of posting it on the ComputerCraft repo.

TLDR: I'm removing Unborked in favour of the recent builds of CC.

CCTweaks-Lua 1.5.0-build0
I have updated CCTweaks-Lua to use the latest builds of ComputerCraft. This doesn't include any new features, just me removing things as they have been superseded by changes to ComputerCraft
General changes
  • Update to the latest ComputerCraft commit (dan200/ComputerCraft@0f982e6)
  • Remove IArguments
  • Remove http.fetch
  • Remove special binary support, as CC's binary file handles have been improved.
Removed features which are now in CC
  • Open file handle limiting
  • Computer/disk label limiting.
  • http_failure containing the HTTP handle.
  • .getResponseHeaders() on HTTP handle.
  • Fix computers ignoring termination signals when a shutdown is queued.
  • fs.find performance improvements.
CCTweaks 1.5.0-pr0
Similarly, CCTweaks has been updated to the latest builds of ComputerCraft. Please note that this has only been tested using the default and 1.11.2 builds of ComputerCraft - I offer no guarantees that it'll work on other versions. Though I don't offer any guarantees it'll work on any version.

General changesRemoved features which are now in CC
  • Remove alsoPeripheral in favour of TurtleUpgradeType#Both
  • Remove IContainerComputer
  • Remove monitor light levels
  • Remove redstone connectivity patch
  • Remove pocket peripheral upgrades
It is worth noting that this is a beta, and there are many changes - so expect issues. As always, please report them on the CCTweaks repo.
Bomb Bloke #270
Posted 10 June 2017 - 03:21 PM
Speaking of which, I've been wondering for a while - are there any clear plans as to which MC versions CC will support, going forward? Dan's traditionally stuck with "only one", but it'd obviously be nice to have the latest CC available for as many MC builds as possible.
Edited on 10 June 2017 - 01:22 PM
SquidDev #271
Posted 10 June 2017 - 04:55 PM
Speaking of which, I've been wondering for a while - are there any clear plans as to which MC versions CC will support, going forward? Dan's traditionally stuck with "only one", but it'd obviously be nice to have the latest CC available for as many MC builds as possible.
Dan hasn't said anything. I suspect he'll only stick with one version as it is a bit of a kerfuffle managing multiple versions. I don't really have a clue though.

That being said, I'd personally like to see support for as many versions as possible - 1.9.4, 1.10.2 and 1.11.2 are pretty easy to juggle and, from what I've heard, 1.12 isn't that bad either.
vico #272
Posted 11 June 2017 - 09:53 PM
Hi Squid, did your unofficial 1.11.2 builds still having this luaj jar bug?

The build task in Gradle does not currently copy the luaj dependency into the jar. You will have to either use the deploy script or just copy the luaj jar from libs.

https://github.com/d...mment-304980513

I dont really understand what is the "deploy script", and so I'm still sticking with Unborked…
Edited on 11 June 2017 - 07:53 PM
SquidDev #273
Posted 11 June 2017 - 10:01 PM
Hi Squid, did your unofficial 1.11.2 builds still having this luaj jar bug?
Nope. The build server script got a total rewrite, which means LuaJ is now copied correctly for all builds.
vico #274
Posted 11 June 2017 - 10:59 PM
Thanks A LOT!
caHarkness #275
Posted 12 June 2017 - 03:38 AM
Hi there, I have a request if it's not too hard. Perhaps a chunk loader attachment that keeps a 3x3 chunk minimum loaded around the turtle so it can continue to work even when a player is not nearby. Cheers!
SquidDev #276
Posted 12 June 2017 - 08:40 PM
Hi there, I have a request if it's not too hard. Perhaps a chunk loader attachment that keeps a 3x3 chunk minimum loaded around the turtle so it can continue to work even when a player is not nearby. Cheers!
I'm personally not a fan of chunk loaders, and so won't be adding it to CCTweaks. This mod adds "walking turtles" for Minecraft 1.8.9, and this one for 1.7.10 - they might be worth looking into instead.
vico #277
Posted 19 June 2017 - 12:59 AM
Hi there, I have a request if it's not too hard. Perhaps a chunk loader attachment that keeps a 3x3 chunk minimum loaded around the turtle so it can continue to work even when a player is not nearby. Cheers!
I'm personally not a fan of chunk loaders, and so won't be adding it to CCTweaks. This mod adds "walking turtles" for Minecraft 1.8.9, and this one for 1.7.10 - they might be worth looking into instead.
Sadly none of these are updated to 1.10+
Pvpeon #278
Posted 21 June 2017 - 10:37 AM
My server crashes with the following error. Version is 1.11.2
Also, Client crashes too.

[04:41:48] [Server thread/ERROR] [FML]: The following problems were captured during this phase
[04:41:48] [Server thread/ERROR] [FML]: Caught exception from CCTweaks (cctweaks)
java.lang.NoClassDefFoundError: org/squiddev/cctweaks/pocket/PocketWirelessBridge
	    at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:71) ~[Registry.class:?]
	    at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:46) ~[CCTweaks.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641) ~[serverForge.jar:?]
	    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) ~[?:?]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230) ~[LoadController.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147) [LoadController.class:?]
	    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) [Loader.class:?]
	    at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:100) [FMLServerHandler.class:?]
	    at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:328) [FMLCommonHandler.class:?]
	    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) [lh.class:?]
	    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) [MinecraftServer.class:?]
	    at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
Caused by: java.lang.ClassNotFoundException: org.squiddev.cctweaks.pocket.PocketWirelessBridge
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    ... 34 more
Caused by: java.lang.NoClassDefFoundError: dan200/computercraft/api/pocket/IPocketUpgrade
	    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at java.security.SecureClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    ... 34 more
Caused by: java.lang.ClassNotFoundException: dan200.computercraft.api.pocket.IPocketUpgrade
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at java.security.SecureClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    ... 34 more
Caused by: java.lang.NullPointerException
[04:41:48] [Server thread/ERROR]: Encountered an unexpected exception
net.minecraftforge.fml.common.LoaderExceptionModCrash: Caught exception from CCTweaks (cctweaks)
Caused by: java.lang.NoClassDefFoundError: org/squiddev/cctweaks/pocket/PocketWirelessBridge
	    at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:71) ~[Registry.class:?]
	    at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:46) ~[CCTweaks.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641) ~[serverForge.jar:?]
	    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) ~[?:?]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230) ~[LoadController.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) ~[Loader.class:?]
	    at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:100) ~[FMLServerHandler.class:?]
	    at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:328) ~[FMLCommonHandler.class:?]
	    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) ~[lh.class:?]
	    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) [MinecraftServer.class:?]
	    at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
Caused by: java.lang.ClassNotFoundException: org.squiddev.cctweaks.pocket.PocketWirelessBridge
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:71) ~[Registry.class:?]
	    at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:46) ~[CCTweaks.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641) ~[serverForge.jar:?]
	    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) ~[?:?]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230) ~[LoadController.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) ~[Loader.class:?]
	    at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:100) ~[FMLServerHandler.class:?]
	    at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:328) ~[FMLCommonHandler.class:?]
	    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) ~[lh.class:?]
	    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) ~[MinecraftServer.class:?]
	    at java.lang.Thread.run(Unknown Source) ~[?:1.8.0_131]
Caused by: java.lang.NoClassDefFoundError: dan200/computercraft/api/pocket/IPocketUpgrade
	    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at java.security.SecureClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:71) ~[Registry.class:?]
	    at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:46) ~[CCTweaks.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641) ~[serverForge.jar:?]
	    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) ~[?:?]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230) ~[LoadController.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) ~[Loader.class:?]
	    at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:100) ~[FMLServerHandler.class:?]
	    at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:328) ~[FMLCommonHandler.class:?]
	    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) ~[lh.class:?]
	    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) ~[MinecraftServer.class:?]
	    at java.lang.Thread.run(Unknown Source) ~[?:1.8.0_131]
Caused by: java.lang.ClassNotFoundException: dan200.computercraft.api.pocket.IPocketUpgrade
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at java.security.SecureClassLoader.defineClass(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_131]
	    at org.squiddev.cctweaks.core.registry.Registry.<clinit>(Registry.java:71) ~[Registry.class:?]
	    at org.squiddev.cctweaks.CCTweaks.preInit(CCTweaks.java:46) ~[CCTweaks.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:641) ~[serverForge.jar:?]
	    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source) ~[?:?]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230) ~[LoadController.class:?]
	    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_131]
	    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_131]
	    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_131]
	    at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.11.2.jar:?]
	    at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.11.2.jar:?]
	    at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147) ~[LoadController.class:?]
	    at net.minecraftforge.fml.common.Loader.preinitializeMods(Loader.java:647) ~[Loader.class:?]
	    at net.minecraftforge.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:100) ~[FMLServerHandler.class:?]
	    at net.minecraftforge.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:328) ~[FMLCommonHandler.class:?]
	    at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:121) ~[lh.class:?]
	    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:442) ~[MinecraftServer.class:?]
	    at java.lang.Thread.run(Unknown Source) ~[?:1.8.0_131]
Caused by: java.lang.NullPointerException
[04:41:48] [Server thread/INFO]: [STDOUT]: Negative index in crash report handler (0/5)
[04:41:48] [Server thread/ERROR]: This crash report has been saved to: C:\Users\yelli\Desktop\1.11.2 Modded Server\.\crash-reports\crash-2017-06-21_04.41.48-server.txt
[04:41:48] [Server thread/INFO]: Stopping server
[04:41:48] [Server thread/INFO]: Saving worlds
[04:41:48] [Server thread/WARN] [FML]: Can't revert to frozen GameData state without freezing first.
[04:41:48] [Server thread/INFO] [com.zaxxer.hikari.pool.HikariPool]: HikariPool-1 - Close initiated...
[04:41:48] [Server thread/INFO] [com.zaxxer.hikari.pool.HikariPool]: HikariPool-1 - Closed.
[04:41:48] [Server thread/INFO] [nucleus]: Nucleus is performing server shutdown tasks.
[04:41:48] [Server thread/INFO]: [STDERR]: java.lang.NullPointerException
[04:41:48] [Server thread/INFO]: [STDERR]:	  at io.github.nucleuspowered.nucleus.dataservices.modular.ModularDataService.save(ModularDataService.java:136)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at io.github.nucleuspowered.nucleus.NucleusPlugin.saveData(NucleusPlugin.java:357)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at io.github.nucleuspowered.nucleus.NucleusPlugin.onServerStop(NucleusPlugin.java:348)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at org.spongepowered.common.event.listener.GameStoppedServerEventListener_NucleusPlugin_onServerStop14.handle(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:95)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:314)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:345)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at org.spongepowered.mod.SpongeMod.onStateEvent(SpongeMod.java:216)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at java.lang.reflect.Method.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.post(EventBus.java:275)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:252)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:230)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at java.lang.reflect.Method.invoke(Unknown Source)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at com.google.common.eventbus.EventBus.post(EventBus.java:275)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzd000(LoadController.java:561)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:147)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.Loader.serverStopped(Loader.java:940)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraftforge.fml.common.FMLCommonHandler.handleServerStopped(FMLCommonHandler.java:503)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:544)
[04:41:48] [Server thread/INFO]: [STDERR]:	  at java.lang.Thread.run(Unknown Source)
[04:41:48] [Server thread/INFO] [FML]: The state engine was in incorrect state ERRORED and forced into state SERVER_STOPPED. Errors may have been discarded.
[04:41:48] [Server thread/INFO] [FML]: The state engine was in incorrect state ERRORED and forced into state AVAILABLE. Errors may have been discarded.
[04:41:48] [Server Shutdown Thread/INFO]: Stopping server
SquidDev #279
Posted 21 June 2017 - 11:22 AM
My server crashes with the following error. Version is 1.11.2
Also, Client crashes too.
This is because you're using Unborked and an old beta of ComputerCraft. The latest betas of CCTweaks require a recent build of CC (and no longer work with Unborked). You can download a recent build of ComputerCraft for 1.11.2 from here.
Flexico #280
Posted 24 June 2017 - 07:37 PM
So I finally went and updated to 1.10 and am thrilled to have a stable CC there thank to you. ^_^/> However, computers don't seem to connect to Project Red bundled cables. Project Red's compatibility module doesn't seem to have updated from 1.7.10; is there some other way to get them to connect?
SquidDev #281
Posted 24 June 2017 - 07:54 PM
So I finally went and updated to 1.10 and am thrilled to have a stable CC there thank to you. ^_^/> However, computers don't seem to connect to Project Red bundled cables. Project Red's compatibility module doesn't seem to have updated from 1.7.10; is there some other way to get them to connect?
Sadly most mods I've looked at haven't added support for ComputerCraft yet - EnderIO removed their support too. I'm afraid there isn't much you can do, sorry.
Flexico #282
Posted 24 June 2017 - 09:22 PM


Well, hopefully it will update eventually! Computercraft and bundled cables have been a thing since 1.2.5. :3
Stekeblad #283
Posted 25 June 2017 - 08:37 AM
So I finally went and updated to 1.10 and am thrilled to have a stable CC there thank to you. ^_^/>/>

Stabale computercraft for 1.10? Where? Tried looking for a version flagged stable but not found it. Is it stable enough to be put on Curse?
SquidDev #284
Posted 25 June 2017 - 09:39 AM
Stabale computercraft for 1.10? Where? Tried looking for a version flagged stable but not found it. Is it stable enough to be put on Curse?
Well, comparatively stable to the 1.80pr0 alpha :)/>. There isn't an official release yet, but you can download them from the build server (see here for a better explanation). I'd quite like Dan to release it on curse soon-ish, but we'll see :)/>.
Sewbacca #285
Posted 30 December 2017 - 08:04 PM
Is there a version from Unborked for 1.80pr1? I tried to use Unborked 1.10.2 (I used a link somewhere in the nowhere of this topic, because the link in the description doesn't work anymore), but Forge says sadly: No, you can't use an outdated version of Unborked…
Edited on 30 December 2017 - 07:05 PM
KingofGamesYami #286
Posted 30 December 2017 - 09:12 PM
Right, it's been a while since I issued an update so here goes:

The future of Unborked
The latest builds of ComputerCraft now work fine on Minecraft 1.9.4/1.10.2. There is also a PR to add support for Minecraft 1.11.2. Consequently, Unborked is no longer needed and so I will be removing the downloads in a couple of weeks. I've made it pretty clear in the past that it's an ugly hack, so I'm glad to be rid of it :)/>/>.

You can download the latest builds of ComputerCraft from the unofficial build server. If you encounter bugs on something which isn't the default download, please notify me instead of posting it on the ComputerCraft repo.

TLDR: I'm removing Unborked in favour of the recent builds of CC.
SquidDev #287
Posted 30 December 2017 - 09:59 PM
Is there a version from Unborked for 1.80pr1? I tried to use Unborked 1.10.2 (I used a link somewhere in the nowhere of this topic, because the link in the description doesn't work anymore), but Forge says sadly: No, you can't use an outdated version of Unborked…
As KoGY rightly says, Unborked has been replaced in favour of the development builds. I updated most of my previous Unborked related comments pointing this out, but apparently forgot to update the OP - that has since been rectified.
Sewbacca #288
Posted 01 January 2018 - 09:13 PM
Thanks =)
Is there any support for 1.80pr1? Thats for Minecraft 1.12.
SquidDev #289
Posted 01 January 2018 - 09:44 PM
Is there any support for 1.80pr1? Thats for Minecraft 1.12.
I assume you mean CCTweaks support? Sadly not yet. Now that ComputerCraft is open source, I'm trying to get the major features of CCTweaks integrated into the main mod. Whilst I've had some success, it's a slow process and leaves me in an awkward place with what to do with the rest of the mod. That, combined with Java 8 bytecode being a bit of a pain to work, with has meant I haven't got round to porting yet.
Edited on 21 February 2018 - 03:04 PM