找回密码
 点一下
查看: 1519|回复: 31

[乱弹琴]从某个角度看thewisp1的某个实验

[复制链接]
发表于 2009-10-21 03:52:50 | 显示全部楼层 |阅读模式
帖子是thewisp1的http://bbs.islga.org/read-htm-tid-26500-fpage-0-page-1.html,原意是讨论魔兽的不同步机制,用途是魔兽标准对战的乱入(可能吧),详细的原理基本上说清楚了,而在同步方面没有进一步透露,但是现在我不说这些东西,换一个角度做一些脑力游戏,所以感兴趣的同学一会再去看吧。


说一下预备的工作,一个自定义函数:
[codes=jass]function H2I takes handle h returns integer
    return h
    return 0
endfunction[/codes]
一个触发:
[trigger]未命名触发器 001
    事件
        玩家 - 玩家1(红色) 选择 一个单位
    条件
    动作
        设置 unitA = (触发单位)
        漂浮文字 - 创建漂浮文字:(代码: I2S(H2I(udg_unitA))) 在 unitA 头顶Z轴偏移 0.00 处,字体大小: 10.00 ,颜色值:(100.00%, 100.00%, 100.00%) ,透明度: 0.00%[/trigger]

在地图上摆了一个建筑物,可以生产5种单位,截图如下:
1.JPG

然后步骤是,选择该建筑物,设置集合点,生产单位,修改集合点,再生产另外单位,再修改集合点,最后使得这5个单位一字排开,期间别的什么都不要做,保存游戏。
2.JPG


好了,接下来我们从左到右点这些单位吧,从上面的触发可以知道,当选取单位后,会创建漂浮文字在该单位附近,这些字符串就是单位的handle值。
3.JPG
从图可知,它们的handle值依次为:1048674,1048675,1048676,1048677,1048678

嗯,读档,我们从第三个点起吧,依次点3、4、5、1、2看看。
4.JPG

然后呢,从右往左吧。
5.JPG
 楼主| 发表于 2009-10-21 03:53:02 | 显示全部楼层
这个说明了什么呢?如果把1048674这个handle值看做是一个质子之类的东西,5个单位看做是它可能存在的5种形态,选择单位的触发看做是“观察”,我们点选单位的顺序看做是观察的方法,那么一个现成的解释就是:

1048674对应了所有的5个单位,只有20%是其中一个,当我们“观察”它(其实在魔兽中“观察”的是单位)之后,1048674的形态就固定下来了,它从一个叠加的状态变为其中一个形态,这就是“量子态的塌缩”。同时,我们这种读档的行为就可以理解为,我们回到了一切开始的地方,然后通过不同的方法来到了不同的平行世界,当我们观察完所有的单位后,另外的119个世界也完成了这个步骤,并且得到了不一样的结果。这就是我们通过WE做了一个廉价的试验,至于现实中是不是这个样子,谁知道呢。

修改触发器:
[trigger]
未命名触发器 001
    事件
        玩家 - 玩家1(红色) 按下Esc键
    条件
    动作
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                kaiguan 等于 FALSE
            Then - 动作
                触发器 - 为 未命名触发器 002 <预设> 添加事件: (玩家 - 玩家1(红色) 选择 一个单位)
                设置 kaiguan = TRUE
            Else - 动作


未命名触发器 002
    事件
    条件
    动作
        设置 unitA = (触发单位)
        漂浮文字 - 创建漂浮文字:(代码: I2S(H2I(udg_unitA))) 在 unitA 头顶Z轴偏移 0.00 处,字体大小: 10.00 ,颜色值:(100.00%, 100.00%, 100.00%) ,透明度: 0.00%
        如果所有条件成立则做动作1,否则做动作2
            If - 条件
                所有条件成立
                    条件
                        (unitA 的类型) 等于 剑圣
                        (unitA 是 英雄) 等于 TRUE
                        (本地玩家) 等于 玩家2(蓝色)
            Then - 动作
                漂浮文字 - 创建漂浮文字:这个是真的。 在 unitA 头顶Z轴偏移 100.00 处,字体大小: 10.00 ,颜色值:(100.00%, 100.00%, 100.00%) ,透明度: 0.00%
            Else - 动作
                漂浮文字 - 创建漂浮文字:嗯,这个是假... 在 unitA 头顶Z轴偏移 100.00 处,字体大小: 10.00 ,颜色值:(100.00%, 100.00%, 100.00%) ,透明度: 0.00%


[/trigger]
接下来,我们换个祭坛,用玩家1造一个剑圣出来。分身,分开跑,嗯Esc,然后换玩家2,玩家2可不知道那个是分身呀,我们先只选一个,看看效果。
6.JPG

那么1048677应该有100%的几率是真身了吧,这么两个单位的状态是对立的,一个是假另一个就一定是真了,我们“观察”一个单位后,另外一个的状态瞬间就确立了,无视了两个单位之间的距离,也就是说该信息的传输速度超过了光速,这个东西叫做“量子纠缠”。
但是在我们“观察”另一个单位之前,1048677可是什么都没有,当然,现在只是在说魔兽而已,现在我再造一个剑圣,再分身,分开跑,再换玩家2从新的两个单位选一个吧。
7.JPG


