"As a child, I was told Spiders felt no emotion."
Arnold C, 1257 1261 1256 1233 bytes
IT'S SHOWTIME
TALK TO THE HAND" _______________________________"
TALK TO THE HAND"|\_____________________________/|"
TALK TO THE HAND"|| \ | / ||"
TALK TO THE HAND"|| \ /|\ / ||"
TALK TO THE HAND"|| /\'.__.' : '.__.'/\ ||"
TALK TO THE HAND"|| __.' \ | / '.__ ||"
TALK TO THE HAND"||'. /\'---':'---'/\ .'||"
TALK TO THE HAND"||\ '. /' \__ _|_ __/ '\ .' /||"
TALK TO THE HAND"|| | /. /\ ' : ' /\ .\ | ||"
TALK TO THE HAND"|| | | './ \ _|_ / \.' | | ||"
TALK TO THE HAND"||/ '/. /'. // : \\ .'\ .\' \||"
TALK TO THE HAND"||__/___/___/_\(+)/_\___\___\__||"
TALK TO THE HAND"|| \ \ \ /(O)\ / / / ||"
TALK TO THE HAND"||\ .\' \.' \\_:_// './ '/. /||"
TALK TO THE HAND"|| | | .'\ / | \ /'. | | ||"
TALK TO THE HAND"|| | \' \/_._:_._\/ '/ | ||"
TALK TO THE HAND"||/ .' \ / | \ / '. \||"
TALK TO THE HAND"||.'_ '\/.---.:.---.\/' _'.||"
TALK TO THE HAND"|| '. / __ | __ \ .' ||"
TALK TO THE HAND"|| \/.' '. : .' '.\/ ||"
TALK TO THE HAND"|| / \|/ \ ||"
TALK TO THE HAND"||____/_________|_________\____||"
TALK TO THE HAND"|/_____________________________\|"
YOU HAVE BEEN TERMINATED
This is my first try programming in the supreme language, so I'll eat my downvotes as I offer no intelligent solution to this problem although programming in the language descended from the heavens.
Here's a compiler if anyone by any chance questions this algorithm.
Stick around.
SOGL V0.12, 141 bytes
↑υΒΦøAo┼Λ■MšH⅛ K∞ΠΘK2╬{t÷ωÆ↓p║9<¤ΓuΞ∫⅛Χxc<Π³‼čΝ═ūψ°ņR⁷|└η▒°Mψ{√ΥΜ┌>½Ψ¹iš℮ē@‰‚ηΨ▓+⁰ρ→ƨ┘ο\β¶⁹ξA6‘'²nΓ:A⌡≥¹↕Ζ,'ŗa;+"⁴ø'½ø' Æ ⁄Æ ø'⁄ø'Æ∑O’3n{_ζž
Explanation:
...‘ push a quarter of the drawing
'²n split into an array of items of length 17
Γ palendromize horizontally, with overlap of 1
:A save a copy of that on `A`
⌡≥¹ reverse items in the array (for each item put it at the stacks bottom, then wrap in array)
↕ vertically mirror chars (it tries its best but still has bugs)
Ζ,'ŗ replace ","s with "'"s (one of the bugs)
a push the variable A
;+ reverse add
"..’ push a list of codepage characters
3n{ for each group of 3 do
_ put all the arrays contents on the stack
ζ convert the last from number to its codepage character
ž replace [at X 1st number, Y 2nd number, with the 3rd number converted to character]
Try it Here! (the program contains tabs so here is a better program representation)
vim, 373 371 bytes
A ________________
|\_______________
|| \ |
|| \ /|
|| /\'.__.' :
|| __.' \ |
||'. /\'---':
||\ '. /' \__ _|
|| | /. /\ ' :
|| | | './ \ _|
||/ '/. /'. // :
||__/___/___/_\(+<ESC>:2,12y
Gp
:13,$g/^/m12
:17
8lr jr.ggqayyp!!rev
!!tr '\\/(' '/\\)'
kgJxjq23@a
:13,$!tr "\\\\/.'+" "/\\\\'.O"
qa/_
r ka
<ESC>k:s/ $/_/e
gJjhq33@aGk:s/ /_/g
gg$x
<ESC>
is a standin for 0x1B.
Ungolfed
" First quadrant
A ________________
|\_______________
|| \ |
|| \ /|
|| /\'.__.' :
|| __.' \ |
||'. /\'---':
||\ '. /' \__ _|
|| | /. /\ ' :
|| | | './ \ _|
||/ '/. /'. // :
||__/___/___/_\(+<ESC>
" Copy to lower half, reverse lines, substitute characters
:2,12y
Gp
:,$g/^/m12
" Non-symmetric part
:17
8lr jr.
" copy left side to right and reverse
ggqayyp!!rev
!!tr '\\/(' '/\\)'
kgJxjq
23@a
" swap characters on the bottom half
:13,$!tr "\\\\/.'+" "/\\\\'.O"
" shift underscores up one line wherever an empty space is available
qa/_
r ka
<ESC>k:s/ $/_/e
gJjhq
33@a
" misc
Gk:s/ /_/g
gg$x
Try it online!
And to clarify the explanation you were given as a child: While it's true that the only emotion spiders feel personally is hatred, they are capable of sensing fear at a distance of over 50 meters.