Monthly Archives: January 2018

Combine Growth into Existing Habits

When you are learning something new, it often helps if you can pair it with something that you already do or like, you are more likely to be successful.

For example, I am trying to learn Thai.

I try to journal every morning and now when I am done, I write letters in the Thai alphabet several times to learn them. I added it as a couple minute habit of writing on the tail of an existing habit of writing.

Thai is a tonal language so being able to hear the up and down pitch on sounds is important. Throughout the day I tend to have various game streams running on twitch while i work as background noise and entertainment. Today as I was looking at various streamers I noticed some familiar looking non Roman alphabet letters as the title of one of the streams.

It was Thai, so I started watching. I was only able to understand a couple of basic words like “No” and some numbers, but this is something I am more likely to continue watching and using as a learning tool because it is attached to something else that I already like and do.

Keep getting wiser, stronger, and better.

Random Map Generation

You want people to enjoy playing your game multiple times.

You don’t want your game to become stale and boring where what happens next is super predictable or the steps to beat your opponent are scripted. Sure you want strategy, but you want the strategy to have to be adaptable.

In multiplayer games, often the opponents unpredictability will keep your game feeling like a fresh experience every play through. But sometimes you want to spice it up just a little bit more, so you add in some randomness.

Map Randomness

Today I was continuing my journey in Unreal Engine development and the particular tutorial I was watching was creating a random map for the turn based strategy game.

There are several ways of generating a random dungeon or map for your game with rooms and corridors but today I want to talk about a simple couple of methods called Quad Trees and Binary Space Provisioning (BSP).

Quad Trees and BSP are basically the same idea.

In Quad Trees you take a rectangular area and divide it into 4 randomly sized smaller rectangles. You then take each of the 4 smaller rectangles and divide them into 4 randomly sized smaller rectangles. Keep going until you have rectangles about the size that you want.

For Binary Space Provisioning you do the exact same thing except you only divide each space into 2 smaller rectangles at a time. You then divide each of those 2 smaller rectangles into 2 more rectangles. Again, keep going until you have rectangles about the size that you want.

You can then use whatever rules you want to choose which of the rectangles you created become rooms by limiting size, combining rectangles, keeping rooms a certain distance apart, etc.

After that come up with some ways to connect the rooms either directly or indirectly. And voila, you have a random map.

Keep getting wiser, stronger, and better.

A Magical Win

One of the non-digital games I enjoy quite a bit is a card game called Magic the Gathering. The 10 Things Every Game Needs checklist I use is actually from one of the designers for that game, Mark Rosewater.

I don’t get to play that often simply because it takes a lot of time. One match usually lasts 30 min to an hour and you typically play 3-4 matches in a given sitting. If you are doing any sort of deck building, add 30 min to an hour to that. Basically you are looking at a 4-5 hour investment if you are playing any sort of organized event, at minimum. There are bigger events such as Grand Prixs that take multiple 8-10 hour days.

Yesterday I went undefeated in a prerelease event for their most recent set, Rivals of Ixalan. I have never been undefeated outside of a couple home games with some friends and it felt really good.

Prerelease events are typically a format called Sealed, where you get 6 sealed booster packs and use those to construct the deck you will be playing with. I like formats like this for 2 reasons. First, I do not play often so I don’t collect cards to build a deck with to bring and use. Second, having the sealed pools introduces an extra skill to the game and introduces extra randomness to the game.

Extra skill and extra randomness is weird because extra skill means that the more skillful person is likely to win, but extra randomness means that the lower skill person has a little higher chance.

The extra skill comes in deck building with a limited set of cards in a limited time frame. Being able to make a playable deck is not super hard, but making a competitive playable deck is. Not only that, but you often have 2 or more decks that could be made that look roughly the same as far as how good they will perform.

The extra randomness comes from having a random set of cards. The different abilities on the cards mean that you could end up with very few that do powerful things or you could have a set rich with power. If a good player gets a weak set, they are often going to lose some games to players that aren’t as good but have a strong set.

