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+Tidy-完美的XHTML纠错+过滤
Apr 10 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
解析php时间戳与日期的转换
Jun 06 PHP
php网站地图生成类示例
Jan 13 PHP
PHP图片库imagemagick安装方法
Sep 23 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
Nov 18 PHP
PHP5多态性与动态绑定介绍
Apr 03 PHP
php封装的mysqli类完整实例
Oct 18 PHP
Yii2 批量插入、更新数据实例
Mar 15 PHP
php实现微信支付之现金红包
May 30 PHP
PHP单例模式应用示例【多次连接数据库只实例化一次】
Dec 18 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
Oct 30 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+mysql事务rollback&commit示例
2010/02/08 PHP
分享php分页的功能模块
2015/06/16 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
PHP学习笔记之session
2018/05/06 PHP
js 编写规范
2010/03/03 Javascript
javascript 设为首页与加入收藏兼容多浏览器代码
2011/01/11 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
js获取日期:昨天今天和明天、后天
2014/06/11 Javascript
jquery实现的下拉和收缩效果示例
2014/08/21 Javascript
详解javascript事件冒泡
2016/01/09 Javascript
JS递归遍历对象获得Value值方法技巧
2016/06/14 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
jquery 中toggle的2种用法详解(推荐)
2016/09/02 Javascript
JavaScript实现垂直向上无缝滚动特效代码
2016/11/23 Javascript
BootStrap Fileinput的使用教程
2016/12/30 Javascript
vue路由组件按需加载的几种方法小结
2018/07/12 Javascript
对Vue beforeRouteEnter 的next执行时机详解
2018/08/25 Javascript
vue 封装 Adminlte3组件的实现
2020/03/18 Javascript
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
2018/05/16 Python
使用Tkinter制作信息提示框
2020/02/18 Python
使用Python防止SQL注入攻击的实现示例
2020/05/21 Python
Python3合并两个有序数组代码实例
2020/08/11 Python
自荐信的两点禁忌
2013/10/30 职场文书
求职简历自我评价怎么写
2015/03/10 职场文书
工地材料员岗位职责
2015/04/11 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
工作态度恶劣检讨书
2015/05/06 职场文书
教师节主题班会方案
2015/08/17 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
Python turtle实现贪吃蛇游戏
2021/06/18 Python
React如何创建组件
2021/06/27 Javascript
vue-cil之axios的二次封装与proxy反向代理使用说明
2022/04/07 Vue.js
python三子棋游戏
2022/05/04 Python
小程序实现侧滑删除功能
2022/06/25 Javascript