4

Sometimes, a mysterious wanderer arrives and asks for wood or fur. They say if you give them (100 or 500), they will come back with more. How often is that statement true? The builder isn't sure that they can be trusted.

5

Taken from the wiki:

The Mysterious Wanderer: Wood

A mysterious wanderer arrives with a cart. He asks for wood and promises to come back with more. The player can choose to ignore them, give 100 wood for a 50% chance of receiving 300 wood in 1 minute, or give 500 wood for a 30% chance of receiving 1500 wood in 1 minute.

The Mysterious Wanderer: Fur

A mysterious wanderer arrives with a cart. She asks for fur and promises to come back with more. The player can choose to ignore them, give 100 fur for a 50% chance of receiving 300 fur in 1 minute, or give 500 fur for a 30% chance of receiving 1500 fur in 1 minute.

Excerpt from the code on github:

Room Events code:

We can see from the code that

  • giving 100 wood/fur has 50% chance to return 300.

  • giving 500 wood/fur has 30% chance to return 1500.

Here is relevant code:

{ /* 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'
                }
            }
        }
    }
},
7
  • So giving more has a bigger chance of a larger amount. – sensiwoo Jun 10 '16 at 13:53
  • ...how much larger?! At 30% for 100, that better be more than 333, and 50% for 500, it better be more than 1000, or that's a negative sum game, completely not worth the expense. – SF. Oct 31 '17 at 5:39
  • @SF - I have updated my answer with data from the source code. (For the browser version of the game) – Caleb Nov 1 '17 at 6:44
  • That would mean giving 100 fur/wood is a positive sum game (50% chance for 300% gain), 500 is negative sum (30% for 150% gain). – SF. Nov 1 '17 at 19:18
  • 1
    @Caleb: no, he is right because you always lose the original "investment". With 100, there is a 50% chance of gaining 200 and a 50% chance of losing 100, for a total average gain of 100. With 500, you have a 70% chance of losing 500 and a 30% chance of gaining 1000, which is an average loss of 50. – Michael Borgwardt Nov 28 '17 at 13:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.