Specific Thread Limit Settings For SER

Hope everyone is having a good weekend, so far!
I was wondering…I see SER is intelligent in that it scales back too many threads to keep from freezing.
Would it be useful to have users be able to set multiple thread limits?
I see that Re-verification takes very little resources…but scraping and posting are heavier.
Would verification/re-verification, check email,  scraping, and posting all have their own thread limit be good? Or a mess? lol

Postgres 12.1 uses Index Only Scan Backward instead of index when LIMIT is present

I have a medium sized table (~4M rows) of “functionCalls” which consists of 2 columns, input and function (both ids for another table):

  Column  |  Type   | Collation | Nullable | Default  ----------+---------+-----------+----------+---------  input    | integer |           | not null |   function | integer |           | not null |  Indexes:     "functionCall_pkey" PRIMARY KEY, btree (input, function) CLUSTER     "functionCallSearch" btree (function, input) Foreign-key constraints:     "fkey1" FOREIGN KEY (function) REFERENCES function(id) ON UPDATE CASCADE ON DELETE CASCADE     "fkey2" FOREIGN KEY (input) REFERENCES input(id)  

I want to find all rows that match a certain function, which is why I added the functionCallSearch index. Here is my query:

SELECT c.input FROM "functionCall" c INNER JOIN "function" ON (function.id = c.function) WHERE function.text LIKE 'getmyinode' ORDER BY c.input DESC LIMIT 25 OFFSET 0; 

This takes forever (currently ~ 20s) because pg refuses to use the index, and decides to do a Index Only Scan Backward on the primary key instead:

 Limit  (cost=0.71..2178.97 rows=25 width=4) (actual time=12903.294..19142.568 rows=8 loops=1)    Output: c.input    Buffers: shared hit=59914 read=26193 written=54    ->  Nested Loop  (cost=0.71..135662.48 rows=1557 width=4) (actual time=12903.292..19142.561 rows=8 loops=1)          Output: c.input          Inner Unique: true          Join Filter: (c.function = function.id)          Rows Removed by Join Filter: 3649900          Buffers: shared hit=59914 read=26193 written=54          ->  Index Only Scan Backward using "functionCall_pkey" on public."functionCall" c  (cost=0.43..80906.80 rows=3650225 width=8) (actual time=0.040..17083.489 rows=3649908 loops=1)                Output: c.input, c.function                Heap Fetches: 3649909                Buffers: shared hit=59911 read=26193 written=54          ->  Materialize  (cost=0.28..2.30 rows=1 width=4) (actual time=0.000..0.000 rows=1 loops=3649908)                Output: function.id                Buffers: shared hit=3                ->  Index Scan using function_text on public.function  (cost=0.28..2.30 rows=1 width=4) (actual time=0.023..0.026 rows=1 loops=1)                      Output: function.id                      Index Cond: ((function.text)::text = 'getmyinode'::text)                      Buffers: shared hit=3  Planning Time: 0.392 ms  Execution Time: 19143.967 ms 

When I remove the LIMIT this query is blazingly fast:

 Sort  (cost=5247.53..5251.42 rows=1557 width=4) (actual time=3.762..3.763 rows=8 loops=1)    Output: c.input    Sort Key: c.input DESC    Sort Method: quicksort  Memory: 25kB    Buffers: shared hit=6 read=4    ->  Nested Loop  (cost=0.71..5164.97 rows=1557 width=4) (actual time=0.099..3.739 rows=8 loops=1)          Output: c.input          Buffers: shared hit=6 read=4          ->  Index Scan using function_text on public.function  (cost=0.28..2.30 rows=1 width=4) (actual time=0.054..0.056 rows=1 loops=1)                Output: function.id                Index Cond: ((function.text)::text = 'getmyinode'::text)                Buffers: shared hit=2 read=1          ->  Index Only Scan using "functionCallSearch" on public."functionCall" c  (cost=0.43..5103.71 rows=5897 width=8) (actual time=0.039..3.670 rows=8 loops=1)                Output: c.function, c.input                Index Cond: (c.function = function.id)                Heap Fetches: 8                Buffers: shared hit=4 read=3  Planning Time: 0.514 ms  Execution Time: 3.819 ms 

Why is this? And how can I fix this?

I’ve checked https://dba.stackexchange.com/a/249676/106982 but n_distinct is not that far off, pg_stats says n_distinct: 623 while SELECT COUNT(*) FROM (SELECT DISTINCT function FROM "functionCall") returns 1065

Is there an official treasure generation method to limit magic item rolls based on dungeon level or some other factor?

I’m running an AD&D campaign for a party of usually-three PCs, who were first level until our most recent session. (As for what they are now, we’ll get to that…) I have the 1e DMG (door cover) and Unearthed Arcana, and a Monster Manual that might be older than that, judging by its condition. The players are using the 2e PHB; these are all inherited books, and the previous owner only ever DM’d in 1e and PC’d in 2e.

