文档章节

windows下游戏服务器端框架Firefly安装说明及demo运行(转)

大鸡蛋
 大鸡蛋
发布于 2013/09/10 18:49
字数 1004
阅读 602
收藏 2

本来公司一个网游服务器端选定了pomelo框架,后来出了个Firefly,为做一个对比,决定研究一下Firefly。看了一下Firefly,感觉头大,python的,本人python小白,只好慢慢折腾,一天下来总算装上了Firefly框架,并把他的那个开源网游《暗黑世界》服务器端跑了起来,特此记录共享!

其实关于这个框架的安装,他们的官网和BBS是有教程的只是太零散,并且面向的都是高手使用,python小白根本看不懂,在这里我尽量写得简单明了,你就算是刚入门菜鸟都能看懂。开始之前我大体讲一下,这个框架基于python编写,第三方库依赖:twisted, python-memcached,DBUtils,MySQLdb,后端数据存储用到了mysql和memcached,那么咱们一步一步从头来,注意我这里是Win7的系统。

1、安装python,我用的是python-2.7.5.msi,注意是2.7的版本,如果你装了2.6下面twisted和MySQL-python也就要安装对应的2.6版本,下载一路下一步安装即可,注意安装时选择把他的路径加到Path环境变量中,这样咱们就可以直接在控制台使用python命令了;

2、安装mysql,我用的是mysql-5.5.27-win32.msi,也是下一步安装即可,注意设置root账号密码,及默认端口3306;

3、安装memcached,你可以下载源码回来这几编译,也可以找别人编译号的,我找了一个1.4.13版本的:Memcached 1.4.13 For Windows 32or64.zip

关于memcached,我也算初次使用,这里啰嗦几句:

安装:以管理员身分运行cmd,进入memcached.exe所在路径,运行memcached.exe -d install -m 500 即可安装完毕,你可以去windows服务里查看是否有memcached服务;

启动:memcached.exe -d start

停止:memcached.exe -d stop

memcached的基本设置:
-p 监听的端口 默认端口:11211
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

4、安装setuptools,装这个其实就是方便使用easy_install来安装python第三方库,下载:setuptools-0.6c11.win32-py2.7.exe,安装完毕后,把python下Scripts路径也添加到path环境变量里,我这里是path:C:\Python27\Scripts;

5、安装twisted,其实可以用easy_install twisted命令来安装,我这里是下载Twisted-12.2.0.win32-py2.7.exe来安装;

6、运行命令easy_install python-memcached 安装python-memcached;

7、运行命令easy_install DBUtils 安装DBUtils;

8、运行命令easy_install affinity 安装 affinity;

9、安装MySQL-python,可以用easy_install MySQL-python 命令安装,我这里下载MySQL-python-1.2.4.win32-py2.7.exe安装;

10、windows的话还要装一个pywin32,下载pywin32-218.win32-py2.7.exe安装;

11、安装firefly,下载firefly,这里是1.2.2版本,解压后,cmd进入firefly目录下,运行

python setup.py build

python setup.py install

即可安装完毕;

12、创建运行demo

安装完firefly之后,在python script包中就存在 firefly-admin的工具。创建第一个工程:

firefly-admin.py createproject myproject

运行:python startmaster.py

如果不报错就证明运行起来了;

13、运行暗黑世界服务器端

下载DiabloWorld-server-v1.4,解压后,用mysql运行anheisj.sql脚本创建数据库;

进入DiabloWorld-server-v1.4目录,修改config.json 里memcached服务器地质及mysql数据库host地址;

终端运行 python startmaster.py 即可;

如果出现can't connect to mysql server on 'localhost',去把mysql数据库host地址改成127.0.0.1即可。

------------------------------------------------------------------------

写到这!

原作地址: http://blog.csdn.net/wangqiuyun/article/details/11150503

本文转载自:http://blog.csdn.net/wangqiuyun/article/details/11150503​

共有 人打赏支持
大鸡蛋

大鸡蛋

粉丝 123
博文 9
码字总数 477
作品 7
朝阳
程序员
私信 提问
cocos2d-x卡牌手游《暗黑世界》在OSC@Git开源

cocos2d-x + Firefly开发的跨平台卡牌手机游戏《暗黑世界》完整商用最新版,在Git OSChina中完整推出开源下载! 游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 ...

大鸡蛋
2013/12/05
7.7K
31
当前的几种开源游戏服务端介绍

当前的几种开源游戏服务端介绍 pomelo Pomelo 是基于 Node.js 的高性能、分布式游戏服务器框架。它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复劳...

opensourcecn
2015/01/21
287
1
当前的几种开源游戏服务端介绍

当前的几种开源游戏服务端介绍 pomelo Pomelo 是基于 Node.js 的高性能、分布式游戏服务器框架。它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复劳...

fdsafsfds
2015/01/01
677
1
当前的几种开源游戏服务端介绍

当前的几种开源游戏服务端介绍 pomelo Pomelo 是基于 Node.js 的高性能、分布式游戏服务器框架。它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复劳...

fdsafsfds
2015/01/01
1K
0
基于Firefly + cocos2d-x的卡牌手游《暗黑世界V1.0》源码开放下载

安卓/IOS跨平台 卡牌手游源码《暗黑世界V1.0》完整商用版,免费提供下载!! 游戏名称:《暗黑世界》 游戏终端:安卓(android) / IOS 游戏类型:卡牌类 游戏版本:V1.0 服务器框架:Firef...

大鸡蛋
2013/08/19
9.7K
18

没有更多内容

加载失败,请刷新页面

加载更多

一个案例彻底弄懂如何正确使用 mysql inndb 联合索引

摘要: 有一个业务是查询最新审核的5条数据 ```sql SELECT `id`, `title` FROM `th_content` WHERE `audit_time` < 1541984478 AND `status` = 'ONLINE' ORDER BY `audit_time` D. 原来链接 ......

阿里云官方博客
28分钟前
2
0
详解如何用爬虫采集视频播放量数据(以腾讯视频为例)

现代社会提到大数据大家都知道这是近几年才形成的对于数据相关的新名词,在1980年,著名未来学家阿尔文·托夫勒便在 《第三次浪潮》一书中,将大数据热情地赞颂为“第三次浪潮的 华彩乐章”...

技术阿飞
34分钟前
5
0
区块链时代的拜占庭容错:Tendermint(二)

原文题目:《Tendermint: Byzantine Fault Tolerance in the Age of Blockchains》 原文作者:Ethan Buchman 翻译:饶云坤 校对:傅晓波 本文为节选 以下为正文: 本章阐述Tendermint共识算法...

万向区块链
47分钟前
2
0
AS连接网易Mumu模拟器

1、安装模拟器 打开这个网址现在模拟器然后安装 http://mumu.163.com/ 2、安装完成后启动模拟器 3、进入模拟器安装目录 例如本机的安装目录:C:\Program Files (x86)\MuMu\emulator\nemu\vmo...

HGMrWang
53分钟前
9
0
设计要做到扩展性强还挺难的

概述 在日常开发中,有时候你的上司会跟你说,这个模块的设计扩展性要高。把这句话说出来很简单,但是要做到则非常难。导致难的其中一个因素是: 你不熟悉这个行业的业务的玩法 我举个例子来...

Sam哥哥聊技术
55分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部