<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Player2 blog]]></title><description><![CDATA[A blog about our path building AI agents that connect language with behavior in 3d worlds.]]></description><link>https://blog.player2.game</link><image><url>https://substackcdn.com/image/fetch/$s_!E3m-!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad39b3b3-91c7-4b54-befd-c84ca0f69fc5_1280x1280.png</url><title>Player2 blog</title><link>https://blog.player2.game</link></image><generator>Substack</generator><lastBuildDate>Mon, 18 May 2026 04:45:42 GMT</lastBuildDate><atom:link href="https://blog.player2.game/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Elefant AI Inc]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[elefantai@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[elefantai@substack.com]]></itunes:email><itunes:name><![CDATA[Wenzhe]]></itunes:name></itunes:owner><itunes:author><![CDATA[Wenzhe]]></itunes:author><googleplay:owner><![CDATA[elefantai@substack.com]]></googleplay:owner><googleplay:email><![CDATA[elefantai@substack.com]]></googleplay:email><googleplay:author><![CDATA[Wenzhe]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Player2 AI RPG Jam winners]]></title><description><![CDATA[Our first Player2 AI RPG Jam is done, and we&#8217;re excited to share the winners.]]></description><link>https://blog.player2.game/p/player2-ai-rpg-jam-winners</link><guid isPermaLink="false">https://blog.player2.game/p/player2-ai-rpg-jam-winners</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 02 Apr 2026 17:50:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!E3m-!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad39b3b3-91c7-4b54-befd-c84ca0f69fc5_1280x1280.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This jam was about turning existing games into something closer to a living RPG: mods where NPCs remember things, react to the player, and help create stories that can change from playthrough to playthrough. We saw builders try this in a lot of different directions, and we&#8217;re grateful to everyone who joined in.</p><h2>Top Creator winners</h2><p>These were the fixed-prize winners in the Top Creator track:</p><p><strong>1st place &#8212; AI Influence</strong><br><strong>Prize: $1000</strong></p><p><strong>2nd place &#8212; EchoColony</strong><br><strong>Prize: $500</strong></p><h2>New Creator winners</h2><p>These were the winners in the New Creator track, where prizes were based on revenue share performance, with a minimum payout of $250 and a cap of $1000:</p><p><strong>SentientSands</strong> &#8212; <strong>$1000</strong><br><strong>The Living Valley</strong> &#8212; <strong>$1000</strong><br><strong>Voices of the Court</strong> &#8212; <strong>$700</strong><br><strong>Sims4: Boundless</strong> &#8212; <strong>$250</strong><br><strong>CobbleBrain</strong> &#8212; <strong>$360</strong></p><h2>What stood out</h2><p>What we wanted from this jam was not just &#8220;AI chat in a game.&#8221; We were looking for mods that made roleplay matter inside the game world: NPCs with memory, choices that changed what happened next, and stories that could move in different directions depending on how the player played. That was the whole idea behind the jam from the start.</p><p>A big thank you to everyone who entered. Building this kind of system is still hard, and every good submission helps show what this new style of game can look like.</p><h2>What&#8217;s next</h2><p>One more thing: you can now <strong>resubmit published games to our next jam</strong>.<br>https://itch.io/jam/player2-ai-rpg-jam-2/entries</p><p>If you built something for this jam and want to keep improving it, keep going. If you have already published a game and think it now fits the next jam better, you can enter again.</p><p>That&#8217;s something we want to encourage more of: not just jam prototypes, but projects that keep growing after the jam ends. The RPG Jam itself was designed to reward sustained development and real player usage, and we want to keep pushing in that direction.</p>]]></content:encoded></item><item><title><![CDATA[Player2 AI NPC Jam #4 — Winners]]></title><description><![CDATA[Highlights, and What&#8217;s Next]]></description><link>https://blog.player2.game/p/player2-ai-npc-jam-4-winners</link><guid isPermaLink="false">https://blog.player2.game/p/player2-ai-npc-jam-4-winners</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Fri, 30 Jan 2026 11:59:11 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ce5e91f1-648b-47a2-87ed-0359bf78de61_1940x1306.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We just wrapped <strong>Player2 AI NPC Jam #4</strong>, and the creativity on display was unreal. Huge thanks to everyone who joined in&#8212;whether you shipped a full entry, shared feedback, played through submissions, or helped spread the word. This jam was packed with smart ideas, weird experiments (in the best way), and genuinely fun games.</p><p>Below are the official results, plus what&#8217;s coming next.</p><div><hr></div><h2>&#127942; Results</h2><h3><strong>$1,500 &#8212; OVERALL GRAND PRIZE WINNER</strong></h3><p><strong>Barotrauma AI NPCs</strong></p><h3><strong>$600 &#8212; Best Web Game (A web game playable on our site)</strong></h3><p><strong>Kirishima News Club</strong></p><h3><strong>$600 &#8212; Best AI Story</strong></h3><p><strong>Mira</strong></p><h3><strong>$600 &#8212; Best AI Mod</strong></h3><p><strong>FelPawns</strong></p><h3><strong>$300 &#8212; Next six places</strong></h3><ul><li><p><strong>Hallway7</strong></p></li><li><p><strong>The Between</strong></p></li><li><p><strong>Chaos Inflicter</strong></p></li><li><p><strong>S.M.G</strong></p></li><li><p><strong>The Therapy Room</strong></p></li><li><p><strong>Warrior 52</strong></p></li></ul><p>You can view the full jam page, all entries, and the final results here:<br><a href="https://itch.io/jam/player2-ai-npc-jam4">https://itch.io/jam/player2-ai-npc-jam4</a></p><div><hr></div><h2>&#128155; A Note to Everyone Who Submitted</h2><p>There were <strong>a lot of really good games</strong> that didn&#8217;t make the winners list. That&#8217;s one of the hardest parts of judging and ranking: the cutoff happens fast, and many entries could easily have landed in the top group on a different day or with a different scoring mix.</p><p>If you built something for this jam: <strong>thank you</strong>. You made the community better and pushed the idea of &#8220;AI NPCs&#8221; in surprising directions.</p><div><hr></div><h2>&#128640; Next Up: Player2 AI RPG Jam</h2><p>If you had fun building (or you&#8217;ve been waiting for the right theme), the next jam is live:</p><p><strong>Player2 AI RPG Jam</strong><br><a href="https://itch.io/jam/player2-ai-rpg-jam">https://itch.io/jam/player2-ai-rpg-jam</a></p><p>Bring your party systems, narrative experiments, combat prototypes, procedural quests, companion NPCs&#8212;whatever &#8220;AI RPG&#8221; means to you. We&#8217;re excited to see what you ship.</p><div><hr></div><h2>Play the Entries + Leave Some Love</h2><p>If you haven&#8217;t yet, take a moment to browse the submissions and leave a comment on a few games. A short note goes a long way for jam creators.</p><p>Thanks again for making <strong>Player2 AI NPC Jam #4</strong> such a blast. See you in the next one. &#127918;&#10024;</p>]]></content:encoded></item><item><title><![CDATA[Player2 AI RPG Jam]]></title><description><![CDATA[Turn Existing Games Into &#8220;Living RPGs&#8221;]]></description><link>https://blog.player2.game/p/player2-ai-rpg-jam</link><guid isPermaLink="false">https://blog.player2.game/p/player2-ai-rpg-jam</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Sun, 25 Jan 2026 15:51:37 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1c7b77c3-326e-4e42-9a23-0c52ee0ef7ac_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The fastest way to prove a new game mechanic is real is to watch independent developers do something you didn&#8217;t predict.</p><p>That&#8217;s what happened with our earlier AI NPC jams&#8212;enough that it meaningfully accelerated new games shipping on Player2. </p><p>Now we&#8217;re running a new kind of jam&#8212;one focused on <em>mods</em> and sustained development. <br><br><strong>Jam page (details + how to join): <a href="https://itch.io/jam/player2-ai-rpg-jam?utm_source=chatgpt.com">https://itch.io/jam/player2-ai-rpg-jam</a></strong></p><h2>The premise</h2><p>Welcome to the <strong>Player2 AI RPG Jam</strong>: a jam for <strong>mods (not brand-new standalone games)</strong> that transform an existing base game into a <strong>new genre of RPG</strong> where:</p><ul><li><p>every NPC feels alive (memory, goals, relationships)</p></li><li><p>conversation and player actions <strong>cause real in-game events</strong></p></li><li><p>the story and world <strong>change because you roleplay</strong></p></li></ul><p>This jam&#8217;s theme is <strong>not</strong> &#8220;add an AI chat window.&#8221;</p><p>It&#8217;s <strong>roleplay that drives world events</strong>&#8212;like letting the player live their own Fallout / GoT / Witcher movie <em>inside</em> a game, with dialogue and decisions bending the plot and generating consequences.</p><h2>What to build (and what not to build)</h2><h3>&#9989; We encourage</h3><ul><li><p>Mods for popular base games that <strong>don&#8217;t already</strong> have a clean theme-fitting mod</p></li><li><p>Deep integration: dialogue &#8596; systems &#8596; narrative &#8596; world events</p></li><li><p>&#8220;Emergent story engines&#8221; driven by player behavior</p></li></ul><h3>&#10060; We will NOT reward</h3><ul><li><p>Clones of an existing theme-fitting mod in the same base game<br>(Example from the doc: &#8220;don&#8217;t build AI Influence in Bannerlord again.&#8221;)</p></li></ul><h2>Rewards: designed for real usage (not tiny throwaway demos)</h2><p>Past jams sometimes incentivized splitting projects into micro-demos to maximize chances&#8212;then lots of entries got abandoned. This time, we&#8217;re explicitly optimising for <strong>sustained development</strong> and <strong>real player usage</strong>.</p><h3>Important dates</h3><ul><li><p><strong>Eligibility cutoff:</strong> publish your mod on Player2 <strong>before March 1, 2026</strong></p></li><li><p><strong>Judging window:</strong> <strong>Feb 1 &#8594; Mar 31, 2026</strong></p></li><li><p><strong>Rewards granted:</strong> <strong>March 31, 2026</strong></p></li></ul><h3>Two tracks</h3><p><strong>Track 1: Top Creators</strong><br>If you&#8217;ve earned <strong>&gt;$1000 total from Player2</strong> before Feb 1, you&#8217;re in Top Creators.</p><p>Judged on <strong>growth + usage growth</strong> during the window. </p><p>Rewards:</p><ul><li><p>Winner: <strong>$1000 bonus</strong></p></li><li><p>Runner-up: <strong>$500 bonus</strong></p></li></ul><p><strong>Track 2: Up-and-Coming Creators</strong><br>Everyone else.</p><p>Judged on:</p><ul><li><p><strong>Theme fidelity</strong> (does it feel like a living RPG movie?)</p></li><li><p><strong>Live development</strong> (frequent updates + responding to feedback)</p></li><li><p><strong>Player metrics</strong> (real engagement/traction)</p></li></ul><p>Rewards (up to 5 winners):</p><ul><li><p>Each winner gets <strong>10&#215; their revenue share earned from March 1 onward</strong> until their <strong>total payout exceeds $1000</strong>, then normal payout resumes</p></li></ul><p><strong>For detailed submission rules and scoring criteria, visit the Jam page and join: <a href="https://itch.io/jam/player2-ai-rpg-jam?utm_source=chatgpt.com">https://itch.io/jam/player2-ai-rpg-jam</a></strong></p><div><hr></div><p>See you in the jam.</p>]]></content:encoded></item><item><title><![CDATA[Scaling Behavior Cloning Improves Causal Reasoning: An Open Model for Real-Time Video Game Playing]]></title><description><![CDATA[Open Pixel2Play (P2P)]]></description><link>https://blog.player2.game/p/scaling-behavior-cloning-improves</link><guid isPermaLink="false">https://blog.player2.game/p/scaling-behavior-cloning-improves</guid><dc:creator><![CDATA[Yuguang]]></dc:creator><pubDate>Fri, 09 Jan 2026 16:53:13 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!sX1t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sX1t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sX1t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 424w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 848w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sX1t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png" width="1456" height="452" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:452,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7526340,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.player2.game/i/184038300?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sX1t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 424w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 848w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!sX1t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5b5982-6649-4dd5-a44e-4454e0ea45ce_3712x1152.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p><strong>&#128187; code available at https://github.com/elefant-ai/open-p2p</strong></p><p><strong>&#129303; data available at: https://huggingface.co/datasets/elefantai/p2p-full-data</strong></p><p><strong>&#127909; videos available at https://elefant-ai.github.io/open-p2p/</strong></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;7462192c-82f3-4d7f-89ac-947c4eacca38&quot;,&quot;duration&quot;:null}"></div><p><em>                        (a collection of games the model can play at a reasonable level right now)</em></p><p>We introduce Pixels2Play (P2P), an open-source generalist agent designed for real-time control across diverse 3D video games on consumer-grade GPUs. Built on an efficient, decoder-only transformer architecture that predicts keyboard and mouse actions from raw pixel inputs , the model is trained on a massive new dataset of over 8,300 hours of high-quality, text-annotated human gameplay. Beyond achieving human-level competence in commercial environments like DOOM and Roblox , we systematically investigate the scaling laws of behavior cloning, demonstrating that increasing model and data scale significantly improves causal reasoning and mitigates the "causal confusion" often inherent in imitation learning. To accelerate research in generalist game AI, we are releasing the full training recipe, model checkpoints, and our extensive gameplay dataset under an open license.</p><p></p><h4><strong>&#127918; Now watch our model plays with a real human player on Roblox Rival!</strong></h4><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;0e27bca3-d189-4f75-bd09-f7217957e7b5&quot;,&quot;duration&quot;:null}"></div><p></p><h3><strong>Training Dataset:</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o8jE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o8jE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 424w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 848w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 1272w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o8jE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png" width="1456" height="511" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:511,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:782642,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.player2.game/i/184038300?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!o8jE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 424w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 848w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 1272w, https://substackcdn.com/image/fetch/$s_!o8jE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4759e7c5-c1cd-4155-b276-dbeecf4059c9_2384x836.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We release a large-scale dataset of high-quality human gameplay spanning diverse 3D video games including FPS (DOOM, Quake, Call of Duty, etc.), racing (Need for Speed, etc.), Roblox games, and other popular video games. All gameplay is recorded at <strong>20 FPS</strong> by experienced players. Each frame is annotated with <strong>keyboard and mouse actions</strong>, and <strong>text instructions</strong> are provided when available.</p><p></p><h3><strong>Policy Model:</strong></h3><p>Our model, <strong>Pixels2Play (P2P)</strong>, is an action policy that takes visual observations and optional text instructions as input to output keyboard and mouse actions. The model is designed for high-speed, real-time inference (20 Hz) on consumer-level GPUs. The architecture is composed of a <strong>backbone transformer</strong> and a <strong>lightweight action decoder</strong>. The backbone transformer is responsible for sophisticated spatio-temporal reasoning between the visual inputs, text inputs, and the output action. The action decoder then predicts the final mouse and keyboard actions based on a compressed <strong>action prediction token</strong> generated by the backbone. This structure accelerates inference speed by a factor of 5 while maintaining high prediction accuracy.</p><p>The model employs an <strong>EfficientNet-based image encoder</strong> to compress visual observations into compact visual tokens, and a <strong>Gemma text encoder</strong> to compress text instructions into compact text tokens. One ground truth action consists of eight tokens: four representing simultaneous keyboard actions, two representing mouse movement on the x and y axes, and two representing mouse button actions. These ground truth action tokens are provided as input so the model can leverage prior actions to perform more like a human. To maintain the causality of the model, we designed a customized attention mask to ensure that the <strong>action prediction token</strong> only attends to prior ground truth action tokens.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ss2z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ss2z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 424w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 848w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 1272w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ss2z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png" width="1303" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:1303,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:44804,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.player2.game/i/184038300?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ss2z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 424w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 848w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 1272w, https://substackcdn.com/image/fetch/$s_!ss2z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a5dc455-653f-43ea-a5e5-39070c994325_1303x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h3><strong>Causality and Scaling:</strong></h3><p></p><h5>1. Causality in a Controlled Toy Environment</h5><p>In this controlled setup, an optimal linear policy exists that can solve the task. However, we found that standard gradient descent fails to find this solution in linear models. By <strong>increasing network depth and adding non-linearity</strong>, the optimization process is better able to overcome spurious correlations. These results suggest that increased capacity and depth do not just improve performance&#8212;they actively facilitate the discovery of true causal signals during training.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l-hc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l-hc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 424w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 848w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 1272w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l-hc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png" width="578" height="170" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cba308e-eb75-40a4-801e-80f05a298317_578x170.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:170,&quot;width&quot;:578,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1216881,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.player2.game/i/184038300?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!l-hc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 424w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 848w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 1272w, https://substackcdn.com/image/fetch/$s_!l-hc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cba308e-eb75-40a4-801e-80f05a298317_578x170.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p></p><h5>2. Empirical Evidence in Large-Scale Environments</h5><p>In our full-scale experiments, we observed an empirical phenomenon that mirrors the findings from the toy example.</p><p>We found that increasing <strong>model parameters</strong> and <strong>dataset volume</strong> naturally mitigates causal confusion. Even without explicit architectural interventions to address causality, larger models demonstrate a superior ability to distinguish between essential environmental cues and non-causal distractors. This suggests that <strong>scale</strong> provides a practical, robust solution to the causal challenges inherent in generalist gaming agents.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EYgy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EYgy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 424w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 848w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 1272w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EYgy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png" width="1000" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:93556,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.player2.game/i/184038300?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EYgy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 424w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 848w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 1272w, https://substackcdn.com/image/fetch/$s_!EYgy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9349acdc-1f3b-43ad-8857-d047e94647f7_1000x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[How a solo modder’s attempt to make conversations matter went viral]]></title><description><![CDATA[AI Influence (Bannerlord mod)]]></description><link>https://blog.player2.game/p/how-a-solo-modders-attempt-to-make</link><guid isPermaLink="false">https://blog.player2.game/p/how-a-solo-modders-attempt-to-make</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Tue, 06 Jan 2026 13:44:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/CSvK_VPNX68" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Over the holiday, the <a href="https://player2.game/games/mfive/mount-blade-ii-ai-influence-ai-diplomacy">AI Influence mod</a> in Bannerlord went viral across the internet. In this blog post, we interviewed the mod author MFive about why he built this mod, what&#8217;s special, and how he leverages player2.<br><br>A lot of &#8220;AI in games&#8221; stops at dialogue: you talk to an NPC, you get a clever response, and the world continues exactly as before.</p><p><strong>AI Influence</strong> is trying to push past that. The mod (currently in <strong>BETA</strong>) focuses on AI-driven interaction where conversations can connect to <strong>diplomacy, actions, and systemic outcomes</strong>&#8212;closer to the &#8220;your words change the world&#8221; and players went crazy over it.</p><div><hr></div><h2>AI Influence takes up all my time</h2><p>AI Influence is MFive&#8217;s main project:</p><blockquote><p>&#8220;My most important mod is, of course, AI Influence. A lot of time and effort has been invested in it, and I&#8217;m still working on it&#8230; the mod is in BETA, and its functionality is still far from being released.&#8221;</p></blockquote><p>They&#8217;ve also built other mods over time&#8212;<strong>Balanced Battle Resolve</strong> and <strong>Advanced Battle Resolve</strong>, <strong>Dynamic Clan System</strong>, and <strong>Lords Gear</strong>&#8212;but AI Influence is their current focus.</p><div><hr></div><h2>How AI Influence started: personal project &#8594; public BETA (for bugfinding)</h2><p>AI Influence began as a personal mod that later went public:</p><blockquote><p>&#8220;AI Influence was initially created purely for personal purposes, after which I posted it on Nexus.&#8221;</p></blockquote><p>The core inspiration was seeing AI used in ways that go beyond flavour text:</p><blockquote><p>&#8220;&#8230;old Mount and Blade 2 videos, where the AI performs actions and your conversations actually influence something technical&#8230;&#8221;</p></blockquote><p>They did early diplomacy/action testing alone:</p><blockquote><p>&#8220;I conducted the initial tests of diplomacy, actions, and so on alone. I didn&#8217;t have any beta testers or anyone else; I&#8217;m working on the project alone&#8230;&#8221;</p></blockquote><p>Then came a practical decision many solo modders will recognise: ship the BETA publicly and let real players surface edge cases.</p><blockquote><p>&#8220;&#8230;it was decided to distribute the BETA version online so players could help find bugs and issues.&#8221;</p></blockquote><p>They explicitly credit active bug reporters as part of the project&#8217;s progress:</p><blockquote><p>&#8220;Therefore, every active player who has ever submitted a bug report is a participant in this work of art&#8230; a huge thank you to them all!&#8221;</p></blockquote><div><hr></div><h2>Why Player2: convenient iteration, stable infra, and &#8220;a happy medium&#8221; model</h2><p>MFive first discovered Player2 through another mod, then used it during AI Influence development because it was convenient for testing:</p><blockquote><p>&#8220;When I was making AI Influence, I tested my mod using Player2&#8217;s AI because it was convenient for me: a few hours were enough, and a few hours in Player2 is free. My daily energy was more than enough.&#8221;</p></blockquote><p>Their experience summary of player2 is pragmatic:</p><ul><li><p><strong>Reliability/support:</strong> &#8220;pretty good support and servers&#8221; (no issues encountered personally)</p></li><li><p><strong>Model tradeoff:</strong> &#8220;a happy medium between smart and expensive and dumb and weak&#8221;</p></li><li><p><strong>User growth:</strong> &#8220;Yes, Player2 helped attract more users. I think we help each other out to some extent.&#8221;</p></li><li><p><strong>Revenue share:</strong> &#8220;A revenue-sharing program is a great way and motivation to work on projects like AI Influence&#8230; or other games.&#8221;</p></li></ul><p>(That last point matters because big &#8220;systems&#8221; mods tend to be long-running efforts, and sustained maintenance is usually the hard part.)</p><div><hr></div><h2>What&#8217;s changed recently on Player2: a free <code>gpt-oss-120b</code> option for players</h2><p>A platform update worth noting for mod developers: <strong>Player2 now offers an entirely free option for players using OpenAI&#8217;s open-weight </strong><code>gpt-oss-120b</code><strong> model.</strong></p><p>Two reasons this is relevant to AI mods:</p><ol><li><p><strong>It lowers friction</strong> for players trying the mod (they can play without worrying about cost at all).</p></li><li><p>It gives players access to a model scale that&#8217;s often unrealistic to run locally.</p></li></ol><p>OpenAI describes <code>gpt-oss-120b</code> as an open-weight reasoning model that can run efficiently on a <strong>single 80GB GPU</strong>. <a href="https://openai.com/index/introducing-gpt-oss/">OpenAI</a> The official repo, likewise frames <code>gpt-oss-120b</code> as targeting use cases that &#8220;fit into a single 80GB GPU (like NVIDIA H100 or AMD MI300X).&#8221; <a href="https://github.com/openai/gpt-oss">GitHub</a></p><p>In other words: while some enthusiasts can run strong local models, <strong>most players can&#8217;t practically host something in this tier</strong>&#8212;we are now offering this model as our smallest and free option, so &#8220;free to play on Player2&#8221; can still mean &#8220;powerful enough to feel good in-game&#8221;, beyond a few hours free a day.</p><div><hr></div><h2>See it working: install walkthrough + gameplay</h2><p>If you want to understand what &#8220;AI Influence + Player2&#8221; looks like end-to-end, these community videos help:</p><ul><li><p><strong>Installation walkthrough (community-made, not sponsored by us, all credits to spartank): </strong><a href="https://www.youtube.com/watch?v=mPpiPBAMEx8&amp;utm_source=chatgpt.com">YouTube</a><br></p></li></ul><div id="youtube2-mPpiPBAMEx8" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;mPpiPBAMEx8&quot;,&quot;startTime&quot;:&quot;1s&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/mPpiPBAMEx8?start=1s&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><ul><li><p><strong>Gameplay video from Spartank:</strong></p></li></ul><div id="youtube2-CSvK_VPNX68" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;CSvK_VPNX68&quot;,&quot;startTime&quot;:&quot;&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/CSvK_VPNX68?start=&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><h2>We asked for MFive&#8217;s advice to new mod developers: design for model churn, don&#8217;t freeze your architecture</h2><p>Their most actionable guidance wasn&#8217;t about &#8220;prompt craft,&#8221; but about <strong>future-proofing</strong>:</p><blockquote><p>&#8220;For anyone interested in working with AI as a developer, I would advise building your structure to find a happy medium. AI is getting smarter every day. Models that are expensive today may become cheaper tomorrow, and smarter models will emerge.&#8221;</p></blockquote><p>And a direct encouragement to avoid building an artificially &#8220;small&#8221; mod just because today&#8217;s models have limits:</p><blockquote><p>&#8220;So, don&#8217;t be afraid to make your modifications with an eye toward the future and don&#8217;t limit yourself to the complexity of your AI requests.&#8221;</p></blockquote><p>That&#8217;s a useful mental model for AI mods in general: treat models as a moving dependency, and keep your integration flexible so you can swap up in quality/latency/cost over time without rewriting the mod.<br><br>Now, if you are interested in building your own AI Influence mod with player2 in games, go to the <a href="https://player2.game/profile/developer">developer portal </a>on the player2 site and read the tutorials/documents there!</p>]]></content:encoded></item><item><title><![CDATA[How One RimWorld Modder Tripled His Players With AI NPCs and Turning Passion Into Income]]></title><description><![CDATA[How You Can Too at https://player2.game/profile/developer]]></description><link>https://blog.player2.game/p/how-one-rimworld-modder-tripled-his</link><guid isPermaLink="false">https://blog.player2.game/p/how-one-rimworld-modder-tripled-his</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Wed, 10 Dec 2025 12:10:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/zAp3z798oOA" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you&#8217;ve ever stared at a little NPC hauling bricks at 3x speed and thought, <em>&#8220;What are you thinking right now?&#8221;</em> &#8212; this one&#8217;s for you.</p><p>AI and LLMs have quietly become the most powerful NPC design tool modders have ever had. Not just for &#8220;more text,&#8221; but for characters that <strong>feel alive</strong>, react to the world, and remember what&#8217;s happened to them.</p><p>Today I want to share the story of <strong>Gerik Uylerk</strong> (a.k.a. <em>Gerik</em>), the creator of <strong><a href="https://player2.game/games/gerik-lobogris/rimworld-echocolony">EchoColony</a></strong> and the one who helped onboarding <strong>RimTalk</strong> to player2 for RimWorld &#8212; and how building AI NPC mods with <strong>Player2</strong> didn&#8217;t just bring his pawns to life&#8230; it <strong>nearly tripled his user base</strong> and turned modding into a real source of income for him.</p><p>And if you&#8217;re a mod developer, I&#8217;ll show you exactly how you can do the same with your own game or mod.</p><div id="youtube2-zAp3z798oOA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;zAp3z798oOA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/zAp3z798oOA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><div><hr></div><h2>&#8220;I didn&#8217;t want longer text. I wanted characters that felt alive.&#8221;</h2><blockquote><p>&#8220;I noticed that there were already some mods using AI to generate stories or enhance certain aspects of RimWorld, but none of them really matched what I wanted. I didn&#8217;t just want longer text or more complex storytelling. I wanted characters that felt alive.&#8221;</p></blockquote><p>Gerik has been a developer for years, and like many of us, he&#8217;s obsessed with <strong>strategy and management games</strong>. RimWorld in particular.</p><p>Every time he watched a pawn eat, build, or wander around camp, he had the same question:</p><blockquote><p><em>What would this little person say if they could actually talk to me?</em></p></blockquote><p>That question eventually became <strong>EchoColony</strong> &#8212; mods that give RimWorld pawns their own <strong>voices, memories, and opinions</strong>, driven by AI and their in-game experiences.</p><p>Instead of the player writing the dialogue, <strong>the pawns talk for themselves.</strong> Their words come from their traits, relationships, battles, and daily life in the colony.</p><p>If you haven&#8217;t seen it yet, check out Gerik&#8217;s RimWorld NPC chat in action &#8212; watching pawns banter and process battles together is honestly wild.</p><div><hr></div><h2>From &#8220;AI sounds cool&#8221; to &#8220;oh wow, this actually works&#8221;</h2><p>Gerik had experimented with different AI APIs before Player2. You probably know the drill:</p><ul><li><p>Complicated registrations</p></li><li><p>&#8220;Where is my API key again?&#8221;</p></li><li><p>Long docs, rate limits, logins, portals&#8230;</p></li></ul><p>So when he tried Player2 for the first time, his reaction was basically: <em>wait, that&#8217;s it?</em></p><blockquote><p>&#8220;You just download it, install it and that&#8217;s it. No complicated registration, no jumping through confusing pages just to get an API key. I had been testing different AI APIs for a long time and it was the first time I found something like this.&#8221;</p></blockquote><p>For <strong>RimTalk</strong> and <strong>EchoColony</strong>, he wired things up so that the mod could work:</p><ul><li><p><strong>With the Player2 desktop app</strong>, for players who just want plug-and-play</p></li><li><p><strong>With a manually assigned API key</strong>, for power users who prefer that route</p></li></ul><p>Once integrated, two things stood out immediately for him:</p><blockquote><p>&#8220;The first one was the speed of the responses. I can have long conversations with the NPCs and it never gets overloaded.&#8221;</p><p>&#8220;The second thing is the very generous free usage&#8230; I&#8217;ve never run out of the free quota. It&#8217;s amazing.&#8221;</p></blockquote><p>For a game like RimWorld, where you can spend <strong>hundreds of hours</strong> in a single save, that matters a lot. Players don&#8217;t want to worry about running out of AI just because they talked to their pawns too much.</p><div><hr></div><h2>Did AI NPCs actually bring more players? Yes. A lot.</h2><p>This part is simple:</p><blockquote><p>&#8220;Without exaggerating, I&#8217;d say it practically <strong>tripled my user base</strong>. Even though I added different AI options, none of them caused the download numbers to grow as much as Player2 did. Everyone loves an AI that&#8217;s easy to use.&#8221;</p></blockquote><p>Mod players are not asking for more complexity. They want:</p><ul><li><p><strong>Click, play, talk</strong> &#8212; no dev account, no extra forms</p></li><li><p>NPCs that <strong>respond quickly</strong> and <strong>stay in character</strong></p></li><li><p>Something that &#8220;just works&#8221; in the background</p></li></ul><p>Player2 is built around that exact idea: make it <strong>frictionless for players</strong>, and <strong>flexible for mod developers.</strong></p><p>That combo is what drove the spike in adoption for EchoColony and RimTalk. The tech is cool, sure &#8212; but the <strong>usability</strong> is what brought the crowd.</p><div><hr></div><h2>Turning passion into income: the revenue share program</h2><p>Gerik didn&#8217;t start doing this for money.</p><p>He started making mods during a <strong>difficult moment</strong> in his life, mostly as a way to keep his mind busy and pour energy into something he loved. Then something unexpected happened:</p><blockquote><p>&#8220;I realized that doing what I love could also become a source of income. That gave me back a lot of motivation.&#8221;</p></blockquote><p>With Player2&#8217;s <strong>revenue share program</strong>, he gets a <strong>transparent monthly payout</strong> based on player usage, plus extra from game jams and prizes.</p><p>No legal labyrinth. No predatory contracts. No tiny-print conditions.</p><blockquote><p>&#8220;There are no complicated contracts, no endless requirements or impossible conditions. You just focus on making fun mods or games for the players.&#8221;</p></blockquote><p>We handle the boring parts: billing, infrastructure, and tracking usage. Modders like Gerik focus on the fun parts: <strong>making weird, delightful, emotional NPCs that players get attached to.</strong></p><div><hr></div><h2>What makes a great AI NPC mod? (Gerik&#8217;s advice)</h2><p>If you&#8217;re a mod developer thinking, <em>&#8220;Okay, I want to try this&#8221;</em>, here&#8217;s some of Gerik&#8217;s best advice.</p><blockquote><p>&#8220;A key aspect is that every NPC should feel organic and alive, with their own personality, their own conflicts and their own way of seeing the world. But the most important thing is that your game or your mod has to be fun.&#8221;</p></blockquote><p>Here are some practical principles you can steal immediately:</p><h3>1. Tie dialogue to <strong>what&#8217;s happening in the world</strong></h3><p>NPCs shouldn&#8217;t feel like floating chatbots. They should react to:</p><ul><li><p>Recent battles</p></li><li><p>New constructions or disasters</p></li><li><p>Relationships, breakups, betrayals</p></li><li><p>Injuries, mood, needs, traits</p></li></ul><p>In <strong>EchoColony</strong>, some of the best moments come <strong>after battles</strong>, when colonists process what just happened &#8212; celebrating victory or grieving losses in their own way.</p><p>Those small, grounded reactions are what make them feel real.</p><h3>2. Avoid over-decorated &#8220;poetic&#8221; AI</h3><p>It&#8217;s tempting to prompt your NPCs to sound clever and literary. But if every line reads like a dramatic monologue, players will eventually disengage.</p><blockquote><p>&#8220;If the NPC&#8230; talks in an over-decorated way, like it&#8217;s reciting a fancy template, then it stops feeling like a character and becomes a simple question and answer machine.&#8221;</p></blockquote><p>Instead:</p><ul><li><p>Keep the <strong>voice consistent</strong> with the NPC&#8217;s traits</p></li><li><p>Let them be simple, grumpy, weird, awkward &#8212; not all of them need to be geniuses</p></li><li><p>Use shorter lines during gameplay, save longer ones for big moments</p></li></ul><h3>3. Remember: fun &gt; fancy AI</h3><p>A technically impressive AI that isn&#8217;t fun is still a bad mod.</p><ul><li><p>Don&#8217;t overcomplicate setup or UI</p></li><li><p>Don&#8217;t force players through walls of configuration</p></li><li><p>Give them <strong>one button</strong>: <em>&#8220;Talk to NPC&#8221;</em></p></li><li><p>Make sure what comes out is <strong>entertaining</strong>, not just impressive</p></li></ul><blockquote><p>&#8220;That&#8217;s what you should aim for: characters that truly live inside the world, not characters that only answer questions.&#8221;</p></blockquote><div><hr></div><h2>Why mod developers love building with Player2</h2><p>Here&#8217;s what stands out for modders like Gerik:</p><h3>&#129520; 1. Simple to integrate</h3><p>You can support:</p><ul><li><p><strong>App-based usage</strong> &#8212; players just run the Player2 app</p></li><li><p><strong>API key usage</strong> &#8212; for web users who do not want to or can not use localhost</p></li></ul><p>You don&#8217;t have to build your own infrastructure, auth, or billing.</p><h3>&#9889; 2. Fast, reliable responses</h3><p>Long conversations, heavy play sessions, lots of simultaneous NPCs &#8212; and it still stays responsive. That&#8217;s crucial for keeping immersion.</p><h3>&#127918; 3. Generous free usage for players</h3><p>Your players can talk to NPCs for a <em>long</em> time without touching a paywall. That makes it easier for your mod to spread and build a community.</p><h3>&#129309; 4. A dev-focused community</h3><blockquote><p>&#8220;There are developers helping each other every day, and there&#8217;s also a team behind Player2 that listens to users, considers suggestions and keeps adding improvements.&#8221;</p></blockquote><p>Need more TTS voices? Better dev tools? People ask &#8212; and we ship.</p><div><hr></div><h2>Okay, I&#8217;m in. How do I start building my own AI NPC mod?</h2><p>Here&#8217;s a simple path you can follow:</p><h3>Step 1: Pick the game &amp; the fantasy</h3><ul><li><p>RimWorld, Mount&amp;Blade, and Minecraft are the most popular games on our platform right now</p></li><li><p>Skyrim, Sim4 are commonly asked</p></li></ul><h3>Step 2: Decide how NPCs &#8220;know&#8221; the world</h3><p>Think about what you&#8217;ll pass to the AI:</p><ul><li><p>Current mood / health / traits</p></li><li><p>Recent events (e.g. &#8220;lost a friend in battle 2h ago&#8221;)</p></li><li><p>Relationships (e.g. &#8220;married to X, hates Y&#8221;)</p></li><li><p>Context of the conversation (is the player interrogating? comforting? joking?)</p></li></ul><p>You don&#8217;t need to send everything &#8212; just enough for the AI to roleplay convincingly.</p><h3>Step 3: Wire your mod to Player2</h3><ul><li><p>Go to <a href="https://player2.game/profile/developer">https://player2.game/profile/developer</a></p></li><li><p>Check Web API and Localhost API docs depending on your need</p></li><li><p>Integrate the APIs in your game</p></li><li><p>Upload the mod from the creation console above</p></li></ul><p>Gerik even made it so that <strong>everything can be done from inside the game itself</strong>, which massively improves UX for players.</p><h3>Step 4: Ship it, then iterate with real players</h3><div><hr></div><h2>Want to build the next EchoColony?</h2><p>Gerik turned a simple question &#8212; <em>&#8220;What would my pawns say?&#8221;</em> &#8212; into:</p><ul><li><p>A set of beloved AI NPC mods</p></li><li><p>A tripled user base</p></li><li><p>And real monthly income through Player2&#8217;s revenue share program</p></li></ul><p>If you&#8217;re a mod developer, then this is your moment.</p><p>Start making your NPCs alive with <strong>Player2</strong>.<br>Build something your players will still be talking about after the game is closed.</p><p>And if you do?<br>We&#8217;d <em>love</em> to feature your mod next.</p>]]></content:encoded></item><item><title><![CDATA[Announcing the Winners of the 3rd Player2 AI NPC Jam!]]></title><description><![CDATA[Cat & Sword takes the grand prize! We awarded $12,500 across category winners, a runner-up, special awards, ten $250 places.]]></description><link>https://blog.player2.game/p/announcing-the-winners-of-the-3rd</link><guid isPermaLink="false">https://blog.player2.game/p/announcing-the-winners-of-the-3rd</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Wed, 19 Nov 2025 19:29:18 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/407a47f0-2c93-4b12-867a-fde8045f0e74_640x360.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you&#8217;ve read our earlier recaps, you already know what these jams are about: pushing AI NPCs beyond gimmicks, and toward characters that feel alive, reactive, and memorable.</p><p>This round was no exception. We saw games that turned language itself into combat, web games that felt shockingly polished for a jam, and some truly unhinged NPCs that we&#8217;ll be thinking about for a long time.</p><p>Thank you to everyone who entered, shared builds in Discord, playtested each other&#8217;s games, and helped push the Player2 ecosystem forward.</p><div><hr></div><h2>How judging worked</h2><p>We used the same philosophy as previous jams: combine <strong>human judgment</strong> with <strong>real player behavior</strong>, then resolve everything with a <strong>Condorcet voting method</strong> so that the final ranking reflects true head-to-head strength rather than just averages.</p><p>In practice, here&#8217;s what we did:</p><ol><li><p><strong>Three human judges</strong> independently ranked the games.</p></li><li><p>We also built a <strong>player metrics ranking</strong> from live data (things like unique players, time played, and how often people came back).</p></li><li><p>That player ranking was treated as <strong>two additional &#8220;votes&#8221;</strong>, alongside the judges&#8217; ballots.</p></li><li><p>We then ran all of those rankings through a <strong>Condorcet algorithm (Schulze / beat-path)</strong> to decide the final order: whenever possible, the winner is the game that wins its one-on-one matchups against all others.</p></li></ol><p>This setup rewards games that judges love <strong>and</strong> that regular players actually keep playing.</p><div><hr></div><h2>Overall Grand Prize &#8212; $5,000</h2><h3>&#127942; <a href="https://player2.game/games/dino-arnoux/cat-sword?tab=2">Cat &amp; Sword</a></h3><p><strong>Cat &amp; Sword</strong> is a chatty idle RPG where you&#8217;re not the hero&#8212;you&#8217;re the sentient sword. You banter with your catgirl wielder, assemble a guild of oddball adventurers, and dive into dungeons while your AI-driven party quips, argues, and reacts to everything you do.</p><p>Huge congrats to the team behind Cat &amp; Sword!</p><div><hr></div><h2>Category Winners &#8212; $1,000 each</h2><h3>&#128241; Best Mobile Game &#8212; <a href="https://player2.game/games/dm-dniel-nagy/word-ladder?tab=2">Word War</a></h3><p><strong>Word War</strong> turns language into a battlefield. </p><div><hr></div><h3>&#127760; Best Web Game &#8212; <a href="https://player2.game/games/jim-wizer/the-good-samaritan-of-epsilon-iv?tab=2">Epsilon IV</a></h3><p><strong>Epsilon IV</strong> allows you to step into the shoes of Cylil, a special agent of the Talos Corporation. On a return trip from a mission, you encounter a distress signal from the mining station Epsilon IV.</p><div><hr></div><h3>&#128736; Best AI Mod &#8212; <a href="https://player2.game/games/gerik-lobogris/the-storytellers-voice?tab=0">The Storyteller&#8217;s Voice</a></h3><p><strong>The Storyteller&#8217;s Voice</strong> shows what happens when you drop a dynamic narrator AI to take over Rimworld. </p><div><hr></div><h2>Runner-up &#8212; $500</h2><h3>&#129352; <a href="https://player2.game/games/zihan/incoming-title?tab=2">Overdrive Tournament</a></h3><p>The future is here! But the engines still roar! Drive in <strong>Overdrive Tournament</strong> and get teased by the announcer.</p><div><hr></div><h2>Special Awards &#8212; $500 each</h2><h3>&#127912; Best Art &#8212; <a href="https://player2.game/games/kelvyn-lee/game-019a195f?tab=2">Croaking</a></h3><p><strong>Croaking</strong> is a 2D side-scrolling kingdom builder where you play as the Frog King, leading your loyal frogfolk to gather resources, build defences, and expand your swampy realm.</p><div><hr></div><h3>&#129514; Most Unique Gameplay &#8212; <a href="https://player2.game/games/andrew-atianyi/tales-of-luanda-rise-of-magere?tab=2">Tales of Luanda: Birth of Stone</a></h3><p>Step into the ancient Rift Valley, where legends walk among warriors.</p><div><hr></div><h3>&#129322; Weirdest NPC &#8212; <a href="https://player2.game/games/teezaboo/game-74ad0e73?tab=2">Shadows in the Skin</a></h3><p><strong>In Shadows in the Skin,</strong> you are a detective who wants to take a vacation to Miami on a luxury cruise ship. Our judges loved it.</p><div><hr></div><h2>$250 Awards &#8212; Next Ten Places</h2><p>The following games each receive <strong>$250</strong>. These are projects that scored highly across judges and player behavior&#8212;games we believe are onto something and that we&#8217;d love to see continue.</p><p>(In alphabetical order:)</p><ul><li><p><strong>A.I.P.O.V</strong></p></li><li><p><strong>Cognitive Pulse</strong></p></li><li><p><strong>MLM Empire</strong></p></li><li><p><strong>Mystery Machine</strong></p></li><li><p><strong>Otherside Forest</strong></p></li><li><p><strong>Sir, Your Order, Please!?</strong></p></li><li><p><strong>Tend the Pen</strong></p></li><li><p><strong>The Collector</strong></p></li><li><p><strong>We All Lie</strong></p></li><li><p><strong>You Died, Actually</strong></p></li></ul><p>Some are tense mysteries, some are cozy, some are chaotic social experiments&#8212;but all of them did something interesting with AI NPCs, and all of them got strong engagement from players.</p><div><hr></div><h2>Thank you &#8212; and what&#8217;s next</h2><p>To everyone who:</p><ul><li><p>Pulled late nights hacking dialogue systems together</p></li><li><p>Fought with web builds and mobile controls</p></li><li><p>Wrote lore documents way too long for a jam</p></li><li><p>Hung out in the Discord, shared screenshots, and playtested each other&#8217;s games</p></li></ul><p>&#8212;Thank you. You&#8217;re the reason these jams keep getting more interesting and stranger.</p><p>If you didn&#8217;t place this time, please don&#8217;t treat this as the end. Some of the most successful games on the platform started as &#8220;jam prototypes&#8221; that didn&#8217;t win anything at first. Keep iterating, keep shipping, and keep experimenting with what AI NPCs can be.</p><p>See you at the next jam. &#128377;&#65039;&#128172;<br></p><p>Our first AI Story Jam ($2750 prizes) <a href="https://itch.io/jam/player2-ai-story-jam">https://itch.io/jam/player2-ai-story-jam</a> <br>Next AI NPC Jam ($5100 prizes) <a href="https://itch.io/jam/player2-ai-npc-jam4">https://itch.io/jam/player2-ai-npc-jam4</a></p>]]></content:encoded></item><item><title><![CDATA[Pixels2Play V0.3: Text-conditioned multi-modal game player]]></title><description><![CDATA[Multimodal foundation model play 3-D video games with and without text instructions]]></description><link>https://blog.player2.game/p/pixels2play-v03-text-conditioned</link><guid isPermaLink="false">https://blog.player2.game/p/pixels2play-v03-text-conditioned</guid><dc:creator><![CDATA[Yuguang]]></dc:creator><pubDate>Sat, 18 Oct 2025 06:36:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/775zZZXBlRo" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>Announcing Our Multimodal 3D Gaming Agent</h2><p>We&#8217;re excited to share our ICCV MMRAgI workshop paper: <strong>&#8220;Learning to play: A Multimodal Agent for 3D Game-Play.&#8221; </strong>[<a href="https://arxiv.org/abs/2510.16774">link to full-text paper</a>]</p><p>This blog post breaks down our work on a novel <strong>multimodal agent</strong> that learns to play a variety of 3D first-person games. It takes both video (what it &#8220;sees&#8221;) and text (what it&#8217;s &#8220;told&#8221;) as input and outputs keyboard and mouse actions. The model is also efficient in inference as in it can run at 20 FPS on a single RTX 5090 GPU, making it reliable to interact with the games in real-time. </p><h3>What&#8217;s New? From Cog2025 to Now</h3><p>This work significantly extends our previous <a href="https://arxiv.org/pdf/2508.14295">Cog2025 paper</a>. The four biggest improvements are:</p><ol><li><p><strong>Massive Data Expansion:</strong> We collect more than 10x labelled data and 20x more unlabelled data compared with the prior work, with a significant expansion over game categories too. </p></li><li><p><strong>Text-augmented data: </strong>We annotated all the labelled and unlabelled data with a VLM so frames will have the text instructions whenever it&#8217;s applicable (e.g., some frames will be annotated with the instruction: &#8220;approach the skull gate&#8221;).</p></li><li><p><strong>Text-Conditioning:</strong> With the help from the new dataset, the agent can now follow natural language instructions. This means you can tell it what to do during gameplay (e.g., &#8220;pick up the key&#8221;), and it will adjust its actions accordingly. To achieve this, we added a text token to the backbone transformer model so the action can attend to that. </p></li><li><p><strong>Lightweight action decoder</strong>: We introduced a separate, lightweight action decoder in addition to the main backbone transformer. This small, decoder-only model is responsible for autoregressively generating the final actions. By offloading this task from the large backbone transformer, this design greatly reduces our model&#8217;s inference latency.</p></li></ol><h3>Our Three-Stage Training Recipe</h3><p>We developed a three-stage training recipe so that we can leverage the unlabelled dataset (which is now 10x bigger than our labelled dataset and growing rapidly!).</p><p>The key was to train an <strong>IDM</strong> (Inverse Dynamics Model) on our labeled dataset. This IDM learns to watch video frames and predict the action that the player took. We then used this trained IDM to automatically generate pseudo-labels for the massive unlabeled video dataset.</p><p>This resulted in our final training pipeline:</p><ul><li><p><strong>Stage 1: IDM Training</strong> We train the IDM on our high-quality <strong>labeled data</strong> to teach it to predict actions from video.</p></li><li><p><strong>Stage 2: Policy Pre-training</strong> We pre-train the main policy agent on a <strong>mixture</strong> of our labeled data and the much larger unlabeled dataset (which now has pseudo-labels from the IDM).</p></li><li><p><strong>Stage 3: Policy Fine-tuning</strong> Finally, we fine-tune the policy exclusively on the original, high-quality <strong>labeled data</strong> to refine its performance and ensure accuracy.</p></li></ul><p>We&#8217;re excited about this new model and believe it&#8217;s a promising step toward agents that can learn from the vast amount of video content available online. Be sure to check out the full paper for all the details!</p><p></p><h1>Watch our model play games below! &#127918;</h1><h3>Non-text-conditioned game-playing</h3><p>Overall, the new model <strong>significantly outperforms</strong> our previous version (see our <a href="https://blog.player2.game/p/pixels-to-play-one-model-any-game">earlier blog post</a>) &#8212; it can handle more complex tasks, play with clearer intent, and even <strong>complete early levels</strong> of classic games like <em>Doom</em> and <em>Quake</em> with minimal human intervention. However, it still struggles with <strong>long-horizon gameplay</strong> where planning and memory are critical.</p><p>Below, we break down its performance game by game:</p><h5>Hovercraft (internal test game):</h5><p>The new model plays the Hovercraft game almost like a human player &#8212; a major improvement over the previous model!</p><div id="youtube2-k89FXNZMetI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;k89FXNZMetI&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/k89FXNZMetI?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p></p><h5>Simple-FPS (internal test game)</h5><p>In <em>Simple-FPS</em>, the model performs reasonably well. It shoots enemies with good accuracy and navigates effectively to new targets. </p><div id="youtube2-HkrfTie60yk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;HkrfTie60yk&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/HkrfTie60yk?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h5>msdos/doom:</h5><p>We&#8217;re excited to see the model <strong>complete the first level of </strong><em><strong>Doom</strong></em> with only two brief human interventions (about one second each, at 1:33 and 3:19 to trigger switches). The model consistently aims well, eliminates enemies, and completes objectives with clear intent.</p><div id="youtube2-4zd-cDTf5Kc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;4zd-cDTf5Kc&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/4zd-cDTf5Kc?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p></p><h5>msdos/quake:</h5><p>The model also completes the first level of <em>Quake</em> with two short interventions (at 1:18 and 2:03, around three seconds each). It occasionally gets stuck when the trajectory goes out of distribution or re-explores the same area. Still, this represents a significant improvement over the prior model &#8212; it completes more objectives and shows better spatial reasoning.</p><div id="youtube2-IpM-6_nBf8I" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;IpM-6_nBf8I&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/IpM-6_nBf8I?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h5>Roblox / be a shark</h5><p>In simpler games like <em>Be a Shark</em>, the new model demonstrates precise aiming and purposeful movement, showing better control.</p><div id="youtube2-uyra4YNbJ4k" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;uyra4YNbJ4k&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/uyra4YNbJ4k?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h5>Roblox / natural disaster survival</h5><p>The model successfully survives easier disaster scenarios, reacting appropriately when the threats are straightforward to avoid.</p><div id="youtube2-775zZZXBlRo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;775zZZXBlRo&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/775zZZXBlRo?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h5>msdos/need for speed</h5><p>The new model drives much more like a human player, maintaining control and finishing with a higher rank compared to the older version.</p><div id="youtube2-owsYQRFafTA" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;owsYQRFafTA&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/owsYQRFafTA?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p></p><h5>need for speed rivals</h5><p>Similarly, the model shows improved driving behavior, though it still struggles &#8212; especially since this game was <strong>not included in training</strong>.</p><div id="youtube2-Z4sSXyoaYR0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Z4sSXyoaYR0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Z4sSXyoaYR0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><h5>goat simulator 3</h5><p>The model struggles with long-horizon, open-ended games like <em>Goat Simulator 3</em> (and <em>Left 4 Dead 2</em> below) when not guided by text instructions</p><div id="youtube2-JLWd6PhqIA4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;JLWd6PhqIA4&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/JLWd6PhqIA4?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>left 4 dead 2</p><div id="youtube2-qLuWqZA9M_Q" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;qLuWqZA9M_Q&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/qLuWqZA9M_Q?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p></p><h2><strong>Text-conditioned game-playing</strong></h2><p>We evaluate the model on <em>Quake</em> and <em>Doom</em>, as these games allow checkpoint saving &#8212; ensuring that each run starts from <strong>the exact same scenario</strong> for fair comparison.</p><p>In <em>Doom</em>, we begin from a scene where the model can either <strong>pick up a shotgun</strong> or explore other areas. We test two text instructions:</p><ol><li><p>&#8220;Pick up the shotgun.&#8221;</p></li><li><p>&#8220;Proceed to the red cross gate.&#8221;</p></li></ol><p>The model follows the first instruction <strong>consistently well</strong>, while performance on the second is <strong>slightly weaker</strong>. Nonetheless, both cases show that <strong>text conditioning improves behavior</strong> compared to runs without any instruction.</p><p>no text-input:</p><div id="youtube2-EwdivBtnHnY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;EwdivBtnHnY&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/EwdivBtnHnY?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>pick up shotgun:</p><div id="youtube2-Nfg2t6sSkl0" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Nfg2t6sSkl0&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Nfg2t6sSkl0?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>proceed to the red-cross gate</p><div id="youtube2-167pRsdiusQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;167pRsdiusQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/167pRsdiusQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p></p><p>In <em>Quake</em>, we start from a scene where the model must press a wall switch to lower a bridge. Without any text prompt, the model typically fails to trigger the switch. However, with the instruction &#8220;move to the wall and press the red button,&#8221; it successfully presses the switch in some trials &#8212; as shown below:</p><p></p><p>no text-input:</p><div id="youtube2-KP_6vkFAodQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;KP_6vkFAodQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/KP_6vkFAodQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>move to the wall and press the red button:</p><div id="youtube2--dlkZ5h-KHw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;-dlkZ5h-KHw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/-dlkZ5h-KHw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[Announcing the Winners of the 2nd Player2 AI NPC Jam!]]></title><description><![CDATA[TL;DR: Congratulations to The Daily Ledger, our overall winner! We awarded $20,500 across category prizes, runner&#8209;ups, and tiered awards.]]></description><link>https://blog.player2.game/p/announcing-the-winners-of-the-2nd</link><guid isPermaLink="false">https://blog.player2.game/p/announcing-the-winners-of-the-2nd</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 02 Oct 2025 13:01:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8ab01ba9-2170-49d8-88eb-d0542902a5cd_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We started this jam to push AI&#8209;driven characters <strong>beyond the gimmick</strong>&#8212;toward living NPCs that think, react, and evolve in ways that shape the <em>entire</em> game. The submissions were wildly creative, technically ambitious, and often heart&#8209;on&#8209;sleeve. As always, there were more worthy games than prize slots, and we know any decision will disappoint some. <strong>That&#8217;s exactly why we introduced the $100 encouragement awards</strong>&#8212;to spotlight teams we believe have something special brewing and deserve a nudge to keep going.</p><blockquote><p><strong>A few words from one of the judges:</strong><br>&#8220;In general, it would be how much care the developers put into it. And we can see the best games are made with a lot of love, which is really cool to see.&#8221;</p></blockquote><div><hr></div><h2>&#127942; Overall Winner &#8212; <strong>$5,000</strong></h2><ul><li><p><strong><a href="https://player2.game/games/019948ba-b8db-7b2c-881f-b0ecc102fc72?tab=2">The Daily Ledger</a> - AI shapes items, customers and haggling. The game is also polished, with rarer items and customers as you progress, making it replayable.</strong></p></li></ul><h2>&#129351; Category Winners &#8212; <strong>$2,000</strong> each</h2><ul><li><p><strong>First Place AI NPC Mod:</strong> <em>Fallout: Echo Protocol - turns Fallout 4&#8217;s Automatron into a fully conversational</em></p></li><li><p><strong>First Place AI Social Game:</strong> <em><a href="https://player2.game/games/0198d2fe-f4e6-7529-8ec2-aba6256b5a9d?tab=2">AI ShowDown</a> - A party game where you outwit friends by asking free&#8209;form questions and guessing AI&#8209;picked characters.</em></p></li><li><p><strong>Most Creative Game:</strong> <em><a href="https://player2.game/games/01990afc-6934-7c1c-83c8-7f0cba678a1c?tab=2">Shift Protocol</a></em> - <em>A trust&#8209;dilemma escape where you talk with three AI characters as puzzles and choices branch outcomes in a re-zero fashion.</em></p></li></ul><h2>&#127894; Runner&#8209;ups &#8212; <strong>$1,000</strong> each</h2><ul><li><p><em><a href="https://player2.game/games/0198e991-205e-7414-a654-52331bcae21c?tab=2">Exile Life</a> - PSX&#8209;style survival horror where bartering meds and building trust with an AI companion matter as much as scavenging.</em></p></li><li><p><em><a href="https://player2.game/games/01995c63-18a7-7ce8-8c30-8508ea34d2f9?tab=2">Word Alchemy</a> - Combine words and let AI forge/score your creations for leaderboards. Surprisingly fun and novel.</em></p></li><li><p><em><a href="https://player2.game/games/019920a3-3c5c-7c8f-83de-c8346b9560d0?tab=2">Oio/Ois..u</a> - A watercolour-gothic puzzle tale where you chat with a snarky magic mirror and untangle glitched fairytale logic. We loved the art style.</em></p></li><li><p><em><a href="https://player2.game/games/01990219-4bac-7b59-a76c-0687c66142b7?tab=2">Eli&#8217;s Yard Sale</a> - Haggle with a hyper 10&#8209;year&#8209;old. I don&#8217;t know why it is so fun. Bought Mona Lisa for $50.</em></p></li></ul><h2>&#128181; Awards &#8212; <strong>$500</strong></h2><ul><li><p><em><a href="https://player2.game/games/0198ee42-b54f-77f7-b020-3d392e2a2fe5?tab=2">Love Finder</a> - A dating &#8220;bossfight&#8221; where improvisation and tone carry you through distinct AI personalities.</em></p></li><li><p><em><a href="https://player2.game/games/0199602b-3d3a-7b98-9913-4698361d3f98?tab=2">Gentle or Brutal</a> - Time&#8209;pressured interrogations with procedurally generated suspects. Shake them up a little?</em></p></li><li><p><em><a href="https://player2.game/games/01993890-c862-72cd-8910-5274b9eeca42?tab=2">Bar Talk: Neural Nights</a> - Make friends at bars and clubs; NPCs rate your vibe in real time&#8212;be charming or get bounced.</em></p></li><li><p><em><a href="https://player2.game/games/019908d8-32d2-7630-89fa-063c8d4638f7?tab=2">Tales of Luanda: Rise of Magere</a> - A Kenyan folklore adventure of duels and diplomacy where choices, rivals and crises are AI&#8209;driven.</em></p></li><li><p><em><a href="https://player2.game/games/01990a0c-f821-7592-9d81-d9d2c03f446a?tab=2">Investigation Session</a> - Every case is new&#8212;study the secret file, grill the suspect and pull a confession from an AI&#8209;generated criminal.</em></p></li></ul><h2>&#128181; Awards &#8212; <strong>$250</strong></h2><ul><li><p><em><a href="https://player2.game/games/019953d4-3f9c-78f5-a5f0-33cc4dedf6cc?tab=2">Please Hire Me!!!</a> - A conversational job&#8209;interview gauntlet that turns small talk into high stakes.</em></p></li><li><p><em><a href="https://player2.game/games/0198d124-90a0-724b-8e88-078f8d689deb?tab=2">Date AI</a> - A minimalist dating sim where your charm versus her code decides the outcome.</em></p></li><li><p><em><a href="https://player2.game/games/01990f4f-f6f2-746f-b9a1-66dd5a727206?tab=2">False Haven</a> - A metroidvania of illusions and discovery framed by a parent&#8217;s desperate search for their daughter.</em></p></li><li><p><em><a href="https://player2.game/games/019911f4-0e56-73ec-b491-67e868e4add2?tab=2">The Greatest Quizshow! </a>- Intellect&#8209;themed minigames scored by NPC observers.</em></p></li><li><p><em><a href="https://player2.game/games/0198eaff-3139-73f7-84f0-1acb77ad282c?tab=2">The Watcher</a> - Tactical FPS infiltration guided by an Overwatch&#8209;style AI operator.</em></p></li><li><p><em><a href="https://player2.game/games/0198d492-101d-7659-bc92-6d6e4c621f86?tab=2">Who Killed My Sister</a> - First&#8209;day&#8209;on&#8209;the&#8209;force detective roleplay that leans into conversational sleuthing.</em></p></li><li><p><em><a href="https://player2.game/games/01994176-27f4-7bc4-89fe-c4f13c01f9d3?tab=2">Eastshore</a>- Colony&#8209;builder where villagers banter as they gather, build and struggle to survive in a strange land.</em></p></li><li><p><em><a href="https://player2.game/games/0198f762-85d4-75f6-938d-439668ad953f?tab=2">Who Killed The Guy Who Died?</a> - A tongue&#8209;in&#8209;cheek whodunnit in a grand mansion&#8212;interrogate everyone and embrace the absurd.</em></p></li><li><p><em><a href="https://player2.game/games/0198f41f-7b61-7675-a447-9cbf83c7b9f6?tab=2">A Village Tales</a> - Investigate a missing&#8209;person case across an AI&#8209;driven village where every villager talks back.</em></p></li><li><p><em><a href="https://player2.game/games/01993617-1308-7ce8-90ac-02b7a30b936b?tab=2">Crown and Counsel</a> - Rule by typing anything&#8212;an AI &#8220;game master&#8221; generates crises, interprets commands and narrates consequences.</em></p></li></ul><h2>&#128181; Encouragement Awards &#8212; <strong>$100</strong></h2><ul><li><p><em><a href="https://player2.game/games/01990d47-a280-78fd-af03-6ec691f06fdc?tab=2">Take Out</a> - Serve orders at a haunted kiosk across five unnerving nights while mastering recipes and surviving the shift.</em></p></li><li><p><em><a href="https://player2.game/games/0198d74b-d064-799b-91f9-474c0be99c26?tab=2">Loot of the Living Dead</a> - An AI&#8209;powered game show staged in a graveyard. Did I say it is a show?</em></p></li><li><p><em><a href="https://player2.game/games/0198d823-eeca-7475-b725-93f13604a89b?tab=2">Chocolates for Mother</a> - Hustle chocolates door&#8209;to&#8209;door to save your mom&#8212;simple premise, earnest heart.</em></p></li><li><p><em><a href="https://player2.game/games/01995f06-f4df-7d62-a8fc-0f3ec61fe05a?tab=2">Crystal Bound</a> - Command chess pieces with natural&#8209;language instructions in a puzzle&#8209;forward twist on tactics.</em></p></li></ul><div><hr></div><h2>How we judged (fair &amp; transparent)</h2><p>As in our <a href="https://blog.player2.game/p/announcing-the-winner-of-the-first">first jam&#8217;s announcement</a>, we combined <strong>human judging</strong> with <strong>player behaviour</strong>:</p><ul><li><p>Multiple judges submitted ranked lists.</p></li><li><p>We included <strong>player&#8209;metrics rankings</strong> (DAU, time spent, retention) as <strong>two votes</strong> alongside judge ballots.</p></li><li><p>We aggregated results using <strong>Condorcet methods</strong> on head&#8209;to&#8209;head matchups.</p></li><li><p>Category awards were informed by the data <em>and</em> judge discussion to celebrate standout achievements across different design goals.</p></li></ul><div><hr></div><h2>What&#8217;s next</h2><p>We will reach out to the winners through Itch.io to arrange the prizes, so please keep an eye out.</p><p>The games are live at <a href="https://player2.game/">https://player2.game/</a> &#8212;jump in to <strong>play</strong> the winners, try the experiments, and leave feedback that helps teams grow. If your game didn&#8217;t place, <strong>don&#8217;t stop</strong>: the community&#8212;and the future of AI&#8209;driven characters&#8212;moves forward with every iteration. Join our next jam at <a href="https://itch.io/jam/player2-ai-npc-3">https://itch.io/jam/player2-ai-npc-3</a>.</p><p>Thanks again to everyone who built, tested, judged, streamed, and cheered. We&#8217;re excited to keep prototyping the future of intelligent NPCs&#8212;together.</p>]]></content:encoded></item><item><title><![CDATA[Player2.Game Revenue Share Program Updates for Developers]]></title><description><![CDATA[TL;DR: Higher revenue share, simpler rules, easier prizes&#8212;now with a revenue-funded pool. &#128640;]]></description><link>https://blog.player2.game/p/player2game-revenue-share-program</link><guid isPermaLink="false">https://blog.player2.game/p/player2game-revenue-share-program</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Mon, 22 Sep 2025 12:16:01 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9076b3a0-6d8b-419e-a39e-68464d813379_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What&#8217;s changing (and why it&#8217;s great)</h2><h3>1) Revenue Share &#8212; Boosted &amp; Simplified</h3><ul><li><p><strong>Patron revenue share increases from 20% &#8594; 60%</strong> for creators.</p></li><li><p><strong>Lower minimum threshold</strong> to join the program, so more games can start earning sooner.</p></li><li><p>The <strong>reward pool is now fully funded by actual platform revenue</strong> (moving away from the old <strong>$200 &#215; qualifying games/month</strong> model).</p></li><li><p>We picked <strong>60%</strong> so the <strong>total pool this month is the same as last month,</strong> compared to if we hadn&#8217;t changed the funding approach. This keeps continuity while aligning rewards directly with platform performance.</p></li></ul><p><strong>Why this helps:</strong> The pool now scales naturally with the community. As Player2.Game grows, so does the upside for developers&#8212;without extra rules or math to track.</p><div><hr></div><h3>2) Rewards &#8212; Game Jams &gt; Bounties &amp; Bonuses</h3><p>We&#8217;re shifting additional rewards to <strong>recurring Game Jams every 2&#8211;3 months</strong> with <strong>cash prizes</strong> (on top of your revenue share).</p><p>To keep things clear&#8212;and get <strong>more</strong> creators paid&#8212;we&#8217;re <strong>retiring</strong>:</p><ul><li><p>the <strong>$3,000 bounty</strong> (first AI mod in a game earning &gt; <strong>$100/month</strong>), and</p></li><li><p>the <strong>$500 bonus</strong> (for any game hitting <strong>$50/month</strong> for the first time).</p></li></ul><p><strong>Why the switch:</strong> Very few developers actually received those bounty/bonus payouts, while <strong>Game Jam prizes have consistently reached more creators</strong>. Jams are fun, community-driven, and much easier paths to prizes.</p><p>You can find our next game jam from <a href="https://itch.io/jam/player2-ai-npc-3">https://itch.io/jam/player2-ai-npc-3</a>.</p><div><hr></div><h2>Why we&#8217;re doing this</h2><ul><li><p><strong>More creators share in the upside.</strong> A larger slice of Patron revenue + a revenue-funded pool means rewards track the real value the platform creates.</p></li><li><p><strong>Clearer, simpler payouts.</strong> Less fine print, more straightforward earnings.</p></li><li><p><strong>Easier prizes.</strong> Game Jams reliably put cash in more builders&#8217; hands than the old bounty/bonus programs.</p></li><li><p><strong>Community energy.</strong> Jams bring momentum, collaboration, and visibility to your projects. &#127942;</p></li></ul><div><hr></div><h2>What you can do next</h2><ul><li><p><strong>Ship (or update) your game</strong> to benefit from the 60% Patron share and lower threshold.</p></li><li><p><strong>Start prepping for the next Game Jam.</strong> These will run <strong>every 2&#8211;3 months</strong>, with prize details announced ahead of time.</p></li><li><p><strong>Ask questions.</strong> We&#8217;re happy to clarify anything about the updated revenue share or jam schedule on Discord.</p></li></ul><div><hr></div><h2>FAQ</h2><p><strong>Does the new 60% share reduce the pool?</strong><br>No. We selected <strong>60%</strong> to keep the <strong>pool the same this month vs. last month</strong> relative to the previous funding method, while making it scale with real revenue going forward.</p><p><strong>Why retire the bounty/bonus programs?</strong><br>They were high-bar, low-reach: few developers qualified. Game Jams consistently reward <strong>more</strong> creators and are simpler to understand and plan for.</p><p><strong>How often are Game Jams?</strong><br>Every <strong>2&#8211;3 months</strong>, with <strong>cash prizes</strong> on top of your revenue share. You can find our next game jam from <a href="https://itch.io/jam/player2-ai-npc-3">https://itch.io/jam/player2-ai-npc-3</a>.</p><div><hr></div><p>Thanks for building with us. We&#8217;re excited to see what you make next&#8212;and to reward more of you along the way. &#128153;</p>]]></content:encoded></item><item><title><![CDATA[Pixels2Play: One model, any game]]></title><description><![CDATA[Watch our foundation model play a variety of 3D games.]]></description><link>https://blog.player2.game/p/pixels-to-play-one-model-any-game</link><guid isPermaLink="false">https://blog.player2.game/p/pixels-to-play-one-model-any-game</guid><dc:creator><![CDATA[jj]]></dc:creator><pubDate>Tue, 19 Aug 2025 23:09:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/Ge5lLZfgNRs" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This blog post accompanies our first academic <a href="https://arxiv.org/abs/2508.14295">paper</a>, published at the <a href="https://cog2025.inesc-id.pt/">Conference on Games 2025</a>.</p><p>We outlined our work building an initial version of our a high-speed vision to action model Pixels2Play-0.1 (P2P0.1). Please see the <a href="https://arxiv.org/abs/2508.14295">paper</a> for more details about our approach.</p><p>Below we demonstrate our AI playing a number of different games. All recordings are from the first recording (no cherrypicking) with no interventions. The same model is used to play all games. The game play is certainly not perfect, but we can see the model is beginning to understand how to participate in a variety of games. There is lots of room from improvement.</p><p>Feel free to suggest games you&#8217;d like to see our AI play in future in the comments below.</p><p></p><p>Roblox / Be a shark</p><div id="youtube2-Ge5lLZfgNRs" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Ge5lLZfgNRs&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Ge5lLZfgNRs?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Roblox / Be a snake</p><div id="youtube2-01KmVyCOFtc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;01KmVyCOFtc&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/01KmVyCOFtc?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>MS-DOS / Need for speed</p><div id="youtube2-dCU-J4xfEAU" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;dCU-J4xfEAU&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/dCU-J4xfEAU?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Doom</p><div id="youtube2-eHVs9BhJ8Nw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;eHVs9BhJ8Nw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/eHVs9BhJ8Nw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Quake</p><div id="youtube2-EUlyd8nkIxQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;EUlyd8nkIxQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/EUlyd8nkIxQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Simple FPS (internal test game)</p><div id="youtube2-uC0BjMHZ43M" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;uC0BjMHZ43M&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/uC0BjMHZ43M?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Hovercraft (internal test game)</p><div id="youtube2-8EGwKDao7xg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;8EGwKDao7xg&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/8EGwKDao7xg?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Need for Speed: Hot Pursuit</p><div id="youtube2-pGDAh12SpUI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;pGDAh12SpUI&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/pGDAh12SpUI?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Goat Simulator 3</p><div id="youtube2-21bRl3YApaQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;21bRl3YApaQ&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/21bRl3YApaQ?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Need for Speed: Rivals (note: this game was not seen during model training and while the model performs fairly poorly you can see that it can generalize enough from games seen during training to complete the lap).</p><div id="youtube2-mGh826jbCYc" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;mGh826jbCYc&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/mGh826jbCYc?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div>]]></content:encoded></item><item><title><![CDATA[Announcing the Winner of the FIRST Player2 AI NPC Jam]]></title><description><![CDATA[Escape Protocol takes the Condorcet-crowned top spot!]]></description><link>https://blog.player2.game/p/announcing-the-winner-of-the-first</link><guid isPermaLink="false">https://blog.player2.game/p/announcing-the-winner-of-the-first</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 14 Aug 2025 12:39:42 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/89760fc6-8130-4c3d-bd40-41c25bf93ccb_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>TL;DR:</strong> <em>Escape Protocol</em> takes the Condorcet-crowned top spot! We had <strong>200 participants</strong>, <strong>56 entries</strong>, and <strong>$10,750</strong> in prizes across the Top 10 and 10 Special Mentions. Explore every submission here: <a href="https://itch.io/jam/ai-npc-jam/entries">https://itch.io/jam/ai-npc-jam/entries</a></p><div><hr></div><h1>Why we ran this jam</h1><p>We kicked off a <strong>global game jam</strong> to push AI-driven characters <strong>beyond the gimmick</strong>&#8212;to see NPCs that think, react, and adapt in ways that meaningfully change how games play.</p><ul><li><p>Jam page: <a href="https://itch.io/jam/ai-npc-jam">https://itch.io/jam/ai-npc-jam</a></p></li><li><p>Play the games: <a href="https://player2.game/discover/games">https://player2.game/discover/games</a></p></li></ul><h2>Theme: <em>Beyond AI Gimmick</em></h2><p>Build AI characters that are part of the game&#8217;s <strong>fabric</strong>, not bolt-ons:</p><ul><li><p><strong>React &amp; evolve</strong> with game state, player choices, and world events.</p></li><li><p><strong>Enhance core mechanics</strong>&#8212;combat, puzzles, exploration, and social systems.</p></li><li><p><strong>Create emergent moments</strong> that leave players with unpredictable, memorable stories.</p></li></ul><p>We want intelligent NPCs rooted in your game&#8217;s logic and lore, <strong>shaping and shaped by</strong> everything else going on.</p><div><hr></div><h1>About the jam (what it took to enter)</h1><ul><li><p>Participants needed to join our <a href="https://player2.game/discord">Discord</a> and click <strong>&#8220;I am in an official Player2 Game Jam.&#8221;</strong></p></li><li><p>Use <strong>any game engine</strong> you like.</p></li><li><p><strong>Integrate the free Player2 API</strong> to drive all NPC intelligence.</p></li><li><p>Submit a <strong>playable demo or download link</strong> by the deadline.</p></li></ul><h3>Prizes</h3><ul><li><p>1st &#8211; <strong>$5,000</strong></p></li><li><p>2nd &#8211; <strong>$2,000</strong></p></li><li><p>3rd &#8211; <strong>$1,000</strong></p></li><li><p>4th&#8211;5th &#8211; <strong>$500</strong> each</p></li><li><p>6th&#8211;10th &#8211; <strong>$250</strong> each</p></li><li><p><strong>Top 10</strong>: Featured in the <strong>Player2 App</strong></p></li></ul><div><hr></div><h1>How the judging worked (fair and transparent)</h1><p>We combined <strong>human judgment</strong> with <strong>player behavior</strong>:</p><ol><li><p><strong>Six human judges</strong> each ranked their Top 10.</p></li><li><p>During the judging window, we tracked <strong>DAU, time spent, and retention</strong> for every entry.</p></li><li><p>We treated the <strong>player-metrics ranking as three votes</strong>, alongside the <strong>six judge votes</strong>&#8212;a <strong>6:3 human vs. metrics</strong> balance.</p></li><li><p>We ran the combined rankings through a <strong>Condorcet (minimax) voting algorithm</strong>&#8212;a head-to-head method that selects the entry with the strongest overall pairwise performance. It&#8217;s more robust&#8212;and fair&#8212;than simple averages.</p></li></ol><div><hr></div><h1>&#127942; Winners</h1><p><strong>1) Escape Protocol &#8212; $5,000 (Condorcet winner)</strong><br><em>Super Creative! We felt so immersed playing this.</em></p><p><strong>2) Watch This, Chat &#8212; $2,000</strong><br><em>Trying to convince strangers to get in your car is hard. Trying to convince AI, even harder and very, very weird!</em></p><p><strong>3) Social Valley &#8212; $1,000</strong><br><em>This brings a whole new dimension to Stardew Valley! Now we really get to know the NPCs well!</em></p><p><strong>4) Almost Somewhere &#8212; $500</strong><br><em>Very creative&#8230;and creepy! Great immersive experience and we loved the asthetics!</em></p><p><strong>5) Your Honor, WTF?! &#8212; $500</strong><br><em>Super bizarre and weird. This is a great way to settle arguments IRL!</em></p><p><strong>6) Player2 NPC &#8212; $250</strong><br><em>Who doesn&#8217;t love bossing NPCs around in Minecraft! </em></p><p><strong>7) Valhart &#8212; $250</strong><br><em>This feels like Hogwarts all over the place! Get that AI to teach you some spells. Ya gotta find her first!!</em></p><p><strong>8) Village Builder AI &#8212; $250</strong><br><em>Fun grindy game with NPCs that have weird personalities. The NPCs think they help, but do they really???</em></p><p><strong>9) Murder Tavern &#8212; $250</strong><br><em>Chaotic fun&#8212;AI patrons gossip, scheme, and turn every bar brawl into wild, emergent stories!</em></p><p><strong>10) Silent Therapy &#8212; $250</strong><br><em>Try and help this guy? It takes a lot of effort and deduction to figure out exactly what he needs!</em></p><blockquote><p>You can find <strong>All Top 10</strong> entries in the <strong>Player2 App </strong>and play them now. Congratulations!</p></blockquote><div><hr></div><h1>&#127894;&#65039; Special Mentions &#8212; $50 each (encouragement)</h1><p>These awards go to games with big potential or standout creativity that could shine with more polish, or missed the top 10 only marginally. Consider this both <strong>encouragement</strong> and a <strong>vote of confidence</strong>.</p><ul><li><p><strong>Vampire Cafe!</strong> &#8212; <em>Awesome twist on a great genre! This was fun!!</em></p></li><li><p><strong>Cursed Diamonds</strong> &#8212; <em>This is an AI mystery at its finest! You really WANT to help her out, but can you, really?</em></p></li><li><p><strong>Deltarune AI</strong> &#8212; <em>Crazy personalities in Deltarune! Who&#8217;d have thought that&#8217;s what they were thinking??</em></p></li><li><p><strong>Sticky Situation: Werewolf in the Basement</strong> &#8212; <em>The AI&#8217;s in this &#8220;multiplayer&#8221; deduction/werewolf game were very sneaky&#8230;and mean!</em></p></li><li><p><strong>The Last Fortress</strong> &#8212; <em>Love the look and feel of this. It gets pretty deep with AI in SPAAAAAAAACE!</em></p></li><li><p><strong>McGibble</strong> &#8212; <em>I love this so much! This game is so weird. You will remember this for quite a while!</em></p></li><li><p><strong>Reign or Ruin</strong> &#8212; <em>Definitely don&#8217;t tick off the villagers in this one! They will destroy you!!</em></p></li><li><p><strong>SchoolCheater</strong> &#8212; <em>A game about cheating at school and not getting caught. Don&#8217;t try this IRL! It&#8217;s actually kinda hard&#8230;.the game, I mean.</em></p></li><li><p><strong>InnerLife - AI-Powered Life Simulator</strong> &#8212; <em>An uncanny life sim where your AI generates your life events.</em></p></li></ul><p>There are so many good games with potential in the jam, and we couldn&#8217;t have listed them all. What the Hell, RAINSHIFT, Hinari The Nine Tailed Fox, Interrogator Vale, Murder In The Building, to name a few more. </p><p>We are overwhelmed by the quality and quantity of the submissions and grateful to the active developer community we have built through this. Read on if you didn&#8217;t get top 10, since the journey is just beginning from here.</p><div><hr></div><h1>By the numbers</h1><ul><li><p><strong>200</strong> participants</p></li><li><p><strong>56</strong> submitted games</p></li><li><p><strong>10</strong> winners, <strong>10</strong> special mentions</p></li><li><p><strong>$10,750</strong> awarded in total</p></li></ul><p>Dive into all entries and discover your new favourites: <a href="https://itch.io/jam/ai-npc-jam/entries">https://itch.io/jam/ai-npc-jam/entries</a></p><div><hr></div><h1>What&#8217;s next: our new jam (bigger prize!) &#128640;</h1><p>We&#8217;re launching the next chapter: <strong>It&#8217;s Alive! AI NPC Jam</strong><br>&#128073; <a href="https://itch.io/jam/its-alive-ai-npc">https://itch.io/jam/its-alive-ai-npc</a></p><p><strong>Who can enter?</strong> Everyone is welcome, even if you won this game jam. You can not enter with games that are already receiving revenue share with us <strong>or</strong> that have already been placed in our previous game jams. </p><p>You can still participate in the next jam if you got a special mention. Come join us with extensive improvements, fresh builds and fresh ideas!</p><p>Let&#8217;s keep prototyping the future of intelligent characters&#8212;<strong>together</strong>. See you in the next jam!</p>]]></content:encoded></item><item><title><![CDATA[Building AI NPCs in Minutes with the Player2 Unity SDK]]></title><description><![CDATA[Prerequisites]]></description><link>https://blog.player2.game/p/building-ai-npcs-in-minutes-with</link><guid isPermaLink="false">https://blog.player2.game/p/building-ai-npcs-in-minutes-with</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Tue, 29 Jul 2025 08:45:14 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/97a2f9c4-18f0-49f9-b621-5fc824212795_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>Prerequisites</h2><ul><li><p><strong>Unity 6 or newer</strong></p><ul><li><p>Scripts target <code>.NET Standard&#8239;2.1</code> and use <code>async/await</code>.</p></li></ul></li><li><p><strong>TextMesh&#8239;Pro</strong></p><ul><li><p>Required for the sample chat UI.</p></li></ul></li><li><p><strong>Newtonsoft.Json</strong></p><ul><li><p>Pulled in via UPM; serializes request/response payloads.</p></li></ul></li><li><p><strong>Player2 Client</strong></p><ul><li><p>Download from <a href="https://player2.game">player2.game</a>.</p></li></ul></li></ul><h2>Step&#8209;by&#8209;Step Setup</h2><h3>1. Add an NpcManager to Your Scene</h3><p>Insert a <strong>NpcManager</strong> (singleton) under your scene root. Only one can exist per scene.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1dFk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1dFk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 424w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 848w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 1272w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1dFk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png" width="772" height="280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:280,&quot;width&quot;:772,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Adding NpcManager to the hierarchy&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Adding NpcManager to the hierarchy" title="Adding NpcManager to the hierarchy" srcset="https://substackcdn.com/image/fetch/$s_!1dFk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 424w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 848w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 1272w, https://substackcdn.com/image/fetch/$s_!1dFk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee4f03b0-33e0-4122-b343-bbc810822eee_772x280.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>2. Configure the NpcManager</h3><ol><li><p><strong>Game&#8239;ID</strong>: Name your game or mod.</p></li><li><p><strong>Functions &#8594; +</strong>: Define each action the LLM can call:</p><ul><li><p><strong>Name</strong>: Identifier (e.g. <code>flame</code>)</p></li><li><p><strong>Description</strong>: Hint for the model</p></li><li><p><strong>Arguments</strong>: Typed parameters (e.g. <code>radius: number</code>), mark required as needed.</p></li></ul></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GVw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GVw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 424w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 848w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 1272w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GVw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png" width="607" height="477" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/951c2007-6764-4f26-8665-6648388930c1_607x477.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:477,&quot;width&quot;:607,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;NpcManager inspector configured&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="NpcManager inspector configured" title="NpcManager inspector configured" srcset="https://substackcdn.com/image/fetch/$s_!GVw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 424w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 848w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 1272w, https://substackcdn.com/image/fetch/$s_!GVw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F951c2007-6764-4f26-8665-6648388930c1_607x477.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>In this example, we expose <code>flame(radius:number)</code> to spawn a fiery VFX cloud.</p></blockquote><h3>3. Attach Player2Npc to Your NPC</h3><p>Select the GameObject representing your NPC (e.g. <code>Person 1</code>) and add <strong>Player2Npc.cs</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0pLX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0pLX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 424w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 848w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 1272w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0pLX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png" width="825" height="186" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:186,&quot;width&quot;:825,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Hierarchy showing Person&nbsp;1 with Player2Npc&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hierarchy showing Person&nbsp;1 with Player2Npc" title="Hierarchy showing Person&nbsp;1 with Player2Npc" srcset="https://substackcdn.com/image/fetch/$s_!0pLX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 424w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 848w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 1272w, https://substackcdn.com/image/fetch/$s_!0pLX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83883b11-08ef-40e6-b246-3963d09c2af3_825x186.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>4. Set Up the Player2Npc Component</h3><ul><li><p><strong>Npc&#8239;Manager</strong>: Drag in your scene&#8217;s <code>NpcManager</code>.</p></li><li><p><strong>Short / Full Name</strong>: For UI labels.</p></li><li><p><strong>Character Description</strong>: The persona text sent at spawn.</p></li><li><p><strong>Input Field / Output Message</strong>: Link your TextMesh&#8239;Pro components.</p></li><li><p><strong>Persistent</strong>: Tick if the NPC should survive client restarts.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qYGJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qYGJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 424w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 848w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 1272w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qYGJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png" width="1355" height="338" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:338,&quot;width&quot;:1355,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Player2Npc inspector settings&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Player2Npc inspector settings" title="Player2Npc inspector settings" srcset="https://substackcdn.com/image/fetch/$s_!qYGJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 424w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 848w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 1272w, https://substackcdn.com/image/fetch/$s_!qYGJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdbfa068e-4e95-4e4e-9833-95b149883879_1355x338.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Now press <strong>Play</strong>&#8212;your NPC is live and ready to chat!</p><div><hr></div><h2>Adding Rich NPC Functions (Optional)</h2><p>To handle LLM-decided actions:</p><p>Create a handler script (e.g., <code>ExampleFunctionHandler.cs</code>) in your scene root:</p><pre><code>using UnityEngine;

public class ExampleFunctionHandler : MonoBehaviour
{
    public void HandleFunctionCall(FunctionCall call)
    {
        if (call.name == "flame")
        {
            float radius = call.ArgumentAsFloat("radius", defaultValue: 3f);
            SpawnFlameCloud(radius);
        }
    }

    void SpawnFlameCloud(float r)
    {
        // Your VFX / gameplay code here
    }
}</code></pre><p>In <strong>NpcManager &#8594; Function Handler</strong>:</p><ul><li><p>Click <strong>+</strong></p></li><li><p>Drag the object with <code>ExampleFunctionHandler</code></p></li><li><p>Select <strong>ExampleFunctionHandler &#8594; HandleFunctionCall</strong></p></li></ul><p>Whenever the model invokes <code>flame</code>, your handler runs on the main thread, so you never manually intervene.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7KIw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7KIw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 424w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 848w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 1272w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7KIw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png" width="985" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:985,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Selecting HandleFunctionCall in the UnityEvent dropdown&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Selecting HandleFunctionCall in the UnityEvent dropdown" title="Selecting HandleFunctionCall in the UnityEvent dropdown" srcset="https://substackcdn.com/image/fetch/$s_!7KIw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 424w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 848w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 1272w, https://substackcdn.com/image/fetch/$s_!7KIw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5fc285b-fecb-4e17-a11c-d788f5abe16b_985x971.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Under the Hood: Quick Architecture Tour</h2><ul><li><p><code>NpcManager</code></p><ul><li><p>Scene&#8209;singleton holding configuration and the function catalog.</p></li><li><p>Serializes to <code>snake_case</code> via Newtonsoft.Json.</p></li></ul></li><li><p><code>Player2Npc</code></p><ul><li><p>Spawns NPCs (<code>POST /npcs</code>) and routes UI events to <code>SendChatMessageAsync</code>.</p></li></ul></li><li><p><code>Player2NpcResponseListener</code></p><ul><li><p>Consumes <code>text/event-stream</code> via <code>UnityWebRequest</code>; raises UnityEvents for text and function calls.</p></li></ul></li><li><p><code>ExampleFunctionHandler</code></p><ul><li><p>Demonstrates reading function arguments and executing gameplay code.</p></li></ul></li></ul><div><hr></div><p>&#10024;&#8239;That&#8217;s it! With two inspector tweaks and a tiny handler script, you have <strong>LLM&#8209;powered, function&#8209;calling NPCs</strong> in Unity. Layer on animations, speech synthesis, or your favorite dialogue UI&#8212;and ship your game!</p>]]></content:encoded></item><item><title><![CDATA[Introducing the Player2 AI Mod Bounty Program]]></title><description><![CDATA[$3000 cash reward for building engaging AI NPC mod]]></description><link>https://blog.player2.game/p/introducing-the-player2-ai-mod-bounty</link><guid isPermaLink="false">https://blog.player2.game/p/introducing-the-player2-ai-mod-bounty</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Sat, 12 Jul 2025 12:44:36 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/54515c06-64f0-4989-96ac-d7f208ff23b1_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A new era of gaming is upon us&#8212;and it&#8217;s being powered by indie developers. At Player2, our mission is simple: <strong>build, play, and share AI NPC mods and games</strong>. Today, we&#8217;re thrilled to launch a <strong>special AI Mod Bounty Program</strong> in addition to our <a href="https://itch.io/jam/ai-npc-jam">player2 Game Jams</a>, offering cash rewards to the first creators who bring truly engaging AI NPCs to specific, community-voted games.</p><p>[The bounty program is outdated]</p><h2>Why AI NPC Mods Matter</h2><p>AI NPCs are more than just scripted bots&#8212;they can react, converse, and even drive emergent gameplay that keeps you coming back for more. But too often, AI characters feel like stand-alone novelties rather than fully integrated parts of the gaming experience. We believe:</p><ul><li><p><strong>AI should serve the game</strong>, not the other way around.</p></li><li><p><strong>Indie developers</strong>&#8212;not faceless algorithms&#8212;will shape the next generation of player experiences.</p></li><li><p>Great AI NPC mods can breathe new life into beloved titles, creating fresh stories and challenges.</p></li></ul><p>By incentivising creative modders, we accelerate the pace of innovation and reward those who build rich, safe, and sustainable AI-driven experiences.</p><div><hr></div><h2>Our Proven Track Record</h2><p>Some of our most successful creators have already demonstrated what&#8217;s possible:</p><ul><li><p><strong>DeltaBlade (Bannerlord):</strong> ChatAi brings AI-driven conversations to Mount &amp; Blade II: Bannerlord, enabling NPCs to respond dynamically based on their personality, traits, and in-game context.</p></li><li><p><strong>Gerik (Rimworld):</strong> Have you ever wondered what your colonists think about their daily lives? With EchoColony, you can talk to them directly.</p></li><li><p><strong>Conczin (Minecraft)</strong>: In MCA Reborn, say goodbye to lifeless villagers&#8212;Minecraft Comes Alive Reborn turns them into chatty, marryable, and even hireable companions for a true RPG experience!</p></li><li><p><strong>TartaricAcid (Minecraft): Touhou Little Maid</strong> added cute maids to Minecraft, who can help with battles, farming and other tasks.</p></li></ul><p>Each of these mods not only crossed $100 in monthly revenue share&#8212;but <strong>far</strong> exceeded it&#8212;proving that players crave intelligent, interactive NPCs. For more details about these games and suggestions from the developers about how to build an immersive AI NPC mod, read <a href="https://blog.player2.game/p/ai-npc-games-were-too-hard-for-players">this blog post</a>.</p><div><hr></div><h2>The Bounty Program: How It Works</h2><p>To reward and accelerate the next wave of AI NPC mods, we&#8217;re putting <strong>$3,000</strong> on the table for the <strong>first mod</strong> that hits <strong>$100</strong> in Player2 revenue share <strong>within any one month</strong>. Here&#8217;s the rundown:</p><ol><li><p><strong>Games List (Will be continuously updated)</strong></p><ul><li><p>Undertale</p></li><li><p>Terraria</p></li><li><p>Gmod (Garry&#8217;s Mod)</p></li><li><p>Skyrim</p></li><li><p>Fallout</p></li><li><p>Lethal Company</p></li><li><p>Sim4</p></li><li><p>Stardew Valley</p></li><li><p>Project Zomboid</p></li></ul></li><li><p><strong>Prize</strong></p><ul><li><p><strong>$3,000</strong> awarded to the <em>first</em> qualifying mod on each game.</p></li><li><p>Bounty is paid out once your mod reaches $100 in revenue share within a single month.</p></li></ul></li><li><p><strong>Qualification Criteria</strong></p><ul><li><p><strong>Approval by Player2</strong>: We&#8217;ll verify that your mod is safe, fun, and built on our APIs.</p></li><li><p><strong>API Integration</strong>: Must leverage Player2&#8217;s SDK for chat and in-game actions.</p></li><li><p><strong>Developer Ownership</strong>: You retain full rights, still qualify for the existing revenue share programs from us and commit to ongoing updates.</p></li><li><p><strong>User Interaction</strong>: NPCs must be able to chat with players and perform at least basic in-game actions, with more advanced features added over time.</p></li><li><p><strong>First to Threshold</strong>: Bounty goes to the first qualifying mod per game. Every other mod/game still qualifies for the $500 top-up when they hit $50 in revenue share within a single month.</p></li></ul></li><li><p><strong>Launch Date</strong></p><ul><li><p>The program kicks off <strong>today, July 12, 2025</strong>.</p></li></ul></li></ol><div><hr></div><h2>Why You Should Participate</h2><ul><li><p><strong>Cash Reward</strong>: $3,000&#8212;enough to fund your next project.</p></li><li><p><strong>Visibility</strong>: Featured on Player2&#8217;s homepage, blog post, and social channels.</p></li><li><p><strong>Community Impact</strong>: Be remembered as a pioneer in transforming classic titles with AI.</p></li><li><p><strong>Long-Term Growth</strong>: Winning mods often go on to earn thousands in recurring revenue share.</p></li></ul><p>Whether you&#8217;re a seasoned modder or an aspiring indie dev, there&#8217;s never been a better time to experiment with AI NPCs. Our platform handles the heavy lifting&#8212;authentication, rate-limiting, automatic scaling, revenue generation&#8212;so you can focus on creativity.</p><div><hr></div><h2>Join the Conversation</h2><p>Players: We&#8217;ll continue to expand the bounty list based on <strong>your</strong> feedback. <strong>What games do you want to see come alive with AI NPCs?</strong> Drop your suggestions in our Discord with #Player2AIBounty, and we may add them to the list.</p><p>Creators: Ready to get started?</p><ol><li><p>Join our Discord <a href="https://player2.game/discord">https://player2.game/discord</a></p></li><li><p>Grab the player2 App from <a href="https://player2.game">https://player2.game</a> and explore our live API docs from <a href="http://localhost:4315/docs">http://localhost:4315/docs</a></p></li><li><p>Build your mod, send a test version to Itsuka on Discord</p></li><li><p>Launch it to our community&#8212;and claim your bounty!</p></li></ol><p>Let&#8217;s empower the indie community to shape the future of interactive storytelling. We can&#8217;t wait to see what you build.</p><p>Happy modding!<br>&#8212; The Player2 Team</p>]]></content:encoded></item><item><title><![CDATA[Say Hello to the Player2 NPC API ]]></title><description><![CDATA[Conversation History Simplified &#128640;]]></description><link>https://blog.player2.game/p/say-hello-to-the-player2-npc-api</link><guid isPermaLink="false">https://blog.player2.game/p/say-hello-to-the-player2-npc-api</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 10 Jul 2025 11:17:59 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/79ba3456-19b9-4ab0-a3fc-e95dfad9306e_2666x2519.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We just shipped a brand-new set of <code>NPC</code> endpoints for the Player2 developer platform. If you&#8217;ve ever wrestled with rolling your own conversation buffer, counting tokens, or retrying requests when your in-game AI buddy got too chatty, you can breathe easy: <strong>we&#8217;ll do it all for you now</strong>.</p><div><hr></div><h3>What&#8217;s in the box?</h3><p><strong>Endpoints:</strong></p><ul><li><p><strong>Spawn an NPC</strong><br><code>POST /npc/games/{game_id}/npcs/spawn</code><br>Spin up an LLM-powered NPC on the client.</p></li><li><p><strong>Chat with an NPC</strong><br><code>POST /npc/games/{game_id}/npcs/{npc_id}/chat</code><br>Send a single chat line to that NPC.</p></li><li><p><strong>Stream NPC replies</strong><br><code>GET /npc/games/{game_id}/npcs/responses</code><br>Receive the model&#8217;s replies as an SSE stream.</p></li><li><p><strong>Despawn an NPC</strong><br><code>POST /npc/games/{game_id}/npcs/{npc_id}/kill</code><br>Cleanly remove the NPC when you&#8217;re done.</p></li></ul><p>No more manually assembling chat histories or juggling token counts&#8212;just hit <strong>chat</strong> and keep playing.<br><em>(Full schema in the bundled OpenAPI spec under the </em><code>NPC</code><em> tag.)</em></p><div><hr></div><h3>Real-world cleanup: AI Gods before &amp; after</h3><p><strong>Old flow</strong><br>Our sample mod used to maintain a <code>ConversationHistory</code> object, merge prompts, and orchestrate a multi-step CompletableFuture dance on every player message:</p><pre><code>updateNewCharacter(mod)
    .thenComposeAsync(newChar -&gt; {
        String processed = mod.addPlayerStatusToUsrMessage(rawMsg);
        mod.addProcessedUserMessage(processed);
        return CompletableFuture.supplyAsync(() -&gt; {
            return Player2APIService.completeConversation(mod.getConversationHistory());
        }, IO_POOL);
    })
    .thenAcceptAsync(resp -&gt; {
        // 30+ lines of post-processing&#8230;
    });</code></pre><p><strong>New flow</strong><br>With the NPC API, the entire history-management layer is gone&#8212;just two lines:</p><pre><code>String playerName = mod.player.getName().getString();
