找回密码
 点一下
查看: 6142|回复: 7

YDWE已终结,这是其中的BUG!

[复制链接]
发表于 2011-8-16 13:11:17 | 显示全部楼层 |阅读模式
存地图编译出错,提示:Identifier redeclared:"StringTable"// line 3619
--(previously declared here)//line 2951

经过我接近一个半小时反复对J文件的替换发现是YDWEMemoryLeakHelper文件的问题..真纠结,又经过了文件对比,总算修正了这个BUG...
这是1.21a的正确写法

//=============================================================
        // initialize it all.
        //
        //private static method onInit takes nothing returns nothing
            //set ht = InitHashtable()
        //endmethod

    endstruct

    //Hey: Don't instanciate other people's textmacros that you are not supposed to, thanks.
    //! textmacro Table__make takes name, type, key
    struct $name$ extends GTable

        method operator [] takes $type$ key returns integer
            //return LoadInteger(ht, integer(this), $key$)
            return YDWEGetIntegerByInteger(integer(this), $key$)
        endmethod

        method operator []= takes $type$ key, integer value returns nothing
            //call SaveInteger(ht,  integer(this)  ,$key$, value)
            call YDWESaveIntegerByInteger(integer(this)  ,$key$, value)
        endmethod

        method flush takes $type$ key returns nothing
            //call RemoveSavedInteger(ht, integer(this), $key$)
            call YDWEFlushStoredIntegerByInteger(integer(this), $key$)
        endmethod

        method exists takes $type$ key returns boolean
            //return HaveSavedInteger( ht,  integer(this)  ,$key$)
            return YDWEHaveSavedIntegerByInteger(integer(this)  ,$key$)
        endmethod

        static method flush2D takes string firstkey returns nothing
            //call $name$(- S2I(firstkey)).reset()
            call $name$(- YDWES2I(firstkey)).reset()
        endmethod

        static method operator [] takes string firstkey returns $name$
            //return $name$(- S2I(firstkey) )
            return $name$(- YDWES2I(firstkey))
        endmethod

    endstruct
    //! endtextmacro

    ////! runtextmacro Table__make("Table","integer","key" )
    ////! runtextmacro Table__make("StringTable","string", "S2I(key)" )
    //! runtextmacro Table__make("HandleTable","handle","YDWEH2I(key)" )

//endlibrary
将1.21a的代码替换到了1.21c
   两者的主要区别都在于(形如下列格式)
   //A
   B
这个的先后顺序不同
  ..这是暴雪的一个bug,置换函数的先后顺序可能会导致毫无效果,本人在制作物品合成系统时发现
  ,我先把物品类型按1,2,3送入内存,索引出当前的是几,删除物品几,创建物品几+1时发现,如果先创建物品(有足够的物品栏),再删除物品,将
会毫无效果
  还有我很疑惑不解的是,为什么要加这么多的//,说明,在保存地图时会调用这些函数,导致保存地图变慢...
    难道是为了看j文件方便,没有那个作者会去看自己的J文件吧....
        最重要的是,用YDWE生成的代码...果然有代码生成器的通病...
   又长又让人不懂...里面的很多cj函数可能真的换一种方式比较好:
    看玩家需要些什么,他自己去添加..用触发器去实现
  动作
   为地图添加XXCJ函数...之类的
  用完把它删了,就像万能系统那样....
  从7:32搞起,搞到我9:34,唉,bug我来修复,真悲催.
     作者自己做了功能,先要自己测试下能否通过编译啊,可能你的机子行,我们的不行了.
  ...比如说,用YDWE做的地图,真的不能在一些魔兽上运行,读图时直接崩溃,真不知道你们注入了什么,
     有个玩家反应..他是WIN7系统,开始是读图崩溃,他重搞了魔兽,可以读图了,可触发器不触发....
(这个触发器名字是英文的,事件是当游戏逝去1.1秒时,创建对话框....他就是不创建...我后面的触发都取决这个触发器,所以地图就彻底悲剧了...我不知道它为什么不触发....也就是说,WIN7系统上,逝去难道没作用了?这是你们的原因吗???...我不知道,我会去测试的!!)
   YDWE到底在地图初始化的时候...很怀疑啊
..还有暴雪的原因,有时候触发器,cpu高了点,就不触发,比如说,A+B合成C,有了AB,它不合成..你丢掉A,再捡起来,合成了....
....还有,暴雪那所谓的对死循环容错机制,难道是反复运行多少秒停止??因为,我在LOOP语句中用等待语句悲剧了...
...还有的是,没必要每个J文件开头都加一句include xx.j
      一次注入难道不可以了吗?!!为什么每个都加..
  最重要的问题,用YDWE提供的东西,总有些会提示内存不能为read,经过翻译如下:
进程名称:war3.exe
进程架构:X86
异常代码:0XC0000005
异常信息:该线程尝试读写某个虚拟地址,而它对该地址不具有相应的访问权限.
堆信息:不存在
...很怀疑,你们是不是使用了指针变量,但是用的不太正确..
  ....真的很多功能没必要,有些又导致魔兽崩溃
  有用的都是些很低效的,比如说,任意单位受到伤害事件....
  ...能不能添加单位组功能....
  为那个单位组的单位注册事件,受到伤害
其他一些说明的问题
  还是把某些技能的说明给了别人
单位
编辑器-分类-战役和编辑器-分类-特殊的说明是相反的
嗯,假设我有一个句子引用了较多次的YDWE的局部变量(逆天功能),嗯生成的句子长得可怕,
...真的...局部变量真的不能这么搞....让人很蛋的...真的很蛋....
里面的net框架功能是最不错的,...有那么一小点瑕疵(有时候.net的输入框全黑(白?)了,反正是看不到里面文字了..点其中一行,就现一行出来...
...我机子因为某些原因,.net是4.0的....高版本的界面好一点啊,大家也不会拒绝的...
  还有一些函数没有任何作用
  添加几个单位到单位组(点的那个单位上限最大值是0!!)
  任意玩家,没有此函数
  YDWE BASE基础依旧错误
  这是1.21测试C的bug
发表于 2011-10-18 18:50:10 | 显示全部楼层
请不要再用测试版了,正式版+修正版都已经出了。
回复

使用道具 举报

发表于 2011-11-20 20:46:07 | 显示全部楼层
就是阿
都有正式版了~
回复

使用道具 举报

发表于 2011-12-3 01:00:37 | 显示全部楼层
太长了,不知道在说什么
回复

使用道具 举报

发表于 2011-12-15 09:52:38 | 显示全部楼层
学习了,谢谢楼主分享!
回复

使用道具 举报

发表于 2012-3-5 15:16:09 | 显示全部楼层
哦,谢谢楼主分享了。知道 了
回复

使用道具 举报

发表于 2012-3-24 11:38:51 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2012-5-8 11:19:14 | 显示全部楼层
每次都是这样 我都不知道怎么办了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 06:09 , Processed in 0.122612 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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