以撒的结合吧 关注:290,014贴子:3,401,700
  • 14回复贴,共1

【Blockly编程】图形化mod编程工具

只看楼主收藏回复

写了一个(满是bug的)图形化mod编程工具,可以让你无需学习复杂的lua语法,只要点点鼠标,就能编写游戏mod逻辑。图形化语言使用的是Google blockly,如果有感兴趣的同学,可以看一下(虽然目前没做中文)。
虽然点鼠标麻烦了点,但这个学习成本比lua低了很多,但功能上是一点都不少的。
另外关于这个工具怎么用。。。其实里面还是需要一些思想的,但目前精力有限,不一定能写多少教程,也不一定能深入做下去,欢迎有想法的同学/大佬共同开发。


IP属地:北京1楼2020-08-04 22:38回复
    国内依旧挂在了码云上面
    frto027.gitee这里有一个点io/blocklyisaac/
    以及源代码:
    gitee这里有一个点com/frto027/BlocklyIsaac
    github链接顺着就能找到,就不放了。


    IP属地:北京2楼2020-08-04 22:41
    回复
      2026-01-18 22:40:06
      广告
      不感兴趣
      开通SVIP免广告

      (请忽视那个打错的Mode。。。本来是想打Mod的)
      上图所示的逻辑是,首先注册一个mod,名字是“ModName”。然后使用AddCallback添加回调。当触发MC_USE_ITEM(使用主动)的时候,就执行FnRef里面的东西,同时最下面的一个块用来指定使用的主动是D20。
      执行的操作是一个if块。也就是当条件满足时xxx会做点什么。这里的条件是一个大于号,玩家的魂心数除以2大于3,由于这里的魂心数单位是半颗心,所以这里的意思就是魂心数量大于3的时候,执行一个操作。
      执行的操作是BombDamage,也就是爆炸伤害,Position是位置,这里指的是玩家的位置,剩下的就是一些伤害值、半径之类的。在网站中做出这张图后,点击Lua按钮,就能生成脚本,这个脚本就可以直接作为自己做的mod的main.lua文件内容来使用。这里生成的脚本如下:
      MyMode = RegisterMod('ModName',1)Isaac.AddCallback(MyMode,ModCallbacks.MC_USE_ITEM,function(__arg_0,__arg_1,__arg_2) if (Isaac.GetPlayer(0)):GetSoulHearts() / 2 > 3 then (Game()):BombDamage((Isaac.GetPlayer(0)).Position,1,1,true,Isaac.GetPlayer(0),0,0,true) endend ,CollectibleType.COLLECTIBLE_D20)
      这个功能就是,使用D20时,如果玩家魂心超过三颗,就对玩家造成一次爆炸伤害。
      其实还是有一定的门槛的。汉化以后门槛应该就会低很多了,目前只是把demo做了出来,感兴趣的话可以先体验一下,如果会用的话还是能做到不少事情的。


      IP属地:北京3楼2020-08-04 22:55
      回复
        草又开始“推销”新课程了吗?


        来自Android客户端4楼2020-08-05 00:12
        收起回复
          哇哦


          IP属地:辽宁6楼2020-08-05 12:23
          回复


            IP属地:广东来自Android客户端7楼2020-08-05 16:55
            回复

              偷偷更新一下,爆肝手动汉化了大部分函数,上图是目前的效果。
              简而言之,实现的功能就是,当触发更新时,如果玩家的卡牌不是无卡牌的话,就丢弃0号口袋中的物品。
              游戏每时每刻都在触发更新。
              因此,说人话就是,这个逻辑会让玩家无法捡起任何卡牌。
              如果你能手动搭建起这张图片上的东西的话,点击右上角的“复制到游戏控制台”,然后在游戏控制台里ctrl + v粘贴,是可以实实在在的执行这个逻辑的。
              如果哪个方块不好找的话,一般它都在自己的“操作对象”所在的菜单里面。但在搭建之前,最好先看一下“工具块”这一菜单。


              IP属地:北京8楼2020-11-01 21:28
              回复
                离线版地址 gitee点com/frto027/BlocklyIsaac/releases/v1.0.0
                下载第一个zip,解压后点开blockly_isaac_workspace.exe即可使用

                发布了第一个发行版本,除了个别不能用的块之外,大部分块都已经进行过手动翻译了,你可以体验到几乎全中文的mod编程。(由于是以语句为单位进行翻译的,有些出现多次的同一个英文单词或缩写字母会翻译错误,这个可以避免,但工作量有点大,暂时不做)
                目前提供在线的网页版本和离线的exe版本,这层地址是离线版本,在线版本在2楼。另外在线版本建议按ctrl+F5刷新,不然可能会有旧版本的缓存导致更新不及时的问题。
                稍后可能会出一些视频教程或者文字类的东西。
                这个系统最大的优势就是,在理论上,它和官方的lua mod系统是几乎完全等价的。也就是说,你在创意工坊里面看到的任何mod的逻辑部分,都可以用这个系统来实现。所以借助这套系统,你不用学习复杂的lua语言,就可以在官方提供的mod框架下,实现自己想要的游戏逻辑,甚至是将这些逻辑封装成一个mod文件夹,或者是一条控制台指令,分享给别人去用。


                IP属地:北京9楼2020-11-22 17:43
                回复
                  2026-01-18 22:34:06
                  广告
                  不感兴趣
                  开通SVIP免广告
                  🐮🍺,支持


                  IP属地:浙江来自Android客户端10楼2021-01-03 12:03
                  回复
                    楼主大佬 跪谢! 游戏全买了 MODS 是白色的 文件里面有mods


                    IP属地:湖北来自iPhone客户端11楼2021-04-02 01:10
                    收起回复
                      请教一下,如何做成这种exe形式的,官网上都是做成网页版本


                      IP属地:广东12楼2023-05-31 09:43
                      收起回复