Comments (8)
from prismarine-web-client.
Looking at the code, it's mostly about doing that for pworld.
The rest is mostly about passing events per messages, and a few mineflayer functions
Putting most of the remaining state will help on this.
from prismarine-web-client.
Yes the first steps of the work are in pworld. We also need a modification of pviewer to allow this kind of data transfer:
server => bot worker => pviewer worker(s) => main thread (render thread)
Alternatively we could also do:
server => bot worker => pviewer worker(s) => bot worker => main thread
That would require less modifications put will do 1 extra transfer (shouldn't cost much as arraybuffer can be transfered instead of copied).
Reproducing the mineflayer api with messages would be painful to maintain so we have to find a way to automate this. Do you have some ideas ?
from prismarine-web-client.
That's probably not needed anymore as we fixed the issue with the network.
from prismarine-web-client.
yeah it's lower priority at least
let's let it open and we'll see if we think we need it later
from prismarine-web-client.
seems webmc does that https://github.com/michaljaz/web-minecraft/blob/threejs-javascript/src/scripts/proxy/Proxy.worker.js
maybe we should still do this issue
from prismarine-web-client.
Do we have evidences that the mineflayer bot is causing some issues ? Having it in a worker would be way less convenient for everything so i don't think we should do it unless we have to.
Btw, webmc doesn't have the fixes we have on the network, so they have to use a worker to not slow the main thread. Also its not faster than what we have, they only have a shorter render distance and less complex rendering.
from prismarine-web-client.
I do see that fps are lower at the beginning when mineflayer is highly active
I agree about convenience. If we were to do it, it should be made as convenient as currently by using js proxy (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) and some looping over all methods/attributes , so the fake bot object behaves the same as the normal one.
Until we have a solution that is as convenient as the current thing, or that we are forced to do it due to performance, let's keep things like this
from prismarine-web-client.
Related Issues (20)
- c
- (console logs) Client not connecting to server. Endless loading screen or p(0) undefined disconnect reason. HOT 2
- Memory leak in prismarine-web-client HOT 8
- pwc uses threejs 0.127.0 and pviewer uses threejs 0.128.0
- NPM install error HOT 2
- Cannot connect to any server HOT 5
- cant connect to the web version HOT 1
- version HOT 2
- Fix publish build
- dmca notice HOT 2
- Menu stuck on white screen HOT 1
- It's Only A Blackscreen HOT 5
- Login with Microsoft
- This project's live preview link is not working HOT 1
- It swears at the nodejs version, and this is in the browser. How so? HOT 9
- build error HOT 2
- default server can't login HOT 2
- have a cron test to make sure this keeps running
- Blank page HOT 5
- tcp connection closed HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prismarine-web-client.