2010-11-16 136 views
0

对不起,如果我的问题有点模棱两可,我会解释我想要做什么。在网络服务器上有一个脚本自动运行

我想在网络服务器上运行游戏。它是一款基于回合的游戏,你们中有些人可能会遇到它。 它的游戏称为黑手党:http://mafiascum.net/wiki/index.php?title=Newbie_Guide

我知道它是如何需要在mysql数据库方面工作的服务器端脚本语言等等等等

什么我不知道是什么的最好的方式得到一个脚本来激活游戏开始时,并能够运行一个脚本,每3分钟更新游戏状态:

一次10人一起在游戏开始时3分钟内

人投票。 (选票将被存储在数据库中)

3分钟后脚本需要运行计算选票,除去球员

然后1分半钟后,脚本需要再次运行。

这个3分钟,1分半钟的循环需要重复,直到满足某个条件,即除2个之外的所有球员已经死亡或者其他东西。

当玩家刷新页面时,他们需要更新游戏状态。

我读过关于套接字,并想知道这是否是一个好的途径。套接字是否可以将json发送回客户端?这样jquery可以用游戏结果更新客户端。

理想情况下,我想要在jquery中完成前端,并通过php或其他方式完成后端脚本处理。

这会是多么开放?在人们试图通过发送诸如帖子变量sqli攻击等等的攻击方面而言的方面等。

它的一个相当广泛的问题,我相信有不止一个计划,所以多于一个正确的答案,但我会对人们对如何开发它的想法感兴趣。

感谢您的时间:)

回答

1

我会简单地使用在后端cron作业或类似的更新状态每x秒,你建议。

要触发游戏开始,只需发出一个PHP命令来设置您的CRON作业运行。

这种方式时间控制在服务器的幕后,你可以自由地更新使用jQuery的游戏状态给你的玩家。

+0

谢谢卢克,我将如何去设置在cron作业运行在PHP?我可能会同时运行大约10或15个游戏,这会使服务器减速很多,脚本所做的只是更新数据库中的记录,所以ots实际功能不会产生太多开销,我不认为 – 2010-11-16 07:44:23

+0

我在这里找到了一些有用的信息:http://www.developertutorials.com/tutorials/php/running-php-cron-jobs-regular-scheduled-tasks-in-php-172/。关于速度,它很难回答,因为我无法知道您的数据将会如何劳动密集。也就是说,你应该编写一些性能测试脚本,以回答诸如“这个游戏如何与1,000个玩家同时运行”等问题。 – 2010-11-17 05:57:33

相关问题