<?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"><channel><title><![CDATA[PTR Changelog 2019-06-24: Store and market]]></title><description><![CDATA[<p><em>This post describes changes on the <a href="http://docs.screeps.com/ptr.html" rel="nofollow">Public Test Realm</a>.</em></p>
<ul>
<li>
<p>Implemented new global <a href="https://ptr-docs.screeps.com/api/#Store" rel="nofollow"><code>Store</code></a> prototype. All structures and creeps now use this prototype as their <code>store</code> property. Old style properties are now considered deprecated. See documentation for more details, and also <a href="https://screeps.com/forum/topic/2708/draft-store-prototype-api" rel="nofollow">this previous discussion</a>.</p>
</li>
<li>
<p>Added new method <a href="https://ptr-docs.screeps.com/api/#Game.market.getHistory" rel="nofollow"><code>Game.market.getHistory</code></a>.</p>
</li>
<li>
<p>Increased per-player market orders limit from 50 to 300.</p>
</li>
<li>
<p>Added expiration period to market orders. An order expires in 30 days after its creation, and the remaining market fee is returned. Extending the order doesn't update its expiration time.</p>
</li>
</ul>
<hr />
<p>This update is available in <code>ptr</code> beta branch on npm and Steam starting from version <code>4.0.0-beta.1</code>:</p>
<pre><code>npm install screeps@ptr
</code></pre>
<p><img src="/forum/assets/uploads/files/1544102983960-steam_2018-12-06_16-28-37.png" alt="0_1544102982120_Steam_2018-12-06_16-28-37.png" class="img-responsive img-markdown" /></p>
]]></description><link>http://screeps.com/forum/topic/2745/ptr-changelog-2019-06-24-store-and-market</link><generator>RSS for Node</generator><lastBuildDate>Fri, 08 May 2026 09:43:15 GMT</lastBuildDate><atom:link href="http://screeps.com/forum/topic/2745.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 24 Jun 2019 10:54:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Wed, 11 Sep 2019 13:54:59 GMT]]></title><description><![CDATA[<p><em>This post describes changes on the <a href="http://docs.screeps.com/ptr.html" rel="nofollow">Public Test Realm</a>.</em></p>
<ul>
<li>
<p>Implemented new global <a href="https://ptr-docs.screeps.com/api/#Store" rel="nofollow"><code>Store</code></a> prototype. All structures and creeps now use this prototype as their <code>store</code> property. Old style properties are now considered deprecated. See documentation for more details, and also <a href="https://screeps.com/forum/topic/2708/draft-store-prototype-api" rel="nofollow">this previous discussion</a>.</p>
</li>
<li>
<p>Added new method <a href="https://ptr-docs.screeps.com/api/#Game.market.getHistory" rel="nofollow"><code>Game.market.getHistory</code></a>.</p>
</li>
<li>
<p>Increased per-player market orders limit from 50 to 300.</p>
</li>
<li>
<p>Added expiration period to market orders. An order expires in 30 days after its creation, and the remaining market fee is returned. Extending the order doesn't update its expiration time.</p>
</li>
</ul>
<hr />
<p>This update is available in <code>ptr</code> beta branch on npm and Steam starting from version <code>4.0.0-beta.1</code>:</p>
<pre><code>npm install screeps@ptr
</code></pre>
<p><img src="/forum/assets/uploads/files/1544102983960-steam_2018-12-06_16-28-37.png" alt="0_1544102982120_Steam_2018-12-06_16-28-37.png" class="img-responsive img-markdown" /></p>
]]></description><link>http://screeps.com/forum/post/13867</link><guid isPermaLink="true">http://screeps.com/forum/post/13867</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Wed, 11 Sep 2019 13:54:59 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>Yey! Access to the market history will definitely make the market easier and less costly to use.</p>
<p>It's great that we can eventually get our fee back if no-one deals our order. However, this does make me start to wonder why we can't just get the fee back if we cancel the order early? Is there a reason why we need to enforce a time limit on this?</p>
]]></description><link>http://screeps.com/forum/post/13868</link><guid isPermaLink="true">http://screeps.com/forum/post/13868</guid><dc:creator><![CDATA[SystemParadox]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Mon, 24 Jun 2019 11:16:59 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/1624">@SystemParadox</a> Among other things, it puts a price on flooding the market with orders, to e.g. artificially depress or inflate resource prices.</p>
<p>I love the concept of the store change, its going to tidy a huge portion of my code <img
      src="http://screeps.com/forum/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=a1k070tfs06"
      class="not-responsive emoji emoji-android emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>http://screeps.com/forum/post/13869</link><guid isPermaLink="true">http://screeps.com/forum/post/13869</guid><dc:creator><![CDATA[Kotarou]]></dc:creator><pubDate>Mon, 24 Jun 2019 11:16:59 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>could you please push it to npm ? <img
      src="http://screeps.com/forum/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=a1k070tfs06"
      class="not-responsive emoji emoji-android emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>http://screeps.com/forum/post/13871</link><guid isPermaLink="true">http://screeps.com/forum/post/13871</guid><dc:creator><![CDATA[W4rl0ck]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/10">@w4rl0ck</a> Private servers support is not implemented yet.</p>
]]></description><link>http://screeps.com/forum/post/13872</link><guid isPermaLink="true">http://screeps.com/forum/post/13872</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>Excellent, and I agree with the returning leftover fee. Should help encourage a more diverse market.
Thanks for the hard work!</p>
]]></description><link>http://screeps.com/forum/post/13873</link><guid isPermaLink="true">http://screeps.com/forum/post/13873</guid><dc:creator><![CDATA[Davaned]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>Although it's &quot;fair&quot; to return unused fees, it discourages people pricing their orders &quot;to sell&quot; - so the spread will be wider, and less transactions will take place, as there's no penalty for having a sell order at such a high price that it never sells, or a buy order at such a low price that no-one sells into it.</p>
]]></description><link>http://screeps.com/forum/post/13874</link><guid isPermaLink="true">http://screeps.com/forum/post/13874</guid><dc:creator><![CDATA[wtfrank]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/1436">@wtfrank</a> While there is some downside in not having as much of a cost to place outlier orders, having the market price average will drastically reduce the impact of having far-off orders. In fact, given there is an average price I think that people will find their bad orders never really get completed. I think it's better for overall market health in the less traded regions, even if it does have some downsides.</p>
]]></description><link>http://screeps.com/forum/post/13875</link><guid isPermaLink="true">http://screeps.com/forum/post/13875</guid><dc:creator><![CDATA[Davaned]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>hmm.. my creeps having problem withdrawing from tombstones.. always getting -7 INVALID_TARGET</p>
<p>I cleared my main-loop and called directly for an example:
<img src="/forum/assets/uploads/files/1561401946494-11fdc685-7fd7-4b81-bec3-f541607277c0-image.png" alt="0_1561401946589_11fdc685-7fd7-4b81-bec3-f541607277c0-image.png" class="img-responsive img-markdown" /></p>
]]></description><link>http://screeps.com/forum/post/13877</link><guid isPermaLink="true">http://screeps.com/forum/post/13877</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a> Thanks, we'll take a look</p>
]]></description><link>http://screeps.com/forum/post/13880</link><guid isPermaLink="true">http://screeps.com/forum/post/13880</guid><dc:creator><![CDATA[o4kapuk]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Tue, 25 Jun 2019 06:58:22 GMT]]></title><description><![CDATA[<p>and PowerCreeps can not withdraw generally also with a OK result.. but using GENERATE_OPS power works</p>
<p>their carryCapacity is undefined..</p>
<p><img src="/forum/assets/uploads/files/1561418133852-b1682f4a-7b83-4697-9375-6dd635654974-image.png" alt="0_1561418133763_b1682f4a-7b83-4697-9375-6dd635654974-image.png" class="img-responsive img-markdown" /></p>
<p>Edit: ops consuming powers don't seem to work (at least OPERATE_EXTENSION). it returns with -6 ERR_NOT_ENOUGH_RESOURCES</p>
]]></description><link>http://screeps.com/forum/post/13882</link><guid isPermaLink="true">http://screeps.com/forum/post/13882</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Tue, 25 Jun 2019 06:58:22 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>shard2 halted.. no ongoing ticks anymore</p>
]]></description><link>http://screeps.com/forum/post/13895</link><guid isPermaLink="true">http://screeps.com/forum/post/13895</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a> Fixed</p>
]]></description><link>http://screeps.com/forum/post/13896</link><guid isPermaLink="true">http://screeps.com/forum/post/13896</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Fri, 28 Jun 2019 09:46:25 GMT]]></title><description><![CDATA[<p>seems there are more problems on shard2</p>
<p><img src="/forum/assets/uploads/files/1561714607916-f7602bc2-cca7-4d85-9cb5-480ae4bf85b1-image.png" alt="0_1561714606910_f7602bc2-cca7-4d85-9cb5-480ae4bf85b1-image.png" class="img-responsive img-markdown" /></p>
<p>probably only a short-term problem.. seems not a problem anymore..</p>
]]></description><link>http://screeps.com/forum/post/13901</link><guid isPermaLink="true">http://screeps.com/forum/post/13901</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Fri, 28 Jun 2019 09:46:25 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>I'm very happy about this change. It brings information into the game that was previously only in the UI. Even scanning the market and keeping history data yourself couldn't tell you volume and price paid.</p>
<p>There's also still value in scanning and keeping some of your own history, though, so anyone who already has that code isn't sad to have it.</p>
<p>Also, I'm looking forward to getting the million credits or so back for my legendary energy order on shard0. <img
      src="http://screeps.com/forum/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=a1k070tfs06"
      class="not-responsive emoji emoji-android emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>http://screeps.com/forum/post/13905</link><guid isPermaLink="true">http://screeps.com/forum/post/13905</guid><dc:creator><![CDATA[anisoptera]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a> we'll take a look, thank you</p>
]]></description><link>http://screeps.com/forum/post/13908</link><guid isPermaLink="true">http://screeps.com/forum/post/13908</guid><dc:creator><![CDATA[o4kapuk]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>Code deployed to PTR doesn't match PTR branch on github, creep to creep transfer broken on currently deployed code. Line 25 of function prevents transfer to anything not a structure.</p>
<pre><code> if(!register.structures[target.id] || !utils.capacityForResource(data(target.id), resourceType)) {
            return C.ERR_INVALID_TARGET;
 }
