Help - Search - Members - Calendar
Full Version: Reality filter, command line, and the GUI
Dumpshock Forums > Discussion > Shadowrun
PlatonicPimp
OK, so over the last month IRL, I've been learning about computers a lot, as I've taken it apon myself to cobble together a laptop. I've been rather successful (I''m using it now), using linux as my operating system.

Now Linux is a peice by peice OS, wherre various parts can be switched in and out. One part (actually several parts that work together) is the Graphic User Interface, or GUI. The GUI is the part that translates all that the computer is doing into a visual representation. Honestly, almost noone besides sysadmins ever operate without a GUI, it's what the average user thinks of as the operating system. Most GUIs are based on the window/desktop metaphor, and use a mouse to interact with the icons.

Without a GUI, you interact with a computer through a Command line. Here you type commands at a prompt, and the computer obeys them.

Oftentimes people diriding cyberpunk will note that all the pretty virtual graphics are an excess, that real hakers wouldn't gain any benifit in speed from the, that in fact they would lose it since system resources are tied up making the pretty pictures. Real hackers would interact with the computer at the level below that. This is both true and not true. A GUI eats up resources, yes, but unless you are running one far more than your computer can handle, the slowest part of the system is generally the user. The real difference is in command possibilities. At a command prompt, there is little to no clue on what commands are possible. But any command you are aware of can be typed in and executed. meanwhile, a GUI presents you with a metaphor that guides you through the most common commands, but only in the case of simple programs are all commands possible given easy access. If you know what commands you want to run precisely, a Command prompt is faster. If you need to see options, a GUI is faster.

What, you ask, does this have to do with shadowrun?

Well, once I learned that the GUI is actually separate from the operating system (in linux there are 4 in common use, with god knows how many others around), I took a look at the matrix rules and saw that there is actually an equivalent for shadowrun, seperate from the operating system. It's the reality filter.

The reality filter determines the metaphor you view matrix data through. It acts as your VUI, virtual user interface, and stands as a level between the operations and the user justt like todays GUI does.

Here is my working interpretation:
These days we're seeing web browsers and operating systems become more meshed together. By shadowrun time we're going to see them totally merged. each node you visit will have it's own metaphor for it's data, that it imposes on the people who visit that node. (just like each website has its own layout.) An unfamiliar user would suffer a reaction penalty because they don't know the metaphor and so have trouble finding commands. However, when using your own reality filter, you would gain a reaction bonus because all the commands you usually usee are exactly where you think they are. When you visit a node with your reality filter on, its a case where two VUIs are trying to operate at once, and only onw will win out, hence the test

Of course, you could always use the command prompt. It works the same for everyone. No reaction bonus or penalty for that. This isn't to say you turned off the VUI. You can open a command prompt from inside a GUI today, I don't see that changing. But instead of using the prevalent metaphor to input commands, you bypass it.

What does this change in game terms? Well, nothing, unless you want it to. In storytelling terms, it makes all the difference. A commlink without a Reality Filter is only operable from a command line interface or the prevalent VUI of the node tehy are on. Most uses will want more than command line interface within their own node, however, and will generally have a reality filter.

In game terms, I might be inclined to state that anyone without a computer skill is incapable of using a command line interface. Use without a VUI would be impossible for them, meaning that they either need a reality filter, or are always stuck with the -1 response of using an unfamiliiar VUI. (the penalty for failing the reality filter test.) I would also allow a person to gain familiarity with more than one VUI. A person could be familiar with up to their computer skill in individual VUIs. When using any of those metaphors, the user gains the +1 response, even if it's running on the host node, not their own commlink.
kzt
The reality I see is that experts use command line utilities, users use GUIs.

Experts can do a host of things vastly faster using a command line than can be done from a GUI because the expert understands how to combine assorted tools together and write/find utilities that access parts of the OS/app that are not usually directly accessible.

