Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/niallb98/chessdb
A text-based multiplayer chess game written in Kx System's (https://kx.com/) programming language Q
https://github.com/niallb98/chessdb
chess game kdb kdb-q multiplayer
Last synced: about 1 month ago
JSON representation
A text-based multiplayer chess game written in Kx System's (https://kx.com/) programming language Q
- Host: GitHub
- URL: https://github.com/niallb98/chessdb
- Owner: NiallB98
- License: mit
- Created: 2023-06-18T14:26:55.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-28T17:03:54.000Z (10 months ago)
- Last Synced: 2024-02-29T16:58:37.890Z (10 months ago)
- Topics: chess, game, kdb, kdb-q, multiplayer
- Language: q
- Homepage:
- Size: 191 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ChessDB
A text-based multiplayer chess game written in Kx System's (https://kx.com/) programming language Q---
## Requirements
* `bash` (Tested with Git Bash for Windows' MinTTY terminal)
* `q/kdb+` (Tested in version 4.0)**Note:** Some terminals may be too slow at refreshing their visuals to show the game at 60 FPS properly, it is recommended to run through a faster terminal than the default, like running through a [MinTTY](https://mintty.github.io/) terminal
## How to Start a Game
First you will need a server to join; to start a server run `start_server.sh`, which can **optionally be passed a port number as an argument** for which it will host the server on, otherwise the server's port will default to the `DEFAULT_PORT` variable's value defined in `config.env` and the public and local IP address of the server will be logged upon it starting upClicking `run.sh` will start a client process for playing the game, to join a server you:
1) Select `PLAY` on the main menu
2) Enter and confirm a name you wish to call yourself in-game
3) Enter the IP and port of the server (Use local IP if on same network as the server and public otherwise) and select `Join`
4) Wait for another player to join the same server to start the game#### Note:
To play a game hosted on another network port forwarding may be necessary on the host network (Search "How to port forward" for more information)## Tips
- If `run.sh` and `start_server.sh` cannot start Q you may need to edit the `Q_CMD` override variable in `config.env` to a command that works on your machine
- To reset the server you can execute `reset[]` in its console
- When typing in the server IP address you can enter `localhost` or `.z.a` to easily set the IP to your local address
- You can move the game cursor out of bounds to wrap it around to the other side of the board## Extras
### Screenshot of Gameplay:
![Screenshot](resources/readme_images/example_gameplay.png)