[Showcase/Project] A Compact Fishing Complex and More

see, I just re-read this bit again on the wiki page on happiness
"...for the purpose of calculating distances below, the position of an NPC's home tile is considered instead of the NPC itself, unless the NPC is homeless in which case its actual position is considered. Similarly, biome-related preferences will reference the primary biome where the player is, rather than where the NPC or its home is. "

would this mean that we can set up a similar complex for the purpose of buying things from the npcs to that of PapaBear's fishing complex?
we build a tight area with all the biomes represented and in reach of our private shoppers' temporary abode ^_^
stick each npc in their proximity houses preferences all over the world
and then use a queen's or king's statue to bring them to our one shop spot and get max discounts? the statues don't reassign the housing do they? they only change the location of the npcs?

their distancing and neighbour happiness will be based on their home tile
and their prices will reflect the biome in which we are currently standing?
 
@smeagolheart

yup, it does look like I understand this correctly
I just looked into your fishing test world smeag
if I stand on the desert tile, I get max discount from your arms dealer
if I stand on the hallow and talk to him, then poof, I lose the biome discount

which means when we build our complex, we only have to respect the distancing and neighbour conditions and have a little room to wiggle with the biome requirements
npcs don't have to live in those biomes, WE have to be standing in them, so the preferred biome blocks need to be a character's reach away from the npc you want to interact with
in max reach journey mode that's 17 tiles (just tested it, but I don't know if the reach accessories get added for that), and in classic, you get ... 6 + 3?? maybe?, I'll have to check
 
Statue teleporting wont work because if they are 120 blocks away from their homes they charge full 150% prices.

Ill analize the rules of happiness here:

1) Having more than one other NPC within 25 tiles incurs a 4% penalty.

2) Having one NPC within 25 tiles and no more than three OTHER NPC within 120 tiles gives you a benefit of 10%

3) Biomes gives a benefit or penalty depending on how much they like or dislike a biome ranging from 10% penalty to 10% benefit in 5% increments. Biome is calculated according to the biome the player is in, not the NPC.

Note: the wiki states that the only NPC who LOVES a biome is Santa Claus. All other NPC only like their biomes. As such expect a 5% benefit from preferred biomes.

4) NPC within 25 tiles will give a benefit or penalty depending on their relationship. Same range as Biomes. (Is this dependant on the current location of NPC of the location of their houses

5) If an NPC is over 120 tiles away from their home, in an evil biome or is homeless they get a flat penalty of 50% regardless of other conditions.

6) The maximum benefit one can get is of 25%. The benefit needed for Pylons to be sold is 15%.

7) Final benefit/penalty is rounded up to the nearest 5 interval. 19% becomes 20% and 21% becomes 25%.

Scenarios:

1) NPC lives with another NPC it loves (+10%), with no more than 3 other NPC within 120 blocks (+10%) and the player is within the preferred biome (+5%).
Total: 25%

2) NPC lives with two other NPC it likes (+5% & +5%), theres two NPC within 25 tiles (-4%), and the player is within the preferred biome (+5%).
Total: 11% -> 15%

3) NPC lives with one other NPC it likes (+5%), no more than 3 other NPC within 120 tiles (+10%), and the player is in their preferred biome (+5%).
Total: 20%

4) NPC lives with an NPC it loves and another it likes (+10% & +5%), theres two NPC within 25 tiles (-4%), and the player is within the preferred biome (+5%).
Total: 16% -> 20%


Conclusion: to get the best benefit, you must separate all NPC in pairs and keep each pair within 25 blocks, but make sure that only one pair (or 1 pair and half a pair) is within 120 tile distance. Both NPC must Love each other for the full 25% benefit, otherwise 20% is the maximum you can achieve with NPC who only Like each other. On the other hand, NPC who dont have a mutual partner such as the Tax Collector cannot have above 5% benefit without hurting others happiness.

You can however base an NPC who loves one with another who doesnt care, the have a third who that one likes far enough from the first but close to the second to the the bonus. This can give you a bonus of 25%, 10% and 20% respectively. (Zoologist > Witch Doctor > Dryad)

Chain

Stylist likes the Pirate, End of chain. 20%

Pirate loves the Angler, cares not for Pirate, 11% -> 15%

The Angler sells nothing, preferences ignored.

