问题标签 [online-game]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 为什么我在第 216 行收到错误:“无法读取 null 的属性 'style'”,因为第 190、200、213 行也有问题?
* 我无法弄清楚为什么我在控制台上收到以下错误:第 216 行(靠近底部,我已发表评论)上的“无法读取 null 的属性 'style'”,因为第 190、200 行也有一些问题, 213? 我认为问题出在激光变量上……请帮忙。如果有人能尽快帮助我,我将不胜感激。* '''
'''
javascript - 添加播放器后激光不射击
我一直在尝试制作一个角色发射激光的游戏,但是由于某种原因,当您按下 Q(即开火键)时,激光不射击,这很奇怪,因为我之前尝试过此代码并且它工作,我唯一改变的是我在游戏中添加了另一个玩家,它没有给我任何错误消息
'''
'''
python - 在while循环中从服务器接收数据显示窗口没有响应
我正在制作一个在本地服务器上运行的初学者在线多人井字游戏。我的代码有 2 个问题。我已将游戏文件夹分成 6 个 python 文件:
Client1.py :- 此文件是客户端将拥有的输出文件。我在此文件中遇到了一些问题。当玩家正在等待其他玩家移动时,如果该客户端已经播放,它将发送 PLAYED 到服务器,如果服务器正在等待其他玩家移动,它将向该客户端发送 W 否则它将发送玩家移动号码。当这个 .py 文件正在等待回复时,它从服务器获得的消息是 W,然后窗口显示Not Responding。两个客户端都参考Clientsupport.py和Network.py。这两个文件只是为了支持客户
Client2.py :-这个文件是 Client1.py 的精确副本。但这两个文件都有同样的问题。这是第二个问题,当客户端都连接 X 和 O 图像时,仅在加入服务器的第一个客户端上得到 blit。对于第二个客户,它的空白窗口只有板,但输入和其他一切工作正常。
Server.py :- 这取自另一个文件Game.py的引用。服务器使用此文件来检查谁赢得了分数和其他参数。服务器中的Pt变量基本上是 playertag 发送 0 和 1。首先加入的玩家获得 0 并且是 X 玩家,否则玩家是 O 玩家。
Clientsupport.py :-所以这个文件做了所有的客户端支持,比如 pygame 显示和 blitting X 和 O。
Network.py :-关于这个文件没什么好说的,这个文件只连接并将 msg 发送到服务器并且工作得很好。
最终调试帮助:- 有 2 个问题:
- 等待对手移动时,Windows 显示 Not Responding
- 作为玩家 O 的客户端始终没有得到图像 blit 认为它需要输入并将其发送到服务器。
javascript - 快节奏在线游戏(2D 平台游戏)- 网络服务器/客户端
我开始了一个新项目,一个快节奏的在线游戏(某种 2D MOBA)。我遇到了有关客户端预测和服务器协调的网络代码部分的问题。
游戏机制: 2D - 平台游戏(MOBA)
运动: WASD(跳跃/左/下/右)
能力和自动攻击: J/K/L
架构:客户端/服务器(权威)
我的网络代码正在使用这些技术:
- 客户端预测和服务器协调
- 服务器正在向玩家发送位置和数据,玩家正在重播最后未处理的输入
- 客户端以固定的时间步长(60 次/秒)发送每帧的输入,这些输入在服务器端进行处理
- 其他实体被插值
- 子弹/能力外推(航位推算)
到目前为止,这对客户来说效果很好。我的问题是,如何处理某种强制运动?
例如,另一个玩家击晕或减速你,在服务器上,你会减速或减速,但在数据包到达之前你不会知道它,因为你正在预测下一个状态,它会传送你回来,因为你的速度被更改为 0 或更低(在缓慢的情况下),它会立即让您返回(瞬移)。
处理这种技术的好方法是什么?我正在考虑在当前位置和服务器上的位置之间进行插值,但这对我来说效果不佳。
networking - 通过游戏引擎运行3D游戏的游戏服务器
关于这个问题有一些问题,我无法找到我正在寻找的东西。
这样的游戏服务器有意义吗,还有3D游戏,通常是mmofps游戏,所以像csgo valorant这样的游戏就用这个方法?
将这个游戏服务器创建的场景中的对象设计为没有任何纹理会更有益吗?
这种方法是否可能让我在未来遇到问题或阻止我进行我将要进行的创新?
此外,使用 .net 核心,这是否有用且高效?
如果有这方面的知识或研究过并使用过的人回答我的问题,他们会在我的脑海中回答我的问题。
java - 用于在线游戏的 Java 机器人
我是java新手,正在尝试为在线游戏制作机器人并进行一些练习。我有一些问题,KeyListener
当我的程序(java)最小化时如何让我工作,这样我就可以最小化我的java bot,然后打开我的游戏(它在窗口模式下)并按下F2开始我的机器人工作。
这是我的代码:
对不起英语不好
typescript - 如何避免实时数据库onWrite触发函数回调迭代数据但数据已更改
我正在借助实时数据库制作 1 对 1 游戏匹配系统。当用户登录时,它会在用户表中生成一条记录。当有 2 名玩家用户状态为占位符时,云功能将为这 2 名玩家生成一个游戏信息并将他们的用户状态更改为等待。我正在做的是创建一个触发函数来观察用户/{uid},当它的状态子是占位符时,然后调用 matchmaker 函数以生成具有唯一 gameId 的 gameInfo。但问题是当触发器 onWrite 函数第一次运行时,理论上只有一个具有占位符状态的用户,但是在某些情况下,当迭代数据库用户表时,数据库变化如此之快,它有两个具有占位符状态的玩家。所以有时会发生一些有线的事情,在两次触发函数回调之后,gameInfo 中应该只有一个 gameId 记录,因为两个玩家以唯一的 gameId 加入一个游戏房间,但有时会生成两个唯一的 gameId 记录。我怎样才能避免这种有线的事情发生。这是数据库表。
这是我的云功能代码的一部分。对于matchmaker函数,如果地图中有两个玩家waitingPlayers,它会在games表中生成gameId记录。
python - 套接字在 python 中提供了一个无效的参数
回溯(最后一次调用):文件“C:\Users\HP\PycharmProjects\Online_minigame_01\server.py”,第 15 行,在 s.listen(2) 中 OSError: [WinError 10022] An invalid argument was provided
因此,我尝试制作一款在线 2 人太空飞船射击游戏。但这部分(服务器)甚至无法运行。我已经尝试了很多方法,但它仍然无法正常工作。我应该如何解决它?