Is it possible to use the Hunter ranger’s Volley ability with the Hail of Thorns spell?

The Volley option for the Hunter ranger’s 11th-level Multiattack feature says:

You can use your action to make a ranged attack against any number of creatures within 10 feet of a point you can see within your weapon’s range. You must have ammunition for each target, as normal, and you make a separate attack roll for each target.

The hail of thorns spell description (PHB, p. 249) says:

The next time you hit a creature with a ranged weapon attack before the spell ends, this spell creates a rain of thorns that sprouts from your ranged weapon or ammunition. In addition to the normal effect of the attack, the target of the attack and each creature within 5 feet of it must make a Dexterity saving throw. A creature takes 1d10 piercing damage on a failed save, or half as much damage on a successful one.

Is it possible to use Volley with hail of thorns?

I believe that when the character hits the first creature with Volley, hail of thorns is triggered.

Is the damage from Conjure Volley magical?

Conjure Volley is a 5th level Ranger spell:

You fire a piece of non magical ammunition from a ranged weapon or throw a non magical weapon into the air and choose a point within range. Hundreds of duplicates of the ammunition or weapon fall in a volley from above and then disappear.

If you use magic to duplicate non-magical ammunition, can the result damage a Werewolf for example?

What happens if I use wrong kind of spell component in a Conjure Volley?

The spell conjure volley has one piece of ammunition or one thrown weapon as its material component. The spell effect further describe the requirement of the said ammunition or thrown weapon: they must be nonmagical.

You fire a piece of nonmagical ammunition from a ranged weapon or throw a nonmagical weapon into the air and choose a point within range. Hundreds of duplicates of the ammunition or weapon fall in a volley from above and then disappear.

What happens if I use magical ammunition or magical thrown weapon? Do the spell fail and the spell slot consumed? Do the spell just don’t get cast at all and I’m like an idiot throwing a magical axe into the air waiting for something to happen?

How does the Ranger Whirlwind Attack feature compare to the Volley feature?

The goal of this question is to compare both Ranger level 11 features Whirlwind Attack & Volley and examine their comparative strengths and weaknesses for Rangers.

Whirlwind Attack

You can use your action to make a melee attack against any number of creatures within 5 feet of you, with a separate attack roll for each target.

Volley

You can use your action to make a ranged attack against any number of creatures within 10 feet of a point you can see within your weapon’s range. You must have ammunition for each target, as normal, and you make a separate attack roll for each target.

At level 11 you would have two attacks available during a normal action so you would need to have at least three enemies within 5 feet of you to make Whirlwind Attack viable from a pure damage output standpoint. The way I see it, you need to have good positioning, a number of enemies clustered, and be willing to sacrifice the utility of focused fire. I have trouble seeing this as being more useful than Volley.

Is there something that makes this choice mechanically competitive besides being in a campaign where you are frequently engaging hoards of swarming melee combatants?

As a rough surface calculation I am looking at volley as ranged AoE which can effectively hit 16 squares, while Whirlwind is a melee attack that can hit 8. The only direct advantage’s to melee attacks that a melee focused ranger could have is a +2 to damage with every attack, or an additional melee attack as a bonus action. So if Whirlwind attacks and hits all 8 squares it can do 16 extra damage on a melee focused build. Or if we went with two weapon fighting one extra attack that would probably max out at slightly less than 16.

At a bare minimum if I could add one single target with volley to an ideal whirlwind I would getting almost the same exact damage spread.

If I were already surrounded by 8 opponents obviously WW is better, but chances are I don’t actually want that to happen in the first place.

Would a slow effect block a hunter ranger from using volley or whirlwind attack?

The Slow spell includes this rule for any creature affected by it:

Regardless of the creature’s Abilities or Magic Items, it can’t make more than one melee or ranged Attack during its turn.

A Ranger who is followed the hunter archetype gets access to volley and whirlwind attack at level 7:

Volley:

You can use your action to make a ranged Attack against any number of creatures within 10 feet of a point you can see within your weapon’s range. You must have Ammunition for each target, as normal, and you make a separate Attack roll for each target.

Whirlwind Attack:

You can use your action to make a melee Attack against any number of creatures within 5 feet of you, with a separate Attack roll for each target.

As I understand it, both of these abilities are considered to be a single attack, albeit with multiple attack rolls. Does that mean the slow spell would not prevent a ranger from using either ability if they were under it’s influence?

Como hacer multiples peticiones y gestionarlas en un solo oyente – Android Volley

Tengo una clase que trata sobre recuperar contraseña, esta clase hace 2 consultas al web service, la primera obtiene los datos del usuario automaticamente (no hace falta interversion del usuario) a partir del correo electronico y la segunda consulta se da cuando el usuario presiona el boton Enviar codigo (lo que hace este boton es solicitar al web service que le envie un codigo de seguridad a su correo para autorizar el reestablecimiento de su contraseña del usuario), mi problema esque en mi clase yo tengo implementada el Response.Listener<String>, Response.ErrorListener y eso automaticamente me genera los metodos de:

@Override public void onResponse(String response) { }  @Override public void onErrorResponse(VolleyError error) { } 

