<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on Grahn&#39;s Blog</title>
    <link>https://grahn.io/posts/</link>
    <description>Recent content in Posts on Grahn&#39;s Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 31 Jan 2021 00:00:00 +0000</lastBuildDate>
    
	<atom:link href="https://grahn.io/posts/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Bubble Racing: Maze Generator</title>
      <link>https://grahn.io/posts/2021-01-31-maze-generator/</link>
      <pubDate>Sun, 31 Jan 2021 00:00:00 +0000</pubDate>
      
      <guid>https://grahn.io/posts/2021-01-31-maze-generator/</guid>
      <description>Note: The source code to Bubble Racing and a living version of this tutorial can be found here.
Rather than taking the time to actually design interesting levels (or create a level editor), we&amp;rsquo;re going to go with randomly generated mazes instead! It&amp;rsquo;s amaaaze-ing!
If you&amp;rsquo;re wondering how one goes about writing some maze-generating code, here&amp;rsquo;s the secret: Do a search for &amp;ldquo;how to program something&amp;quot;, and some useful results will turn up.</description>
    </item>
    
    <item>
      <title>Bubble Racing: Legend of the Seeker</title>
      <link>https://grahn.io/posts/2021-01-24-legend-of-the-the-seeker/</link>
      <pubDate>Sun, 24 Jan 2021 00:00:00 +0000</pubDate>
      
      <guid>https://grahn.io/posts/2021-01-24-legend-of-the-the-seeker/</guid>
      <description>Note: The source code to Bubble Racing and a living version of this tutorial can be found here.
Err, OK. Not that seeker. (Did anyone else watch that show?)
This seeker will be a hidden helper within our game. It tries to get to a target_position, but it will be stopped by walls and other such things. The behavior will come in handy, and we&amp;rsquo;ll use it later to make bubbles and fish.</description>
    </item>
    
    <item>
      <title>Bubble Racing: Walls</title>
      <link>https://grahn.io/posts/2021-01-17-bubble-racing-making-a-wall/</link>
      <pubDate>Sun, 17 Jan 2021 00:00:00 +0000</pubDate>
      
      <guid>https://grahn.io/posts/2021-01-17-bubble-racing-making-a-wall/</guid>
      <description>Note: The source code to Bubble Racing and a living version of this tutorial can be found here.
Bubble Racing is a game where you compete with friends to be the first to solve a maze (or obstacle course). There is no obstacle more tried and true than a wall. We&amp;rsquo;re going to jazz up the visuals of our walls a little bit, but functionally what we&amp;rsquo;re making here is an obstacle that things like bubbles can not pass through.</description>
    </item>
    
    <item>
      <title>Announcing: Bubble Racing</title>
      <link>https://grahn.io/posts/2020-05-09-announcing-bubble-racing/</link>
      <pubDate>Sat, 09 May 2020 00:00:00 +0000</pubDate>
      
      <guid>https://grahn.io/posts/2020-05-09-announcing-bubble-racing/</guid>
      <description>This is very much still a WIP at this point, but it does vaugly resemble a game. I&amp;rsquo;m trying to get things out sooner, even if they are not perfect (or done).
bubbleracing.com
Hope you enjoy. If you&amp;rsquo;re interested in contributing or just learning, the source code for the game is available on github</description>
    </item>
    
    <item>
      <title>Static Web Hosting: S3 vs B2</title>
      <link>https://grahn.io/posts/2020-02-08-s3-vs-b2-static-web-hosting/</link>
      <pubDate>Sat, 08 Feb 2020 00:00:00 +0000</pubDate>
      
      <guid>https://grahn.io/posts/2020-02-08-s3-vs-b2-static-web-hosting/</guid>
      <description>S3 If you&amp;rsquo;ve been around the ol&amp;rsquo; static website hosting block a few times, you&amp;rsquo;ve probably come across the possibility of hosting your site out of Amazon S3 and maybe sticking Cloudfront in front of it for good measure. That stack looks like the image below, assuming we use Amazon for everything.
Buckets The big three cloud providers all have their bucket solutions, which is to say they all provide a way to store files without having to worry about hard drives.</description>
    </item>
    
    <item>
      <title>Anyone Want to Work on Platform Racing?</title>
      <link>https://grahn.io/posts/2018-01-04-anyone-want-to-work-on-platform-racing/</link>
      <pubDate>Thu, 04 Jan 2018 23:00:11 -0500</pubDate>
      
      <guid>https://grahn.io/posts/2018-01-04-anyone-want-to-work-on-platform-racing/</guid>
      <description>Lately I&amp;rsquo;ve been thinking about how to move forward with the Platform Racing series without abandoning its long history and dedicated community.
I just uploaded Platform Racing 2&amp;rsquo;s multiplayer server to a public repo. Some of it is cringeworthy and embarrasing, but oh well! The code is a decode old! Github will probably do a better job at preserving the files than I can, and this creates a new opportunity for PR2 to grow and improve.</description>
    </item>
    
    <item>
      <title>Faster Multiplayer with Jiber</title>
      <link>https://grahn.io/posts/2017-11-24-faster-multiplayer-with-jiber/</link>
      <pubDate>Fri, 24 Nov 2017 15:39:43 -0500</pubDate>
      
      <guid>https://grahn.io/posts/2017-11-24-faster-multiplayer-with-jiber/</guid>
      <description>Updated 28 Sep 2019: Jiber has been renamed to HiDB.
A Starting Point Platform Racing 2 is a game I wrote in 2007, and it is still alive and kicking today thanks to a dedicated and generous community of players. It&amp;rsquo;s a multiplayer platformer with many great features, such as shooting your friends in the face with a laser gun. Here&amp;rsquo;s how Platform Racing 2 works that out: (it runs on a multiplayer server called Blossom Server)</description>
    </item>
    
    <item>
      <title>Hosting Ghost With Docker</title>
      <link>https://grahn.io/posts/2017-10-24-hosting-ghost-with-docker/</link>
      <pubDate>Tue, 24 Oct 2017 20:05:08 -0400</pubDate>
      
      <guid>https://grahn.io/posts/2017-10-24-hosting-ghost-with-docker/</guid>
      <description>Ghost Ghost is open source blogging sofware that kind-of sort-of competes with WordPress, which is open source world domination software.
Let someone else host it It is absolutely worth the extra bit of money to have someone else go through the trouble of hosting Ghost for you. For those of you who are smart (unlike myself), here are a couple of great options.
 ghost.org Hosting by the people who wrote Ghost.</description>
    </item>
    
    <item>
      <title>Keeping Multi User Apps In Sync (Simply)</title>
      <link>https://grahn.io/posts/2016-11-09-keeping-multi-user-apps-in-sync-simply/</link>
      <pubDate>Wed, 09 Nov 2016 19:16:00 -0500</pubDate>
      
      <guid>https://grahn.io/posts/2016-11-09-keeping-multi-user-apps-in-sync-simply/</guid>
      <description>Here is a simple method to keep multiple users in sync with a shared state (in real time). The core concepts here are flexible enough to work anything from a collaborative document editor to a real-time multiplayer game.
To help keep things simple, we&amp;rsquo;ll build a super fun game called &amp;ldquo;Push the Button First!&amp;quot;. This game will be played by Bob and Sue, and BOY do they both want to be the first person to push that button.</description>
    </item>
    
  </channel>
</rss>