独立游戏| 独立游戏开发商#1

我会像所有介绍一样简短简短。 我叫Tyler,是英国一家创意公司的程序员。 最近,我发现自己从事游戏开发工作,到目前为止,我真的很喜欢这种体验。 当我冒险寻求发布第一款游戏时,该博客将告诉您我的经历,奋斗和成就。 我首先开始在名为Phaser.io的HTML5 JavaScript框架中创建游戏。 我没有创建任何在Phaser中可以看到的东西,但是我确实学到了很多有关创建一款值得玩的游戏所需的工作量。 就像游戏开发中的每个人一样,我的第一个项目是Pong。 这是一个快速而有趣的项目,我花了大约2到3个小时才完成,而没有遵循任何教程或指南,仅遵循文档。 印象深刻吧? 好吧,显然不是。 重新创建Pong之后,我上网查看其他人使用的Pong,这使我的游戏看起来像是6岁的画作,不仅如此,而且人们在与我相同或更少的时间内制作了这些漂亮的Pong。 Pong游戏的数量之多令人难以置信。 这给了我们一个宝贵的教训,那就是要花很多时间和精力来制作一款值得玩的游戏。 这使我进入了我计划发行的第一款游戏,它没有明确的名称,但此刻我将其称为“火箭游戏”,因为它是关于火箭……飞……崩溃……爆炸的。 当我观看TairaGames的视频时,我想到了Rocket Game的想法,他有一个想法,就是像知名发行商Ketchapp一样,每周制作一款非常简单的游戏。 这给了我创建一个具有简单机械原理的火箭游戏的想法。…

Netcode概念第1部分:简介

指数 第1部分:简介 第2部分:拓扑 第3部分:锁步和回滚 第4部分:异步服务器-客户端和日志补偿(即将推出) 第5部分:处理数据包丢失(即将推出) 第6部分:构建Netcode协议(即将推出) 为了使不同机器上的多个玩家一起玩游戏,需要一种机制来使所有机器保持同步,以便玩家看到游戏状态的准确一致的表示,并允许玩家为其输入提供一种方式来影响游戏状态。共享游戏状态。 该游戏状态表示游戏会话的当前状态(对于MMO,则表示游戏世界的当前状态),并且包括诸如所有玩家,NPC或单位的位置和移动之类的信息; 子弹和弹丸; 以及诸如得分,金钱和资源之类的统计数据的价值。 游戏事件(例如运动,碰撞和命中检查以及生成弹丸)会影响游戏状态,并且可能源自玩家的输入,也可能来自于处理NPC动作时的游戏引擎。 影响状态的状态和/或事件必须以某种方式在所有计算机之间同步; 否则,一个玩家在自己的机器上看到的物体将不在另一个玩家的视线范围内,从而导致游戏混乱或不公平。 在可能以不同速度运行的不同机器上进行所有这些同步,同时处理诸如延迟/滞后,数据包丢失和有限带宽之类的网络物理限制,所有这些都属于“ Netcode”这一统称。 网络延迟是指信号从其源到达其目的地所花费的时间。 在处理Netcode时,永远不能假设信号可以瞬间从A传到B,实际上,存在很大一部分Netcode只是为了处理这一事实。…

Phaser 3中的模块化游戏世界(Tilemaps#1)—静态地图

这是一系列有关在Phaser 3游戏引擎中使用图块贴图创建模块化世界的博客文章。 在第一篇文章中,我们将从零开始创建口袋妖怪风格的自上而下的游戏世界,玩家可以探索: 下一篇文章介绍了如何创建一个动态平台游戏,之后的文章将介绍使用Matter.js程序生成的地牢和跳墙地图。 在我们深入之前,与此文章一起提供的所有代码都在此存储库中。 这些教程使用的是从02/26/19开始的最新版本的Phaser(v3.16.2)和Tiled(v1.2.2)。 我是哥伦比亚大学的一名创意开发人员和教授,但是我被带入了Phaser团队,并进行了冲刺,直到最初的v3发行版来开发Tilemap API。 我创建了约40个指导示例,并每周写新闻通讯更新,但我想将所有这些信息收集为更具指导性和易消化性的格式,以便人们可以更轻松地进入Phaser 3。 如果您对JavaScript,Phaser和Tiled地图编辑器有一定的经验,那么这篇文章将是最有意义的。 如果您不这样做,请继续阅读,但也请随时使用Google,Phaser教程以及Phaser示例和文档,以填补任何空白。 好吧,让我们开始吧! tilemap是一种利用模块化构建块创建游戏世界的技术。 当您将世界分解成类似乐高的碎片时,您将获得记忆,表现和创造性的胜利。 想象一下试图从头开始重新创建Mario。 假设我们决定尝试将每个级别加载为巨型图像文件。 世界1-1的宽度将超过3500像素:…