过敏!过敏!过敏!句句过瘾!先来认识一下社区大神「过敏党」!
「过敏党」游戏从业前后端开发 10+ 年,创业 2 年!曾用 Unity 开发 3D 网游 年+,熟悉Unity早期架构和其C++源码与定制,有自己的前后端框架。
300+ 部武侠小说阅读史,曾粗读 TAOCP,概读游戏编程精粹前7部,略读具体数学、算法导论,熟读 UNIX3 部头,精读《为啥我头秃》。
熟悉 Windows、Linux、FreeBSD、MacOSX 系统的开关机,略知一点行业知识,略懂一点 DDOS 防御,知识驳杂但浅薄,上班时负责经手过原生游戏的产品、商务、运营、推广等。
熟悉语言有:C = C++ = JAVA < Go = JS = C# < Python
自己基于对GFW的认知开发自用科学化上网的代码。
作者:过敏党
编辑:张晓衡
过敏党说:Pomelo
“粗暴点说,没有打动到核心用户;实际点说,维护团队没有爱了(直接或间受益不足,包含KPI),附加的:缺少现象级游戏。
从技术层面说,后端大多情况下需要的是框架而不是条条框框多的引擎
”
再说下后端流派和特点:
C/C++: 极致性能;需要有一定驾驭能力和积累,比如鹅厂部分项目;
Java: 流行标准;生态好,框架成熟,语言标准,库多,人多;
C/C++加上Lua等胶水语言:有大拿推动或有独特的代背景;比如云峰的skynet,网易大话西游的MudOS/LPC;
Go: 并行并发简单,性能不错,可以交叉编译,部署简单,和容器化相关技术docker, k8s等亲缘性较好;
Python: 语言强大,库牛逼,扩展性优秀,开发效率超一流;
Erlang: 分布式,函数式,无脑热更新,有成熟框架;流星于广深页游,那一波带动起来的;
PHP: 简单粗暴,人多;农场等特定类型弱联网游戏,套上短连和数据库可以像开发web一样快速成型;
C#: 语法优秀,性能不错,在微软生态下有BUFF加成;在windows服务器上部署简单,跑得很欢畅。
过敏党说:eCMP
过敏党:
“注册留存吗?那这留存数据挺厉害,不过变化有点诡异。
留存看起来具有典型的网赚类产品特征,诡异在次留偏高,长线留存偏低,应该是投放团队很会做吸量投放,但是目标用户被细的多了之后相对精准度降低了。
eCPM 的话可以去掉 iOS 再看,应该能体现出一些问题:苹果6月30号会下掉一批没有版号的游戏,有的“比较特殊”的一刀 999 或者 XX 农场、YY 养猪之类的投放大户在最后狂欢,eCPM大盘应该抬高了一点。
”
李逍遥:
“网赚类产品的“良好生命周期”会持续下降,渠道买量成本也会持续升高,在市场的更新和大量洗用户下,变现的 eCPM 也将会走低。所以,要抓紧冲!接下来的30-45天内,会是一波热潮!
”
过敏党:
“波动可以看看是不是投放变化,是不是有羊毛党组团来了
”
李逍遥:
“@过敏党 你很不错,能从数据中分析出一部分比较正确的观点。数据分析可以
”
过敏党说:ECS
“ecs本身抽象是挺好的,但是我的分析和体验是目前仅适合部分游戏。尤其是系统可以庞大,但是单个复杂度不会太高,以及玩法可以复杂,但是不能太深。
”
比如国外的关卡式单机以及 MOBA 有点适合,国内的 MMO 乃至 MOBA 并不是很适合。
极端的 ECS 对目前的主流开发思维很折磨,这么样拆分是很痛苦的,老实说,有这个拆分能力的人,本身工程、架构能力不俗,哪怕用过程式的开发方式也能撸出产品来,只是规范准则是很有威力的,这个 ECS 以及类似系统的长期效益会体现出来。
我自己的做法(注:开房间类游戏)是entity部分较多的采用OO,并且是用浅度继承,Comp 部分参照 Unity, Cocos的主流用法,System 我是静态代码实现。
实际体验还可以,但是可能自身习惯或者是对 ECS 的激烈并不够,所以相对目前 Cocos 或者曾经 Unity 的 CS 开发模式,并没有太多改观,约略说好处是更加规范了一些。
还有一个核心问题,致使 ECS 在 Cocos 开发中徒有其形,而并不能传神:ECS在很大程度上并不是为工程服务,而是为性能服务,因为这样的划分 Cache 友好性,以及适合并行,可以提高运行时性能。
而 Cocos 里面脚本层较难利用连续内存,而对象拆分过细也导致底层 js runtime 不能充分利用 Cache,另外逻辑本身没有并行(严格来说,连并发也没有),所以这里基本上是遗憾了。
过敏党说:微信排行榜优化
“”
如果有条件,可以在服务器一次性并行获取并打包处理好之后下发客户端;
如果无服务器逻辑,可以在客户端做优先级并发下载。毕竟一开始排行榜并不会全部显示,屏幕上可能只能显示下top10;
下载好之后头像可以做本地有过期时间的 LRU Cache,下次不用下载相同头像,根据最多显示的排名数按需确定cache大小;
本地加载用 Virtual List,如果实在没有且不想用,可以配合添加 Loading 菊花,分帧 Lazy 加载;
多数情况下,下载瓶颈在图片,尽量缩小头像大小且选择合适的格式(嗯,比如同等大小 JPG 比 PNG 加载快)显示性能瓶颈在文字,尽量用图片字体或者用好 Label的 Cache 模式。
结语
感谢「过敏党」的,精彩分享,还有更多内容我们下次继续!
欢迎加入「Creator星球开发者联盟」一起聊游戏!