For example, today we needed to know how many of our 15,000 some odd users hadn't changed their password in the last year. Well, using the gui you can look at each users record and in only a few days of insanely boring work know this. Using a command line utility that access that field in the directory it takes a few minutes to determine that 6857 users haven't changed their password in the last year. Now excuse me while I go beat my head against a wall...
PlatonicPimp
Right, OK. But couldn't you create a GUI for any given set of commands? Not that you really need to, but it's possible, No? If you wrote or at least customized your own gui, then you'd have more toolsets exactly where you needed them.

Anyway, how would you relate it to SR matrix rules?
kzt
Scripting is chaining together a series of programs that are then run as a whole, sometimes including feeding results from one into the other.

An obvious example would be hacking into a node then running a script that does analyze, edit, edit, logout that locates the main logging system, creates a backdoor account, edits the logs to cover up the attack and account creation, then disconnects. This is a single action, which reduces the time the system has to notice anything.

This create a pattern, as it's doing the exact same thing every time, but there are drawbacks to everything.
Fix-it
most experts would do their scripting off line in flatland, then use them from the GUI online.

scripting on the fly could get you fried brain on the rocks. only do it in emergencies.
Ranneko
QUOTE (PlatonicPimp)
Right, OK. But couldn't you create a GUI for any given set of commands? Not that you really need to, but it's possible, No? If you wrote or at least customized your own gui, then you'd have more toolsets exactly where you needed them.

You could, but you still gain an advatage in not having the gui, and keeping it commandline because you can then use that script in conjunction with other scripts and command line programs.

When it comes down to it, at this stage command line is faster and more powerful, not necessarily because of rendering time, but because while GUIs enable, GUIs obscure.

Heck, the Matrix is a really crazy idea from a systems representation idea, because it introduces geography into system representation.

To be honest, I'm not really sure where you draw the line for realisms sake, SR3's computer rules have never really meshed with reality, and making them do so seems like a lot of headaches.
kzt
QUOTE (Fix-it @ Jul 10 2007, 10:05 PM)
most experts would do their scripting off line in flatland, then use them from the GUI online.

scripting on the fly could get you fried brain on the rocks. only do it in emergencies.

Running prewritten scripts was what I was thinking about, but that raises an interesting point: You're invulnerable to anything other than trace or having your connection terminated in non-gui mode. There is no persona to attack.

Not to mention that it's perfectly possible for a street sam running AR to be as fast or faster than a hacker running hot sim, and the sam can do physical damage to the hacker as long as the hacker has hot sim running. Which offers an interesting option for cheap security hackers to nuke most hackers: the security Sams with skillwires.
hobgoblin
there is also the old stuff about a hot sim decker/hacker being able to feel the data flow. as in, the amount of sensory i/o of the vr interface is not limited to images and sound.

my guess thats why they have given VR users extra dice in SR4. sure your body is so wired that you can hammer in the library of congress in seconds, but can you feel that IC sending out kill code in stealth mode? can you feel the crawling sensation thats the first indications that a alarm is being triggered?

on hot sim, just about anything can be translated into sensory signals. the problem is that line noise alone can trigger an chemical rush so big that you get a stroke or similar.

as for persona. its allways there, it does not matter if your gui or command line, its still a persona around. the tortoise of SR3 and older is gone. now thats a joe wageslave with computer skill 1, AR glasses or contacts and a cheap comlink.

the persona is more like a prosess on the server then a icon. the icon is just something to present to the gui for ease of refrence. as in, a file in a cli have a name, the same file in a gui have a name and a icon, but its the same file on both.

plan 9 embodies the idea of every prosess, computer on the network, even every window on the desktop, be a entry in the file tree. if your familiar with linux you may know of the /proc directory. in there the kernel presents a whole lot of information as files that one can read using ordinary software. one can even do changes by sending data into said files. iirc, there is a file in there that if you do echo 1 > filename will turn on routing in the kernel. that, some firewall rules, and a extra network card and you have turned your computer into a router, best known as a kind of internet traffic "cop".

