Still... even in C+ that does seem a bit extreme. I could see a C+ court sentencing someone to death over theft on a really conservative day, but not over B+E only.
But looking at the code, I don't think it should be possible to be sentenced to death for breaking and entering. If I'm reading this right, the only crimes which can result in the death penalty are murder, treason and flagburning at C+ laws. I believe these are the relevant sections:
if(!lenient&&((g.lawflag[LAWFLAG_MURDER])||(g.lawflag[LAWFLAG_TREASON])||
((g.lawflag[LAWFLAG_BURNFLAG])&&law[LAW_FLAGBURNING]==-2)||
law[LAW_DEATHPENALTY]==-2))
{
if(law[LAW_DEATHPENALTY]==-2)g.deathpenalty=1;
if(law[LAW_DEATHPENALTY]==-1)g.deathpenalty=LCSrandom(3);
if(law[LAW_DEATHPENALTY]==0)g.deathpenalty=LCSrandom(2);
if(law[LAW_DEATHPENALTY]==1)g.deathpenalty=!LCSrandom(5);
if(law[LAW_DEATHPENALTY]==2)g.deathpenalty=0;
}
...which I believe checks for a capital offense and then gives a chance of 100% (C+), 33% (C), 50% (M), 20% (L) or 0% (L+) chance of setting deathpenalty to true (1 is true).
if(g.deathpenalty)
{
g.sentence=3;
set_color(COLOR_RED,COLOR_RED,1);
move(7,1);
addstr(g.propername);
addstr(", you are sentenced to DEATH!");
refresh();
getch();
set_color(COLOR_WHITE,COLOR_BLACK,0);
move(9,1);
addstr("The execution is scheduled to occur three months from now.");
refresh();
getch();
}
and this will sentence you to death if g.deathpenalty was set to true ("1") in the previous section.
So I think it's a bug that you got sentenced to death. But I might be misreading this or it could be outdated (got it off the LCS wiki src download.) And I'm not exactly sure what "=!LCSrandom(5)" means in the L case of the first section. I think it should be "=LCSrandom(5)" which would set the preceding bit to a liberally random number between 1 and 5 (LCSrandom returns a random number up to the input). So maybe that could create this bug if deathpenalty law was L?