Help - Search - Members - Calendar
Full Version: Software to use Agents
Dumpshock Forums > Discussion > Shadowrun
Heath Robinson
Tagged SR4 for your convenience.

I've heard, uh, stuff about Agents. Now, I've always had a desire to tear out the old Matrix system and transplant a new one in ever since I read about Reality Filter. That's neither here nor there, though.

I'm asking a primarily theoretical question; how much less annoying would agents be if you needed Software at a decent level to use them. There are several ways we could do this and some of them even have reasonable justifications for using them.
  • You need to have Software at N before you can give commands to an Agent of Rating M. You need to be able to grok how code works before you can really give detailed instructions to a complex system like an Agent. The interfaces to them are crap, so you can't even use the damn things unless you're a pretty good programmer. N does not necessarily have to be equal to M, or even unique for all values of M.
  • When you give an Agent commands, its Rating is effectively capped at your Software skill level. The simpler UIs are alright for newbies but they totally lack the power that knowing how to program properly will give you when you come to creating their decision trees. Even in guarding a node, a newbie tool will insert extremely general code that will slow down the Agent in responding as it parses all the possibilities and the larger the code the more likely it is to hit edge cases which trigger the wrong behaviour. Some modifier could be applied to your skill for this purpose.
  • All Agents have to be hardcoded into their tasks at creation/purchase, requiring the Software skill to do so. Agents aren't these monoliths that act like a proper user that can be retasked easily; they're kept as minimal as possible to avoid wasting system resources and you have to customise them so much that you might as well abandon them when they don't have any further use. Thresholds for the extended test will vary by Agent rating.


Now, I can see some of the consequences but I want to be sure I know every effect that this has under the rules (which I am no expert on, frankly, because they make me sad).

Expecting flames in 3...2...
Backgammon
That's not half crazy, just as the rule to cap ANY program rating to your software skill level ain't half crazy.
Fortune
Why not use the Computer skill for this purpose? Seems a bit more fitting to me.
Heath Robinson
QUOTE (Fortune @ Oct 21 2008, 06:44 PM) *
Why not use the Computer skill for this purpose? Seems a bit more fitting to me.

Software involves understanding how programs work. An Agent is a program. Understanding how, or why, it works allows you to understand what you need to tell it in order to avoid complications in the operation of the Agent. Yes, an Agent is packed full of code that attempts to wrangle sense out of what you tell it to do, but that's going to break down somewhere (even Humans sometimes misunderstand each other and Agents are apparently less able than Humans in this regard). Knowing how it works will help you avoid being misunderstood. (At some point you're just going to be writing in something like a programming language because it's more expressive and Software will cover knowing how to properly learn and use the language.)

Many people in the modern world have the Computer skill, but they can't even set their computer to play music to wake them up without someone doing it for them. Why should they be able to use an automation tool at the same level as the people who actually wrote that tool?
Fortune
QUOTE (Heath Robinson @ Oct 22 2008, 05:09 AM) *
Many people in the modern world have the Computer skill, but they can't even set their computer to play music to wake them up without someone doing it for them.


Personally, I would say that they have no actual skill, and were defaulting to Attribute.

I can cook without knowing how to harvest the ingredients. I can drive without knowing how my car works. I can use my body in various ways without knowing biology in-depth.

In my opinion, the Computer skill covers the workings and limitations of computers. The Software skill covers writing and dissecting program code. I think the former is of more use than the latter in this situation.
Tarantula
I agree with fortune. Unless you coded the agent yourself, you won't really understand how it works anyway (unless you crack it and look at the code). Computers is the skill for using your commlink, including the programs on it (unless they're hacking related). That should extend to agents.
Ryu
The key limit to agents is their very limited dicepool - let them roll the dice for their agent(s), they will fail soon enough. Rating 4 nodes will regulary stop even good agents.
Heath Robinson
QUOTE (Fortune @ Oct 21 2008, 07:35 PM) *
I can drive without knowing how my car works. I can use my body in various ways without knowing biology in-depth.

In my opinion, the Computer skill covers the workings and limitations of computers. The Software skill covers writing and dissecting program code. I think the former is of more use than the latter in this situation.

Could you tell a machine how to drive without knowing how a car operates? Can you tell a computer how to control your body without knowing how it works? No, because it doesn't have all the knowledge your brain has built up on what you need to do with which muscles and doesn't have the same knowledge you do about what follows what. You will use high level language that you don't share the same understanding of and it will go and do something wrong, every single time until you correct it.

Understanding the workings and limitations of computers is the same damn skill as writing and dissecting programs because doing one necessitates a thorough grounding in the other and you can take Software without Computer. The Computer skill covers a multitude of basic computing tasks like file management, Matrix browsing, using common programs and program control interfaces. I am talking about "workings and limitations" in an exceedingly practical sense.


Okay, let's look at an example of how you might command an Agent.
[ Spoiler ]


How does it know how threatening an icon is? How does it know whether an icon is hostile?
The original programmers told it how to evaluate these things. The defaults are almost certainly going to be wrong for the purpose you want. For example, it will likely default to a less aggressive setting than you actually want because the Agent is designed to work in a friendly environment but you're dropping this into a corp system to act as a rearguard. a system that is decidedly non-friendly.

Being able to understand exactly why your Agent is not fragging (in the FPS sense) the attackers would require Software knowledge because it involves reading the manual and understanding the technical aspects of the program design and how they apply to the problem at hand. Then you need to know Software to track down the part of the manual/API that allows you to turn off the safeguards. Understanding which safeguards you need to turn off and which will cause dangerously erratic behaviour requires either copious experience with the Agent in question, or Software.


Tarantula,
Source is useful for searching for bugs. Understanding the architecture and design decisions don't need access to the source. Most programs come with manuals that document these to some degree or another. They just require training in Software design to have the knowledge base necessary to interpret certain terms or read between the lines. The ultimate documentation of the design decisions and architecture is the program in use, though.
Tarantula
QUOTE (Heath Robinson @ Oct 21 2008, 02:11 PM) *
Okay, let's look at an example of how you might command an Agent.
[ Spoiler ]

Your example is horrible.

Command would be more like, "if you find new icons, analyze them, if they're not me, attack them. Attack the biggest threat first. Otherwise use medic."

QUOTE (Heath Robinson @ Oct 21 2008, 02:11 PM) *
Tarantula,
Source is useful for searching for bugs. Understanding the architecture and design decisions don't need access to the source. Most programs come with manuals that document these to some degree or another. They just require training in Software design to have the knowledge base necessary to interpret certain terms or read between the lines. The ultimate documentation of the design decisions and architecture is the program in use, though.

Have you looked at the manuals that come with programs lately? And with how intelligent agents/pilot programs are in SR4, you don't need to know anything about how they work, because they have metahuman levels of intelligence to understand what you want.

Thats why I can see computer being tied to it, because you need to know how to use the commlink well enough to set new orders for the agent. Beyond that, its just telling it what you want.
Karaden
I like that your trying to solve the agent problem, but this just doesn't make sense.

In fact yes, I can make a computer/robot that can drive a car without knowing the first thing about how the operates internally.

As for needing software to use an agent.. well that means that 99% of people won't be able to use agents, but the point is agents are quite prevalent. Most people are too busy to, and don't have enough skill to, do even simple things like search the matrix, so they grab an agent that searches it for them. If they had to know anything about programing, they wouldn't need the agent in the first place.

As for your 'can't set up a computer to do an alarm clock' well that is a computer use issue, not a programming issue. Edit: Sure you have to 'program' your computer to do it, but setting up a program is very different from writing a program (which is what software entails)

And since when do you not have to look at the source code to code a program? I'd really like to know what language you use that doesn't require source code to program. Oh wait, I've actually run across some of these, and they require computer skill, not programing skill, because they are absurdly over simplified.

Also keep in mind that technology is to the level that independent free thinking AI can be created. I sure as hell hope that an agent program can figure out the difference between something that is likely to attack it and something that isn't. I mean IC can determine the difference between a regular user and a hacker disguised as a regular user (Eventually) so why can't an agent (IC is just a type of agent after all) figure out the same sort of thing?

Really what your doing is your taking out agents and creating a specialized ability of software that says 'you can create a temporary program that will do something a person could do'.
shuya
QUOTE (Heath Robinson @ Oct 21 2008, 02:11 PM) *
How does it know how threatening an icon is? How does it know whether an icon is hostile?
The original programmers told it how to evaluate these things.

*clap* which is exactly why using software as a cap for any program is silly. people may malign the way that SR4 hackers are all skittles and no brains, but it's definitely the way things are going. i could do a lot of things that would get me arrested with a copy of knoppix and my basic knowledge of bash, but i can't write a program to save my life.

QUOTE (Karaden @ Oct 21 2008, 03:11 PM) *
Really what your doing is your taking out agents and creating a specialized ability of software that says 'you can create a temporary program that will do something a person could do'.

i think that's already a skill. it's called 'compiling' grinbig.gif
Fortune
QUOTE (Heath Robinson @ Oct 22 2008, 07:11 AM) *
Could you tell a machine how to drive without knowing how a car operates?


