用数据中心net_发送数据时会丢失一部分是什么问题,怎么改

[复制链接]
437 |15
城北雪已至 发表于 2024-3-15 09:37:22 | 显示全部楼层 |阅读模式
比如客户端发送至服务器net_接收数据时,发送的数组中有3个数据,却只接收到1到2个数据,

数组不是嵌套的,但里面的数据是接口类型,是不是不能发送这种类型的,但是发送一个时又没问题,多个才会丢失
回复

使用道具 举报

糖门-板砖 发表于 2024-3-15 19:19:28 | 显示全部楼层
JSON字符串化后发送,收到再解析
回复

使用道具 举报

复读机读复读机 发表于 2024-3-18 10:05:42 | 显示全部楼层
可以看看通信的代码吗,我们尝试复现一下
回复

使用道具 举报

城北雪已至楼主 发表于 2024-3-19 14:21:22 | 显示全部楼层
复读机读复读机 发表于 2024-3-18 10:05
可以看看通信的代码吗,我们尝试复现一下

比如我定义了这些接口,然后用一个数组存了几个宠物信息(类似最下方的pet1),不论是从playerModuleC用net_发送至playerModuleS还是反过来发送,
都有一定机率出现接收数据不完整的情况,概率较大,
用数据大小接口试过,发送数据大小为485,接收数据大小为485时数据没问题,过大过小时都有问题,可能其中一个值丢失
话说接收的数据为什么还会大于发送的数据大小?

/** 宠物品质 */
export enum IPetRatity {
    /** 普通 */
    common = '普通',
    /** 罕见 */
    uncommon = '罕见',
    /** 稀有 */
    rare = '稀有',
    /** 史诗 */
    epic = '史诗',
    /** 传说 */
    legendary = '传说',
    /** 神话 */
    mythic = '神话',
}

/** 宠物品质颜色 */
export const petColorMap: Map<IPetRatity, LinearColor> = new Map([
    [IPetRatity.common, LinearColor.white],
    [IPetRatity.uncommon, new LinearColor(0.74, 0.95, 0.74)],
    [IPetRatity.rare, new LinearColor(0.58, 0.76, 0.95)],
    [IPetRatity.epic, new LinearColor(1, 0.91, 0.47)],
    [IPetRatity.legendary, new LinearColor(0.95, 0.7, 1)],
    [IPetRatity.mythic, LinearColor.white],
])

/** 宠物接口 */
export interface IPetInfo {
    /** GUID */
    guid: string
    /** 力量 */
    strength: number
    /** 概率 */
    probability: number
    /** 稀有度 */
    rarity: IPetRatity
    /** 宠物花费奖杯 */
    wins: number
    /** 宠物名字 */
    name: string
    /** 宠物图标 */
    icon: string
    /** 宠物星级 */
    star: number
    /** 是否上锁 */
    lock: boolean
}

const pet1: IPetInfo = {
    guid: '309102',
    strength: 1.4,
    probability: 0.5,
    rarity: IPetRatity.common,
    wins: 5,
    name: '橙嘴小黄鸭',
    icon: '309444',
    star: 0,
    lock: false
}

回复

使用道具 举报

复读机读复读机 发表于 2024-3-22 09:41:46 | 显示全部楼层
本帖最后由 复读机读复读机 于 2024-3-22 09:42 编辑
城北雪已至 发表于 2024-3-19 14:21
比如我定义了这些接口,然后用一个数组存了几个宠物信息(类似最下方的pet1),不论是从playerModuleC用n ...

用net传的是MAP吗,还是正常数组
回复

使用道具 举报

复读机读复读机 发表于 2024-3-22 10:08:47 | 显示全部楼层
传的是简单数据类型 还是复杂数据类型呢,如果是复杂数据类型是需要加注释的
回复

使用道具 举报

城北雪已至楼主 发表于 2024-3-22 17:34:41 | 显示全部楼层
复读机读复读机 发表于 2024-3-22 09:41
用net传的是MAP吗,还是正常数组

传的是数组,数组元素为接口
回复

使用道具 举报

城北雪已至楼主 发表于 2024-3-22 17:35:44 | 显示全部楼层
复读机读复读机 发表于 2024-3-22 10:08
传的是简单数据类型 还是复杂数据类型呢,如果是复杂数据类型是需要加注释的 ...

怎么区别呢,复杂数据类型怎么加注释呢,求教!
回复

使用道具 举报

复读机读复读机 发表于 2024-3-22 18:11:00 | 显示全部楼层
城北雪已至 发表于 2024-3-22 17:35
怎么区别呢,复杂数据类型怎么加注释呢,求教!

可以在创作者群里找我,发一下具体调用的代码,我来看看
回复

使用道具 举报

城北雪已至楼主 发表于 2024-3-22 21:18:03 | 显示全部楼层
复读机读复读机 发表于 2024-3-22 18:11
可以在创作者群里找我,发一下具体调用的代码,我来看看

怎么加创作者群
回复

使用道具 举报

热门版块
快速回复 返回顶部 返回列表