[Review] Kirby Planet Robobot

Image source: wikipedia.org

As a kid I’ve played a bunch of Kirby games. Some of them with mixed up feelings. For e.g. I’ve never liked Kirby Dreamcourse for the SNES / Super Famicon back then (maybe because I’m not a huge golf fan?!). On the other side I loved Kirbys Funpak. Sound, artstyle and of course the fantastic coop couch multiplayer made this game one of my all time favourites.

Kirby Planet Robot is the first new Kirby game for me for a long time. I’ve heard so many good things about this game that I recently decided to buy and play it. During my playthrough I was barely able to put it down. To come straight to the point: This game is a love letter to those who played Kirbys Funpak back then on the SNES / Super Famicon!

Story: Business as usual

The story is, to be honest, business as usual. An enemy tries to take over the planet Pop. This time it’s not Meta Knight nor King Dee Dee. The new enemy is called “Haltmann Works Company” and they are trying to use their roboters to enslave the villagers of planet Pop.
The princip of the story is simple but solid. It’s basically like the elder ones, just with an new enemy. For an Nintendo / Kirby game there is nothing wrong about this. These games excel themselves for their “simple, easy and straight forward” story.

Score: 3.5 out of 5

Gameplay: Well known and solid

 

Kirby using the robot to fight against an enemy boss, source: Amazon

The gameplay of Kirby Planet Robobot is comparable with earlier titles. The second screen from the 3DS (or 2DS) allows the player to use the touch interface for some actions like getting rid of your actual special power. A lot of powers are well known, like sword, bomb or stone. Besides the already known powers from elder titles, there are also some new ones like beam, leaf or whip.

One of the new elements is the Robobot Armor. The Robobot Armor is basically a roboter which is used by Kirby. The roboter is also able to copy special powers and sometimes you need the right special power to activate a door or to destroy a block to reach the bonus behind this barrier. It makes so much fun to walk around while Kirby is using the roboter and it gives you the feel of something new and unused element in a Kirby game.
Another new element is Waddle Dee which appears at some certain situations. Waddle Dee gives you an item which can be used for heal whenever you need it. This remembers me of the possibilty to press select in certain Mario games to use the item which has been stored in the item box.

The controls are classic. You can jump and suck in enemies to get their special powers. Pressing jump multiple times allows you to fly around. A new element (for a Kirby game) is the 2.5D world. While you basically play this game in 2D, you will find yourself in situations where the enemies is throwing bombs at you from the background. Or there is a obstacle which is flying around from background to foreground and vice versa which you have to evade. In some situations you will teleport yourself to the background where you have to fight against enemies and collect a key or destroy a barrier to proceed in the foreground. This type of 2.5D style has been used in the latest Nintendo 2D platformers a lot. For e.g., Donkey Kong Country Returns used the same mechanic, a mechanic which I personally like a lot.

Overall they didn’t changed that many things here. However, the things that have been changed or added are fantastic, well integrated and polished.

Score: 4.5 out of 5

Graphics: Nice for a 3DS game.

One of the new abilities (poison) in action, source: Amazon

Of course, the graphics aren’t state of the art. But nobody plays games on a 3DS or 2DS to have the latest shining graphics. Kirby Planet Robobot however still has fantastic graphics for an 3DS game. The artwork is really well done and even when there is more happening on the screen, you will notice no lags or FPS issues. The graphic effects are colorful but not in terms of overloaded. Some enemy bosses are made with a lot of details. Overall this game looks pretty nice and polished for a 2.5D platformer on a device like the 3DS/2DS.

Score: 4 out of 5

Sound: Remixed original music and effects.

For the people who already played an Kirby game on the SNES / Super Famicom or Gameboy, they will feel like coming home when they hear the first music track after going into the first level. The music is related with the music from the old titles. You could say that the music in Planet Robobot is remade / remixed. Of course you will find some new tracks as well. Same goes to the sound effects. A lot of them are known from the older titles but all of them are polished with higher quality.
While some people may would say that this isn’t a positive thing I would highly disagree with them. For someone who played a lot of the elder Kirby titles, this music is and always will be in mind of the people.

Score: 4.5 out of 5

Conclusion