Yes, because the software in the machine is already programmed with the ability. It just needs directions.

QUOTE
Can you tell a computer how to control your body without knowing how it works?


Yes, for the same reasons as given above.

This is pretty much how Agents work, at least in my opinion. They are sophisticated pieces of Software that have a Pilot already pre-programmed with the abilities needed to do their job (assuming the right tools are present). There is really no need for the user to micro-manage their performance.
Karaden
QUOTE (Fortune @ Oct 21 2008, 05:48 PM) *
There is really no need for the user to micro-manage their performance.


Actually, given how dump the OP seems to want to make agents, I don't think they'd ever be capable of anything. You'd have to hold their hand through everything and they'd never be of any value, because they'd never manage to save you any time. It'd be like having to write the code for google every time you wanted to search the internet.
Heath Robinson
You guys seem to think that the programmers of an Agent will have preordained your situation and written code to cover it. Tough luck, that will never happen.

The kind of orders that someone who knows Computer will issue will probably limit themselves to very high level constructs such as "guard this node" with, perhaps, a condition. It's not that they wouldn't be capable of formulating more complex statements, it's that they don't have the skill to discover the right statements to include that would make the Agent do what they wanted. The Software skill gives them the knowledge to formulate their own mental models of the way the software works from documentation and analysing the program in action so that they can select the correct statements to achieve their ends.

In the same way that the pasty hacker isn't totally incapable of pulling off a trick shot, it's that he doesn't have the skill to determine how he would be able to do it. He doesn't know how he has to move his arms and wrists to handle the impact between cue and ball properly, and he lacks the knowledge of precisely how the ball is going to bounce from the cushions to line up his shots properly. He hasn't memorised the effects of various impacts between balls at various angles and powers that allow him to do multiple impact shots.

Knowing Software will allow you to make use of the advanced functionality that requires a decent knowledge of programming to understand properly. It's not that the Agent isn't getting better as the rating increases, it's that the user doesn't have the necessary knowledge to properly utilise the additional functionality. Just like how a really awesome match grade pistol is wasted in the hands of an amateur, a truly awesome Agent is not best used in the hands of someone who hasn't studied how to properly define what he wants it to do.


I mentioned that it wouldn't necessarily be capping the effective Agent rating at your Software skill. It's easy to say that it's capped at your Software skill +1, or +2, and that the rating is only capped for purposes of dice rolls so you can still load up your agent with really whizz programs that compensate for your inability to fully utilise the Agent. A large part of the agent is in its functions for handling programs, after all, and these will be less dependant on user skill.


You say it's like asking you to write code to use Google, but Google searches are written in a code that is alien to English. It just happens to share a large number of tokens with English, but there's no syntax or grammar and there are a whole bunch of tokens that you don't find in English at all. Google searches are written in code, and you've not noticed because you've only ever needed rating 1 or 2 searches, or you've compensated by hand.


The Expert systems in SR are to hard AI as a rule of thumb is to a law of physics. It may work quite a lot of the time, but it's not really accurate or necessarily correct. Things falls down is a rule of thumb and there are reasons why it generally holds true for most of human experience, but it's not impossible to show cases where things don't fall or fall in a different direction. An Agent is not AI and cannot fully understand human commands as if it were a human. Hell, the much-maligned drone "dog brain" is the same brain powering the Agent, metahuman levels of intelligence that is not.

I wall of text because I write stream-of-consciousness.
Karaden
QUOTE (Heath Robinson @ Oct 21 2008, 09:17 PM) *
I wall of text because I write stream-of-consciousness.


Same here.

That aside, I think the problem here is people are confusing what exactly denotes 'computers' skill and 'software' skill. You mention reading the documentation and picking out the proper commands? All of that is computers skill.

You should really think of this in exactly the same way you would think of the 'pilot groundcraft' and 'mechanic' skills. Mechanic deals with construction, pilot deals with use. No matter how fancy my car is, no matter how crazy cool the trick I try to do with it, no matter any of that, I don't need to know how an engine works. Same can once again be said for weapons. Knowledge of how chambering works and what order the pieces of a gun are put together doesn't help me shoot it at all, no matter how difficult the shot.

So, back to computers. Knowladge of code ie for(int i=0;i<5;i++){System.out.println("This is the number " + i)} doesn't help in the slightest when using a program. Go ahead and try it. Open up notepad and see if knowledge of programming helps you in the slightest while using it. It doesn't. What you could do with knowledge of programming and notepad, is write a better word processor, but that has been done. Microsoft Word 2008. Now then, try opening that and see what your programming knowledge does for you. What? Still nothing? Well, perhaps you could improve it some more, then you have Open Office.

