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 相关文章推荐
PHP file_get_contents 函数超时的几种解决方法
Jul 30 PHP
php面向对象全攻略 (五) 封装性
Sep 30 PHP
php操作excel文件 基于phpexcel
Jul 02 PHP
PHP Switch 语句之学习笔记
Sep 21 PHP
ThinkPHP3.1的Widget新用法
Jun 19 PHP
PHP转盘抽奖接口实例
Feb 09 PHP
php通过文件流方式复制文件的方法
Mar 13 PHP
PHP框架Laravel学习心得体会
Oct 28 PHP
smarty高级特性之过滤器的使用方法
Dec 25 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
Sep 22 PHP
php7新特性的理解和比较总结
Apr 14 PHP
PHP实现新型冠状病毒疫情实时图的实例
Feb 04 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
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
PHP封装的HttpClient类用法实例
2015/06/17 PHP
php-msf源码详解
2017/12/25 PHP
jQuery验证Checkbox是否选中的代码 推荐
2011/09/04 Javascript
用最通俗易懂的代码帮助新手理解javascript闭包 推荐
2012/03/01 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
div模拟滚动条效果示例代码
2013/10/16 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
jQuery+css3实现转动的正方形效果(附demo源码下载)
2016/01/27 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
json的结构与遍历方法实例分析
2017/04/25 Javascript
npm全局模块卸载及默认安装目录修改方法
2018/05/15 Javascript
使用webpack搭建react开发环境的方法
2018/05/15 Javascript
vue-cli4.x创建企业级项目的方法步骤
2020/06/18 Javascript
js实现移动端轮播图滑动切换
2020/12/21 Javascript
[19:59]2014DOTA2国际邀请赛 IG战队纪录片
2014/08/07 DOTA
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
pycharm 使用心得(五)断点调试
2014/06/06 Python
Python实现删除时保留特定文件夹和文件的示例
2018/04/27 Python
python实现决策树分类(2)
2018/08/30 Python
python创造虚拟环境方法总结
2019/03/04 Python
python3中rank函数的用法
2019/11/27 Python
python操作cfg配置文件方式
2019/12/22 Python
python-xpath获取html文档的部分内容
2020/03/06 Python
Python DataFrame使用drop_duplicates()函数去重(保留重复值,取重复值)
2020/07/20 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
2020/11/30 Python
Python用户自定义异常的实现
2020/12/25 Python
全天然狗零食:Best Bully Sticks
2016/09/22 全球购物
瑰珀翠美国官网:Crabtree & Evelyn美国
2016/11/29 全球购物
Tretorn美国官网:瑞典外套和鞋类品牌,抵御风雨
2018/07/19 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
自荐信格式范文
2013/10/07 职场文书
信用社竞聘演讲稿
2014/05/16 职场文书
小学秋季运动会加油口号及加油稿
2019/08/19 职场文书
一篇文章弄清楚Ajax请求的五个步骤
2022/03/17 Javascript