High Hand Hold'em™

Overview

High Hand Hold'em™ is a 2D Poker-style card game for iOS/Android. I was the lead engineering on this game, implementing all logic for procedural deal generation, scorekeeping, and statistics, all UI layouts and state machines, all integration with backend frameworks for configuration, logging, ad mediation, and auth, and the associated CI/CD Pipeline, support repo, and promotional site/newsletter (see the Derploid site). I also contributed heavily to the game's overall design, evaluated alternative technologies for key functionality, and led multiple playtesting campaigns.

While the game has been a passion project for my business partner and I for several years, we do mean to publicly release it in Q2 2024 as the first game of our new studio: Derploid® Entertainment.

Development

Development of High Hand Hold'em™ began in June 2017, after I attended my first social with the Cleveland Game Developers (CGD) meetup group and met my future business partner, Matt Samardge. Matt and I hit things off at that first meetup, and he suggested that we collaborate on a game. We agreed to start small, and opted for a mobile game to reach the widest market. I had always wanted to make a fully formed playing card game (after trying to make Euchre on my TI-84 calculator back in high school!) and Matt already had designs for a Poker-style card game called High Hand Hold'em on his phone. We agreed to build this game with Matt doing all of the visual/sound design, and me doing all of the technical engine and programming work.

From that point on, development of HHH essentially proceeded in chunks: for a few months, Matt and I would both be focused and knock out lots of bugs and feature work, then a few months would pass where neither of us did much of anything because we were distracted with other projects or life. While I was often embarrassed that development of such a simple game was taking so long, such is the nature of part time, independent game development with a team of only two!

The periods of (in)activity were essentially as follows...

Initial Development

July 2017 - June 2018

  • Much of those initial weeks was spent setting up our new "business". We registered our company, Derploid® Entertainment, LLC, with the state of Ohio, set up accounts with Google, AWS, Apple, etc., and started fleshing out our designs and making initial project files.
  • By late September 2017, we already had a functional prototype of the game. I had ~2 years of experience with the Unity Engine when we started, so we opted to use that engine for this game.
  • The prototype was ready just in time to exhibit at the 2017 Game Developer Expo (GDEX) in Columbus. Neither Matt nor I had ever been to GDEX, but we wanted to make a strong first impression by showing off our game, so we exhibited High Hand Hold'em™ at the CGD booth. This was a minimum viable product in the truest sense, but the game already featured the core mechanic of tapping the better Poker Hand to earn points before a timer runs out. Our game certainly paled in comparison to some of the other games from CGD and throughout GDEX, but we got a lot of positive, constructive feedback from people who saw the potential of a straightforward, casual game to teach the basics of Poker or hone one's ability to recognize the hands.
  • After a short break after GDEX 2017 in October, I got back to work in November, cleaning up my code and overall architecture.
  • I added some over-engineered logic to control the various "light shows" happening around the screen to give it that Vegas casino feel (most of this logic was later replaced with Unity Mecanim animations).
  • I added a SQLite data layer to persist game state between sessions (later replaced with simple JSON files).
  • We got some help with the initial UI layout (HHH is built almost completely with Unity UI) from the lead designer/engineer of the console party game, BOMBFEST.
  • We also prepared a showing for the CGD "Playtest Night" on June 29, 2018.

Questioning and Apathy

June 2018 - December 2018

  • This was the period where I most strongly considered stopping work on HHH due to feelings of apathy.
  • I had split a lot of logic in HHH between C# code and "visual scripts" so they would be more approachable for Matt, but this just made everything confusing, inconsistent, and not very "fun" to work on. Matt was feeling this way as well.
  • I had put together a test level for another passion game project of mine (codename Skelia) for the playtest night and really wanted to continue building that game, not HHH.
  • I also started work at Rakuten OverDrive in late October 2018, which changed my schedule a bit, and my wife had a miscarriage in November.
  • All of these factors made me consider quitting HHH to work on other projects, but Matt and I ultimately both concluded that it was better to continue until we had something officially published; this mindset has stuck with us for years since!

Refreshed Improvements

December 2018 - August 2019

  • Began using Unity Cloud Build (now Unity Build Automation) to generate automated builds with each code push, greatly improving our ability to playtest on physical devices.
  • Combined project files from several different repositories into a combined private GitHub repo, and started using GitHub Issues to track bugs and feature ideas.
  • Overhauled the Poker dealing logic multiple times to improve performance and generate more of the possible deals, while keeping keeping certain settings (like max value or suit) adjustable from the Unity Inspector for Matt, since he would be deciding the "difficulty progression of deals". Writing and unit testing this code was always tedious.
  • Matt and I also went through multiple iterations on the "game flow", tweaking the positioning of hands and how cards were accentuated once chosen.

Layoff and GDEX 2019

August 2019 - November 2019

⬤⬤ Pushing to Versioned Releases

November 2019 - May 2020

  • This was my most active period of HHH development to date. Being without a job for two months certainly gave me more time for gamedev (I finally started at Summit Racing Equipment in late January 2020), as did the world shutting down due to the COVID-19 pandemic.
  • I created our first "versioned" build of the game (v0.1.0) in December 2019 and tested uploading it to the Google Play Console and App Store Connect.
  • v0.2.0 followed shortly thereafter in January 2020, which added an initial app icon, Options menu, and interstitial ads (powered by Unity Ads) after every 3rd game over.
  • Starting in April 2020, I was very diligent about updating the Derploid Twitter account (@DerploidCo), tweeting gameplay GIFs/screenshots every week or two.

Farmageddon, Booper, and GDEX 2021