</code></pre>
]]></description><link>http://screeps.com/forum/post/13917</link><guid isPermaLink="true">http://screeps.com/forum/post/13917</guid><dc:creator><![CDATA[WarInternal]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Tue, 02 Jul 2019 19:31:35 GMT]]></title><description><![CDATA[<p>When iterating through <code>Storage.store</code> (or any other <code>.store</code>) via <code>for (var key in room.storage.store)</code> one of the keys returned is <code>.toString</code> function, which I think it should not be returned.</p>
]]></description><link>http://screeps.com/forum/post/13919</link><guid isPermaLink="true">http://screeps.com/forum/post/13919</guid><dc:creator><![CDATA[Orlet]]></dc:creator><pubDate>Tue, 02 Jul 2019 19:31:35 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/22">@demawi</a> said in <a href="/forum/post/13882">PTR Changelog 2019-06-24: Store and market</a>:</p>
<blockquote>
<p>and PowerCreeps can not withdraw generally also with a OK result.. but using GENERATE_OPS power works</p>
<p>their carryCapacity is undefined..</p>
<p><img src="/forum/assets/uploads/files/1561418133852-b1682f4a-7b83-4697-9375-6dd635654974-image.png" alt="0_1561418133763_b1682f4a-7b83-4697-9375-6dd635654974-image.png" class="img-responsive img-markdown" /></p>
<p>Edit: ops consuming powers don't seem to work (at least OPERATE_EXTENSION). it returns with -6 ERR_NOT_ENOUGH_RESOURCES</p>
</blockquote>
<p>Still an issue. Without PowerCreeps also factories can hardly be tested</p>
]]></description><link>http://screeps.com/forum/post/13927</link><guid isPermaLink="true">http://screeps.com/forum/post/13927</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>tombstone-pickup and usePower.PWR_OPERATE_FACTORY now working... but still having problems with PWR_OPERATE_EXTENSION it returns 0 but nothing happens (no cooldown nor extensions will be filled)</p>
]]></description><link>http://screeps.com/forum/post/14038</link><guid isPermaLink="true">http://screeps.com/forum/post/14038</guid><dc:creator><![CDATA[demawi]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>PTR is updated with the latest fixes. Thanks for your reports!</p>
]]></description><link>http://screeps.com/forum/post/14052</link><guid isPermaLink="true">http://screeps.com/forum/post/14052</guid><dc:creator><![CDATA[o4kapuk]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>I think we may want to create an official reverse shim before moving the <code>.store</code> to MMO.</p>
<p>I had focused on whether the new <code>.store</code> would be backward compatible with the old plain <code>Object</code>. As far as I can tell that is the case. However, I discovered another failure that I fear might be quite common. In my case I was using something like <code>if(!!struct.store)</code> to change creep behavior when distributing energy among my structures. The new <code>.store</code> property didn't break my code (no errors) but my creeps stopped filling extensions.</p>
<p>I worry that other players will get frustrated if they run into a similar issue. If we had an official snippet that might help a frustrated player quickly avoid the change to see if their problem goes away (prove to themselves that it's not the new <code>.store</code> at fault).</p>
<p>I'm imagining something like mirroring <code>.store</code> to <code>.cargo</code> and removing <code>.store</code> from the structures that didn't have it previously. If <code>.cargo</code> is the wrong color of bikeshed it's an easy find replace in the snippet to pick a new one.</p>
<p>Also the new name makes a clear verification path. Change all of your code to use <code>.cargo</code> instead of <code>.store</code> fixing it along the way. Once you no longer refer to <code>.store</code> anywhere remove the shim and Replace <code>s/\.cargo/.store/g</code>.</p>
<pre><code>if(globals.Store) {
  for (klass of [StructureExtension, StructureStorage ...]) {
    Object.setProperty(
      klass.prototype,
      'cargo',
      Object.getOwnPropertyDescriptor(klass.prototype, 'store');
  }
  for (klass of [StructureExtension, ...]) {
    delete klass.prototype.store;
    Object.setProperty(
      klass.prototype,
      'energy',
      { get() { return this.cargo? this.cargo.energy: 0; } }
    )
  }
}

// also clean up non-energy properties in StructurePowerSpawn, StructureLab, and StructureNuker
</code></pre>
]]></description><link>http://screeps.com/forum/post/14053</link><guid isPermaLink="true">http://screeps.com/forum/post/14053</guid><dc:creator><![CDATA[deft-code]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Wed, 11 Sep 2019 13:51:50 GMT]]></title><description><![CDATA[<p>This update has been deployed to <code>ptr</code> private server branch (version <code>4.0.0-beta.1</code>) on both npm and Steam:</p>
<pre><code>npm install screeps@ptr
</code></pre>
<p><img src="https://screeps.com/forum/assets/uploads/files/1544102983960-steam_2018-12-06_16-28-37.png" alt="" class="img-responsive img-markdown" /></p>
<p><strong>Please note that this change includes backwards-incompatible data migration! It will upgrade your <code>db.json</code> file permanently on the first launch. New Steam client (currently in <code>public-test-realm</code> beta branch) will only connect to servers with version <code>4.0.0-beta.1</code> and later. After this change goes to production, Steam clients will no longer be able to connect to <code>3.x.x</code> server version.</strong></p>
]]></description><link>http://screeps.com/forum/post/14094</link><guid isPermaLink="true">http://screeps.com/forum/post/14094</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Wed, 11 Sep 2019 13:51:50 GMT</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><strong>The release date of this feature: October 15.</strong> It will go live to production along with all other planned features.</p>
]]></description><link>http://screeps.com/forum/post/14208</link><guid isPermaLink="true">http://screeps.com/forum/post/14208</guid><dc:creator><![CDATA[artch]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p>Seems to few market orders for the compressed minerals? Most of the bars dont have any active buy orders. Probably due to its now profitable to buy normal minerals, compress and then sell them again.</p>
]]></description><link>http://screeps.com/forum/post/14305</link><guid isPermaLink="true">http://screeps.com/forum/post/14305</guid><dc:creator><![CDATA[Geir1983]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Reply to PTR Changelog 2019-06-24: Store and market on Invalid Date]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="http://screeps.com/forum/uid/1396">@geir1983</a> said in <a href="/forum/post/14305">PTR Changelog 2019-06-24: Store and market</a>:</p>
<blockquote>
<p>Seems to few market orders for the compressed minerals? Most of the bars dont have any active buy orders. Probably due to its now profitable to buy normal minerals, compress and then sell them again.</p>
</blockquote>
<p>I think we should wait for the market to adjust to cut down on the profit margin from buying minerals, barring, and selling before changing anything.</p>
<p>All the commodities are also mineral sinks and it seems still relatively few people are touching them yet. That'll provide other sinks beyond bars.</p>
]]></description><link>http://screeps.com/forum/post/14306</link><guid isPermaLink="true">http://screeps.com/forum/post/14306</guid><dc:creator><![CDATA[Tigga]]></dc:creator><pubDate>Invalid Date</pubDate></item></channel></rss>