Skip to content

Latest commit

 

History

History
210 lines (136 loc) · 8.82 KB

FAQ.md

File metadata and controls

210 lines (136 loc) · 8.82 KB

CS Build Week 2 FAQ

Contents

Answers

You're seeing this error because you have DEBUG = True in your Django settings file

That's not really the error. Look up at the top of the output for the actual error.


What happens if we use the wrong next room ID for the wise explorer bonus?

Try it and see!


If we get cooldown X in our response, does that mean we have to wait X seconds before the next request?

Yes.


Does the treasure disappear after someone picks it up?

Yes. Once they sell the treasure, it will respawn in a random room somewhere else on the map, so the treasures should never run out.


I'm getting CORS errors hitting the server with axios

CORS is set up on the server to allow access from anywhere.

Make sure the authorization is set up correctly in the axios call, e.g.:

post("URL", foo, {
   headers: { Authorization: "Bearer " + token }
})

I'm getting a huge error/something about ssl when installing psycopg2 with pipenv install

Mac only! These instructions won't work for Windows!

Buried at the bottom of this error message is something that looks like this:

build/temp.macosx-10.14-x86_64-3.7/psycopg/microprotocols_proto.o
build/temp.macosx-10.14-x86_64-3.7/psycopg/typecast.o -L/usr/local/lib -lpq -lssl -lcrypto -o
build/lib.macosx-10.14-x86_64-3.7/psycopg2/_psycopg.cpython-37m-darwin.so',
'    ld: library not found for -lssl',
'    clang: error: linker command failed with exit code 1 (use -v to see invocation)',
"    error: command 'clang' failed with exit status 1", '    ----------------------------------------'

If you don't have brew installed, install it.

Then:

brew install openssl
sudo cp $(brew --prefix openssl)/lib/libssl.1.0.0.dylib /usr/local/lib
sudo cp $(brew --prefix openssl)/lib/libcrypto.1.0.0.dylib /usr/local/lib
sudo ln -s /usr/local/lib/libssl.1.0.0.dylib /usr/local/lib/libssl.dylib
sudo ln -s /usr/local/lib/libcrypto.1.0.0.dylib /usr/local/lib/libcrypto.dylib

then try pipenv install again.


Where is Pirate Ry?

In the room that has Pirate Ry in its title.


Where do we mine the coins?

Once you've changed your name, reach out to your TL and they'll tell you the next step. It'll be an interview, and once you've passed that, you'll get a hint to where the mining room is.


Can I get to a specific room without needing to traverse?

Barring any aquired special powers, no.


Do I need to download some kind of hashing package to mine coins?

Python: No. Just use the built-in sha256 in hashlib.

JavaScript: Yes-ish. Recommendations:

Swift: No. Use the built-in SHA256.


pg_config command not found

If you get this when running pipenv install, first do this:

export PATH="/Applications/Postgres.app/Contents/Versions/10/bin:$PATH"

then run pipenv install again. This should fix it going forward.


What's the title of the blockchain miner room?

Nothing special--it's just a generic name. See Where do we mine the coins?


How many rooms are there?

There are 500 rooms/nodes/vertexes.


Are we expected to have a backend? Are we expected to store any information in a database?

You will want to store the graph somewhere after you have everything mapped out. And not just rooms #s & what room you'll get to moving n, s, e, w, but also name & other attributes.

After you have the graph mapped out, you'll want to smartly wander around, collecting treasure. Your player can only carry so much treasure, because they are human, so periodically you'll have to sell it. Once enough treasure has been collected, you can exchange it for the True Name you'll need to mine Lambda Coins.

Any information you can't directly request from the server (ex. complete map of the island), you'll want your application to keep track of. How you do that is up to you.


There is mention of a "weight" of items, but the weights aren't a part of the data. How do we know what the weight is that we are about to accept before we try to pick up an item?

Check out the examine request.


It seems that requests such as moving, picking up items, selling, etc are governed by the cooldown period. Is a status check on our individual user counted in that?

No. There is a MIN_COOLDOWN of 1.0, so if you run the status command, you should see something between 1-cooldown, depending on how long since you last moved.


If we pair program and another teammate types it up and pushes it, will that affect our scores for this sprint?

Not necessarily. You can get a 2 in each technical row on the rubric as long as you can provide a clear, thorough explanation of what different pieces of the application are doing. So understanding the code is "enough".

BUT if you're shooting for 3's in any or all rows, make sure you can "demonstrate and explain code that you contributed for this part of the task".


What responses can we expect to receive after sumbitting a mine request?

You will get back specific messages that let you know if you succeeded in mining a Lambda coin or not. In the event your request was not successful, you should receive a message about why (invalid proof, True Name not yet acquired, etc.)