Golfer loves the Angler, cares not for the Wizard. 11% -> 15%

Wizard loves the Golfer, but cares not for the Party Girl. 11% -> 15%

Party Girl loves the Wizard and the Zoologist. 21% -> 25%.

Zoologist loves the Witch doctor, cares not for the Party Girl. 11% -> 15%

Witch Doctor loves no one, but likes the Guide. 6% -> 10%

Guide sells nothing, ignored.

Truffle loves the Guide and likes the Dryad, 16% -> 20%

Dryad likes Truffle, but has no feelings for the Painter. 6% -> 10%

Painter loves the Dryad, but has no feeling for either the Dye Trader or Steampunker (chain split one to the side the other above or below) 7% -> 10%

Dye Trader likes Painter and Arms Dealer (above). 11% -> 15%
Arms Dealer loves Nurse, cares not for Dye Trader. 11% -> 15%

Nurse loves the Arms Dealer, but cares not for the Merchant. 11% -> 15%

Merchant likes Nurse, end of chain. 20%

The Steampunker likes the Painter and Cyborg. 11% -> 15%

Cyborg likes Steampunker, but cares not for the Mechanic. 6% > 10%.

Mechanic loves the Goblin (below) and likes the Cyborg. 16% -> 20%

Goblin loves the Mechanic, but has no special feelings towards the Tavernkeep. 11% -> 15%

Tavernkeep likes the Goblin and loves the Demolitionist. 16% -> 20%

Demolitionist loves the Tavernkeep. End of chain. 25%



NPC left out: Tax Collector

Resumed:

Stylist> Pirate > Angler > Golfer > Wizard > Party Girl > Zoologist > Witch Doctor > Guide > Truffle > Dryad > Painter > SPLIT

Painter > Dye Trader > Arms Dealer > Nurse > Merchant
Painter > Steampunker > Cyborg > Mechanic > Goblin > Tavernkeep > Demolitionist

Benefits:
10% - 4 NPC
15% - 9 NPC
20% - 5 NPC
25% - 2 NPC

Ousted: Tax Collector can be added after Merchant, but will reduce Merchant benefit to 1% -> 5% and Tax Collector does not benefit from happiness anyways.

Ignored: Guide & Angler dont benefit from happiness, but can help others who do.
 
Last edited:
There was an error, stylist needs the ocean so I need to move her to the pirate end.


FIXED


Given the need to ensure that theres at minimum 13 tiles between NPC for happiness control, I do not recommend combining the fishing complex with NPC happiness housing. Furthermore, various biomes will be repeated (Hallow particularly) or outright excluded (crimson, corruption)

The order of the biomes in the chain is:

Ocean > Ocean > Ocean > Forest > Hallow > Hallow > Forest > Jungle > Forest > Mushroom > Jungle > Jungle > SPLIT

Desert > Desert > Hallow > Forest
Desert > Snow > Snow > Underground > Hallow > Underground

Final note: it might be possible to manipulate the block the NPC stands at night with actuators.

Example:

When needing to buy from Clothier, flip a switch to make the only available space near the Truffle (say 24 tiles from it). When needing to buy from Truffle, flip the switch again to make the Clothier move away from the Truffle (say 26 tiles away from it). This way you can make use of these weird Love-Hate relationships some NPC have.

Tax Collector loves Merchant who dislikes him (useless)
Clothier loves Truffle who dislikes him (cheaper vanity)


Additionally, it can be used to manipulate pairing of ambivalence as well which might be more useful.

Party Girl likes Wizard
When buying from Wizard, flip a switch to move him closer to the Golfer which he loves instead of the Party Girl.
When buying from Golfer, move the Wizard away from him.


With this method it might be possible to reach the maximum of 20-25% on all NPC.

However, the distance between all NPC will need to be 26 at minimum in order to do this.
 
