New year – project statuses

MultiMaze Android game

Throughout the fall and winter I’ve been implementing Google Play Games Services to add leaderboards and achievements to the game. To get it working was quite simple but as always there are special cases to be dealt with that’s causing “delays”. For instance, the player must be signed in to Google Plus in the app to be able to unlock achievements but if the player unlocks achievements while not logged in the player’ll want to unlock them the next time he/she logs in!

I’ve also added NFC setup of Bluetooth sessions! It’s pretty damn cool!

Future tasks: Add Play Games Realtime-multiplayer support. SHOULD not be that hard but there’ll obviously be hard cases I haven’t thought about… Also, I’d like to add sound effects and a soundtrack to the game. The other major task is to add a third level to the game – the lava-level! :D

Sundsvall ÅVC Android app

Before christmas I released a new version of the app with improved notifications for when it’s time to roll out the garbage containers. I’ve also improved the inputting of data to the server and pushing of data to GCM/clients. I’ve posted one Sundsvall ÅVC-ad on the local recycling station. No new users though.

Future tasks: Make the startup-ad in the app dynamic with images and link. Post more ads on the recycling stations in the city. :)

Project Run Sundsvall website

This fall/winter I’ve made long due improvements to the inputting of data to the server. Now it’s much easier to push a new track to the server so hopefully I’ll update my running tracks/event much more frequently in the future!

Future tasks: Add controls to the main page of the project. For example make it possible to see only the last three months or last year or a specific year and so on. It would also be nice to be able to filter on track-type (e.g. only from home to home).

GridPaint Android app

After the summer I made a total re-haul of the pattern-making-app using LibGDX (an OpenGL wrapper/library). I got cool mirroring functionality working but there were some bugs that I didn’t have the determination to push through so the project is put on hold…

Rubic’s cube – solving the last layer

Let’s solve the last layer of the Rubic’s cube!

In previous posts I show how we can solve the cube:
Post 1 – First layer
Post 2 – Algorithm explanation
Post 3 – Using the algorithms (layer 2)

In this, the last post, I’ll show you how to solve the last and hardest layer.

1. Create a yellow cross in the last layer using the algorithm:
FURU’R’F’
if you have the following placement of yellow bits:
2012-09-26 14.36.11or using
FRUR’U’F’
if you have the following yellow placements:
2012-09-26 14.36.27
2. Place the four corner bits on the correct places using:
LU’R’UL’U’RU2
2012-09-26 14.36.59
3. Flip three corners up to complete the yellow layer using:
R’U’RU’R’U2RU2
2012-09-26 14.39.58
or
RUR’URU2R’U2
2012-09-26 14.39.18
4. Fix the middle pieces in the last layer by applying:
R2UFB’R2F’BUR2
2012-09-26 14.41.19

Rubikskub – del 3, algoritmerna

I del 1 gick vi igenom hur man löser (nästan) två lager. I del 2 gick vi igenom de vridningar som algoritmerna för att lösa Rubiks kub innehåller. Nu, i del 3, ska vi gå igenom hur vi löser resten av kuben med hjälp av algoritmerna.

Steg 1. Gör klart lager två (mellan lagret).

Gör vridningarna: B’R’BRBFB’F’.
20121003-140931.jpg

Gör vridningarna: BLB’L’B’F’BF.

20121003-141015.jpg

När vi placerat alla fyra mittensidbitar rätt ska kuben se ut såhär:

20121003-141115.jpg

In the following post we’ll solve the last layer!

 

Rubiks kub – del 2, algoritmförklaring

För att lösa kuben använder vi som sagt algoritmer. Algoritmer kan liknas vid ett recept man följer för att nå ett visst mål, t.ex. en äppelpaj. Ett exempel på en Rubiks kub-algoritm är FRUR’U’F’.

Vad betyder då detta? Jo, varje bokstav står för en nittiograders vridning av en sida. Till exempel betyder R “vrid det högra lagret nittiograder”. En vridning sker på samma sätt som man skruvar i en skruv sett från lagrets utsida. Man betecknar en vridning “bakåt” med tecknet för en mattematisk invers (‘), dvs. R’.

Vi kan beskriva alla möjliga vridningar av kuben med följande bokstäver: F (front), B (back), L (left), R (right), U (up) och D (down) samt dess inverser.

En F vridning:
20121002-134605.jpg

En B vridning:
20121002-134635.jpg

En L vridning:
20121002-134703.jpg

En R vridning:
20121002-134721.jpg

En U vridning:
20121002-134744.jpg

En D vridning:
20121002-134803.jpg

Man kan även förkorta två efterföljande, likadana vridningar från t.ex UU till U2. Det blir inte kortare men det blir tydligare!

I nästa och sista delen går jag igenom de algoritmer som finns för att lösa Rubiks kub.

Rubiks kub – del 1, nästan de två första lagren

Jag tycker att alla nördar borde kunna lösa rubiks kub. Därför lärde jag mig hur man gör för några år sedan – man lär sig några algoritmer (passande nog). Här tänkte jag gå igenom stegen som finns när man ska lösa kuben.

20120927-071642.jpg
Steg 1. Gör ett vitt kors på den vita sidan (den sida som har en vit mittenbit). Korset ska vara konstruerat så att den vit/gröna mitten-kant-biten ligger mot både den vita och den gröna mitten-biten. Och likadant för den vit/blåa, vit/orangea och vit/röda.

20120927-072000.jpg
Steg 2. Placera hörnbitarna på den vita sidan rätt, dvs den vit/blå/röda hörnbiten ska ligga så att den vita sidan är mot den vita sidan, den blå sidan mot den blå sidan och den röda mot den röda sidan. Nu är hela det översta lagret klart! Och nästan hela lager två.

20120927-072044.jpg
Nu börjar vi använda algoritmerna jag pratade om. Nästa del förklarar hur algoritmerna är uppbyggda.

Sundsvall till Atlanten

Jag har tidigare haft en dröm om att springa tvärs över Sverige, till exempel från Göteborg till Stockholm. Men nu tycker jag att det känns det roligare, coolare och mer realistiskt att springa tvärs över Skandinaviska-halvön! Ca 40 mil i motvind. Det borde gå på en vecka.

Klicka på bilden för mer detaljerad karta.