User:Barticus88/Sisyphus

From Wikipedia, the free encyclopedia

/*

[edit] Short Instructions

1. Don't tell the admins we're playing games on Wikipedia!
2. Go to Special:Mypage/monobook.js (or skin.js) and add this line exactly:

importScript('User:Barticus88/Sisyphus');

3. Come back to this page
4. Do a reload/refresh for your browser (ctrl-shift-R, or ctrl-F5)
5. On the tab bar above, after the word "discussion", you should now see the letter "s". This will be on the same tab as "discussion" or a separate one depending on your browser. Click that "s" to start the game loading.
6. It takes a while to load, so do all of the above before reading the long instructions.

[edit] Long Instructions

  • Don't tell the admins we're playing games on Wikipedia!
  • There is a stern warning when you go to edit Special:Mypage/monobook.js. The warning is sensible, and if you have never edited monobook.js before, it's scary. All I can say is that any JavaScript you add to monobook.js, even if you got it from Wikipedia:WikiProject User scripts, might take over your computer, destroy Wikipedia and lead to the end of the world as we know it. You just met me, and I'm breaking Wikipedia rules by hosting a game here. Don't you trust me?
  • Yes, this is  Sisyphus , the old BBS RPG, retooled to run in JavaScript.
  • It's really still a command line interface; the click buttons are just shortcuts to common commands. Type or click "help" for a list of commands, type "help foo" for help on command foo. Help is context sensitive. Type "help all" to list commands that are not available in context.
  • Last time, the admins shut us down in less than two hours. This time I think I caught a good timing window that will keep us for for 24 hours or even a bit more. However, under no circumstances will you be playing this character tomorrow! People spend hours, even days generating characters for this game, but that's when you're going to play for months (or years). Therefore character generation is now random except for two attributes: Gender and tribe.
    • Gender: Select "male" or "female". This only effects pronouns in some messages. There's no gay/bi/transgendered options, because there is no sex in this game at all. You are killing monsters and completing quests, not cruising bars.
    • Tribe: The tribe names have been set to Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. There are no differences among the tribes. The only reason I'm letting you select tribes is so you can be in the same tribe as a friend. If you are playing alone, please choose "random tribe".
    • Tribal chief: The first person in a given tribe is the tribal chief, and essentially that person's PC is a server for "tribe based actions". If the tribal chief quits the game, someone else becomes chief, and others in the tribe may notice a pause of a few seconds while it connects to the new chief. There are no tribal governments, but the tribe stuff is deep in the code and I'm not going to hack at it. I don't see any game difference for the tribal chief; if you find one take advantage of it.
  • Tasks: I am not familiar with the all the many tasks, so I didn't want to modify the test set. All the tasks are available. If you want to go on something long like a LifeQuest of Apprenticeship, I am not stopping you, but remember under no circumstances will you be playing this character tomorrow!
  • If you followed the short instructions, and started Sisysphus loading before reading these long instructions, the game should be almost finished loading by now. Don't tell the admins we're playing games on Wikipedia, and have fun playing  Sisyphus .

[edit] Sisyphus Code

*/
function sisyLoop (Sisyphus) {
    ct  = eval(Sisyphus.count);
    pct = eval(Sisyphus.pct);
    if (pct >= 100) {
        pct = -999;
        minion = eval('Sisyphus.minion'+Sisyphus.count);
        Sisyphus.count = (ct+1).toFixed();
        while (!minion) {
            ct = Math.floor(ct*Math.random());
            minion = eval('Sisyphus.minion'+ct.toFixed());
        };
        mparts = minion.split(",");
        Sisyphus.mtimer = mparts [0];
        Sisyphus.mchunk = mparts [1];
        Sisyphus.mstring= mparts [2];
    };
    mtimer  = eval(Sisyphus.mtimer);
    mchunk  = eval(Sisyphus.mchunk);
    mstring = Sisyphus.mstring;
    pct = Math.min(100,Math.max(0,pct,pct+mchunk-((20+ct)*Math.random()/3)));
    Sisyphus.pct = pct.toFixed(2);
    Sisyphus.innerHTML = mstring+' '+Sisyphus.pct+'%';
    setTimeout('sisyLoop(Sisyphus)',eval(mtimer));
};
function sisyFunc () {
   Sisyphus = document.getElementById ('Sisyphus-id');
   if (!Sisyphus) {
       culture = 'ril F';
       Sisyphus = document.createElement("div");
       Sisyphus.id = 'Sisyphus-id';
       Sisyphus.style.backgroundColor = "yellow";
       Sisyphus.style.fontSize = 'larger';
       Sisyphus.innerHTML = 'Play SISYPHUS';
       body = document.getElementById('bodyContent');
       body.insertBefore(Sisyphus,body.childNodes[0]);
       culture += 'oo';
       Sisyphus.minion0 = '1000,12.3,Loading Sisyphus';
       Sisyphus.minion1 = '1000,12,Initiating Sisyphus';
       Sisyphus.minion2 = '1000,18,Loading interface';
       Sisyphus.minion3 = '1000,18,Initiating interface';
       Sisyphus.minion4 = '2000,49,Loading GUI';
       Sisyphus.minion5 = '4000,42,Initiating GUI';
       Sisyphus.minion6 = '200,33,Loading Sisyphus';
       Sisyphus.minion7 = '600,18,Loading atlas';
       Sisyphus.minion8 = '200,17,Loading attributes';
       Sisyphus.minion9 = '200,9,Loading characteristics';
       Sisyphus.minion10= '300,26,Loading dictionary';
       Sisyphus.minion11= '200,22,Loading equipment';
       Sisyphus.minion12= '1000,22,Loading task set';
       Sisyphus.minion13= '1000,18,Loading task manager';
       Sisyphus.minion14= '600,16,Initiating task manager';
       Sisyphus.minion15= '300,44,Loading Sunday';
       Sisyphus.minion16= '300,43,Loading Monday';
       Sisyphus.minion17= '300,42,Loading Tuesday';
       Sisyphus.minion18= '300,44,Loading Wednesday';
       Sisyphus.minion19= '300,21,Loading Thursday';
       Sisyphus.minion20= '300,41,Loading Friday';
       Sisyphus.minion21= '300,43,Loading Saturday';
       Sisyphus.minion23= '100,38,Loading Sisyphus';
       Sisyphus.minion24= '3000,30,Connecting to interface';
       Sisyphus.minion25= '3000,27,Loading interface dependencies';
       Sisyphus.minion26= '200,11,Initiating interface dependencies';
       Sisyphus.minion28= '2000,120,Detecting arena platform';
       Sisyphus.minion29= '1400,32,Connecting to arena platform';
       Sisyphus.minion30= '2000,55,Connecting to GUI';
       Sisyphus.minion31= '1400,120,Connecting to Sunday';
       Sisyphus.minion32= '300,120,Connecting to Monday';
       Sisyphus.minion33= '1600,120,Connecting to Tuesday';
       Sisyphus.minion34= '700,120,Connecting to Wednesday';
       Sisyphus.minion35= '200,120,Connecting to Thursday';
       Sisyphus.minion36= '400,120,Connecting to Friday';
       Sisyphus.minion37= '1200,120,Connecting to Saturday';
       Sisyphus.minion50= '100,200,Ap'+culture+'l!';
       Sisyphus.minion60= '200,100,Ap'+culture+'l!';
       Sisyphus.minion70= '100,50,Ap'+culture+'l!';
       Sisyphus.minion80= '100,50,Ap'+culture+'l!';
       Sisyphus.minion90= '1000,50,Ap'+culture+'l!';
       Sisyphus.minion99= '100,15,Ap'+culture+'l!';
    };
    Sisyphus.pct = '999';
    Sisyphus.count = '0';
    setTimeout('sisyLoop(Sisyphus)',4000)
};
addOnloadHook( function (){
    if (window.location.href.indexOf ('User:Barticus88/Sisyphus') < 0) return;
    if(!(tbtn = document.getElementById('ca-talk')) ) return false;
    tbtn.innerHTML += '<a onclick = "sisyFunc();" ' 
            + 'title = "Play it!">S</a>';
});