freeCodeCamp/curriculum/challenges/english/08-coding-interview-prep/take-home-projects/build-a-roguelike-dungeon-c...

53 lines
2.3 KiB
Markdown
Raw Normal View History

---
id: bd7153d8c242eddfaeb5bd13
title: Build a Roguelike Dungeon Crawler Game
isRequired: false
challengeType: 3
---
## Description
<section id='description'>
<strong>Objective:</strong> Build a <a href='https://codepen.io' target='_blank'>CodePen.io</a> app that is functionally similar to this: <a href='https://codepen.io/freeCodeCamp/full/apLXEJ/' target='_blank'>https://codepen.io/freeCodeCamp/full/apLXEJ/</a>.
Fulfill the below <a href='https://en.wikipedia.org/wiki/User_story' target='_blank'>user stories</a>. Use whichever libraries or APIs you need. Give it your own personal style.
<strong>User Story:</strong> I have health, a level, and a weapon. I can pick up a better weapon. I can pick up health items.
<strong>User Story:</strong> All the items and enemies on the map are arranged at random.
<strong>User Story:</strong> I can move throughout a map, discovering items.
<strong>User Story:</strong> I can move anywhere within the map's boundaries, but I can't move through an enemy until I've beaten it.
<strong>User Story:</strong> Much of the map is hidden. When I take a step, all spaces that are within a certain number of spaces from me are revealed.
<strong>User Story:</strong> When I beat an enemy, the enemy goes away and I get XP, which eventually increases my level.
<strong>User Story:</strong> When I fight an enemy, we take turns damaging each other until one of us loses. I do damage based off of my level and my weapon. The enemy does damage based off of its level. Damage is somewhat random within a range.
<strong>User Story:</strong> When I find and beat the boss, I win.
<strong>User Story:</strong> The game should be challenging, but theoretically winnable.
Remember to use <a href='http://forum.freecodecamp.org/t/how-to-get-help-when-you-are-stuck/19514' target='_blank'>Read-Search-Ask</a> if you get stuck.
When you are finished, click the "I've completed this challenge" button and include a link to your CodePen.
You can get feedback on your project by sharing it with your friends on Facebook.
</section>
## Instructions
<section id='instructions'>
</section>
## Tests
<section id='tests'>
```yml
tests: []
```
</section>
## Challenge Seed
<section id='challengeSeed'>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>