- 博客(32)
- 资源 (34)
- 收藏
- 关注
原创 chromium base 源码 cmake编译
chromium 源码用的GN 构建,并且非常复杂,很多时候想用他的base 库,但是因为牵扯复杂,并且编译困难,所以弄了个cmake 构建版本。
2024-07-05 22:21:24 287
原创 whatsapp 语音通话接入
适用有自己whatsapp 协议,可以使用协议登录账号语音通话涉及到很多方面,打洞协商,编解码,加解密等等,所以很多协议并没有实现真正的语音通话,最多是发个xmpp协议,响铃,然后挂断。接下来如何接入 语音通话服务由于涉及到麦克风采集,扬声器播放,以及语音编解码,有一定的难度,所以高度封装了jni接口。使用起来极其简单和服务器建议websocket 连接websocket 服务器可以提供加解密 语音数据的功能,所以当麦克风回调数据的时候需要通过websocket 发给服务器,服务器会加密,然后再发回
2024-04-28 20:22:55 1054
原创 whatsapp 语音通话 音频编码(五)
客户端通过websocket连接到服务器,客户端发起语音通话请求,并且完成必要的协商之后,就可以直接将语音数据发送给服务器,服务器接收到对方的语音数据之后也会通过websocket将语音数据转发给客户端XMPP 在发起语音通话请求的时候,需要带上一个秘钥,这个秘钥长32字节,通过特殊算法生成。这个算法需要三个参数:发起XMPP 语音请求发起语音请求。这个请求需要通过xmpp 通道发送出去,发出去之后,WA服务器会回一个ack包,这个ack包需要通过websocket发给中转服务器处理ac
2024-04-16 22:12:47 1149
原创 whatsapp 语音通话 音频编码(四)
SRTP(Secure Real-time Transport Protocol)是一种用于保护实时通信数据的网络协议。它主要用于音频和视频通信,以确保数据的机密性和完整性。SRTP是在RTP(Real-time Transport Protocol)的基础上开发的,RTP是一种用于实时传输媒体数据的协议,但不提供安全性保障。SRTP的出现填补了这一缺陷,使得媒体通信可以在不担心数据泄露或篡改的情况下进行。SRTP使用了一系列密码学技术来实现数据的保护。
2024-04-07 16:20:34 809
原创 whatsapp 语音通话 音频编码(三)
通过RTP 将语音数据发给对方之前需要将语音数据进行编码,whatsapp 采用opus编码。Opus编码是由silk编码和celt编码合并在一起,silk编码是由skype公司开源的一种语音编码,特别适合人声,适合于Voip语音通信。celt和mp3,aac类似,适合于传输音乐。在发起语音通话的XMPP协商中,会有明确的opus编码标识。
2024-04-06 21:05:35 415
原创 whatsapp 语音通话基本实现(二)
客户端通过websocket连接到服务器,客户端发起语音通话请求,并且完成必要的协商之后,就可以直接将语音数据发送给服务器,服务器接收到对方的语音数据之后也会通过websocket将语音数据转发给客户端。
2024-04-05 00:11:05 559
原创 whatsapp 语音通话基本流程(一)
经过了一整年的开发测试,终于将whatsapp 语音通话完成,期间主要参考webrtc的源码来实现.下面简要说一下大致的步骤。
2024-03-26 22:45:45 660
原创 饥荒Mod 开发(二五):常用组件 总结
在前面的文章介绍了很多和饥荒相关的知识点,做了很多有趣的东西,接下来简单做个总结,总结一下组件的用法。
2023-12-27 22:00:46 2123 1
原创 饥荒Mod 开发(二四):制作一把万能工具
饥荒中的每种工具都有独特的功能,比如 斧头用来砍树, 铲子用来 挖东西,鹤嘴锄用来挖矿, 锤子可以敲碎东西,所以我们随身备着4种工具,不仅需要多占用背包还要时不时的切换,那怎么制作一把万能的工具,可以用来砍树,打怪,挖矿,敲东西等。
2023-12-26 21:03:07 1606
原创 饥荒Mod 开发(二二):显示物品信息
在modmain.lua 文件中添加下面代码用来拦截 widgets/hoverer 创建,然后重写 SetString 方法end--鼠标悬浮在物品上显示信息-- 获取鼠标下的世界实体-- 如果存在目标实体-- 如果目标实体有预制体-- 在字符串后添加预制体的代码str = str .. "\n代码: " .. target.prefabend-- 如果目标实体有可旅行组件-- 在字符串后添加可旅行组件的名称end-- 如果目标实体有生命组件-- 在字符串后添加生物的血量。
2023-12-24 23:05:33 1618
原创 饥荒Mod 开发(二一):超大便携背包,超大物品栏,永久保鲜
游戏中的物品栏容量实在太小了,虽然可以放在箱子里面但是真的很不方便,外出一趟不容易看到东西都不能捡。实在是虐心。游戏中的食物还有变质机制,时间长了就不能吃了,玩这个游戏心里压力真是太大了。下面介绍制作一个超级大背包,并且背包中的物品不会变质,基本上可以随心所欲的放食物进去。
2023-12-23 13:31:24 3401
原创 饥荒Mod 开发(二十):显示打怪伤害值
当我们和怪物战斗的时候,无论是被攻击还是攻击怪物都不会有伤害显示,画面感太差了,这次我们给打怪增加点乐趣,可以看到掉血。
2023-12-22 18:35:45 1404
原创 饥荒Mod 开发(十九):显示简易血量
饥荒这个游戏还真是特别,真的是要什么没什么,啥都没有,全靠开发者制作Mod,就连一个怪物的血条都没有,打个怪,打个boss 啥都都不知道还剩多少血,真是极度消耗耐性。这次介绍个简单的方法显示生物血量值,无论是怪物,还是兔子,小鸟等,只要有生命值的都可以显示。
2023-12-21 12:14:04 2287
原创 饥荒Mod 开发(十八):Mod 添加配置选项
我们可能需要给Mod 增加一些配置,比如是否开启全图,是否禁用自动保存等等,代码中就可以根据这些配置来做不同的逻辑。
2023-12-20 21:53:51 655 1
原创 饥荒Mod 开发(十七):手动保存和加载,无限重生
饥荒游戏会自动保存,本来是一个好的机制,但是当角色死亡的时候存档会被删除,又要从头开始,有可能一不小心玩了很久的档就直接给整没了,又或者是打怪没爆好东西, 需要SL 大法。打怪之前手动保存一下,如果没有 掉落 有用的物品可以手动加载,一直到掉落有用的物品的时候。
2023-12-19 22:09:43 1941 1
原创 饥荒Mod 开发(十六):五格装备栏
饥荒中的装备栏只有3个实在太少了,手,头,身体。身体上装备的物品会有冲突,很多不能一起装备,比如 衣服,项链,背包等。而这三种物品又有自己不同的功能,所以急需扩展饥荒的装备栏,让游戏更丰富。下图是饥荒目前的装备栏。修改之后的效果图。
2023-12-18 22:17:57 2627 1
原创 饥荒Mod 开发(十五):小地图显示物品
饥荒中按下Tab键可以显示地图,刚开始进入游戏的时候地图是未探索状态,所以我们并不知道地图上面的物品分布情况。并且地图上只会显示很少一部分的物品,比如树枝,草,浆果这些会显示,但是牛,胡萝卜,蜘蛛等等都是不会显示的。
2023-12-17 16:55:21 1373 1
原创 饥荒Mod 开发(十四):制作屏幕弹窗
在上一个文章里面制作了一个传送选择页面,是一个全屏的窗口,那饥荒中如何制作一个全屏的窗口,下面介绍一下如何从零开始制作一个全屏窗口。
2023-12-16 13:30:29 922 1
原创 饥荒Mod 开发(十三):木牌传送 无限传送
传送功能只能发生在木牌上,所以我们需要给“木牌”增加一个组件,让鼠标悬浮在木牌上的时候显示一个自定义的提示“传送”。在 scripts/components 目录下新建 travelable.lua-- 定义 Travelable 类-- 初始化实例-- 设置名称self.name = "木牌"end)-- 定义收集场景动作的方法-- 如果是右键操作,则添加 TRAVEL 动作endend-- 定义保存状态的方法-- 创建一个表来存储数据-- 保存名称-- 返回保存的数据end。
2023-12-15 21:39:57 5928
原创 饥荒Mod 开发(十二):一键制作
饥荒中可以使用工作台制作物品,对于较复杂的物品我们可能需要制作多次。比如制作木牌,我们需要2个步骤木头–》木板–》 木牌。虽然我们有很多木头,但是也只能先一步一步制作木板,才能制作木牌,从下面的图可以看出虽然我们有很多的木头,想要制作一个木牌,不能一步到位,得先制作木板。比如制作 木甲,我们需要木头和绳子, 而绳子又需要干草制作。所以我们需要先制作2个绳子,然后才能制作木甲,这样真的太繁琐了。而且饥荒的制作台想要找个东西还真的很难。
2023-12-14 21:12:23 1661 1
原创 饥荒Mod 开发(十一):修改物品堆叠
饥荒中物品栏有限,要拾取的物品有很多,经常装不下要忍痛丢掉各种东西,即使可以将物品放在仓库但是使用不方便,所以可以将物品的堆叠个数设置大一些,这样 一种物品无论多少只需要占用一个格式,节省空间。
2023-12-13 12:45:24 1394 1
原创 饥荒Mod 开发(九):物品栏排列
在这个脚本中定义一个Arrange函数,并将这个函数返回,我们简单的按照数量从大到小排序-- 定义一个Arrange函数,用于整理物品-- 创建一个空的items表-- 获取当前玩家-- 调用CollectItems函数,将玩家的物品收集到items表中-- 创建一个空的itemsArray表,用于存放items的值-- 遍历items表,将每个值插入到itemsArray中end-- 对itemsArray进行排序-- 如果两个物品的数量相同,则按照物品的prefab属性进行字母排序。
2023-12-08 19:24:45 915
原创 饥荒Mod 开发(七):调试技巧
开发Mod 过程中,能遇到各种各样的问题,有时候游戏会弹出错误提示把游戏搞崩溃,有些时候游戏根本没法启动也不报错误就卡着不动。有时候功能各种异常等。所以需要一些调试排错的经验。在开发Mod 过程中总结了一些排查错误的经验。
2023-12-07 22:40:21 1573 1
原创 饥荒Mod 开发(八):游戏所有食材和食物
饥荒中内置了很多烹饪的食物,每种食物都可以由不同的食材烹饪出来,今天介绍如何将内置的食物打印出来。
2023-12-07 14:40:24 2489 1
原创 饥荒Mod 开发(六):基础知识总结
在前五篇文章大致介绍了一个Mod 的结构,一些基础概念已经如何创建一个简单的物品。之前并没有说到太多的细节,主要是一开始就说细节的话太枯燥了,没有成就感,先按照文章做出一个物品来,也会很有成就感,那这里就针对之前的代码做一些细节的说明。
2023-12-06 00:15:40 2475 1
原创 饥荒Mod 开发(五):制作一个烹饪锅食物
饥荒中有很多的食材,比如最常见的树枝, 浆果,鸟蛋,怪物肉,青蛙等等, 这些食材可以直接使用, 也可以使用这些食材制作各种各样的食物。制作食物我们需要使用烹饪锅,烹饪锅需要二本科技才能解锁。那我们如何制作一个自己的食物呢?我们需要两个步骤,先制作一个食物, 然后注册向食谱注册一个配方就可以。这一节会说明如何制作一个角色可以吃的食物,并且恢复一定量的生命,饥饿以及精神。上一篇讲了如何制作一个宠物吃的食物。
2023-12-02 17:59:04 2051 1
原创 饥荒Mod 开发(四):制作一个物品
先举个简单的例子,比如一辆汽车会有很多部件, 每个部件有特定的功能。方向盘, 轮胎,刹车,玻璃等。我们可以把这些独立功能的部件看成是组件,当我们需要做一个汽车的时候,我们需要把这些部件组装起来。在饥荒中做一个物品也是差不多的道理, 饥荒给我们提供了很多的组件,我们把这些组件组合起来应用到一个物品上,那这个物品就有了相应的功能。再比如饥荒中的 “猪人”, 他会说话,是因为有一个 (talker)组件。会移动是因为有一个(locomotor)组件。
2023-12-01 23:46:09 3269
原创 饥荒Mod 开发(三):资源工具使用
饥荒Mod 开发最常用的资源有两个,一个是动画,一个贴图。这两种资源可以使用上面的工具自动完成,打包完了之后,工具会自动将动画拷贝到对应的目录下。如果是要制作动画需要先试用 工具包中 Spriter 制作,然后用工具一键打包。下图是工具包的目录结构工具包中打包另外两个工具,一个是 Spriter,制作动画专用。一个是Textool 1.4.1,反解纹理工具。
2023-11-25 23:56:49 2966
原创 饥荒Mod 开发(二):Mod目录结构
饥荒中的每个Mod 都有一些固定的目录结构,各个目录的放着不同类型的文件。动画,图片,源代码等。我们最好是遵守Mod 开发中的各个目录结构,我用的是WeGame 安装的饥荒游戏,Mod 目录如下,这个目录下保存所有订阅的Mod。
2023-11-24 20:22:20 2173 3
原创 饥荒Mod 开发(一):为什么要开发Mod
玩饥荒游戏,无论新手老手都会用上一些Mod, Mod 能给玩家带来什么?为什么我们需要Mod的帮助? 如何开发一个Mod
2023-11-20 22:48:19 1060 2
APK AndroidManifest.xml 解密工具
2015-06-01
漠漠助手 同时支持Android 和苹果手机的助手
2014-03-03
封装的ADBLib 直接和ADB 服务进程通信
2013-08-29
vs2008 编译adb 支持4.2 android 系统(增加push 命令的进度)
2013-07-18
vs2008 编译支持android 4.2 系统 adb程序
2013-07-12
支持 android 4.2 的adb
2013-07-11
ADB 命令测试工具
2013-06-28
可以获取已安装应用各种信息的adb
2013-05-13
Android 手机截图, 集成到adb 里面
2013-04-12
android 手机助手(智能识别,智能驱动安装)
2013-03-17
Android 手机自动识别
2013-03-17
VS2008 编译 android 4.0 adb
2013-02-19
android adb 源码修改之后编译的exe
2012-12-18
android 手机自动识别 能识别95% 以上android 手机
2011-07-16
osm 文件查看和导出工具
2009-10-29
饥荒Mod 开发(二四):制作一把万能工具 源码
2023-12-26
饥荒Mod 开发(二三):显示物品栏详细信息 源码
2023-12-25
饥荒Mod 开发(二一):超大便携背包,超大物品栏,永久保鲜 源码
2023-12-23
饥荒Mod 开发(二十):显示打怪伤害值 源码
2023-12-21
饥荒Mod 开发(十九):显示简易血量 源码
2023-12-20
饥荒Mod 开发(十六):五格装备栏
2023-12-18
饥荒Mod 开发(十五):小地图显示物品
2023-12-17
饥荒Mod 开发(十三):木牌传送 源码
2023-12-15
饥荒Mod 开发(十二):一键制作 源码
2023-12-14
饥荒Mod 开发(十):制作一把AOE武器 源码
2023-12-13
微信聊天记录保存,可视化年报
2023-12-09
饥荒开发第9篇 物品栏排列源码
2023-12-08
lua 代码语法检查工具
2023-12-06
饥荒自动打包工具,一键打包命令行工具
2023-11-25
Sqlite 数据库删除恢复
2015-10-14
ios应用ipa图片解密
2015-05-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人