Last edited:
oh myyy, THANK you Neo, for listing the conditions so clearly in point form. It's much easier to work the logic with that to hand !
and awesome job figuring out a working chain along the top of the world
O_O <- me appreciative impressed :guidegrin:
(small request @NeoPhantom, would it trouble you to add in the names of which npcs get which discounts on those lines in the resumed post? it'll make it easier for posterity to read and evaluate if they want to tweak or just copy your ordering full stop :guidegrin: ^^_^^)

Shame the porting things in won't work, I'd missed that in my multiple wiki readings >_o

I'm currently looking at elevation conditions in game
testing if the distancing preferences also apply up and down
with an eye to possibly building towns on either side of the elevator shaft to the underworld

This for example
in this first picture, she's got max discount, pylon on offer at 7.5 gold
Zoo max discount.png

and on this next one
she loses the pylon completely

Zoo no pylon.png

could this imply that you could stair step your npcs without distancing penalty?

I've got the cubbys set up to 130 tile height and 130 tile width and am testing moving peeps around ^_^

(shoot, I need to learn how to use this medium
don't need full image all the time >_<)

and now she's got her max discount back
Zoo back to max discount.png

and this one where both her disliked angler and hated arms dealer seem to be encroaching on her space
nope, they're just outside of the restraint order regs :guidegrin:

Zoo still has max discount.png

so yeah, it seems the proximity check for likes/dislikes and for crowding is done in a circular area around the home tile of the particular npc
again a bit more wiggle room than I first assumed and makes for more interesting housing possibilities ^_^
 
I've got the cubbys set up to 130 tile height and 130 tile width and am testing moving peeps around ^_^

(shoot, I need to learn how to use this medium
don't need full image all the time >_<)

and now she's got her max discount back
View attachment 275378

Yes, I've noticed it's easy to put the hated/dislike NPC close but just out of range. It's the other range that I'm not having an easy time with. The crowded penalty. I'm not sure how that is measured.
 
oh myyy, THANK you Neo, for listing the conditions so clearly in point form. It's much easier to work the logic with that to hand !
and awesome job figuring out a working chain along the top of the world
O_O <- me appreciative impressed :guidegrin:
(small request @NeoPhantom, would it trouble you to add in the names of which npcs get which discounts on those lines in the resumed post? it'll make it easier for posterity to read and evaluate if they want to tweak or just copy your ordering full stop :guidegrin: ^^_^^)

Shame the porting things in won't work, I'd missed that in my multiple wiki readings >_o

I'm currently looking at elevation conditions in game
testing if the distancing preferences also apply up and down
with an eye to possibly building towns on either side of the elevator shaft to the underworld
This for example
in this first picture, she's got max discount, pylon on offer at 7.5 gold
View attachment 275376
and on this next one
she loses the pylon completely

View attachment 275377

could this imply that you could stair step your npcs without distancing penalty?
I've got the cubbys set up to 130 tile height and 130 tile width and am testing moving peeps around ^_^

(shoot, I need to learn how to use this medium
don't need full image all the time >_<)

and now she's got her max discount back
View attachment 275378
and this one where both her disliked angler and hated arms dealer seem to be encroaching on her space
nope, they're just outside of the restraint order regs :guidegrin:

View attachment 275392

so yeah, it seems the proximity check for likes/dislikes and for crowding is done in a circular area around the home tile of the particular npc
again a bit more wiggle room than I first assumed and makes for more interesting housing possibilities ^_^
Statue teleporting wont work because if they are 120 blocks away from their homes they charge full 150% prices.

Ill analize the rules of happiness here:

1) Having more than one other NPC within 25 tiles incurs a 4% penalty.

2) Having one NPC within 25 tiles and no more than three OTHER NPC within 120 tiles gives you a benefit of 10%

3) Biomes gives a benefit or penalty depending on how much they like or dislike a biome ranging from 10% penalty to 10% benefit in 5% increments. Biome is calculated according to the biome the player is in, not the NPC.

Note: the wiki states that the only NPC who LOVES a biome is Santa Claus. All other NPC only like their biomes. As such expect a 5% benefit from preferred biomes.

4) NPC within 25 tiles will give a benefit or penalty depending on their relationship. Same range as Biomes. (Is this dependant on the current location of NPC of the location of their houses

5) If an NPC is over 120 tiles away from their home, in an evil biome or is homeless they get a flat penalty of 50% regardless of other conditions.

6) The maximum benefit one can get is of 25%. The benefit needed for Pylons to be sold is 15%.

7) Final benefit/penalty is rounded up to the nearest 5 interval. 19% becomes 20% and 21% becomes 25%.
Scenarios:

1) NPC lives with another NPC it loves (+10%), with no more than 3 other NPC within 120 blocks (+10%) and the player is within the preferred biome (+5%).
Total: 25%