in a vr gui this may well be represented by a collection of rooms in a basement or similar.

oops, forgot something. if one wants scripts in SR4, grab a agent wink.gif loaded with the right programs it can perform many actions after a single command from you. sure, its not the "many action in a single action time-space" that some wish scripts are able to, but it still helps in allowing more to be done.
Blade
Sure command-line is useful and very convienient because it allows the user to combine things together and is much more flexible to give commands than because. But that's more on the input side than on the output side.

But for the ouput, a graphical representation is often better. A graph is faster and easier to figure out than a written matrix. You'll be able to navigate more easily with a map than with a list of coordinates for each and every place. It's much faster to know what a 3d image looks like by looking at the rendering rather than looking at the POV file.

In Shadowrun, the input is DNI which can easily have the same flexibility as command-lines and which can be used successfully together with graphical representation (actually not only graphical but multi-sensory).
bait
VR serves two purposes.

1.) To represent VR objects in a common metaphor so its easily recognized. ( Unlike staring at naked code.)

2.) Instead of executing commands on a per command basis your executing gestures linked to pre-defined scripts.

Combine this with a DNI the CLI becomes less and less useful. ( Unless thats your aim as a system designer.)
Aaron
It's possible that with enough processing power and proper metaphor interpretation, a VUI can be as fast as a CLI. For example, in VR I can take a step forward into (say) mozilla.org's node, reach out and pick up the Firefox globe, and then step back into my home node. This takes like 4.5 seconds in cold-sim VR. I can also do the same things in a CLI:

CODE
aaron@underdog:~$ ftp
ftp> open ftp.mozilla.org
Connected to manna.mozilla.org.
220 (vsFTPd 2.0.1)
Name (ftp.mozilla.org:aaron): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub/mozilla.org/firefox/releases/latest/linux-i686/en-US
250 Directory successfully changed.
ftp> get "firefox-2.0.0.4.tar.gz"                
local: firefox-2.0.0.4.tar.gz remote: firefox-2.0.0.4.tar.gz
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for firefox-2.0.0.4.tar.gz (9655661 bytes).
226 File send OK.
9655661 bytes received in 67.40 secs (139.9 kB/s)
ftp> close
221 Goodbye.
ftp> quit
aaron@underdog:~$

When your latency is low enough, the virtual actions, interpreted by the interface system, take less time than typing.
Catharz Godfoot
These days even an EXPERT PROGRAMMER writing Java will almost certainly be using a GUI like eclipse. As has been said, a good GUI will increase speed/ease of use by a huge amount, even (especially?) if it isn't a WIMP.
tweak
I would look at the project metasploit and then extrapolate that project forward.

tweak

Note: I run openBSD, and I like running fvwm with multiple terminals.
ShadowDragon8685
I think what we need to remember is that the Matrix is not like a virtual interface for a command line instead of a graphical interface for a command line.


The Matrix IS!


