Author: ZenDraL


Posted on: 7th February 2010

1 Comment

Category: Uncategorized

I recently made myself a Rubenking cube with stickers from CubeSmith and after solving most of the cube I got stuck with centers that were not aligned properly. Below are the algorithms I found for aligning the centers and completing my solution.

Note that these algorithms will work for picture cubes.

  • Case 1: Two centers with 90 degree rotations, hold on the piece that requires a clockwise rotation on the left and the piece that requires a counter-clockwise rotation on the up face and perform the following algorithm:

    MR’ MU’ MR U MR’ MU MR U’

  • Case 2: One center requires 180 degree rotation, hold on top face and perform the following algorithm:

    (U R L U2 R’ L’)2

Author: ZenDraL


Posted on: 2nd February 2010

2 Comments

Category: Games, Rubik's Cube

When trying to work on an OLL or PLL algorithm it is often useful to have the inverse of the algorithm so that you can easily setup the situation you want to try. Use the algorithm inverter below to obtain an inverted algorithm.

This inverter uses Superset notation which you can find defined in detail here!

There is support for the following symbols: R U F L D B TR TU TF TL TD TB CR CU CF CL CD CB MR MU MF ML MD MB

There IS suppport for inverting any of the symbols above one at a time.
Valid inversion R’ U’ F’
Invalid inversion (R U F)’

ALL moves must be seperated by a space.
Valid input R’ U’ F’
Invalid input R’U'F’

This inverter is very basic there is no support for inversion of groups (i.e., (F R U)’), commutators (i.e., [a,b]), repitition, or any other advanced Superset constructs.

Enter the algorithm to invert in the text box below and hit the ‘Invert Algorithm’ button.

Author: ZenDraL


Posted on: 15th January 2010

No Comments

Category: Games

One of the nicest things about the Counter-Strike series of games is the ability to customize your interface using scripts.

For those unaware of how to use scripts there are basically three kinds of statements:

Variable assignment

Alone these variables are not so useful; however, used in one of the following statements they can be much more powerful.

1
2
fps_max "72"
volume "0.2"

Bind statments

You can associate a statement with a key by using the bind command.


The following command will bind a statement to the F12 key which will mute the volume.

1
bind F11 "volume 0.0"

Alias statements

This is the closest that you’re going to get to a function. As long as you can accept the idea that this is a sequence of commands delimited by a ‘;’ symbol that takes no parameters and cannot read variables.

1
2
3
4
5
volume "0.2" // Setting default volume.
alias volume_mute "volume 0.0"
alias volume_restore "volume 0.2"
bind F11 "volume_mute"
bind F12 "volume_restore"

With these two commands we can now mute the volume in the console by typing volume_mute and similarly we can restore the volume using volume_restore


There is a second kind of alias that you can implement which involves prepending the alias name with either the ‘+’ or ‘-’ operators. An example of this is +attack which is provided by the game to allow you to fire. Binding +attack to a key causes that key to fire while depressed and cease firing when released.


Lets say we only want the volume to be muted while we hold down the F11 key. We can define an alias as following and bind it to F11.

1
2
3
alias +temp_mute "volume 0.0"
alias -temp_mute "volume 0.2"
bind F11 "+temp_mute"

Alternatively, if we desire to have the bind act as a toggle then we have to introduce a method of keeping track of state into our aliases. This is done by defining a third alias and then dynamically setting this alias depending on state.

1
2
3
4
volume "0.2" // Setting default volume.
alias volume_toggle "volume_mute"
alias volume_mute "alias volume_toggle volume_restore; volume 0.0"
alias volume_restore "alias volume_toggle volume_mute; volume 0.2"

On line 1 we ensure that the volume is enabled.
On line 2 we set the default action for the mute toggle to mute the volume (which is the opposite of the current state.)
Lines 3 and 4 define an alias to perform an action and set the toggle to perform the opposite action.
Now when we hit F12 it toggles the ingame volume.

Setting up CS 1.6 to automatically use your scripts on every load

If you place your scripts in a file called ‘userconfig.cfg’ and place the file in your ‘cstrike’ directory your scripts will be executed on every run.

Alternatively, you can run scripts through the console by using exec scriptname.ext.

You can find the scripts that I use and my configuration here.

Author: ZenDraL


Posted on: 14th January 2010

No Comments

Category: Games, Rubik's Cube

It is possible to solve the first layer corners and the second layer pieces at the same time. I do this intuitively (meaning I dont’ actually memorize these algorithms.) Yet here they are… enjoy.

There are three cases which I cover here.

I do not cover the case for when the bottom cross colour is on the bottom face. For the most part I just pop this piece on to the top layer and solve with one of the above sets of algorithms. There are two exceptions:

  • When the piece is correctly oriented I perform the algorithm from the beginner tutorial to place the edge from the top layer.
  • When moving the piece to the top layer creates a solved corner/edge pair I just place it where it belongs.

Author: ZenDraL


Posted on: 11th January 2010

No Comments

Category: Games, Rubik's Cube

2 Look PLL

If you've followed my beginner tutorial then at this point you permute the last layer by first solving the corners and then solving the center edges. This should take you at most 4 looks. We're going to cut that down to two by introducing some new algorithms so that we can solve the corners in one algorithm as well as the center edges in one other algorithm.

Click here to see the algorithms.

Author: ZenDraL


Posted on: 8th January 2010

No Comments

Category: Games, Rubik's Cube

2 Look OLL

If you've followed my beginner tutorial then at this point you can solve the cross on the Up face using one algorithm and then repeat another algorithm up to 4 times (if you're not solving the cross with one algorithm check out my beginner tutorial to learn how to do it in one step.)

Each of these times you must orient the cube before you perform the algorithm.

Using the following algorithms you look once to determine how to solve the top cross, then you look again to solve the corners. You can reduce the time necessary to complete your OLL by memorizing the following algorithms.

Click here to see the algorithms.

Author: ZenDraL


Posted on: 29th December 2009

1 Comment

Category: Games, Rubik's Cube

This is a beginners tutorial about solving the Rubik's cube. While learning the Rubik's cube I encountered many different beginner solutions. Parts of these solutions remained relevant as I learned more advanced methods; however, some of these algorithms are no longer useful to me. I have endevoured to write this tutorial using algorithms that will remain of use even as you progress and learn faster methods for solving the cube.

Author: ZenDraL


Posted on: 1st December 2009

1 Comment

Category: Games, Rubik's Cube

I recently picked up a Rubik's cube and started learning algorithms to solve it. I've only been at it for a week now but I've gotten my solution down to an average of 2:30 1:30 60 60 seconds with a best time of 45 seconds. My target is 30 seconds but I'm sure that's going to take a little while. Here are some useful resources I found along the way:

Here's a cube to play with:

Author: ZenDraL


Posted on: 16th October 2009

1 Comment

Category: MARE

This is just a post to keep track of suggestion for MARE.

Author: ZenDraL


Posted on: 9th October 2009

2 Comments

Category: General

I was getting some free ASP.NET hosting from a buddy… thanks Alex it was great while it lasted.

However, that no longer being an option I’m going with the budget PHP wordpress site (thanks duckie).

Hopefully, I’ll get some free time soon and update the site with at least the latest version of MARE.

Till then, stay frosty.