# Easy Survival RPG V5

This is a quick example of how the indicator could be used with Easy Survival RPG V5\
\
We'll be checking this against stances, this is one of the easier ways to do it however this does mean we'll want to add a stance for each spell type so an AoE spell would be the only one to show a radius indicator.\
For example by default there is only 1 magic stance, due to this if we were to check against magic only then every magic spell would see that radius indicator, we wouldn't want a radius indicator on a basic fireball that flies in a straight line. so for this reason we'll add a stance for AoE spells.\
\
For the purpose of this guide we'll be using the meteor ability, i set its mana cost to 0 for easy testing.\
If you want to do the same it is in DT\_Abilities > Ability\_Meteor > expand InitialAttributes > index 0 should be tagged with cost mana value, set this to 0.\
Additionally I removed the unlock requirement, you can do this in UI\_SpellBook > Spell\_Meteor > Settings > Required Character Attributes > you should see a skills magic tag set this to 0.

* Go to DT\_GameplayTags\_Items and add a tag. I went with EasyRPG.Items.Stance.Magic\_AoE\
  You can duplicate a tag and modify the name after Stance.\[name]

<figure><img src="/files/TLD3dk0lMsPCycwVuFyY" alt=""><figcaption></figcaption></figure>

* Next go to E\_Stance and add a new enum. To avoid confusion go with the name you put in the tag, so the bit after Stance.\
  Which in my case would be Magic\_AoE.

<figure><img src="/files/dCGtIgF70ub5GGn1Heug" alt=""><figcaption></figcaption></figure>

* Next go to BP\_ItemsLibrary > Get Item Stance.\
  In here click the Local Stance Types variable > in the details panel add an element.\
  Set the tag to the one you made, EasyRPG.Items.Stance.Magic\_AoE in this case, and set the value to the E\_Stance you made which is Magic\_AoE in this case.

<figure><img src="/files/4PSkwjHVGKBM6Kp5tKXo" alt=""><figcaption></figcaption></figure>

* Next go to DT\_UsableItems > duplicate the Magic\_Fireball and rename this, I went with Magic\_Meteor.\
  Now set the EquipmentStance to Magic\_AoE.

<figure><img src="/files/CnD8o9jv7jzDMbbqWK58" alt=""><figcaption></figcaption></figure>

* Next go to DT\_Item\_Abilities > Spell\_Meteor.\
  Change the stance tag to the one you made, EasyRPG.Items.Stance.Magic\_AoE in this case.\
  And in the Usable handle change the row name to Magic\_Meteor.

<figure><img src="/files/JfBO2YoClwKcwvsg3RLp" alt=""><figcaption></figcaption></figure>

* Next go to the Animation Blueprint and look for the Magic StanceSelectors, there should be 2.\
  Add a check for the E\_Stance you created in **both** of them, Magic\_AoE in this case.

<figure><img src="/files/IPqx9hmtOaS6QD42Nq8i" alt=""><figcaption></figcaption></figure>

Now we are finished with the stance part of this.\
For a full tutorial on stances I would recommend visiting their Discord and checking out their tutorials and/or documentation.\
This is mostly all we need for our purposes. Now we'll start setting things up inside the character.

* Go to the BP\_Character\_Player > add the AC\_RPG\_Indicator component,\
  Next go to the Update Usable Item function > add a Sequence node after "Update Selected Item Attributes" > plug "Then 0" back into the branch that was hooked up to "Update Selected Item Attributes"\
  Plug "Then 1" into the below and set it up accordingly.&#x20;

<figure><img src="/files/9Vmi9zC7otiCqPr7dfz5" alt=""><figcaption></figcaption></figure>

We set it to follow camera because we know the meteor trace is doing the same thing, and we know the meteor trace max range is about 5000 so we will put that in our indicator max range. \
The effect radius of the meteor spell is roughly 600-750. I found 600 to be enough however the meteors do seem to spawn fairly randomly so if you want to encompass their whole area then closer toward 700 would be better.\
If you want to have multiple spells all with varying radius and ranges you will have to expose those values (they are not exposed by default) and make edge cases for them.\
We are firing this from the player so our alignement should be ally but all the alignement does is determine the indicator color so you can define anything you want in here\
\
If you don't want to go to this function everytime, promote the pins to variables this way you can just modify them in class defaults.\
\
But this is basically it. We can now go in game and see our indicator when we equip a usable item with the Magic\_AoE stance\
\
ESRPG has essentially no casting times so there is no use for the Cast indicator event in this instance.\
They would see more use for things like area hazards

{% embed url="<https://drive.google.com/file/d/1sE5_PIBZt2wU8q1WcjX8HV0dAHQJhFrx/view?usp=sharing>" %}

Bonus Note:\
If you want to display other indicators based on other stances you can repeat what we've done and hook it up to the false like so,

<figure><img src="/files/GkyLDrzmSE3EVlkX2Q5B" alt=""><figcaption></figcaption></figure>

{% embed url="<https://drive.google.com/file/d/1CzxvVk-sXA_oWBpPx4qq_XKbeqaPo14v/view?usp=sharing>" %}

For this example I added a line indicator, set to rotate with the camera, to show the direction of the fireball (fireball by default uses magic stance) but this is just for example purposes. You can shoot fireballs in any direction of your crosshair so it doesn't really need an indicator like this one ofcourse.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://world-protocol.gitbook.io/worldprotocol/rpg-indicator/integrations/easy-survival-rpg-v5.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
