summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/commands/ucp.txt38
1 files changed, 37 insertions, 1 deletions
diff --git a/npc/commands/ucp.txt b/npc/commands/ucp.txt
index 2010b2db2..58d873522 100644
--- a/npc/commands/ucp.txt
+++ b/npc/commands/ucp.txt
@@ -17,6 +17,7 @@ function script UserCtrlPanel {
l("Game News"),
l("Account Information"),
l("Change Language"),
+ rif(is_admin() && $@GM_OVERRIDE, l("LoF Merge")),
l("Quit");
switch (@menu)
@@ -64,7 +65,42 @@ function script UserCtrlPanel {
next;
break;
case 4: asklanguage(LANG_IN_SHIP); break;
- case 5: close; break;
+ case 5:
+ mesn "Jesusalva";
+ mesq l("What do you think you are doing, anyway?!");
+ next;
+ mesc l("LoF Username:");
+ input .@userid$;
+ mesc l("LoF Password:");
+ input .@passid$;
+ next;
+ mesc l("Imagine I'm now blacklisting you for a hour with a #VARIABLE. Maybe 3 weekly attempts.");
+ mesc l("Now imagine I just did a SQL query to fetch your account password and salt.");
+ mesc l("For now, I'll assume your salt is... 9, why not.");
+ next;
+ .@pid$=md5(.@passid$);
+ .@slt$=md5("9");
+
+ .@buf$=.@pid$+.@slt$;
+
+ // TmwA Dark Magic is needed
+ // See src/generic/md5.cpp and src/high/md5more.cpp
+ // Remember to move crappy stuff like this to a blackbox
+
+
+ // One final move
+ .@passwd$=md5(.@buf$);
+
+ // For check we can use compare(.@passwd$, "<real password>")
+
+
+ mesc l("Now, your hash might be @@.", .@passwd$);
+ .@userid$="";.@passid$="";
+ mesc l("Of course, this is only some random md5 functions for fun.");
+ mesc l("Actually, this fails without tmwa dark magic.");
+ mesc l("User account safety is at stake, too, so I'll move this crap to a blackbox once done.");
+ break;
+ case 6: close; break;
}
} while (1);
}