微信小游戏_微信小游戏源码 - CSDN
微信小游戏 订阅
微信小游戏是基于微信客户端的游戏,它即点即玩,无需下载安装,体验轻便,可以和微信内的好友一起玩,比如PK、围观等,享受小游戏带来的乐趣。2017年12月28日,微信更新的 6.6.1 版本开放了微信小游戏 [1]  ,并开放了小游戏开发文档和开发者工具。 [2]  2018年4月4日,第三方开发者推出的微信小游戏《征服喵星》已经通过审核。 [3] 展开全文
微信小游戏是基于微信客户端的游戏,它即点即玩,无需下载安装,体验轻便,可以和微信内的好友一起玩,比如PK、围观等,享受小游戏带来的乐趣。2017年12月28日,微信更新的 6.6.1 版本开放了微信小游戏 [1]  ,并开放了小游戏开发文档和开发者工具。 [2]  2018年4月4日,第三方开发者推出的微信小游戏《征服喵星》已经通过审核。 [3]
信息
发布日期
2017年12月28日
中文名
微信小游戏
微信小游戏发展历程
2017年12月28日,微信更新的 6.6.1 版本开放了微信小游戏。 [1]  2018年3月份下旬,微信小程序游戏类正式对外开放测试,但彼时第三方小游戏还不能对外发布。2018年4月4日,第三方开发者推出的微信小游戏《征服喵星》已经通过审核。用户可以通过入口搜索到该游戏,依托微信10亿流量级平台,并可以体验游玩。 [3] 
收起全文
精华内容
参与话题
  • 微信小游戏开发(1)

    千次阅读 2018-08-20 15:33:51
    一、安装开发工具 前往开发者工具下载页面,网址:... 二、创建小游戏项目 1、打开微信开发者工具,选择小程序项目。 2、此时需要输入三项内容:项目目录、APPID、项目名称。 其中,项目目录是你在本地存放...

    一、安装开发工具
    前往开发者工具下载页面,网址:https://developers.weixin.qq.com/minigame/dev/devtools/download.html,根据自己的操作系统下载对应的安装包进行安装。
    二、创建小游戏项目
    1、打开微信开发者工具,选择小程序项目。
    这里写图片描述
    2、此时需要输入三项内容:项目目录、APPID、项目名称。
    这里写图片描述
    其中,项目目录是你在本地存放项目代码的文件夹。
    APPID是小程序游戏对应的APPID。
    如果有填入即可。
    如果没有,您可以选择APPID输入框下方的注册前去注册,
    也可以选择使用测试账号-小游戏。
    项目名称是你在本地为此小游戏取得一个名字,便于识别。
    在本教程中,我们暂时选择使用测试账号-小游戏。同时填好第一项和第三项。
    此时会出现一个选项:建立游戏快速启动模板。我们将其选中即可。
    这里写图片描述
    点击确定之后,我们就看到了如下界面:
    这里写图片描述
    此时我们便快速创建了一个小程序。
    下一节我们将为大家介绍小程序的文件目录结构。

    展开全文
  • 微信小游戏是一种基于微信平台开发,不需要下载安装即可使用的全新游戏应用,体现了“用完即走”的理念,充分节省用户的手机空间。小游戏无论是开发以及使用都相当轻便快捷,同时基于微信的社交属性让小游戏具备较强...
  • 微信小游戏源码

    2020-07-30 23:31:54
    微信小游戏源码,和素材,大家可以下载下来玩一玩
  • Cocos Creator微信小游戏开发

    千人学习 2019-10-08 16:52:15
    如今,H5游戏、微信小游戏、抖音小游戏、头条小游戏、快手小游戏、百度小游戏、QQ轻游戏等小程序游戏都特别火,而这些小游戏中80%都是用Cocos Creator开发的,Cocos Creator可以做到一次开发,多平台部署。...
  • 小游戏学习--获取已发布微信小游戏源码

    万次阅读 多人点赞 2018-08-03 11:23:02
    最近一直在做微信小游戏的开发,发现了一个好玩的事 ,在这里记录一下。 这段时间一直在做一些小游戏 ,小程序的开发,但有的时候会发现性能上总是不那么的尽如人意(毕竟我这小菜鸟水平有限),于是就想到,想要看...

    最近一直在做微信小游戏的开发,发现了一个好玩的事 ,在这里记录一下。

    这段时间一直在做一些小游戏 ,小程序的开发,但有的时候会发现性能上总是不那么的尽如人意(毕竟我这小菜鸟水平有限),于是就想到,想要看看别的大神们是怎么处理这些问题的(其实就是想看一下大神们的代码怎么写!)。但是,有一个问题就是小游戏或者小程序和 H5 、 网页 不一样,不能直接F12 看代码,要怎么才能拿他们的代码呢 ?  

     

    在经过一顿的探索折腾,加百度 ,发现了一个办法还算是可行  :  就是通过缓存在手机上的小程序文件,进行反编译还原原来的代码。

     

    那么具体怎么实现呢 ,接下来具体说一下:

     

    首先需要知道的是小程序在手机里的文件储存位置

    —— 那么这个位置具体在哪呢   ?

    ———— 具体目录位置:/data/data/com.tencent.mm/MicroMsg/{{一串32位的16进制字符串名文件夹}}/appbrand/pkg/  在这个目录下会有一些 xxx.wxapkg 这样后缀的文件,这些就是小程序或者小游戏的包。

     

    ———— xxx.wxapkg 是什么呢?

    ——————微信小程序源码阅读笔记1 这里有一篇详细介绍的文件 大家可以看一下。

     

    然后获取小程序的  .wxapkg 包

    —— 我获取的方法: 我是在电脑上用root过的安卓的手机模拟器 ,上安装RE文件管理器 ,然后通过管理器获取到的。

    ————具体实现  : 

     1 、 安装手机模拟器(这里我用的是夜神模拟器)

             下载地址  :www.yeshen.com/cn/download…

    2 、 在模拟器上安装 微信 , qq ,RE管理器

           RE管理器先下载到电脑上,然后再拖到模拟器里面就可以了。

           RE管理器 下载地址 :pan.baidu.com/s/1PPBx08rN…

           微信 ,qq  直接在模拟上下载。

    3 、 设置超级用户

           安装好RE 管理器之后需要 给RE 设置超级用户这个权限。

    4 、 去缓存小游戏或小程序

           打开微信 然后找到你想要获取代码的小游戏或小程序  打开这个小游戏或小程序,程序开始运行之后源文件就已经下载到本地了。

    5 、 找到源文件

           将模拟器的操作页面切换到桌面 ,运行RE管理器 ,然后在管理器里面找到之前说到的那个目录:

       /data/data/com.tencent.mm/MicroMsg/{{一串32位的16进制字符串名文件夹}}/appbrand/pkg/

     

           

           这里这些就是我们需要的源文件包,然后再通过 访问的时间 找到刚才运行的程序是哪一个就可以了。

    6 、 压缩

            我们需要先把要用的文件进行压缩 zip ,如果不压缩发送文件时会提示  文件无效。

            长按这个文件,会出现一个工具栏 ,然后点击工具栏的右侧的按钮,选择压缩所选文件

             

             

             压缩完成之后  根据提示点击查看

            

    7 、 发送到电脑

           找到需要的文件后,还是长按这个文件,会出现一个工具栏 ,然后点击工具栏的右侧的按钮,选择发送,然后选择你要发送的位置(三个选择方式都行只要你能拿到这个文件就行)

            

           

           

           8 、 拿到文件  

           

          这就是我们需要的文件  。 接下来就是对它进行反编译  ,解析出源码来了 。

    最后反编译 

    —— 首先反编译要用到node .js 运行环境 

    ———— node 下载地址 : nodejs.org/en/

    —— 然后反编译用的脚本 (GitHub上qwerty472123大神写的node.js版本的)

    ———— 下载地址 github.com/qwerty47212…

    这两样都安装好了之后 ,打开编译脚本所在的文件夹 ,然后shift + 鼠标右键 在菜单中选择  “在此处打开命令窗口” 

    然后安装以下依赖包 :

    npm install esprima

    npm install css-tree

    npm install cssbeautify

    npm install vm2

    npm install uglify-es

    npm install js-beautify

    这些都安装好之后 ,最后一步的反编译就来了  :

    继续在当前的命令行输入  

    node wuWxapkg.js [-d] <files...>     //files 就是你想要反编译的文件名

    比如 :有一个 _-1568765780_11.wxapkg  这个文件 

     直接复制地址栏里的地址  +  文件名

    node .\wuWxapkg.js C:\Users\Administrator\Desktop\app123\_-1568765780_11.wxapkg 

    回车运行

    完成之后 源文件是在的文件夹里会出现一个相同名字的文件夹 ,这个文件夹里就是你需要的小游戏或小程序的所有的源码。

    到这里所有的就都完成了 ,剩下的就全是自由发挥了。

    展开全文
  • 微信小游戏排行榜:Cocos Creator

    千次阅读 2019-04-02 17:41:17
    上一篇文章介绍了主域和子域的概念,微信小游戏:主域子域,这一篇介绍一下怎样在微信小游戏中制作好友排行榜 创建工程 由于开放数据域是一个封闭、独立的 JavaScript 作用域,所以开发者需要创建两个项目: 主域...

    上一篇文章介绍了主域和子域的概念,微信小游戏:主域子域,这一篇介绍一下怎样在微信小游戏中制作好友排行榜

    创建工程

    由于开放数据域是一个封闭、独立的 JavaScript 作用域,所以开发者需要创建两个项目:

    • 主域项目工程(正常的游戏项目)
    • 子域项目工程(通过微信 API 获取用户数据来做排行榜等功能)

    在我的示例中client是主域工程,children是子域工程,工程目录可以不相关
    在这里插入图片描述
    发布设置有几点注意事项

    • 首先,左侧主域中开放数据域代码目录要和右侧子域的游戏名称相同
    • 其次,右侧子域的发布路径要在主域发布路径之下,在我的工程中,主域的发布路径是
      G:\B2\trunk\code\client\build,那么子域的发布路径就要是G:\B2\trunk\code\client\build\wechatgame
    • 最后要先构建主域,再构建子域,因为构建子域的时候主域目录可能不存在,如果确认主域已经构建过,且只修改了子域的内容,也可以只构建子域工程。如果构建了主域要重新构建子域,因为构建的时候,Cocos Creator会把之前的构建目录删除掉。
      在这里插入图片描述

    核心代码

    主域

    这段代码可以写在你的游戏结算函数中,告诉子域游戏要结算了

    if(cc.sys.platform == cc.sys.WECHAT_GAME)
            {
                wx.postMessage({score : this.score, type : "open"});
            }
    

    子域

    var self = null;
    cc.Class({
        extends: cc.Component,
    
        properties: {
            scroll_view_content : cc.Node,
            score_num_txt : cc.Label,
            max_score_notice : cc.Node,
            scroll_item_prefab : cc.Prefab,
            root_node : cc.Node,
        },
    
        start () {
            this.max_score = 0;
            if(cc.sys.platform == cc.sys.WECHAT_GAME)
            {
                wx.onMessage(this.on_message_come);
                wx.getUserCloudStorage({
                    keyList : ["max_score"],
                    success : this.get_user_data_success,
                    fail : this.get_user_data_fail,
                });
                wx.getFriendCloudStorage({
                    keyList : ["max_score"],
                    success : this.get_friend_data_success,
                    fail : this.get_friend_data_fail,
                });
            }
            this.root_node.active = false;
            this.cached_scroll_item = [];
            this.cached_data = {};
            self = this;
        },
    
        on_message_come : function(data)
        {
            if(data["type"] == "open")
            {
                var score = data["score"];
                self.refresh(score);
                if(score > self.max_score)
                {
                    wx.setUserCloudStorage({
                        KVDataList : [{key : "max_score", value : score.toString()}],
                        success : self.set_data_success,
                        fail : self.set_data_fail,
                    });
                    wx.getFriendCloudStorage({
                        keyList : ["max_score"],
                        success : self.get_friend_data_success,
                        fail : self.get_friend_data_fail,
                    });
                    self.max_score = score;
                }
            }
        },
    
        refresh : function(score)
        {
            this.score_num_txt.string = score;
            if(score > this.max_score)
            {
                this.max_score_notice.active = true;
            }
            else
            {
                this.max_score_notice.active = false;
            }
            var items_d = [];
            for(var k in this.cached_data)
            {
                items_d.push(this.cached_data[k]);
            }
            items_d.sort(function(a, b){return b["max_score"] - a["max_score"];});
            for(var i = 0; i < items_d.length; i++)
            {
                if(i < this.cached_scroll_item.length)
                {
                    this.cached_scroll_item[i].refresh(i, items_d[i]);
                }
                else
                {
                    var new_node = cc.instantiate(this.scroll_item_prefab);
                    new_node.parent = this.scroll_view_content;
                    var controller = new_node.getComponent("RankItemController");
                    controller.refresh(i, items_d[i]);
                    this.cached_scroll_item.push(controller);
                }
            }
        },
    
        set_data_success : function(result)
        {
            console.log(result);
        },
    
        set_data_fail : function(result)
        {
            console.log(result);
        },
    
        get_user_data_success : function(result)
        {
            console.log(result);
            var data = result["KVDataList"];
            for(var item in data)
            {
                if(data[item]["key"] == "max_score")
                {
                    self.max_score = parseInt(data[item]["value"]);
                    break;
                }
            }
        },
    
        get_user_data_fail : function(result)
        {
            console.log(result);
        },
    
        get_friend_data_success : function(result)
        {
            var data = result["data"];
            for(var k in data)
            {
                var final_d = {};
                var item_d = data[k];
                var kv_list = item_d["KVDataList"]
                final_d["url"] = item_d["avatarUrl"];
                final_d["nickname"] = item_d["nickname"];
                for(var kv in kv_list)
                {
                    if(kv_list[kv]["key"] == "max_score")
                    {
                        final_d["max_score"] = parseInt(kv_list[kv]["value"]);
                        break;
                    }
                }
                self.cached_data[item_d["openid"]] = final_d;
            }
            console.log(result);
            console.log(self.cached_data);
        },
    
        get_friend_data_fail : function(result)
        {
            console.log(result);
        }
    });
    
    
    1. 获取好友数据成功后的数据格式可以参考微信小游戏:主域子域中的介绍
    2. 各个子域函数的用法也可以参考微信小游戏:主域子域中的介绍

    下一篇文章将介绍一些微信小游戏中遇到的一些问题及解决方式

    1.开发工具:https://www.cocos.com/

    推广一下自己做的简单的小游戏
    在这里插入图片描述
    在这里插入图片描述
    创建了一个小游戏交流群,如果过期或者满了或者有问题交流 可以加我微信 备注“微信小游戏”
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 微信小游戏教程(三) 新手教程

    万次阅读 2018-01-12 11:08:48
    微信小游戏教程(三) 新手教程开发环境 Egret

    开发环境

    下面是我的工具截图,大家一定要下载好对应的版本呀!

    Eg’ret Launcher版本正确!

    这里写图片描述

    引擎版本正确!
    这里写图片描述

    微信开发者工具安装好了!
    这里写图片描述


    1、使用Egret Wing创建自己的项目。

    这里写图片描述

    2、把刚才项目变成微信小游戏的项目

    在Egret Launcher中,项目转换到微信小游戏。

    这里写图片描述
    这里写图片描述

    3、运行你的微信小游戏

    介绍两种运行小游戏的方式:

    • 第一种:直接在当前项目目录中 执行 egret run --target wxgame 命令,引擎将自动使用微信开发者工具打开当前项目。
      这里写图片描述
      这里写图片描述

    • 第二种:打开微信开发者工具,使用微信扫码登录进入:

    这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述

    本人觉得 还是第一种方法简单,egret中集成了直接运行的指令。我们就直接用就可以!

    展开全文
  • 自从4月中旬期间,网络上传言个人小游戏也需要版号,心凉了一大截,然后5月的时候果然又收到微信的通知,要求填写游戏内容介绍进行申核,看下图:下面是要填写的具体内容:每项内容...
  • 作者 | 凌华彬、王哲 ...今天就由我和王哲从技术角度给大家科普一下微信小游戏的开发知识,这一系列文章源自我们 Cocos Creator 引擎团队和微信团队合作过程的总结,目前,Cocos Creator v1.8 编...
  • cocos creator开发微信小游戏(五)贪吃蛇大作战

    千次阅读 热门讨论 2020-06-18 09:59:56
    贪吃蛇小游戏:贪吃蛇试玩(首次加载比较慢),类似贪吃蛇大作战的小游戏。当玩家的蛇头碰到另一条蛇蛇身时死亡,游戏结束。 小游戏cocos creator场景图 小游戏的cocos creator节点结构如下图,Canvas上面的节点是...
  • CocosCreator如何制作微信小游戏

    万次阅读 2018-01-29 18:05:13
    CocosCreator在1.8版本开始,就支持一键发布微信小程序,下面是详细的发布步骤: 1、在微信公众平台下载微信开发者工具;  地址:https://mp.weixin.qq.com/debug/wxagame/dev/devtools/download.html?t=2018115,...
  • 微信小游戏开发入门(一)-基础知识

    万次阅读 2018-01-17 08:26:29
    微信小游戏是在微信小程序的基础上添加了游戏库 API。小游戏只能运行在小程序环境中,所以小游戏既不是原生游戏,也不完全等同于 HTML5 游戏。但实际上小游戏面向的就是 HTML5 游戏开发者,为了能够让 HTML5 游戏低...
  • Unity如何开发微信小游戏

    千次阅读 2019-08-01 20:12:41
    微信小游戏现在非常的火,很多开发Unity的同学, 都想自己开发微信小游戏,无奈tiny还不成熟,导致很多同学有自己创业做微信小游戏的想法,但是由于技术,却放弃了这样的机会,今天我给大家讲述unity同学如何转型做...
  • 微信小程序、微信小游戏作品汇总合集,各种好玩的小程序小程序:微信小程序:易阅小程序作品展示微信小程序:幸福磁县小程序作品展示微信小程序:小说精品榜小程序作品展示微信小程序:武汉智慧交警小程序作品展示...
  • 麒麟子公司最近有一款斗地主上微信小游戏,另外还做了两款休闲类小游戏。 当我们觉得差不多大功告成的时候,有用户反馈说,背景音乐突然就没了。要返回大厅再进游戏场景才有。 我当时第一反应就是,正在播放的音乐...
  • 微信小程序和微信小游戏的区别

    万次阅读 2018-12-20 16:46:08
    本人小程序(小游戏)开发新手,看了几天文档,才大概搞明白微信小程序和微信小游戏的区别。 首先大家口中所说的“小程序”这个概念有两个意思:  一种是“小程序平台下的全部类型的项目”,这样的话,就是不区分...
  • h5游戏间接转换为微信小游戏

    千次阅读 2018-08-03 16:27:27
    h5小游戏不能直接转换为微信小游戏,但是,已有h5小游戏是可以间接转换为微信小游戏的。 首先,Egret、Cocos、Laya 为了适配小游戏或多或少都修改了一些底层的业务逻辑,所以需要 HTML5 游戏先升级到对应引擎的最新...
  • 微信小游戏申请注册流程+开发微信小游戏类目需要具备条件 在这里先讲一下,小程序和小游戏前面的注册流程都是一样的,在注册完毕登录小程序后台后选择类目时需要注意一下,我下面讲解的是已经通过认证的服务号进行...
  • 白鹭引擎正式支持微信小游戏开发

    千次阅读 2019-07-05 10:10:42
    在微信发布新版本后,白鹭引擎立即添加了对于微信小游戏开发的支持,开发者只需要使用白鹭引擎的最新版本,通过使用白鹭引擎完整工具流,就可以快速创建、开发与发布微信小游戏,而无需过多的关注底层技术细节。...
  • 微信小游戏开发上传流程

    千次阅读 2019-04-17 22:29:30
    微信小游戏开发上传流程 今年因为比赛的原因初步接触了一下微信小游戏的开发。在这里做一些流程整理。 1.立项 对于立项,原因可能会有很多。比如客户或者市场的需求,新技术的出现(参照微信小游戏刚刚出现的时候)...
1 2 3 4 5 ... 20
收藏数 58,524
精华内容 23,409
关键字:

微信小游戏