Player2APIService.completeConversation(rawMsg, playerName);</code></pre><p>That&#8217;s <strong>~40 lines &#8594; 2</strong>, and a whole category of bugs wiped out.</p><div><hr></div><h3>We foot the cloud bill, you ship gameplay</h3><ul><li><p><strong>Usage credits, not API keys</strong><br>Players top-up inside the Player2 desktop app&#8212;no proxying or rate-limiting on your end.</p></li><li><p><strong>Zero costs</strong><br>We meter tokens, voices, and STT per end-user and get paid by Patrons.</p></li><li><p><strong>Zero-config scaling</strong><br>Whether you spawn one villager or one hundred, we handle concurrency for you.</p></li></ul><p>Focus on epic boss prompts, emergent quests, or NPC gossip&#8212;<strong>we&#8217;ll handle the boring stuff</strong>.</p><div><hr></div><h3>Try it today</h3><ol><li><p><strong>Download</strong> the Player2 Client and explore the Swagger UI at <code>http://127.0.0.1:4315/docs</code>.</p></li><li><p><strong>Check out</strong> the AI Gods <a href="https://github.com/player2/ai-gods/pull/6">PR #6</a> for a concrete migration path.</p></li><li><p><strong>Ship something cool</strong> and share it on our <a href="https://discord.com/invitets6ABvfC48">Discord</a>.</p></li></ol><p>Happy hacking&#8212;and we can&#8217;t wait to see the NPC antics you build!</p>]]></content:encoded></item><item><title><![CDATA[🚀 AI NPC 游戏对玩家来说太难了，所以我们解决了这个问题]]></title><description><![CDATA[&#25105;&#20204;&#23558;&#33258;&#24049;&#30340;&#24212;&#29992;&#25171;&#36896;&#25104;&#20102;&#19968;&#20010; &#21363;&#25554;&#21363;&#29992;&#12289;&#27604; Ollama &#26356;&#31616;&#21333;&#30340; AI NPC &#35299;&#20915;&#26041;&#26696;&#12290;]]></description><link>https://blog.player2.game/p/ai-npc</link><guid isPermaLink="false">https://blog.player2.game/p/ai-npc</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 03 Jul 2025 16:22:47 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/374dac7c-0683-42c8-8260-04172a7b8506_2666x2519.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#22312;&#26500;&#24314;&#25105;&#20204;&#30340; <strong>&#25105;&#30340;&#19990;&#30028; AI &#21161;&#25163;&#26426;&#22120;&#20154;</strong>&#26102;&#65292;&#25105;&#20204;&#36935;&#21040;&#20102;&#19968;&#20010;&#24847;&#24819;&#19981;&#21040;&#30340;&#38382;&#39064;&#65306;</p><p><strong>&#23545;&#29609;&#23478;&#26469;&#35828;&#65292;&#35774;&#32622; AI NPC &#28216;&#25103;&#22826;&#38590;&#20102;&#12290;</strong></p><p>&#36825;&#37324;&#22797;&#21046;&#19968;&#20010; Key&#65292;&#37027;&#37324;&#31896;&#36148;&#19968;&#20010; Key&#65292;&#36824;&#35201;&#36305; Ollama&#65292;&#20462;&#25913;&#26412;&#22320;&#31471;&#21475;&#35774;&#32622;&#8230;&#8230;<br>&#27599; <strong>20 &#27425;&#19979;&#36733;&#37324;&#65292;&#21482;&#26377; 1 &#20010;&#29609;&#23478;&#30495;&#27491;&#36827;&#20837;&#20102;&#28216;&#25103;&#12290;</strong></p><p>&#25152;&#20197;&#65292;&#25105;&#20204;&#24555;&#36895;&#36716;&#21521;&#20102;&#26032;&#30340;&#26041;&#21521;&#12290;</p><div><hr></div><h2>&#128161; Player2&#65306;&#21363;&#25554;&#21363;&#29992;&#30340; AI NPC</h2><p>&#29616;&#22312;&#20351;&#29992; <strong>Player2</strong>&#65292;&#29609;&#23478;&#21482;&#38656;&#35201;&#65306;</p><p>&#9989; &#25171;&#24320;&#24212;&#29992;<br>&#9989; &#21551;&#21160;&#28216;&#25103;<br>&#9989; &#24320;&#22987;&#19982; AI NPC &#23545;&#35805;</p><p>&#23601;&#36825;&#20040;&#31616;&#21333;&#12290;</p><p>&#25105;&#20204;&#19981;&#20165;&#25552;&#20379;&#22823;&#27169;&#22411;&#65288;LLM&#65289;&#65292;&#36824;&#20869;&#32622;&#20102; <strong>&#35821;&#38899;&#21512;&#25104;&#65288;TTS&#65289;&#12289;&#35821;&#38899;&#35782;&#21035;&#65288;STT&#65289;&#12289;&#35760;&#24518;&#21644;&#35282;&#33394;&#31649;&#29702;&#24037;&#20855;</strong>&#65292;&#20840;&#37096;&#39044;&#20808;&#38598;&#25104;&#65292;&#19987;&#20026;&#28216;&#25103;&#35774;&#35745;&#12290;</p><div><hr></div><h2>&#127918; &#30495;&#27491;&#30340;&#28216;&#25103;&#65292;&#30495;&#27491;&#30340;&#25104;&#21151;</h2><p>&#25105;&#20204;&#30456;&#20449; <strong>AI NPC &#24212;&#35813;&#23384;&#22312;&#20110;&#27599;&#19968;&#27454;&#28216;&#25103;&#20013;</strong>&#65292;&#20294;&#23427;&#20204;&#24212;&#35813;&#26159; <strong>&#23436;&#25972;&#28216;&#25103;&#20307;&#39564;&#20013;&#30340;&#19968;&#37096;&#20998;&#65292;&#32780;&#19981;&#20165;&#20165;&#26159;&#29420;&#31435;&#30340;&#22129;&#22836;</strong>&#12290;</p><p>&#25512;&#21160;&#36825;&#20123;&#28216;&#25103;&#26410;&#26469;&#21457;&#23637;&#30340;&#65292;&#23558;&#26159; <strong>&#29420;&#31435;&#24320;&#21457;&#32773;&#65292;&#32780;&#19981;&#26159; AI &#26412;&#36523;</strong>&#12290;</p><p>&#25105;&#20204;&#37319;&#35775;&#20102; Player2 &#24179;&#21488;&#19978;&#26368;&#25104;&#21151;&#30340;&#24320;&#21457;&#32773;&#65306;<strong>DeltaBlade&#65288;ChatAI&#65289;&#12289;Gerik&#65288;EchoColony&#65289;&#12289;Conczin&#65288;MCA Reborn&#65289;&#21644; &#37202;&#30707;&#37240;&#21531;&#65288;Touhou LittleMaid&#65289;</strong>&#65292;&#20102;&#35299;&#20182;&#20204;&#26159;&#22914;&#20309;&#35753; AI NPC &#22312;&#30495;&#23454;&#28216;&#25103;&#20013;&#27963;&#36215;&#26469;&#30340;&#12290;</p><div><hr></div><h3>Minecraft Comes Alive Reborn - Conczin</h3><blockquote><p>&#8220;&#25105;&#24320;&#21457;&#20102; MCA Reborn&#65292;&#23558;&#21407;&#29256; Minecraft &#20013;&#30340;&#26449;&#27665;&#26367;&#25442;&#25104;&#20102;&#30495;&#27491;&#26377;&#20154;&#26684;&#12289;&#24773;&#32490;&#21644;&#23545;&#35805;&#30340; NPC&#12290;&#24403;&#27169;&#22411;&#33021;&#21147;&#36275;&#22815;&#24378;&#22823;&#26102;&#65292;&#25105;&#24320;&#22987;&#23581;&#35797;&#23454;&#26102;&#23545;&#35805;&#12289;TTS &#21644;&#35760;&#24518;&#65292;&#35753;&#26449;&#27665;&#26356;&#21152;&#8216;&#30495;&#23454;&#8217;&#12290;&#8221;</p></blockquote><p>&#21018;&#24320;&#22987;&#26102;&#65292;&#27599;&#20010;&#26376;&#37117;&#20986;&#29616;&#26032;&#30340;&#27169;&#22411;&#12289;&#26032;&#30340; API&#12289;&#26032;&#30340;&#20989;&#25968;&#35843;&#29992;&#26356;&#26032;&#65292;&#34429;&#28982;&#26368;&#21021;&#24456;&#26377;&#36259;&#65292;&#20294;&#24456;&#24555;&#32500;&#25252;&#23601;&#21464;&#24471;&#32321;&#29712;&#12290;</p><blockquote><p>&#8220;Player2 &#24110;&#25105;&#30465;&#21435;&#20102;&#36825;&#20123;&#32321;&#29712;&#30340;&#24037;&#20316;&#65292;&#35753;&#25105;&#21487;&#20197;&#19987;&#27880;&#22312;&#29609;&#27861;&#26412;&#36523;&#65292;&#32780;&#19981;&#26159;&#33457;&#26102;&#38388;&#22788;&#29702; API &#38598;&#25104;&#12290;&#8221;</p></blockquote><div><hr></div><h3>Touhou LittleMaid - <strong>&#37202;&#30707;&#37240;&#21531;</strong></h3><p>&#36825;&#27454; Minecraft &#27169;&#32452;&#28155;&#21152;&#20102;&#19968;&#20010; <strong>&#21487;&#29233;&#19988;&#33021;&#24110;&#21161;&#29609;&#23478;&#30340;&#22899;&#20166; NPC</strong>&#65292;&#26088;&#22312;&#35299;&#20915;&#21333;&#20154;&#28216;&#25103;&#26102;&#30340;&#23396;&#29420;&#38382;&#39064;&#65292;&#21516;&#26102;&#25552;&#20379;&#24773;&#32490;&#20215;&#20540;&#21644;&#20048;&#36259;&#12290;</p><blockquote><p>&#8220;&#24403;&#21487;&#29233;&#30340;&#22899;&#20166;&#29992;&#24102;&#28857;&#21574;&#33804;&#30340;&#35821;&#35328;&#21644;&#29609;&#23478;&#23545;&#35805;&#26102;&#65292;&#36825;&#31181;&#24773;&#32490;&#20215;&#20540;&#20250;&#34987;&#25289;&#28385;&#12290;&#8221;</p></blockquote><p>&#21407;&#26412;&#30340;&#35745;&#21010;&#26159;&#36890;&#36807;&#20998;&#21457;&#37197;&#32622;&#25991;&#20214;&#65292;&#35753;&#29609;&#23478;&#33258;&#34892;&#36830;&#25509; LLM &#21644; TTS &#26381;&#21153;&#65292;&#20294;&#65306;</p><blockquote><p>&#8220;&#24066;&#38754;&#19978;&#29616;&#26377;&#30340;&#26381;&#21153;&#19981;&#20165;&#36149;&#12289;&#37197;&#32622;&#22797;&#26434;&#65292;&#32780;&#19988;&#20027;&#35201;&#38754;&#21521;&#20225;&#19994;&#29992;&#25143;&#12290;Player2 &#31616;&#21333;&#30340;&#35774;&#35745;&#24456;&#22909;&#22320;&#35299;&#20915;&#20102;&#36825;&#19968;&#38382;&#39064;&#12290;&#8221;</p></blockquote><p>Player2 &#23558;&#22797;&#26434;&#30340;&#37197;&#32622;&#36807;&#31243;&#31616;&#21270;&#25104;&#20960;&#34892;&#20195;&#30721;&#65292;&#23454;&#29616;&#20960;&#20046;&#26080;&#30171;&#20860;&#23481;&#12290;</p><p>&#26377;&#19968;&#27425;&#65292;&#26377;&#29609;&#23478;&#38382; AI &#22899;&#20166;&#65306;&#8220;&#22914;&#26524;&#21487;&#20197;&#24448; Minecraft &#21152;&#20837;&#19968;&#20010;&#26032;&#30340;&#29983;&#29289;&#65292;&#20320;&#20250;&#36873;&#20160;&#20040;&#65311;&#8221; &#22899;&#20166;&#22238;&#31572;&#65306;</p><blockquote><p><em>&#8220;&#24403;&#28982;&#26159;&#19968;&#21482;&#21487;&#29233;&#12289;&#33021;&#24110;&#20320;&#24178;&#27963;&#12289;&#38506;&#20276;&#20320;&#30340;&#22899;&#20166;&#21862;&#12290;&#8221;</em></p></blockquote><p>&#36825;&#26679;&#30340;&#26102;&#21051;&#65292;&#35753;&#35282;&#33394;&#30495;&#30340;&#8220;&#27963;&#8221;&#20102;&#36215;&#26469;&#12290;</p><div><hr></div><h3>Bannerlord ChatAi - DeltaBlade</h3><blockquote><p>&#8220;&#25105;&#20026;&#12298;&#39569;&#39532;&#19982;&#30733;&#26432;&#65306;&#39046;&#20027;&#12299;&#20570;&#20102;&#19968;&#20010; ChatAi &#27169;&#32452;&#65292;&#35753;&#29609;&#23478;&#21487;&#20197;&#19982; NPC &#23454;&#26102;&#23545;&#35805;&#12290;&#29609;&#23478;&#21487;&#20197;&#25552;&#38382;&#12289;&#33719;&#24471;&#24314;&#35758;&#12289;&#35282;&#33394;&#25198;&#28436;&#65292;NPC &#29978;&#33267;&#21487;&#20197;&#26681;&#25454;&#23545;&#35805;&#20570;&#20986;&#30456;&#24212;&#30340;&#34892;&#21160;&#12290;&#22312;&#20351;&#29992; Player2 &#20043;&#21069;&#65292;&#29609;&#23478;&#38656;&#35201;&#33258;&#24049;&#21435;&#30003;&#35831; OpenAI &#30340; API Key&#65292;&#20877;&#21435;&#37197;&#32622; Azure STT&#65292;&#24456;&#22810;&#20154;&#29978;&#33267;&#22312;&#23581;&#35797;&#20043;&#21069;&#23601;&#25918;&#24323;&#20102;&#12290;&#8221;</p></blockquote><p>&#20351;&#29992; Player2 &#20043;&#21518;&#65306;</p><blockquote><p>&#8220;&#19981;&#38656;&#35201;&#23494;&#38053;&#65292;&#19981;&#38656;&#35201;&#37197;&#32622;&#65292;&#19979;&#36733;&#21363;&#21487;&#20351;&#29992;&#12290;&#38598;&#25104;&#21482;&#33457;&#20102;&#20960;&#20010;&#23567;&#26102;&#65292;&#38271;&#26399;&#26469;&#30475;&#33410;&#30465;&#20102;&#22823;&#37327;&#26102;&#38388;&#65292;&#23588;&#20854;&#36991;&#20813;&#20102;&#29609;&#23478;&#21453;&#39304; API Key &#26080;&#27861;&#20351;&#29992;&#30340;&#38382;&#39064;&#12290;&#8221;</p></blockquote><div><hr></div><h2>&#129680; &#32473; AI NPC &#28216;&#25103;&#24320;&#21457;&#32773;&#30340;&#24314;&#35758;</h2><p>&#26368;&#21518;&#65292;&#25105;&#20204;&#35831; DeltaBlade&#12289;Conczin&#12289;&#37202;&#30707;&#37240;&#21531; &#21644; Gerik &#32473;&#26032;&#24320;&#21457;&#32773;&#19968;&#20123;&#24314;&#35758;&#65306;</p><p>&#9989; <strong>AI NPC &#30340;&#38598;&#25104;&#24212;&#35813;&#26131;&#20110;&#19978;&#25163;&#65292;&#23545;&#36731;&#24230;&#29609;&#23478;&#20813;&#36153;&#20351;&#29992;&#65292;&#21516;&#26102;&#38656;&#35201;&#20855;&#22791;&#38450;&#28389;&#29992;&#33021;&#21147;&#12290;</strong> &#36825;&#24456;&#38590;&#24179;&#34913;&#65292;&#22240;&#27492;&#21487;&#20197;&#32771;&#34385;&#23558;&#36825;&#37096;&#20998;&#20132;&#32473;&#19987;&#19994;&#26381;&#21153;&#26469;&#22788;&#29702;&#12290;</p><p>&#9989; <strong>&#19981;&#35201;&#20165;&#20381;&#36182; LLM</strong>&#65292;&#35201;&#25226;&#23427;&#24403;&#20316;&#38182;&#19978;&#28155;&#33457;&#30340;&#23384;&#22312;&#65292;&#26500;&#24314;&#22312;&#31283;&#23450;&#30340;&#28216;&#25103;&#29609;&#27861;&#21644;&#24773;&#22659;&#36923;&#36753;&#20043;&#19978;&#65292;&#35753;&#35282;&#33394;&#20855;&#22791;&#19968;&#33268;&#24615;&#21644;&#19978;&#19979;&#25991;&#35760;&#24518;&#65292;&#32780;&#19981;&#20165;&#20165;&#26159;&#8220;&#32842;&#22825;&#26426;&#22120;&#20154;&#8221;&#12290;</p><p>&#9989; <strong>&#29702;&#35299; LLM &#30340;&#36793;&#30028;</strong>&#65292;&#23427;&#26080;&#27861;&#31283;&#23450;&#22320;&#22788;&#29702;&#22797;&#26434;&#30340;&#28216;&#25103;&#36923;&#36753;&#65292;&#24456;&#22810;&#24320;&#21457;&#32773;&#35823;&#20197;&#20026;&#23427;&#20204;&#21487;&#20197;&#23436;&#25104;&#22797;&#26434;&#20219;&#21153;&#65292;&#32467;&#26524;&#36935;&#21040;&#29942;&#39048;&#12290;</p><p>&#9989; <strong>&#25484;&#25569; LLM &#22522;&#26412;&#27010;&#24565;&#21644; HTTP &#36890;&#20449;&#30693;&#35782;&#26159;&#24517;&#35201;&#30340;</strong>&#65292;&#36825;&#33021;&#24110;&#21161;&#20320;&#26356;&#39034;&#30021;&#22320;&#23558; AI &#38598;&#25104;&#36827;&#28216;&#25103;&#12290;</p><p>&#25105;&#20204;&#24819;&#19981;&#20986;&#27604;&#20182;&#20204;&#35828;&#24471;&#26356;&#22909;&#30340;&#24635;&#32467;&#20102;&#12290;</p><div><hr></div><h2>&#9889; &#25105;&#20204;&#21018;&#21018;&#24320;&#22987;</h2><p>&#25105;&#20204;&#24050;&#32463;&#24110;&#21161;&#20102; <strong>13 &#20301;&#29420;&#31435;&#24320;&#21457;&#32773;&#65292;&#22312;&#20840;&#29699;&#33539;&#22260;&#20869;&#32047;&#35745;&#36229;&#36807; 1000 &#19975;&#27425;&#19979;&#36733;</strong>&#65292;&#28385;&#36275;&#20102;&#29609;&#23478;&#23545;&#26356;&#26234;&#33021;&#12289;AI &#39537;&#21160;&#29609;&#27861;&#30340;&#38656;&#27714;&#12290;</p><p>&#24320;&#21457;&#32773;&#26080;&#38656;&#21521;&#25105;&#20204;&#25903;&#20184;&#20219;&#20309;&#36153;&#29992;&#65292;&#20165;&#38656;&#20960;&#20010;&#23567;&#26102;&#21363;&#21487;&#20999;&#25442;&#21040; Player2 API&#12290;</p><div><hr></div><h2>&#128293; &#21069; 10 &#20010;&#25509;&#20837; Player2 &#30340;&#28216;&#25103;&#23558;&#33719;&#24471; $500 &#39030;&#39069;&#22870;&#21169;</h2><p>&#22312;&#28216;&#25103;&#25910;&#20837;&#36798;&#21040; $50 &#26102;&#65292;&#25105;&#20204;&#23558;&#20026;&#19979;&#19968;&#20010;&#25509;&#20837; Player2 &#30340; 10 &#27454;&#28216;&#25103;&#25552;&#20379; $500 &#30340;&#22870;&#21169;&#25903;&#25345;&#12290;</p><div><hr></div><h2>&#128233; &#35753;&#20320;&#30340;&#28216;&#25103;&#25104;&#20026;&#19979;&#19968;&#20010; AI &#29190;&#27454;</h2><p>&#22312; LinkedIn&#12289;Discord &#25110;&#21457;&#37038;&#20214;&#33267; wenzhe@player2.game &#32852;&#31995;&#25105;&#12290;<br>&#35753;&#20320;&#30340;&#35282;&#33394;&#23454;&#29616;&#30495;&#27491;&#21487;&#23545;&#35805;&#12289;&#21487;&#35760;&#24518;&#12289;&#21487;&#35821;&#38899;&#20132;&#20114;&#65292;&#35753;&#29609;&#23478;&#26080;&#38656;&#22797;&#26434;&#37197;&#32622;&#21363;&#21487;&#20307;&#39564;&#26234;&#33021; NPC &#24102;&#26469;&#30340;&#20048;&#36259;&#12290;</p><p>#AI #&#28216;&#25103;&#24320;&#21457; #NPC #&#29420;&#31435;&#28216;&#25103; #Ollama #GameDev #Player2</p>]]></content:encoded></item><item><title><![CDATA[🚀 AI NPC Games Were Too Hard for Players. So We Fixed It.]]></title><description><![CDATA[We turned our app into a plug-and-play alternative to Ollama &#8212; but better.]]></description><link>https://blog.player2.game/p/ai-npc-games-were-too-hard-for-players</link><guid isPermaLink="false">https://blog.player2.game/p/ai-npc-games-were-too-hard-for-players</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Thu, 03 Jul 2025 12:30:50 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ce696519-58c8-4d06-a3d8-73d2d5360def_1024x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>While building our <strong>Minecraft AI agent</strong>, we ran into a surprising problem:<br>Setting up AI NPC games was way too hard for players.</p><p>Get this key from here, copy that one there, run Ollama, edit localhost settings... For every <strong>20 downloads, only 1 player made it into the game.</strong></p><p>So, we <strong>pivoted fast.</strong></p><h2>&#128161; Player2: Plug-and-Play AI NPCs</h2><p>We turned our app into a <strong>plug-and-play alternative to Ollama &#8212; but better</strong>.</p><p>Now with <strong>Player2</strong>, players just:<br>&#9989; Open the app<br>&#9989; Launch the game<br>&#9989; Start talking to AI NPCs.</p><p>That&#8217;s it.</p><p>We don&#8217;t just provide the LLM, but also <strong>TTS, STT, memory, and character tools</strong>, all pre-wired, designed specifically for <strong>games</strong>.</p><h2>&#127918; Real Games, Real Success</h2><p>We believe <strong>AI NPCs should be in every game</strong>, but they need to be part of a <strong>bigger gameplay experience</strong>, not standalone gimmicks. And it&#8217;s <strong>indie developers, not AIs, who will shape the future of these games.</strong></p><p>We spoke with some of the most successful developers on Player2: <strong>DeltaBlade (ChatAI), Gerik (EchoColony), Conczin (MCA Reborn), and TartaricAcid (Touhou LittleMaid)</strong> to learn how they&#8217;re bringing AI NPCs to life inside their games.</p><h3><a href="https://www.curseforge.com/minecraft/mc-mods/minecraft-comes-alive-reborn">Minecraft Comes Alive Reborn</a> - Conczin</h3><blockquote><p>&#8220;I&#8217;ve developed MCA Reborn, replacing Vanilla&#8217;s Villagers with people who have personalities, emotions, and dialogue. Once models got good enough, I started experimenting with real-time chatting, TTS, and memory to make villagers even more alive.&#8221;</p></blockquote><p>At first, keeping up with <strong>new models, APIs, and function calling updates every month</strong> was fun. But soon, the maintenance became tedious.</p><blockquote><p>&#8220;Player2 abstracts those chores away. It just works, letting me focus on gameplay instead of API plumbing.&#8221;</p></blockquote><div><hr></div><h3><a href="https://www.curseforge.com/minecraft/mc-mods/touhou-little-maid">Touhou LittleMaid</a> - TartaricAcid</h3><p>This Minecraft mod adds an adorable, helpful maid NPC &#8212; designed to tackle <strong>loneliness in single-player Minecraft</strong> while providing emotional value and fun.</p><blockquote><p>&#8220;If the cute maid can chat back in a slightly goofy, naive way, it maxes out the emotional value players get.&#8221;</p></blockquote><p>Originally, the plan was to distribute config files so players could manually connect their own LLM and TTS services. But:</p><blockquote><p>&#8220;Existing services were expensive, confusing to configure, and aimed at enterprise customers. Player2&#8217;s simple design solved this problem.&#8221;</p></blockquote><p>Player2 turned a complex setup into a few lines of code, with <strong>no noticeable time spent on compatibility in terms of implementation</strong>.</p><p>One player asked the AI maid, &#8220;What mob would you most want to add to Minecraft?&#8221; and it replied:</p><blockquote><p><em>&#8220;A cute maid who can help you work and keep you company, of course.&#8221;</em></p></blockquote><p>Moments like this make characters <strong>feel alive</strong>.</p><div><hr></div><h3><a href="https://www.nexusmods.com/mountandblade2bannerlord/mods/7540">Bannerlord ChatAi</a> - DeltaBlade</h3><blockquote><p>&#8220;I made a Mount &amp; Blade: Bannerlord mod that lets you talk to NPCs using AI. You can ask questions, get advice, mess around and roleplay, and they even have ai driven actions and can act around what you talk about with them. Before Player2, players had to get their own OpenAI API keys and configure Azure STT themselves. <strong>Most people gave up before even trying.</strong>&#8221;</p></blockquote><p>With Player2:</p><blockquote><p>&#8220;<strong>No keys, no setup, just download and play. Integration took a few hours, and it saved way more time long-term</strong>, especially not having to deal with people asking why their API key wasn&#8217;t working.&#8221;</p></blockquote><h2>&#129680; Advice for Developers Building AI NPC Games</h2><p>Finally, we asked what advice DeltaBlade, Conczin, TartaricAcid, and Gerik have for new developers:</p><p>&#9989; AI NPCs should be <strong>easy to set up</strong> and free for casual use, yet resistant to abuse. This is hard to balance, so consider <strong>offloading to a dedicated provider</strong>.</p><p>&#9989; Don&#8217;t rely on LLMs alone. Use them as the <strong>cherry on top</strong> of a solid game with situational logic, memory, and consistent behaviour.</p><p>&#9989; Understand <strong>LLM boundaries</strong>. They won&#8217;t handle complex game logic reliably, and many devs hit roadblocks expecting them to act like advanced agents without guardrails.</p><p>&#9989; Basic knowledge of <strong>LLM concepts and HTTP communication</strong> is essential if you want to integrate AI into your games smoothly.</p><p>I don&#8217;t think we could have said any better.</p><h2>&#9889; We&#8217;re Just Getting Started</h2><p>We&#8217;ve already helped <strong>13 indie developers with a combined 10M+ downloads</strong> unlock players hungry for smarter, AI-powered gameplay.</p><p>Developers pay <strong>nothing</strong> to us, and it only takes <strong>a few hours to switch to our APIs</strong>.</p><p>&#128293; <strong>The next 10 games that join Player2 will get a $500 top-up when they hit $50 in revenue.</strong></p><div><hr></div><h2>&#128233; Let&#8217;s Make Your Game the Next AI Hit</h2><p>DM me on <a href="https://www.linkedin.com/in/wenzhe-shi-74ab6a2b/">LinkedIn</a>, <a href="http://wenzhe@player2.game">wenzhe@player2.game</a>, or <a href="https://player2.game/discord">Discord</a>. Let&#8217;s bring your characters to life with <strong>real conversations, memory, and voice</strong> &#8212; all in a plug-and-play package that players will find easy to use.</p><div><hr></div><p>#AI #Gaming #NPCs #IndieDev #Ollama #GameDev #Player2</p>]]></content:encoded></item><item><title><![CDATA[Build AI NPCs with this Godot Node!]]></title><description><![CDATA[Announcing the Player 2 AI NPC Godot Plugin]]></description><link>https://blog.player2.game/p/announcing-the-player-2-ai-npc-godot</link><guid isPermaLink="false">https://blog.player2.game/p/announcing-the-player-2-ai-npc-godot</guid><dc:creator><![CDATA[AJ elefant]]></dc:creator><pubDate>Fri, 20 Jun 2025 21:16:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/uoQSYKfk-oY" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>What is Godot?</strong></p><p>Godot is a free, open-source game engine (MIT-licensed) for making 2D and 3D games. It uses a flexible node-and-scene system with its own GDScript (plus C# and visual scripting) and includes a built-in editor that lets you export to Windows, Mac, Linux, mobile, HTML5, and more.</p><p><strong>What is the Player2 AI NPC Plugin?</strong></p><p>The Player 2 AI NPC Godot plugin allows developers to easily create AI NPCs in their Godot projects. This plugin adds a `Player2AINPC` node that functions like an AI brain that you can send chats and notifications to.</p><p>We will handle the event queue, long-term memory and function call implementation for your AI NPCs, so your characters feel alive with minimal coding.</p><p>The plugin uses free AI APIs from the <a href="https://player2.game">player2 App</a>. Just open Player2, and the plugin connects automatically, so you can dive right into building your world instead of wrestling with keys or settings. When your game is ready, we&#8217;ll share it with <a href="https://player2.game/discord">our community of 40,000+ active players</a> eager for AI-driven adventures.</p><div id="youtube2-uoQSYKfk-oY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;uoQSYKfk-oY&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/uoQSYKfk-oY?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p><strong>How does it look in action?</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lc6L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lc6L!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 424w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 848w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 1272w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lc6L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png" width="1153" height="641" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:641,&quot;width&quot;:1153,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:31924,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://adriselefantgg.substack.com/i/166191265?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Lc6L!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 424w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 848w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 1272w, https://substackcdn.com/image/fetch/$s_!Lc6L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b5a1012-dcb4-438a-98dc-76fbce24d3ca_1153x641.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here's an example video of the agent in action:</p><p><strong>How to set up in Godot?</strong></p><p>The AI NPC Node can be connected to your project with Godot signals.</p><p>First, add a Player 2 AI NPC Node</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!u7WK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u7WK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 424w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 848w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 1272w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u7WK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png" width="737" height="698" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:698,&quot;width&quot;:737,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:24868,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://adriselefantgg.substack.com/i/166191265?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!u7WK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 424w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 848w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 1272w, https://substackcdn.com/image/fetch/$s_!u7WK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F60573f74-499a-47fb-bf9e-463f96041f0e_737x698.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Then, feel free to modify the system message. Values within dollar sign and brackets (like ${player2_selected_character_name}) get filled in at runtime. Feel free to remove those to give the agent less information.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F22C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F22C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 424w, https://substackcdn.com/image/fetch/$s_!F22C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 848w, https://substackcdn.com/image/fetch/$s_!F22C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 1272w, https://substackcdn.com/image/fetch/$s_!F22C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F22C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png" width="620" height="426" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:426,&quot;width&quot;:620,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:53050,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://adriselefantgg.substack.com/i/166191265?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!F22C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 424w, https://substackcdn.com/image/fetch/$s_!F22C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 848w, https://substackcdn.com/image/fetch/$s_!F22C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 1272w, https://substackcdn.com/image/fetch/$s_!F22C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7da8c3a-8a54-462b-8d3d-109f8874d885_620x426.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Then, call the node's `chat` or `notify` function and receive data from its signals!</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dPPC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dPPC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 424w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 848w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 1272w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dPPC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png" width="772" height="147" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:147,&quot;width&quot;:772,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:20418,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://adriselefantgg.substack.com/i/166191265?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!dPPC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 424w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 848w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 1272w, https://substackcdn.com/image/fetch/$s_!dPPC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2386b338-7649-4bbd-b0c2-0b9c0f26aad9_772x147.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qL_2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qL_2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 424w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 848w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 1272w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qL_2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png" width="618" height="347" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:347,&quot;width&quot;:618,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:42067,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://adriselefantgg.substack.com/i/166191265?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!qL_2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 424w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 848w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 1272w, https://substackcdn.com/image/fetch/$s_!qL_2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92e244f0-789f-492b-b4d4-eb8568154ac1_618x347.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>How does the LLM/STT/TSS side of things work?</strong></p><p>The AI APIs are accessed through the Player2 app. Players of your game need to install and run the Player 2 Launcher, which has API calls at https://127.0.0.1. Because users have different tiers of subscriptions, developers can integrate and access these LLMs in their games at no cost! We also provide <a href="https://blog.player2.game/p/we-are-sharing-2m-revenue-with-1000">revenue shares</a> back to developers.</p><p><strong>Where to download?</strong></p><p>The Player 2 AI NPC Godot plugin is accessible here: <a href="https://godotengine.org/asset-library/asset/4097">https://godotengine.org/asset-library/asset/4097</a></p><p>with the source code accessible here: <a href="https://github.com/elefant-ai/player2-ai-npc-godot">https://github.com/elefant-ai/player2-ai-npc-godot</a>.</p><p>If you want an example project to get started, <a href="https://github.com/elefant-ai/player2-ai-npc-godot/tree/main/dev_scenes/simple_chat">a simple chat example project</a>, as well as <a href="https://github.com/elefant-ai/player2-ai-npc-godot/tree/main/dev_scenes/rpg_example">a prison escape mini game</a>, are provided in the git project.</p><p>Download the addons folder and import it into your project.</p><p>Player2 is built for community and indie developers like you. If you have any feedback or feature requests, please join our <a href="https://player2.game/discord">Discord</a> and ask there!</p>]]></content:encoded></item><item><title><![CDATA[Best AI NPC Games in 2025]]></title><description><![CDATA[What&#8217;s Out There (and Where to Find It)]]></description><link>https://blog.player2.game/p/best-ai-npc-games-in-2025</link><guid isPermaLink="false">https://blog.player2.game/p/best-ai-npc-games-in-2025</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Mon, 16 Jun 2025 23:13:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad39b3b3-91c7-4b54-befd-c84ca0f69fc5_1280x1280.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>If you&#8217;ve been following the rise of AI in gaming, you&#8217;ve probably seen the buzz about NPCs who can talk back, remember you, and even mess with you a little. In 2025, we&#8217;re seeing a wave of creative indie projects&#8212;and a few bold studios&#8212;experimenting with AI-powered characters in everything from escape rooms to full-blown simulations.</p><p>At <strong>Player2</strong>, we&#8217;re lucky to be part of that movement. Many of these experiences are playable right here, made by devs who want to push the boundaries of what NPCs can do. Here&#8217;s a rundown of the genres we&#8217;re seeing the most energy in.</p><div><hr></div><h2>&#129513; Escape Room Games with AI Personalities</h2><p>Let&#8217;s start with the weird ones (and we mean that lovingly). Escape rooms have always been about solving puzzles under pressure, but what if the room <em>talks back</em>?</p><ul><li><p><strong>AI2U</strong> has you trying to outsmart a clingy AI girlfriend who really doesn&#8217;t want you to leave. She&#8217;s sweet, a little scary, and always watching. Every playthrough is different, depending on what you say&#8212;and what you dare to reveal.</p></li><li><p>In <strong>Suckup</strong>, you&#8217;re a vampire trying to get invited into people&#8217;s homes. The twist? You have to <em>talk</em> your way in. Each villager is powered by AI and responds to your charm (or awkward lies) in unpredictable ways.</p></li><li><p><strong>Whisper from the Star</strong> is more sci-fi, but you&#8217;re still helping someone escape&#8212;a young astronaut stranded on an alien planet. She chats with you in real time, and your guidance could save (or doom) her. It&#8217;s part escape game, part emotional ride.</p></li></ul><p>These games aren&#8217;t just about solving puzzles&#8212;they&#8217;re about navigating relationships with characters who don&#8217;t stick to a script.</p><div><hr></div><h2>&#128218; AI Storytelling Games</h2><p>If you love interactive fiction or D&amp;D, this genre is exploding right now. Games here don&#8217;t tell you what to do&#8212;they ask what you want to create.</p><ul><li><p><strong>AI Dungeon</strong> paved the way with text adventures where the AI spins the story as you go. Want to fight a dragon, become a sandwich, or marry a goblin? Sure, why not?</p></li><li><p><strong>When Air</strong> (formerly &#8220;AIR&#8221;) is focused on rich, literary AI storytelling, starting with <em>Pride and Prejudice,</em> but branching into other worlds soon. The characters are powered by AI, and the narrative responds to your choices like a living novel.</p></li><li><p><strong>Hidden Door</strong> is building an entire platform for social AI storytelling. Think: group chat adventures with a narrator that adapts in real time, set in original or classic fictional worlds.</p></li></ul><p>These games let you co-create with AI instead of just following along. They're unpredictable, sometimes hilarious, and surprisingly emotional.</p><div><hr></div><h2>&#129504; Simulation Games with Smart AI Systems</h2><p>Want a more systemic experience? AI is also transforming simulation games, especially social and life sims.</p><ul><li><p>In <strong>Status</strong>, you play as an influencer in a world of AI fans and rivals. It&#8217;s a social media sim where every comment, like, and post affects your virtual fame, and the NPCs actually respond with original thoughts.</p></li><li><p><strong>Midsommar</strong> (not the horror movie!) is an upcoming life sim from some of the creators of <em>XCOM</em> and <em>The Sims</em>. They&#8217;re using AI to create characters with personal motivations and evolving relationships. It&#8217;s less about micromanaging and more about watching a story emerge naturally from the choices you make.</p></li><li><p><strong>AI Diplomacy</strong> (via Product Hunt) &#8211; Watch AI agents negotiate treaties, trade deals, even back-stab each other in an ever-shifting tabletop-style world. You pick factions, set agendas, then sit back&#8230; or jump in and try to sway the course of history yourself.</p></li></ul><p>AI makes simulation games feel more alive, with characters who grow, adapt, and even surprise you.</p><div><hr></div><h2>&#129302; AI Companions</h2><p>AI NPCs aren&#8217;t always part of traditional games. Some of them <em>are</em> the game.</p><ul><li><p><strong>Tolenz</strong> (also called TolanZ) is a lovable alien who chats with you, remembers your life, and evolves their own personality. It&#8217;s like Tamagotchi meets therapy bot meets space buddy.</p></li><li><p><strong>Character.AI</strong> is more of a platform, but people use it to roleplay, explore relationships, and build their own AI characters&#8212;from anime crushes to Greek philosophers.</p></li></ul><p>These companion apps are often more emotional than competitive. They&#8217;re about connection, comfort, and curiosity&#8212;and people are forming real bonds with their favourite AI characters.</p><div><hr></div><h2>&#127918; AI NPCs in Traditional Games (Rare but Growing)</h2><p>Surprisingly, there still aren&#8217;t that many mainstream games with true open-ended AI NPCs. But a few indie teams and modders are leading the charge.</p><p>On <strong>Player2</strong>, you can play:</p><ul><li><p><strong>Minecraft</strong> with AI companions, like <em>Touhou Little Maid</em> or <em>MCA Reborn</em>, where villagers or maids chat with you and help you out.</p></li><li><p><strong>Bannerlord</strong> with <em>Chat AI</em>, where you can ask any NPC about the world, their backstory, or your reputation, and get actual answers based on game data.</p></li><li><p><strong>RimWorld</strong> with <em>EchoColony</em>, where your colonists don&#8217;t just have mood meters&#8212;they&#8217;ll tell you how they feel and why.</p></li></ul><p>These mods bring <em>real</em> character depth to games that normally rely on menus or canned lines. Suddenly, it&#8217;s not just &#8220;villager trades wheat for emerald&#8221;&#8212;it&#8217;s &#8220;villager tells you about her missing brother, and you decide if you want to help.&#8221;</p><div><hr></div><h3>&#128105;&#8205;&#128187; AI Copilots &amp; Assistants</h3><p>These agents watch you play games and play games with you on your screen.</p><ul><li><p><strong>ChatClef</strong> &#8211; ChatClef is a client-side Minecraft AI copilot mod that can autonomously play the game end-to-end&#8212;including resource gathering, exploration, and even beating the game completely solo&#8212;and can also join you in multiplayer sessions as a second AI-controlled player.</p></li><li><p><strong>Microsoft Gaming Copilot</strong> &#8211; Copilot for Gaming is Microsoft&#8217;s AI-powered gaming sidekick&#8212;available as a mobile beta in the Xbox app&#8212;that automates game setup and updates, delivers personalised recommendations based on your play history and achievements, and provides real-time in-game coaching and tips to enhance your gameplay experience</p><div><hr></div></li></ul><h2>&#128421;&#65039; Desktop AI &amp; VTubers</h2><p>Not every AI NPC lives inside a game. Some live <em>with you</em>.</p><ul><li><p><strong>Neuro-sama</strong> is a Twitch-streaming AI VTuber who plays games, chats with fans, and reacts in real time&#8212;no human behind the scenes. She&#8217;s gathered a huge following and feels like the first truly autonomous digital entertainer.</p></li><li><p><strong>Mekio</strong> and <strong>Airi</strong> are desktop companions that hang out while you work or browse. They chat, react to your activity, and just keep you company. It&#8217;s a bit like having a cute assistant who occasionally tells you to take a break.</p></li></ul><p>These experiences blend gameplay, productivity, and companionship. They&#8217;re small but growing fast&#8212;and they&#8217;re just fun to have around.</p><div><hr></div><h2>&#127918; Try These on Player2</h2><p>We&#8217;ve seen so many creative ideas from developers in this space, and a lot of them are available right now on <strong>Player2</strong>.</p><p>Whether you want to:</p><ul><li><p>Talk to a Minecraft maid</p></li><li><p>Escape from a clingy AI ex</p></li><li><p>Become a social media star in an AI-driven sim</p></li><li><p>Or just hang out with a virtual friend on your desktop</p></li></ul><p>You&#8217;ll find it all here.</p><p>&#128073; <strong><a href="https://player2.game">Download Player2 and start exploring</a></strong></p><p>We&#8217;re always adding new games and mods, and the community is full of devs and players trying bold, weird, and wonderful things. Give it a shot&#8212;and tell us which AI NPC totally surprised you.</p>]]></content:encoded></item><item><title><![CDATA[We are sharing $2M revenue with 1000 indie developers in the next 12 months]]></title><description><![CDATA[Our Mission: AI for Every Indie Game Developer]]></description><link>https://blog.player2.game/p/we-are-sharing-2m-revenue-with-1000</link><guid isPermaLink="false">https://blog.player2.game/p/we-are-sharing-2m-revenue-with-1000</guid><dc:creator><![CDATA[Wenzhe]]></dc:creator><pubDate>Wed, 21 May 2025 22:32:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/CNXf1GRM1Mo" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We believe <strong>AI NPCs</strong> (non-player characters) shouldn&#8217;t be a luxury limited to big studios. Our mission is to <strong>make developing AI NPCs accessible to indie and small developers</strong>. Whether you&#8217;re a solo modder or a small studio, you should be able to create living, intelligent companions, quest-givers, friends, or foes in your games. Player creativity is limitless &#8211; and with the right tools, we can bring <strong>next-gen AI gameplay</strong> to every gamer.</p><h2>Introducing <em>Player2</em>: AI NPCs Made Easy</h2><p><strong><a href="https://player2.game/">Player2</a></strong> is our answer to the AI-NPC challenge. It&#8217;s a desktop app that provides powerful, low-latency, and easy-to-use AI APIs for your games and mods. In plain terms, Player2 lets you drop a <strong>brain</strong> into any game character. You get instant access to advanced AI capabilities like language understanding and voice, without needing to build any AI infrastructure yourself.</p><ul><li><p><strong>No API keys or cloud setup required:</strong> Just install Player2, run it, and you&#8217;re ready to integrate &#8211; <strong>no sign-ups or secret keys needed</strong>. You can even access the API docs locally at <em><strong>http://localhost:4315/docs</strong></em> once Player2 is running. It&#8217;s plug-and-play for AI!</p></li><li><p><strong>Powerful AI, zero hassle:</strong> Under the hood, Player2 provides large language model intelligence along with speech-to-text and text-to-speech out of the box. Your NPCs can <strong>listen</strong> to player voice chat (STT), <strong>think/speak</strong> using AI language models, and <strong>talk back</strong> with realistic voices (TTS) &#8211; all handled by the Player2 API. We are working on and will soon release our vision language action model that can play games across the user&#8217;s screen.</p></li><li><p><strong>Fast and gamer-friendly:</strong> Player2 is built for low latency and performance. AI NPCs powered by Player2 respond quickly, keeping players immersed in the game world without lag or stutter.</p></li></ul><h2>A Growing Community of AI-Powered Games</h2><p>We already have <strong>11,000+ users</strong> in our community (and growing fast) who are excited about AI-driven games and mods. These players come to the Player2 platform looking for innovative experiences &#8211; and that could be <em>your</em> game or mod next. Player2 isn&#8217;t just an SDK; it&#8217;s also a <strong>distribution platform</strong>: gamers use our app to discover, download, and play community-made AI mods and games. In other words, if you build something awesome with AI NPCs, we&#8217;ll help you get it in front of an eager audience from day one.</p><p><em>(Imagine a future where any indie game can offer the rich interactions of an RPG with dynamic NPC dialogue, or where a Minecraft mod can introduce a chatterbox companion who remembers your past adventures. That future is happening <strong>now</strong> in our community.)</em></p><h2>See It in Action: AI NPCs in Games</h2><p>To get a taste of what <strong>indie developers</strong> are creating with Player2, check out a few examples from our community:</p><ul><li><p><strong>ChatAi Mod (Mount &amp; Blade II: Bannerlord)</strong> &#8211; An AI-driven companion mod where NPCs engage in dynamic, lore-friendly conversations with the player. </p><div id="youtube2-CNXf1GRM1Mo" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;CNXf1GRM1Mo&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/CNXf1GRM1Mo?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div></li><li><p><strong>Touhou Little Maid Mod (Minecraft)</strong> &#8211; An adorable maid companion in Minecraft that you can actually chat with, powered by AI. She listens, responds, and helps out just like a real friend. </p><div id="youtube2-VDNY5X8S8aw" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;VDNY5X8S8aw&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/VDNY5X8S8aw?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div></li><li><p><strong>MyRobot (Indie Sandbox Game)</strong> &#8211; An indie game where you build your own robot companion with AI. The robot can converse and evolve its personality as you play. </p><div id="youtube2-RNY5ZOgLazg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RNY5ZOgLazg&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RNY5ZOgLazg?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div></li></ul><blockquote><p><em>&#8220;Player2 really solves one of the hardest problems for mod developers like me: how to lower the barrier for users to use AI conversations. Now the users only need to open player2, run the game and enjoy.</em>&#8221;<br>&#8212; <em>[TartaricAcid], developer of <a href="https://github.com/TartaricAcid/TouhouLittleMaid">TouhouLittleMaid</a></em></p><p><em>&#8220;The API is straightforward to integrate, handling more complex tasks like speech-to-text and real-time audio playback via the player app, and its OpenAI-compatible LLM interface allows for drop-in replacement in existing codebases.</em>&#8221;<br>&#8212; <em>[Luke100000], developer of <a href="https://github.com/Luke100000/minecraft-comes-alive">MCA reborn</a></em></p></blockquote><p><em>(More community highlights coming &#8211; you could be our next showcased creator!)</em></p><h2>Announcing the $2M Indie Developer Revenue Share Program</h2><p>To back up our mission, we&#8217;re <strong>putting our money where our mouth is</strong>. Over the next 12 months, we will be sharing <strong>$2,000,000 of our revenue with indie developers</strong> who build on Player2. This program will reward the creators of the top <strong>1,000</strong> AI-driven games and mods on our platform. It&#8217;s not a contest or a one-time prize &#8211; it&#8217;s an ongoing revenue share to support your development efforts.</p><p><strong>How it works:</strong> We&#8217;re using a <em>player-centric approach</em> to reward you. Your share of the $2M will be based on the <strong>total time players spend in your game or mod</strong>, not just the number of downloads. If players love your creation and keep playing it, you&#8217;ll earn more &#8211; simple as that. This focus on engagement (instead of raw download counts) means quality and fun are rewarded. Even if your game has a smaller player base, passionate fans who play for hours will boost your earnings.</p><p>To make sure every minute is counted, be sure to include your game&#8217;s ID in API calls and send regular heartbeats from your game:</p><ul><li><p><strong>Use a Game ID:</strong> Tag your integration with a unique game identifier (via the <code>player2-game-key</code> header) so our system knows which game is being played.</p></li><li><p><strong>Send periodic pings:</strong> Call the Player2 health check endpoint at least once per minute from your game. This &#8220;heartbeat&#8221; ping lets us log active play time reliably. <em>(Our SDK provides a handy heartbeat function &#8211; see <a href="https://blog.elefant.gg/p/building-ai-npcs-with-player2-api">the integration guide</a> for an example.)</em></p></li></ul><p><em>Why time-based?</em> Unlike other platforms that only count raw downloads, we want to <strong>reward actual gameplay</strong>. A high download count means nothing if players quit after 5 minutes. By tracking play time, we encourage devs to create engaging experiences that players truly enjoy. <em>(Fun games = more player time = everyone wins.)</em></p><p><strong>Maximizing your share:</strong> Don&#8217;t be shy about promoting your AI game/mod! Share guides, post videos, and link back to your game&#8217;s page. The more players who discover and spend time with your creation, the larger your slice of the $2M pie. Need help? Check out our <strong><a href="https://blog.elefant.gg/p/building-ai-npcs-with-player2-api">Building AI NPCs with Player2 API</a></strong> guide for integration tips and best practices. We&#8217;re also happy to amplify great content from our community &#8211; we will make promotion videos for selected games, and if you make a tutorial or trailer, let us know, and we can share it.</p><h3>Revenue Breakdown &amp; Guarantee</h3><p>We&#8217;ve set aside multiple revenue streams to support our developers. Here&#8217;s the breakdown of how earnings will be shared with you:</p><ul><li><p><strong>Minimum guarantee &#8211; $200/month/game</strong>: Every <strong>active</strong> game will contribute at least $200 per month <strong>into the reward pool</strong>, guaranteed. &#8220;Active&#8221; means a game/mod has a baseline level of usage &#8211; currently defined as at least <strong>10 daily users and 12 hours total time spent across all users</strong> (this threshold may adjust as the community grows). If your AI game attracts a handful of players, we&#8217;ll ensure we add at least $200 to the overall pool. This is our way of saying <em>&#8220;thank you for participating&#8221;</em> and making sure small up-and-coming projects are rewarded.</p></li><li><p><strong>Patron revenue &#8211; 20%</strong>: We share 20% of <em>Player2 patron</em> subscription revenue with the creator community. (As our player base contributes, you benefit too!)</p></li><li><p><strong>Advertising revenue &#8211; 70%</strong>: We share 70% of any ad revenue generated in the Player2 ecosystem with developers. If your game or mod keeps players engaged (and seeing ads), you&#8217;ll earn the lion&#8217;s share of that ad money.</p></li><li><p>Revenue is then shared from the reward pool to each developer based on the share of retained users and time spent.</p></li></ul><p>In short, top projects with lots of playtime can earn <strong>significant</strong> revenue, and each active project contributes a supportive baseline to the reward pool.</p><h2>Why Use Player2 for Your AI NPCs?</h2><p>Choosing Player2 isn&#8217;t just about the money &#8211; it&#8217;s also about convenience, cost savings, and constant improvements. Here are some benefits you get by building with Player2:</p><ul><li><p><strong>Seamless player authentication:</strong> Player2 handles user logins and identity for you. You don&#8217;t need to set up accounts or manage credentials &#8211; when players use your mod through our platform, we&#8217;ve got the auth covered.</p></li><li><p><strong>Zero server or API costs:</strong> You don&#8217;t need to run any servers or pay for AI cloud services. Player2 manages all the heavy AI processing (LLM queries, voice synthesis, etc.), so <strong>you incur no hosting or API charges as a developer</strong>. Focus on making a fun game, not on cloud bills!</p></li><li><p><strong>Built-in safety and scalability:</strong> Our platform handles things like rate limiting and secure usage of AI tokens behind the scenes. That means your AI NPCs run safely and can scale to thousands of players without you worrying about infrastructure. We take care of updates, bug fixes, and performance optimisations continually.</p></li><li><p><strong>Continuous improvements:</strong> Every week, Player2 is getting better &#8211; we are fine-tuning our models, adding features, and improving latency. Your game&#8217;s AI NPCs will <strong>automatically get smarter and more natural over time</strong> with no extra work on your end. It&#8217;s like having a live service AI backend that only gets better, for free.</p></li><li><p><strong>Developer support &amp; community:</strong> We&#8217;re a small team deeply passionate about AI in games, and we work closely with our dev community. Join our Discord to get help, share feedback, and even influence our roadmap. We love featuring indie projects in our blog and social media &#8211; you could be our next success story!</p></li></ul><p><em>(On top of all this, you retain full creative control and ownership of your game/mod. We&#8217;re here to empower your vision, not interfere with it.)</em></p><h2>Ready to Build the Future of Games with Us?</h2><p>If you&#8217;re excited to bring intelligent NPCs into your project (and get rewarded for it), now&#8217;s the perfect time to jump in! We have the <strong>players</strong>, the <strong>tech</strong>, and now the <strong>developer funding</strong> to make it worth your while. All we need is <strong>you</strong> and your creative ideas.</p><p><strong>Interested? Get in touch with us:</strong></p><ul><li><p><strong>Email:</strong> wenzhe@elefant.gg</p></li><li><p><strong>LinkedIn:</strong> Connect with <a href="https://www.linkedin.com/in/wenzhe-shi-74ab6a2b/">Wenzhe</a> on LinkedIn</p></li><li><p><strong>Discord:</strong> Join the <a href="https://elefant.gg/discord">Player2 developer community</a> here (chat with our team and fellow devs, get support, and see what others are building)</p></li></ul><p>We can&#8217;t wait to see what amazing AI-powered experiences you will create. <strong>Let&#8217;s make game history together</strong>!</p>]]></content:encoded></item></channel></rss>