Roll20 / roll20-character-sheets

Character sheet templates created by the community for use in Roll20 VTT. Submit a ticket at roll20.net/help if critical hotfixes are to be requested.
https://roll20.net/
MIT License
1.16k stars 4.14k forks source link

A Song of Ice and Fire ROLEPLAYING #5243

Closed shakasannin closed 5 years ago

shakasannin commented 5 years ago

Hello guys! I would like to ask for a fix on the sheet from SIFRP.

Before I start telling the problem with it, we need to make sure we are talking about the same sheet.

Currently, there are two sheets for SIFRPG.

One is this this https://github.com/Roll20/roll20-character-sheets/tree/master/Song%20of%20Ice%20and%20Fire%20Roleplaying

And the other one is https://github.com/Roll20/roll20-character-sheets/tree/master/A%20Song%20of%20Ice%20and%20Fire

The first one is perfect, it doesn't have any bug, but it is far less detailed.

The second one is the bugged one, it's the detailed one, it is perfect in structure, it has everything the sheet needs to make a perfect game. The only problem is the rolls are broken, I can't tell why, but apart from the initiative rolls, all the rolls don't happen properly.

The problem: When a character hits a box that should roll dices, the system makes the math perfectly, but the dices don't roll, the sheet just comes up with the number that it should be rolled.

For example:

Jin tests Agility (Acrobatics)!

"5".

"5" = ( 5 )d6dl( 1 ) - 0 - 0 = 5.

It is almost as the system don't read the "d6" part.

there are several problems with this type of rolling. I know nothing of programming, but the sheet rolls should look like this:

" (Attribute - WoundPenalty) d6dl (AttributeSpecialty) - InjuriesPenalty - FatiguePenalty "

All the rolls are supposed to look like this as far as the system goes.

Here's a screenshot to provide more information about the bug:

Capturar

Anduh commented 5 years ago

@ajott and @coldrage101 this might be something you two might be interested in knowing. The bugfix from 11 days ago might have something to do with this problems described above.

Fraetor commented 5 years ago

I'll have a look.

Fraetor commented 5 years ago

So the issue comes from so wierd Roll20 behavour. The roll 7d6dl2 works fine. The roll ( 7 )d6dl2 works fine. The roll ( 7 )d6dl( 2 ) does not work (always gives 7). The roll 7d6dl( 2 ) does not work (always gives 7).

This seems to be an issue of having brackets around the drop dice.

Fraetor commented 5 years ago

This should be an easy fix. I just have to remove two brackets from each roll. That does mean editing 200 lines of code though... :(

Fraetor commented 5 years ago

Got myself Pro so I could actually test, (thanks roll20 for paywalling testing) and the fix does indeed fix the issue. Now to remove 200 more brackets.

Anduh commented 5 years ago

Got myself Pro so I could actually test, (thanks roll20 for paywalling testing) and the fix does indeed fix the issue.

Are you implying that the sheet update you did 11 days ago wasn't tested in Roll20? Because the Improve Existing Character Sheets section mentions that changes need to be tested in Roll20 before submitting.

Fraetor commented 5 years ago

As I am not DMing any games at the moment, I didn't want to purchase Pro as almost all of the features are not relevant to me. This is something I now regret, as testing is important, and I am sorry for disrupting players' games. The issue should be resolved in https://github.com/Roll20/roll20-character-sheets/pull/5247

shakasannin commented 5 years ago

First, thank you very much for the attention!

Also, special thanks to @coldrage101 for taking the time to fix it.

I would also like to point out something looking strange in the formulas. [[ ( [[ @{agility} + ?{Bonus Dice|0}]] )d6dl( [[ ?{Bonus Dice|0} **+** @{wounds} + ?{Penalty Dice|0} ]] ) - @{injuries} - @{fatigue} ]]

Why did you choose to place " + @{wounds} " ?

and not " - @{wounds} " Fatigue and Injuries have the " - " sign.

it is not a real problem, only a not intuitive form of thinking, to make the roll work properly, the player will have to place " - 1,2,3... " on the sheet slot for wounds, and " 1,2,3... " for the fatigue and injuries slots.

As I said it is not a big of a deal.

Fraetor commented 5 years ago

@shakasannin thank you for your compliments. To answer your question: The player does need to put positive numbers in for wounds. The formula is rolling the sum of the test dice and bonus dice, then it is dropping the lowest n dice, where n is the sum of the bonus dice and the wounds. This is because a wound causes a test die to become a bonus die. As the number of wounds increases, the number of test dice dropped also increases, thus decreasing the result of the roll. This is the main issue the commit that caused this issue was rectifying. Fatigue and injuries are not involved in the roll, and are just subtracted after the fact. This is why they are outside of the [[ ... ]] after the d6dl.

shakasannin commented 5 years ago

Thanks for your reply, got it now!