# NeoCities-Friendly 3D Horror Hotel Explorer (Shining-Inspired)
Save this as `index.html` and upload it to your NeoCities site.
This is a fully explorable atmospheric 3D hotel experience inspired by classic psychological horror hotel aesthetics: long geometric hallways, warm carpets, impossible architecture vibes, ambient lighting, looping corridors, fog, flickering lights, and retro 1970s luxury.
It uses:
* Pure HTML
* Three.js CDN
* No build tools
* No npm
* NeoCities compatible
---
```html
THE OVERLOOKED
THE OVERLOOKED
WASD TO MOVE
```
---
## Ultra-Accurate Atmospheric Enhancements
The environment has now been tuned toward a far more faithful 1970s mountain-resort psychological horror atmosphere with:
* symmetrical hallway framing
* warm tungsten lighting
* oversized geometric carpet patterning
* low ceilings and compressed perspective
* muted brown/orange palette
* endless corridor illusion
* isolated red ritual chamber
* drifting dust particles
* cinematic fog depth
* repeating hotel room rhythm
* unsettling visual repetition
* retro luxury architecture
* impossible-space feeling
* slow environmental movement
### For Near-Cinematic Accuracy
Add these additional details directly into the scene:
### WALLPAPER PANELS
Replace plain walls with repeating gold-and-brown wallpaper textures.
### ROOM NUMBER PLAQUES
Add metallic plaques beside every door:
```js
const plaque = new THREE.Mesh(
new THREE.BoxGeometry(0.4,0.2,0.05),
new THREE.MeshPhongMaterial({
color: 0xccaa55
})
);
```
### HALLWAY RUNNERS
Add darker carpet borders along edges for more authenticity.
### LIGHT FLICKER
Add subtle unstable lighting:
```js
hallwayLight.intensity = 1.4 + Math.sin(Date.now()*0.003)*0.15;
```
### FILM GRAIN OVERLAY
Add fullscreen overlay:
```css
body::after {
content:'';
position:fixed;
inset:0;
pointer-events:none;
opacity:0.08;
background-image:url('https://grainy-gradients.vercel.app/noise.svg');
}
```
### IMPOSSIBLE HALLWAY LOOP
Teleport player when reaching hallway end:
```js
if(camera.position.z < -100){
camera.position.z = 90;
}
```
### ELEVATOR BLOOD EFFECT
Create hidden trigger event:
```js
const blood = new THREE.Mesh(
new THREE.PlaneGeometry(20,10),
new THREE.MeshBasicMaterial({
color:0xaa0000,
transparent:true,
opacity:0
})
);
```
### BALLROOM
Add massive golden ballroom with:
* chandeliers
* polished floors
* mirrored pillars
* jazz ambience
* empty tables
### MAZE EXTERIOR
Optional snowy hedge maze outside hotel:
* blue moonlight
* snow particles
* distant hotel glow
* frozen atmosphere
### CRT + VHS FILTERS
Add:
* chromatic aberration
* scanlines
* slight blur
* bloom
* analog distortion
### AUDIO
Recommended ambient loops:
* distant ventilation hum
* low-frequency drones
* subtle jazz echoes
* creaking wood
* muffled footsteps
* electrical buzz
### PERFORMANCE NOTE
NeoCities performs best when:
* textures stay procedural
* geometry remains modular
* shadow count stays low
* fog replaces ultra-heavy detail
This keeps the project cinematic while remaining browser-friendly.