• Sokoban Series: Part 1, Getting Everything Up and Running

    |

    Sokoban

    In this series we discuss our Sokoban clone, written in Phaser 3. The game is available on CrazyGames.

    For those that are not familiar with Phaser, it is a nice framework to develop (mainly 2D) HTML5 games. Phaser 3 has been in development for some time now, and has been deemed stable for a couple of months.

    Sokoban is an old Japanese puzzle game from the 80s. Your character is a warehouse employee that needs to push crates into the correct location. You can only push a single crate at the time, and must be careful not to get stuck.

    The focus of this writeup lies on the implementation, and we’ll show a lot of code snippets. The reason for this is that, while the implementation of Phaser 3 itself may be done, it is still lacking some documentation and more advanced code examples. Nonetheless, the documentation and examples pages are invaluable resources, and something I always had open during development. We try to highlight some of the issues we encountered while developing Sokoban, and how we solved them.

    Some of the details of our implementation are left out to increase readability, and to narrow the discussion to Phaser itself. It is possible that some inconsistenties can be found in these snippets due to this cleanup.

    Table of Contents

    This is a multipart series, where we discuss the following topics:

    This post discusses the first part: Getting Phaser & Typescript up and running.

    Getting Started

    In this section we discuss how to get Phaser 3 up and running with Typescript, and get a nice development environment where we can test our game during development.

    Getting Typescript up and Running

    We start by getting Phaser 3 up and running with Typescript. Typescript is a typed version of Javascript that compiles down to Javascript. I prefer working with Typescript as you get features such as tab completion, type information which is very handy with a large framework such as Phaser 3, and potential errors get caught early by your compiler.

    Phaser 3 has support for Typescript, even though the type definitions do not cover Phaser 100%. Type definitions state what arguments a certain function takes, and what the return type is. Instead of setting up everything ourselves we can start from this skeleton project.

    We clone it, rename the folder to Sokoban, remove the .git folder and import it into our code editor. In our case this is Visual Studio Code. Next, we edit the package.json file, and ensure we’re using the latest version of Phaser 3. You can see the latest version by going to npmjs.com. Installing all the dependencies is done by running npm install.

    We replace the phaser.d.ts typings file with the latest version found here. We move everything from the src/boilerplate directory into the src/ directory, and remove everything else. Remove the comment at the top of game.ts that refers to the Phaser typings. Typescript should detect the typings without any assistance. Finally, we edit webpack.config.js so that entry points to ./src/game/ts.

    When you try to run your project (npm run dev) you should get redirected to your browser and greeted by your game. It’s possible you get some warnings, or you have to remove some additional comments in game.ts. You can developer your game while running this command, and your game will automatically refresh when it is modified.

    Getting Assets

    Before we can start developing we need some assets we can work with. I prefer not to spend too much time on creating my own assets, at least not in the beginning of a game. I bought the Kenney Bundle, which includes assets for Sokoban. The assets are better than any asset I can produce myself, and I prefer to program over editing in GIMP or Photoshop. But feel free to create your own assets. In the beginning you can even start with simple colored squares that represent in-game objects.

    In order to import the assets into Phaser we create a sprite sheet. A sprite sheet turns all a set of images into one big image, and tells Phaser how to divide the big image back into the indivual assets. The advantage is that you only need to import one image instead of hundred small images. To this end, we use Texture Packer. They have a nice tutorial how to create spritesheets. Add a smart folder with the Sokoban assets, and export them as a Phaser (JSONHash). I prefer to select trim sprite names, which removes the extension of your individual assets. This means you do not need to worry whether your asset was a .jpg or a .png, or you can even replace them with a different format.

    texture packer

    Creating a Tile Map

    Our Sokoban level can be represented by a tile map. Tile maps are perfect for topdown maps for many oldschool games such as Bomberman, Pacman, and also Sokoban. Tiled is a free tile map editor that is easy to use and comes with a wide series of features. Install Tiled, and create a new tile map. Next, import our sprite sheet that we previously created. Make sure to select “embed spritesheet” and not save it as a separate file. Finally, draw a map and export it as a json file. Save everything into your assets directory of our project.

    tiled image

    Getting Everything in Phaser

    Let’s try to get everything in Phaser. We start by cleaning up the last parts of the skeleton project. Remove everything in assets (except for our own stuff). Then let’s import our map. Let’s edit mainScene.ts:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    export class MainScene extends Phaser.Scene {
    private tileSet: Phaser.Tilemaps.Tileset;
    private tileMap: Phaser.Tilemaps.Tilemap;

    constructor() {
    super({
    key: "MainScene"
    });
    }

    preload(): void {
    this.load.atlas('assets', './assets/assets.png', './assets/assets.json');
    this.load.tilemapTiledJSON('level', `./assets/levels/level.json`);
    }

    create(): void {
    this.tileMap = this.make.tilemap({ key: 'level' });
    this.tileSet = this.tileMap.addTilesetImage('assets');
    this.tileMap.createStaticLayer('Tile Layer 1', this.tileSet, x, y);
    }
    }

    In our preload() function we load our spritesheet and tiled map. In the create() function we create the actual objects. When we start our application again we should see our tilemap, although not much interesting will be happening.

    Conclusion

    In this episode we installed and set up Phaser 3 with Typescript. We used an available template project that handles most of the setup for us. Next, we created (well… bought) and imported assets that we will use for the rest of our game. In the next episode we will convert our tilemap into actual game objects that can move.

  • The Ultimate Resource for Five Nights at Freddy's

    Most avid gamers will have heard of the infamous point-and-click horror survival crossover Five Nights at Freddy’s (commonly abbreviated as FNaF). This series is hugely popular and is known for its realistic and scary animatronic robots and frightening gameplay. For those of you who don’t know, an animatronic creation is a robot encased within a costume that has the ability to move and perform certain pre-programmed actions – these robots are the central protagonists of the FNaF series and you will encounter many of them during your stint as a night watchman.

    During each Five Nights at Freddy’s episode you control a character who is employed at the fictional Freddy Fazbear’s Pizzeria (usually as the night security guard) – you must utilize a variety of mechanisms and tools to survive. Each night you will face a new set of terrors and attempt to avoid contact with the creepy animatronic robots that appear to haunt the building. Now that you understand a little about the series premise, we can look at the history of FNaF and its development.

    The idea for FNaF was created by developer Scott Cawthon. Before rising to popularity with the Five Nights at Freddy’s series, Cawthon had already released several other titles. The original FNaF episode was released on the 8th of August 2014 on the distribution platform Desura. As the original became an instant success and fan favourite, subsequent episodes were created and thus the Five Nights at Freddy’s series was born. Today, fans of the series can enjoy 6 original games in total and one spin-off creation and we have listed them all for your benefit below:

    Five Nights at Freddy’s

    Five Nights at Freddy’s

    This is the original, the game that started it all! Originally released on the 8th of August 2014, Five Nights at Freddy’s remains the most popular title of all. You have been employed as a night security guard at the pizzeria and you must monitor the security cameras. You must monitor power levels, control the lights, and keep the animatronic robots at bay – can you survive for 5 consecutive nights from 12am to 6am? During the five nights, you will encounter the following creepy robots:

    • Freddy Fazbear
    • Bonnie the Bunny
    • Chica the Chicken
    • Foxy the Pirate Fox
    • Golden Freddy

    Due to its popularity, the original is available on Steam, the Apple App Store, the Android Play Store and of course through CrazyGames.

    Five Nights at Freddy’s 2

    Five Nights at Freddy’s 2

    After the success of the first episode, Five Nights at Freddy’s 2 was released on the 10th of November 2014. Although released after the original, FNaF 2 takes place before the events of the original. In this title, Freddy Fazbear’s Pizzeria has had a grand re-opening – its animatronic robots have had a facelift and now resemble huge cuddly toys – they are also equipped with facial recognition technology. This technology is faulty however and malfunctions at night to a disastrous effect!

    You must once again take on the role of the night security guard and attempt to maintain peace using the surveillance cameras. Aside from the cameras, you are also equipped with a flashlight and a huge Freddy Fazbear head to help deceive the robots. Can you survive again for 5 full nights of terror? In FNaF 2, you will encounter the following animatronic robots:

    • Toy Freddy
    • Toy Bonnie
    • Toy Chia
    • Mangle
    • Ballon Boy
    • The Puppet

    As with the original episode, Five Nights at Freddy’s 2 is available on Steam, the App Store, the Play Store, and through CrazyGames.

    Five Nights at Freddy’s 3

    Five Nights at Freddy’s 3

    Released on the 2nd of March 2015, Five Nights at Freddy’s three was originally the final game in the series and the events take place thirty years after the original. Freddy Fazbear’s Pizzeria has been closed and out of business but the new owners have plans to turn it into a horror attraction – Fazbear’s Fright: The Horror Attraction. They hope to provide a scary experience to the customers and recreate the frightening events that happened here. To help maintain security, you have been employed as the night watchman!

    This third instalment presents a whole new set of challenges and even some cool mini games. You must monitor the surveillance system, control the ventilation and also use an audio system to lure the animatronic robots. You are continually haunted by Springtrap and you will also encounter hallucinations of the old animatronic robots including Freddy himself. This is also the first FNaF game that features two alternative endings! In FNaF 3, you encounter the following robots:

    • Springtrap
    • Freddy
    • Chica
    • Foxy
    • Balloon Boy
    • Mangle
    • The Puppet

    The third instalment of Five Nights at Freddy’s is available on both iOS and Android mobile devices and Steam. You can also play this fantastic game on your web browser through CrazyGames.

    Five Nights at Freddy’s 4

    Five Nights at Freddy’s 4

    Although the fourth episode in the Five Nights at Freddy’s series, this title actually takes place before the events in the original. Released on the 23rd of July 2015, this title shows you where the animatronics came from and provides an interesting backstory for the FNaF series. You are a child and you must try and survive against hallucinations of evil animatronic robots.

    You must close various doors in your house to avoid contact with the robots and you must rely on your hearing to detect movement. Use your flashlight to scan the area and close the doors carefully. This is possibly the most frightening of the FNaF series and presents a whole new set of challenges and trials. Can you survive five nights of terror? In this fourth episode you will encounter the following nightmarish robots:

    • Bonnie
    • Chica
    • Foxy
    • Freddy
    • Golden Freddy

    As with the other titles, Five Nights at Freddy’s 4 is available to play on Steam but also on iOS and Android Devices. You can also play FNaF 4 on CrazyGames without the need to download anything.

    Five Nights at Freddy’s: Sister Location

    Five Nights at Freddy’s: Sister Location

    The terror continues in this fifth instalment of the Five Nights at Freddy’s series. This title was originally released on the 7th of October 2016 and is the first game to bring a new location to the series. In this title, you are a night security guard at Circus Baby’s Rentals and Entertainment which is a sister company of Fazbear Entertainment.

    As the night security guard you have the ability to move between rooms and you must monitor the security cameras and ensure that the animatronic robots are ready for use in the morning. As with the other FNaF titles however, during the night things often go wrong and creepy occurrences start to happen! You must control the creepy animatronic robots and attempt to complete a variety of tasks without receiving any injuries. If you enjoy this version of FNaF there is also Sister Location Custom Night which reverts to the original format but in the same location of Circus Baby’s Rentals. In FNaF 5 you will encounter the following robots:

    • Funtime Freddy
    • Funtime Foxy
    • Circus Baby
    • Ballora
    • BonBon
    • Electrobab
    • Yenndo
    • Lolbit
    • Ennard
    • Minireenas
    • Bibybabs

    Five Nights at Freddy’s Sister location is available on Steam and also on Apple and Android mobile devices. Additionally, you can play the online version here at CrazyGames.

    Freddy Fazbear’s Pizzeria Simulator

    Freddy Fazbear’s Pizzeria Simulator

    If you enjoy business simulation games and are a fan of the FNaF series you will love Freddy Fazbear’s Pizzeria Simulator! This game you must manage the creepy pizzeria and take care of every aspect of its daily running. To start with you must play the 8-bit mini game in which you throw pizzas at your customers! Once you have done this, you must turn your attentions to management and attempt to make the pizzeria more appealing. You must also still manage the security and try to keep the rogue animatronic robots at bay and away from your customers. In this title, you will encounter the following animatronic robots:

    • Springtrap
    • Molten Freddy
    • Scrap Baby
    • Lefty

    Freddy Fazbear’s Pizzeria brings a refreshing change to the FNaF series and is available to play on Steam, Android. Furthermore, you can play the online version through CrazyGames.

    FNaF World

    FNaF World

    This is the first Five Nights at Freddy’s series that doesn’t follow the usual point-and-click horror format. FNaF World is actually an RPG title in which you must control Freddy and his animatronic friends and battle against evil robots and creatures. Just like other RPG titles, FNaF World allows you to upgrade your characters, perform a range of different attacks and enjoy a fun storyline. There are 30 different characters to unlock taken from episodes 1-4 of the Five Nights at Freddy’s series. Why not give this fun RPG title a try on CrazyGames?

    Fan Made Five Night’s at Freddy’s Titles

    Due to the immense popularity of the Five Nights at Freddy’s series there has been a myriad of fan-made creations. One notable game is the popular Five Nights at Candy’s – this title has many similarities to the original and uses similar mechanics. There are many other titles, and you can check out our full Five Nights at Freddy’s collection here – have fun facing Freddy and his army of animatronic robots!

    Other Media

    Five Nights at Freddy’s is one of the few independent games franchise that has evolved into other forms of media. Aside from the host of browser games, Five Nights at Freddy’s also has a range of publications including novels, comics, cartoons and guides. FNaF fans have the opportunity to truly immerse themselves in this series.

    In recent years a film adaptation of the series has been announced and it is reported to be written and directed by Chris Columbus. If this is true, we can expect exciting things from the FNaF film as Columbus has directed such movies as Home Alone and Harry Potter. Can you imagine how scary and epic a Five Nights at Freddy’s film would be?

  • The Positive and Negative Effects of Video Games on Children

    Parents may often wonder several things pertaining to allowing their children to play video games. Not simply the effects of certain kinds of video games, but whether or not video games as a whole, even educational games, are really so positive. And how young is “too young” for gadgets, anyway? Shouldn’t children be outside, playing hopscotch and riding bicycles in the sun?

    In this article, we will discuss not only the positives and negatives of video games effects on cognitive development, but scenarios where it may not be so black and white. The most important topics we’ll touch on are:

    • At what age should children be introduced to video games?
    • What positive effects of video games have been proven through study?
    • How can parents bond with their children through video games?
    • What are the negative effects of video games proven through study?
    • What are some top-rated games that offer benefits to your child?

    One thing to remember is that no two children are the same – anecdotally speaking, I had a Super Nintendo as early as 5 years old. I also discovered the dictionary around this age, and spent many hours reading books of my own free will. I spent an equal amount of time between video games, reading books, and playing outside, on my own, so my mother never needed to “limit” or monitor my game time.

    “No two kids are the same, I had a Super Nintendo as early as 5 years old.”

    This isn’t an opinion piece, I just want to put my opinion out there before we dive into all the research and studies I’m able to gather – I think, if a child becomes addicted to gadgets, it may simply be due to a lack of alternatives that capture their interests. For me, it was books – I had a Super Nintendo and Sony PlayStation growing up, but absolutely loved reading books. For your child, it could be painting, or playing an instrument, or any other number of activities that a child may take interest in once exposed to them. As parents, I think it’s our role (and yes, I have two children of my own) to not simply tell them “you should be outside instead of playing video games”, but to try and expose them to alternative hobbies so they can make the transition themselves.

    Enough about my personal opinion – let’s see what the studies have to say about whether or not video games are good for children, from all angles and considerations.


    How Young is Too Young?

    We’ve all seen “mommy posts” on Facebook, sharing how their 1-year-old already knows how to slide the cellphone screen open. It’s both amazing and horrifying, that this little person can’t walk yet, but remembers how to manipulate gadgets. It’s mimicry behavior, really – which is a good reason to consider how often we use our devices around our children in the first place. My almost-2-year-old daughter learned quite early to grin and make funny faces for selfies, to the point I was worried she would grow up to be a Selfie Queen. My 6-month-old son, on the other hand, still thinks the cellphone is for his mouth, not his hands.

    Because there are so many educational games and apps for children today, many parents are comfortable giving their children free, unlimited access to smartphones and tablets.

    Child with smartphone

    A study by the Singapore NIE (National Institute of Education) had researchers visit the homes of 60 children in the pre-school age range, to observe their device usage habits. What they discovered was:

    • 65% of the children learned how to use gadgets before the age of three.
    • 95% of the children played video games, with half of them playing educational games.
    • Only 30% of the parents had any limitations on device usage time for their children.
    • 85% of the parents felt their children benefited from gadget use, saying their children were more “IT-savvy”.

    That final point is what requires strong consideration – many parents feel that, because we are living in a high-tech world, children should be exposed as early as possible to tech gadgets, to give them a head-start. The idea certainly has its merits; on the other hand, what the researchers noted, however, was that it tends to lead to situations like this (click to see youtube video):

    (Baby crying for cellphone)

    So one the one hand, we want our children to be smarter and transition easily into the modern world – on the other hand, children have virtually no self-control, and cannot really monitor their own gadget time. And then we get into the problem of gadget addiction, because smartphones offer instant gratification.

    So to answer the main question here, it really depends on the emotional maturity of your child. Expert opinions vary on this topic – some say wait until your child is over 7 years old, others say there’s no such thing as “too young”, it just boils down to parental monitoring. If you don’t want your child to become addicted to gadgets, don’t allow them unlimited access to gadgets, but also offer them plenty of alternative activities so they don’t feel dependent on gadgets for their fun.

    “ 65% of the children learned how to use gadgets before the age of three”

    What are the positive benefits of video games on children?

    There’s a wide range of positive benefits that video games can offer children, which I’ll make a list of. Some are obvious, some not so. I want to throw something out there, however – we need to consider how the “skills” acquired from video games may actually transition into real life. For example, I am super stoked that my daughter can “paint” on my phone, using her imagination to fill in the colors on children’s painting apps.

    I suffer no pretense, however, that this means she knows how to hold an actual paint brush, or stay inside the lines with a real crayon. A child may learn how to play “Twinkle Twinkle Little Star” on a virtual piano, and have no clue what to do with a real piano. The hand placement and muscle coordination is completely different. I think the skills acquired from video game simulations need to be complemented with the real thing, for the benefits to really matter. Just something to consider.

    But again, enough of my personal observations – let’s see what the studies have to say about the benefits of video games to child development.

    Logic and problem solving – This is one of the most obvious benefits, or at least the most often cited. Puzzle games require concentration and creativity to solve, and thus expand your child’s capacity for working through problems. There’s absolutely no difference in playing Chess on a board or on a computer screen, as far as developing logic skills.

    Hand-Eye Coordination and Motor Skills – Again, another obvious. There’s a reason that certain professions, like plane pilots and brain surgeons, are benefitting from computer-based training simulations. Of course, we’re talking about very realistic, advanced simulations, not “Tap the Keyboard!” on an iPhone. Still, video games do enhance motor skills and spatial awareness. Research conducted by the University of California showed that children who possessed low spatial skills benefitted significantly from video game practice.

    Video games can encourage perseverance – Something not so obvious to think about is the fact that video games can teach children about not giving up or quitting. A child may need to attempt to solve a level several times before succeeding. This can teach them about initial failure and the joy of success. I think this is a concept that needs to be reinforced by the parent, however, or else the child may not grasp the lesson entirely by themselves.

    Hippocampal-Associated Memory – The hippocampal is a part of the brain that plays a major role in memory – more specifically, memory for facts, places, stimuli, etc. Researchers from the University of California discovered that complex video games positively stimulate and benefit hippocampal-associated memory. The emphasis here is on “complex” video games, in a 3D environment with many controls / buttons – simple, 2D based games, such as Angry Birds, did not show the same benefits.

    Faster Decision Making – A study from the University of Rochester discovered that players of action-based games can make decisions up to 25% faster than non-gamers, with no loss in accuracy. Basically, the brain is constantly processing information and weighing probabilities on how to react in a situation – the average person can make up to 4 decisions per second, whereas someone who regularly plays fast, action-based games can make up to 6 decisions per second. In visual and auditory based tests, the gamers answered questions correctly at a 25% faster rate than their non-gamer peers.

    Physical exertion and exercise – This is largely dependent on a certain kind of games category – games that depend on motion-detection. Devices like the Xbox 360 Kinect utilize motion-tracking technology, which means your child participates in the video game using their entire body. A study from the University of Tennessee at Knoxville showed that children actually obtained more exercise from these types of video games, than they did from playing in a jungle gym outside.

    Improved Eyesight – Never would’ve guessed this, would you? Yes, the old myth that being glued to a television screen, or sitting too close to a screen, may somehow hurt a child’s eyesight is simply that – a myth. It comes from the 1960s, when General Electric sold a color TV that emitted harmful amounts of radiation – and almost immediately recalled every unit. Almost 40 years later, and somehow this myth still persists. The opposite is actually true, in fact. Researchers from McMaster University found that playing video games improved eyesight in test subject, giving them enhanced ability to track movement, light patterns, and small details.

    Better Parental Bonding – One larger benefit of video games for children is if you can actually sit down and play with them. Many parents may take a passive interest in their children’s video games, to monitor if the games are age-appropriate, but you can really do some quality bonding if you pick up a controller and sit next to them. Have no idea how to play the game? Let your child explain it to you. A study by the Arizona State University pointed out the numerous benefits to gaming with your children, and mentioned that “parents are missing out on a huge opportunity by walking away from video games”.

    Video games promote social behavior – We’re living in an age where kids can play online games with hundreds of others online. Of course, parents should worry about who their children are communicating with online. But if your child is playing on a Minecraft or League of Legends server, take comfort that they’re building competitive and social skills by being in communication with other players. In fact, Scot Osterweil, creative director for MIT’s Education Arcade, which promotes gaming in educational scenarios, made this valid point:

    “Which child is more at risk for antisocial behavior? The one who spends six hours rambunctiously playing video games with friends, or the one who spends six hours alone in their room practicing the violin?”


    On Playing Video Games with Your Children

    I want to dedicate a section of this article to playing video games with your children, because I feel it’s of vast importance to connect with your children in activities they enjoy. Consumer Reports has an excellent article titled “How to Play Video Games With Your Kids”, but I want to lend my own perspective as a self-professed gamer and parent of two.

    Growing up, I was definitely a book and computer nerd – my father was a mechanic and spent many hours in the garage. I knew almost nothing about cars, and he knew almost nothing about computers. We had very little to bond over - until we had a Sony Playstation in the house, around 1999. Suddenly, we discovered car racing games together – and he actually bought steering wheels for us to use while playing. This led to a kind of father/son bonding we never really had before.

    I realize that video games can hold absolutely no interest for some parents – especially parents who work long hours. It’s incredibly difficult to come home from the office, cook dinner, make sure everyone has done their homework, and squeeze in a few rounds of Mario Kart. We have to at least make the effort though.
    Here are some tips that can help you better bond with your children through video games:

    Choose games that are fun – It doesn’t always have to be educational games. You’re going to get bored really fast if you’re trying to bond over some “Math Made Fun for Preschoolers” app. Choose something fast-paced, or competitive. Even a board game that’s been adapted to a 3D console – I used to play Monopoly on the Super Nintendo with my mother and older sister.

    Set a game night – As I said earlier, it can be really difficult for parents to find time in their schedule to sit down and play video games with your children. Try to plan it ahead of time. Make Wednesday nights family video game time, for example.

    Sprinkle in parental wisdom – You can play video games with your children and still find ways to sprinkle in parental wisdom. Are they getting frustrated at a difficult level? Hey son, we win some and we lose some. They don’t have enough coins to buy the best sword in the game? Well son, that’s the nature of capitalist economics.

    Take interest in the video game storylines – If you have older children who are playing games with lots of character dialogue and cut-scenes, recognize that some of these video games can actually be more like interactive movies. Your child is presented with situations and moral dilemmas, and very often, your child’s actions in the game can alter the game’s storyline throughout gameplay. Try to recognize that your teenager isn’t just mindlessly shooting people in Grand Theft Auto – he’s playing the role of Michael, a career-criminal who wants to pull off one last bank heist, to secure the future of his family. As a parent, by recognizing these nuances, you can use it as an opportunity to discuss life choices and grey-area morality.

    Play together, Stay together.

    What are the negative effects of video games on children?

    Before we get into this list, it’s important to remember that the majority of negative effects video games can have on children are a result of over-exposure. You are much more likely to notice these negative effects if your child has unlimited access to video games, and is spending 8 hours per day in front of the Xbox. So don’t take anything on this list as “These things will happen if your child plays video games”, but rather, “These things could happen if your child plays video games for an absurd amount of time every day”.

    Overstimulation of the Sensory System – Video games can create states of hyper-arousal, which gamers know as “being in the zone”. This is when the world completely becomes shut out around us, and attention is 100% focused on the gameplay, for extended periods of time. While this state enhances concentration and can lead to world-record breaking game scores, research by Rowan found that repeated and intense over-stimulation can negatively affect neurological development. It could even worsen nervous tics in children with Tourette’s Syndrome, or other anxiety disorders. This is highly contextual, however. Your child would need to be playing very intense, fast-paced games with lots of bright, flashing colors for extended periods, for this problem to crop up.

    Sleep Disturbance – There is a correlation between bright screen exposure (artificial blue light, to be more specific) and sleep disturbance. A study by Harvard University found that exposure to artificial blue light, as projected by electronic screens, suppresses the hormone melatonin, which helps regulate our sleep. This has become somewhat mainstream knowledge, and there are a number of apps available for smartphone screens that reduce blue light emission.

    Time Distortion – This isn’t necessarily unique to gamers; it happens to anyone who focuses intensely on a singular activity. Basically, you lose track of time during periods of intense concentration. This means it’s easier for your child to forget to do their homework or take out the garbage during game sessions. Again, this happens to anyone, not just gamers – give me a good book, and my afternoon is gone.

    Mood Dysregulation – A combination of sensory overload and lack of good sleep can have a serious effect on mood regulation. A child who plays video games well past a proper bedtime, and then doesn’t get a good night’s sleep, is definitely going to be cranky and irritable the following day.

    Again, all of these negative side-effects are really the result of overexposure. It’s up to parents to monitor and limit their child’s gadget usage time to a reasonable amount. It’s also important to remember that tolerance level may be different per child, but if you really need some kind of guideline to go by, a study by Oxford University shows that the ideal limit for children between the ages of 10 – 15 is around 1 to 2 hours daily of video game time. After the 2 hour mark, the benefits that video games have on cognitive development begin to taper off, and the negative side effects creep in.

    1
    Did you know? - Children who play videogames can make correct decisions up to 25% faster.

    So What Video Games Should My Children Play?

    I’m going to make a few recommendations based on the highest-rated educational games out there, but it’s important to remember that perhaps you shouldn’t just limit your child exclusively to “educational” games. Yes, your child can learn math skills through math-focused games (like the games from 7 Generation Games), but they could also learn problem-solving skills from something as “mindless” as Angry Birds. So try not to immediately write off games simply because they’re not in the “Educational” category.

    PBS Kids games PBS Kids games [Multiple device support] – PBS develops a bunch of apps for a number of platforms (Android, iOS, web browser, etc) - some are free, some are paid. But really, you can’t go wrong with some of the selections from PBS, considering they’ve been the largest broadcaster of educational television shows for a long time.

    Spelling Game Spelling Game [Android] - Developed by EduBuzzKids, this is a completely free game that focuses on spelling (if you didn’t guess from the title). It has various modes of difficulty, and a large amount of word categories (Food, Animals, Vehicles, Shapes & Colors, etc).

    Math Training for Kids Math Training for Kids [Android] - Rated for children 3+, this game covers all the basics of addition, subtraction, multiplication, and division, with child-friendly graphics. It is completely free and highly rated.

    Explorium Explorium: Ocean for Kids and Explorium: Space for Kids [Android and iOS]: These games allow your child to explore the ocean or space, and are suitable for 3+. They actually have nicely rendered graphics, and will teach your child all kinds of fun facts about marine life and the solar system. The full versions are paid, but you can download free trial versions to see if your child enjoys them.

    Yum-Yum Yum-Yum Letters [iOS] – This is a writing/tracing game that teaches your child how to write and trace letters on the screen. It has multiple teaching methods, themes, and fonts to choose from.

    Planetarium 2 Planetarium 2 [Multiple devices] – Available for Android, iOS, and web browser, Planetarium 2 allows your child to explore and interact with the solar system in highly detailed 3D graphics. It’s rated for 3+, but it contains a lot of really in-depth features that could fascinate older children, even teenagers.

    Maze Planet 3D Maze Planet 3D [Multiple devices] – This is a complex maze game where you must rotate a cube to navigate a ball through the maze corridors. It’s not only great for planning and problem solving, but spatial awareness.

    The Room The Room [Multiple devices] – An exceptionally fun puzzle-based, hidden-object game. This is really a great game for memory, concentration, and awareness, as your child will need to carefully look for hidden clues and put them together to move onto the next stage.

    Piano Tiles 2 Piano Tiles 2 [Multiple devices] – This isn’t a piano simulator – you need to quickly tap tiles (notes) as they fly across the screen, with the tiles appearing in order of the rhythm of the song being played. It’s kind of a difficult concept to put into words, but it’s a fantastic game for training reaction time, and also exposing your child to a huge variety of classical and modern piano music (which has its own benefits on the brain).

    Uno Online Uno Online [Web browser] – The classic card game Uno is wonderful for teaching children color and pattern recognition, basic arithmetic, and strategy planning. By playing online against other players, they’ll also develop competitive spirit, which is certainly healthy for children.

    Roblox Roblox [Multiple devices] – Roblox is a massively multiplayer online game that is enjoyed most by children in the 10+ age range. Its focus is on developing minigames with the Roblox tools, or playing minigames created by other uses. It’s a wonderful game for children who have any interest in developing games, computers, etc. There are also options for parents to limit or disable chatting in Roblox, so you don’t need to worry about your child having inappropriate conversations with strangers.

  • A libgdx journey with HTML5

    Written by Michel Gerard.

    Disclaimer : I’m not a technical expert. I’m a self-taught curious guy whose dream was to make games. I do all by myself : code, graphics and music. And this is my first time at writing an article, so be kind :)

    HTML5 + libgdx

    From flash to libgdx

    I started making flash games back in the days (2009) and then progressively switched to mobile games using the libgdx framework. I found Actionscript 3 and Java quite similar so the transition was really smooth. OpenGL and rendering stuff was a bit tough in the beginning but at the end, I was able to port some of my flash games to IOS and Android (10 Bullets, 10 More Bullets, Boomerang Chang,…)

    From libgdx to HTML5

    Lately, I wanted to give a try to the libgdx HTML5 export. So here is what I had to do to make the HTML5 port of an existing libgdx Android game, Boomerang Chang :

    Boomerang Chang on HTML5

    Play the game : Boomerang Chang

    The process

    The idea behind the whole process was like : keep it simple, avoid the problems, and make it work !

    Here are the steps I went through :

    1. Make it compile via GWT.
    2. Launch the game on a local server
    3. Adapt for desktop vs mobile
    4. Leaderboard
    5. Loading bar
    6. Google analytics
    7. Go full screen
    8. Prevent special keys input
    9. Sounds

    1. Make it compile via GWT.

    GWT is the tool integrated in libgdx that will compile your Java code to Javascript, making your game playable in any browser.

    Build successful

    To get rid of problems and compiling errors I encountered, here is what I did :

    1. I adapted to my package structure and add the main packages to the
      list of modules in the myGdxGame.gwt.xml file so that GWT can find
      your source code. In my case I have 2 main packages in the core
      : app (with the current game code) and pp (with the reusable
      code) :

      enter image description