Ok, time for the point to my example. What you have done with your programming or 'software' skill isn't use a program better, what you have done is created a new program with a better rating.

Now then, open up Word again. All those buttons on the top sure are confusing aren't they? Shame my knowledge of array lists, if statements, variables, listeners, and even GUI construction doesn't help me in the slightest here. But my 'Computers' skill sure does because that tells me that if I click the windows logo, I get a drop-down bar that I can open files from. It also tells me at a higher skill level that I could have done that with ctrl+O.



So far every argument about making agent use based on 'software' skill has been about adjusting the code. If your adjusting the code, you aren't using a program, your writing a new one. Now, one thing I could completely believe (And may even be a rule, don't remember and don't feel like looking it up) is that all bought agents can only use 'computer' skill and not 'hacking' skill. I would completely believe that the programmers didn't write in the methods of how to hack into a system. That would require 'software' skill, but only in order to make an agent that can hack. After that it would operate just like always.

On a side note... anyone else think that people should get a +1 bonus to any program they wrote themselves since they would know every little trick of it and everything would be set up to their exact likings... perhaps this would apply a -1 penalty to anyone else using the program because your stuff is in weird positions and uses weird shortcuts and such.(And you have the option to forgo the bonus and penalty by creating a more general setup.)
shuya
QUOTE (Heath Robinson @ Oct 21 2008, 08:17 PM) *
You say it's like asking you to write code to use Google, but Google searches are written in a code that is alien to English. It just happens to share a large number of tokens with English, but there's no syntax or grammar and there are a whole bunch of tokens that you don't find in English at all. Google searches are written in code, and you've not noticed because you've only ever needed rating 1 or 2 searches, or you've compensated by hand.


actually it's more like english is written in a code that is alien to logic. i LONG for the days when boolean operators were necessary to search for anything. and i think that google should let you search for something with NAND and XOR, but that's just me. the point is, using google is a browse program, and you use your data search action. somebody already MADE the program using their software skill, so you don't have to, you just have to know how to use the program.

and also for the record, google works through use of well-trained pigeons, none of your namby-pamby computer nerd reasoning
Tarantula
QUOTE (Heath Robinson @ Oct 21 2008, 08:17 PM) *
The kind of orders that someone who knows Computer will issue will probably limit themselves to very high level constructs such as "guard this node" with, perhaps, a condition. It's not that they wouldn't be capable of formulating more complex statements, it's that they don't have the skill to discover the right statements to include that would make the Agent do what they wanted. The Software skill gives them the knowledge to formulate their own mental models of the way the software works from documentation and analysing the program in action so that they can select the correct statements to achieve their ends.


The fact that the agent rating is effectively its intelligence rating means it is as smart as an equally rated metahuman. You can give it orders in english, and it can interpret them. You don't need to have any fancy statements or anything else, because you can just tell it what you want. Like the star-trek ship computers. Or HAL.
Karaden
QUOTE (shuya @ Oct 22 2008, 08:35 AM) *
actually it's more like english is written in a code that is alien to logic. i LONG for the days when boolean operators were necessary to search for anything. and i think that google should let you search for something with NAND and XOR, but that's just me. the point is, using google is a browse program, and you use your data search action. somebody already MADE the program using their software skill, so you don't have to, you just have to know how to use the program.

and also for the record, google works through use of well-trained pigeons, none of your namby-pamby computer nerd reasoning


Actually you can have google search with those parameters if you know how to say it properly. Which would be a perfect example of a high data search skill.

QUOTE
You say it's like asking you to write code to use Google, but Google searches are written in a code that is alien to English. It just happens to share a large number of tokens with English, but there's no syntax or grammar and there are a whole bunch of tokens that you don't find in English at all. Google searches are written in code, and you've not noticed because you've only ever needed rating 1 or 2 searches, or you've compensated by hand.


Must have missed you saying this first time around. Hard to respond to this because what your saying makes no sense.

Ok, code is alien to English... Google is written in code... what's your point? So are agents. Yet neither one requires you to know the first thing about code to operate them, which is my point. Requiring knowledge of code to use agents is like requiring knowledge of code to use Google.

I really really don't get what your point is. All you said is that Google doesn't require you to know anything about code to use it, which once again proves my point. Programs are written by someone with the intention of someone else being able to use them without knowledge of code. I don't see why agents would be designed such that only another programmer could use them.
Karaden
QUOTE (Tarantula @ Oct 22 2008, 10:08 AM) *
The fact that the agent rating is effectively its intelligence rating means it is as smart as an equally rated metahuman. You can give it orders in english, and it can interpret them. You don't need to have any fancy statements or anything else, because you can just tell it what you want. Like the star-trek ship computers. Or HAL.