Kirby Planet Robobot is a love letter for everyone who played one of the older Kirby titles. The artstyle is well known but polished and modernized. The characters are lovely designed and the music is well known but in the same time the tracks appear to be fresh and unused.
Everyone who likes Kirby games and owns a 3DS or 2DS: This is a must have! If you like games that are relaxing, fun and easy to play with some Jump and Run elements, than this game is also something you should definitly check out!

Overall score: 4 out of 5

Explanation: The overall score is 4 out of 5. The calculation does look like this: (Story * 2) + (Gameplay * 2) + Sound + Graphics / 6.

Further links

So you are interested in playing Kirby Planet Robot and you want to know more? Maybe this links can help you:

Advertisements

Game reviews: A new section on unixblogger.com

Image source: Pixabay.com

When I started this blog almost 6,5 years ago, I just had the intention to write articles, tutorials and tips about Linux / MAC. But besides this hobby I have another one: Gaming!

I’ve started with the gaming hobby back in the SNES / Super Famicom era. If I remember correctly this was in the mid 90s. Some of my “all time favorites” are made for that machine. Like Terranigma, Donkey Kong Country or Kirbys Funpak.
While the years passed, I played on a lot of different platforms like the Gameboys, PS1, N64, PS2, PS3, XBox 360, Wii, WiiU, as well as on the PC. Today I’m a proud owner of an 2DS, a Nintendo Switch, a PS4, as well as of a PC which is capable for some sort of gaming.

However, today I want to introduce a new section here on this blog: Gaming reviews. From time to time I will write a review about a game for one of the mentioned platforms. The first one is already in the pipeline and should be released this week. If you have any requests or wishes, feel free to contact me or write them down in the comments below 🙂

So far, thanks for all of your support!

Best regards

HowTo setup a Counter-Strike: Global Offensive Server on Debian, Ubuntu or openSUSE

CS:GO Logo

Image source: wikipedia.org

