<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>JONMIKEYS</title><link>https://blog.jonmikeys.com/</link><description>Recent content on JONMIKEYS</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 21 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.jonmikeys.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Part 1: What Tactical Terrain Actually Means</title><link>https://blog.jonmikeys.com/posts/what-tactical-terrain-actually-means/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/what-tactical-terrain-actually-means/</guid><description>Tactical terrain analysis is the practice of asking what the map makes possible.
A hill, wall, chokepoint, or dark corner is not automatically useful. It becomes useful when it changes movement, visibility, or risk. That is why terrain analysis matters: it turns the map into data that an AI can evaluate.
The basic question The core question is simple:
Which parts of this map give one side an advantage?
That question is more useful than a hand-authored list of “important” spots.</description></item><item><title>Part 2: When Waypoints Learn About Visibility</title><link>https://blog.jonmikeys.com/posts/when-waypoints-learn-about-visibility/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/when-waypoints-learn-about-visibility/</guid><description>A waypoint graph is useful for movement. It becomes more valuable when it also models exposure.
If each node knows what it can see, the graph can answer tactical questions, not just pathfinding questions.
Visibility is the tactical signal Visibility tells you several things at once:
whether a position is exposed whether it provides cover whether it is good for attacking from whether a route is safe to travel whether the position is likely to attract return fire That makes visibility one of the strongest signals in tactical AI.</description></item><item><title>Part 3: Influence Maps: Turning the Fight Into a Heatmap</title><link>https://blog.jonmikeys.com/posts/influence-maps-turning-the-fight-into-a-heatmap/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/influence-maps-turning-the-fight-into-a-heatmap/</guid><description>Visibility tells you whether a place can be seen.
Influence maps tell you how much pressure exists there.
That difference matters. A position can be visible without being dangerous, and dangerous without being fully visible. Influence maps help estimate the shape of the fight instead of only the geometry of the map.
What an influence map is An influence map is a grid layered over the terrain. Each cell stores a value that represents power, danger, control, or importance.</description></item><item><title>Part 4: Spatial Databases for Tactical AI</title><link>https://blog.jonmikeys.com/posts/spatial-databases-for-tactical-ai/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/spatial-databases-for-tactical-ai/</guid><description>A single tactical score is easy to compute and hard to trust.
A layered spatial database is easier to debug because each layer answers one question.
Why layers matter A tactical AI usually needs more than one kind of spatial information.
One layer can describe visibility. Another can describe cover. Another can describe occupancy or line of fire. Keeping those signals separate makes the system easier to reason about.
That is the main idea behind the spatial database in the lecture: represent the map as a stack of tactical views.</description></item><item><title>Part 5: A Practical Tactical Awareness System, Starting Small</title><link>https://blog.jonmikeys.com/posts/practical-tactical-awareness-system-starting-small/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/practical-tactical-awareness-system-starting-small/</guid><description>A tactical awareness system should start small.
The first version does not need to model everything. It needs to answer one or two useful questions clearly.
Start with one signal The first step is to pick one tactical signal that is easy to measure.
Good candidates are:
visibility cover a small penalty for exposed paths The point is not completeness. The point is to get a result that changes behavior in a useful way.</description></item><item><title>A* Pathfinding: A Practical Guide for Game Developers</title><link>https://blog.jonmikeys.com/posts/astar-pathfinding/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/astar-pathfinding/</guid><description>A practical explanation of A* pathfinding, why it works, and how to use it in game projects.</description></item><item><title>Behavior Trees: A Cleaner Way to Organize Game AI</title><link>https://blog.jonmikeys.com/posts/behavior-trees-for-game-ai/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/behavior-trees-for-game-ai/</guid><description>A practical introduction to behavior trees, how they work, and when they are a better fit than state machines.</description></item><item><title>GOAP for Game AI: Let Actions Build the Plan</title><link>https://blog.jonmikeys.com/posts/goap-for-game-ai/</link><pubDate>Sun, 21 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/posts/goap-for-game-ai/</guid><description>An introduction to GOAP, how it differs from behavior trees and FSMs, and how to use it in game AI.</description></item><item><title>About</title><link>https://blog.jonmikeys.com/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://blog.jonmikeys.com/about/</guid><description>This blog is for clear technical notes, debugging stories, and practical engineering writeups.
The goal is simple: explain the problem, the tradeoffs, and the result without turning it into marketing copy.
If a post is useful, it should leave you with something you can actually apply.</description></item></channel></rss>