Learn Basic JavaScript by Building a Role Playing Game - Step 123

Tell us what’s happening:

I need Help on step 123 JavaScript Algorithms and Data Structures (Beta).
I’m still new on javascript so i don’t know much of the “math utility” thing.

freecodecamp says:

JavaScript offers the built-in Math utility which offers a number of mathematical tools. One of those is Math.random(), which generates a random number between 0 and 1. Another is Math.floor(), which rounds a given number down to the nearest integer.

Using these, you can generate a random number within a range. For example, this generates a random number between 1 and 5: Math.floor(Math.random() * 5) + 1;.

Following this pattern, use the addition operator (+) to add a random number between 1 and the value of xp to your monsterHealth variable change.

and error says:

Sorry, your code does not pass. Keep trying.

You should add to the weapons[currentWeapon].power value.

### Your code so far

function attack() {
text.innerText = “The " + monsters[fighting].name + " attacks.”;
text.innerText += " You attack it with your " + weapons[currentWeapon].name + “.”;
health -= monsters[fighting].level;
monsterHealth -= weapons[currentWeapon].power;
weapons[currentWeapon].power += Math.floor(Math.random() * xp) + 1;
}

WARNING

The challenge seed code and/or your solution exceeded the maximum length we can port over from the challenge.

You will need to take an additional step here so the code you wrote presents in an easy to read format.

Please copy/paste all the editor code showing in the challenge from where you just linked.

Replace these two sentences with your copied code.
Please leave the ``` line above and the ``` line below,
because they allow your code to properly format in the post.

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

Challenge Information:

Learn Basic JavaScript by Building a Role Playing Game - Step 123

the hint you pasted doesn’t belong to step 123
step 123 wants you to work with the monsterHealth variable

Following this pattern, use the addition operator (+ ) to add a random number between 1 and the value of xp to your monsterHealth variable change.

2 Likes

Thanks, i just got it. it’s 3 am here haha.

solution code removed

1 Like

Glad it worked, please don’t put the full solution code in the forum though! Don’t want to spoil it for people who are just looking for some clues and not a full solution.

1 Like

Hello guys. I am also hitting a roadblock here. Do we keep the -= before adding the result of weapons[currentWeapon].power and (Math.floor(Math.random() * xp) + 1) or what? I’ve tried various combinations, still not getting it right.

here that’s how you do it

Thanks. I just got it to work like that. I thought the whole new expression should be between ().

2 Likes

You need to add the the weapons[currentWeapon].power before the Math.floor
like this,
REDACTED BY MOD

hey @jeevanantham.s932

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge.

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.

1 Like

REDACTED SOLUTION
try this.I have successfully passed the test.

hey @VVSK

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge.

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.

1 Like

I’m stuck, i tried lot of solutions but nothing. The situation is this:

monsterHealth -= weapons[currentWeapon].power;
weapons[currentWeapon].power += Math.floor(Math.random() * xp) + 1;

hey @Deevioh , welcome to the forum! Could you open your own topic to ask for help?

If you have a question about a specific challenge as it relates to your written code for that challenge and need some help, click the Ask for Help button located on the challenge (it looks like a question mark). This button only appears if you have tried to submit an answer at least three times.

The Ask for Help button will create a new topic with all code you have written and include a link to the challenge also. You will still be able to ask any questions in the post before submitting it to the forum.

Thank you.

Please provide your code solution .i stuck with it one day

it is a policy of the forum to not share solutions, if you need help please open your own topic and write all your doubts and your code