However if you look at the top players at events around the world, when they play these formats with higher randomness they still end up coming out on top pretty consistently. This tells me that the extra randomness does not balance out the skill, which is good.

If you want any sort of competitive game, make sure that any randomness that you have does not overpower skill overtime.

Keep getting wiser, stronger, and better.

Two Types of Games

Last year I watched a TED talk by Simon Sinek on Game Theory

The primary concept of the talk that really stuck with me is that there are 2 types of games and it is important to understand which kind of game you are in.

Finite Games

A Finite Game is one that has clearly defined rules so you can determine winners and losers. It also has clearly defined players. Once the game starts, you typically do not have any players joining. And at some point the game will end and based on the rules we can determine who a winner is.

Most games that we play are designed to be Finite Games. But most companies that design games want them to be playable for as long as possible.

Infinite Games

An Infinite Game does not have clearly defined rules. Players can leave and join at any time. The point of an Infinite Game is to keep playing it as long as you can. No one ever “wins” an Infinite Game because there is no end to it. As long as you can keep playing, you are doing well.

Business is an Infinite Game, new players can join and leave at any time. There is no winner in business. The point of a business is to stay in business and to keep generating enough resources to stay in business as long as possible.

Companies may design video games to be Finite inside of the primary game play loop, but I think most of them want the games to actually be Infinite Games from a larger perspective. They want people to keep playing them as long as possible. Something to think about when you are designing your games.

Make sure you know what kind of game your are in so you know how to play.

Keep getting wiser, stronger, and better.

What Makes Battle Royale Compelling?

Probably the most successful game of 2017 was Player Unknown’s Battlegrounds or PUBG as it is commonly called. Following its success, other games were quick to add battle royale, or last man standing, modes of their own. Now PUBG was not the first battle royale style game. In fact the game’s namesake seems to have been the lead on a couple other attempts at the same thing such as a mod for Arma III and the H1Z1 battle royale mode.

Today I want to look at a couple of reasons that I think these style of games are interesting to play, and to play again and again.

Its a Suspense

There is a lot of downtime in the game, especially around the middle. Most of the players who have landed near each other have fought and now it is positioning and looting. You are running around picking up armor, weapons, and ammo.

But at any point, BLAM, you could run into another player and be fighting it out to the death. So even though there might be lulls in the action, you always have to be on edge. A good suspense is all about keeping you on that edge. Lots of close calls.

There is also a need to use your hearing to detect enemy movement. Was that somebody else’s foot step or mine? I hear them loading a shotgun!

Its a Story

Every time you jump in, its a new story.

It could be a bad beat story where you dropped next to some guy, he got a rifle and you got a smoke grenade and guess what, you are back in the lobby.

It could be a story of dropping in the middle of nowhere, finding some low quality loot like a SMG and level 1 armor but through stealth and cunning you find your way in the top ten with a chance at a chicken dinner.

It could be a story of you and your squad mates battling through, picking each other up, sharing gear, communicating enemy positions and sharing the thrill together.

It could be a story of joining a random squad and getting run over by your foreign language speaking team (I am looking at you Chinese players in loud Internet cafes).

Whatever your story is, it is different almost every time. And good or bad, it is usually got some interesting or exciting element to it that makes it shareable.

This is just some things to think about for replayableness if you are looking for things that keep players coming back to your game.

Keep getting wiser, stronger, and better.

p.s. If you haven’t tried a battle royale style game, Epic’s Fortnite battle royale mode is free to play.

Foxhole: A War Simulation Game

Last year I stumbled across a game just as it released on Steam through one of the streamers I occasionally watch on Twitch.
That game was Foxhole and it is awesome.

Quick Summary

Foxhole is a war simulation from a kind of isometric top down perspective. It is an extremely team focused game that ranges from 20 vs 20 to 70 vs 70 games (possibly more in the future). Every weapon, tool, defensive structure, vehicle and round of ammo in the game is created by players (except the pistol and hammer you spawn with). The game is set in a separate world from ours but uses technology from the World War 2 ish era with a conflict of the Wardens vs the Colonials.

You play a single soldier on one side of a conflict in a war that can last anywhere from several days to several weeks. You get to choose your role and what you do for your team whether that is logistics creating and transporting resources, combat engineer building defenses on the front and advancing your lines, scout locating and probing enemy defenses, partisan causing havoc behind enemy lines, front line grunt smashing against enemy defenses to push them back, or any other job you can come up with.

The game goes on until one side captures all of the towns on a map. The campaign is won when one team wins all of the maps.

The Production Cycle

There are 4 basic resources in the game: scrap, components, fuel, and sulfur. There is an additional resource that you get randomly and is used to tech up called tech parts.

Scrap can be gathered with the basic hammer that you spawn with. It turns into Basic Materials, or bmats in game shorthand, and is what the war runs on. You can build quite a lot from the basic materials from rifle and grenades to trucks and pillboxes.

Fuel is what all the vehicles run on. No fuel in your truck, your stuck. This can also be gathered with the basic hammer.

Components require a sledge hammer which requires a little teching up. They turn into Refined Materials, or rmats, and are used to make more advanced vehicles and structures, think tanks and pillboxes that are harder to destroy.

Sulfur is used to create Explosive Material, or emats. This lets you create more advanced ammunition such as artillery, mortar, and tank shells. Because the weapons it makes are more powerful, it is slower to gather so use wisely.

Each of these resources gets mined from a resource node then has to be transported to a refinery (except fuel) to become its useful version. Good luck getting it there without a truck. If your character has too much in his backpack he becomes encumbered and moves super slow. If you get fully encumbered, your character will collapse to the ground after a short sprint and need to recover.

Combat

You do not have a health bar. Individual soldiers are pretty fragile. A couple of rifle shots and you are on the ground either dead or dying. There is some visual indication of damage, if you are close to dying your character will be bloodied up. Also you can be in a bleeding state where little spurts of red come from your character. This means you should find a medic soon or apply a bandage if you have one.

There are 2 main things you fight in Foxhole, other players and static defenses.

The primary static defense is a foxhole (where the game gets its name). Defenses will shoot at you if you come into their visual range. However there are 4 ways of keeping yourself from dying in the meat grinder as you clear them out.

If you are with a squad of players, most defenses can be suppressed. By keeping up a steady stream of fire, either from an automatic weapon or several semi-auto weapons, the defenses rate of fire will drop down to almost zero. Then you run up and throw grenades at it.

If you are alone, you can throw a smoke grenade to obscure the vision of the defense. This will keep it from seeing your and firing at you as you lob your grenades at it.

Another option is long range artillery. Usually a mortar. Using binoculars to find the range and direction of the target, you set your mortar and fire, safely behind your own defenses.

One of the more fun options is using combat vehicles, especially tanks, to roll up and blow holes in the enemy defensive line. Careful though as there are anti-vehicle turrets that will turn your tank into swiss cheese as well as anti-tank mines that can leave you with a busted engine. Always bring some infantry support to scout ahead for you.

Recent Updates

An update this past fall brought water vehicles and features to the game. You can now stage your own D-Day style landings with a swarm of amphibious troop transports or bombard enemy defenses from your gunboat. You can even swim a short distance.

A training ground was added for people to jump in and experiment with movement, building, etc, without impacting the war effort of a team.

Even more recently there have been changes to scouting, watchtowers, and radios with more updates to come.

The development team has been listening closely to the community for feedback on features and improvements and it shows. Catch one of their streams every other Tuesday on Twitch to find out more.

Caveats, Warnings, and Other Thoughts

This game requires some patience. It is designed to last multiple days or weeks. Ten to twenty minutes is not going to do much. Try for longer play sessions.

While there are roles you can perform playing as a solo that will help your team, you will not get much done by your self. It is specifically designed to be a team game and require cooperation for success.

It is best if you can find a group of at least 3-4 people, preferably on a regular basis, to make a bigger impact on the war.

This game is still technically in Alpha/Early Release. It has bugs and is unfinished. But like I mentioned before, the dev team is working hard and listening to community feedback. Also, it plays really well.

The whole cooperation for success aspect of the design is one of the things that makes this game stand out, along with the massive size of the teams. For example, you can’t do much with a tank by yourself. You need at least a driver and a gunner and it is even better when you have a commander sticking out the hatch with binoculars doing some spotting and a group of infantry keeping enemy soldiers with grenades from attacking you from the flank.

I love this game and hope it continues to be successful.

Keep getting wiser, stronger, and better.

Win Bigly: A Review

We as human beings like to think of each of us is rational most of the time. But what if we aren’t?

In Win Bigly, Scott Adams takes you through how persuasion works and why we make decisions. His primary example throughout the book is the largely unexpected win of Donald Trump in the recent election. But if Scott is to be believed, he was pretty certain Trump would win from the get.

The book is a great read and has tons of value in it. I will just briefly talk about some of the points I found both memorable and interesting.

Techniques that Stuck

The whole book is fascinating, as well as each of the persuasion tools. But some of them stuck out and lodged in my brain.

Anchoring: starting off with an extreme or unreasonable request. If you want negotiations to land on your side of the middle, start with a valuation strongly in your favor. This will influence people to believe that the middle is closer to your anchor value. One of the reasons this tool stood out is I had heard of it before. It is a negotiating tool I learned about in Never Split the Difference, a great read on how to become a better negotiator.

High Ground Maneuver: when you take a problem out of the details and generalize it to something everyone agrees on, you both take away specific targets and make people who want to take it back down to the details look petty. The example in the book was how Steve Jobs handled a problem with the iPhone 4.

If you don’t remember, there was a problem where when you held the phone in a specific way (the way most people held the phone) you ended up covering the cell antenna with your thumb and it would drop calls. Did Jobs come out and apologize? No way. He came out and said that all phones have problem and they wanted to keep there customers happy. The High Ground Maneuver. One of the reasons this stuck is because it seems practical in daily disagreements and debates.

Two Ways to Win, No Way to Lose: if you can come up with a strategy that has positive outcomes whether it succeeds or fails, you can persuade people to use that strategy. Who doesn’t want to do things that only have upside? One of the reasons this stuck with me is a key to success is having this mindset about almost everything. If you “fail” at a job or a business, you still win because you learned.

Interesting Bits

The following list is of other parts of the book that I found thought provoking and entertaining:

  • Cognitive Dissonance and Confirmation Bias
  • Hypnotism
  • The Persuasion Stack
  • How to tell if you are living in a simulation

Further Reading

If you want more information from scholarly sources on whether or not people are rational and how they are persuaded, you might try Predictably Irrational by Dan Ariely or perhaps Robert Cialdini’s books Influence and Pre-Suasion.

Keep getting wiser, stronger, and better.

Dipping My Toes Into UE4

Today I began working in Unreal Engine 4. I am following along a tutorial that was linked from the Unreal Engine launcher about making a turn based game.

The video seems a little fast paced and I have had to pause it frequently to follow along. Part of this is because I am working on one monitor and need to switch windows. The other part is I am familiarizing myself with how to use the interface. It is fairly intuitive but I did have to Google how to perform some actions.

The blueprint system for programming is actually pretty cool. Super powerful for people who have never written code by hand before.

Reducing Draw Calls

In this particular tutorial the instructor is using Instanced Static Meshes for floor tiles to reduce draw calls. One of my goals when I get to making games more full time is to have a good many of them be playable on average hardware so optimizations like this interest me.

