SMP and World Contest

Hey y’all!

Couple of information on the current stage of things. With regards to SMP, the situation has definitely improved since last releases, however, things starts to go bad as soon as the world becomes reasonably complex. I’m working on getting decent reproducers to investigate, but please be patient. If you experience any problem, please make sure that you do get a backtrace otherwise reporting is just useless.

Other point, the world contest. Deadline is extended until October 31st. Last days to finish your work or re-submit an updated version!

BuildCraft 2.2.4 – Fixing one SMP bug

Lots and lots and lots of people have reported it – so here’s a new BuildCraft release ready to download for SMP players, fixing just one issue:

#321 [SMP] investigate exception
fixed java.lang.NullPointerException at at buildcraft.transport.TileGenericPipe.b_(TileGenericPipe.java:84).

Hoping to increase stability. I’m committed to do frequent small releases as long as we don’t get this playable!

BuildCraft 2.2.3, hopefully stable SMP…

Hey guys!

So here’s the new BuildCraft 2.2.3 version. I had to jeopardize my relationship to test and fix it (meaning, I had to put my girlfriend in front of the computer to monkey-test the SMP version with me…) so I really hope that SMP is stable enough to be played with…

So there’s certainly glitches remaining here and there, but most hard crashes – especially pipes related ones – should be out of the way. Crossing fingers… Here’s the changelog:

#304 extensive SMP fixes
A lot of problems related to SMP have been fixed – SMP should be much more stable now. This include in particular problems related to any kind of pipes, quarries and filler.

#308 added hooks for enabling redstone pipes
Pipes now offers interfaces to implement third party redstone pipes.

#309 open API for fuel
It is now possible to add iron engine fuel through the API.

#312 SMP crash opening an engine
Fixed outsanding issue when opening an engine.

#316 TileTank’s fill() implementation ignores the doFill parameter
doFill parameter is now taken into account by liquid tank.

#318 server APIProxy is not correctly packaged
APIProxy is now correctly packaged for the server part of the mod.

#319 mining pipes from quarry crashes the game
Mining pipes with a quarry do not crash the game anymore – even if pipes are just destroyed.

#320 stack overflow on shift-clicking lava bucket into combustion engine
Shift-click on a combustion engine doesn’t crash the game anymore.

SMP is still broken

Just so that you know. SMP is still broken and I’m aware of it. Working on improving things here. If you are interested into a little bit of background, there is a bit of a technical breakthrough between the old and the new pipes implementation. In the old scheme, a pipe was using a block id. This was already a lot when just transporting items, but it became just unreasonable to keep up with that scheme with additional waterproof and conductive pipe.

Modders may be aware of the “metadata” method to extends block ids. That’s what is done for example for wool, where each colors corresponds to a different metadata. The issue is that there is only 16 values available for metadata, and that there are already used in some pipes (e.g., to determine the input of wooden pipes, or output of iron pipes).

So the new scheme relies on pipes ids that are actually item ids, maintained by the tiles. I won’t dive into more details, but in short, while this is very reliable in SSP, this bring up all kind of synchronization issues with SMP. Hence the many crashes that everybody is having.

So I’m still working on it, hoping to release a 2.2.3 soon that will fix there. Be patient though, remember that the 2.x branch is still a beta program – beta program that I’m hoping to get out soon!

BuildCraft 2.2.2 is out!

BuildCraft 2.2.2 is out! This is mainly a bugfix release. Lots and lots of crashes have been fixed in SMP. We’re not done yet though – there’s a lot of cases where the pipes seem to disappear. They don’t really though, just becoming invisible. But at least there’s no crash!

A fair amount of work has been done do make a usable API this time. It’s now possible to make machines connected to waterproof pipe or power pipe just using the public API, which is now, BTW, distributed in source form! Several BuildCraft second generation mods are currently on their way.

Anyway, as usual, here’s the changelog. Enjoy!

#154 distribute API in source form
The API is now distributed in source form only, making modding easier.

#237 no placement in oil possible
It is now possible to place blocks in oil.

#267 energy loops
Energy loops will now explode instead of crashing the game

#269 automoving (shift-click) in engine GUI crashes minecraf
Automoving does not raise exceptions anymore

#279 energy hook improvements
Hooks have been made available to access to energy capabilities

#280 modification of pipe textures
It is now possible to add custom pipe textures

#281 refinery exceptions
Exceptions related to refineries are fixed.

#284 power pipes cannont connect to blocks
Power pipes are now able to connect to any IPowerRecptor.

#285 The API does not provide a method for obtaining the current PowerFramework
It is now possible to retreive the current power framework from the API

#286 move missing liquids functions to the API
Liquid pipe interaction is now available from the API

#287 Add support for registering custom liquids with BuildCraft
It is now possible to register pipe-liquids in the API

#289 crash SMP
Various crashes in SMP have been fixed

#292 provide good static texture defautls
oil and fuel default textures have been improved

#298 pipe performances issues
pipe performances have been improved

#299 liquids loss in pipes
Undue liquid loss in pipes when the world around was changing are fixed

Featuring BloodyRain2k’s Template Editor

This seems to have been released unnoticed - but a couple of weeks ago, BloodyRain2k, one of the strongest BuildCraft support, released the first version of his BuildCraft template editor. If you want to modify and prepare templates to feed in BuildCraft builders, click on the image below!

BuildCraft 2.2.1 released for SMP!

BuildCraft 2.2.1 has finally been released with SMP capabilities. Posting the changelog here. Enjoy!

#226 SMP pipe render client freeze
Problem related to freeze when using pipes in SMP should be fixed.

#239 increase oil quantity in medium deposits
Medium oil deposits are now twice as frequent, and contain slightly more oil.

#245 wrong icon in markers when traveling in pipes
Icon of markers when traveling in pipes have been fixed.

#249 port to SMP
BuildCraft have been (re) ported to SMP.

#253 opening autocrafting table in SMP kicks client
Auto-crafting table does crash anymore when openned from the client.

#264 liquids spawn next to tank if taken out
Liquids can now be correctly collected from tanks.

#265 stone engines burn animation broken
Stone engine fire animation has been fixed in the GUI.

#266 oil bucket config
Oil and fuel bucket configuration has been fixed.

#268 empty bucket in iron engine prevents cooling
Iron engine can now cool down even if they contain an empty bucket.

#271 used Forge ISidedInventory interfae
ISidedInventory interface is now used, enabling interaction between pipes and
Forge compatible inventories such as RedPower or IndustrialCraft.

#272 add liquids hook
Liquids hooks have been added, for sub-modding.

#275 iron pipes don’t bounce items
Iron pipe are able to bounce items again.

#276 oil generation is buggy
Cases of no oil generated, or too much oil, should be fixed.

#278 unstable wooden pipe source
Source of wooden pipes should not switch randomly anymore.

A new BuildCraft site

Following increasing difficulty of maintaining the BuildCraft original post on minecraftforum, I finally decided to give to BuildCraft its own website. Hopefully, information will be easier to organize here than it was before.

There is a huge amount of feature to come to BuildCraft. Currently finishing SMP and a few bugfixes for BuildCraft 2.2.1. Stay tuned for further news!

And just in case you missed it, here’s the tutorial of the latest BuildCraft version: