精华内容
下载资源
问答
  • C#游戏辅助制作教程

    2018-05-08 09:45:22
    我们看到了,修改了该地址 血条也变化了 那么 但道理来说我们已经成功了 为什么需要用C#自己在写呢 **注意了:这里的内存地址013B0092 只是一个动态的内存地址,什么意思呢? 黑色的表示 等下次再开游戏或者在其他...
  • C#游戏辅助编程指南

    2014-04-02 19:17:21
    三肿C#实用编程速查宝典 整理目的:为了让更多朋友加入学习C#的行列 整理人:三肿 特别感谢: 史莱姆 ( QQ:54488**** ) Rabbit ( QQ:54487**** ) 度娘 谷哥 声明: 1:本文档内容部分来自互联网,部分...
  • C#游戏辅助helper类[内存多级指针读写 进程操作]
  • C#游戏辅助制作教程-通用修改器源码-抓取内存基址,适合C#初学者,从培养兴趣爱好开始。。
  • 2017年9月7日 有感于自己基础不够扎实,于是打算重新从头再学一次 我现在看到书是《c#入门经典》第7版 转载于:https://www.cnblogs.com/wzw0312/p/7489706.html...

    2017年9月7日

    有感于自己基础不够扎实,于是打算重新从头再学一次

    我现在看到书是《c#入门经典》第7版


     

     

    转载于:https://www.cnblogs.com/wzw0312/p/7489706.html

    展开全文
  • C#游戏辅助helper类[内存多级指针读写 进程操作]C#游戏辅助helper类[内存多级指针读写 进程操作]C#游戏辅助helper类[内存多级指针读写 进程操作]C#游戏辅助helper类[内存多级指针读写 进程操作]
  • c#游戏辅助脚本学习记录(2017年9月3日) 使用思路 用 listbox 控件来显示我的所有任务和我选择的任务。 左边是listBox_已选任务 , 右边是listBox_任务列表 双击添加内容到其他listbox列表(从任务...

    c#游戏辅助脚本学习记录(2017年9月3日)

     


     

    使用思路

    用 listbox 控件来显示我的所有任务和我选择的任务。

    左边是listBox_已选任务 , 右边是 listBox_任务列表


     

    双击添加内容到其他listbox列表(从任务列表→已选任务)

    用到listbox的双击事件,双击事件有2个,DoubleClick  和  MouseDoubleClick

    我暂时也不知道有什么区别,试了一下感觉操作一样,暂时先用DoubleClick  

    private void listBox_任务列表_DoubleClick(object sender, EventArgs e)
    {
        int index = listBox_任务列表.SelectedIndex;
        Console.WriteLine("当前选择的是第 " + index.ToString() + "");
    
        string value;
        value = listBox_任务列表.Items[index].ToString();
        Console.WriteLine("选择的内容是:" + value);
    
        listBox_已选任务.Items.Add(value);
    }

    获取listbox中有多少项

    作用:遍历所有项内容

    int shu;
    shu = listBox_已选任务.Items.Count;
    

    遍历出listbox中所有项的内容

    作用:根据获取到的每一项内容去执行对应的任务,实现任务的自由组合搭配。

    int shu;
    string value;
    shu = listBox_已选任务.Items.Count;
    Console.WriteLine("一共有"+ shu + "个任务");
    for (int i = 0; i < shu; i++)
    {
        value = listBox_已选任务.Items[i].ToString();
        Console.WriteLine(value);
    }

     双击删除任务(2019年4月16日)

    思路:

    1、获取ListBox上被点击选中的项是第几个

    2、根据获取到的项进去删除

    int x = this.已选任务.SelectedIndex;
    Console.WriteLine(x);
    if (x >= 0)
    {
    	this.已选任务.Items.RemoveAt(x);
    }
    

    写法2:

    删除指定文本的内容,例子中是删除主线任务

    缺点:

    当你要删除的文本在列表中含有多个的时候,你想删除最下面的那个,但是事件会把你上面的优先删除

    this.已选任务.Items.Remove("主线任务");
    

      

      

    转载于:https://www.cnblogs.com/wzw0312/p/7470342.html

    展开全文
  • C# 制作游戏外挂教程

    2012-04-26 15:06:03
    C#的外挂制作,使用钩子进行外挂制作。说简单不简单,说难不难。
  • DNFHelper C#DNF辅助源码

    2020-03-11 03:01:28
    DNFHelper ,C#DNF辅助源码,使用VS2017开发,仅供学习开发技术参考,请勿用于非法用途!
  • 这是我在玩游戏时突然心灵发光而写下的 希望大家看看 有利于 游戏爱好者和编程爱好者 里面含有c#、API函数、添加类成员、进程 等等
  • C#网络编程高级篇之网页游戏辅助程序设计》通过编写C#网络编程语言中具有代表性的实例,向读者深入细致地讲解了如何利用C#语言进行网页游戏辅助程序设计。《C#网络编程高级篇之网页游戏辅助程序设计》通过大量的...
  • C#修改游戏内存 内存修改源码 我这里直接使用了GitHub这里的源码修改,然后生成新的dll来调用,我修改后的源码以及Demo在最底下会给出链接。修改的内容主要是添加Helper这个类,以及内部解析cheat engine生成的.CT...

    cheat engine

    下载cheat engine

    进入cheat engine官方网站进行下载。下载完成后安装即可。

    cheat engine汉化

    1. 在官网下载中文简体语言包

    2. 将下载好的语言包解压后放入cheat engine程序languages目录下。在这里插入图片描述

    3. 右键使用文本编辑器打开language.ini文件夹,将最后一行PreferedLanguage=*改成PreferedLanguage=ch_cn,保存后退出。在这里插入图片描述

    cheat engine的使用

    1. 此处强烈推荐程序自带的帮助教学,对这个软件陌生的同学请一定先完成这个。或者请点击此处查看B站上面的教学。在这里插入图片描述

    2. 在游戏中改变其中一项数值使用精确数值扫描可得到该数值的当前地址,当然该地址会随着界面的切换,游戏或电脑的重启会发生改变,所以需要找到此地址的基址。建议使用cheat engine指针扫描功能来寻找。在这里插入图片描述

    3. 指针扫描器选项可选的指针级别不要太大,也不要太小。太小会扫描不出结果,太大的话电脑花费的扫描时间也是太长了。具体数据可以一步一步加大试着来。我这里选择的是8级指针。在这里插入图片描述

    4. 确定后请注意选择扫描结果的保存需要选择英文路径。使用中文路径会找不到结果。扫描出的结果后,请将游戏重开,电脑重启的方式来过滤无效指针或指向错误数据的指针。所以每一次的扫描结果保存非常重要。在这里插入图片描述

    5. 得到一个指针后,如果要改变其他的任务属性,可以像上面那样重复操作,但这样会太慢了点。我们知道一般程序中这样的人物属性都会放在一个结构体或类中,所以我们只需要分析他们的数据结构就好了。找到结构体的方法可以参考上面推荐的B站视频中有。但请注意古剑三中cheat engine的调试器选项请改成使用VEH调试器

    6. 在结构分析中就可以知道其他属性相对于第一个扫描到的指针的相对偏移量在这里插入图片描述

    7. 然后就可以在地址列表中复制粘贴地址,然后粘贴的地址加上相对偏移量即可。在这里插入图片描述

    8. 至此其实就可以直接使用cheat engine来修改游戏数值。如果不需要自己写程序来修改数值的就可以不看以下内容了。

    C#修改游戏内存

    内存修改源码

    我这里直接使用了GitHub这里的源码修改,然后生成新的dll来调用,我修改后的源码以及Demo在最底下会给出链接。修改的内容主要是添加Helper这个类,以及内部解析cheat engine生成的.CT文件,主要功能是可以直接将我们自定义的类读取游戏内存或写入游戏内存。

    使用方法

    1. 需要将cheat engine生成的.CT文件插入自己的C#目录并改成嵌入资源。并注意下要在Resources目录下。在这里插入图片描述
    2. 自定义的对象,其属性需要添加System.ComponentModel.DescriptionAttribute特性。特性中Description的内容要与cheat engine中的描述要一致。
            private uint _ATK = 1;
            /// <summary>
            /// 攻击力
            /// </summary>
            [DisplayName("攻击力")]//用于PropertyGrid控件显示
            [Description("攻击力")]//用于.CT文件解析,必须要有
            public uint ATK
            {
                get => _ATK;
                set
                {
                    if (value <= 0)
                        _ATK = 1;
                    else if (value > 100000)
                        _ATK = 100000;
                    else
                        _ATK = value;
                }        
            }
    
    1. Helper初始化提供了静态方法Helper.Initial(“Gujian3.CT”,“Gujian3.exe”);,两个参数一个是插入的.CT的文件名,一个是程序名。并提供Helper.IsGameOpen()、Helper.OpenProcess(),来判断游戏是否已经打开以及打开处理器。
    2. 内存的读取方法原型为T ReadPropertyFromGame() where T : class, new(),写入的方法原型为void WritePropertyFromGame(T obj) where T : class, new()。可以直接将从游戏内存中读取出自定义对象或将自定义的对象写入内存。使用以Demo中的程序为例:
    RoleProperty = Helper.ReadPropertyFromGame<RoleProperty>();	//读取
    Helper.WritePropertyFromGame(RoleProperty);	//写入
    

    代码链接

    古剑三属性修改的C#项目文件我已经放在码云上。项目文件下lib文件夹的dll就是修改GitHub上源码后生成的dll,所有的功能内存读写,脚本写入也都在那上面。

    展开全文
  • YEET引擎 这是我学习C#的有趣的辅助项目。 由于我已经具有OpenGL的经验,因此我将使用OpenTK和C#构建一个小型游戏引擎。
  • C#修改游戏内存,辅助,外挂源码 XG源码.rar
  • C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏工具(源码)C#写的对对碰游戏...
  • c#写的一个很简单的打字游戏,代码简介 有注释,适合初学者, 使用VS2013开发
  • C#网络编程高级篇之网页游戏辅助程序设计的实例代码
  • C#-DNF辅助源码-简单更新-
  • 电脑控制安卓app 安卓游戏外挂制作 安卓游戏外挂自动练级 自动发送聊天 自动点击输入等操作的基本
  • C#写的【LOL自动挂机刷金币程序】,开放项目完整【源代码】 GitHub开源地址:https://github.com/MoonLord-LM/LolAutoPlay...C#贴吧地址:http://tieba.baidu.com/p/4242836645 ... 无限重开游戏,挂机刷金币,亲测可用。
  • Unity和C#-游戏开发-LOL英雄联盟+源代码工程
  • 我想做游戏辅助-CE-c#

    2015-02-07 11:03:29
    我现在用ce找到了游戏的基址,可以用C#做出来吗。做出就像网上的那些游戏外挂一样的界面, 还有,CE需要驱动吗,没有驱动会怎样
  • C#100个常用的辅助

    热门讨论 2013-04-30 18:58:39
    C#常用的100个辅助类,很实用 很方便,比如:所有的页面跳转方式 Excel导入导出方式, 汉字转拼音等等
  • C#网络编程高级篇之网页游戏辅助程序设计代码包 比较实用的代码集合
  • 本文以DOTA游戏的显血、改键外挂为例,简单地介绍如何使用C#语言制作游戏外挂。一起来看。 AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 网上有很多游戏外挂制作的教程,...
    2011-04-25 14:57 seoxs 博客园  字号: T |  T
    一键收藏,随时查看,分享好友!

    本文以DOTA游戏的显血、改键外挂为例,简单地介绍如何使用C#语言制作游戏外挂。一起来看。

    AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验

    网上有很多游戏外挂制作的教程,大多是讲针对大型网络游戏的,主要包含一些抓包、反汇编、C++的知识综合。事实也如此,常见的外挂都是使用VC++写的,从来没有过C#或者其他.NET语言编写的外挂。

    作为微软.NET技术的忠实粉丝,这难免是一种遗憾。不过不要紧,下面流牛木马就教大家两招,包教包会,免收学费。

    其实作为游戏外挂来说,主要就是三个功能:模拟键盘操作、模拟鼠标操作、修改内存数据。修改内存数据比较难,但模拟鼠标键盘的操作却很简单。很多流行游戏的外挂,都可以只通过模拟鼠标键盘来实现,例如:劲舞团、QQ音速、连连看、各类网页游戏,以及各类大型网游中的自动打怪、自动吃药等等。

    Warcraft Ⅲ,学名魔兽争霸之冰封王座,俗称魔兽,简称war3,在最近六七年风靡全球。最近两年,war3在中国又掀起了玩DOTA的新高潮。

    本文制作DOTA游戏中的显血、改键外挂为例,简单地介绍如何使用C#语言制作游戏外挂。

    最终界面如下:

    本示例包含两个功能:显血;将Q键改为小键盘的7键。玩war3的同学都知道,这两个功能对于war3(尤其是DOTA)相当重要。

    首先简单介绍一下,外挂程序模拟键盘的原理。

    外挂程序与游戏程序是两个不同的进程。外挂程序使用Windows提供的API找到游戏程序的进程,并设置键盘钩子(什么叫做钩子?你不知道,但百度知道。)设置完钩子后,我们再监控游戏进程中用户的按键,并根据用户需求进行处理,完成某些模拟键盘动作。

    了解了这个过程之后,我们就可以开始整理思路了。完成外挂一共需要以下四个步骤:

    一、声明Windows API 中的函数和常量

       
    1. //键盘Hook结构函数  
    2. [StructLayout(LayoutKind.Sequential)]  
    3. public class KeyBoardHookStruct  
    4. {  
    5. public int vkCode;  
    6. public int scanCode;  
    7. public int flags;  
    8. public int time;  
    9. public int dwExtraInfo;  
    10. }  
    11. #region DllImport  
    12. //设置钩子  
    13. [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]  
    14. public static extern int SetWindowsHookEx(int idHook, HookProc lpfn, IntPtr hInstance, int threadId);  
    15. [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]  
    16. //抽掉钩子  
    17. public static extern bool UnhookWindowsHookEx(int idHook);  
    18. [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]  
    19. //调用下一个钩子  
    20. public static extern int CallNextHookEx(int idHook, int nCode, IntPtr wParam, IntPtr lParam);  
    21. //取得模块句柄   
    22. [DllImport("kernel32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]  
    23. private static extern IntPtr GetModuleHandle(string lpModuleName);  
    24. //寻找目标进程窗口 [DllImport("USER32.DLL")]  
    25. public static extern IntPtr FindWindow(string lpClassName,  
    26. string lpWindowName);  
    27. //设置进程窗口到最前 [DllImport("USER32.DLL")]  
    28. public static extern bool SetForegroundWindow(IntPtr hWnd);  
    29. //模拟键盘事件 [DllImport("User32.dll")]  
    30. public static extern void keybd_event(Byte bVk, Byte bScan, Int32 dwFlags, Int32 dwExtraInfo);//释放按键的常量  
    31. private const int KEYEVENTF_KEYUP =2;  

    本例所使用的函数比较少,它们都在系统的USER32.dll里,包括:设置和取消钩子、调用下一个钩子、导入进程、模拟键盘等等。我们依次导入它们。 这些函数的命名规范合理,几乎只根据函数名就能知道其功能。 如果读者对于其中的某些函数不熟悉,请自行搜索MSDN。

    二、使用Windows API设置钩子

    有了以上windows API函数的声明,下一步就是设置钩子了。

    寥寥两行代码,但包含了相当丰富的内容。

       
    1. //委托  
    2. public delegate int HookProc(int nCode, IntPtr wParam, IntPtr lParam); public void Hook_Start()  
    3. {  
    4. // 安装键盘钩子  
    5. if (hHook == 0)  
    6. {  
    7. KeyBoardHookProcedure = new HookProc(KeyBoardHookProc);  
    8. hHook = SetWindowsHookEx(WH_KEYBOARD_LL, KeyBoardHookProcedure, GetModuleHandle(Process.GetCurrentProcess().MainModule.ModuleName), 0);  
    9. }  
    10. }  

    先介绍一下设置钩子的明星函数:SetWindowsHookEx 。它的参数说明如下。

    SetWindowsHookEx(

    idHook: Integer; {钩子类型}

    lpfn: TFNHookProc; {函数指针}

    hmod: HINST; {包含钩子函数的模块(EXE、DLL)句柄; 一般是 HInstance; 如果是当前线程这里可以是 0}

    dwThreadId: DWORD {关联的线程; 可用 GetCurrentThreadId 获取当前线程; 0 表示是系统级钩子}

    ): HHOOK; {返回钩子的句柄; 0 表示失败} 

    请注意lpfn这个参数。上面的解释是“函数指针”。在C#中,是不能直接使用指针的,更不要说函数指针了。我们可以采用C#中的委托(delegate)来实现函数指针的功能。

    于是乎,在上面的代码中,我们定义了一个处理键盘消息函数的委托KeyBoardHookProcedure = new HookPro(KeyBoardHookProc),并将它作为参数传入SetWindowsHookEx 内。KeyBoardHookProc就是被委托的具体函数。

    三、监控用户操作

    设置好钩子后,我们可以在被委托的函数中写入监控用户操作与模拟键盘的代码。

       
    1. public static int KeyBoardHookProc(int nCode, IntPtr wParam, IntPtr lParam)  
    2. {  
    3. //监控用户键盘输入 KeyBoardHookStruct input = (KeyBoardHookStruct)Marshal.PtrToStructure(lParam, typeof(KeyBoardHookStruct));  
    4. //截获Home 键 if (input.vkCode == (int)Keys.Home)  
    5. {  
    6. //此处写入其他操作逻辑 }  
    7. // 继续执行下一个钩子程序  
    8. return CallNextHookEx(hHook, nCode, wParam, lParam);  
    9. }  

    四、根据用户需要模拟键盘操作

    显血功能:玩war3的都知道,war3自带的显血快捷键有3个。Alt键是显示所有单位生命,[ 键显示友方单位生命,] 键显示地方单位生命。外挂需要做的事情仅仅是模拟一直按着某个键不松手而已。由于Alt键与其他很多键构成组合键,故我们不能模拟长按Alt,否则会影响正常游戏。我们的解决方案应该是模拟长按 [ 键和 ] 键。代码如下:

       
    1. //获得魔兽程序的句柄  
    2. IntPtr wcHandle = FindWindow(null"Warcraft III");  
    3. //如果钩子有效  
    4. if (wcHandle != IntPtr.Zero)  
    5. {  
    6. //设置游戏窗口到最前  
    7. SetForegroundWindow(wcHandle); byte VK_NUM1 = 219; //键盘上 [ 键的代码。按[可显示友方单位生命值。  
    8. byte VK_NUM2 = 221; // 键盘上] 键的代码。按]可显示敌方单位生命值。  
    9. keybd_event(VK_NUM1, 0, 0, 0); //长按[  
    10. keybd_event(VK_NUM2, 0, 0, 0); //长按] }  

    改键: 小键盘(Numpad)上的快捷键很不方便按,所以很多玩家喜欢把小键盘上的键改到左边的字母键盘。玩DOTA的同学都知道,没有任何英雄的技能使用"Q”这个快捷键(召唤师有一种球是"Q"(不是技能))。于是我们把小键盘上的7键改到Q上,也不会造成任何冲突。方法也很简单:如果监控到用户按"Q”键,则像游戏进程发送小键盘上的"7"键。代码如下:

       
    1. //如果用户按了Q键  
    2. if (input.vkCode == (int)Keys.Q)  
    3. {  
    4. //获得魔兽程序的句柄  
    5. IntPtr wcHandle = FindWindow(null"Warcraft III");  
    6. //如果钩子有效  
    7. if (wcHandle != IntPtr.Zero)  
    8. {  
    9. //设置游戏窗口到最前  
    10. SetForegroundWindow(wcHandle);  
    11. byte VK_Q = (byte)Keys.NumPad7;  
    12. keybd_event(VK_Q, 0, 0, 0);//按下小键盘7  
    13. keybd_event(VK_Q, 0, KEYEVENTF_KEYUP, 0); //松开小键盘7  
    14. }  
    15. return 1;  

    好了,到这里就把模拟键盘的外挂介绍完了。模拟鼠标与之非常类似,请用户自行揣摩。本文仅做抛砖引玉,欢迎感兴趣的朋友来流牛木马的博客进行讨论。

    附件:外挂成品下载(运行需要.net 2.0以上环境)

    参考文献:《精通.NET互操作》。感谢作者黄际洲、崔晓源的赠书,我终于学以致用了一回~ :)

    原文链接: http://www.elivn.com

    展开全文
  • 后来越来越多的聪明的“程序哥们”弄出了不同方式不同花样的跳一跳助手(外挂?),有用JS实现的、有JAVA实现的、有Python实现的,有直接物理模式的、有机械化的、有量尺子的等等,简直是百花齐放啊…… 赶一下潮流...
  • C# 实现脚本辅助功能

    2017-08-29 15:23:00
    http://blog.csdn.net/w86440044/article/details/42493683 http://blog.csdn.net/wujizhishang/article/details/70146373 http://www.sufeinet.com/thread-6921-1-1.html http://blog.csdn.net/ed...
  • 这本书是关于c#网络编程的,关于c#入门的书有很多,但是关于c#网络编程的并不多,很多教材中虽有涉及网络编程但都是泛泛而谈,很多理论概念掺杂在其中,让人很难理解,而这本不同,含有非常多的例子,从简到深,甚至...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,583
精华内容 3,033
关键字:

c#游戏辅助

c# 订阅