Because the Star-Trek computer never had any problems associated with interpreting commands grinbig.gif
Heath Robinson
QUOTE (Karaden @ Oct 23 2008, 12:42 AM) *
Must have missed you saying this first time around. Hard to respond to this because what your saying makes no sense.

Ok, code is alien to English... Google is written in code... what's your point? So are agents. Yet neither one requires you to know the first thing about code to operate them, which is my point. Requiring knowledge of code to use agents is like requiring knowledge of code to use Google.

I really really don't get what your point is. All you said is that Google doesn't require you to know anything about code to use it, which once again proves my point. Programs are written by someone with the intention of someone else being able to use them without knowledge of code. I don't see why agents would be designed such that only another programmer could use them.

To make use of Google you write your requests in a code. It's not a code that defines the operations that the server is going to perform on the metal, but it is nonetheless a code. A sequence of symbols that have a meaning that is not immediately understandable by a speaker of any language. A code does not necessarily refer to machine code or something that can be translated directly into it.

This code is not English but it looks like it. All that glitters is not gold.


QUOTE (shuya @ Oct 22 2008, 02:35 PM) *
the point is, using google is a browse program, and you use your data search action. somebody already MADE the program using their software skill, so you don't have to, you just have to know how to use the program.

Oh, yes. Someone else compared Google to an agent and I met them halfway on it for purposes of continued dialogue.


QUOTE (Karaden @ Oct 22 2008, 03:40 AM) *
You should really think of this in exactly the same way you would think of the 'pilot groundcraft' and 'mechanic' skills. Mechanic deals with construction, pilot deals with use. No matter how fancy my car is, no matter how crazy cool the trick I try to do with it, no matter any of that, I don't need to know how an engine works. Same can once again be said for weapons. Knowledge of how chambering works and what order the pieces of a gun are put together doesn't help me shoot it at all, no matter how difficult the shot.

An Agent is not like a gun or a plane. The closest analogy is a Drone. That Drone might be a plane, but it is first and foremost a Drone. An Agent is like a Drone that you can't see or rig. You have no information on the Drone except that it is a Drone and where it is. For the sake of simplicity, we can argue that we know it's a plane of some description. Knowing how planes are built and operate will allow you to take information on the performance characteristics of the plane and figure out what propulsion system it's using and the sizes of the aerilons.

Knowing how your plane should perform will tell you quite a bit about what you can and cannot make it do. Whilst a Pilot will be able to figure out a thing or two about flying an unfamiliar vehicle, it's still quite likely that he'll be surprised when it can't corner as fast as he expected or that a maneuver he's used to using tears the fusilage off the left wing. Someone who is familiar with the mechanical side of flying will be more likely to know the tolerances of the machine he's controlling ahead of time and be able to compensate for its limitations.

A computer user is much less familiar with the mechanics behind their programs because they don't get continual kinetic feedback from the mechanical aspects that might provide clues as to how things work under the hood.


QUOTE (Karaden @ Oct 22 2008, 03:40 AM) *
So, back to computers. Knowladge of code ie for(int i=0;i<5;i++){System.out.println("This is the number " + i)} doesn't help in the slightest when using a program. Go ahead and try it. Open up notepad and see if knowledge of programming helps you in the slightest while using it. It doesn't. What you could do with knowledge of programming and notepad, is write a better word processor, but that has been done. Microsoft Word 2008. Now then, try opening that and see what your programming knowledge does for you. What? Still nothing? Well, perhaps you could improve it some more, then you have Open Office.

Ok, time for the point to my example. What you have done with your programming or 'software' skill isn't use a program better, what you have done is created a new program with a better rating.

Now then, open up Word again. All those buttons on the top sure are confusing aren't they? Shame my knowledge of array lists, if statements, variables, listeners, and even GUI construction doesn't help me in the slightest here. But my 'Computers' skill sure does because that tells me that if I click the windows logo, I get a drop-down bar that I can open files from. It also tells me at a higher skill level that I could have done that with ctrl+O.

Commanding an Agent is fundamentally different from using a word processor. Your examples are bunk. Well, the precise examples are bunk, there is an aspect of manipulating Microsoft Office that is at least comparable to commanding an Agent. Excel.

Unlike a Word Processor, a Spreadsheet does involve using commands to tell your computer to do things for you instead of performing them yourself. People without the Software skill are unfamiliar with creating large chains of interacting logic and will certainly find it harder to something truly complex with a Spreadsheet. A trained software engineer is, however, extremely blase about creating complex logical contravinces because he has skills in similar areas that he can apply to ensure that his algorithms are appropriate.

