XVoxel-ASync/README.md

48 lines
2.3 KiB
Markdown

# XVoxel-ASync
A voxel game based on OpenVoxelProject, it is able to run fully in a web browser.
## Philosophy
My goal for this game is for it to be light, extendable, pluggable and easy to mod without too much nonsense.
- Light, unlike heavy as other games
- Extendable, even its core
- Pluggable, so you can add your own additions
- Easy to mod, with an upcoming modding interface made to be easy and efficient
## Roadmap
- [x] Basic menu
- [x] 3D rendering
- [ ] Resources
- [ ] Textures (partially done)
- [ ] Sounds
- [ ] Models (as JSON)
- [ ] Physics (have to decide which engine to use)
- [ ] Settings
- [ ] Video
- [x] Field of View
- [ ] Lighting
- [ ] Audio
- [ ] Sources
- [ ] Channels (Mono, Stereo or Surround if supported)
- [ ] Input (keyboard/mouse, touchscreen and gamepad)
- [ ] Sensitivity
- [ ] Keys
- [ ] Networking
- [x] Loading worlds
- [ ] Saving worlds (implemented but unavailable in the menu)
- [ ] Multiplayer
## Acknowledgements
The libraries cited below are included in the "lib" folder for convenience, if you want your library's files removed from my project's, please kindly tell me via [e-mail](mailto:x3f200c@protonmail.com) or using any other contact information that can be found on [my main website](https://x3f200c.net/).
- [Three.JS](https://github.com/mrdoob/three.js) under the MIT license, used for rendering worlds (and its GLTF loader for future work)
- [Cannon ES](https://github.com/pmndrs/cannon-es) also under the MIT license, not used yet, will consider switching to it in order to use less WebAssembly and more vanilla JavaScript
- [Ammo.JS](https://github.com/kripken/ammo.js) under the ZLib license, used to simulate physics in worlds
- [FFlate](https://github.com/101arrowz/fflate) under the MIT license too, used to compress and decompress ZIP files (saving and loading worlds)
- [Matrix JS SDK](https://github.com/matrix-org/matrix-js-sdk) under the Apache 2.0 license, used for networking (multiplayer, uploading, downloading worlds from the Matrix network)
- [PeerJS](https://github.com/peers/peerjs) under the MIT license, will be used for alternative networking
- [Olm](https://gitlab.matrix.org/matrix-org/olm) under the Apache 2.0 license too, used for encryption support in networking
- Improved Perlin noise (I forgot where I found it and what its license was)