7.5 KiB
7.5 KiB
Habbo Retro - Troubleshooting Guide
Browser Console Errors Explained
✅ Normal (Can Ignore)
These are expected and won't affect functionality:
"Access to storage is not allowed from this context"
- Cause: Browser privacy settings preventing localStorage access
- Impact: None - Nitro handles this gracefully
- Fix: Not needed, or enable storage in browser settings
"apple-mobile-web-app-capable is deprecated"
- Cause: Old meta tag in HTML
- Impact: None - just a warning
- Fix: Not needed for desktop use
⚠️ Minor Issues (Partial Functionality)
"Failed to load c_images/album1584/[badge].gif"
- Cause: Badge images not included in your asset pack
- Impact: User badges won't display (images only)
- Fix:
# Create directory structure mkdir -p /Users/matt/DEV/retro/nitro-assets/nitro-assets/c_images/album1584 # Download badge pack from community or Habbo.com # Place .gif files in the album1584 folder
❌ Critical Errors (Need Fixing)
"WebSocket connection failed"
- Cause: Emulator not running or WebSocket plugin not loaded
- Check:
netstat -an | grep 2096 # Should show: tcp46 0 0 *.2096 *.* LISTEN - Fix: Restart emulator with WebSocket plugin in plugins/ folder
"Failed to load ExternalTexts.json"
- Status: FIXED in your setup! ✅
- Was caused by: Incorrect URL format
?v= + Math.random() - Fixed by: Removing the malformed cache-busting parameter
"Cannot connect to game server"
- Cause: Emulator offline or wrong ports
- Check:
ps aux | grep Habbo netstat -an | grep 30000 - Fix: Restart emulator
Current Status of Your Setup
✅ Working
- Nitro client loads (v2.1.1)
- PixiJS renderer active (WebGL 2)
- WebSocket connection ready (port 2096)
- Asset server running (port 8080)
- Configuration files correct
⚠️ Known Limitations
- Badge images not available (minor cosmetic issue)
c_imagesdirectory missing (badges only)
🔧 How to Test Everything Works
-
Open the client: http://localhost:5173/?sso=test_sso_2024
-
Check browser console (F12):
- Should see: "Nitro 2.1.1 - Renderer 1.6.6"
- Should see: "PixiJS 6.5.10 - WebGL 2"
-
Look for WebSocket connection:
- Open Network tab in browser tools
- Filter by "WS" (WebSockets)
- Should see connection to
ws://localhost:2096 - Status should be "101 Switching Protocols" (success!)
-
Test gameplay:
- Avatar should load
- Hotel view should appear
- Navigator should work
- Can enter rooms
- Can chat
Quick Fixes
Refresh Configuration Changes
If you changed renderer-config.json:
# Just reload the browser page
# Vite hot-reloads automatically in dev mode
Clear Browser Cache
# Chrome/Edge: Ctrl+Shift+Delete
# Firefox: Ctrl+Shift+Delete
# Safari: Cmd+Option+E
Restart All Services
# Stop everything
pkill -f "Habbo-3.6.0"
pkill -f "python3 -m http.server 8080"
pkill -f "vite"
# Start MySQL
brew services start mysql
# Start Emulator
cd /Users/matt/DEV/retro/emulator
java -jar Habbo-3.6.0-jar-with-dependencies.jar &
# Start Assets
cd /Users/matt/DEV/retro/nitro-assets/nitro-assets
python3 -m http.server 8080 &
# Start Client
cd /Users/matt/DEV/retro/nitro-react/nitro-react
npm start
Asset Issues
Missing Furniture Icons
- Symptom: Furniture shows as blank squares
- Cause: Icons not in asset pack
- Fix: Download complete asset pack from community
Missing Avatar Parts
- Symptom: Avatar appears naked or incomplete
- Cause: Missing figure .nitro files
- Check:
ls /Users/matt/DEV/retro/nitro-assets/nitro-assets/bundled/figure/ # Should have many .nitro files
Game Data Not Loading
- Symptom: Empty catalog, no items
- Cause: Database or gamedata JSON issues
- Check:
curl http://localhost:8080/gamedata/FurnitureData.json | head # Should return JSON data
Database Issues
"Access denied for user"
- Cause: Wrong database credentials
- Fix: Check emulator/config.ini matches database user
"Unknown database 'habbo_retro'"
- Cause: Database not created
- Fix:
mysql -u root -e "CREATE DATABASE habbo_retro;"
"Table doesn't exist"
- Cause: Database not imported
- Fix: Import FullDB.sql again
Network Issues
"ERR_CONNECTION_REFUSED"
- Cause: Service not running on that port
- Check:
netstat -an | grep [PORT] - Fix: Start the service
"ERR_EMPTY_RESPONSE"
- Cause: Server crashed or restarting
- Fix: Check server logs, restart service
CORS Errors
- Cause: Assets served from different origin
- Impact: Usually just warnings, assets should still load
- Fix: Use proper web server (nginx/apache) in production
Emulator Logs
View emulator logs:
# Real-time viewing
tail -f /Users/matt/DEV/retro/emulator/logging/*.log
# Search for errors
grep ERROR /Users/matt/DEV/retro/emulator/logging/*.log
Common log messages:
✅ "Nitro Websockets Listening" - WebSocket ready
✅ "GameEnvironment -> Loaded!" - Emulator ready
✅ "Arcturus Morningstar has successfully loaded" - All good
⚠️ "Column 'cost_happiness' not found" - Minor, ignore
❌ "Failed to initialize pool" - Database connection failed
❌ "Plugin failed to load" - Check plugins folder
Performance Issues
Client Loading Slowly
- Check asset server is running:
curl http://localhost:8080 - Check network tab for slow requests
- Large FurnitureData.json (23MB) is normal, takes time
High CPU Usage
- Emulator: Normal at 10-30% CPU
- Client: Normal at 5-15% CPU while idle
- Spikes during room loading are normal
Memory Leaks
- Emulator should stay under 200MB
- If memory grows continuously, restart emulator
- Check for "memory leak" in logs
Getting Help
Information to Provide
When asking for help, include:
- Browser console output (F12 → Console tab)
- Emulator log snippet (last 50 lines)
- What you were trying to do
- What happened instead
- Your setup:
- OS: macOS
- Emulator: Arcturus Morningstar 3.6.1
- Client: Nitro React 2.1.1
- Database: MySQL 9.5.0
Useful Commands
# Check all services
netstat -an | grep LISTEN | grep -E "2096|3000|5173|8080|30000"
# View processes
ps aux | grep -E "java|python3|vite|mysql"
# Test asset server
curl -I http://localhost:8080/gamedata/FurnitureData.json
# Test database
mysql -u habbo_user -phabbo_password_2024 habbo_retro -e "SELECT COUNT(*) FROM users;"
# Check WebSocket
curl -i -N -H "Connection: Upgrade" -H "Upgrade: websocket" http://localhost:2096
Success Criteria
Your setup is working if:
- ✅ No red errors in browser console (warnings OK)
- ✅ WebSocket shows "Connected" in Network tab
- ✅ Avatar loads and displays
- ✅ Can navigate hotel
- ✅ Can enter rooms
- ✅ Can see furniture
- ✅ Chat works
Minor issues you can ignore:
- ⚠️ Storage access warnings
- ⚠️ Missing badge images
- ⚠️ CORS warnings (in dev mode)
- ⚠️ Deprecated meta tag warnings
Your Current Status: ✅ FULLY OPERATIONAL
All critical systems working, only minor cosmetic issues (badges) which don't affect core functionality.