2017-10-23 14:55:16 +00:00
# AsciiFarm
2017-10-15 21:40:39 +00:00
2020-03-06 10:58:44 +00:00
Rust server port: [https://github.com/jmdejong/rustifarm ](https://github.com/jmdejong/rustifarm )
2020-03-06 10:59:54 +00:00
Client: [https://github.com/jmdejong/asciifarm-client ](https://github.com/jmdejong/asciifarm-client )
2020-03-06 10:58:24 +00:00
2017-10-23 14:55:16 +00:00
This is a multiplayer ascii farming/fighting game.
2017-10-15 21:40:39 +00:00
2017-10-23 14:55:16 +00:00
![screenshot ](screenshot.png )
2017-10-27 10:24:55 +00:00
<!-- why doesn't the screenshot get updated? -->
2017-10-16 18:17:58 +00:00
2017-10-20 14:30:57 +00:00
## Working Features
2017-10-19 20:14:28 +00:00
- Multiplayer
- Walking around
- Switching between rooms
- Persistent inventory
2017-10-20 14:30:57 +00:00
- Fighting
- NPC's
2017-10-22 17:04:20 +00:00
- Farming
2017-10-22 20:37:45 +00:00
- Building
2017-12-29 10:30:07 +00:00
- Chat
- World persistence
2017-10-19 20:14:28 +00:00
2017-10-22 12:22:45 +00:00
## Installation/starting instructions
Requires python3, tested to work on at least python 3.5.2 in linux
2017-10-23 14:24:42 +00:00
Because of the use of NCURSES, it probably won't work on windows (will be fixed later)
2017-10-22 12:22:45 +00:00
2017-11-09 12:38:12 +00:00
It works on a mac, but when testing abstract domain sockets didn't work.
Use the command line argument `-s inet` for both client and server to run this on a mac.
2017-10-22 12:22:45 +00:00
2017-10-26 17:24:05 +00:00
Not on pypi yet, but you should be able to install it like this:
2017-10-22 12:22:45 +00:00
2017-10-26 17:24:05 +00:00
python -m pip install git+https://github.com/jmdejong/Asciifarm.git
Then you can run `hostfarm` to start the server and `asciifarm` to play the
game!
2017-10-22 12:22:45 +00:00
2017-12-29 10:30:07 +00:00
### Playing instructions
Controls can be configured.
These are the default controls:
2017-10-22 12:22:45 +00:00
Use the arrow keys or wasd to move around.
2017-10-23 12:54:38 +00:00
Use 'e' to add an item from the ground into your inventory.
2017-10-22 12:22:45 +00:00
Use 'q' to drop the top item in your inventory.
2017-10-23 12:54:38 +00:00
Use 'E' to use/interact with the top item in your inventory.
2017-12-29 10:30:07 +00:00
Use 'r' interact with something in the same square as you.
Use 'f' to attack an enemy nearby.
2017-10-22 14:28:45 +00:00
Use 'F' to attack an enemy in the same square as you.
2017-10-22 12:22:45 +00:00
Use WASD to attack enemies in adjacent squares.
2017-12-29 10:30:07 +00:00
Use 't' to open the chat input
2017-10-22 12:22:45 +00:00
2017-12-29 10:30:07 +00:00
### Advanced installation instructions
2017-10-19 20:14:28 +00:00
2017-12-29 10:30:07 +00:00
See [install.md ](docs/install.md ).
2017-10-26 17:24:05 +00:00
2017-10-18 15:33:20 +00:00
## Vision/ideas
2017-12-29 20:12:33 +00:00
> basically farmville where you can visit friends gardens to see stuff. maybe leave an ascii character as a present ~m455
> ... makes me wish instead of irc we were hanging out in a central plaza or bazaar of a roguelike, with little @ signs talking to each other, walking into private buildings to send PMs, etc ~d_m
2017-10-18 15:33:20 +00:00
The idea is to make 3 different kind of areas:
- private areas, where players can build their own house/farm
* these areas will be the only one where players can build
* other players can only enter with permission of the owner
* maybe some group areas too? (that can be bought with in-game currency)
- public areas, where players can interact with each other and npcs
* towns, where players can trade
* static dungeons, where monsters spawn
* whatever levels someone feels like making
* similar to the world of most mmorpgs
- procedurally generated dungeons, where players can explore and fight for loot
* like roguelikes
* if the player dies they can not return to the same dungeon
2017-10-22 12:22:45 +00:00
* group dungeons would be great too
2017-10-18 15:33:20 +00:00
2018-01-04 13:01:42 +00:00
## Helping out
Any help is very welcome.
If you don't know how to help, [I made a list of suggestions on how to help ](docs/contributing.md )