Just because you can use a GUI doesn't mean you can write as good a character generation spreadsheet as a professional Software Engineer (though they'd likely write an entire program, because they have the skills). Sometimes things just require modes of thought and experience to use properly. The OFFSET function in Excel, for example, rarely finds itself employed by someone who doesn't have experience with using arrays. Someone who is familiar with pseudomultidimensional arrays by implementing the calculations that are inserted on the way to the metal will make better use of it than a highschool dropout that took a three week course in programming.

If you accept my analogy between spreadsheet applications and agents, I believe I ought to have made my point. Else, I don't know, I may give up on you.


QUOTE (Karaden @ Oct 22 2008, 03:40 AM) *
On a side note... anyone else think that people should get a +1 bonus to any program they wrote themselves since they would know every little trick of it and everything would be set up to their exact likings... perhaps this would apply a -1 penalty to anyone else using the program because your stuff is in weird positions and uses weird shortcuts and such.(And you have the option to forgo the bonus and penalty by creating a more general setup.)

I'm not entirely sure I like the implications of being able to write your own major Programs in any time period covered by any Shadowrun game without assistance. If you're constructing it using libraries you've taken from elsewhere then you don't know every little facet of its behaviour, though you'll probably have learnt quite a bit during the testing/debugging procedures. This should still have taken an extremely long time by 'Runner standards.



One or two people actually responded as I intended. Commenting on the worth of idea of limiting high rating automation to people who are likely to already possess the skillset that many people complain it supplants is more the conversational topic I wanted to inspire.
Karaden
I like your spreadsheet analogy, it is in fact better then my word processor analogy.

I think however there is some blur on the line between 'computer use' and 'software' because the fact is, 'computer use' can only get so good before you start having to know code to do anything more useful. I mean, I can't really imagine a person with a 'computer use' skill of higher then... say 2 or 3 that didn't know at least some programing.

It is after all very possible to learn to use spreadsheet with incredible effectiveness without knowing how to actually 'code' anything. Just because you know how to use an array list in Spreadsheet doesn't mean you know the nuances of putting it into say a java program. And just because you know all about array lists from making java programs doesn't mean you know the first thing about how to operate spreadsheet, or even how to make proper use of an array list in said spreadsheet.

I think that all skills have some small level of overlap. If your a really really good driver for example, your likely to know the bare basics about how the mechanics operate, even if opening the hood would grant you nothing more then a look at lots of shiny parts. Similarly a mechanic may not even be able to parallel park, but all his fixing won't do much good if he can't at least figure out how to drive it across the lot to make sure it is running properly. So, even though they may not have the actual skill, some of that knowledge leeches over.

A person who is good with computers may know that adjusting the gamma setting on their favorite game makes it brighter, but they may have no idea what a gamma setting really is. Good example of 'computer use' making use of something from programing, without actually knowing any programing. Same with anti-aliasing and... I don't know, all those other crazy settings. I don't know what exactly they all do, but I know if I fiddle with them I can get my game to run faster without adjusting how it looks all that much.

As for the pure idea of putting a limiter on agents, I thought I'd mentioned that I did like it. And likely 'software' is the best way to go about it, but it just seems like your taking something out of the hands of the skill it should be in. In fact part of me thinks it would be a great idea because software sees so little use otherwise, but part of me also thinks 'your requiring someone to know how to code in order to use a program that someone else coded'


As for the bonus/penalty thing, I was talking more on a slightly higher level. Everyone uses class libraries, they're generally quite stable, but I was talking more about things like customized shortcuts. Perhaps instead of 'open' being buried in the file menu, it is just right there on the main window. And perhaps instead of doing that you can use ctrl+O to open something. That saves you a bit of time, and when hacking at the speed of thought, even such a small amount of change can be very important. Obviously I used examples that are currently common, but when they where first done, only the programmer and some of his(her?) buddies really knew about it and used it naturally. Everyone else still used the old method, which maybe didn't make them worse then before, but what if they where used to ctrl+O doing something else? I actually run into that sometimes, I'll push a shortcut that works in one thing and does something else in another, then I have to close bonus windows I didn't want and then look for the actual thing I was trying to do.
Heath Robinson
QUOTE (Karaden @ Oct 24 2008, 03:14 AM) *
I think however there is some blur on the line between 'computer use' and 'software' because the fact is, 'computer use' can only get so good before you start having to know code to do anything more useful. I mean, I can't really imagine a person with a 'computer use' skill of higher then... say 2 or 3 that didn't know at least some programing.

