将传奇1.76移植到centos的尝试
来源:互联网 发布:造梦西游刷点卷软件 编辑:程序博客网 时间:2024/04/30 15:21
前段时间赋闲, 于是花了近一个月的时间作了一些尝试, 感觉效果还不错, 只是工作量太大(对一个人而言), 基于时间和精力的缘故, 暂告一个段落, 非常遗憾.
力有不逮啊. 可能有些朋友比较好奇, 我先在这里作一些陈述.
做这个事情的出于以下几个目的:
1. 个人刚经历过一个手游项目, 做服务端, 对客户端的技术一直比较好奇, 因此想感受一下开发客户端时要用到的技术和编程模式,
这样以后招人时也不至于太外行.
2. 在此之前自研了一个基于protobuf的actor模型服务器框架, 想借这个事情感受和验证一下这个框架的可行性, 结论是非常好用, 并获得了一些超出预期
的好处.这里先简单描述一下这个框架, 后续有时间再详细介绍.
a). 开发语言, c++, 有空考虑再用java实现, 对这两种语言在服务端开发时的优劣, 个人感受是, 开发阶段c++做转移表, 函数回调非常简单自然,
运行时内存消耗少, 效率高, 但开发难度可能更大, 编译耗时更是无法忍受, 项目上线前期心理压力大, 因为进程随时可能飞掉. java则开发速度
快, 人员要求低, 无编译耗时问题, 部分bug不影响整个进程, 心理压力小, 坏处是内存消耗大, 如果用c++开发, 一台机器可能开20个区, 用java
可能只能开15~10个区.
b). 只支持linux, 因为是基于epoll的, 无法向windows移植.
c). 既然是actor模型, 就主要是为了解决锁和并发的问题, 其实更主要的是锁的问题, 这个框架向上提供了一个完全无锁和与网络无关的开发环境,
换句话说. 进行业务开发时, 再也看不到pthread_mutex_lock这些了, 也看不到send等socket函数了. 取而代之的是事务, 任何动作都以事务开始,
以事务结束.
d). 由于任何动作/请求都是基于事务的, 因此代码的运行轨迹很容易跟踪, 可测量性非常高, 玩家行为日志输出/分析非常方便.
3. 一个很朴素的理由, 希望能在linux上玩一下靠谱的端游, 人个一直以centos作为平时工作的开发机, 喜欢gnome2的大方与简洁, 因此客户端
和服务端都运行在centos上, 开发时使用的版本是centos6.4-x86_64.
好了, 上图.
1. 登录界面.
2. 开门动画.
3. 角色创建.
4. 角色创建好了.
5. 在比奇海边.
6. 在比奇城郊.
截图可能看起来比较奇怪, 其实是却掉了边框, 主界面则是居中置顶.
- 将传奇1.76移植到centos的尝试
- 将pthread移植到windows
- 将java移植到.NET
- 将websocket移植到omap3530
- 将openwrt移植到P720
- 将x264移植到Android
- 将ffmpeg移植到Android
- 将lame移植到Android
- 将ffmpeg移植到Android
- 将Nodejs移植到Arm
- 将现存的信息系统移植到组件化架构
- 将现存的信息系统移植到组件化架构
- 如何将Linux包含flock的程序移植到Solaris
- 将Linux代码移植到Windows的简单方法
- 将Linux代码移植到Windows的简单方法
- 将.Net应用移植到Linux上来的Mono工程
- 如何将自己编译的系统移植到G1上
- 将Linux代码移植到Windows的简单方法
- 你的Qt版本也许该换了
- 50个python库及介绍(收藏)
- zend framework2中文教程汇总
- 乔布斯留给苹果的遗产
- Cocos2dx 3.0 过渡篇(一) 初体验
- 将传奇1.76移植到centos的尝试
- Mybatis中配置Mapper的方法
- C++ primer 文本查询程序 Query
- 【cocos2dx 3.3】口袋空战1 背景层
- JAVASCRIRP 如何退出整个框架
- 使用java/groovy扩展ant初步
- HDOJ1011 Starship Troopers
- sed
- BAE3.0定时任务设置