我想创建一个非常简单的双人回合制多人游戏。游戏机制最好被描述为摇滚剪刀式游戏。比赛开始后,玩家选择他们的装备,然后比赛开始;一次攻击,另一次攻击,他们切换侧面,直到其中一个用完hp。如果玩家没有在转弯限制内选择他的动作,那么服务器会为他随机移动,如果玩家因任何原因断开连接,他应该能够重新加入该游戏。
我将使用客户端 - 服务器架构。我将需要随机匹配机制,尽管如果已经在引擎中实现,那么与朋友一起玩选项就可以开始了。必须在某个时候实施在线统计。
我或多或少地了解对象pascal(Delphi,Lazarus),但在与网络相关的任何事情上都绝对为零,而这些平台似乎绝对不适合服务器;可以为客户承受,但仍然有很多不足之处。我被推荐用于服务器的node.js并且玩了一下,一路上学习了一些javascript,但它似乎太复杂了。总的来说,在编程时即兴创作我很糟糕,只能根据某些记录良好的例子来学习复杂的概念。但是,图形和GUI设计没有问题。
考虑到上述要求和背景,请推荐我一个游戏引擎/ IDE以更少的麻烦实现我的想法,并在合理的时间范围内。
答案 0 :(得分:0)
我不确定你知道多少JavaScript。
但如果您知道如何编写简单的游戏并对JavaScript感到满意,那么您需要的只是一种在JavaScript中处理多个播放器的方法
那么你可以使用我为网络部分编写的一小段代码。
好的,让我们开始:
通过网络与多个玩家制作游戏。 使用JavaScript + php非常容易。
基本上你需要的第一件事就是通过网络与玩家进行交流的简单方法。
通过让人们使用我的代码,我会让它变得简单。 我必须编写一些HTML5翻拍3d tic tac toe(www.dominicanvoice.com/caps3d)的代码。 所以你可以重用我必须编写的代码。
我写了两个对象 TNetworkCommand ,以及 TFindPlayers 。
TNetworkCommand ,设置基本的网络通信
TFindPlayers ,使用 TNetworkCommunication 进行一些代码构建,以通过网络查找其他播放器,以便您可以玩。
使用JavaScript游戏中的代码,只需包含它:
<script src="http://www.dominicanvoice.com/js/communication.php"></script>
然后您可以这样建立网络连接:
var comm = new TNetworkCommand('game_name'); // setup a communication with the network
并找到另一位玩家,你这样做:
var player = new TFindPlayers(comm,60); // find a player to play with.
然后你来回沟通,互相发送命令。
comm.send(player.player,"MY MOVE","{down:'7',up:'3'}");
并接收数据使用轮询命令,这样:
command = comm.receive();
收到的数据是JSON格式。
====================================
对象 TNetworkCommand :
function TNetworkCommand(App) { // App is an unique game name
function send(user,command,data); // send, send data to a specific user
function broadcast(command,data); // broadcast, sends data to all the users
function receive(); // receive, gets data sent to you from other users
function save(variable,value); // saves, saves data in a variable to be shared by all
function restore(variable,value); // restore, gets the value of the data saved in variable
}
==================================
对象 TFindPlayers :
function TFindPlayers(comm,timeOut) { // comm = the establish connection, timeout = tie to spend looking for a player.
var player; // player = 'COMPUTER', if no player was found, or it returns an unique string, identifying the other player.
}
================================
不确定这是否是您所寻找的不是引擎,只是如何通过互联网使用JavaScript与其他玩家沟通的解决方案。
此外, TNetworkCommand 的保存&amp;恢复功能还解决了保存游戏高分等问题。