2) NPC lives with two other NPC it likes (+5% & +5%), theres two NPC within 25 tiles (-4%), and the player is within the preferred biome (+5%).
Total: 11% -> 15%

3) NPC lives with one other NPC it likes (+5%), no more than 3 other NPC within 120 tiles (+10%), and the player is in their preferred biome (+5%).
Total: 20%

4) NPC lives with an NPC it loves and another it likes (+10% & +5%), theres two NPC within 25 tiles (-4%), and the player is within the preferred biome (+5%).
Total: 16% -> 20%


Conclusion: to get the best benefit, you must separate all NPC in pairs and keep each pair within 25 blocks, but make sure that only one pair (or 1 pair and half a pair) is within 120 tile distance. Both NPC must Love each other for the full 25% benefit, otherwise 20% is the maximum you can achieve with NPC who only Like each other. On the other hand, NPC who dont have a mutual partner such as the Tax Collector cannot have above 5% benefit without hurting others happiness.

You can however base an NPC who loves one with another who doesnt care, the have a third who that one likes far enough from the first but close to the second to the the bonus. This can give you a bonus of 25%, 10% and 20% respectively. (Zoologist > Witch Doctor > Dryad)
Chain

Stylist likes the Pirate, End of chain. 20%

Pirate loves the Angler, cares not for Pirate, 11% -> 15%

The Angler sells nothing, preferences ignored.

Golfer loves the Angler, cares not for the Wizard. 11% -> 15%

Wizard loves the Golfer, but cares not for the Party Girl. 11% -> 15%

Party Girl loves the Wizard and the Zoologist. 21% -> 25%.

Zoologist loves the Witch doctor, cares not for the Party Girl. 11% -> 15%

Witch Doctor loves no one, but likes the Guide. 6% -> 10%

Guide sells nothing, ignored.

Truffle loves the Guide and likes the Dryad, 16% -> 20%

Dryad likes Truffle, but has no feelings for the Painter. 6% -> 10%

Painter loves the Dryad, but has no feeling for either the Dye Trader or Steampunker (chain split one to the side the other above or below) 7% -> 10%

Dye Trader likes Painter and Arms Dealer (above). 11% -> 15%
Arms Dealer loves Nurse, cares not for Dye Trader. 11% -> 15%

Nurse loves the Arms Dealer, but cares not for the Merchant. 11% -> 15%

Merchant likes Nurse, end of chain. 20%

The Steampunker likes the Painter and Cyborg. 11% -> 15%

Cyborg likes Steampunker, but cares not for the Mechanic. 6% > 10%.

Mechanic loves the Goblin (below) and likes the Cyborg. 16% -> 20%

Goblin loves the Mechanic, but has no special feelings towards the Tavernkeep. 11% -> 15%

Tavernkeep likes the Goblin and loves the Demolitionist. 16% -> 20%

Demolitionist loves the Tavernkeep. End of chain. 25%



NPC left out: Tax Collector
Resumed:

Stylist> Pirate > Angler > Golfer > Wizard > Party Girl > Zoologist > Witch Doctor > Guide > Truffle > Dryad > Painter > SPLIT

Painter > Dye Trader > Arms Dealer > Nurse > Merchant
Painter > Steampunker > Cyborg > Mechanic > Goblin > Tavernkeep > Demolitionist

Benefits:
10% - 4 NPC
15% - 9 NPC
20% - 5 NPC
25% - 2 NPC

Ousted: Tax Collector can be added after Merchant, but will reduce Merchant benefit to 1% -> 5% and Tax Collector does not benefit from happiness anyways.

Ignored: Guide & Angler dont benefit from happiness, but can help others who do.

Please don't post multiple posts in a row like this. If you have more to add, you should use the edit button below your post. I've merged them this time, but please don't do it again.
 
EDIT In retrospect, the setup @Tom_ has *might* work if his hallow is to the left of the desert giving you, 1st, hallow/desert (catching rock lobsters and flounders as well as hallowed catches) and, 2nd, pure desert. As @NeoPhantom suggests, some other shifting to the hallowed side could fix the problem with no frozen crates.

That is my plan, I'll post here once I get it set up after I enter hardmode.

I know it's already been confirmed since the last time I posted and there's now better and more exacting designs, but I said I'd post back when I made it to hardmode so here it is, with hallow and crimson added:

