Update tick procedure trigger sometimes not working

Published by Hidan on Wed, 11/28/2018 - 16:23
Works as designed
Not applicable
Issue description

As in title procedures does not recognize blocks with custom model so you cant use it in procedures

To reproduce this make 2 blocks one with custom model
for the one without custom model made procedure that will be checking for block with custom model for example if CModel block is at y+1 from block
set this procedure on tick update or anything

Attachment Size
Workspace381.11 KB 381.11 KB
solution.PNG77.57 KB 77.57 KB

Issue comments

I have made two blocks. One normal and one with custom JSON model. I have set that on right click of normal model, the lightning strucks only if the block above is a block with a custom model. I have tested this and it worked. Did I reproduce your case correctly?

I did my one on tick update and didn't work so it might be case of tick update because it works with normal type blocks 

I have just tested this too and it worked. The same thing as before, I just moved it to tick update trigger. Are you sure there is not something else causing this?

It was suppose to change item in my custom gui
anyway I will upload my workspace

ok never mind I just have tested and now its working as intended 
have no idea why sometimes procedures does not work as they should 

If you add new dependencies to the procedure, you need to update the mod element that is calling it too. By update I mean to edit it and save it again. This will be improved in future updates. You can avoid this by editing the procedures inline. Check the console when the procedures don't work as warnings are printed in it if the procedure call was not updated yet.

Ok so I still have this problem but with different outcomes
I think there is something wrong with Tick Update Event

Now I created 3 cauldrons 1 empty 2 with different water variations
empty one should after 50tick change to Cauldron with water when its raining or thunder "Does not changing"
another cauldron should change to different cauldron after 150 ticks when fire is under it "Still nothing"
also there is nothing in console about this two events :L

here is link to GIF https://i.imgur.com/C6xyS3o.gifv

Also I've noticed that is working on different world but not all of them :L

So the issue is that update tick is not always being called? Do you have any pattern so I would be able to reproduce this?

I'm attaching my workspace
Just place cauldron anywhere in the world during the rain and it should fill up with water after sometime

Thanks, I will test it and see what could be causing this. If you are using random probability it could be that the condition just wasn't fulfilled yet. But this is just guessing, I will check it in MCreator when I get some time :)

Ok I did another thing but with Custom GUI and same thing happens "or its not happening"
So I've made simply procedure to check

if item = bottle in slot 0
   Do Remove bottle, 
      if Item = item and/or Item = Item      
         do Remove item from slot 1 & 2
            add item to slot 3
            Print: Done

Still does not work even when opened threw Block Editor

I've added also print to console to know where its stoping but after first IF it stops on second one :L
this should work because I have similar block but with 2 input slots that works fine on my other workspace

I have checked your procedure once again and found the cause. The issue is what you were checking if the block at x,y,z can see the sky, but in fact, these coordinates are the bottom of your block which indeed can't see the sky as it is opaque to light. To fix this, add +1 to y coordinate to check for the block located above your block. After I did the change visible in the image below, your cauldron started to work.

Solution of the tick update "bug"