Member
Join Date: May 2021
Location: San Angelo
Posts: 35
|
Exactly what is going on inside of this eval? It feel like every movement mode is zero out then when done the program take a look and send out stuff. This is my posted True Speed material.
If I do this hero.child[xSwim].field[abValue].value += field[pAdjust].value on all 4 mode I get a +1 any time I increment the p value. Not wanted in case of zero movement mode. Work for already existing mode like Fly 10. If I add this and repeat for all 4 modes. if (hero.child[xSwim].field[abValue].value > 0) then hero.child[xSwim].field[abValue].value += field[pAdjust].value endif The behavior totally changes. Now nothing get printed. I tried this trick. Set speed to that swim value and see what get printed. I got zero speed. Repeating for them all i see they are all zero now and refuse to change. Shocker. I'm not sure what kind of behavior is going on here. I'm taking a break. I got more or less what I wanted from this. I can see how fast the monk is really moving and the linked movement modes to land speed as well. I experiment with Value.? but nope this is stubborn. Eh not that important now I got the rest working but man I want to know what is the world is going on in this black box. I never expect to see 0 values in movements. Example 30 speed 40 bonus 10 burrow 40 swim 40 climb. The program insist all 4 movement move are zero and thus no reason to increment. The 40 is as designed because I add an adjustment buffing it in Mariner and 2 ranger Roving. After browsing the forums, I pulled all my edits and put it in one place now that I know about Unique and replace thing ID. Now i don't need to fear an update at end of month heh. |
#1 |
Member
Join Date: May 2021
Location: San Angelo
Posts: 35
|
Oh yes here's the full script
~ If we're not enabled, get out now doneif (field[pIsOn].value = 0) doneif (field[pAdjust].value = 0) ~ Add to speed hero.childfound[Speed].field[tSpeed].value += field[pAdjust].value hero.childfound[Speed].field[Bonus].value -= field[pAdjust].value if (hero.child[xFly].field[abValue].value > 0) then hero.child[xFly].field[abValue].value += field[pAdjust].value endif if (hero.child[xSwim].field[abValue].value > 0) then hero.child[xSwim].field[abValue].value += field[pAdjust].value endif if (hero.child[xClimb].field[abValue].value > 0) then hero.child[xClimb].field[abValue].value += field[pAdjust].value endif if (hero.child[xBurrow].field[abValue].value > 0) then hero.child[xBurrow].field[abValue].value += field[pAdjust].value endif |
#2 |
Member
Join Date: May 2021
Location: San Angelo
Posts: 35
|
I do not understand why those if then statements make a big difference. Take then out and eval will happily increment for each movement mode that is not locked. That usually the flight special from the racial ability and the Climb and Swim linked to land speed from Mariner, and the 2 Ranger Roving. In this case a zero value flight mode get a boost it was not supposed to have.
Leave the if then statements in and nothing change. What I think I found was eval set the Xfly, xSwim, xClimb and xBurrow to 0 in the if then statements. Even the 10 burrow one. Now I use the no ifthen option that Burrow properly get a 10 boost to speed. Here I elect to quit as I'm getting a headache heh. After carefully looking in the Speed special mode adjustment it list more than 1 options like Climbing 0 and Climbing 40 in my case. Apparently I'm seeing all the 0 movement mode in there? Whew I'm done for the night. Last edited by Dragon5e; May 12th, 2021 at 08:22 PM. |
#3 |
|
|