Time to add to the list of Minecraft Meta Questions!

So, my question is fairly basic. When we run programs in other langs through the command line, we don't count anything but their flags. For example, take Java.

java B.java [arguments]

We wouldn't count this bit to run the program. We would count the flags though (because I don't use a programming language that uses flags, really, I'm going to use an example with rm).

rm -rf [some directory]

And we would count the -rf bit as 4 bytes, one for the space, three for the chars.

So why do we count Minecraft starting things, such as a button? It's really just hitting the enter key and starting the program, when you think about it. And on that line of thinking, what would you define as flags? Would a button be a standard way to start it, or a lever? How would we count that?

Please discuss. c:

  • 2
    \$\begingroup\$ I would personally only count the rf bit as two extra bytes. \$\endgroup\$ – SuperJedi224 Jan 19 '16 at 14:11
  • 1
    \$\begingroup\$ Of course the button counts: In Python if I declare a function which needs to be called, but the actual syntax for a function counts. The "caller" is not the button, its the character pressing the button (which doesn't count) \$\endgroup\$ – Nathan Merrill Mar 15 '16 at 21:59
  • \$\begingroup\$ @NathanMerrill But levers, pressure plates, buttons, and other types of activation all have different behaviors. Levers, redstone torches and redstone blocks will continuously input redstone power, but buttons and pressure plates are for a short time. \$\endgroup\$ – Addison Crump Mar 15 '16 at 22:01
  • \$\begingroup\$ @CoolestVeto how is that relevant? When I call a function, I can only call it once (a short time), or recursively (continuous) \$\endgroup\$ – Nathan Merrill Mar 15 '16 at 22:03
  • \$\begingroup\$ @NathanMerrill There is a difference in how they behave, though - buttons run once, so they only activate for a short period of time on repeating command blocks, but repeating command blocks act infinitely for levers. \$\endgroup\$ – Addison Crump Mar 15 '16 at 22:06
  • \$\begingroup\$ @CoolestVeto The duration still doesn't matter. The caller is the character, not the button. A button by itself doesn't start a program, just like a function doesn't start by itself. You need a caller, whether that be through command line arguments, or a person pressing the button. The caller doesn't count, but the mechanism being called does \$\endgroup\$ – Nathan Merrill Mar 15 '16 at 22:09
  • 1
    \$\begingroup\$ I'd like to see someone solve a challenge by programming in Terraria, too. \$\endgroup\$ – mbomb007 Mar 16 '16 at 18:49

No, they shouldn't count. But input should.

There are 2 cases here: Input as in input, and input as in turning it on.

Something like a redstone clock, don't count the button used to start it. It isn't actually part of it, it is just used in building it.

If your 'program' is tall and requires a ladder/pillar to get up, you don't count the tower. It isn't part of it. But you did build it as part.

Button/levers/plates as forms of input, like a door opening, should count. So if you build a truth machine and the lever/button/plate is the input collector, that should count.

It is a functional part, even if it just relays power.


No bytes for Startup.

Starting up minecraft is like starting up/installing Java: it's assumed you do it. Activating Java from the command line is like pressing a button in minecraft: they both invoke a program. If you could somehow modify the NBT data of the button and were then able to use that data, that would be command line arguments, like Java's.

  • \$\begingroup\$ This has my upvote. \$\endgroup\$ – Conor O'Brien Mar 15 '16 at 22:01
  • \$\begingroup\$ So continuous redstone activators like levers is considered the same as the short redstone activators like buttons? \$\endgroup\$ – Addison Crump Mar 15 '16 at 22:03
  • \$\begingroup\$ I guess they could be thought of that, yes. \$\endgroup\$ – Conor O'Brien Mar 15 '16 at 22:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .