[Q/A] Hello IT… (update 02)

… Have you tried turning it off and on again?

Hi all,

With this little “IT Crowd” gimmick, I wanted to talk about technical support for “Blocks That Matter”.

As you may know, we are still in the “Humble Voxatron Debut” bundle!

We already received a lot of emails from players who finished the game and wanted to share their experiences with us!

That’s pretty cool, but we also received some emails about players encountering bugs, or unable to launch the game on given configurations.
I try to answer all the emails I’ve received, but it’s possible that I’m missing some. Don’t hesitate to email me here:

guillaume(at)swingswingsubmarine(dot)com

I’ll try to keep a Q&A section here, to help people find out what’s going wrong.

Blocks That Matter Q&A

//- – – – – – – – – – – – – –

Q: My Linux version says ‘Failed to load library: no jinput-linux in java.library.path”
A: This is certainly due to some issue in the launching script. While waiting for an update, you can try to:
– go there: http://www.swingswingsubmarine.com/BTM_Linux_Launcher/
– download and follow the readme

//- – – – – – – – – – – – – –

Q: My Linux version says “liblwjgl.so: wrong ELF class: ELFCLASS32”
A: It’s certainly due to the fact that you are using a Java 7 machine. It’s apparently a known bug from the LWJGL we are using.

To temporary fix this, you can use a command such as:
export LD_LIBRARY_PATH=”/opt/java/jre/lib/amd64″
(you’ll have to custom the path depending your configuration)

You can also add this to your bashrc
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}: /usr/lib/jvm/jdk1.7.0_01/jre/lib/amd64
(that’s another example of a path to your jre)

Note that downgrading to (or embedding) a JRE 6 can also fix the issue :/

//- – – – – – – – – – – – – –

Q: When I restarted the game after playing some ‘Chocolate Update’ level, my upgrades were gone in Adventure mode?!
A:
That’s a bug that occurs if:
– you have a save with some progression in the Main Adventure
– you played a Chocolate Update level,
– then returned to the level selection in Chocolate Update
– then played another level (always in the Chocolate Update)
– finally, you exited the game without playing a Main Adventure level
– on the next start, your Tetrobot upgrades in the Main Adventure mode will be same as the Chocolate Update levels (drill lvl 1, puzzle mode, no line destroy thing)

What you can do to temporally fix this is to the hotfix:
– go to http://www.swingswingsubmarine.com/BTM_hotfix/
– read the readme to know what to do with the “BTM.jar” file
– start the game and it will auto patch your save file!

//- – – – – – – – – – – – – –

(update 01)!

Q: My Linux version doesn’t display any text!?
A:
That’s probably because you’re running a Debian with its OpenJDK jre.
I’m searching for a fix. In the meantime, you can try the following:

– download the btm_launcher_embeded_nonfree_jre.zip archive
– extract it (sorry for the type in embeded, instead of embedded)
– then open a terminal and go to the place where you extracted it and then enter the commands:
su root (or sudo and the following line)
cp -r btm_launcher_embeded_nonfree_jre/* /opt/BlocksThatMatter/
(assuming your game is stored in /opt/BlocksThatMatter/)

Run the game as you used to.
The game now runs with an embedded nonfree jre. The text bug seems to not occur with the Oracle 1.6 JRE.

//- – – – – – – – – – – – – –

NEW (update 02)!

Q: The game won’t launch on my Windows (showing up on task manager, then exiting)
A:

Well, that can be many things.
To help clarify things, you can go to the game folder (“C:\Program Files\Blocks That Matter”, or “C:\Program Files\Steam\steamapps\common\blocks that matter” and run the “BTM_DBG_embedded_jvm_win.bat” file by double clicking it!

It will display a command window that will stay opened even after the game quits.

You will may obtain such a thing:
~~~~~~~~~~~~~~~~~~
C:\Program Files\Blocks That Matter>”.\\bin\\java.exe” -jar BTM.jar -Xmx1024M -X
ms512M -Djava.library.path=.
Exception in thread “main” java.lang.UnsatisfiedLinkError: org.lwjgl.DefaultSysI
mplementation.getPointerSize()I

at org.lwjgl.DefaultSysImplementation.getPointerSize(Native Method)
at org.lwjgl.Sys.(Sys.java:100)
at org.lwjgl.util.Timer.(Timer.java:50)
at Microsoft.Xna.Framework.Game.(Game.java:19)
at org.flixel.FlxFactory.(FlxFactory.java:74)
at SSS.BTM.Main.BlocksThatMatter.main(BlocksThatMatter.java:13)

C:\Program Files\Blocks That Matter>pause
Press any key to continue . . .
~~~~~~~~~~~~~~~~~~

Well, this certainly means that you have a conflict with the “lwjgl.dll” that may exists in some default system path (in a different version that the one wanted by the game).

You can launch a search for “lwjgl.dll” in your computer, or directly check some folders like “C:\WINDOWS\system32”.

If you find some “lwjgl.dll” in systems folder (i.e. their path is beginning with “C:\WINDOWS”), you should REMOVE them, since every games that need such dll should embed it!
Putting this dll in such a folder can only leads to conflict!

Remove the dll (or rename it) and then relaunch the game! This time the game will use the lwjgl.dll that is located in is game folder, preventing the game for crashing/exiting.

If the game still not launch, please send us a screenshot or copy/paste the content of the command line window obtained thanks to the “BTM_DBG_embedded_jvm_win.bat”!

//- – – – – – – – – – – – – –

Q: The game display a message box saying “The requested fullscreen resolution configuration could not be achieved!\nPlease configure a new one (in config/DisplayOptions.xml)”
A:
This message is partially incomplete, since it means that the game is not capable of creating the OpenGL window with the parameters contained in this file…

Most of the time, it’s not due to a wrong tweaking in that file, but due to outdated OpenGL graphics driver.

To address this issue, please check that you got the latest OpenGL graphics driver available for your graphics card:

– nVidia card drivers:
http://www.nvidia.com/page/drivers.html

– ATI/AMD card drivers:
http://support.amd.com/us/gpudownload/Pages/index.aspx

– Intel card drivers:
http://downloadcenter.intel.com/

– Other?
Please check your computer manufacturer website to know what to download.

To check your OpenGL version, you can try to use some tools like “OpenGL Extensions Viewer” (http://www.realtech-vr.com/glview/download.html).

Running the tool will display some info about your hardware, for example:
– Under “System Info” section: “Renderer: GeForce 9400/PCI/SSE2” (that’s my crappy Mac Mini graphics card!)
Under “OpenGL” section: “Version: 2.1”. The game will require at least OpenGL 1.2 to be installed in order to run!

If run “BTM_DBG_embedded_jvm_win.bat” file by double clicking it (located in “C:\Program Files\Blocks That Matter”, or “C:\Program Files\Steam\steamapps\common\blocks that matter”) with a OpenGL lower than 1.2, you will probably obtain such a text displayed in the command window that will remains open when the game will exit:

~~~~~~~~~~~~~~~~~~
C:\Games\Blocks That Matter>”.\\bin\\java.exe” -jar BTM.jar -Xmx1024M -Xms512M –
Djava.library.path=.
Game will save your datas in: C:\Users\shteev\Documents\BlocksThatMatterUserData
s/
Pixel format not accelerated
org.lwjgl.LWJGLException: Pixel format not accelerated
at org.lwjgl.opengl.WindowsPeerInfo.nChoosePixelFormat(Native Method)
at org.lwjgl.opengl.WindowsPeerInfo.choosePixelFormat(WindowsPeerInfo.java:52)
at org.lwjgl.opengl.WindowsDisplay.createWindow(WindowsDisplay.java:185)
at org.lwjgl.opengl.Display.createWindow(Display.java:317)
at org.lwjgl.opengl.Display.create(Display.java:857)
at org.lwjgl.opengl.Display.create(Display.java:785)
at org.lwjgl.opengl.Display.create(Display.java:766)
[…] at org.flixel.FlxFactory.changeResolution(FlxFactory.java:191)
at org.flixel.FlxFactory.(FlxFactory.java:152)
at SSS.BTM.Main.BlocksThatMatter.main(BlocksThatMatter.java:13)
C:\Games\Blocks That Matter>pause
Press any key to continue . . .
~~~~~~~~~~~~~~~~~~

So keep your drivers updated, and contact us if it’s still not solving the issue!

//- – – – – – – – – – – – – –

(MORE Q&A soon here!)

Also remember that you can find tone of info on the official Steam forum of the game!

Thanks for your time, patience, and awesomeness!