It is after all very possible to learn to use spreadsheet with incredible effectiveness without knowing how to actually 'code' anything. Just because you know how to use an array list in Spreadsheet doesn't mean you know the nuances of putting it into say a java program. And just because you know all about array lists from making java programs doesn't mean you know the first thing about how to operate spreadsheet, or even how to make proper use of an array list in said spreadsheet.

Software does not cover programming in any particular language. It covers knowledge of how to construct programs, which does not restrict you to any particular method (it's an abstract skill, far more so than the combat skills). One can easily argue that making a complex spreadsheet to accomplish a task is equivalent to programming and, therefore, utilises Software. Both tasks require the composition of logical operations into something that performs a preselected task. This leads to the conclusion that more people have Software than you would expect, even if it's at rating 1. We also have the defaulting mechanic to cover those who are inexperienced at this aspect.

Computer 6 will represent someone who knows every shortcut for every program and every OS. They'll know the interfaces for every program and will have instant reactions to every alert or event. They'd be the kind of person who is capable of telling you the name of the function you need on a spreadsheet but unless they have Software they would take far longer to do anything complex with a spreadsheet application, because they lack the experience and thought patterns that allow them to combine them to achieve their intended goal.

What I mean to say is that there is more to Software than knowing Java. It's more about how you use Java than knowing the language itself. For example, I have a reasonably good rating in Programming Languages (a knowledge skill), but a lower rating in Software. I know how to write in quite a few programming languages but I'm nothing special so far as programming goes. Active skills are about processes instead of knowledge; Long Arms doesn't give you the knowledge to pick the right calibre for hunting Buffalo, that's a Big Game Hunting knowledge skill.

QUOTE (Karaden @ Oct 24 2008, 03:14 AM) *
I think that all skills have some small level of overlap. If your a really really good driver for example, your likely to know the bare basics about how the mechanics operate, even if opening the hood would grant you nothing more then a look at lots of shiny parts. Similarly a mechanic may not even be able to parallel park, but all his fixing won't do much good if he can't at least figure out how to drive it across the lot to make sure it is running properly. So, even though they may not have the actual skill, some of that knowledge leeches over.

A person who is good with computers may know that adjusting the gamma setting on their favorite game makes it brighter, but they may have no idea what a gamma setting really is. Good example of 'computer use' making use of something from programing, without actually knowing any programing. Same with anti-aliasing and... I don't know, all those other crazy settings. I don't know what exactly they all do, but I know if I fiddle with them I can get my game to run faster without adjusting how it looks all that much.

I think your first example is of someone who has taken a rating 1 in the Automotive Mechanics skill, the second is someone who has only rating 1 in Pilot Ground Vehicle but has a high rating in Automotive Mechanics.

Modifying gamma is not at all relevant to controlling an Agent, though.

QUOTE (Karaden @ Oct 24 2008, 03:14 AM) *
As for the pure idea of putting a limiter on agents, I thought I'd mentioned that I did like it. And likely 'software' is the best way to go about it, but it just seems like your taking something out of the hands of the skill it should be in. In fact part of me thinks it would be a great idea because software sees so little use otherwise, but part of me also thinks 'your requiring someone to know how to code in order to use a program that someone else coded'

After some thought, I'd like to introduce an additional line of argument. This is a distillation of past arguments in a form that may be more easily understandable. An Agent is like a spreadsheet application; it is fundamentally impossible to predict the use it'll be put to by the user because it's incredibly general and its focus is on automation, meaning it cannot rely on human input in processing the data. It will have a set of premade commands that apply to generally useful situations, but to make the best use of the program you have to customise it yourself to fit the situation you intend to use it in. It has a "find data" template, just as a spreadsheet has an "accounts book" template, but you can often improve on it by modifying it (which will take Software to understand and implment).

Perhaps a more palletable alternative would be to give boni to Agents being commanded by people with the Software skill if they spend time working on the command logic (i.e. a Software-based extended test for a buff until the next set of orders).

Honestly, the idea initially came from a Matrix rewrite I was working on where Agents no longer existed (alongside many other programs that I felt did not add much to the game, or could be folded into another program easily). Instead, all automation would be single purpose scripts/programs that you would be required to write yourself or rely on the complicity of the GM (which puts the onus on the GM to control the accessability of automated hacking).

QUOTE (Karaden @ Oct 24 2008, 03:14 AM) *
As for the bonus/penalty thing, I was talking more on a slightly higher level. Everyone uses class libraries, they're generally quite stable, but I was talking more about things like customized shortcuts. Perhaps instead of 'open' being buried in the file menu, it is just right there on the main window. And perhaps instead of doing that you can use ctrl+O to open something. That saves you a bit of time, and when hacking at the speed of thought, even such a small amount of change can be very important. Obviously I used examples that are currently common, but when they where first done, only the programmer and some of his(her?) buddies really knew about it and used it naturally. Everyone else still used the old method, which maybe didn't make them worse then before, but what if they where used to ctrl+O doing something else? I actually run into that sometimes, I'll push a shortcut that works in one thing and does something else in another, then I have to close bonus windows I didn't want and then look for the actual thing I was trying to do.

HCI will have advanced to cover this kind of thing and UI standards will have emerged to cover it as well. Honestly, I've never been much of a fan of the trope that something you've crafted yourself is automatically better than something built by another person. I'd actually be more comfortable applying a penalty to someone using an unfamiliar program, with the caveat that building your own program gives you familiarity with it automatically. Same goes for an unfamiliar OS as well, for double-penalty fun.
Pendaric
Well Dumpshock par for the course.

Mr Robinson, you have furbished us with a interesting topic of thought and almost immediately you are critacally beseiged. May I redress the balance by adding my vioce to the spares encouragement, by praising your sharinging a potential useful rule mechanic and utilising your creativity for the community as a whole.

The concept, while perhapes not fully formed, will now continue to be asiallied in the forge of dissectional analaysis where you must justify everything to your ever so polite fellow dumpshockers for the communal good.

Your efforts are recognised and appreciated.

CoyoteNZ
Sort of off topic, sorry, but...


QUOTE (Heath Robinson @ Oct 26 2008, 08:08 AM) *
Long Arms doesn't give you the knowledge to pick the right calibre for hunting Buffalo, that's a Big Game Hunting knowledge skill.



is this strictly true?

Using a different example, caculating the amount of explosives you need to blow someting up uses an Active skill, not a knowledge skill.

While I understand that it would make sense that knowledge woud make sense, to work out how much explosices you need to blow somethig up is active...


QUOTE (Arsenal PG 93)
The gamemaster (not the player of the character doing the demolitions) now rolls a Demolitions + Logic Test for the character.



Sorry for bringing it up, but the crossover of Active and Knowledge skills always confuses me personally.

Why do I need Skillwires to use the 'Software' skill to programming something esp. when in full VR which I would assume would be the place to program.


Max,
Dunedin, NZ
damaleon
I can see a house rule using Computer as a requirement for controlling agents loaded to your commlink (and counting against your program limit) and Software for remote agents (running on a different node as described on SR4 p227-228).

For an agent under direct control most commands are simple, like "attack that persona" or "decrypt that datafile", and are more related to knowing the right menu option than how to properly sytax a CASE statement.

For remote agents, many desired results require more than 1 simple command to get it done. I see it more as creating a state diagram of IF/THEN, CASE, and other statements that allow the Agent to make an evaluation, which then results in a pre-determined command. Knowing how to code would allow you to set better limits, qualifiers, and requirements, thereby allowing the Agent to "decide" on the proper course of action. The better defined, the less likely the agent will get confused and halt operation.

I'd also include Logic in any calculation, as a Logic 2 script kiddie and Logic 6 engineer can make entirely different use of the Electronics group at a 2 skill rating. It could be something like limiting effective Agent rating, to (Logic + Skill)/2 rounded up, as an analog to System limiting all programs and Response limiting System. Say you had a rating 6 Agent, Logic 4, and skill 3; you would be limited to an effective rating of 4 for the Agent, but it could still use the programs at rating 6, and run remotely with 17 programs loaded without additional penalty(at 18 programs it become a rating 3 Agent). In this manner, an intelligent person with no computer or software skills can still instruct an Agent relatively well, but knowledge of the software and how to operate it can make a big difference. This would also require you to have Exceptional Attribute or Aptitude to make use of rating 7 Agent (assuming the GM allows PCs to get or create programs beyond rating 6).

For yet another comparison, look at a Formula 1 team. Many good drivers know very little about how the car actually works. Most of the best know a good deal about how they work. Both can describe when something doesn't feel right in the handling or sound right at certain RPMs, but the ones that know how the car works can usually do it better. The first might say "there's a strange sound coming from the engine" while the second could pass along "the engine timing is off", a mechanic will fix it both times, but it's done a lot quicker in the second case (as long as the driver was right).

As for locking agents to a task, I've seen that done a couple groups. Usually the player has to select (Rating x 1.5 round down) programs that can be run at full rating. Other programs can be operated, but dice pools are cut in half (also rounded down). It promotes focused purposes for agents, but still lets you use them for other than the intended purpose at a reduced effectiveness, i.e. a search agent could be loaded with an attack program it would be limited to 6 dice at best.
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