A lot of people who are running a rented Linux (v)Server are interested in creating a Counter-Strike: Global Offensive server. Creating a CSGO server under Linux is rather easy, Valve really did their homework here. The following short tutorial will give you the needed instructions to create a Counter-Strike: Global Offensive Server under Debian, Ubuntu or openSUSE:

  1. First of all, you should really create a new user in your Linux system. The reason for that is simple: security! If your main user, or even your root user, is running the CS:GO server and is hacked later on, the hacker maybe is in the position to get access to the system behind the Server. With that being said, he may be able to get full access to the shell and he may be able to manipulate the system. To create new account on your Debian, Ubuntu or openSUSE system, you have to enter the following commands:
    root@server:~# useradd csgosrv
    root@server:~# passwd csgosrv
    root@server:~# mkdir /home/csgosrv
    root@server:~# chown csgosrv:users /home/csgosrv

    So, the first commands creates a new user, called csgosrv. The seconds commands sets a new password for this user. The password you enter here will not be prompted.
    The third command creates a new directory called csgosrv under the directory /home. This will be the standard home directory for the user csgosrv we’ve created before.
    The fourth and last command sets the owner to the created user csgosrv and the group owner of the created csgosrv home directory to users.

  2. In this step we need to download the needed libraries in order to get the Steam command line tool working. If these libraries / tools are not installed, the Steam command line client (provided by Valve), will fail to start.
    If you’re on a 64-Bit Debian or Ubuntu system you have to enable the i386 architecture in the first place. This is needed because the server software is written for the 32-Bit architecture. If you’re on a 32-Bit Ubuntu or Debian, you can skip this command:

    root@server:~# dpkg --add-architecture i386

    The following two commands are needed for 32-Bit and 64-Bit systems. They will update the repository information and install the needed libraries:

    root@server:~# apt-get update
    root@server:~# apt-get install gcc-multilib libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386 libc6:i386 wget screen

    If you’re on a openSUSE system, the commands are doing the same, but the syntax is different. The following two commands are updating the package repository and installs the needed libraries on a openSUSE system:

    root@server:~# zypper ref
    root@server:~# zypper in wget libgcc_s1-32bit libgcc_s1-gcc6-32bit ca-certificates screen

    Now, that you have installed all the needed libraries, we can go on and start downloading and installing the server software.

  3. Downloading the Steam command line tool is very easy. You can always get it directly from Valve. But before we start downloading the client, we should change to the beforehand created user csgosrv. We can do this with the following command:
    root@server:~# su - csgosrv

    As an alternative you could close your SSH session and reconnect with the user csgosrv.
    Now that we’re working with the right user, it’s time to download and extract Steam:

    csgosrv@server:~$ mkdir steam
    csgosrv@server:~/steam> cd steam
    csgosrv@server:~/steam> wget http://media.steampowered.com/client/steamcmd_linux.tar.gz
    csgosrv@server:~/steam> tar xfvz steamcmd_linux.tar.gz

    So, the first two commands are creating a new directory, called steam, and directly changed into it with the help of the cd command. The third command is downloading the Steam CMD tool with the help of the tool wget. The fourth and last command extracts the so downloaded .tar.gz archive.
    After you’ve done this steps successfully you can go on and download the CS:GO server software.

  4. This command will update the steam command line tool and installs the application “740” which is the Counter-Strike: Global Offensive server. For now you don’t need to have your steam credentials ready. You can update steam and install the server software as an anonymous user:
    csgosrv@server:~/steam> ./steamcmd.sh +login anonymous +force_install_dir ./csgo_server/ +app_update 740 validate +quit

    This command will take some time and the so downloaded server software needs round about 15 GB hard disk space. The Server software will be installed in the directory /home/csgosrv/steam/csgo_server.

  5. Now that you have successfully downloaded and updated the Counter-Strike: Global Offensive server, we can do a test run. With the following command we can start the server with the mode Classic Casual and the Mapgroup mg_bomb which includes the old bomb spot maps like de_atztec or de_dust / de_dust2:
    csgosrv@server:~/steam> cd csgo_server
    csgosrv@server:~/steam/csgo_server> ./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_bomb +map de_dust

    You will now get a lot of output. This is normal and shows you, that the software is working. However, at the end of all the lines you will find a message like this one:

    ****************************************************
    *                                                  *
    *  No Steam account token was specified.           *
    *  Logging into anonymous game server account.     *
    *  Connections will be restricted to LAN only.     *
    *                                                  *
    *  To create a game server account go to           *
    *  http://steamcommunity.com/dev/managegameservers *
    *                                                  *
    ****************************************************

    Basically this message means that your server is not registered at Vale. As long as you don’t register your server at Vale, you will only be able to connect to the server via LAN, not via the internet. It will never be an official server played on. To make your server ready for the internet, you have to go on with the next step (you can terminate the actual running session with an CTRL+C combination).

  6. To register your CS:GO server at Valve and make it ready for internet play, you have to register the server directly at Valve. To do so, visit the following link: Steam Server management. Login with your steam credentials (if you haven’t already) and enter the number 730 as the App ID in the first text box. The second text box can be filled with whatever you want. It’s just a comment field. For e.g. if you have more than one server you could write down the hostname here so that you can always directly see which token belongs to which server. Click on Create to get your Token:
    After you clicked on Create you will see your token for your server. The token can only be used on one server for one active session. You can’t use the token for multiple servers at the same time. You have to create a new token for each of your servers.
    Now that you have created your token, you can use it to start the server as an official CS:GO server with the following command:

    csgosrv@server:~/steam/csgo_server> ./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_bomb +map de_dust

    Of course you have to replace the YOURTOKEN with the token you’ve created before. If there is no firewall blocking the traffic, you should now be able to find your server via the CS:GO server browser or connect directly via the hostname / IP to it.

  7. You may already noticed, that the CS:GO server stops running when you close the SSH connection. This is, because the CS:GO server software needs an active terminal / SSH session to go on running. However, there is a tool which is called screen. If you’ve followed this tutorial, you already have installed screen at the first steps. The following commands starts the CS:GO server in the background with the help of screen.
    csgosrv@server:~/steam/csgo_server> screen -A -m -d -S csgo_server ./srcds -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_bomb +map de_dust +sv_setsteamaccount YOURTOKEN -net_port_try 1

    If you want to jump into the screen session you can easily do this with this command:

    csgosrv@server:~/steam/csgo_server> screen -r csgo_server

    As long as you are connected (attached) to the screen session, you can do anything here like in a normal terminal session. If you want to leave the screen session again, just press CTRL+a, followed by the key d (CTRL+a sends a signal to the screen program that the next key stroke is something screen has to handle. The d key says to screen than: detach!).

Optional information

If you have problems connecting to your server, you should check if there is no firewall blocking the traffic. If there is any firewall doing so, you have to unlock the port 27015 (UDP) for your server.

For a more further configuration of the server (settings like warm up, max player count, map rotation and so on) you should visit the following page. It contains a almost complete server.cfg with a lot of comments: server.cfg on csgodev
For further fine tuning at the game modes you should read the official tutorial wikipedia page from Valve about this: CS:GO Server gamemodes
I also want to provide my own server.cfg file here. It’s rather simple and just sets some basic features, like friendly fire and warm up time. You can see my server.cfg file here: server.cfg
T
he server.cfg has to be stored in the directory cfg which is a subdirectory of the csgo_server directory, the directory which we had chosen while downloading the CS:GO server software.

 

Enough of the words. I wish you a good time in CS:GO and best wishes for you and your server 🙂

 

 

Bastion and Octodad giveaway

This time I have a little present for all my readers. Yesterday I started a giveaway on Twitter where you can win a Bastion or Octodad: The Dadliest Catch Steam key. Of course I don’t want to withheld this giveaway to my blog reading only people 🙂

How to participate

Participating to this giveaway is rather easy. You can follow me on Twitter and retweet the following Tweet:

OR you leave a comment on this blog post. Of you do both things you can double your chances 🙂

The giveaway is running until Monday, 6th Febuary 0:00 UTC!

About Bastion

Bastion Logo
Image Source: nocookie.net

From Wikipedia:

Bastion is an action role-playing video game developed by independent developer Supergiant Games and published by Warner Bros. Interactive Entertainment. In the game, the player controls “the Kid” as he moves through floating, fantasy-themed environments and fights enemies of various types. It features a dynamic voiceover from a narrator, and is presented as a two-dimensional game with an isometric camera and a hand-painted, colorful art style. Bastion’s story follows the Kid as he collects special shards of rock to power a structure, the Bastion, in the wake of an apocalyptic Calamity.

I played Bastion a lot myself. It’s a very good action adventure with some new elements which are unique. You should definitly give this game a chance. It runs native on Linux of course 🙂

About Octodad: Deadliest Catch

Octodad Logo
Image Source: wikipedia.org

From Wikipedia:

Octodad: Dadliest Catch is an independent adventure video game developed and published by Young Horses. It is a sequel to the 2010 freeware game Octodad. The game consists of controlling the protagonist Octodad in completing chores typical of the mundane suburban father, but complicated by the fact that he is an octopus in disguise.

I didn’t played Octodad that much, but I’ve read a lot of good things about it on the internet. Especially if you play this game with a second player on one device. Also fully supported on Linux 🙂

 

I wish everbody good luck 🙂

Rocket League under Linux: “There has been an error connecting to the Rocket Leauge servers please try again later”


Source: wikipedia.org

One of my favorite games actually is Rocket League. It’s competitive, supports splitscreen (yes, even on PC), makes a lot of fun and now it’s also available for Linux. I played Rocket League before as it was a part of the PS Plus monthly free games months ago. Now that Rocket League has official arrived for Linux, I decided to buy this game on Steam as well.

Unable to connect to servers

Well, the bad thing was, after I started the game, the following message appeared:

There has been an error connecting to the Rocket Leauge servers please try again later

I started to check my network connection, was googeling if the Rocket League server were down and so on. Then I started to feel that this has something to do with my distribution (for the records, I’m actually using openSUSE Tumbleweed, a rolling release distribution). After a short time of searching the web I found the solution for the problem. For openSUSE you simply have to issue the following command as root or with the //sudo// command:

user@opensuse:~$ sudo ln -s /etc/ssl/ca-bundle.pem /etc/ssl/certs/ca-certificates.crt

This command creates a symbolic link which can later be found in ///etc/ssl/certs/ca-certificates.crt//. The link itself points to ///etc/ssl/ca-bunble.pem//. Rocket League needs this certificate to connect to their servers. It’s looking in the directory ///etc/ssl/certs// for the certificate which can’t be found. To solve this, we need the symbolic link of the certificate file where it is originally stored in openSUSE Tumbleweed (which is ///etc/ssl//).
The solution for this problem was originally discussed at the Steam community site: Link.

Restart Rocket League and you should be able ready to go. Please keep in mind that the path of the certificate can differ if you use another distribution. Anyway the target path (which is ///etc/ssl/certs///) is always the same.

Good luck and have fun with a working Rocket League 🙂

How to get your XBox 360 Wireless Controller working under your Linux box

Xbox 360 Wireless Controller, source: wikipedia.org
Image source: wikipedia.org

 

A lot of games today need a controller … yes, even on PC you can’t ignore that fact.

One of the best controllers out there in the wild is (IMHO) the XBox 360 Wireless Controller from Microsoft. The Wired version of this controller can be easily connected through Plug & Play. The standard loaded driver xpad then can handle it.
But what do you have to do if the controller is the wireless Version?

1. First things first

You need of course a receiver which gets all the signals that are sent from your controller. This receiver is (normally) not included when you’re buying the controller. The receiver also comes from Microsoft and costs ~ 19,-€ here in the EU. I have also seen some third party products here which are way more cheaper, but actually I really can’t say if they are working that well.
After you plugged in the receiver, the kernel will recognize it but yet it is actually unable to do anything.

 

2. The driver

As I mentioned before, if you’re useing the wired controller, then you have to nothing to be worried about. Everything will work out of the box.
Anyways, for the wireless XBox 360 Controller you need a driver which is called ‘xboxdrv’.

Under Ubuntu and Debian this driver can be easily installed with apt. This means the driver is already available in the repositorys:

sudo apt-get install xboxdrv

In openSUSE the driver is also in the official repositorys as long as you are on openSUSE Tumbleweed or Leap (42.1):

sudo zypper install xboxdrv

For Fedora, Arch and any other distribution you have to check for your owner whether you need a extra repository for the driver or not.

 

3. Start the driver

Starting the driver with default settings is rather simple. The following command starts the driver with default settings:

sudo xboxdrv

If you didn’t unloaded the xpad driver before you will run into an error message that the driver couldn’t be loaded because the xpad driver is already loaded.

To unload the xpad module you can use ‘rmmod xpad’ or let the xboxdrv do that for you:

sudo xboxdrv --detach-kernel-driver

Now you should see something like the following output on your terminal window:

Controller: Xbox 360 Wireless Receiver
Vendor/Product: 045e:0719
USB Path: 005:004
Wireless Port: 0
Controller Type: Xbox360 (wireless)

Your Xbox/Xbox360 controller should now be available as:
/dev/input/js0
/dev/input/event19

Press Ctrl-C to quit, use ‘–silent’ to suppress the event output

So this means, you’re ready to go. Useing buttons and pads on the controller should create tons of output which you can ignore. Do disable this output add the ‘–silent’ option to the xboxdrv command:

sudo xboxdrv --detach-kernel-driver --silent

Now you should be able to use your XBox 360 Wireless controller with almost every native Linux game which is available.

 

4. Useing xboxdrv with WINE
For useing xboxdrv with WINE there are a lot of tutorials out there. Some of them recommend to install a mapper which will map controller keys to keyboard keys and many other solutions. For me the simpelst way was to simply add the following parameter to the xboxdrv command line:

sudo xboxdrv --detach-kernel-driver --silent --mimic-xpad

The “–mimic-xpad” option says the xboxdrv driver that he should act and perform like a controller that is connected to your Linux box as an xpad Controller. Now you should be also able to use your controller under WINE games.

NOTE: I recently bought Dark Souls: Prepare to die edition from the Humble Bundle Sping Sale. This game does not come native to Linux but works well here with WINE. To get the correct mapping of your XBox 360 Wireless controller here you have to start xboxdrv like this:

sudo xboxdrv --detach-kernel-driver --silent --mimic-xpad --buttonmap 1=3,3=1,2=4,4=2,rt=start,lt=back,start=rt,back=lt --ui-buttonmap guide=KEY_LEFTSHIFT+KEY_TAB,rt=KEY_END,lt=KEY_G

If you want to play Dark Souls I with a controller on your Linux box with WINE, you have to add the “buttonmap” section to your xboxdrv command. Otherwise the B-Button in game will be the X-Button on your wireless controller for e.g.
Of course, this “buttonmap” section only works with Dark Souls I for now. Other games, other button mapping. You should consult the AppDB from WINE to find the right button mapping for your game.