What would be the effects of changing the duration of a round from 6 seconds to 5 seconds?

I’m introducing the following house rule:

A round lasts 5 seconds.

What would be the effects of such a house rule? Would there be any? Would this break the game?

Out of the top of my head, I cannot think of any actions/spells/mechanics that rely on the duration of a round.


Disclaimer: The original question was a bit broader and was closed twice as opinion-based/off-topic.

Changing the Shopping cart Table order / VAT disappeared

I want to change the column order in the Shopping cart table. I want to exchange the Posititions of the Sum and VAT Column so that the Sum is the Last position. I guest the right php Template is the cart.php. Also the VAT name disappeared somehow in my column. I have VAT activated in all of my plugins and settings but it wont show :S I would be really thankful if the Pros out there could help me 🙂

enter image description here

    <?php /**  * Cart Page  *  * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart.php.  *  * HOWEVER, on occasion WooCommerce will need to update template files and you  * (the theme developer) will need to copy the new files to your theme to  * maintain compatibility. We try to do this as little as possible, but it does  * happen. When this occurs the version of the template file will be bumped and  * the readme will list any important changes.  *  * @see     https://docs.woocommerce.com/document/template-structure/  * @package WooCommerce/Templates  * @version 3.8.0  */  defined( 'ABSPATH' ) || exit;  do_action( 'woocommerce_before_cart' ); ?>  <form class="woocommerce-cart-form" action="<?php echo esc_url( wc_get_cart_url() ); ?>" method="post">     <?php do_action( 'woocommerce_before_cart_table' ); ?>      <table class="shop_table shop_table_responsive cart woocommerce-cart-form__contents" cellspacing="0">         <thead>             <tr>                 <th class="product-remove">&nbsp;</th>                 <th class="product-thumbnail">&nbsp;</th>                 <th class="product-name"><?php esc_html_e( 'Product', 'woocommerce' ); ?></th>                 <th class="product-price"><?php esc_html_e( 'Price', 'woocommerce' ); ?></th>                 <th class="product-quantity"><?php esc_html_e( 'Quantity', 'woocommerce' ); ?></th>                 <th class="product-subtotal"><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>             </tr>         </thead>         <tbody>             <?php do_action( 'woocommerce_before_cart_contents' ); ?>              <?php             foreach ( WC()->cart->get_cart() as $  cart_item_key => $  cart_item ) {                 $  _product   = apply_filters( 'woocommerce_cart_item_product', $  cart_item['data'], $  cart_item, $  cart_item_key );                 $  product_id = apply_filters( 'woocommerce_cart_item_product_id', $  cart_item['product_id'], $  cart_item, $  cart_item_key );                  if ( $  _product && $  _product->exists() && $  cart_item['quantity'] > 0 && apply_filters( 'woocommerce_cart_item_visible', true, $  cart_item, $  cart_item_key ) ) {                     $  product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $  _product->is_visible() ? $  _product->get_permalink( $  cart_item ) : '', $  cart_item, $  cart_item_key );                     ?>                     <tr class="woocommerce-cart-form__cart-item <?php echo esc_attr( apply_filters( 'woocommerce_cart_item_class', 'cart_item', $  cart_item, $  cart_item_key ) ); ?>">                          <td class="product-remove">                             <?php                                 echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped                                     'woocommerce_cart_item_remove_link',                                     sprintf(                                         '<a href="%s" class="remove" aria-label="%s" data-product_id="%s" data-product_sku="%s">&times;</a>',                                         esc_url( wc_get_cart_remove_url( $  cart_item_key ) ),                                         esc_html__( 'Remove this item', 'woocommerce' ),                                         esc_attr( $  product_id ),                                         esc_attr( $  _product->get_sku() )                                     ),                                     $  cart_item_key                                 );                             ?>                         </td>                          <td class="product-thumbnail">                         <?php                         $  thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $  _product->get_image(), $  cart_item, $  cart_item_key );                          if ( ! $  product_permalink ) {                             echo $  thumbnail; // PHPCS: XSS ok.                         } else {                             printf( '<a href="%s">%s</a>', esc_url( $  product_permalink ), $  thumbnail ); // PHPCS: XSS ok.                         }                         ?>                         </td>                          <td class="product-name" data-title="<?php esc_attr_e( 'Product', 'woocommerce' ); ?>">                         <?php                         if ( ! $  product_permalink ) {                             echo wp_kses_post( apply_filters( 'woocommerce_cart_item_name', $  _product->get_name(), $  cart_item, $  cart_item_key ) . '&nbsp;' );                         } else {                             echo wp_kses_post( apply_filters( 'woocommerce_cart_item_name', sprintf( '<a href="%s">%s</a>', esc_url( $  product_permalink ), $  _product->get_name() ), $  cart_item, $  cart_item_key ) );                         }                          do_action( 'woocommerce_after_cart_item_name', $  cart_item, $  cart_item_key );                          // Meta data.                         echo wc_get_formatted_cart_item_data( $  cart_item ); // PHPCS: XSS ok.                          // Backorder notification.                         if ( $  _product->backorders_require_notification() && $  _product->is_on_backorder( $  cart_item['quantity'] ) ) {                             echo wp_kses_post( apply_filters( 'woocommerce_cart_item_backorder_notification', '<p class="backorder_notification">' . esc_html__( 'Available on backorder', 'woocommerce' ) . '</p>', $  product_id ) );                         }                         ?>                         </td>                          <td class="product-price" data-title="<?php esc_attr_e( 'Price', 'woocommerce' ); ?>">                             <?php                                 echo apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $  _product ), $  cart_item, $  cart_item_key ); // PHPCS: XSS ok.                             ?>                         </td>                          <td class="product-quantity" data-title="<?php esc_attr_e( 'Quantity', 'woocommerce' ); ?>">                         <?php                         if ( $  _product->is_sold_individually() ) {                             $  product_quantity = sprintf( '1 <input type="hidden" name="cart[%s][qty]" value="1" />', $  cart_item_key );                         } else {                             $  product_quantity = woocommerce_quantity_input(                                 array(                                     'input_name'   => "cart[{$  cart_item_key}][qty]",                                     'input_value'  => $  cart_item['quantity'],                                     'max_value'    => $  _product->get_max_purchase_quantity(),                                     'min_value'    => '0',                                     'product_name' => $  _product->get_name(),                                 ),                                 $  _product,                                 false                             );                         }                          echo apply_filters( 'woocommerce_cart_item_quantity', $  product_quantity, $  cart_item_key, $  cart_item ); // PHPCS: XSS ok.                         ?>                         </td>                          <td class="product-subtotal" data-title="<?php esc_attr_e( 'Subtotal', 'woocommerce' ); ?>">                             <?php                                 echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $  _product, $  cart_item['quantity'] ), $  cart_item, $  cart_item_key ); // PHPCS: XSS ok.                             ?>                         </td>                     </tr>                     <?php                 }             }             ?>              <?php do_action( 'woocommerce_cart_contents' ); ?>              <tr>                 <td colspan="6" class="actions">                      <?php if ( wc_coupons_enabled() ) { ?>                         <div class="coupon">                             <label for="coupon_code"><?php esc_html_e( 'Coupon:', 'woocommerce' ); ?></label> <input type="text" name="coupon_code" class="input-text" id="coupon_code" value="" placeholder="<?php esc_attr_e( 'Coupon code', 'woocommerce' ); ?>" /> <button type="submit" class="button" name="apply_coupon" value="<?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?>"><?php esc_attr_e( 'Apply coupon', 'woocommerce' ); ?></button>                             <?php do_action( 'woocommerce_cart_coupon' ); ?>                         </div>                     <?php } ?>                      <button type="submit" class="button" name="update_cart" value="<?php esc_attr_e( 'Update cart', 'woocommerce' ); ?>"><?php esc_html_e( 'Update cart', 'woocommerce' ); ?></button>                      <?php do_action( 'woocommerce_cart_actions' ); ?>                      <?php wp_nonce_field( 'woocommerce-cart', 'woocommerce-cart-nonce' ); ?>                 </td>             </tr>              <?php do_action( 'woocommerce_after_cart_contents' ); ?>         </tbody>     </table>     <?php do_action( 'woocommerce_after_cart_table' ); ?> </form>  <?php do_action( 'woocommerce_before_cart_collaterals' ); ?>  <div class="cart-collaterals">     <?php         /**          * Cart collaterals hook.          *          * @hooked woocommerce_cross_sell_display          * @hooked woocommerce_cart_totals - 10          */         do_action( 'woocommerce_cart_collaterals' );     ?> </div>  <?php do_action( 'woocommerce_after_cart' ); ?> 

Changing CPT permalink

I have a CPT named rad.

I have the following code to change the permalink from "site.com/rad/post" to "site.com/category/subcategory/post".

 function remove_cpt_slug( $  post_link, $  post, $  leavename ) { // Define the CPT's name. $  post_type_name="rad"; // Get the inmediate category. $  categoryc=get_the_category( $  post->id ); // Get the parent category. if(!empty($  categoryc))      $  categoryp=get_term( $  categoryc[0]->parent, 'category' );  if ( $  post_type_name != $  post->post_type || 'publish' != $  post->post_status ) { return $  post_link; }  if(!empty($  categoryp->errors)) { $  post_link = str_replace( $  post_type_name , $  categoryc[0]->name, $  post_link ); }  if(empty($  categoryp->errors) && !empty($  categoryp->name)) { $  post_link = str_replace( $  post_type_name , $  categoryp->name."/".$  categoryc[0]->name, $  post_link ); }     return $  post_link;  }  add_filter( 'post_type_link', 'remove_cpt_slug', 10, 3 ); 

When I create a new post, it works great. However, when I visit the new permalink it has a 404 error.

Any idea of how could I fix it?

Are there any security implications to changing the base of a hash?

File this under "gosh, I’d hope not," but I’ve been surprised before.

I have a hash (SHA-1 specifically). I need to store the full hash, but due to constraints outside my control, I can only use a limited number of characters to store it. I chose to change to base-36 to make the hash a shorter length.

Changing to base-36 makes the number of characters vary (between 27 and 31 instead of the original 40). This made me wonder about possible security implications of changing the base. Are there any?

Woocommerce shipping options not changing checkout total

I am working with woocommerce at the moment, I have created a child theme off of storefront, and I notice that when I change the shipping option to once that has a price the total order price does not change, and Javascript error is thrown. I have not changed any of the parent theme for this process so I am not sure why it would be throwing an error?

The error is as follows,

enter image description here

If I just use storefront it works fine, so there must be a conflict in my child theme but I am not sure where to start?

How to manage rest with changing GMs and players

I have been running a west marches style D&D 5e game where the GM and the players (along with their characters) change between every session. Due to this, every session ends back in town and with a long rest so that players can change naturally. We have tried the gritty realism rest rules to try to make random encounters meaningful but we are still unable to fit more than 2-3 resource using encounters between long rests. This causes our spellcasters to be overpowered as they can use all their spell slots with no risk.

How can we follow the 6-8 encounters + 2 short rest mentioned in the DMG whilst still having some way to hand over each session?

Some ideas that come to mind:

  • Long rests cost gold or something so they don’t take one at the end of each session
  • Players can only long rest every other session or every 3rd session they come to.

Do you have any other suggestions or have you tried any of these ideas and how did it go?

Changing to docker and receiving Illegal mix of collations (latin1_danish_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation ‘=’ error

I am atempting to change our application from a server to a docker on a virtual machine. We are using mysql for data, and tomcat (spring) for the gui. It seems to work well in the docker, execpt for when a stored procedure is called. It gives the error message:

Request processing failed; nested exception is java.lang.RuntimeException: java.sql.SQLException: Illegal mix of collations (latin1_danish_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation '=' 

This error message does not occure when the application is run on the server (not the docker version), so I am asuming there is some configuration that I have not been able to transfere from the original application to the docker based application. Since it works with the same data on the server, I don’t think it should be nessesary to change the tables or the procedure.

The docker creates a mysql:5 container and a tomcat:8 contaner and they comunicate thru a docker network. The GUI connects with the database with this line:

jdbc.url=jdbc:mysql://localhost:3306/pdb?useUnicode=true&amp;characterEncoding=iso-8859-1&noAccessToProcedureBodies=true 

I have only changed ‘localhost’ to ‘db’, as tomcat and mysql are on sepperate containers on the docker version. I have tried a few variations of characterEncoding, like latin2, but with no luck.

I have been loking at the config files in /etc/mysql/ but I haven’t found anything that seems relevant.

Does anyone know what settings I have been missing, or what more I can do to futher narriate the problem. I am new in this line of work, and is learning myself bouth docker and mysql while working on this transfer.

Changing Spell Lists: how long does it take to change one spell?

Suppose my 10th level wizard wakes up from a good night’s rest and, using all 20 points of his intelligence, he realizes that he needs to change his spell list a little. It’s time to retire Magic Missile, and prepare Fireball instead. The other 14 spells (with a combined spell level total of, say, 35) are not changed.

That is, he is changing one of his 15 prepared spells; the new spell is a 3rd level spell. He is not changing any of his other spells.

My question is, how long does this take? The rules in PHB are a little vague. Page 114 (emphasis mine):

You can change your list of prepared spells when you finish a long rest. Preparing a new list of wizard spells requires time spent studying your spellbook and memorizing the incantations and gestures you must make to cast the spell: at least 1 minute per spell level for each spell on your list.

Is the wizard required to spend the full 38 minutes as if he was preparing an entirely new spell list, or only 3 minutes for the new 3rd level spell?