ahora cuando hago mis dos consultas las respuesta de ambas entran por ese dos metodos (onResponse, onErrorResponse), como puedo saber cual respuesta pertenece a cual solicitud? se puede agregar algun tipo de id o tag a las peticiones para asi poder identificar de quien es la respuesta?. Gracias.

¿porque android studio me obliga a convertir una variable en array? – Android Volley

Tengo una clase que se encarga de hacer una consulta mediante android volley a un web service que hize y declare una variable boleana que cuando el metodo onResponse de volley analiza la respuesta recibida en JSON y se encuentra que el web service le devolvio un TRUE pues la variable boleana debe modificar su valor a TRUE, pero android me marca error cuando quiero establecer el valor a TRUE(b = true) y me obliga a que lo convierta en array.

public boolean [] valido(Context context){     final boolean[] b = new boolean[1];     url = "http://localhost/api/acceso/iniciar_sesion/solicitar_validacion.php";     requestQueue = Volley.newRequestQueue(context);     stringRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {         @Override         public void onResponse(String response) {             try {                 jsonObject = new JSONObject(response);                 jsonArray = jsonObject.getJSONArray("response");                  for (int i = 0; i < jsonArray.length(); i++){                     JSONObject data = jsonArray.getJSONObject(i);                     String valor = data.getString("boolean");                     if(valor.equals("true")){                         b[0] = true;                     }                 }             } catch (JSONException e) {                 e.printStackTrace();             }         }     }, new Response.ErrorListener() {         @Override         public void onErrorResponse(VolleyError error) {             if(error instanceof TimeoutError){                 String jsonError = "{'estado':'400','mensaje':'Comprueba tu conexión a internet.'}";             }         }     }){         @Override         public Map<String, String> getHeaders() throws AuthFailureError {             HashMap<String, String> credenciales = new HashMap<>();             return credenciales;         }          @Override         protected Map<String, String> getParams() throws AuthFailureError {             credenciales.put("correo_electronico", correo_electronico);             credenciales.put("contrasena", contrasena);             return credenciales;         }     };     stringRequest.setRetryPolicy(new DefaultRetryPolicy(10000, 0, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));     requestQueue.add(stringRequest);     return b; } 

Tambien intente declarando la variable booleana fuera del metodo y ya no me pide que lo cambie a array pero surge otro problema, es de que si lo declaro fuera del metodo esta variable nunca modifica su valor, es decir: supuestamente esta linea de codigo deberia modificar el valor de la variable booleana: b = true pero nunca se modifica, me di cuenta que solo se modifica internamente osea dentro del metodo onResponse pero cuando sale del metodo nunca se modifico la variable. Alguien sabe porque pasa esto y como puedo solucionarlo?. Gracias.

DELETE Con Volley!

hace tengo problemas al momento de hacer una petición a Volley con el método DELETE , estoy consumiento un api rest el cual me funciona en todos los testeadores excepto en mi código usando Volley , he intentado de varias formas y sigue sin funcionar! Alguién que me pueda ayudar? este es mi código : String url = “http://lafina1.jl.serv.net.mx/api/carrito/90/”;

    final SpotsDialog progressDialog;      progressDialog = new SpotsDialog( mContext, R.style.Custom );     progressDialog.show();      Map<String, String> params = new HashMap();       params.put( "productoId", "3" );      JSONObject parameters = new JSONObject( params );     JsonObjectRequest request = new JsonObjectRequest( Request.Method.DELETE, url, parameters,             new Response.Listener<JSONObject>() {                 @Override                 public void onResponse(JSONObject response) {                     try {                           Toast.makeText( mContext, "" + response.toString(), Toast.LENGTH_SHORT ).show();                           progressDialog.dismiss();                     } catch (Exception ex) {                         ex.printStackTrace();                         Toast.makeText( mContext, "ErrorRespuesta", Toast.LENGTH_SHORT ).show();                         progressDialog.dismiss();                     }                 }             }, new Response.ErrorListener() {         @Override         public void onErrorResponse(VolleyError error) {             error.printStackTrace();              Toast.makeText( mContext, "Error en Elimnar" + error, Toast.LENGTH_SHORT ).show();              //abrirError();             progressDialog.dismiss();         }     } );      mqQueue.add( request ); 

Cuando ejecuto el método me manda a la excepcion “Error en Eliminar com.android.volley.ClientError”.

How does the Sharpshooter Feat interact with Ranger’s Volley

This question follows from this one: Is the Hunter ranger’s Volley feature considered a single attack or multiple attacks?

The Sharpshooter feat reads in part:

  • Before you make an attack with a ranged weapon that you are proficient with, you can choose to take a -5 penalty to the attack roll. If the attack hits, you add +10 to the attack’s damage.

Given the fact that the Hunter/Ranger’s Volley is a single attack, how does the Sharpshooter feat interact with it?

Does this mean that the Ranger:

  1. Takes -5 to each attack roll and adds +10 damage to each hit creature.

  2. Takes -5 to ONE attack roll and adds +10 to the associated damage roll.

… or even:

  1. Takes -5 to ONE attack roll and adds +10 to ALL damage rolls.

  2. Takes -5 to ALL attack rolls and adds +10 to ONE damage roll.