[GAME] Askew: MULTIPLAYER 3D Survival Game! SNEAK PEEK
EDIT: Check out the update here!
Make sure to open the game in a NEW TAB due to the update!
Many games here are 2D, so I thought I'd try my hand at 3D with THREE.js. I'm not done with the game yet, but I thought I'd post a sneak peek so that I can get feedback for it!
As of right now, there's no real goal (you can't win or lose). But you can go around and do stuff. Here's the controls:
- Arrow Keys or WASD to move
- Q and E or rightclick+drag to rotate the camera
- Click and hold to saw stuff (when not placing — you have to be touching an object too)
- Click on an item in the upper-left to craft it (these items will appear when you have the necessary resources to make them)
- Click on a item you've crafted in the bottom bar to start placing it (a ghost version of it should appear in front of you, you can move around to position it as you like) and then click again to place it or right click to cancel.
- NEW: Enter to chat!
As of now, you can build walls (with wood) and campfires (with stone and wood). There's a day and night cycle in place too, so your campfires will look good :D
And yes, this game is fully (server) multiplayer, so you can build a base with others! (Try opening two tabs if there's no one else around)
Enjoy! If you find any bugs or have any suggestions, please post them!
IMPORTANT: If the land is empty at first (no trees, rocks, etc), AND YOU HAVE OPENED THE GAME IN A NEW TAB, please let me know! (And then reload the page until it isn't.) I think I've fixed that bug but I'm not certain.
@fuzzyastrocat lol! Oh, I have a quick question about lang dev. So if there's an expression, that get's turned into an Expression AST in the Parser. But what does the Interpreter do with it? I know how to take an Expression AST and have the Interpreter evaluate it down to a single value, but I have to modify the original AST to do so. But that's a problem if I still need the original AST (for example in a loop). So should I make a copy of an AST in the Interpreter and evaluate that? Or is there a better way?