Talk:Traveling Merchant

Several new items added to him including pets THAT HAVE NOT BEEN added

Is it just me or are some of the inventory items not displaying? I see them in the code when I hit "Edit" but the rows don't show up when I view the page. Specifically the last four on the list: Pad Thai, Gi, Magic Hat and Fancy Dishes. Anyone know what's up? Summoningdark (talk) 14:16, 14 February 2014 (UTC)

So I've had the merchant spawn twice, once near the center of the map where spawn is (promptly fell into lava and died), and another at the edge of the map near a pirate ship I built. I think this NPC spawns near other NPCs, rather than near spawn. Can a few other people confirm/disprove this? --Bluemofia (talk) 21:52, 19 February 2014 (UTC)

The probability for the merchant spawning doesn't make sense. For example, If something has a 1/20 chance of spawning and it has 10 chances to spawn, the probability of it spawning is not 1/20 * 10 = 1/2 or 50%. If that were true, then the probability of it not spawning (19/20) would be 19/20 * 10 = 19/2, or 9.5, or 950%. The proper way to calculate the probability is to take the probability that it will not spawn and raise that to the number of spawn chances. aka, (19/20)^10. then, subtract it from one to find the probability of spawn. 1-(19/20)^10 = 0.401 (ish) or about 40%. The same calculation for the given probabilities gives us 1 - (10,799/10,800)^27,000 = 0.9179 or about 92% chance of happening. So, unless the traveling merchant spawns over 90% of the time, something is wrong in the number of chances or the probability per second.


 * It's 1 in 108,000 -- not 1 in 10,800. You left off a zero (unless that was the result of dividing by 10 somewhere in there). For reference, the roll code is this:

if (Main.dayTime && Main.time < 27000.0) {	int num4 = (int)(27000.0 / (double)Main.dayRate); num4 *= 4; if (Main.rand.Next(num4) == 0) {		int num5 = 0; for (int i = 0; i < 200; i++) {			if (Main.npc[i].active && Main.npc[i].townNPC && Main.npc[i].type != 37) {				num5++; }		}		if (num5 >= 2) {			WorldGen.SpawnTravelNPC; }	} }
 * Main.dayRate is always 1. num4 is 27,000, and num4 *= 4 makes num4 into 180,000. Main.rand.next(num4) picks a random number with num4 as the max, and if that random number is zero, SpawnTravelNPC runs (if the check for prerequisite NPCs succeeds). My understanding is that this code runs once per tick, which is 1/60th of a second. This code is from Main.cs. It's possible I'm reading this wrong but in my experience playing the game, the 1 in 4 chance appears to hold true.  Equazcion ( talk ) 22:58, 14 Mar 2014 (UTC)


 * PS. Main.daytime means it is currently a time between dawn and nightfall, and Main.time is the number of ticks since the last dawn or nightfall. There are 54,000 ticks per day (dawn to nightfall), and Main.time being less than 27,000 means "before the daytime halfway point", which would be "before noon" (daytime starts at 4:30am in Terraria).  Equazcion ( talk ) 23:03, 14 Mar 2014 (UTC)

still the chance of him spawning is: 1-(1-1/108000)^27000 =22,12%
 * I don't understand why you would multiply that chance by itself 27000 times. Shouldn't that be (1-(1-1/108000))*27000 = 25%. The chance of 1/108000 is rolled 27000 times, which makes it a 25% chance for the entire morning.--Dragon3025 (talk) 23:34, 1 April 2019 (UTC)

How come the Horned God set isn't here? I saw on the page of the set the Traveling Merchant sold it but I don't see it here, unless I'm blind. I4k1c (talk) 16:06, 4 November 2020 (UTC)

