Grasscutter icon indicating copy to clipboard operation
Grasscutter copied to clipboard

How to adapt a hot update to a GC

Open qq969505202 opened this issue 10 months ago • 1 comments

I've got wet with a lot of methods, but it still didn't work, and the big guys asked for help.

qq969505202 avatar Apr 25 '24 13:04 qq969505202

新建一个AreaInfo类,里面存放区服信息 public class AreaInfo { public static class Resource { public String resourceUrl = ""; public String dataUrl = ""; public String resourceUrlBak = ""; public int clientDataVersion = ; public int clientSilenceDataVersion = ; public String clientDataMd5 = ""; public String clientSilenceDataMd5 = ""; publicAreaInfo.ResVersionConfig resVersionConfig = newAreaInfo.ResVersionConfig(); public String clientVersionSuffix = ""; public String clientSilenceVersionSuffix = ""; public String nextResourceUrl = ""; public AreaInfo.ResVersionConfig nextResVersionConfig = new AreaInfo.ResVersionConfig(); }

public static class ResVersionConfig { public int version = ; public String md5 = ""; public String releaseTotalSize = ""; public String versionSuffix = ""; public String branch = ""; } }

在RegionHandler类中编辑regionInfo AreaInfo.Resource area = new AreaInfo.Resource(); RegionInfoOuterClass.RegionInfo regionInfo = RegionInfoOuterClass.RegionInfo.newBuilder().setGateserverIp(region.Ip).setGateserverPort(region.Port).setResourceUrl(area.resourceUrl).setDataUrl(area.dataUrl).setResourceUrlBak(area.resourceUrlBak).setClientDataVersion(area.clientDataVersion).setClientSilenceDataVersion(area.clientSilenceDataVersion).setClientDataMd5(area.clientDataMd5).setClientSilenceDataMd5(area.clientSilenceDataMd5).setResVersionConfig(ResVersionConfigOuterClass.ResVersionConfig.newBuilder().setVersion(area.resVersionConfig.version).setMd5(area.resVersionConfig.md5).setReleaseTotalSize(area.resVersionConfig.releaseTotalSize).setVersionSuffix(area.resVersionConfig.versionSuffix).setBranch(area.resVersionConfig.branch).build()).setClientVersionSuffix(area.clientVersionSuffix).setClientSilenceVersionSuffix(area.clientSilenceVersionSuffix).setNextResourceUrl(area.nextResourceUrl).setNextResVersionConfig(ResVersionConfigOuterClass.ResVersionConfig.newBuilder().setVersion(area.nextResVersionConfig.version).setMd5(area.nextResVersionConfig.md5).setReleaseTotalSize(area.nextResVersionConfig.releaseTotalSize).setVersionSuffix(area.nextResVersionConfig.versionSuffix).setBranch(area.nextResVersionConfig.branch)).build();

yunochan avatar Apr 25 '24 16:04 yunochan