here

      In myGdxGame.gwt.xml :

      <module>         
          <source path="com/crazygames/boomerangchang" />         
          <source path="app" />         
          <source path="pp" />     
      </module>
      
    2. I didn’t use any IDE GWT plugin. I compiled from the comand line : ./gradlew html:dist To do that : open a terminal, navigate to the root folder of your project and write the command ./gradlew html:dist on mac, gradlew html:dist on windows

    3. I skipped some Java classes I was using (e.g. java.text.DecimalFormat)
    4. I didn’t use relfection.
    5. I didn’t bother too much with the debugging or superdev mode. I test the game on desktop and when it works, I compile it.
    6. Quick note though : this GWT compilation is a really slow process (5 to 10 minutes)!
    7. When it succeeds, you will find your game in the folder : myRootFolder/html/build/dist . The index.html is actually the webpage that contains your game and all the assets. File structure - Final build

    2. Launch your game on a local server

    To easily deploy on my machine via localhost, i used the very useful node.js module « serve ». I installed it via the command npm install -g serve (details on the module installation)

    Then, to launch your game, I go to the « dist » folder via the terminal and type the command serve. I can now open a brower at the address http://localhost:5000 and see the game running !

    Run your game on localhost

    3. Adapt for desktop vs mobile

    The main power of HTML5 games is that they are playable everywhere, on desktop or mobile devices. There is thus some work to do to best fit each « platform ».

    Boomerang Chang has been developped for mobile first, so it is a « 2 buttons game » that matches the simple left/right screen tap input of a mobile device. You can thus only jump or shoot to the right. On the desktop version, inputs are up and right arrows.

    Control selection

    So, here is what I did :

    1. Add an control selection screen at the start of the game.
    2. Add the keyboard control.
    3. Adapt in-game messages accordingly (« press up arrow » vs « tap left »). Those are simple if else statements at various places in the code.

    In this era of big competition, a small marketing effort is necessary :) So you have to maximize your cross-selling tactics, and show your players the way to your Facebook, Twitter, and the like.
    The game over screen is a good place to put those links :

    Links and cross-selling

    To avoid those url links to be blocked from the browsers, the code that opens the url must be directly binded to the user input. So, to make it work, I had to refactor the way some of my ingame buttons worked.

    I have used the libgdx InputProcessor to catch the touchUp events. Then, I looped through all my url navigation buttons, and if their hitbox contains the coordinates of the touchUp event, I call an doOpenTheUrl function :

    private native void doOpenTheUrl(String s) /*-{
        $wnd.open(s, "_blank", "");
    }-*/;
    

    This Java function is using JSNI. JSNI allow you to direcly call javascript functions from inside your Java code. Very powerful.

    Basically, the $wnd refers to your main « window » in javascript. Then the .open() is basic javascript code that open the link in a new tab.

    5. Custom Leaderboard (JSNI + json + PHP)

    This was the big part.

    For the Android version, I used Google Play Games Services. Everything worked out of the box, scores, achievements, etc.
    For the HTML5 version, I decided to use my own leaderboard system (as I did in the flash version of the game) because I find it more flexible and also more enjoyable to develop.

    So, the back-end consists of simple web services written in PHP and plugged to a MySQL database. It can save scores and retrieve them via JSON.

    Here is how I made the calls :

    String url = "http://www.yoursite.com/yourApi/yourServiceName" ;
    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, url);
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");
    StringBuilder sb = new StringBuilder();
    
    sb.append("yourFirstParameterKey").append("=").append("yourFirstParameterValue").append("&");
    sb.append("yourSecondParameterKey").append("=").append("yourSecondParameterValue") ;
    
    try {
    
        Request request = builder.sendRequest(sb.toString(), new RequestCallback() {
    
            @Override
            public void onResponseReceived(Request request, Response response) {
    
                if (200 == response.getStatusCode()) {
                    onResultDoRefreshTheScores(JsonUtils.<JsArray<ScoreData>>safeEval(response.getText())) ;
                }
            }
    
            @Override
            public void onError(Request request, Throwable exception) {
    
                // handle errors here
    
            }});
    
        }catch (RequestException e) {
    
            // handle exceptions here
    
        }
    
    }
    

    That call will trigger the Ajax and call the function onResultDoRefreshTheScores when it receives data back from the back-end.

    private void onResultDoRefreshTheScores(JsArray<ScoreData> scores){
    
        LeaderboardScore score ;
        ScoreData data ;
        ArrayList<LeaderboardScore> aScores ;
        aScores = new ArrayList<LeaderboardScore>() ;
    
        for(int i=0;i<scores.length();i++){
    
            data = scores.get(i);
            score = data.getLeaderboardScoreObject() ;
            aScores.add(score);
    
        }
    
        // refresh the UI
        Game.panelLeaderboard().refreshWithScores(aScores);
    
    }
    

    Then, I also have to use a class to format the data and build my LeaderboardScore java object based on the JSON coming back from the server. See more info on JSON with GWT .

    This is the structure of the score coming back from the server in json :

    [{
        "nickname":"GUEST",
        "rank":0,
        "ago":"6 hours ago",
        "score":33,
        "country":"US"
    },
    {
        "nickname":"GUEST",
        "rank":1,
        "ago":"7 hours ago",
        "score":26,
        "country":"US"
    }]
    

    So, to handle the json, i have an intermediate class ScoreData that can make the mapping to the Java object « LeaderboardScore » that I need to fill the leaderboard in the user interface.

    public class ScoreData extends JavaScriptObject {
    
        protected ScoreData() {}
    
            public static int rank, score ;
            public static String nickname, ago, country ;
    
            // JSNI methods to get score data.
            public final native int getRank() /*-{ return this.rank; }-*/;
            public final native String getNickname() /*-{ return this.nickname; }-*/;
            public final native int getScore() /*-{ return this.score; }-*/;
            public final native String getAgo() /*-{ return this.ago; }-*/; //
            public final native String getCountry() /*-{ return this.country; }-*/;
    
            public final LeaderboardScore     getLeaderboardScoreObject(){
                return new LeaderboardScore(getRank(), getNickname(), getScore(), getAgo(), getCountry()) ;
            }
        }
    }
    
    public class LeaderboardScore {
    
        public int rank, score ;
        public String nickname, ago, country ;
    
        public LeaderboardScore(int rank, String nickname, int score, String ago, String country){
    
            this.rank = rank ;
            this.nickname = nickname ;
            this.score = score ;
            this.ago = ago ;
            this.country = country ;
    
        }
    }
    

    Then, i can inject that array of LeaderboardScore in the UI :

    Leaderboard UI

    6. Custom loading bar

    When you launch your game in the browser, you should see the default loading bar with a libgdx logo on top. To put the crazygames logo there, I simply went to myRootFolder/html/build/dist/html and erase the « logo.png » with the new crazygames logo.png. The loading bar size will automatic adapt to your image size.

    CrazyGames logo

    7. Google analytics - Knowledge is power.

    One of the big difference between the flash version and the HTML5 version of Boomerang Chang is the addition of a tutorial phase.

    We wanted to be sure the players understand the game mechanic before they give up too early. So I added some Google Analytics (GA) events at strategic places of the tutorial phase.

    With all those events in place, I was able to see that more than 80% of players completed the tutorial (which was far better than expected)

    Google Analytics

    The events placed at the completion of each tutorial step can give you that kind of insight.

    Technically, I also had to queue the events and dispatch them at interval because I guess there is minimum amount of time necessary between each call to the GA API. So I stored the events in a temporary array and then, each half-second I dequeued one event to send it to GA :

    In java / JSNI :

    // exemple code to send an event at the completion of a tutorial step
    
    private void onTutoStepComplete(){
    
        trackEvent("TUTO_STEP_COMPLETE", "STEP_1_JUMPING (3/3)") ;
    
    }
    
    private native void trackEvent(String category, String action) /*-{
    
        $wnd._gaq.push(['_trackEvent', category, action]);
    
    }-*/;
    

    The GA javascript code on index.html :

    var _gaq = _gaq || [];
    
    _gaq.push(['_setAccount', 'UA-xxxxxxx-x']);
    _gaq.push(['_trackPageview']);
    
    (function() {
    
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')\[0\]; s.parentNode.insertBefore(ga, s);
    
    })();
    

    For that to work, you need of course to setup a google analytics account and a new property for a website.

    Fairly simple !

    8. Going full screen - Great user experience

    To make a big impact, your game would better go full screen. That really is an easy step, you just have to uncomment the pre-backed code that libgdx gives you by default in your HtmlLauncher.java.

    9.Prevent special keys to affect the web page that hosts your game.

    The problem was that pressing the arrow keys when playing the game would scroll the webpage that contains the game. The solution was thus to catch those keyboard events in javascript and stop them before could propagate to the web page.

    To do that, i found some useful javascript code and added it the the index.html (located in : myRootFolder/html/build/dist):

    window.onkeypress =
        function(event) {
            // prevent the space key (page scroll down)
            if(event.keyCode == 32){
                event.preventDefault();
                return false;
            }
        };
    
    window.onkeydown =
        function(event) {
            // prevent all navigation keys except the space key
            if(event.keyCode >= 33 && event.keyCode <= 40){
                event.preventDefault();
                return false;
            }
        };
    

    9. Sounds

    For the desktop browsers, everything was working perfectly out-of-the-box.

    On mobile devices, it is another story…
    I still have work and experiment to do as I have not been able to play smooth sounds on mobile devices.
    I was able to play sounds, but only one at a time, and there was a delay making it look laggy… I guess there is something to do with the libgdx assets manager or something to configure in the soundmanager2.js .

    Also, to avoid the sounds being blocked on mobile devices, I needed to bind the play of the first sound directly to a user interaction. What I did was catching the Javascript « tap » input event to call an initGwt function in the Java code that plays a white sound. That allowed access and avoid the sounds to be blocked :

    In javascript, (in index.html) :

    document.getElementById('embed-html').addEventListener('touchstart', handleTouchStart, false);
    
    var isFirstClick = true ;
    
    function handleTouchStart(evt) {
        if(isFirstClick){
            isFirstClick = false ;
            window.initGwt();
        }  
    }
    

    In java :

    // in some init phase :
    
    public static native void doPrepareForMobileDevice()/*-{
    
        $wnd.initGwt = @pp.manager.PPSound::doPrepareForMobileDevice();
    
    }-*/;
    
    
    // in my sound manager
    
    public static void doPrepareForMobileDevice() {
    
        FX_WHITE_SOUND.play() ;
    
    }
    

    As being said, this allows one sound at a time to be played, only on some mobile device, and in a laggy way… Not really what I was going for… So for the time being, there is no sound in the mobile version.

    And voila, our journey stops here :)

    Conclusion

    We got our nice little Boomerang Chang HTML5 game working. The whole process took me a little 2 weeks and I’m really happy with result, the performance and the new opportunities offered by HTML5 I wasn’t aware of. Even if HTML5 is not the main focus of libgdx, I really think it was worth trying. And I’m now planning to port my others games to HTML5 !

    I hope this article can help some of you guys and maybe encourage you to try out the libgdx HTML5 export. Because the magic of seeing your game playing in the web browser in real…

  • Super-guide to Educational Games

    Parents tend to worry about the kind of media their children are exposed to - that’s why it can be difficult finding educational games your child will actually enjoy. For the most part, children are far more interested in the mindless repetition of games like Angry Birds, or games with lots of explosions and on-screen action, rather than anything “educational”.

    For that reason, we’ve hunted through all of the available child-friendly apps with educational value, and paid particular attention to the reviews from other users - it’s not enough for a game to have educational value, it must actually engage your child and keep their interest for the educational elements to have any effect. Thus, all of the games on this list were highly reviewed and recommended, not only for their educational value, but their fun gameplay as well.

    One thing that is important for us as parents to remember, is that not all games must have an immediately recognizable element of learning. That is to say, we shouldn’t limit ourselves to only games that deal in math, spelling, or science - video games of all kinds can certainly enhance a child’s motor skills and hand-eye coordination. Sometimes we need to think outside of the box. But that doesn’t mean we’ll be recommending Grand Theft Auto on this list, it’s just something to bear in mind.

    The list has been separated into categories of platform

    • Browser / Web games that can be played on the computer
    • Android games for Android phones / tablets
    • iOS games for iPads / iPhones.

    All of the apps presented are suitable for ages 6 - 12, though older children and even adults may enjoy some of the titles we’ve put together.

    Why Introduce Your Children to Brain Games

    • …when digital games were compared to other instruction conditions without digital games, there was a moderate to strong effect in favor of digital games in terms of broad cognitive competencies. (Source: SRI Education | GlassLab Research)

    • 47% of struggling students benefited from educational video games in a study held by the Joan Ganz Cooney Center (Source: GamesandLearning.org | “Teachers on Using Games in Class”)

    • …schools that were active and highly active on Prodigy saw a 3.0% and 11.6% improvement on grade 3 EQAO scores… (Source: ProdigyGame.com | Can Game Based Learning Increase EQAO Math Scores?)

    • …game-based learning may be effective in improving short-term retention, leading to higher scores in post-tests administered shortly after the game. (Source: IAFOR | The Effect of Game-Based Learning on Science 10 Test Scores)

    Browser / Web Games

    Monopoly

    Monopoly
    The classic board game offers more brain-training benefits than we might immediately realize. Because the accumulation and spending of money is an integral part of Monopoly, it’s an excellent opportunity to teach your child about saving and budgeting. They’ll also learn about adapting to random elements, such as paying unexpected bills, or going directly to Jail and not collecting $200. It’s an excellent game for learning cognitive abilities for handling life itself, which is worth just as much as spelling and mathematics training!

    Link: http://www.crazygames.com/game/monopoly

    Hackers vs Robots

    Hackers vs Robots
    This is an action-packed typing game, which will certainly improve your child’s hand-eye coordination and typing speed. In Hackers vs Robots, enemy robots will approach the screen, and your child must type words as quickly as possible. Completing words will launch missiles at the robots, which is quite satisfying, especially as the 3D graphics are quite good for a browser game.

    Link: https://www.crazygames.com/game/hacker-vs-robots

    Spelling Gaps

    Spelling Gaps

    Spelling Gaps is both a memory and spelling trainer - words will display briefly on the screen, then disappear, and your child must spell the word correctly from memory. Their score will be based on how quickly they submit the words, so it’s excellent for training their speed-thinking abilities as well.

    Link: https://www.crazygames.com/game/spelling-gaps

    Uno Online

    UNO
    Uno is a classic card game that will teach children how to strategize and adapt to new situations. If you’re not familiar with Uno, its basically a 4-player card game. Each player starts with a random assortment of cards, and must take turns adding to the pile, until one player has gotten rid of all their cards. There are surprise elements, such as cards that will skip the person next to you, force another player to draw cards from the pile, or reverse the order of players.

    Link: https://www.crazygames.com/game/uno-online

    Make Me 10

    Make Me 10

    This is a fun but challenging mathematical puzzle game. A number is displayed on the screen, and you must pair together other numbers from an available pool, in order to add up to the number that was originally displayed. There’s a bit of strategy involved, as you can save numbers from the pool for later use, but in a limited way. Thus, your child will learn basic mathematics, but also patience and strategy.

    Link: https://www.crazygames.com/game/make-me-10

    Dory’s Memory Game


    Dory’s Memory Game is a pair-matching game, where your child can click the bubbles to reveal character’s from Disney’s Finding Dory. Pair-matching games such as this will improve your child’s concentration, short-term memory, and quick-thinking abilities.

    Link: http://www.crazygames.com/game/dorys-memory-game

    Android Games

    Math vs Zombies

    Math vs Zombies

    Math doesn’t have to be boring (unless your child actually enjoys math) - Math vs Zombies is a fun action-adventure game where your child can solve math problems to fend off swarming zombies. The game levels cover basic math categories such as addition, subtraction, multiplication, and division.

    Link: https://play.google.com/store/apps/details?id=com.imstudio.zombie

    Tynker


    Tynker is an excellent app / game for introducing your child to the wonderful world of programming. It has won multiple awards, such as Parents’ Choice Gold Award, and Academics’ Choice Award. Your child will learn step-by-step coding tutorials in an easy, child-friendly way, solving puzzles and minigames to help them remember the lessons. The app includes over 50+ templates for your child to apply their new knowledge to creating their own games. It is literally the perfect app for any child who has ever said “I want to make my own games!”.

    Link: https://www.tynker.com/

    Lego Juniors Build & Drive

    Math vs Zombies
    This is an official Lego game that lets your child use their imagination to build vehicles such as cars and helicopters, and test them in various mini-games. As they unlock new Lego pieces through gameplay, they can create even more advanced vehicles, or test and edit pre-built vehicles from real Lego kits. It’s a great game for enhancing your child’s imagination and engineering skills.

    Link: https://play.google.com/store/apps/details?id=com.lego.bricksmore

    Roblox

    Roblox

    Roblox is a combination social platform and game launcher. Basically, users can create their own worlds and games using the available tools, and submit them to the Roblox portal, where other users can play those creations. Its an incredible concept with over 1.7 million users, and your child will have hours of fun customizing their avatar, and either playing in other user’s virtual creations, or designing their own. However, as with any app that features online social interaction, it would be wise to monitor your child - but of course, you could play alongside them on another device, creating the perfect world together!

    Link: https://www.roblox.com/

    My Craft Survival

    This is a free version of the popular game Minecraft, with many of the same gameplay features. Your child can roam a large world, collecting tools to aid in their survival. Creatures come out at night, so your child must farm, fish, and build a shelter during the day. They can also play in pure creative mode with no dangers, and focus completely on building their dream world. Its an excellent game for enhancing creativity, and your child will love showing off their creations to you.

    Link: https://play.google.com/store/apps/details?id=com.MyCraft.MineWorld

    Math Run

    This is a cute running game, similar to titles such as Temple Run or Subway Surfer, but your child will solve math problems to avoid obstacles on the course. It will test your child’s reflexes and enhance their quick-thinking abilities, and they can unlock new characters and levels throughout gameplay. The math questions are aligned to US Common Core State Standards for grades Kindergarten to Grade 5, so it’s especially useful if your child has any math tests around the corner.

    Link: https://play.google.com/store/apps/details?id=com.babycortex.google.mathRun&hl=en

    Spelling Master

    Improve your child’s memory and spelling abilities with several minigames in Spelling Master - they’ll be asked to choose the correct spellings, choose the incorrect spellings, spell words from memory that briefly flash on the screen, and other fun game modes. Their score depends on speed of answering questions, so surely their quick-thinking will be increased as well.

    Link: https://play.google.com/store/apps/details?id=air.com.littlebigplay.games.spellingmaster&hl=en

    Dropwords


    This is a fun word-finding puzzle game, a bit of a cross between Scrabble and Bejeweled. The screen will be filled with letter tiles, and your child must chain the tiles together to create words. There are several modes of gameplay such as Normal, Hard, Lightning, Blocker, Relax, and Untimed - which all effect scoring and timer. The game includes two dictionaries, the Scrabble dictionary and Webster’s, so it’s great for young children and adults alike.

    Link: https://play.google.com/store/apps/details?id=com.eekgames.worddrop&hl=en

    Science Experiment Fun


    This is a fun science-experiment simulator, where your child can learn about different chemistry and physics experiments using house-hold items (on the screen, of course). It’s all the fun of mixing vinegar and baking soda, without any of the mess to clean up. It’s a great learning tool for introducing your child to easy and advanced science experiments.

    Link: https://play.google.com/store/apps/details?id=com.gemgame.scienceexpinlab&hl=en

    iOS Games

    Maths Castle

    This fun game is set in the style of the tower defence genre - waves of enemies will try to swarm your castle, but instead of building defences to kill the enemies, your child must solve math problems. There’s 3 modes of difficulty, so your child can either practice their mathematics in a relaxed way, or try to solve equations as quickly as possible to prevent their castle from being overrun.

    Link: https://itunes.apple.com/us/app/math-castle-arithmetic-fun/id1124150309?mt=8

    Study Package Chemistry

    An interactive study course that will cover a good variety of Science subjects such as matter, particle theory, solutions and mixtures, atoms and molecules, and the periodic table. There’s a good number of experiments and questions for your child to answer along the way, and it’s all presented in an easily digestable way for your child to follow along.

    Link: https://itunes.apple.com/au/app/study-package-chemistry/id517432507?mt=8

    Stephen Hawkings Snapshots of the Universe

    This app is suitable for older children with an interest in space and the universe, although younger children may have fun with some of the interactive experiments. The app is jam-packed with information about subjects such as gravity, black holes, Einstein’s theory of relativity, and other topics relevant to the universe around us. The cartoon-drawn images, animations, and interactive experiments will certainly appeal to both younger and older children alike.

    Link: https://itunes.apple.com/au/app/stephen-hawkings-snapshots/id714306520?mt=8

    Pettson’s Inventions

    This is a type of puzzle game that teaches your child about physics and engineering - numerous objects will be presented on the screen, and your child must combine them properly to complete the inventions, such as pulley devices and automated water wells. It’s a fun app that challenges your child’s thinking and problem-solving abilities, as they’ll try to figure out where all the pieces fit together.

    Link: https://itunes.apple.com/au/app/pettsons-inventions/id524685220?mt=8

    Write to Read

    An excellent app for creating story books and encouraging your child’s reading and writing abilities. They can create stories entirely from scratch, and even use photographs from the phone, or pictures from the app, to put together their story. Your child can even verbally dictate their story instead of writing it, to create a read-aloud story they will love sharing with you. The interface is very intuitive and easy to use for your child, and they’ll be creating their own fairy-tales and adventure stories in no time at all.

    Link: https://itunes.apple.com/au/app/write-to-read/id590707197?mt=8

    Find the Synonym

    An excellent game for improving your child’s vocabulary, Find the Synonym is fairly self-explanatory from the title. Your child is shown a word, and they must find a synonym for that word - the twist here is that it’s slightly like Scrabble, where your child does not choose from a list of available words and must pick the correct synonym, but rather they must spell out the word from the Scrabble tiles. Thus, its a perfect game for an older child in the 9 to 12 age range who wants to expand their vocabulary.

    Link: https://itunes.apple.com/au/app/find-the-synonym/id524309587?mt=8

    Zen Bound 2

    A visually beautiful game with 3D graphics, Zen Bound 2 lets your child solve 3D puzzles by way of manipulating a rope around the objects presented. It’s a difficult concept to explain, but basically, your child must wrap a rope around the 3D objects, and their score is based on how much surface area the rope covers. It’s a great game for developing spatial awareness, and its certainly relaxing.

    Link: https://itunes.apple.com/au/app/zen-bound-2-universal/id363308208?mt=8

    GarageBand

    If your child is musically inclined, they are certain to love GarageBand. It’s a music creation app that lets your child choose from a large selection of virtual instruments, and play them on the screen. They can record multiple instruments to put together entire songs, and while the app is incredibly easy to use even for a 5 year old, an adult will find it quite advanced once you dig into all the options.

    Link: https://itunes.apple.com/au/app/garageband/id408709785?mt=8

  • Welcome to the CrazyGames Blog!

    Welcome

    The goal of this blog is to give you a view behind the scenes of CrazyGames and browser gaming. We will write about browser games and browser games development and marketing. Occasionally we might also write about other things, such as our tech stack!

    Expect our first real posts soon!

    In the meantime, go play some crazy games :)