Are there any rules pertaining to using extremely heavy weapons, either standard or improvised?

I haven’t found any rules related to this subject. Nothing about weight changing the damage of any weapon was seen anywhere, and neither was there anything on the improvised weapon.

Have anyone seen house rules that modified the damage of standard weapons that happen to be extremely heavy by design? Like instead of using a Warhammer weighing 2lbs someone wants to use one that is 20lbs.

Using everyday items that are not included in the official list of weapons are generally counted as attacking with an improvised weapon, like a chair or a wine bottle. But the problem is, what if the improvised weapon in question is so ridiculously heavy that it no longer makes logical sense for it to only inflict 1d4 damage?

Consider The Bag of Holding, which will always be 15lbs. (For reference, a battleax is weighed at 8lbs and heavy crossbow weighs 18lbs) Even if the texture of the bag in question is soft leather, when you swing that bag to hit someone or someone, the weight and momentum itself should be plenty enough to crush things.

PS: Not that I would want to swing that thing around! Damaging the bag could be disastrous.

Swinging around a sack with a rock is definitely an improvised weapon with 1d4 damage. But if someone swings a regular sack filled with a lot of rocks (or with tons of loot and gold),filled the bag with more than 50lbs worth of stuff and swung it around? Or 100lbs? (Assuming the sack doesn’t rip or fall apart before the smashing hit connects).

Speaking of which, would using a gigantic heavy table that is capable of seating twenty people as an improvised weapon during the bar fight in the tavern really only do 1d4 damage?

Does either ability of the thrown weapon fighting style affect boomerangs?

The thrown weapon fighting style says:

You can draw a weapon that has the thrown property as part of the attack you make with the weapon. In addition, when you hit with a ranged attack using a thrown weapon, you gain a +2 bonus to the damage roll.

Boomerangs, listed here, and the Storm Boomerang which is not in SRD, don’t have the thrown property. This would seem to exclude them from the first ability which is very explicit about what it affects, and possibly exclude them from the second, depending whether "thrown weapon" refers to a weapon with the thrown property or to any weapon that is thrown to make a ranged attack. This seems absurd though.

What is an efficient way to get a look-at direction from either a quaternion or a transformation matrix?

So, I have an object in my custom engine (C++), with a column-major transform in world space. I’m using a package that takes a look-at direction as an input. What’s the most efficient way to get a look-at direction from this transform? Do I extract the rotation matrix? Do I try to extract a quaternion?

How can you modify a SUBSET-SUM instance so evaluating a set outputs either 0 or 1?

An SUBSET-SUM instance is a list of $ n$ integers $ \{ a_1, a_2,… a_n\}$ and a target $ W$ . To evaluate a set is to find the sum of a selection of numbers in the set. However, I want to know, is it possible to modify the instance, or SUBSET-SUM in general, where evaluating a set outputs $ 0$ if the sum equals $ W$ , and $ 1$ otherwise?

Bonus: Give a list of other NP-complete problems (other than 3SAT, where you evaluate a formula that either outputs $ 0$ or $ 1$ depending on the set of binary variables being passed into it), where evaluating an analogous instance outputs $ 0$ if it satisfies some objective related to the problem and $ 1$ otherwise.

How to remove sublists whose difference of two elements is either 1 or 11?

I want to create a list of 3-element subsets of $ \{1,2,\cdots,12\}$ where no two elements in each subset can have difference of 1 or 11.

The following attempt fails because it returns just a list of all subsets without restriction.

