<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[kinghzking的专栏]]></title><description><![CDATA[居然还有描述，你们说我写点啥呢？？？]]></description><link>https://blog.youkuaiyun.com/kinghzking</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kinghzking]]></copyright><item><title><![CDATA[【MCP】ida-pro-mcp 入门实战：安装、启动并用 MCP Inspector 调通四层连通]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/164304936</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/164304936</guid><author>kinghzking</author><pubDate>Wed, 02 Sep 2026 22:23:36 +0800</pubDate><description><![CDATA[关于ida-pro-mcp的安装验证、环境要求、安装步骤、常见问题等。确保包含关键信息：四层连通标准，环境要求，安装路径，IDA GUI插件推荐与否，排错提示等。 字数限制严格。开始构思中文摘要。 可能的结构：先点明成功标准，然后提及环境基线，再简略说明两种安装路线，最后强调验证方式。 控制字数。]]></description><category></category></item><item><title><![CDATA[【MCP】MCP Inspector 入门实战：把你的第一个 MCP Server 调通]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/164304154</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/164304154</guid><author>kinghzking</author><pubDate>Wed, 02 Sep 2026 21:27:37 +0800</pubDate><description><![CDATA[MCP Inspector调试MCP Server。
MCP Inspector是MCP的接口调试器，用于验证工具是否正确暴露；支持stdio/HTTP，提供了Web/CLI/TUI模式；通过示例展示调试Python server，如add/greet；可以排查工具列表为空等问题。]]></description><category></category></item><item><title><![CDATA[Windows 进程创建审计（事件 ID 4688）：技术解析与实战]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/163834059</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/163834059</guid><author>kinghzking</author><pubDate>Mon, 17 Aug 2026 23:04:18 +0800</pubDate><description><![CDATA[本文详细介绍了Windows系统中实时查看进程与历史审计进程创建的两种方法。实时查看可通过任务管理器、资源监视器或命令行工具（如Get-Process）实现，而历史审计需提前开启"审核进程创建"策略（Event ID 4688）。文章重点解析了4688日志的关键字段（如镜像路径、父进程关系、完整性级别等），并提供了安全研判Checklist，帮助区分正常进程与可疑行为。最后强调审计日志不具备追溯性，必须提前配置，并对不确定来源的进程建议结合数字签名和信誉检查验证。]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】蓝图角色实践与UI事件驱动]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162761952</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162761952</guid><author>kinghzking</author><pubDate>Sat, 11 Jul 2026 09:00:00 +0800</pubDate><description><![CDATA[本文分析了ActionRPG项目中的关键架构设计： C++与蓝图分工明确：C++负责核心逻辑计算，蓝图处理表现效果。通过BlueprintCallable和BlueprintImplementableEvent建立清晰边界。 蓝图角色实现了攻击输入处理、武器切换等游戏逻辑，与C++层的能力系统通过槽位机制解耦。 UI采用事件驱动设计，通过委托机制实现精准刷新，避免每帧轮询。 蓝图函数库作为跨模块桥梁，提供了通用工具方法，特别是将GAS功能开放给非Ability场景使用。 这种架构体现了数据与表现分离、事件驱]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】GAS整合：物品授予能力与增量同步]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162761781</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162761781</guid><author>kinghzking</author><pubDate>Fri, 10 Jul 2026 14:01:45 +0800</pubDate><description><![CDATA[本文剖析了《ActionRPG》中基于装备授予游戏能力的实现机制。核心在于通过武器槽位与游戏能力系统（GAS）的动态联动：装备武器时授予能力（GiveAbility），攻击时激活能力（TryActivateAbility）。系统通过三张表（背包数据、运行时状态、默认配置）和委托链驱动，采用增量同步策略：先构建期望能力列表，再通过比较SourceObject差异移除冗余能力，最后授予新增能力。这种设计实现了装备与能力的动态绑定，确保能力切换的高效与准确。（149字）]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】GAS进阶：目标选择与AbilityTask]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162761806</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162761806</guid><author>kinghzking</author><pubDate>Fri, 10 Jul 2026 14:01:20 +0800</pubDate><description><![CDATA[本文摘要探讨了《ActionRPG》中技能目标选择与命中结算的实现机制。通过策略模式URPGTargetType解决目标选择问题，提供UseOwner（自我目标）和UseEventData（从事件数据取目标）两种策略，支持灵活扩展。命中时机由动画驱动的AnimNotifyState触发碰撞检测，并通过GameplayEvent传递命中数据。最后，自定义RPGAbilityTask_PlayMontageAndWaitForEvent整合动画播放与事件监听，实现动画帧精确的异步技能结算。该设计通过解耦目标策略]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】GAS基础：能力与效果容器]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162673059</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162673059</guid><author>kinghzking</author><pubDate>Tue, 07 Jul 2026 20:29:58 +0800</pubDate><description><![CDATA[GAS效果传递机制解析：EffectContainerMap与运行时处理 摘要： 本文剖析了GameplayAbilitySystem(GAS)中效果传递的核心机制，重点解读了ActionRPG项目中EffectContainerMap的实现原理。该系统通过分离效果配置与运行时执行，实现了攻击动作到目标效果的高效流转。关键设计包括： 静态-动态分离：使用FRPGGameplayEffectContainer存储蓝图配置（目标类型+效果类），运行时转换为FRPGGameplayEffectContainerS]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】伤害管线：从捕获到扣血]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162673024</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162673024</guid><author>kinghzking</author><pubDate>Tue, 07 Jul 2026 20:28:27 +0800</pubDate><description><![CDATA[本文详细解析了ActionRPG项目中伤害计算链路的运作机制，重点剖析了从GameplayEffect执行到最终血量扣除的完整流程。系统采用六层架构设计： 能力激活层（GA_Melee_Base蓝图）发起攻击 GameplayEffect应用层通过URPGDamageExecution执行计算 伤害公式计算层实现属性捕获和伤害运算（攻击力/防御力动态比值计算） 属性后处理层（PostGameplayEffectExecute）处理Damage到Health的转换 逻辑中间层（HandleDamage）组装事]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】属性系统：AttributeSet 精读]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162192310</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162192310</guid><author>kinghzking</author><pubDate>Mon, 22 Jun 2026 10:29:10 +0800</pubDate><description><![CDATA[本文深入解析了 GAS 中的 AttributeSet 系统，以 ActionRPG 的 URPGAttributeSet 为例。属性集作为集中管理角色数值的容器，通过 FGameplayAttributeData 类型区分基础值（BaseValue）和当前值（CurrentValue），前者存储永久性改变，后者叠加临时修饰效果。文章详解了属性声明规范、ATTRIBUTE_ACCESSORS 宏的代码生成机制，以及最大生命值变化时的等比缩放逻辑，同时区分了属性定义与伤害处理的边界，为后续理解伤害管线奠定基础]]></description><category></category></item><item><title><![CDATA[【VS】VS 2022 内置终端默认 x86 环境导致 CMake x64 项目构建失败的排查与修复]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162191030</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162191030</guid><author>kinghzking</author><pubDate>Mon, 22 Jun 2026 10:02:44 +0800</pubDate><description><![CDATA[摘要：在使用Visual Studio 2022内置终端编译CMake+vcpkg项目时，出现大量链接错误（LNK2001和LNK4272），原因是终端默认以x86架构初始化，导致链接器错误使用x86库文件。根本问题是VS 2022内置终端的Developer PowerShell默认配置为x86架构，且vcvarsall.bat检测到已有环境后拒绝重新初始化。解决方案包括：1）修改VS终端默认架构为x64（推荐）；2）从外部启动构建环境；3）在构建脚本中手动覆盖x64路径。第一种方案通过修改VS配置可一劳]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】角色基类与武器系统]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162108015</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162108015</guid><author>kinghzking</author><pubDate>Sat, 20 Jun 2026 12:00:00 +0800</pubDate><description><![CDATA[本文介绍了ARPG角色基类ARPGCharacterBase的核心架构与生命周期管理。作为游戏枢纽，它整合了GAS能力系统、背包系统和武器系统： 角色定位：继承ACharacter并实现两个关键接口（能力系统接口和阵营接口），作为背包与GAS的交汇点。 核心组件： 构造函数创建ASC（能力组件）和属性集 通过友元关系实现属性到蓝图的回调链 管理装备槽位与能力的映射关系 生命周期： PossessedBy初始化背包接口和GAS系统 UnPossessed负责清理委托绑定 采用守卫标志控制能力初始化流程 设计特]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】存档系统03：版本兼容与GVAS解析]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162107838</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162107838</guid><author>kinghzking</author><pubDate>Sat, 20 Jun 2026 09:00:00 +0800</pubDate><description><![CDATA[本文介绍了游戏存档系统中的版本兼容性和存档文件查看方法。在版本兼容方面，通过枚举值LatestVersion = VersionPlusOne - 1自动维护最新版本号，并在Serialize方法中实现"读时升级"策略，确保旧存档在新版本中仍可读取。对于存档文件查看，.sav文件采用标准的GVAS格式，可通过游戏内控制台命令DumpSaveGame或十六进制工具查看其内容。GVAS文件包含元数据和属性数据，头部信息记录了引擎版本等关键信息，确保跨版本兼容性。]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】存档系统02：异步写盘与读档链路]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162107392</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162107392</guid><author>kinghzking</author><pubDate>Fri, 19 Jun 2026 12:00:00 +0800</pubDate><description><![CDATA[摘要 本文分析了游戏存档系统的异步读写机制。写盘采用异步操作避免主线程卡顿，通过bSavingEnabled、bCurrentlySaving和bPendingSaveRequested三态状态机实现"节流"，确保连续修改背包时最多只触发2次磁盘写入。读档过程将存档数据转换为运行时数据，包括清空缓存、预建空槽、货号转指针等步骤，并通过事件机制处理存档重载。文章还解答了异步写盘的必要性、状态机工作原理以及读档时空槽处理等关键问题。]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】背包系统01：数据结构与增删]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162107491</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162107491</guid><author>kinghzking</author><pubDate>Fri, 19 Jun 2026 09:00:00 +0800</pubDate><description><![CDATA[本文解析了UE4 ActionRPG项目中背包系统的核心设计，主要围绕两个关键数据结构展开：InventoryData记录物品数量与等级，SlottedItems管理装备槽位。背包数据挂在PlayerController而非Character上，确保角色死亡/重生时物品不丢失。重点分析了AddInventoryItem的实现逻辑，包括物品堆叠更新、事件广播等细节，并解答了为何采用双Map结构——通过分离"拥有"与"装备"状态，使查询和一致性维护更清晰。全文以150字浓缩了背包系统的架构思路与关键实现。]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】背包系统02：委托广播与接口解耦]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162107410</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162107410</guid><author>kinghzking</author><pubDate>Thu, 18 Jun 2026 20:15:47 +0800</pubDate><description><![CDATA[本文拆解了《背包系统》中的通知机制，主要围绕三个核心问题： 双委托设计：每个背包事件都声明了Dynamic（蓝图可绑）和Native（C++专用）两套委托，前者通过反射支持UI响应，后者保证核心系统优先处理。 广播顺序：通知时严格遵循"Native→Dynamic→BlueprintImplementableEvent"的顺序，确保C++逻辑（如角色技能更新）先于UI刷新执行，避免中间状态。 接口隔离：IRPGInventoryInterface通过U类+I类分离，并禁用蓝图实现，强制要求角色必须通过C++]]></description><category></category></item><item><title><![CDATA[【UE源码精读-ActionRPG】存档系统01：运行时态与存档态]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162107374</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162107374</guid><author>kinghzking</author><pubDate>Thu, 18 Jun 2026 20:08:12 +0800</pubDate><description><![CDATA[文章摘要 本文探讨了游戏存档系统的核心机制，重点分析了运行时数据与存档数据的形态差异及转换方式。关键点包括： 数据形态差异： 运行时使用对象指针(URPGItem*)标识物品 存档使用稳定字符串标识(FPrimaryAssetId)替代指针 相同数据结构(TMap)在不同形态下保持"骨架"一致 存档原理： 存档本质是"指针↔货号"的双向转换 通过URPGSaveGame类存储可序列化数据 采用全量覆盖而非增量更新确保数据一致性 数据流向： PlayerController(运行时数据)→GameInstan]]></description><category></category></item><item><title><![CDATA[【UE基础】四-03-实战篇-加类型与验证接口]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162046066</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162046066</guid><author>kinghzking</author><pubDate>Wed, 17 Jun 2026 11:45:00 +0800</pubDate><description><![CDATA[本文是UE4物品系统实战指南，通过两个动手练习深入理解Asset Manager机制： 添加新物品类型（护甲Armor） 需同步修改三处：创建C++子类RPGArmorItem、在AssetManager添加类型常量、配置DefaultGame.ini扫描路径 验证"三处缺一不可"：故意遗漏配置会导致资产无法被扫描加载 在编辑器中创建数据资产，观察ItemType自动锁定为Armor 验证Asset Manager查询接口 使用控制台命令直接测试核心功能： DumpTypeSummary查看类型统计 Dum]]></description><category></category></item><item><title><![CDATA[【UE基础】四-02-源码篇-从启动到加载]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162046032</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162046032</guid><author>kinghzking</author><pubDate>Wed, 17 Jun 2026 08:30:00 +0800</pubDate><description><![CDATA[本文通过源码分析详细拆解了虚幻引擎中 UAssetManager 和 UPrimaryDataAsset 的协作机制，核心流程如下： 关键握手点：通过三层 GetPrimaryAssetId() 虚函数重写实现资产标识注册，URPGItem 采用业务类型（如"Potion"）而非类名作为分类依据。 配置映射：通过 DefaultGame.ini 的 PrimaryAssetTypesToScan 配置资产类型与磁盘路径的映射关系，注意类型名必须与代码严格一致。 两阶段加载： 启动时扫描阶段（阶段A）：仅建立]]></description><category></category></item><item><title><![CDATA[【UE基础】四-01-理解篇-AssetManager与数据资产]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162043107</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162043107</guid><author>kinghzking</author><pubDate>Tue, 16 Jun 2026 19:01:17 +0800</pubDate><description><![CDATA[UE 资产 AssetManager 入门]]></description><category></category></item><item><title><![CDATA[【UE基础】03.蓝图与编辑器工作流]]></title><link>https://blog.youkuaiyun.com/kinghzking/article/details/162043069</link><guid>https://blog.youkuaiyun.com/kinghzking/article/details/162043069</guid><author>kinghzking</author><pubDate>Tue, 16 Jun 2026 18:57:48 +0800</pubDate><description><![CDATA[接上后会自动把 float 转成 string）。像这样： 第五步，运行验证。 点蓝图编辑器左上角的 Compile 按钮（别漏这步），关掉蓝图窗口，在编辑器里点 Play 运行。如果一切正常，游戏启动时你会在左上角看到一个 0~1 之间的数字打印出来，这就是当前血量百分比。 如果没看到，检查这几步： 编译 C++ 时有没有报错？编辑器可能自动弹到了 Output Log 窗口，切回去看。 蓝图里连上 GetHealthPercent 了吗？右键菜单里搜不到的话，大概率是 C++ 编译没成功。 蓝图编译了吗]]></description><category></category></item></channel></rss>