The Botanist

The Botanist is a 2D fantasy RPG intended for release on multiple platforms, including web, Android and iOS. The game features an immersive universe with deep supporting mythology and lore; a relative rarity among mobile games.

The Botanist Game

Beta releases in early 2016.



The Botanist Blog

This blog will feature progress updates and lessons learned from the game's development. While there are many technical game dev blogs, we also intend to share our creative process and we hope you can learn from both our successes and mistakes.


  • Saving and Loading Game State in PhaserJS

    Many games require only simple saving and loading functionality. Perhaps all you need to save about a player is what level they’re up to and their high score — in which case you don’t need an article like this.

  • Optimizing PhaserJS for Giant Maps with Lots of Collisions

    The Botanist is all about huge maps and lots of environment — especially giant, sprawling forests with tons of trees. Unfortunately, stage loading performance has been terrible for my larger maps, so I decided to dive in and figure out the issue. As a reward, I received a 1,500x decrease in my stage loading time with PhaserJS. I’m excited about this, so I’d like to share the solution with you all.

  • Tuning PhaserJS Performance

    Performance is important to The Botanist. I don’t love premature optimization, but it’s important to understand the performance bottlenecks of the game on various platforms and in various browsers from an early stage, lest they become insurmountable issues later.

  • Character and NPC Dialogue in PhaserJS

    All RPGs need good dialogue to support a good story. Dialogue, of course, has a few shapes. The player must be able to interact with NPCs, the NPCs should be able to interact with each other, and there should be a healthy amount of background chatter. This article describes how The Botanist’s player/NPC interaction works.

  • Mobile-Efficient Camera Follow in PhaserJS

    I’ve been using PhaserJS for the development of The Botanist. Phaser has been generally great to work with, is rapid to develop on top of, and has excellent performance on desktop. Phaser is also a mobile-conscious framework, and I do often get 60FPS on my Nexus 5’s Chrome browser.

  • Designing a Basic RPG Battle System

    Other than the story itself, battle is the most important part of The Botanist. Now that I’ve got basic maps and movement working, I decided to spend some time on developing the core of the battle system. A game can be fun to play test with just maps and battling, so building this system has a nice side effect of making the rest of the development process even more fun!

  • Death and Killing — Overriding Phaser's kill() Method

    This week’s effort was spent on basic battle mechanics (amongst many, many other things). I learned how to use Phaser to kill things and figured out targeting, attacking, and basic speech bubbles. This post concentrates on attacking and killing sprites.

  • Rapid Prototyping with Phaser.js, OpenGameArt, and LPC Character Generator

    My first week of prototyping The Botanist has been productive and swift! I’ve got basic maps rendering, character sprites walking around, basic input for desktop and mobile, and a decent file structure and build system.

  • The Botanist: Introduction and Key Features

    The Botanist is a 2D fantasy RPG intended for release on multiple platforms, including web, Android and iOS. The game features an immersive universe with deep supporting mythology and lore; a relative rarity among mobile games.

  • Motivation for a Year-Long Side Project

    It’s too easy to get caught up in life and forget to be ambitious. For the last several years, I’ve spent my holidays building small and quick side projects – projects that are easily digestible, easily executable, not ambitious, and primarily intended as practice. Happily and fortuitously, several of these have been popular successes (and many have not), but I’d like to try a different approach in 2015. I’d like to build something big and ambitious, work with my friends, and have a long term goal to look forward to.

subscribe via RSS