呃,剩下的也选了吧。
8.JPG

好了,如果还像之前想的那样,认为在没有排泄的情况下,handle是升高的,那么反而推理出真身是在幻影之后产生的,这个东西在一定范围内来说呢,已经是打乱了时间的顺序呢。

最后怎么说呢,若是想知道真的答案呢,就得看链接的帖子了,神秘的东西反而可能有简单的答案。不知道有没有同学会认为我们的宇宙就是台计算机呢,谁知道呢。就在这里借这个帖子祝愿M理论可以早点成功吧,物理学家们沉寂了好久啦,他们就像咱们在等SC2一样在等强子对撞机吧,唉,果然跳票是不好的
回复

使用道具 举报

发表于 2009-10-21 04:20:53 | 显示全部楼层
  [s:166]

量子魔兽,很好很强大
回复

使用道具 举报

发表于 2009-10-21 06:58:05 | 显示全部楼层
生物魔兽,很好很强大
回复

使用道具 举报

发表于 2009-10-21 07:12:07 | 显示全部楼层
第一个类似“测不准原理”,也就是测量本身对目标产生了影响。第二个说是量子纠缠不怎么恰当,因为量子纠缠是两个量子的信息在一个变化时,另一个也改变,显然,镜像不会变真,没想到楼主也看理论物理
回复

使用道具 举报

发表于 2009-10-21 07:17:00 | 显示全部楼层
其实只是因为造出来的兵并没有handle而已。

并不是说造出来的兵不占内存,而是没有handle。

handle与单位并没有必然的对应关系,而是游戏开放给jass的用来给对象编号的编码而已,游戏本身不用这个。

所以如果你不通过jass来创造单位,这个单位就不会有handle,

直到它与jass开始出现交互,也就是该单位触发事件或者选取区域内单位的动作等等,这时候才会给它安排一个未使用的handle位。
回复

使用道具 举报

发表于 2009-10-21 07:21:11 | 显示全部楼层
真的看到薛定鄂的猫咪子理论了……
回复

使用道具 举报

发表于 2009-10-21 07:26:00 | 显示全部楼层
handle可来自事件也可来自动作。

其实理解这一点最好的法子还是看下这个函数。

http://bbs.islga.org/read-htm-tid-29583-fpage-0-page-1.html

它就连触发事件都不会令技能产生handle,然而直到你使用获得触发技能的时候才会给它安排handle。
回复

使用道具 举报

发表于 2009-10-21 07:28:49 | 显示全部楼层
按照头目的说法可以很好解释这样的现象了呢。
回复

使用道具 举报

发表于 2009-10-21 07:42:57 | 显示全部楼层
总之不喜欢量子系统
回复

使用道具 举报

发表于 2009-10-21 07:47:31 | 显示全部楼层
具体有哪些事件是可以避开handle的呢。
回复

使用道具 举报

匿名
匿名  发表于 2009-10-21 08:04:24
膜拜~~
回复

使用道具 举报

发表于 2009-10-21 08:22:34 | 显示全部楼层
引用第10楼alexries于2009-10-21 07:47发表的  :
具体有哪些事件是可以避开handle的呢。
大约是不获得handle类变量的对象的某些值的函数吧
比如选择单位时就要读取单位生命魔法什么的
所以会有handle影响。或者直接对handle本身的影响
比如set=这样的,
回复

使用道具 举报

发表于 2009-10-21 08:43:30 | 显示全部楼层
就是如果单位被标记了就会产生handle?
回复

使用道具 举报

发表于 2009-10-21 09:07:15 | 显示全部楼层
需要用到实质数据时
比如单位的生命值
如果把handle当做指针来理解
你要读取指针对应位置的数据
你怎么可能没有指针呢?
回复

使用道具 举报

发表于 2009-10-21 09:12:12 | 显示全部楼层
指针末……我完全不懂编程类
回复

使用道具 举报

发表于 2009-10-21 09:24:09 | 显示全部楼层
指针什么的,最讨厌了………………

还是java好,不需要考虑指针这些东西~~可惜实习用的是C++唉唉……
回复

使用道具 举报

发表于 2009-10-21 09:24:21 | 显示全部楼层
你民已经超越了这个世界的限制。
回复

使用道具 举报

发表于 2009-10-21 09:26:25 | 显示全部楼层
引用第16楼zhuzeitou于2009-10-21 09:24发表的  :
指针什么的,最讨厌了………………

还是java好,不需要考虑指针这些东西~~可惜实习用的是C++唉唉……
我也不懂……
我是学电子的
不是学软件的……
回复

使用道具 举报

发表于 2009-10-21 09:35:27 | 显示全部楼层
更新签名
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-9-29 11:26 , Processed in 0.088063 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表