According to Book of Exalted Deeds, how to choose between two evils?

The Book of Exalted Deeds says that evil means used to prevent greater evil cannot be used by good characters, and says:

Some good characters might view a situation where an evil act is required to avert a catastrophic evil as a form of martyrdom: “I can save a thousand innocent lives by sacrificing my purity.” […] After all, it would simply be selfish to let innocents die so a character can hang on to her exalted feats. Unfortunately, this view is ultimately misguided. […] What the character sees as a personal sacrifice is actually a shift in the universal balance of power between good and evil, in evil’s favor, thus it is not a personal sacrifice, but a concession to evil, and thus unconscionable.


Good ends might sometimes demand evil means. The means remain evil, however, and so characters who are serious about their good alignment cannot resort to them, no matter how great the need.

However, standing by while a catastrophic evil happens, while doing either nothing or attempting a good scheme with very little chance of success, seems to be evil as well.

There is guidance in the book that exalted campaigns shouldn’t force PCs to choose between two evils, but what are the characters supposed to do if it happens anyway? Or, what are non-player good characters supposed to in those situations?

Despite all of that text, it still seems that the least evil thing to do would be to actually perform the evil act. Is that the right interpretation?

Is employer full access to employee data according to EU law?

The computers at the company I work for recently show the message below during log on.

This computer system is the property of Company. It is for authorised use only. All activities conducted on and information accessed, processed, stored or sent using this system may be examined. By using this system, all users aknowledge notice of, and agree to comply with, the Company IT Acceptable Use standard. Unauthorised or improver use of this system may result in disciplinary action. By continuing to use this system you indicate your awareness of and consent to these terms and conditions of use. Log off immediately if you do not agree to the condictions stated in this warning.

Is the statement legal according to European regulations?

Besides, it is my work computer, it is not that I have an option not to log on.

How is the power of a magic item measured according to the rules?


The DMG states a relation to a magic item’s power, it’s rarity, and character level.

Rarity provides a rough measure of an item’s power relative to other magic items. Each rarity corresponds to character level..

It follows up immediately with an example

A character doesn’t typically find a rare magic item, for example, until around 5th level.


The rules seem to have some sort of definition of what power means. What is it?


A number of questions seem predicated on estimating the power of a magic item. E.g:

  • Is item rarity really tied to how powerful it is?

  • How can I balance the power of loot between players?

How to make sure a swapfile is on the external HDD after it is mounted and not before in the according directory?

I want to put the swapfile on an external HDD which is mounted on startup.

My /etc/dphys-swapfile is


and my /etc/fstab is

UUID=... /home/shares ext4 rw,auto,defaults,nofail,x-systemd.device-timeout=3 0 2 

The swap.file gets placed into the unmounted folder. Apart from the question how bad it is to have a swapfile in a folder that gets a mount afterwards I want to make sure it is not on the SD card (I am running a Raspberry Pi).

Also not sure if a debian question is right for askubuntu, but I think it is more general than just a Raspberry Pi question.

Algorithm for producing array of objects according to optimal distribution

I have a set of objects, and each object has (let’s say) a color. Given a distribution such as:

red : 50% green : 30% blue : 20% 

I need to produce an N-length array of objects with a color distribution as close to this as possible. It is possible that the length of the original list is smaller than N, so duplicates may be required.

Is there an efficient algorithm that might be suited for this kind of task? I imagine there is, but I’m lacking the terminology to find it.

Q: Set Folder’s path according to it’s title in a list with SPFx

I am creating a folder inside a List with the following code:

TypeScript import {sp} from "@pnp/sp";  const shpList =;  shpList.items.add( {   Title: folderName,   FileSystemObjectType: 1,   ContentTypeId: '0x0120',   FileLeafRef: folderName,   DisplayName: folderName } ) 

And it does create the folder, but the navigation displays 130_.000 as the folder. (It’s the item’s ID plus underscore, dot and three zeros)

Is there a way to create the item so it uses the title as the navigation?

Is there any place I can look for the default properties of SharePoint?

Here a list of the properties I have already tested:

  • Name (and name) | value: folderName | result: error (not registered property)
  • FileRef | value: folderName | result: Does not seem to do anything
  • Path (and path) | value: folderName | result: error (not registered property)
  • Folder | value: folderName | result: error (primitive value not null)
  • Url (& url & URL) | value: folderName | result: error (not registered property)

Can Modular Abilities get an extra 10% savings according to GURPS Supers rules if they don’t grant skills?

I want the player characters to have lots of super-powers. For example, I want them to have inexpensive mental Modular Abilities with typically psionic abilities such as Psychokinesis and ESP and Mind Control (but no skills). Modular Abilities cost less if they are only mental. On the topic of Telekinesis, the main rulebook, page B92, says:

Psychokinetic: Your ability is part of the Psychokinesis psi power (see p. 256). This makes it mental rather than physical. -10%

I want to give the players all available savings, but I want to avoid double-dipping by giving the same discount twice.

In a normal campaign, level 10 Telekinesis would cost 50 points as a physical power, but 45 points as a Psychokinetic mental power.

