
go游戏开发实践
马桶专家7
这个作者很懒,什么都没留下…
展开
-
[go游戏开发实践]关于匹配机制的测试
package main import ( "fmt" "math/rand" "time" ) //~协程 func matchProcess(model *MatchParamModel) { if model == nil { return } //if pool.startNum != 0 { // return //} //pool.startNum = 1 waitLongPool := make(map[uint64]*MatchPlayerInfo) start原创 2020-05-27 14:28:05 · 1312 阅读 · 1 评论 -
[go游戏开发实践]游戏唯一id产生算法
package main import( "fmt" "time" ) //~唯一id产生算法 var shiftSizeArr = []uint32{0xff,0xffff,0xffffff,0xffffffff} const shiftSizeTagSize = 2 //~tag偏移位数 const shiftSizeInterval = 8 //~id头偏移位数 -- 与shiftSizeArr的设置对应 // ShiftOffset -- 偏移 // 参数 v -- 值 offset原创 2020-05-18 15:31:30 · 835 阅读 · 0 评论 -
[go游戏开发实践]游戏匹配机制实现
@[TOC]go游戏开发实践 游戏匹配机制实现 在游戏项目开发过程中,分配到游戏匹配的任务,将其记录下来 匹配机制说明 为了匹配到的玩家段位相近,采用先蓄池再匹配的方式 蓄池N秒,当匹配池数量达到一定量,跳出蓄池 匹配段位等级一致的玩家,数量达到一定就可以开局 一段时间后扩大匹配范围,数量达到一定可以开局 每次匹配都优先匹配等待时间较长玩家 设计思路 Created with Raphaël 2.2.0开始匹配池不为0?有long wait等待一个检测时间未蓄池目标?不补人?足够?按参数匹配剔除玩家优先原创 2020-05-14 17:32:07 · 2619 阅读 · 1 评论