To understand the Matrix of Shadowrun 4th Edition, go and take out The Matrix (yes, the one released in '99 with Keanu) and watch it.


And while you're watching it (if you can take the time between watching the One kick ass and trying to figure out the headplot), look at everything that's happening from the point of view of someone who's been plugged out. Figure out what's going on.

When an Agent fires a gun at you, it's not real lead he's slinging. It's not even the physical calculation-based action as if a normal thug had fired his "gun" at you.

In the second version (the thug), the Matrix is calculating the trajectory of the bullet, it's velocity, and it's effects on your body. If it calculates that your bodily organs begin to fail, you start to "die", and the Matrix terminates you once it's calculated you're dead.


But it's different for those on the outside looking in. Sure, you can wind up dead if you get pumped full of enough "physical" lead, but you bet your ass Agent Smith and his posse are packing extra. When their bullets are fired, they're carrying Killcode, which is equavilent to Attack and Black Hammer in one. It's an attempt at inserting viral code into your own, personal ass, and if it succeeds, it'll do a lot more damage than getting shot by the physical lead. To count this kind of an attack, one would need a powerful, highly active firewall (the Armor program) which could take any form you liked - obviously, the less obvious, the better. (In this case, we could say it takes the form of a leather trenchcoat). And, to further take the metaphor to Shadowrun, say you want to heal the damage your persona's taken? You're running a Medic program, but in VR, what you're doing is taking a needle out of your pocket and stabbing yourself in the arm with it.


Do you see where I'm going? Hot sim VR (and to a lesser extent, cold sim VR) is lightyears beyond command-line prompting. It combines the speed and intuitiveness of physical actions (shooting a gun, throwing a punch, wearing a trenchcoat, etcetera), with the super-speed of virtual reality. The result is a one-two punch that no 'command line prompt' could duplicate.


As for what a reality filter is, and what a node's own reality is, let's go back to the Matrix metaphor. Let's say your metaphor is based off The Matrix (the movie). For you, Attack program is martial arts, Black Hammer is your gun, your Armor program is your trenchcoat, and Medic is the needle you stab into your arm.

Let's say the metaphor on the node is something different. Something wildly different - pre-modern Japan. (Let's say you're busting into a Renraku system).

So, you go in with no reality filter. What happens is that you see yourself as your normal persona, decked out in trenchcoat and carrying your gun and such. The programs and other persons inside see you as, well, whatever they want to see you as - probably a samurai.

You see the virtual world around you as it was meant to be seen, but you are yourself (to you, at least). No bonus, no penalty.

Now, you load again, with your reality filter. You roll against the node, and succeed! Your reality imposes itself, and you see the reality of the node as you wish to see it - the rainy streets of Megacity 001. You get a bonus, the bonus comes from your familiarity with the filter - oh look, an Agent! You react faster, because you're so familar, you know what the node is doing because you're intimately familar with the reality.


Let's say you fail. Whammo, you're back in the Japanese metaphor - and guess what? All of a sudden, your black hammer is your Katana, and your Attack is a Wakizashi. Your armor program takes the form of Samurai armor, and Medic is, well... What's medic? Oh, it must be this bottle of sake.

Your response is impaired, because of your unfamiliarity with the reality the node has imposed on you and your own, personal self.



Of course, it beggars the question, if you fail, why can't you just switch the reality filter off and return to a state of no penalty? Or even turn it on and off and on until you succeed?

I don't know.
Tarantula
I've gotta say shadow, your analogy is spot on with this one.
Blade
For the reality filter, I consider it that way :
if the hacker doesn't have the reality filter, he automatically gets the penalty: the node pits its reality filter against your nothing, and wins.
The same goes if the node doesn't have a reality filter, or allow the users to use their own filter.

As for switching on and off, the idea of the original test is to check whether that reality filter is better than yours. If it is, you can try a hundred time, it will still be better than yours (that or you take into account the rule that states that trying again adds a -2 penalty).

(EDIT : And by the way, I agree with your vision)
bait
QUOTE
Do you see where I'm going? Hot sim VR (and to a lesser extent, cold sim VR) is lightyears beyond command-line prompting. It combines the speed and intuitiveness of physical actions (shooting a gun, throwing a punch, wearing a trenchcoat, etcetera), with the super-speed of virtual reality. The result is a one-two punch that no 'command line prompt' could duplicate.


There are no physical actions, its all mental commands that get interpreted into a Vitual abstraction.

If you like the matrix references, you'll remember Morpheus telling Neo the following?

QUOTE
Morpheus: Do you believe that my being stronger or faster has anything to do with my muscles in this place? Do you think that's air you're breathing now?


This also plays into what the reality filter is for.

Once again with the Matrix reference.

QUOTE
Morpheus: The Matrix is a system, Neo. That system is our enemy. But when you're inside, you look around, what do you see? Businessmen, teachers, lawyers, carpenters. The very minds of the people we are trying to save. But until we do, these people are still a part of that system and that makes them our enemy. You have to understand, most of these people are not ready to be unplugged. And many of them are so inured, so hopelessly dependent on the system, that they will fight to protect it.
[Neo's eyes suddenly wander towards a woman in a red dress]
Morpheus: Were you listening to me, Neo? Or were you looking at the woman in the red dress?
Neo: I was...
Morpheus: [gestures with one hand] Look again.
[the woman in the red dress is now Agent Smith, pointing a gun at Neo's head; Neo ducks]


A nodes reality is designed to present only what the nodes controller wants you see, it forces you to obey the gesture language of that particular system which gives an edge to the system.

A reality filter maps the users gesture language and translates it to the underlying command structure of the node thereby removing the systems advantage.
ShadowDragon8685
Bait, I said what I said to illustrate the difference between The Matrix and the Matrix.

There may be no physical actions, but since it feels like physical actions, there's really no difference for the hacker. Hell, not even Neo broke out of the physical action mold, even after he unlocked the power of The One.

Otherwise he could have just waved his hand and made Smith and every other Agent and Exile that got in his way simply dissapear. Instead, we got two more movies of lotsa gunplay and martial arts asswhoopery.


Which was cool.


[edit]

Plus, what you're suggesting woulden't be worth a Response penalty, it would be more along the lines of locking out the hacker's abilities.


Which would sound the death knell, as Technomancers would (presumably) have no such limitations.
bait
QUOTE
Plus, what you're suggesting woulden't be worth a Response penalty,


On the contrary thats exactly what happens as your having to take time to to figure out whats coming at you and how you can respond to it.

A cannon ball metaphor could be a Black Hammer or a Black Out, if your not filtering this out your having to take time to figure out whats coming at you and what your going to do about it. ( Represented by a response penalty to make things simpler.)

Which effects hackers and technomancers in the same manner.

Tarantula
Doesn't matter if its a black hammer or black out, you can figure out its an attack quite easily.

Yes, mental commands. Ones very much like the mental commands you send down your nervous system to move your body. Except they are RAS overrided and intercepted and then used to decide what you're trying to do in the matrix.
hobgoblin
i just read a magazine article about visualizing complex data sets using graphics in both 2d and 3d forms. it was quite impressive to view, and surprisingly informative.

now extend that to models where you can pick up a folder and feel the weight of it based on how much is in it and similar. or tug at one part of the model and see what other parts move, and how hard you have to pull it, to get an idea about how many things are connected to it.

there is also this:
http://labs.mozilla.com/2007/07/the-graphi...user-interface/
PlatonicPimp
In the end, it's all code. The matrix doesn't RUN in VR, it's a metaphor for the benifit of the matrix users hooked up to it. It's extra code above and beyond what the programs themselves need to run. Probably a lot of extra code. If GUIs are any indicator, then the vast majority of the processing power the matrix uses is used to make the VR. Probably 99% of that processing power. (incidentally, with that much Processing power on your hands, it might be possible to crack encryption in a few seconds.)

kzt
QUOTE (PlatonicPimp @ Jul 13 2007, 11:12 AM)
incidentally, with that much Processing power on your hands, it might be possible to crack encryption in a few seconds.

Nope. The scale of the problem is much bigger than you think. See http://sixdemonbag.org/cryptofaq.html#entropy for a decent explanation, but the short answer is "using computers which operate at the peak efficiency allowed by the laws of physics, it would take about one hundred nuclear warheads [energy equivalent] and a billion years to brute–force a 128–bit cipher."

You CAN break trivial keys, and don't underestimate how powerful that is, but a well engineered and well maintained system is impossibly hard to attack directly. Well engineered and well maintained systems are also annoying to use and expensive and complex to run. You have to do something really clever and attack around the system. Like http://en.wikipedia.org/wiki/John_Anthony_Walker
hobgoblin
Please, dont start that one again. As for what the programs need to run, look at javascript based security problems today. It may well be that there are only a few people in sr that know how to program close to the hardware...
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Dumpshock Forums © 2001-2012