Navigating through magical darkness

This issue came up when the party’s warlock cast Hunger of Hadar upon some enemies. She argued that because they were within magical darkness, and blinded, that they should not be able to immediately run out of the spells area of effect without having to make some form of a check to know where they were going.

What are the rules for moving when you can’t see? Should an enemy be able to just walk out of magical darkness, or should there be a check that needs to be made? Visual below:

A grid map of a Warlock who has cast Hunger of Hadar on two enemies

Should they just be allowed to run towards her, or at least be able to escape? Or should they have to bumble around in the dark in order to try to get out, with ENEMY 1 potentially walking away from the Warlock in difficult terrain, thus being trapped in the spell for another round?

In the meantime, for less wise enemies, we would roll a d8 and they would walk in the direction that they rolled. Until I find more definitive ruling, we were thinking about the enemy having to make a survival check/wisdom saving throw opposed to the Warlock’s spell save DC, and imposing the d8 random movement if they fail.

Cannot assign to function call when looping through and converting excel files [closed]

With this code:

 xls = pd.ExcelFile('test.xlsx') sn = xls.sheet_names for i,snlist in list(zip(range(1,13),sn)):     'df{}'.format(str(i)) =  pd.read_excel('test.xlsx',sheet_name=snlist, skiprows=range(6))  

I get this error:

‘df{}’.format(str(i)) = pd.read_excel(‘test.xlsx’,sheet_name=snlist, skiprows=range(6)) ^ SyntaxError: cannot assign to function call

df+str(i) also return error

i want to make result as: df1 = pd.read_excel.. list1… df2 = pd.read_excel… list2….

How many creatures can step through a Teleportation Circle before it closes?

The party has just rescued 100 slaves. How many of them can conceivably enter a teleportation circle before the spell ends? It seems absurd to think all 100 can make it.

The teleportation circle spell description states that:

A shimmering portal opens within the circle you drew and remains open until the end of your next turn. Any creature that enters the portal instantly appears within 5 feet of the destination circle or in the nearest unoccupied space if that space is occupied.

What minimal space can a creature go through when squeezing?

A creature "squeezes" when going through a smaller space. PHB p. 193 "Creature size":

A creature can squeeze through a space that is large enough for a creature one size smaller than it.

Presumably, that means a creature can go through a space small enough for it to squeeze in, but not smaller. But how small this space can be? "A space that is large enough for a creature one size smaller" is unclear. How large is "large enough"? The same chapter says

A creature’s space is <…> not an expression of its physical dimensions. A typical Medium creature isn’t 5 feet wide, for example.

So if not 5 feet wide, how small that space can be? The answer to Can Medium creatures squeeze into smaller spaces? partially answers this by saying

While the small creature would be able to do it easily, the medium creature would need to squeeze.

But this is basically redefining what "squeezing" means for Medium creature through what it does for Small ones.

cPanel route traffic through two public IPs in different physical locations [closed]

I would like to be able to route an IP I have from another virtual machine to my main cPanel server to be used.

cPanel server IP is and the other machine has and as an additional IP. How am I able to route to the cPanel server. I presume I would need to route it through from the cPanel server side?

The end goal is to add the IP inside cPanel to be used to host a website.

Can Word of Recall teleport through planes of existence?

Word of Recall is a 6th level Cleric spell that states

You (…) teleport to a previously designated sanctuary.

It defines this sanctuary as

(…) a location, such as a temple, dedicated to or strongly linked to your deity.

The text of the spell says nothing about interplanar travel, however we have other spells to look at for reference:

  • Teleportation Circle is a 5th level spell that opens a short-lived portal to a predetermined prepared location on the same plane of existence;
  • Teleport is a 7th level spell that doesn’t allow planar travel, and can be inaccurate depending on the caster’s familiarity with the target location;
  • Plane Shift, also a 7th level spell, is designed for planar travel, but seems somewhat inaccurate, depending on DM fiat;

Teleportation Circle shares the most similarities with Word of Recall, requiring prior setup and a designated location prepared in advance. However both the Circle and Teleport require the target location to be on the same plane of existence, and Plane Shift can be inaccurate. I guess the single class limit of Word of Recall and the setup needed might balance the possibility of planar travel, but I’d rather not guess the design principles of the official rulemakers. Thus, the question:

Does Word of Recall allow for teleportation to a sanctuary that is on another plane of existence than the caster?

Does the Shepherd Druid’s Mighty Summoner feature apply to creatures summoned through their Faithful Summons feature?

Mighty Summoner says (emphasis mine):

Any beast or fey summoned or created by a spell that you cast gains the following benefits: […]

Faithful Summons says (emphasis mine):

If you are reduced to 0 hit points or are incapacitated against your will, you can immediately gain the benefits of conjure animals as if it were cast using a 9th-level spell slot.

Does the phrase "as if it were cast using a 9th-level spell slot" indicate that we should treat this as if we are casting the spell, thereby allowing us to apply Mighty Summoner to the creatures summoned?

Note, this question is different from this Q&A, as it is unclear if Faithful Summons counts as casting a spell: Would the 6th level Shepherd Druid’s Mighty Summoner feature works on summoned creatures not made from spells

Plot with Through[{f,g}[x]]… A bug or a misuse of Through[]?

I was expecting

Plot[{Sin[x], Cos[x]}, {x, -1, 1}, PlotLabels -> Automatic] 


Plot[Through[{Sin, Cos}[x]], {x, -1, 1}, PlotLabels -> Automatic] 

to give the same result, as

Through[{Sin, Cos}[x]] 


{Sin[x], Cos[x]}

However I get this two different plots:

plot 1 plot 2

Is it a bug or do I misunderstand something? (maybe HoldAll Plot[] attribute does not mix well with Through[])

(I am running under Linux with MMA version 11.2.0 for Linux x86 (64-bit) (September 11, 2017))

Disable or remove custom option plugin through functions.php

How can I disable or remove a custom plugin’s option through functions.php?

The plugin’s option looks like this:

$  customoption = lisfinity_get_option('membership-phone'); 

I can call this with echo in every page and appears, but I want to remove this option through functions.php with a Woocommerce condition. How can I do that? I attached my bad code for example. My code works and display echo, but can’t disable option. This is my woocommerce conditional code:

        function has_bought_items() {                    $  bought = false;       $  prod_arr = array( '2881', '2887' );       $  customer_orders = get_posts( array(         'numberposts' => -1,         'meta_key'    => '_customer_user',         'meta_value'  => get_current_user_id(),         'post_type'   => 'shop_order',          'post_status' => 'wc-completed'     ) );     foreach ( $  customer_orders as $  customer_order ) {             $  order_id = method_exists( $  order, 'get_id' ) ? $  order->get_id() : $  order->id;         $  order = wc_get_order( $  customer_order );                  foreach ($  order->get_items() as $  item) {                         if ( version_compare( WC_VERSION, '3.0', '<' ) )                  $  product_id = $  item['product_id'];             else                 $  product_id = $  item->get_product_id();                           if ( in_array( $  product_id, $  prod_arr ) )                  $  bought = true;         }     }               return $  bought;         }              if ( has_bought_items() ) {   $  customoption = lisfinity_get_option('membership-phone'); delete_option($  customoption');    }   else {     echo 'dasd';  }       }   add_action( 'wp_head', 'my_custom_function' );