Capture 2020-05-31 19_28_56_compressed.png


It works as expected.
 
Can anyone tell me if this will work in a living tree biome?

Living Trees are Treasure-type mini biomes and dont control mob spawns, biome or fishing drops. You can think of them as Forest (aka the absence of other biomes).

The same holds true for Sky Islands, Jungle Shrines, Underground Cabins, Pyramids, Enchanted Sword Shrines and Ruined Houses. While some of these exist in particular biomes, the structures themselves do not count towards the biome.
 
Can anyone tell me if this will work in a living tree biome?

As of 1.4 living tree walls don't count for housing.

Living Trees are Treasure-type mini biomes and dont control mob spawns, biome or fishing drops. You can think of them as Forest (aka the absence of other biomes).

The same holds true for Sky Islands, Jungle Shrines, Underground Cabins, Pyramids, Enchanted Sword Shrines and Ruined Houses. While some of these exist in particular biomes, the structures themselves do not count towards the biome.

The walls in Sky islands, Underground Cabins (you'll have to fill in some holes), and Pyramids should work fine for housing. I haven't found an enchanted sword shrine since the update but since it was grass it wouldn't work I don't believe.
 
I thought he was asking about the complex...

If its about housing, Ruined Houses (hell houses) dont work unless you remove the walls and replace them.

Enchanted Sword Shrines are natural backwalls, so no dice there.
 
:guidesmile: glad it's working Tom, good to know I only need minimal tweaking of the fishing complex on my old worlds

good find on the hive blocks NeoPhantom ^_^

I finished the first part of testing how happiness actually affects my gameplay
I mapped out visually the actual range for happiness checks and found out the diagonal range is only 86 tiles not the full 120 as the area is circular around the central NPC's home anchor
I stuck it in a thread in the guides section if anybody here is interested in actual tile distances

it might explain some of the inconsistencies in your own testing @smeagolheart
 
Does anyone have a working 1.4 project and could upload a .world or .tedit file, pretty please? It's hard building these things off of a screenshot :guidesmile:
 
Does anyone have a working 1.4 project and could upload a .world or .tedit file, pretty please? It's hard building these things off of a screenshot :guidesmile:
@Yokoharu

Video courtesy of @f1n4l

World used in the video & TEdit schematic attached, but check his comments under More Info on the video in case he updates it, it would be there for the latest version.
 

Attachments

  • fishing_biomes.zip
    1 MB · Views: 282
@Yokoharu

Video courtesy of @f1n4l

World used in the video & TEdit schematic attached, but check his comments under More Info on the video in case he updates it, it would be there for the latest version.
unfortuantely this doesn't work for me, no matter how do i paste it one of the jungle biomes doesn't work. If i paste it 1 block up (so at 6' and not at 8') the surface jungle starts working but underground stops. I even downloaded his world and he has 2 farms set up and the right one isn't working just the same way as mine. The left one is fine but it breaks when i copy it to my world. @f1n4l
 
unfortuantely this doesn't work for me, no matter how do i paste it one of the jungle biomes doesn't work. If i paste it 1 block up (so at 6' and not at 8') the surface jungle starts working but underground stops. I even downloaded his world and he has 2 farms set up and the right one isn't working just the same way as mine. The left one is fine but it breaks when i copy it to my world. @f1n4l
This is strange to say the least.
I went and downloaded my own world from the video, changed the Angler's quest using TEdit to Mudfish and tried to catch it on both surface and underground of the two farms and all jungle spots worked. Then I must ask you, which version of Terraria are you playing? Do you have any mods installed? It should work on Terraria 1.4.0.4 and 1.4.0.5 PC version.
Remembering that the underground background seems to not actually be important, upon my tests sometimes they change accordingly, other doesn't, but the fishing loot is right all the time based on the surface background.
 
reddit user 0ff-by-1 (and forum user @Off by 1) posted their version here:
Notably, it does include mushroom. But it's also crimson only (no corruption) but they mention in the comments about further testing.

Also an interesting use of the bobber height mechanic to effectively have both pools at similar height (so no having to change positions between surface and underground fishing spots.

Their screenshot:

C4qJfQw.png


(edit to update to their new screenshot):

eEkEKae.png


(edit to also to add a link to their forum post: Fishing Farm for 1.4! )
 
Last edited:
Back
Top Bottom