May 2020 - November 2021

  • During this time, I became heavily involved with Solidplasma Studio's game, Farmageddon: A Cattle Royale.
  • As lead backend developer on Farmageddon, the game regularly took my attention away from HHH. I was completely distracted by it until its beta release in mid 2020.
  • During a subsequent lull in July 2020, Matt and I launched v0.3.0, of HHH, which included many additions since 0.2.0, including the support repo for release notes and player feedback, vibrations, additional animations and "juiciness" in the game flow, rewarded ads for continuing after a wrong choice, a placeholder Privacy Policy and Terms of Use with mechanism for communicating updates, additional statistics besides high score, and much more.
  • After an all-online GDEX in October 2020, Matt and I also started working with the founder of Loading Law on trademarking "Derploid Entertainment" and "High Hand Hold'em". The former would eventually be registered in October 2022 while the latter was found to be too "descriptive" to trademark.
  • Late 2020 was more productive for HHH as Farmageddon work slowed. Matt and I launched v0.4.0 of HHH in February 2021, which saw the addition of a placeholder tutorial, migration from Unity Ads to Appodeal for ad mediation, additional "announcer callout" audio, and more.
  • Starting in March, Farmageddon again took up most of my free time. I migrated my hard-coded Lambda Functions from the previous summer to an actual repository with AWS SAM for testing locally and CloudFormation templates for Infrastructure as Code. I also implemented the backend for several key gameplay features, including bosses, in-app purchasing, player stats/leaderboards, and client versioning.
  • Farmageddon's public Steam release was July 24, 2021, but I was doing additional feature work and bug fixes all the way to November.
  • Throughout early 2021, Matt and I did put together a "paper test" for a new HHH tutorial. I conducted this test with several family members, which taught us a lot (both about the tutorial and about paper testing!).
  • I did some brief optimization and scripting work in early 2021 on Booper Get Home, a VR game built by a friend in the Cleveland Game Developers.
  • In August 2021, I started a new job working remotely for Behavioral Health Link, a health care company based out of Atlanta, GA.
  • I prepared two more talks for GDEX in October 2021: Singletons: You're Doing Them Wrong and Advanced Gameplay Programming: If Statements

Procedural Dealing Overhaul

November 2021 - July 2022

  • HHH work picked up a little over the winter, mostly updating dependencies after the long hiatus.
  • In December 2021, I briefly implemented the ability to run the entire Farmageddon backend locally so that the game could be shown off at Super MAGFest 2022 without internet access.
  • In February 2022, I started a new backend developer role on the Prime Gaming team at Amazon. Their core hours were Pacific Time, which created a pretty large change in my schedule.
  • For most of this period, I made another massive overhaul to HHH's procedural dealing system. Designing, implementing, unit testing, and "fuzz" testing this logic was quite laborious. After this update, the system only needed to know how many board cards and hand cards to deal; it would guarantee a random Poker deal of random rank each time. This was probably the most important feature we ever implemented: guaranteeing that players would regularly see the rare Poker ranks like Full House and Straight Flush, without Matt or I having to hard-code specific instances of these ranks.
  • I added logic to perform the relatively slow deals on a background thread a couple rounds "in advance" to keep things snappy, and made the dealing logic less "truly" random so that, e.g., the player wouldn't see 10 flushes in a row.
  • From May-July, I was mostly working on building a promotional website for the game. This became a fully fledged static website built with Jekyll and Bootstrap CSS and hosted on GitHub Pages, with newsletter forms built through Sendinblue (now Brevo), and key infrastructure like AWS CloudWatch alarms and DNS records defined in a CDK app.

Farmageddon and Riff Raff

July 2022 - January 2023

  • During this period, I was once again pulled into Farmageddon work. There were some concerns around scaling the game, so I designed and began implementing a migration from our previous Amazon S3 storage system to DynamoDB.
  • In October 2022, my family moved to a new home. I also got deeply involved in a week-long Prime Gaming hackathon.
  • I also worked with a small team created by the founder of Solidplasma Studios (with whom I was working on Farmageddon). He had an idea for a competitive rhythm game called Riff Raff and I initially joined as an engineer, setting up the Unity project and creating some of the initial input and musical key change logic. However, when it became clear that I would be the lead engineer working without pay, I respectfully declined further involvement. Riff Raff did use some shared code from HHH though, which gave me a chance to improve it.

⬤⬤ Free From Other Projects

January 2023 - May 2023

  • In late 2022, I had more time for HHH work as the Farmageddon storage migration project stalled. It was clearly becoming more effort than it was worth, given the game's low player count.
  • Matt and I released v0.5.0 of HHH in February 2023, nearly two years since 0.4! This release brought a lot of updates though, including my overhauled procedural dealing logic, "accuracy" statistics, ability to reset statistics, data consent opt-out, and much more.
  • My wife's sister also passed away in January, leaving behind 5 children with no legal father. Starting in February, we began applying for permanent placement, a laborious and emotionally draining process that is still on-going as of this writing in November 2023.
  • In March, I respectfully left both the Farmageddon and Riff Raff projects, citing my desire to focus back on High Hand Hold'em™.

GDEX 2023 and Job Hunting

May 2023 - November 2023

  • From May to June 2023, I was mostly preparing my two talks for GDEX 2023: Live Demo: Building an Interactive Enemy and Making Mobile Ads Less Awful. For the former, I had to build an entire 2D side-scrolling space shooter with Unity!
  • After GDEX 2023, I did some brief feature/bug work, but was forced to shift priorities in late August as Amazon announced a company-wide "Return to Office" policy, with strong indications that virtual employees like myself would soon be included. I took the news as an opportunity to build this portfolio website (something I had long wanted to do). This took most of September, with follow-up work throughout late 2023.
  • I also started actively job hunting in early September due to the uncertainty over Amazon's RTO policy. As of this writing in November, I have had a couple promising leads, but no offers yet, so HHH will probably stay on the back burner until I do.