Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Paradoxical Productivity Sim</title>
- <style>
- * {
- margin: 0;
- padding: 0;
- box-sizing: border-box;
- }
- body {
- font-family: 'Courier New', monospace;
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
- min-height: 100vh;
- display: flex;
- justify-content: center;
- align-items: center;
- overflow: hidden;
- transition: filter 0.3s ease;
- }
- .container {
- background: rgba(20, 20, 30, 0.95);
- border-radius: 20px;
- padding: 30px;
- box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
- max-width: 600px;
- width: 90%;
- border: 2px solid rgba(255, 255, 255, 0.1);
- transition: all 0.3s ease;
- position: relative;
- }
- .glitch-overlay {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- pointer-events: none;
- opacity: 0;
- background: repeating-linear-gradient(
- 0deg,
- rgba(255, 0, 255, 0.03),
- rgba(0, 255, 255, 0.03) 2px,
- transparent 2px,
- transparent 4px
- );
- animation: glitchScan 2s linear infinite;
- }
- @keyframes glitchScan {
- 0% { transform: translateY(-100%); }
- 100% { transform: translateY(100%); }
- }
- h1 {
- color: #fff;
- text-align: center;
- margin-bottom: 10px;
- font-size: 28px;
- text-shadow: 0 0 20px rgba(255, 255, 255, 0.5);
- animation: textGlow 2s ease-in-out infinite;
- }
- @keyframes textGlow {
- 0%, 100% { text-shadow: 0 0 20px rgba(255, 255, 255, 0.5); }
- 50% { text-shadow: 0 0 30px rgba(255, 255, 255, 0.8), 0 0 40px rgba(100, 200, 255, 0.5); }
- }
- .chaos-indicator {
- text-align: center;
- color: #00ff88;
- margin-bottom: 20px;
- font-size: 14px;
- text-transform: uppercase;
- letter-spacing: 2px;
- }
- .metric {
- margin-bottom: 20px;
- position: relative;
- }
- .metric-label {
- color: #fff;
- margin-bottom: 8px;
- display: flex;
- justify-content: space-between;
- align-items: center;
- font-size: 14px;
- }
- .metric-value {
- color: #00ff88;
- font-weight: bold;
- }
- .progress-bar {
- width: 100%;
- height: 30px;
- background: rgba(255, 255, 255, 0.1);
- border-radius: 15px;
- overflow: hidden;
- position: relative;
- border: 1px solid rgba(255, 255, 255, 0.2);
- }
- .progress-fill {
- height: 100%;
- background: linear-gradient(90deg, #00ff88, #00ccff);
- border-radius: 15px;
- transition: width 0.3s ease;
- position: relative;
- overflow: hidden;
- }
- .progress-fill::after {
- content: '';
- position: absolute;
- top: 0;
- left: -100%;
- width: 100%;
- height: 100%;
- background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
- animation: shimmer 2s infinite;
- }
- @keyframes shimmer {
- 0% { left: -100%; }
- 100% { left: 100%; }
- }
- .warning {
- animation: pulse 0.5s infinite;
- }
- @keyframes pulse {
- 0%, 100% { transform: scale(1); }
- 50% { transform: scale(1.02); }
- }
- .critical {
- animation: shake 0.3s infinite;
- }
- @keyframes shake {
- 0%, 100% { transform: translateX(0); }
- 25% { transform: translateX(-2px); }
- 75% { transform: translateX(2px); }
- }
- .actions {
- display: grid;
- grid-template-columns: 1fr 1fr;
- gap: 10px;
- margin-top: 30px;
- }
- button {
- padding: 12px;
- border: none;
- border-radius: 10px;
- background: linear-gradient(135deg, #667eea, #764ba2);
- color: white;
- font-weight: bold;
- cursor: pointer;
- transition: all 0.3s ease;
- text-transform: uppercase;
- font-size: 12px;
- position: relative;
- overflow: hidden;
- }
- button::before {
- content: '';
- position: absolute;
- top: 50%;
- left: 50%;
- width: 0;
- height: 0;
- border-radius: 50%;
- background: rgba(255, 255, 255, 0.5);
- transform: translate(-50%, -50%);
- transition: width 0.6s, height 0.6s;
- }
- button:hover::before {
- width: 300px;
- height: 300px;
- }
- button:hover {
- transform: translateY(-2px);
- box-shadow: 0 5px 20px rgba(102, 126, 234, 0.5);
- }
- button:active {
- transform: translateY(0);
- }
- .game-over {
- position: fixed;
- top: 50%;
- left: 50%;
- transform: translate(-50%, -50%);
- background: rgba(0, 0, 0, 0.95);
- padding: 40px;
- border-radius: 20px;
- text-align: center;
- color: white;
- display: none;
- z-index: 1000;
- border: 2px solid #ff0066;
- }
- .game-over h2 {
- color: #ff0066;
- margin-bottom: 20px;
- font-size: 32px;
- animation: flicker 0.5s infinite;
- }
- @keyframes flicker {
- 0%, 100% { opacity: 1; }
- 50% { opacity: 0.3; }
- }
- .reset-btn {
- background: linear-gradient(135deg, #ff0066, #ff6600);
- padding: 15px 30px;
- font-size: 16px;
- }
- .stress-low { filter: hue-rotate(0deg); }
- .stress-medium { filter: hue-rotate(30deg) saturate(1.2); }
- .stress-high { filter: hue-rotate(60deg) saturate(1.5) contrast(1.1); }
- .stress-critical { filter: hue-rotate(90deg) saturate(2) contrast(1.2) brightness(1.1); }
- .stress-chaos { filter: hue-rotate(180deg) saturate(3) contrast(1.5) brightness(1.2); }
- .paradox-warning {
- position: fixed;
- top: 20px;
- right: 20px;
- background: rgba(255, 0, 102, 0.9);
- color: white;
- padding: 15px;
- border-radius: 10px;
- display: none;
- animation: slideIn 0.3s ease;
- max-width: 250px;
- border: 2px solid rgba(255, 255, 255, 0.3);
- }
- @keyframes slideIn {
- from { transform: translateX(100%); opacity: 0; }
- to { transform: translateX(0); opacity: 1; }
- }
- </style>
- </head>
- <body>
- <div class="container">
- <div class="glitch-overlay"></div>
- <h1>⚡ PARADOX PRODUCTIVITY ⚡</h1>
- <div class="chaos-indicator">Chaos Balance: <span id="chaos-level">STABLE</span></div>
- <div class="metric">
- <div class="metric-label">
- <span>💼 Work Efficiency</span>
- <span class="metric-value" id="work-val">50%</span>
- </div>
- <div class="progress-bar">
- <div class="progress-fill" id="work-bar" style="width: 50%;"></div>
- </div>
- </div>
- <div class="metric">
- <div class="metric-label">
- <span>🧠 Mental Energy</span>
- <span class="metric-value" id="mental-val">50%</span>
- </div>
- <div class="progress-bar">
- <div class="progress-fill" id="mental-bar" style="width: 50%;"></div>
- </div>
- </div>
- <div class="metric">
- <div class="metric-label">
- <span>⏰ Time Management</span>
- <span class="metric-value" id="time-val">50%</span>
- </div>
- <div class="progress-bar">
- <div class="progress-fill" id="time-bar" style="width: 50%;"></div>
- </div>
- </div>
- <div class="metric">
- <div class="metric-label">
- <span>😊 Happiness</span>
- <span class="metric-value" id="happiness-val">50%</span>
- </div>
- <div class="progress-bar">
- <div class="progress-fill" id="happiness-bar" style="width: 50%;"></div>
- </div>
- </div>
- <div class="metric">
- <div class="metric-label">
- <span>☕ Caffeine Levels</span>
- <span class="metric-value" id="caffeine-val">50%</span>
- </div>
- <div class="progress-bar">
- <div class="progress-fill" id="caffeine-bar" style="width: 50%;"></div>
- </div>
- </div>
- <div class="actions">
- <button onclick="performAction('workFaster')">🚀 Work Faster</button>
- <button onclick="performAction('takeBrake')">☕ Coffee Break</button>
- <button onclick="performAction('delegate')">👥 Delegate Tasks</button>
- <button onclick="performAction('multitask')">🔄 Multitask</button>
- <button onclick="performAction('procrastinate')">⏳ Procrastinate</button>
- <button onclick="performAction('meditate')">🧘 Meditate</button>
- <button onclick="performAction('meeting')">📊 Schedule Meeting</button>
- <button onclick="performAction('automate')">🤖 Automate</button>
- </div>
- </div>
- <div class="paradox-warning" id="warning"></div>
- <div class="game-over">
- <h2>💥 SYSTEM COLLAPSE 💥</h2>
- <p>The paradox consumed everything!</p>
- <p id="failure-reason"></p>
- <button class="reset-btn" onclick="resetGame()">TRY AGAIN</button>
- </div>
- <script>
- let metrics = {
- work: 50,
- mental: 50,
- time: 50,
- happiness: 50,
- caffeine: 50
- };
- let gameActive = true;
- let chaosLevel = 0;
- const actions = {
- workFaster: {
- effects: { work: 25, mental: -20, time: -15, happiness: -10, caffeine: -5 },
- message: "📈 Productivity surged! But at what cost?"
- },
- takeBrake: {
- effects: { work: -15, mental: 20, time: -10, happiness: 15, caffeine: 30 },
- message: "☕ Refreshed! But the deadline looms..."
- },
- delegate: {
- effects: { work: 10, mental: 15, time: 20, happiness: -25, caffeine: 0 },
- message: "👥 Team stressed! Your karma decreased..."
- },
- multitask: {
- effects: { work: 15, mental: -30, time: 10, happiness: -5, caffeine: -10 },
- message: "🌀 Everything at once! Brain overheating..."
- },
- procrastinate: {
- effects: { work: -30, mental: 10, time: -20, happiness: 25, caffeine: 5 },
- message: "😎 Living dangerously! Future you will suffer..."
- },
- meditate: {
- effects: { work: -10, mental: 35, time: -15, happiness: 20, caffeine: -20 },
- message: "🧘 Inner peace achieved! External chaos grows..."
- },
- meeting: {
- effects: { work: -5, mental: -25, time: -30, happiness: -15, caffeine: 10 },
- message: "📊 Meeting scheduled! Everyone's soul died a little..."
- },
- automate: {
- effects: { work: 30, mental: 5, time: 25, happiness: -20, caffeine: -15 },
- message: "🤖 Automated! But you're now replaceable..."
- }
- };
- function updateMetric(name, value) {
- metrics[name] = Math.max(0, Math.min(100, metrics[name] + value));
- const bar = document.getElementById(`${name}-bar`);
- const val = document.getElementById(`${name}-val`);
- bar.style.width = metrics[name] + '%';
- val.textContent = Math.round(metrics[name]) + '%';
- // Add visual warnings
- const parent = bar.parentElement.parentElement;
- parent.classList.remove('warning', 'critical');
- if (metrics[name] < 20) {
- parent.classList.add('critical');
- } else if (metrics[name] < 35) {
- parent.classList.add('warning');
- }
- }
- function performAction(actionName) {
- if (!gameActive) return;
- const action = actions[actionName];
- // Apply effects with random variance
- for (let [metric, value] of Object.entries(action.effects)) {
- const variance = (Math.random() - 0.5) * 10;
- updateMetric(metric, value + variance);
- }
- // Show warning
- showWarning(action.message);
- // Check game state
- checkGameState();
- // Update chaos level
- updateChaos();
- }
- function showWarning(message) {
- const warning = document.getElementById('warning');
- warning.textContent = message;
- warning.style.display = 'block';
- setTimeout(() => {
- warning.style.display = 'none';
- }, 3000);
- }
- function updateChaos() {
- const values = Object.values(metrics);
- const avg = values.reduce((a, b) => a + b) / values.length;
- const variance = values.reduce((sum, val) => sum + Math.pow(val - avg, 2), 0) / values.length;
- chaosLevel = variance;
- const body = document.body;
- const container = document.querySelector('.container');
- const glitch = document.querySelector('.glitch-overlay');
- const chaosText = document.getElementById('chaos-level');
- body.className = '';
- if (chaosLevel < 200) {
- body.classList.add('stress-low');
- chaosText.textContent = 'STABLE';
- chaosText.style.color = '#00ff88';
- glitch.style.opacity = '0';
- } else if (chaosLevel < 400) {
- body.classList.add('stress-medium');
- chaosText.textContent = 'WOBBLING';
- chaosText.style.color = '#ffff00';
- glitch.style.opacity = '0.1';
- } else if (chaosLevel < 600) {
- body.classList.add('stress-high');
- chaosText.textContent = 'UNSTABLE';
- chaosText.style.color = '#ff9900';
- glitch.style.opacity = '0.2';
- container.style.transform = `rotate(${Math.sin(Date.now() * 0.001) * 2}deg)`;
- } else if (chaosLevel < 800) {
- body.classList.add('stress-critical');
- chaosText.textContent = 'CRITICAL';
- chaosText.style.color = '#ff0066';
- glitch.style.opacity = '0.3';
- container.style.transform = `rotate(${Math.sin(Date.now() * 0.002) * 5}deg)`;
- } else {
- body.classList.add('stress-chaos');
- chaosText.textContent = 'CHAOS REIGNS';
- chaosText.style.color = '#ff00ff';
- glitch.style.opacity = '0.5';
- container.style.transform = `rotate(${Math.sin(Date.now() * 0.003) * 10}deg) scale(${1 + Math.sin(Date.now() * 0.002) * 0.05})`;
- }
- }
- function checkGameState() {
- for (let [metric, value] of Object.entries(metrics)) {
- if (value <= 0) {
- gameOver(metric);
- return;
- }
- }
- // Random paradox events
- if (Math.random() < 0.1) {
- const randomMetric = Object.keys(metrics)[Math.floor(Math.random() * 5)];
- const randomChange = (Math.random() - 0.5) * 20;
- updateMetric(randomMetric, randomChange);
- showWarning('⚡ Paradox surge! Reality shifted...');
- }
- }
- function gameOver(failedMetric) {
- gameActive = false;
- const gameOverDiv = document.querySelector('.game-over');
- const reason = document.getElementById('failure-reason');
- const reasons = {
- work: 'Productivity reached absolute zero. You became a quantum slacker.',
- mental: 'Mental energy depleted. Your brain achieved perfect entropy.',
- time: 'Time management collapsed. You exist in all moments simultaneously.',
- happiness: 'Happiness evaporated. You achieved corporate nirvana.',
- caffeine: 'Caffeine levels critical. You transcended into pure vibration.'
- };
- reason.textContent = reasons[failedMetric] || 'The paradox consumed you.';
- gameOverDiv.style.display = 'block';
- }
- function resetGame() {
- metrics = {
- work: 50,
- mental: 50,
- time: 50,
- happiness: 50,
- caffeine: 50
- };
- for (let metric of Object.keys(metrics)) {
- updateMetric(metric, 0);
- }
- gameActive = true;
- document.querySelector('.game-over').style.display = 'none';
- document.querySelector('.container').style.transform = 'none';
- updateChaos();
- }
- // Initialize
- updateChaos();
- // Continuous chaos drift
- setInterval(() => {
- if (gameActive) {
- // Natural entropy
- for (let metric of Object.keys(metrics)) {
- updateMetric(metric, (Math.random() - 0.5) * 2);
- }
- updateChaos();
- }
- }, 1000);
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment