A Review of Games Written in R on CRAN (2024)

Posted on September 11, 2022 by R on Dr. Rick Tankard in R bloggers | 0 Comments

[This article was first published on R on Dr. Rick Tankard, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

R is primarily designed for statistical computing and graphics, andthat’s where I’ve spent most of my time in R. This includes developing an Rpackage, exSTRa, for my PhD. Risn’t an ideal language for video games, without native support forreactive programming. Though where there’s computing, there are games.

A brief review of games

I decided to look at what games are available on CRAN, searchingfor either “game”. Games outside of CRAN may be covered inanother post.For each R package that was a game, I’ve given a short review.

In this post, CLI stands for command-line interface (games without a graphics window).

Here’s the list, in a random order:

  • twenty48

    A CLI tile puzzle game where you slide the board in a directionto combine the same number. It didn’t come with instructions onthe rules of the game but is similar to a game called Threes, so Iwas able to work it out. Overall a good implementation.

    A Review of Games Written in R on CRAN (1)

  • proton

    A CLI text adventure game that gets you performing some datawrangling in order to solve the puzzles. This is a game that has areason to be in R. I quite enjoyed it, really. This game could berecommended to students for teaching R.

    Pietraszko uses a password which is very difficult to guess.At first, try to hack an account of a person which is not as cautious as Pietraszko.But who is the weakest point? Initial investigation suggests that John Insecure doesn'tcare about security and has an account on the Proton server. He may use a passwordwhich is easy to crack.Let's attack his account first!Problem 1: Find the login of John Insecure.Bit has scrapped 'employees' data (names and logins) from the www web page of TechnicalUniversity of Warsaw. The data is in the data.frame `employees`.Now, your task is to find John Insecure's login.When you finally find out what John's login is, use`proton(action = "login", login="XYZ")` command, where XYZ is Insecure's login.
  • BetaBit

    BetaBit is a sequel to proton.Wait a minute, it has proton in it along with two other games!These are The Frequeon Game and The Regression Game.The programming tasks get a bit harder here, but still a good way to havesome challenges for learning R.

     _____ _ _____ _____|_ _| |_ ___ | __|___ ___ ___ _ _ ___ ___ | __|___ _____ ___| | | | -_| | __| _| -_| . | | | . | | | | | .'| | -_||_| |_|_|___| |__| |_| |___|_ |___|___|_|_| |_____|__,|_|_|_|___||_|You've Got MailFrom: [emailprotected]To: [emailprotected]Subject: Interested?Hi,We are looking for a smart guy with extraordinary hacking skills.Our mutual friend assured us that you are our man.TL;DR: We are observing a group of terrorists that are planning something.We have intercepted some data, but do not know how to read it (attached).There is a password somewhere. We have to find it to stop terrorists.Would you like to join our team? Help us and we will help you in the future.It's not clear how to start. Our informer told us that the key is somehow related withthree key phrases: `guns`, `and`, `roses`.Probably these are the names of some messages / datasets.Would you like to check if you have access to any of them?If you want to help, please type:`frequon(subject = "Re: Interested?",content = "Text of the message that you have access to")`so as we could read the message too.Remember: any time you want, you can get some piece of advice, justtype: `frequon(hint=TRUE)`.
  • wordler

    This is a CLI implementation of Wordle.Pretty standard stuff, except it also gives you a programmatic interfaceso you can explore properties and strategies for the game Wordle.

  • ztype

    This isn’t really an R game, as it instead provides a function that issupposed to submita form to https://zty.pe to include functions from a package.In my case, that didn’t seem to work and I just got ordinary words in thebrowser.

  • sokoban

    A transport puzzle game where you push crates around in a warehouse to getthem to storage locations. An alright game.I couldn’t get it to work in R Studio, but did work in the R Gui on Windows.

    A Review of Games Written in R on CRAN (3)

  • happytime

    Another implementation of 2048.I prefer the twenty48 version more due to the use of colours.

    A Review of Games Written in R on CRAN (4)

  • FourScores

    This is basically Connect 4, except you can choose the size of the board.You can play either against the AI or against another human player.

    A Review of Games Written in R on CRAN (5)

  • casino

    A CLI game implementing Blackjack, Poker and a 3-reel Slot machine.Performs well.

    A Review of Games Written in R on CRAN (6)

  • pixelpuzzle

    Pizzle puzzle is a variation on the jigsaw puzzle, where instead, you have toshift rows of pixels until the image matches the original pixel image.Not a bad CLI game at all. It can get quite challenging at the harder difficultylevels.

    A Review of Games Written in R on CRAN (7)

  • tictactoe

    A CLI game of Tic Tac Toe.Allows you to simulate games of two AIs against each other, optionally ofdifferent levels.

    A Review of Games Written in R on CRAN (8)

  • rwarrior

    This is my own CLI game, so I am a bit biased. As a programming game,rwarrior would play differently if implemented in any other programminglanguage.I hope to add a graphical interface.

    A Review of Games Written in R on CRAN (9)

  • lightsout

    An R implementation of the Lights Out game in R.This Shiny app plays well and is quick to react.An excellent little puzzle game.

    A Review of Games Written in R on CRAN (10)

  • snake

    A graphical R implementation of the classic game snake.Unfortunately, it feels a bit laggy where you have to press yourinput when the snake is one block before when intending to move.

    A Review of Games Written in R on CRAN (11)

  • codebreaker

    A CLI implementation of Mastermind (though I don’t know if the rules vary here).Nice and colourful.A well-implemented game.

    A Review of Games Written in R on CRAN (12)

Two-player-only games:

  • BoardGames

    Despite the name, this package only implements the game Ultimate Tic Tac Toe on a 9×9 board for two players (no option for a single player).Still a game you could do on pen and paper, thisimplementation helps to check you are following the rules properly.The game runs smoothly.

    A Review of Games Written in R on CRAN (13)

Other packages I found that simulated or analysed games, but not a game inthemselves, included:

  • SnakesAndLaddersAnalysis

    Want to play Snakes and Ladders but only have a minute to play?Use SnakesAndLaddersAnalysis!This is more for simulating games of Snakes and Ladders than actual play.Learning to count is the point of the game, and you won’t get any of this here.

  • CamelUp

    Simulates the board game CamelUp in a Shiny interface but only supports thegame as one player.

  • stockfish, bigchess, chess and rchess are packages related to Chessengines, file formats, playing chess programmatically and analysis.It wasn’t apparent how these may let you play chess against theStockfish Chess engine or give a graphical interface.

Closing remarks

Have you tried any games in R?Games I’d recommend include BetaBit, pixelpuzzle, lightsout and my own package rwarrior.Some of the others aren’t really worth the hassle and you are better off playing a web version.With the Github releasednarapackage, we might be seeing more graphical based games coming to R.Let’s just hope nara can get on CRAN soon.

Related

To leave a comment for the author, please follow the link and comment on their blog: R on Dr. Rick Tankard.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

A Review of Games Written in R on CRAN (2024)

References

Top Articles
Latest Posts
Article information

Author: Stevie Stamm

Last Updated:

Views: 6403

Rating: 5 / 5 (60 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Stevie Stamm

Birthday: 1996-06-22

Address: Apt. 419 4200 Sipes Estate, East Delmerview, WY 05617

Phone: +342332224300

Job: Future Advertising Analyst

Hobby: Leather crafting, Puzzles, Leather crafting, scrapbook, Urban exploration, Cabaret, Skateboarding

Introduction: My name is Stevie Stamm, I am a colorful, sparkling, splendid, vast, open, hilarious, tender person who loves writing and wants to share my knowledge and understanding with you.