<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Osama Siddiqui</title>
    <description>The latest articles on DEV Community by Osama Siddiqui (@calisamaa).</description>
    <link>https://dev.to/calisamaa</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3877358%2F80571b2f-5885-4705-b004-42071db8fa7b.jpg</url>
      <title>DEV Community: Osama Siddiqui</title>
      <link>https://dev.to/calisamaa</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/calisamaa"/>
    <language>en</language>
    <item>
      <title>GamePinned: The Windows Tool That Stops People From Uninstalling Games on Shared PCs</title>
      <dc:creator>Osama Siddiqui</dc:creator>
      <pubDate>Mon, 13 Apr 2026 20:25:06 +0000</pubDate>
      <link>https://dev.to/calisamaa/gamepinned-the-windows-tool-that-stops-people-from-uninstalling-games-on-shared-pcs-332m</link>
      <guid>https://dev.to/calisamaa/gamepinned-the-windows-tool-that-stops-people-from-uninstalling-games-on-shared-pcs-332m</guid>
      <description>&lt;p&gt;If you run a gaming cafe, an esports arena, an internet center, or even a shared family PC, you have probably hit this exact problem at least once. Someone sits down at a machine, opens Steam, right-clicks Counter-Strike, and uninstalls 85 GB of game files. The machine is now useless for the next customer until you re-download everything. On a slow connection that can take a full evening.&lt;/p&gt;

&lt;p&gt;This is the problem &lt;a href="https://gamepinned.com" rel="noopener noreferrer"&gt;GamePinned&lt;/a&gt; was built to solve. It is a Windows application that blocks game uninstalls on Steam, Epic Games Store, and Riot Client. The protection works at the file system level, not inside the launcher, which means there is no settings toggle a customer can flip and no "are you sure" dialog that gets clicked through.&lt;/p&gt;

&lt;p&gt;This post is a short tour. If any section sounds relevant, the linked pages on the GamePinned site go into more depth.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the protection actually works
&lt;/h2&gt;

&lt;p&gt;Most game protection tools take a snapshot of the entire drive and roll it back on every reboot. That works, but it forces you to "thaw" the machine every time a game patches. In a busy cafe with multiple platforms patching multiple times per week, this becomes a part-time job.&lt;/p&gt;

&lt;p&gt;GamePinned takes a different approach. It uses Windows NTFS file permissions to mark game folders as read-and-modify but not delete. Game patches still apply normally because patches modify files. Game launches still work because launches read files. Only the delete operation gets blocked.&lt;/p&gt;

&lt;p&gt;A &lt;a href="https://gamepinned.com/docs/how-it-works" rel="noopener noreferrer"&gt;longer write-up of the technical approach&lt;/a&gt; is in the docs. The short version is that you do not need to reboot anything, ever, and updates apply at full speed without admin intervention.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it supports
&lt;/h2&gt;

&lt;p&gt;Three platforms today, with more in the queue.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Steam.&lt;/strong&gt; The original target. Blocks deletion through the Steam client, through Explorer, through &lt;code&gt;rmdir&lt;/code&gt;, through PowerShell, and through any other path that tries to remove protected files. Detail in the &lt;a href="https://gamepinned.com/blog/prevent-steam-game-uninstalls-gaming-cafe" rel="noopener noreferrer"&gt;Steam-specific guide&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Epic Games Store.&lt;/strong&gt; Same protection model. The Epic-specific notes are &lt;a href="https://gamepinned.com/blog/prevent-epic-games-uninstalls-gaming-cafe" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Riot Client.&lt;/strong&gt; Covers Valorant, League of Legends, Teamfight Tactics, and Legends of Runeterra. Riot's installer behaves differently from Steam's, which required some platform-specific handling.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The full platform support matrix lives on the &lt;a href="https://gamepinned.com/docs/platforms" rel="noopener noreferrer"&gt;platforms documentation page&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The features cafe owners actually use
&lt;/h2&gt;

&lt;p&gt;When we started talking to cafe operators, we expected the conversation to be about uninstall protection. It was, mostly. But two other features came up in almost every conversation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GPU Pinned.&lt;/strong&gt; Customers open NVIDIA Control Panel and change settings every session. Resolution, refresh rate, color, sharpening. The next customer sits down to a monitor running at the wrong refresh rate. GPU Pinned saves your NVIDIA settings as named profiles and restores them on every reboot. There is a &lt;a href="https://gamepinned.com/blog/gpu-pinned-nvidia-settings-gaming-cafe" rel="noopener noreferrer"&gt;dedicated post on how this works&lt;/a&gt; and a &lt;a href="https://gamepinned.com/docs/gpu-pinned" rel="noopener noreferrer"&gt;setup guide in the docs&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Session Clear.&lt;/strong&gt; One click wipes Steam, Epic, and Riot logged-in accounts so the next customer starts on a clean machine. Saves the awkward conversation where a new customer sees the previous customer's friend list and inventory. Covered in the &lt;a href="https://gamepinned.com/docs/session-clear" rel="noopener noreferrer"&gt;Session Clear docs&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it fits compared to existing tools
&lt;/h2&gt;