Select[Subsets[Range[12], {3}]  , (Abs[#[[1]] - #[[2]]] != 1 || Abs[#[[1]] - #[[2]]] != 11) &&    (Abs[#[[1]] - #[[3]]] != 1 || Abs[#[[1]] - #[[3]]] != 11) &&    (Abs[#[[3]] - #[[2]]] != 1 || Abs[#[[3]] - #[[2]]] != 11) &] 

Edit

I just got the solution as follows, but can it be simplified?

Select[Subsets[Range[12], {3}]   , ! MemberQ[{1, 11}, Abs[#[[1]] - #[[2]]]] &&     ! MemberQ[{1, 11}, Abs[#[[1]] - #[[3]]]] &&     ! MemberQ[{1, 11}, Abs[#[[3]] - #[[2]]]] &] // Length 

Understanding the proof of “DFS of undirected graph $G$, yields either tree edge or back edge” better with graph for each statement in proof

I was going through the edge classification section by $ \text{DFS}$ algorithm on an undirected graph from the text Introduction to Algorithms by Cormen et. al. where I came across the following proof. I was having a little difficulty in understanding the steps of the proof and hence I made an attempt to understand it fully by accompanying each statement in the proof with a possible graph of the situation.

Theorem 22.10 : In a depth-first search of an un-directed graph $ G$ , every edge of $ G$ is either a tree edge or a back edge.

Proof:

  1. Let $ (u , v)$ be an arbitrary edge of $ G$ , and suppose without loss of generality that $ d[u] < d[v]$ . Then, $ v$ must be discovered and finished before we finish $ u$ (while $ u$ is gray), since $ v$ is on $ u$ ‘s adjacency list.

  2. If the edge $ (u, v)$ is explored first in the direction from $ u$ to $ v$ , then $ v$ is undiscovered (white) until that time.

Figure 1

Figure 1 : Situation in point 2. DFS starts from ‘u’, ‘u’ is grayed and DFS then looks along the red arrow to ‘v’

  1. Otherwise we would have explored this edge already in the direction from $ v$ to $ u$ . Thus, $ (u, v)$ becomes a tree edge.

Figure 2

Figure 2 : Situation in point 3. DFS starts from ‘u’, ‘u’ is grayed, then discoveres ‘w’ and ‘w’ is grayed and then again discovers ‘v’ DFS then looks along the red arrow to ‘u’ , the green pointer explains the rest

  1. If $ (u, v)$ is explored first in the direction from $ v$ to $ u$ , then $ (u, v)$ is a back edge, since $ u$ is still gray at the time the edge is first explored.

Figure 3

Figure 3 : Situation in point 4. DFS starts from ‘u’, ‘u’ is grayed, then discoveres ‘w’ and ‘w’ is grayed and then again discovers ‘v’ DFS then looks along the red arrow to ‘u’ , ‘u’ is already grayed so the edge becomes a back edge, indicated by the green pointer


Could anyone confirm if I am on the right track or if not please rectify me.

[My question might seem similar to this or this but neither of them seemed to help me]

What are the implementation strategies for multiple dispatch: class-based, or method-based organization, or either?

Regarding classes and methods, Practical Foundation of Programming Languages by Harper says:

Dynamic dispatch is often described in terms of a particular implementation strategy, which we will call the class-based organization. In this organization, each object is repre- sented by a vector of methods specialized to the class of that object. We may equivalently use a method-based organization in which each method branches on the class of an ob- ject to determine its behavior. Regardless of the organization used, the fundamental idea is that (a) objects are classified and (b) methods dispatch on the class of an object. The class-based and method-based organizations are interchangeable and, in fact, related by a natural duality between sum and product types. We explain this symmetry by focusing first on the behavior of each method on each object, which is given by a dispatch matrix. From this, we derive both a class-based and a method-based organization in such a way that their equivalence is obvious.

More generally, we may dispatch on the class of multiple arguments simultaneously. We concentrate on single dispatch for the sake of simplicity.

Does “we may dispatch on the class of multiple arguments simultaneously” mean “we may dispatch on the method of multiple arguments simultaneously”

For multiple dispatch, what is its implementation strategy? Class-based organization, or method-based organization, or either? (My guess is that class-based organization doesn’t work for multiple dispatch, but only for single dispatch.)

Thanks.

What are the pros and cons of multiclassing a Dragonborn Paladin with either Sorcerer or Warlock? and when and if to swap over [closed]

My Dragonborn Paladin is nearing the end of level 2, (Str3, Dex0, Con2, Int-1, Wis-1, Cha3, with Defensive giving AC19).

The main group I play with, he is the only Tank, unless my 10 year old daughter, joins in with her Circle of the moon Druid

She is the only child in the group and you can’t rely on her to focus on battle tactics 🙂

—————-new below ——————

My initial goal was to create a super paladin, I tend to play him as a tank with healing, saving my limited spell casting for just the right time due to limited spell slots, so I hardly ever use it. I once even died holding onto the valuable spell slots because I forgot about them.

However, once I started looking into it, I haven’t found that perfect sweet spot, that balances out the Spell Slinging Tank Front Man. All the options I’ve looked at have drawbacks that make me wonder if it is a combo that is worth pursuing

Just hoping for that splash of inspiration to make it all come together.