Author Topic: Pixel Events - Open Beta  (Read 11568 times)

I'll download it when I get home next week, going to use it for an advanced computer project (pixel brick monitor), I'll tell you how it goes. Would be nice if you could upload a quick tutorial for all the features and events.

Already did that.  Worked very well for me.  Hope yours works.

Already did that.  Worked very well for me.  Hope yours works.
Glad to see it's working. I'm not the best eventer but I'll have a tutorial out by the official release.

Glad to see it's working. I'm not the best eventer but I'll have a tutorial out by the official release.

Would it at all be possible to make output pixel checking events (I think doing this with VCE variables would be too disorganized).  For my computer, to move things like the mouse, or check if the mouse is over an icon when the mouse button is clicked, I have to keep track of the pixel location of the mouse pixel on the screen.  I do this by adding/subtracting from variables 'Moulove" and "MouseY", but doing it this way can have issues if any lag ensues.  I like to refer to this system as a weak system, where the display and recording systems are separated - for all of my projects, I like to have strong systems, where the display system is based on the recording system, instead of separate from it.

This would be like having a daycycle, then using relays to keep track of time and have lights turn on when the relays make them turn on.  This is a bad system, and so I made my own daycycle with events and the Environmental Control events.

That was an example that was easier for me to explain than for the computer, but the output check events would be like the following:
Code: [Select]
[input] [Self] [Pixel_IfPixel] [4 7] [Has Color] [23] [4-6]

and

Code: [Select]
[Input] [Self] [Pixel_IfPixel] [4 7] [Is Visible] [1] [4-6]

etc...

The output is called "Pixel_IfPixel".  The first field is the coordinates of the pixel.  The second field is a drop-down menu containing certain commands, such as "Has Color" or "Is Visible".  The third field is the special params, where 1 is yes, 0 is no, and for color, the number is the colorid of the pixel.  The last box is the range of events that this specific output triggers.  This means there would also need to be an input that gets triggered by the "Pixel_IfPixel" output, so maybe something like "Pixel_OnTrue" and
"Pixel_OnFalse".  Basically, the point in this is to make more sturdy system, with each part of the system more dependent on the system as a whole.

Would it at all be possible to make output pixel checking events (I think doing this with VCE variables would be too disorganized).  For my computer, to move things like the mouse, or check if the mouse is over an icon when the mouse button is clicked, I have to keep track of the pixel location of the mouse pixel on the screen.  I do this by adding/subtracting from variables 'Moulove" and "MouseY", but doing it this way can have issues if any lag ensues.  I like to refer to this system as a weak system, where the display and recording systems are separated - for all of my projects, I like to have strong systems, where the display system is based on the recording system, instead of separate from it.

This would be like having a daycycle, then using relays to keep track of time and have lights turn on when the relays make them turn on.  This is a bad system, and so I made my own daycycle with events and the Environmental Control events.

That was an example that was easier for me to explain than for the computer, but the output check events would be like the following:
Code: [Select]
[input] [Self] [Pixel_IfPixel] [4 7] [Has Color] [23] [4-6]

and

Code: [Select]
[Input] [Self] [Pixel_IfPixel] [4 7] [Is Visible] [1] [4-6]

etc...

The output is called "Pixel_IfPixel".  The first field is the coordinates of the pixel.  The second field is a drop-down menu containing certain commands, such as "Has Color" or "Is Visible".  The third field is the special params, where 1 is yes, 0 is no, and for color, the number is the colorid of the pixel.  The last box is the range of events that this specific output triggers.  This means there would also need to be an input that gets triggered by the "Pixel_IfPixel" output, so maybe something like "Pixel_OnTrue" and
"Pixel_OnFalse".  Basically, the point in this is to make more sturdy system, with each part of the system more dependent on the system as a whole.
This will be very easy to make as all the variables are already stored on the PixelGroup.

Pixel_IfPixel [Coord] [Mode] [Color]
[Mode] IsColor - If the pixel at [Coord] is [Color]
[Mode] IsHidden - If the pixel at [Coord] is hidden
[Mode] IsUnHidden - If the pixel at [Coord] is unhidden (visible)
[Mode] IsBackground - If the pixel at [Coord] is the same color as the background.
Event Pixel_IfPixel added.
Please redownload.


Really the only issue is that load pixel event's tendency to lagout the server.  I'll do some testing to see what might be the cause.

Really the only issue is that load pixel event's tendency to lagout the server.  I'll do some testing to see what might be the cause.
Changing the save format may help but it will break all previous saves. I may experiment a little.

Uberbump because of a suggestion that would revolutionize these events.

Increase the coordinate fields to be able to fit a VCE variable.  Currently, you can only input two numbers to make a rectangle (and there are only 5 or 6 characters of room), and you'd need preset events to change a pixel.  But, if you increase the size of the field such that two VCE variables (<var:br:variable1> <var:br:variable2>) could fit, pixels could be switched on, shifted, and more easily changed.

If Jasa had made pixel events/bricks that were viewable from above (meaning they were on a horizontal plane, not a vertical one), then that'd be very cool for this, as pixel events allow for a single stud to be broken up into a 3x3 grid. I might bug him about this.
Uberbump because of a suggestion that would revolutionize these events.

Increase the coordinate fields to be able to fit a VCE variable.  Currently, you can only input two numbers to make a rectangle (and there are only 5 or 6 characters of room), and you'd need preset events to change a pixel.  But, if you increase the size of the field such that two VCE variables (<var:br:variable1> <var:br:variable2>) could fit, pixels could be switched on, shifted, and more easily changed.
Will do!


Yesssss.

Sorry for bumping the old thread, I forgot about this one being more recent.

what would be the resolution for a 1x1f brick with a screen above it? 2x2 or 3x3? both?

also, how far above the 1x1f plate pixel brick will the screen be? Can it be at least a 1x1f brick, so I can have a layer of plates above the pixel bricks and still have the screen show through?

what would be the resolution for a 1x1f brick with a screen above it? 2x2 or 3x3? both?

also, how far above the 1x1f plate pixel brick will the screen be? Can it be at least a 1x1f brick, so I can have a layer of plates above the pixel bricks and still have the screen show through?

If he is making the horizontal pixels the same as vertical pixels, the pixels would be created inside of the brick that the events are acting on.