A-Dark-Room

神秘流浪者多久返還一次戰利品?

  • January 5, 2021

有時,一個神秘的流浪者會來找木頭或毛皮。他們說如果你給他們(100 或 500),他們會回來更多。這種說法多久是真的?建造者不確定他們是否值得信任。

取自維基

神秘的流浪者:木頭

一個神秘的流浪者帶著一輛手推車來到這裡。他要木頭,並承諾會帶回更多。玩家可以選擇忽略它們,給予 100 根木頭有 50% 的機率在 1 分鐘內收到 300 根木頭,或者給予 500 根木頭有 30% 的機率在 1 分鐘內收到 1500 根木頭。

神秘的流浪者:毛皮

一個神秘的流浪者帶著一輛手推車來到這裡。她要毛皮,並承諾會帶回更多。玩家可以選擇忽略它們,給予 100 毛皮有 50% 的機率在 1 分鐘內收到 300 毛皮,或者給予 500 毛皮有 30% 的機率在 1 分鐘內收到 1500 毛皮。

摘自github上的程式碼:

房間活動程式碼

從程式碼中我們可以看出

  • 給予 100 木材/毛皮有 50% 的機會返回 300。
  • 給予 500 木材/毛皮有 30% 的機會返回 1500。

以下是相關程式碼:

{ /* Mysterious Wanderer  --  wood gambling */
   title: _('The Mysterious Wanderer'),
   isAvailable: function() {
       return Engine.activeModule == Room && $SM.get('stores.wood');
   },
   scenes: {
       start: {
           text: [
               _('a wanderer arrives with an empty cart. says if he leaves with wood, he\'ll be back with more.'),
               _("builder's not sure he's to be trusted.")
           ],
           notification: _('a mysterious wanderer arrives'),
           blink: true,
           buttons: {
               '100wood': {
                   text: _('give 100'),
                   cost: {wood: 100},
                   nextScene: { 1: '100wood'}
               },
               '500wood': {
                   text: _('give 500'),
                   cost: {wood: 500},
                   nextScene: { 1: '500wood' }
               },
               'deny': {
                   text: _('turn him away'),
                   nextScene: 'end'
               }
           }
       },
       '100wood': {
           text: [
               _('the wanderer leaves, cart loaded with wood')
           ],
           onLoad: function() {
               if(Math.random() < 0.5) {
                   Engine.setTimeout(function() {
                       $SM.add('stores.wood', 300);
                       Notifications.notify(Room, _('the mysterious wanderer returns, cart piled high with wood.'));
                   }, 60 * 1000);
               }
           },
           buttons: {
               'leave': {
                   text: _('say goodbye'),
                   nextScene: 'end'
               }
           }
       },
       '500wood': {
           text: [
               _('the wanderer leaves, cart loaded with wood')
           ],
           onLoad: function() {
               if(Math.random() < 0.3) {
                   Engine.setTimeout(function() {
                       $SM.add('stores.wood', 1500);
                       Notifications.notify(Room, _('the mysterious wanderer returns, cart piled high with wood.'));
                   }, 60 * 1000);
               }
           },
           buttons: {
               'leave': {
                   text: _('say goodbye'),
                   nextScene: 'end'
               }
           }
       }
   }
},

{ /* Mysterious Wanderer  --  fur gambling */
   title: _('The Mysterious Wanderer'),
   isAvailable: function() {
       return Engine.activeModule == Room && $SM.get('stores.fur');
   },
   scenes: {
       start: {
           text: [
               _('a wanderer arrives with an empty cart. says if she leaves with furs, she\'ll be back with more.'),
               _("builder's not sure she's to be trusted.")
           ],
           notification: _('a mysterious wanderer arrives'),
           blink: true,
           buttons: {
               '100fur': {
                   text: _('give 100'),
                   cost: {fur: 100},
                   nextScene: { 1: '100fur'}
               },
               '500fur': {
                   text: _('give 500'),
                   cost: {fur: 500},
                   nextScene: { 1: '500fur' }
               },
               'deny': {
                   text: _('turn her away'),
                   nextScene: 'end'
               }
           }
       },
       '100fur': {
           text: [
               _('the wanderer leaves, cart loaded with furs')
           ],
           onLoad: function() {
               if(Math.random() < 0.5) {
                   Engine.setTimeout(function() {
                       $SM.add('stores.fur', 300);
                       Notifications.notify(Room, _('the mysterious wanderer returns, cart piled high with furs.'));
                   }, 60 * 1000);
               }
           },
           buttons: {
               'leave': {
                   text: _('say goodbye'),
                   nextScene: 'end'
               }
           }
       },
       '500fur': {
           text: [
               _('the wanderer leaves, cart loaded with furs')
           ],
           onLoad: function() {
               if(Math.random() < 0.3) {
                   Engine.setTimeout(function() {
                       $SM.add('stores.fur', 1500);
                       Notifications.notify(Room, _('the mysterious wanderer returns, cart piled high with furs.'));
                   }, 60 * 1000);
               }
           },
           buttons: {
               'leave': {
                   text: _('say goodbye'),
                   nextScene: 'end'
               }
           }
       }
   }
},

引用自:https://gaming.stackexchange.com/questions/269540