<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Unreal-Engine-3 on Reviving Fury</title>
    <link>https://jamerlybob.github.io/fury-devlog/tags/unreal-engine-3/</link>
    <description>Recent content in Unreal-Engine-3 on Reviving Fury</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 09 Sep 2026 11:30:00 +1200</lastBuildDate>
    <atom:link href="https://jamerlybob.github.io/fury-devlog/tags/unreal-engine-3/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>22. Two Doors Into the Arena</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/two-doors-into-the-arena/</link>
      <pubDate>Wed, 09 Sep 2026 11:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/two-doors-into-the-arena/</guid>
      <description>There are two ways to get a character standing in the map. I&amp;rsquo;ve been putting off choosing between them until I knew what the client actually needs. Now I do, so here&amp;rsquo;s the call and why.</description>
    </item>
    <item>
      <title>21. The Client Won&#39;t Talk, So I Opened It Up</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-client-wont-talk-so-i-opened-it-up/</link>
      <pubDate>Wed, 09 Sep 2026 10:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-client-wont-talk-so-i-opened-it-up/</guid>
      <description>The client stopped narrating what it was doing, so the trick that got me through the last four posts was dead. I had to stop watching the game and start reading the machine code underneath it. First disassembler of the project.</description>
    </item>
    <item>
      <title>20. The Client Believes Me</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-clients-first-step-onto-the-map/</link>
      <pubDate>Tue, 08 Sep 2026 23:15:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-clients-first-step-onto-the-map/</guid>
      <description>The server says WELCOME. The client, which has spent this whole project stuck on a transition screen, reads it, packs up, and tries to load the actual arena map. Then it asks to join the match.</description>
    </item>
    <item>
      <title>19. The Handshake Answers Back</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-handshake-answers-back/</link>
      <pubDate>Tue, 08 Sep 2026 21:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-handshake-answers-back/</guid>
      <description>Last post my server could hear the client say HELLO. This post it says something back, and the client, which has been shouting into a dead socket for eighteen years, answers with three messages I didn&amp;rsquo;t have to ask for.</description>
    </item>
    <item>
      <title>18. The First Word Heard</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-first-word-heard/</link>
      <pubDate>Tue, 08 Sep 2026 20:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-first-word-heard/</guid>
      <description>I started actually writing the server. It&amp;rsquo;s about a hundred lines so far and it does exactly one thing: it hears the client say HELLO and understands it. But that&amp;rsquo;s the first time anything I&amp;rsquo;ve written has been on the other end of that conversation.</description>
    </item>
    <item>
      <title>17. The Pawn Before the Player</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-pawn-before-the-player/</link>
      <pubDate>Tue, 08 Sep 2026 18:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-pawn-before-the-player/</guid>
      <description>I traced the shortest path through Fury&amp;rsquo;s own code from &amp;lsquo;a player connected&amp;rsquo; to &amp;lsquo;a character exists and can move&amp;rsquo;. The character turns out to exist first.</description>
    </item>
    <item>
      <title>16. The Client&#39;s First Word</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-clients-first-word/</link>
      <pubDate>Tue, 08 Sep 2026 17:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-clients-first-word/</guid>
      <description>I pointed a 16-year-old game client at a server that doesn&amp;rsquo;t exist and listened. It said hello in plain English.</description>
    </item>
    <item>
      <title>15. The Server Nobody Kept</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-server-nobody-kept/</link>
      <pubDate>Tue, 08 Sep 2026 16:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-server-nobody-kept/</guid>
      <description>I went looking for an existing Unreal Engine 3 server I could build on top of. Every one I found cheats in a way I can&amp;rsquo;t.</description>
    </item>
    <item>
      <title>14. Time to Build the Server</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/opening-phase-3/</link>
      <pubDate>Tue, 08 Sep 2026 14:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/opening-phase-3/</guid>
      <description>Phase 2 is done. I&amp;rsquo;ve read the whole game. Now comes the part where I have to build the thing that&amp;rsquo;s actually missing.</description>
    </item>
    <item>
      <title>12. 197 Data Files, One Format Nobody Wrote Down, and Half the Numbers Missing</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/cracking-the-data-files/</link>
      <pubDate>Tue, 08 Sep 2026 09:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/cracking-the-data-files/</guid>
      <description>The client ships every ability, item, vendor and map in a custom binary format with no docs. I cracked it from a hex dump in an afternoon, and then noticed that a huge chunk of the tables aren&amp;rsquo;t in the box at all.</description>
    </item>
    <item>
      <title>11. The Server Is In There. Someone Just Flipped It Off.</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-server-is-in-there-switched-off/</link>
      <pubDate>Tue, 08 Sep 2026 08:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-server-is-in-there-switched-off/</guid>
      <description>I started reading the decompiled arena code and found the server logic sitting right next to the client logic in the same files, fully written, wired to a switch that&amp;rsquo;s soldered to &amp;lsquo;off&amp;rsquo;.</description>
    </item>
    <item>
      <title>10. Tell Me What I Missed</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/tell-me-what-i-missed/</link>
      <pubDate>Tue, 08 Sep 2026 08:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/tell-me-what-i-missed/</guid>
      <description>I&amp;rsquo;ve been working on this alone and some of my early conclusions are load-bearing. If you&amp;rsquo;ve cracked open an old Unreal Engine 3 game before, this post is me asking you to check my work.</description>
    </item>
    <item>
      <title>9. The Decompiler Reads the Whole Game Now</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-decompiler-reads-the-whole-game/</link>
      <pubDate>Tue, 08 Sep 2026 07:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-decompiler-reads-the-whole-game/</guid>
      <description>Last time eight of ten test functions came back readable. Then I pointed the tool at the one class that actually matters and it fell over on 111 functions out of 150. This is the fix, and the moment the whole codebase finally dumped to disk.</description>
    </item>
    <item>
      <title>8. Teaching a Decompiler to Read Fury</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/teaching-the-decompiler-fury/</link>
      <pubDate>Tue, 08 Sep 2026 07:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/teaching-the-decompiler-fury/</guid>
      <description>The tool that turns Fury&amp;rsquo;s compiled code back into something readable crashes on the first file. A day later it is reconstructing real Fury functions, and I know the one specific thing still standing between me and the rest.</description>
    </item>
    <item>
      <title>7. There&#39;s No Shortcut. Time to Read the Code.</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/no-shortcut-time-to-dig/</link>
      <pubDate>Tue, 08 Sep 2026 06:30:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/no-shortcut-time-to-dig/</guid>
      <description>Half a day of poking the dead client with a stick is done. It&amp;rsquo;s in great shape. Every way in is bricked shut. So the next stretch is the slow one: decompiling.</description>
    </item>
    <item>
      <title>6. Can the Client Host Its Own Game?</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/can-the-client-host-a-game/</link>
      <pubDate>Tue, 08 Sep 2026 06:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/can-the-client-host-a-game/</guid>
      <description>The shortcut was: get the game to quietly host a match for itself, no server needed. I tried it. The door is welded shut, same as the last three.</description>
    </item>
    <item>
      <title>5. What Does the Game Say First?</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/what-the-client-says-first/</link>
      <pubDate>Mon, 07 Sep 2026 15:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/what-the-client-says-first/</guid>
      <description>I point the dead game&amp;rsquo;s login at a tiny program I wrote, just to eavesdrop on the very first thing it tries to say to a server that isn&amp;rsquo;t there anymore.</description>
    </item>
    <item>
      <title>4. The Client Runs. The Side Doors Don&#39;t.</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-client-runs-the-side-doors-dont/</link>
      <pubDate>Mon, 07 Sep 2026 12:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-client-runs-the-side-doors-dont/</guid>
      <description>A 16-year-old game boots on Windows 11 and hands me the whole character screen with nothing behind it. Then every other door I try is bricked shut.</description>
    </item>
    <item>
      <title>3. The Client Has the Server Inside It</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/the-client-has-the-server-inside-it/</link>
      <pubDate>Mon, 07 Sep 2026 09:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/the-client-has-the-server-inside-it/</guid>
      <description>I set up the project, wrote a plan, had it audited, and found out the plan was aimed at the wrong problem. The client I have is also way more generous than I thought.</description>
    </item>
    <item>
      <title>1. Why I&#39;m Reviving a Dead MMO</title>
      <link>https://jamerlybob.github.io/fury-devlog/posts/why-im-reviving-a-dead-mmo/</link>
      <pubDate>Mon, 31 Aug 2026 00:00:00 +1200</pubDate>
      <guid>https://jamerlybob.github.io/fury-devlog/posts/why-im-reviving-a-dead-mmo/</guid>
      <description>Kicking off a project to reverse-engineer and revive Fury, a 2007 MMO that&amp;rsquo;s been dead since 2008.</description>
    </item>
  </channel>
</rss>