Now let us suppose that the player characters start off with Modular Abilities, mental advantages only. Assume each mental advantage costs 45 points, and only one can be used at a time, so this power is a one-slot modular ability, base cost 5 points, slot cost 3 points per advantage point. $ 5+3\times45=190$ .

I think the basic cost should be $ 190-19=171$ , because the quasimoral power modifier deducts 10%. But I see in GURPS Supers, p. 46, that a wizard can have an extra 10% savings due to “mental advantages only” (i.e. no skills are allowed). So perhaps the basic cost of this mental slot should be 152.

[Question: which is more appropriate, 171 points or 152 points?]

Color of line in ParametricPlot according to indepedent variable

I solve a set of pdes numerically using NDSolve:

ic1[x_, y_] := Which[x < 3 && y < 3, 6, True, 0] ic2[x_, y_] := Which[x < 3 && y < 3, 0.5, True, 1/c11] sol = NDSolve[{D[pp[t, x, y], t] ==  0.05*Laplacian[pp[t, x, y], {x, y}] +   pp[t, x,     y]*(1 - c11*pp[t, x, y] - z[t, x, y]/(1 + pp[t, x, y]^2)),  D[z[t, x, y], t] ==  0.05*Laplacian[z[t, x, y], {x, y}] +   z[t, x, y]*(eps*pp[t, x, y]/(1 + pp[t, x, y]^2) - m), (D[    pp[t, x, y], x] /. x -> 0) ==  0, (D[pp[t, x, y], y] /. y -> 0) ==  0, (D[z[t, x, y], x] /. x -> 0) ==  0, (D[z[t, x, y], y] /. y -> 0) ==  0, (D[pp[t, x, y], x] /. x -> 20) ==  0, (D[pp[t, x, y], y] /. y -> 20) ==  0, (D[z[t, x, y], x] /. x -> 20) ==  0, (D[z[t, x, y], y] /. y -> 20) == 0, z[0, x, y] == ic1[x, y],  pp[0, x, y] == ic2[x, y]}, {pp, z}, {t, 0,  100} {x, 0, 20}, {y, 0, 20}]; 

First of all, evaluation over a long time interval does not work. Can I do something to export only certain time steps to save memory or something?

Furthermore, I want to plot the results of a certain point in space (x,y) in a parametric plot. I can do this with the following code:

ParametricPlot[ Evaluate[{pp[t, 4, 4], z[t, 4, 4]} /. sol], {t, 0, 100},  PlotRange -> {{0, 2}, {0, 4}}, AxesLabel -> {p, z},  PlotStyle -> {Thickness[0.002]},  ColorFunction -> {Function[{x, y, t}, Hue[t]]}] 

However, I find it hard to link the Hue-Colors to the temporal evolution. I would prefer a color gradient with changing opacity or some temperature (CoolWarm) scale or something. How can I do this? I thought this should be quite straight forward but I didn’t find anything about it the last days.

Thank you!

Ranking items according to their position within a list and their display time within this list

I’ve build a scraper that gathers articles on a the main page of a news website every 15 minutes (this website really looks like Google News). I give those articles a kind of weight based on their ranking on the main page, and I also monitor their display time on this main page.

So, for instance:

  • During its first run started at time T1, the scraper collects article A, article B and article C. A appears first on the main page of the news website, and is followed by B and C. I give A a score of 3, B a a score of 2 and C a score of 1 (score = number or items within the list – index, the list is zero-indexed).
  • 15 min later, at time T2, the scraper collects article D (a new article at 1st position), followed by A and B (C does not appear on the list anymore). Thus D score = 3, A score = 3 (score obtained during the scraper’s first run) + 2 (score obtained on the second run), B score = 2 + 1.
  • At this point, I know that A & B have probably been displayed at least for 15min on the main page so I give them a display time of 15 minutes.
  • Third run, time T3: B is still there, at the third position. All the other articles are gone from the main page. So B score = 2 + 1 + 1 and display time = 15 min + 15 min.

I’d like to devise an algorythm that would allow me to say with certainty which articles have been the most visible during a given time period (most visible = displayed the most and at the highest position on the main page during the time period).

I thought of calculating score of the article / number of times my scrapper has run on the time period (which is a (timedelta / 15) + 1, since my scrapper runs every 15 min after it is launched), but this is not satisfying if I want to give more importance to the display time.

For instance, with the case described above, I have T3 – T1 = 30 min, script ran (30/15+1=3 times). Score of the article / number of times my scrapper has run on the time period would give 5/3 for article A and 4/3 for article B. So A has been more “important” over those 30 min.

Now imagine I run the script a 4th time and it still finds B at the third place on the main page. That would give A a score of 5/4 and B a score of 5/4 as well. However, one can argue they don’t have the same importance, as B could be seen on the main page for 45 min straight while A just sat there for 15 min (at a better place, though).

Do you have any piece of advice to improve the way I calculate the importance score of each article? Sorry for the long post, I know this is basic maths but I’m a bad student 😉