PHP网页游戏学习之Xnova(ogame)源码解读(一)


Posted in PHP onJune 23, 2014

一、 引言

xnova(ogame)是一款世界上最火的战争策略类网页游戏之一,也是大部分同类网页游戏效仿的对象。你只需要网页浏览器,无需下载客户端就可进行的网络游戏。

Xnova是个怎么样的游戏?

你是一个跨星系的统治者,利用不同的战略扩大你的实力。你将从一个自己的星球上开始你的事业,在那里你用现有的资源建造一个你的经济和军事基础。通过科学 研究你获得达到新的、优势的技术的入口和新的武器系统。随着游戏的进行你将对多个星球移民,与其它的玩家联盟,与其它的玩家作生意或者发动战争。无论你想 要做什么,Xnova都可以让你办到!

Xnova是和现在很火的网页游戏OGame(银河帝国)相同类型、相同题材的游戏。OGame是国内众多三国题材的 webgame 的抄袭之对象(BTW,我讨厌三国)。

声明:我学习使用的源码是开源的项目,禁止用于商业用途,否则后果自负!

原始版权归Xnova开发团队所有!

铁船长版基于Xnova v0.8e修改!

此版已停止更新,我们不提供任何技术支持!

本站提供下载的是本系统的改进版!

本站源码下载地址:https://3water.com/codes/180759.html

我们学习的过程是按照程序执行顺序进行,在看源码之前,先学习了PHP的基础教程。

如果你不懂PHP请先学习PHP基础教程,或者有C的基础更佳!

最好安装PHP调试工具,我使用的是Zend studio 5,Zend Debugger 5,使用方法应该不难,而且这些用Google大神都可以找到。最后准备热茶一杯,就可以开工了。

二、 入口(index.php)

这个文件是游戏的入口,只有几行代码,功能一目了然:先判断config.php 的文件大小是否为零;如果是,就重定向到install/目录执行安装操作;否则就重定向到login.php显示登陆页面。源码如下:

if (filesize('config.php') == 0) {
 header('location: install/');
 exit();
}
header('location: login.php');
PHP 相关文章推荐
smarty+adodb+部分自定义类的php开发模式
Dec 31 PHP
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
Apr 07 PHP
PHP print类函数使用总结
Jun 25 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
php-cli简介(不会Shell语言一样用Shell)
Jun 03 PHP
php中Session的生成机制、回收机制和存储机制探究
Aug 19 PHP
php保存信息到当前Session的方法
Mar 16 PHP
php使用simplexml_load_file加载XML文件并显示XML的方法
Mar 19 PHP
Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法
May 31 PHP
PHP单例模式与工厂模式详解
Aug 29 PHP
LNMP部署laravel以及xhprof安装使用教程
Sep 14 PHP
PHP两个n位的二进制整数相加问题的解决
Aug 26 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
Jun 23 #PHP
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
Jun 23 #PHP
ThinkPHP实现事务回滚示例代码
Jun 23 #PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
Jun 23 #PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
Jun 23 #PHP
ThinkPHP学习笔记(一)ThinkPHP部署
Jun 22 #PHP
ThinkPHP的URL重写问题
Jun 22 #PHP
You might like
使用Zookeeper分布式部署PHP应用程序
2019/03/15 PHP
让你的PHP,APACHE,NGINX支持大文件上传
2021/03/09 PHP
防止网站内容被拷贝的一些方法与优缺点好处与坏处分析
2007/11/30 Javascript
javascript继承之为什么要继承
2012/11/10 Javascript
jquery实现省市select下拉框的替换(示例代码)
2014/02/22 Javascript
JavaScript中创建字典对象(dictionary)实例
2015/03/31 Javascript
在React框架中实现一些AngularJS中ng指令的例子
2016/03/06 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
vue-cli 默认路由再子路由选中下的选中状态问题及解决代码
2018/09/06 Javascript
使用Vue实现移动端左滑删除效果附源码
2019/05/16 Javascript
vue中监听路由参数的变化及方法
2019/12/06 Javascript
Python使用chardet判断字符编码
2015/05/09 Python
Python编程中time模块的一些关键用法解析
2016/01/19 Python
python daemon守护进程实现
2016/08/27 Python
python使用super()出现错误解决办法
2017/08/14 Python
在python3环境下的Django中使用MySQL数据库的实例
2017/08/29 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
Python基于PyGraphics包实现图片截取功能的方法
2017/12/21 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
Python 处理图片像素点的实例
2019/01/08 Python
使用Nibabel库对nii格式图像的读写操作
2020/07/01 Python
一文详述 Python 中的 property 语法
2020/09/01 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
CSS3中Transform动画属性用法详解
2016/07/04 HTML / CSS
写好求职信第一句话的技巧
2013/10/26 职场文书
专升本个人自我评价
2013/12/22 职场文书
黄继光的英雄事迹材料
2014/02/13 职场文书
《风筝》教学反思
2014/04/10 职场文书
捐款倡议书怎么写
2014/05/13 职场文书
硕士生找工作求职信
2014/07/05 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
教师批评与自我批评材料
2014/10/16 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书
单位个人查摆问题及整改措施
2014/10/28 职场文书
全新239军机修复记
2022/04/05 无线电