I did a little research and as far as I can tell there are a lot of optimizations that can be used to cut down on the graphic work such as LODs (Level of Detail), Occlusion, and a few others.

When it comes to Static Mesh vs Instance Static Mesh there are a couple trade offs. If all the objects being drawn are on the screen, Instance Static Meshes win hands down. However, if just one of the meshes in the Instance Static Mesh group are on the screen they all get drawn. Because of this it is better to use Instance Static Meshes for piles of things that are likely to be drawn on the screen at once, like a pile of gems.

Looking forward to learning more about this powerful engine.

Keep getting wiser, stronger, and better.

Money Follows Responsibility

If you are looking to increase your income, increase your responsibility.

What money really follows is the value that your leave behind. The best way to leave more value behind in your job is to take on more responsibility. When you take on more responsibility, you are taking on more risk. But with the risk comes the reward.

Many people let fear of the risk keep them poor. They are unwilling to become responsible for the success or failure of a project, so they remain poor. They think they deserve a raise without creating more value. But as Jim Rohn said, “You can’t get rich by demand.” You have to climb.

The ultimate responsibility is when you are the head of the company. If the business fails, it does you no good to point fingers. You are responsible, you are the leader, you have to figure out how to fix it.

This is an empowering attitude. It says that I may be to blame if things go wrong, but I have the power to change them, to make them go right, to succeed.

If you are at a job and you want to get paid more, start looking around for more responsibility to take on.

Warning: the money doesn’t necessarily follow immediately, be patient.

For other tips for how to get ahead in your job and do better, I can whole heartedly recommend The Complete Software Developer’s Career Guide.

Keep getting wiser, stronger, and better.

Quadrant Theory: Where Do You Spend Your Time?

If you have ever looked into time management, you have probably stumbled across the quadrant theory. The theory goes something like this.

Everything you can spend your time on can be classified as Important or Not Important. It can also be classified as Urgent or Not Urgent. Using these two distinctions, you can create four areas that you spend your time. This is usually illustrated with a box divided into four quadrants, which is where the theory gets its name.

Q1: Urgent and Important

If it is Urgent meaning there are consequences for not getting it done very soon, it often gets taken care of pretty quickly. If you don’t take care of problems in this quadrant you will start running into major problems in your life. Things like paying rent on time, turning in work assignments on time.

You absolutely need to take care of everything that falls into this category.

Q3: Urgent and Not Important

A lot of things in this category get mistaken to be in Q1. Interruptions in your day that bring no values such as unexpected phone calls from people trying to sell you things you don’t need, being interrupted to be asked a question which should have been asked of somebody else, or meetings that are useless all fall into Q3. Often these kinds of activity are why top executives have administrative staff to gatekeep for them. They realize that this category can be delegated and is a waste of time.

Q4: Not Urgent and Not Important

This quadrant has a lot of our favorite activities in it. Watching TV, playing games, and other leisure activities that bring no real value. Escapism is the word that encompasses these things. There is a place for those activities in your life, for rest and relaxation, but it should be kept small.

A lot of other time wasters are in this category as well including spam email, a lot of social media posts, and busy work that we do to keep from doing the real work that needs to be done.

Remember, this stuff is not important and not urgent. Time in this quadrant should be kept to a minimum or creatively turned into something that falls into ….

Q2: Important and Not Urgent

This is where a lot of the value and progress in your life will come from. Things like planning, relationship building, building automated systems, exercise, meditation, journaling, working on that side project or business all fall into quadrant 2.

Most of these things are not urgent, but doing them can keep other things from becoming urgent and create tons of value in your life. If you are creative you can mix some of the Q4 leisure activities into your Q2 activities.

Because they are not urgent, it takes discipline to work on quadrant 2 activities. Make sure you set aside time everyday for quadrant 2 activities.

Don’t spend major time on minor things.

Keep getting wiser, stronger, and better.