My issue is with treasure generation– I’ve been using the standard dungeon generation tables from the DMG, and it works well except for the outcome of treasure rolls. Specifically, magic items don’t seem to be segregated by dungeon level. That first-level party happened upon a Mirror of Mental Prowess, which had some fairly powerful effects but nothing game-breaking, and was worth five thousand experience. Divided among the party, this alone was enough to bring the priest and rogue to second level. Combined with the remainder of the treasure, those two reached level three, and the ranger reached level two.

Now building a dungeon for a later adventure, another magic item roll came up, resulting in… a Ring of Three Wishes. I simply vetoed that and re-rolled, getting something more reasonable this time, but now the question is in my mind of whether this is actually correct.

So, the simple version of the question:
Is there a method in AD&D to limit magic item rolls for treasure based on dungeon level or some other factor, or does this need to be created manually by the DM?


Note that this is not the same question as “What can I do when I accidentally gave out an overpowered item?” This relates purely to the RAW methods for generating magical treasures.

Does the Slow spell limit the number of Eldritch Blast beams?

This question comes from something stated in an answer to another one of my questions:

[Regarding eldritch blast] This spell allows you to make a single attack that targets multiple creatures, by making several attack rolls.


The slow spell states:

[…] Regardless of the creature’s abilities or magic items, it can’t make more than one melee or ranged attack during its turn […]

Note I am aware the slow spell also affects the casting of spells, so let’s assume a caster always succeeds on the d20 roll.

And then there is the eldritch blast spell which states:

A beam of crackling energy streaks toward a creature within range. Make a ranged spell attack against the target. On a hit, the target takes 1d10 force damage.

The spell creates more than one beam when you reach higher levels: two beams at 5th level, three beams at 11th level, and four beams at 17th level. You can direct the beams at the same target or at different ones. Make a separate attack roll for each beam.

Does the slow spell prevents you from creating more than one eldritch blast beam?

What is the lowest level at which a human can beat the 100m world record (or: the presumed human limit) without using magic?

Optimizing a character build for fast movement in order to break the sound barrier is a well-tried source of fun with numbers in DnD. Such speed optimizations usually incorporate lots of magic and possibly additional help by allies. But I’d like to learn more about what the human body is capable of within the rules of DnD, so I’m more interested in what can be achieved without magic.

A high level Monk with two levels in Fighter and the Mobile Feat can still become ridiculously fast. If I didn’t mess up the calculations, he can run 100m in about 7.52 seconds: Use Action Surge and Step of the Wind for triple dashing to run 84m in 6 seconds, then double dash in the next round for the remaining 16m. This is even almost 2 seconds faster than 9.4s, which scientists think is the human limit (in our world, that is). But hey, it’s a Level 20 character, so becoming somewhat superhuman does kind of make sense in the world of DnD, I guess.

This raises the question: At what point in the game can human adventurers become superhuman without using magic? This is of course a more vague and general question (one could ask the same e.g. in the context of lifting strength), but let’s stick to running speed for the moment. So, my question in precise terms is:

What is the minimum level at which a human character can run 100m in less than 9.58 (or: 9.4) seconds and thus break the current world record (or: become superhuman)?

Constraints:

  • No magic.
  • No epic boons.
  • No UA (but any official rule book).

Let’s use the same approach as above, i.e. Mobile Feat + k squares Unarmored Movement + Action Surge + Step of the Wind. Since a round is 6 seconds long and a square corresponds to 1,5m, this strategy lets you run 100m in

$ $ t(k)=6+\frac{100-(48+6k)}{6+\frac34 k}$ $

seconds. Plugging in the possible values of k yields

$ $ t(2)\approx 11.333, \quad t(3)\approx 10.121, \quad t(4)\approx 9.111, \quad t(5)\approx 8.256, \quad t(6)\approx 7.524.$ $

Hence, a Monk 9 / Figher 2 is still more than half a second away from beating the world record, while gaining another Monk Level already makes her superhuman at a total Character Level of 12. Did I miss something? Or can one even do better with an altogether different strategy?


PS: A quick comment on the tricky question about Ki being magic: Since Ki is only used for Step of the Wind, we could add two Rogue Levels and achieve the same by taking the Cunning Action instead. However, this would raise the current minimum level to 14.

Do PCs have a volumetric carry capacity limit?

In the Player Starting Guide (a summary of the PHB) it says that characters can carry an amount of Strength Value × 15 = weight limit in pounds. But later, in the gear section, there is a table about Container Capacity (usually cubic feets) of backpacks, chests, barrels, vials, etc, even about backpacks it says:

You can also strap items, such as a bedroll or a coil of rope, to the outside of a backpack.

So… are PCs limited by carry weight and by volume?

If that is true, how much initial volume can a character carry?

Is volume tracked per storage item or all as a whole (I mean, if I have an item which size 2 ft3 and two bags with 1 ft3 each one, can I carry that item or not?)?