Correct pagename
I have no idea how to properly use Wikitext, but surely since the game uses the spelling, "Travelling Merchant", rather than the Americanised "Traveling Merchant", surely the pagename should do likewise? The pagename should not be based off the geographical location of the author, it should be about correct in-game information.
 * The preferred procedure for changing the pagename would be moving the page to the new title. As the page Travelling Merchant however already exists (it being a redirect to Traveling Merchant) it would however have to be deleted first so the other page can take its place. This can only be done by an admin. I fully agree with your suggestion and will ask an admin to fix it. NoseOfCthulhu (talk) 01:53, 2 June 2014 (UTC)
 * Gonna disagree there. If this were an original proper name I'd agree that the misspelling could've likely been intentional, and/or if British spellings were remotely common in any other area of the game. I could also see cause if it were within a quote from a character's dialog or a tooltip. This is a clear misspelling of a common word, and even though it coincides with an existing alternate form, there's not much reason to say that was the intent.  Equazcion ( talk ) 01:52, 7 Jun 2014 (UTC)
 * And that having been said, I'd rather it get changed than start a whole thing about this, so if everyone here disagrees with me then just change it.  Equazcion ( talk ) 01:53, 7 Jun 2014 (UTC)
 * Intersting thing when looking at the source code. On one place its written as "Travelling Merchant", and on another place it is spelled as "Traveling Merchant". Considering there is no consistent way of naming inside the game, I'm leaving it with the american spelling, considering that that is the standard for this wiki. --0icke0 (talk) 07:41, 7 June 2014 (UTC)

Not a kid nor a squid
So, I’m pretty sure that this painting’s name comes from Splatoon. Could someone add that possibly? Ninjaboy3827 (talk) 22:13, 13 December 2019 (UTC)

Birdie Rattle
In 1.4 I found the travelling merchant selling an item named the birdie rattle.

Birdie Rattle Equipable Summons a baby harpy ‘Not for your everyday cocktail’ Buy price: 1 platinum 15 gold

Sadly I could not buy it, but I got a screenshot on my computer. If I remember to, I’ll reply to this with the photo. Birdboi8 (talk) 01:16, 17 May 2020 (UTC)

Couple Accessories and maybe more missing.
I found a few vanity items that aren't in the list. I don't know how to calculate rarity or anything like that, just wanted to update some stuff existing. I'm also playing Journey mode, if that might affect things.

Edit: Screenshots were deleted. I can add them later, it's about six items.

New Quotes in 1.4
I've been talking to the Travelling Merchant and I have seen him say 2 new quotes (for context he was in a pre-hardmode world in which only EoC's been defeated and in the underground while it's windy in the same town as the demolitionist and I had the guide, golfer, merchant, zoologist, nurse and the demolitionist.) -"I go where the wind takes me, but this is ridiculous!" -"I would sell you exotic wind socks, but I'm afraid I forgot to stock them!" 86.166.120.189 08:28, 21 May 2020 (UTC)

Fixed bug?
From the current page, added back on the 26th of May: "In Journey mode, if you pause time when it's between 4:30 AM and 12:00 PM, the Traveling Merchant will instantly spawn (provided all the conditions are met, i.e. at least two NPCs are present and no invasion is happening)."

Counterpoint: no, they don't. I'm guessing this was either a bug in an earlier version that was been fixed in 1.4.0.5 without being mentioned in the changelogs, or, it's a rare bug the submitter had, and they posted about it without checking if it worked for everyone. (Or, it does work for everyone, and I'm the one with the bug, not them.) Has anyone else actually tested this? Ade (talk) 19:39, 15 June 2020 (UTC)

I looked, and it was noted on the logs for version 1.4.1 as: "Fixed an issue with Traveling Merchant spawning when time was paused with Journey powers" So... there goes that. RIP. MeggalBozale2 (talk) 00:42, 19 October 2020 (UTC)

Shouldn't Lawn Flamingo be listed here?
He sells it yet it is not listed here. I have no idea how rare it is though so I wouldn't know where to add it. Monando3 (talk) 14:14, 1 July 2020 (UTC)

Spawning algorithm changed in 1.4.1?
Looking at  for Desktop 1.4.1 reveals that the algorithm for spawning the travelling merchant is completely different from what the wiki suggests it to be:

else if (!fastForwardTime && dayTime && time < 27000.0) { int num5 = dayRate; if (num5 < 1) num5 = 1; int num6 = (int)(27000.0 / (double)num5); num6 *= 4; if (rand.Next(num6) == 0) { int num7 = 0; for (int j = 0; j < 200; j++) { if (npc[j].active && npc[j].townNPC && npc[j].type != 37 && npc[j].type != 453) num7++; }        if (num7 >= 2) WorldGen.SpawnTravelNPC; } }

It seems that the travelling merchant cannot spawn at all now if you're in a bed, and that it is a simple percentage-per-tick chance of him spawning under the correct conditions, proportional to your time speed (min. 1, so he still spawns when time is frozen, as if time was not frozen).

67.249.91.105 21:42, 10 March 2021 (UTC)