我目前正在使用node.js和socket.io将我的离线游戏编码为在线游戏
在我的游戏中,我使用 p5.js 库中的向量来存储玩家的位置、与碰撞相关的运动等。
但是,服务器端(名为“server.js”的txt文件)没有像客户端那样的p5.js,因此我无法使用矢量发送有关玩家的信息。
这是我的问题:如何使 server.js 文件能够访问我的 p5.js 库?
注意:简单地发送 x 和 y 值,然后使用它们来制作向量将是一个困难的解决方案,因为我将不再能够发送包含所有玩家的所有信息的单个数组。此外,敌人、食物、踪迹位置等等也取决于向量。隐藏所有这些将很难编码。
最佳答案
你想要做的事情很简单,但在你完全理解所涉及的所有部分之前,它不会感觉简单,而鉴于你目前的水平,我担心这至少需要几个月的时间。
How could I make the server.js file have access to my p5.js library?
您的 p5.js 是仅浏览器的库,还是可以将其作为模块导入到服务器中?如果是第二个选项,您只需让服务器访问它即可:
const p5 = require('p5.js');
请记住:
- 服务器应该处理玩家的位置、移动和 Action ,这样他们就无法作弊。
- 客户端应该只是来自服务器的信息的可视化显示,并将玩家按键输入发送到服务器。
因此,除非您想进行客户端预测和实体插值(我对此表示怀疑,因为您才刚开始),否则请保持简单。还不需要在客户端和服务器之间共享库。
关于javascript - 添加 JavaScript 的服务器端库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44477268/