大厅子游戏实现指引,creator2.0以上

这个是构建后才会生成的,在相应的构建模板目录下,你可以看 package/assetlist/main.js文件,生成代码在这里面

多谢大佬的回复,我这边仔细看了代码,目前资源文件build后成2种文件,一种是json格式的,一种是png格式的,目前png格式的uuid和文件名一样的,但是json格式的和uuid没有关系,现在使用脚本分离就只能把图片资源资源分离出来,音频,scene,js,font这些资源没有办法区别,请教下这个怎么处理

mark一下

build后是能拿到完整的build资源配置的,你可以通过依赖关系去处理。
比如prefab上挂载了音频,这样就可以拿到prefab的依赖资源音频的uuid了。
当然有的资源是不明确的,比如一个场景资源,需要你自己定义一份配置,声明下场景是A类资源,然后就能确定这个场景依赖的资源都属于A。

大佬的意思是我查里面的uuid,如果和我的关联上了则直接放到对于的模块里面吗?

兄弟 你的demo我跑起来了。有些疑惑的地方:

  1. project.manifest version.manifest这个有什么用? 大厅部分的资源更新管理 直接用hall_project.manifest hall_version.manifest这个不就好了吗?

2.执行完脚本后 remote-assets-sub res目录下没有import文件夹 这个正常吗? 用这个目录下的资源去替换jsb-link下面的相应资源 会导致加载main场景 报错。应该是丢失了import下面的资源。

望指教。

  1. project/version.manifest文件对分包方案暂时无用,是一份包含所有资源的配置。
  2. 没有import文件夹感觉不太正常,你需要看下对应模块的配置文件xx_project.manifest中是否用到了import里的资源。
    需要你自己排查下是否没有正确的拷贝资源到 remote-assets-sub目录中。

mrak

####有个问题
按照楼主的思路,假如有很多小游戏,10多个样子,而小游戏经常修改,大厅和小游戏的代码是在一起的,岂不是每次进游戏都不会不停的更新。

没有太明白你的问题。
所有代码都是在一起的,所以代码的更改需要考虑到是否会对其他模块造成影响,这是这个方案的一个弊端。
至于是否会造成频繁更新是跟业务逻辑相关的,假设你改了其中一个小游戏代码(理论上这些代码不应该对其他小游戏造成影响),那么就不用更新其他小游戏。

我想问下大佬 更新失败后

finish没有用,是不是漏写了什么代码, 还有为什么失败后 还要把缓存文件修改

finish是判断更新 成功 还是 失败的,是否处理可由自己决定。
demo里我没有处理失败,都当成功情况处理了(从我们自己以往的运营项目看,会出现更新失败的情况,但实际上是更新成功了)

我这边有个问题
正在下载中, 这时切换场景再回来下载 导致下载不了
我想下载失败后处理一下 清理缓存 但是不知道该怎么做

这个是有什么作用的

下载过程中有些资源可能下载失败,这个是尝试重新下载失败的资源。
失败后你可以重头开始走更新的流程

我这边已经跑通了 我想大厅模块包含代码更新 然后其他子游戏只进行资源更新 应该怎么处理

这个恐怕没办法,因为creator现在不支持分包,同一个项目里的代码都会合并成一个文件。
现阶段做的只能是通过逻辑层,减少子游戏代码之间的耦合,尽量做到代码的更新不会影响到其他模块的逻辑。

大佬有没有遇到,热更新成功,执行 cc.game.restart 后,部分资源不是最新的

大佬.你好.我用cocos creator 2.版本, 我下载了update_sub这个zip,我新创建了工程,直接把asset目录拷贝到新工程中,把插件main.js拷贝到package目录下,当我点构建的时候报错, 错误提示为 interal资源没有分组… 请问我应该怎么做呢? 还是我有什么步骤弄错了. 错误提示:请注意,以下资源未设置游戏名称:[{“uuid”:“0e93aeaa-0b53-4e40-b8e0-6268b4e07bd7”,“url”:"db://internal/resources/effects/builtin-2d-spine.effect…

Mark一下,后面再来看

楼主 你好 按照你的思路 我采坑2.3.1版本大厅+子游戏更新方案后 打包时放在根目录的大厅配置文件 在jsb.fileUtils.getStringFromFile 获取内容时 返回的是空串 你用的什么版本 有没有遇到这个问题 可否指出问题出在哪里