dnd 3.5e – Any precedent for combining a halberd with a wizard’s staff?

Typically, weapons are discrete, and a weapon just doesn’t and just can’t function as another weapon without the DM or the game having made some sort of exception, whether because of the weapon itself (whether through description or magical properties), because of the wielder’s special abilities (including feats and class features), or because of spells and the like.

A house rule allowing a halberd to function as a magic staff (which, by the way, the rules say must be at least a masterwork-on-one end quarterstaff), however, is unlikely to unbalance the game in any serious manner.

That said, to do this according to the rules anyway, the fighter/wizard/eldritch knight adds to his magic quarterstaff the following weapon special ability:

  • The magic weapon special ability morphing (MIC 39) (+1 bonus; 0 lbs.) allows the wielder to take a standard action to transform a melee or thrown weapon into another weapon of the same size and effort. A typical weapon transformed into a double weapon applies its enhancement bonuses and weapon special abilities to one of the new weapon’s heads; a double weapon into a typical single weapon allows the wielder to pick which head’s enhancement bonus and weapon special abilities apply to the new weapon.

The transformation continues until the weapon’s transformed again, and magic quarterstaffs that are also magic staffs (and that’s totally a real thing) should function normally when transformed.1

There’s no precedent for a magic staff being anything but a magic staff

The vast amount of Dungeons and Dragons 3.5 material means I certainly may’ve missed something somewhere, but I know of no precedent for combining the feats Craft Magic Arms and Armor and Craft Staff to make a magic halberd that functions as a magic staff.


1 The 1st-level Sor/Wiz spell weapon shift (trans) (SpC 237) doesn’t work on quarterstaffs (or any other double weapon).

interaction design – Combining single- and multi- select drop-down in one form. How to dismiss the drop-down?

enter image description here

How to dismiss the drop-down in single-select and multi-select cases?

For single-select, the obvious option is to dismiss the drop-down on selection.

For multi-select, drop-down should stay open on selection, and can be dismissed with a button, or clicking outside.

Question: Will it be confusing for people to have two models of interaction side-by-side? What is the best strategy here?

Mind that cost of error ((wrong selection) is small. Nothing is saved, or processed, or launched into the space when option is selected.

Examples from the web are welcome in the comments section.

sql server – Combining multiple column

First of all I apologize for my wrong English. I have a problem that I have been trying to solve for about a year. I tried to solve it with 2 different scenarios but I could not speed it up.

Scenario 1

I am trying to achieve successful results by combining the columns of 2 tables with approximately 1000 columns. With the help of c #, I group the columns in the table and query them in order. I sum the result column, count the id column, and find the ratio by dividing the result column by the id column. If the ratio is 80 and above and the result sum is greater than 3, I add it to the list. If not, and if the counted id is greater than 20 and the sum of result is greater than 3, I add another column to the grouping. So I continued querying with subqueries.

S1 – Sample Table

id  result  col1  col2  col3 ... col1000
1    1       2     1     2        2
2    0       2     2     1        0
3    1       2     2     0        2
4    0       0     0     1        2
5    0       2     2     1        0
6    1       1     2     1        2
7    1       3     2     3        2

S1 – Sample Query

select col1,col2, ... , 
count(id) cnt, sum(result) sm, 
(100*sum(result)/cnt) avgg 
from sample 
group by col1,col2, ... having sum(result)>2 

S1 – Sample Output

╔══════╦══════╦═════╦═════╦════╦══════╗
║ col1 ║ col2 ║ ... ║ cnt ║ sm ║ avgg ║
╠══════╬══════╬═════╬═════╬════╬══════╣
║  2   ║  2   ║ ... ║ 10  ║ 6  ║ 60   ║
║  2   ║  1   ║ ... ║  8  ║ 7  ║ 88   ║
║  1   ║  2   ║ ... ║  6  ║ 6  ║ 100  ║
║  1   ║  1   ║ ... ║  9  ║ 3  ║ 33   ║
║  3   ║  2   ║ ... ║  4  ║ 3  ║ 75   ║
║  0   ║  1   ║ ... ║  7  ║ 4  ║ 57   ║
╚══════╩══════╩═════╩═════╩════╩══════╝

Scenario 2

Since the process took too long in scenario 1, I developed scenario 2. In this, I created a table with 4 columns and automatically assigned an id to each record. I have directly typed the ids of the previous tables into the column named ‘mid’ and the result column to the column that takes the name of each column. Again in this scenario, I developed it with c #.

S2 – Sample Table

id  mid    colname  result 
1    1       col3     0    
2    2       col4     1     
3    3       col1     0     
4    4       col2     1     
5    1       col4     0     
6    3       col2     0     
7    4       col1     1     

S2 – Sample Query

select concat('parent_cols',',',colname),
max(id) maxid, sum(result) summ 
from sample 
where mid in ('parent mids') and id>('parent maxid')
GROUP BY colname having sum(result)>2 
order by maxid 

In this scenario, I am trying to find successful results with subqueries with c #. this scenario came faster, but both scenarios take days for a single review.

Edit1: Scenario 1 350k rows, Scenario 1 to Scenario 2 converting 13m rows.

How can I speed up this process, I have been searching for a solution whenever I have the opportunity for about 1 year. Thank you in advance for putting up with my bad English and helping.

google sheets – Combining split data into columns and filter out blanks when importHTML

You can use a query() wrapper to filter and aggregate dynamic arrays such as data retrieved with importhtml().

To combine, split and otherwise process dynamic arrays, use an array enabled formula that contains an { array expression } or one of these functions: arrayformula(), filter(), sort(), sortn(), index(), query(), unique(), transpose(), indirect(), offset(), flatten(), split(), mmult(), iferror(), ifna(), switch(), choose(), isbetween(), importrange(), array_constrain(), frequency(), growth(), linest(), logest(), minverse(), trend(), daverage(), dcount(), dcounta(), dget(), dmax(), dmin(), dproduct(), dstdev(), dstdevp(), dsum(), dvar() or dvarp().

mobile – Combining 6 apps into one

I’ve actually been involved in something similar, and with more than six in one. In the end we went with the approach of having the main home screen of the app display an icon and label for each of the apps. This main screen also provided navigation to the overall help page and overall settings page. Below is a rough mockup of how it was designed:

enter image description here

I say “overall settings” because the settings icon at top right was for things like using iCloud, Backing up to Dropbox, Passcode Lock, Theme Colour, App Screen Layout, etc. In other words, settings that were for the entire app as a whole.

The “overall help” was just about the main app screen and what some of the overall settings meant.

Once the user tapped on each of the app options, the resulting screen also had an option for them to navigate back to the main “Apps” screen. And, depending on the app, they may have also had a dedicated ‘help’ or ‘settings’ screen.

Of course, in your case it may not need to be this advanced, but the point of sharing my example is because this works. User feedback has been extremely positive and this design is something that has evolved over time based on user feedback.

Combining an Excel IF Statement with VLOOKUP

I have the following if statement in Excel:

=IF(VLOOKUP(AB2,AD:AD,1,0)=TRUE,1,0)

What I am trying to do is say the following:

“If the results of the VLOOKUP return any value other than “#N/A”, take the value of 1, otherwise take the value of 0.”

What it’s currently doing is if there is a returned value from the VLOOKUP, it’s returning 0.

How can I fix this?

Thank you

3d – How can I detect and hide faces inside an object when combining two or more meshes?

I am trying to make a game where the player can make vehicles out of parts. To apply proper physics to the vehicles, like drag and buoyancy, I would like to get the outer hull of the various parts placed in arbitrary positions, scalings, and rotations. The hull will most likely be concave, not convex.

How can I detect which faces (or parts of faces) would be on the interior of the vehicle so I can ignore them? Or alternatively, which faces are not on the interior of the vehicle and therefore make up the outer hull?

Some use cases that I am trying to handle are:

  1. Two cubes placed right next to each other, like in a grid.
    two cubes of the same size

  2. Two cubes placed next to each other, but of different sizes
    two cubes of different size

  3. A cube and a sphere (or other shape) overlapping each other.
    a cube and a sphere

One method that I have tried but not yet got to work is to voxelize the parts using raycasting or SDFs and then using marching cubes or dual contouring to make the hull mesh. That has issues when there are sharp angles and it can create a lot of triangles, a lot more than the original mesh. Are there other methods that I should try?

Can binary space partitioning (BSP) or a k-d tree be used for this or is that the wrong approach?

I am working in Unity / C#, but can translate from other languages.

passwords – Is combining salt from two places secure enough and what length

I need to implement some hashing scheme for an open-source project. This is what I currently have and I’d like to hear whether this is secure enough –

The password is hashed using PBKDF2-SHA256 (which I prefer over bcrypt simply because OpenSSL supports it natively) with 2048 iterations.

The salt is actually a concatenation of two strings – the first one is unique and stored in the DB along with the password in plaintext. The second one is shared and stored in plaintext in the program’s configuration file. My logic is that this will prevent brute forcing passwords if an attacker gains access to the DB but not to the server’s filesystem.

Is this secure? Also how long should each part of the two salt strings be? 16+16 bytes? 32+32 bytes?

Thank you.

architecture – Combining a pure ECS with a FSM scheduling system

Flat update loop

The multi-phase design may be the root of the problem, because it creates a dependency graph of its own, misaligned to ECS’s dependency graph. The most direct solution would be to express the phases as a single ECS update.

If certain update function needs to be called multiple times (i.e. in different phases) during the update loop, you can pass the phase argument to that function. Even better, you could tell it what exactly you want in terms more specific than a phase. Like this:

updateMovement(playerOnly = true);
//...
updateMovement(playerOnly = false);

To alternate between player’s turn and everyone else’s, it may be okay to keep phases, but just 2 of them as a simple if-else branch. Alternatively, you may think of an animation queue, that may be played once calculations are complete.

Entity tracking lists

The issue of update sparsity (i.e. updates are skipping lots or most of the entities) in ECS is solved with entity lists. Ideally, you are supposed to use the entity lists from very beginning, to track which entities are relevant to which update function. The lists must be updated every time entity is created, modified or destroyed.

This approach may be applied to other aspects, such an AI or animation state (those may be FSMs). Allocate a list for each possible state (non-enums must be compressed to enums with clever mapping) and move entities between lists according to their current state. You also want to encapsulate the state to automate the list transfers.


These were the core issues, everything below is tangential.


One of they key features of rogue-likes is non-modality: one control scheme is used for all gameplay interaction. Picking item from the shelves and interacting with the cash register to deposit the money is the canonical way of trading, while displaying separate UI is antithetical to that.

Not saying that it’s a silver bullet, but so far as a player I find that more enjoyable — partly because an “immersive” design promotes well-thought shopping list of really valuable items, while most shopping UIs welcomed me to the bottomless repositories of garbage.

Non-modality should also play well with the ECS design.

haproxy – Combining several ACLs to make an alias

I was wondering if it is possible to combine two ACLs to reduce repeating myself in my HAProxy config. Example:

acl prod hdr_beg(host) -i example.com
acl beta hdr_beg(host) -i beta.example.com
acl url_app path_beg /app/

Instead of having to do an if prod url_app or if beta url_app I would like to do if prod_app or if beta_app where prod_app would alias to prod AND url_app with the same respective treatment for beta_app

Is this possible?