&lt;p&gt;If you have already shopped around, you have probably looked at Deep Freeze, Reboot Restore Rx, or one of the cafe management suites like Senet, Antamedia, or ggLeap.&lt;/p&gt;

&lt;p&gt;The honest summary: those tools all do something useful, but none of them do exactly this.&lt;/p&gt;

&lt;p&gt;Deep Freeze freezes the whole drive. Great for libraries, frustrating for cafes that need frequent game updates. The full comparison is &lt;a href="https://gamepinned.com/blog/deep-freeze-vs-gamepinned" rel="noopener noreferrer"&gt;here&lt;/a&gt;, with verified pricing and a list of what each tool actually does well.&lt;/p&gt;

&lt;p&gt;Senet, Antamedia, and ggLeap are billing and time management tools. They handle customer login, session tracking, and POS. They do not stop a customer from uninstalling a game during their paid session. A side-by-side breakdown of those three is &lt;a href="https://gamepinned.com/blog/senet-vs-antamedia-vs-ggleap-gaming-cafe-software" rel="noopener noreferrer"&gt;in this post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;GamePinned is not a billing tool. It runs alongside Senet or ggLeap and handles the one thing those tools do not.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it costs
&lt;/h2&gt;

&lt;p&gt;There is a free tier that protects one game per machine, forever. No credit card, no time limit. If you want to test it on a single PC before doing anything else, this is the path.&lt;/p&gt;

&lt;p&gt;The Pro tier is $1.99 per PC per month with a 30-day free trial. Unlimited games, all three platforms, GPU Pinned and Session Clear included.&lt;/p&gt;

&lt;p&gt;The Elite tier is a one-time $699 payment for cafes that prefer to own their software outright. Up to 30 PCs in the standard package, unlimited PCs available on request.&lt;/p&gt;

&lt;p&gt;The full breakdown is on the &lt;a href="https://gamepinned.com/pricing" rel="noopener noreferrer"&gt;pricing page&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup is short
&lt;/h2&gt;

&lt;p&gt;Installer, license activation, done. The &lt;a href="https://gamepinned.com/docs/getting-started" rel="noopener noreferrer"&gt;getting started guide&lt;/a&gt; walks through the first install in about five minutes. After that, the tool detects your installed games automatically and you click which ones to lock.&lt;/p&gt;

&lt;p&gt;If you run into anything weird, the &lt;a href="https://gamepinned.com/docs/troubleshooting" rel="noopener noreferrer"&gt;troubleshooting docs&lt;/a&gt; cover the common issues, and the &lt;a href="https://gamepinned.com/support" rel="noopener noreferrer"&gt;support page&lt;/a&gt; has a contact form.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who built it and why
&lt;/h2&gt;

&lt;p&gt;GamePinned started when a friend who runs a gaming cafe came to us with a specific problem. His customers kept deleting games, sometimes by accident, sometimes on purpose. He had Deep Freeze installed but it made things worse: every reboot restored the deletions but also wiped out any game updates that had been downloaded during the day. He was fighting on two fronts.&lt;/p&gt;

&lt;p&gt;He asked for one thing: block deletions, leave updates alone.&lt;/p&gt;

&lt;p&gt;The first version took two months to build from scratch. By March 2026 it was live on his cafe. The first deployment was &lt;a href="https://arcadium.pk" rel="noopener noreferrer"&gt;Arcadium by Vidergg&lt;/a&gt;, running across 30+ PCs in Pakistan. That deployment is what validated the approach and shaped every decision since.&lt;/p&gt;

&lt;p&gt;The full origin story is on the &lt;a href="https://gamepinned.com/story" rel="noopener noreferrer"&gt;story page&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where to start
&lt;/h2&gt;

&lt;p&gt;If you want to read more before installing anything, the &lt;a href="https://gamepinned.com/blog" rel="noopener noreferrer"&gt;blog&lt;/a&gt; has detailed posts on each platform and feature. If you just want to try it, the &lt;a href="https://gamepinned.com" rel="noopener noreferrer"&gt;free download&lt;/a&gt; is on the homepage.&lt;/p&gt;

&lt;p&gt;That is the whole introduction. Hopefully something here lined up with a problem you have been trying to solve.&lt;/p&gt;

</description>
      <category>gaming</category>
      <category>windows</category>
      <category>software</category>
      <category>sysadmin</category>
    </item>
  </channel>
</rss>
