{"id":1896,"date":"2026-01-20T12:41:05","date_gmt":"2026-01-20T11:41:05","guid":{"rendered":"https:\/\/roberttraczyk.art\/?page_id=1896"},"modified":"2026-01-20T13:28:51","modified_gmt":"2026-01-20T12:28:51","slug":"symulator-performera","status":"publish","type":"page","link":"https:\/\/roberttraczyk.art\/en\/symulator-performera\/","title":{"rendered":"Perfrormer simulator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1896\" class=\"elementor elementor-1896\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fcdf8fe elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"fcdf8fe\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cf528d5\" data-id=\"cf528d5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1eaa11b elementor-widget elementor-widget-heading\" data-id=\"1eaa11b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Symulator performera<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e6bc3d9 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e6bc3d9\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c910d86\" data-id=\"c910d86\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c8f7f23 elementor-widget elementor-widget-html\" data-id=\"c8f7f23\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"performance\" style=\"\n  font-family: monospace;\n  white-space: pre-line;\n  background: #000;\n  color: #0f0;\n  padding: 16px;\n  min-height: 320px;\n  border-radius: 8px;\n\"><\/div>\n\n<button id=\"btnPerf\" style=\"\n  margin-top: 10px;\n  padding: 8px 12px;\n  font-family: monospace;\n  cursor: pointer;\n\">\n\u25b6 Start Performance\n<\/button>\n\n<script>\nconst materia = [\n  \/\/ \u2014 przedmioty \/ odpady \/ znalezione\n  'plastikowa torba',\n  'foliowa peleryna',\n  'ta\u015bma klej\u0105ca',\n  'butelka PET',\n  'karton po paczce',\n  'folia b\u0105belkowa',\n  'paragon z kiosku',\n  'zu\u017cyta maska',\n  'r\u0119kawiczki jednorazowe',\n  'kamie\u0144 znaleziony w drodze',\n  'patyk',\n  'li\u015b\u0107',\n  'piasek w kieszeni',\n  'woda z kranu',\n  'py\u0142 na ekranie',\n  'odcisk kubka na stole',\n  'papier, kt\u00f3ry chcia\u0142 by\u0107 listem',\n  'zagi\u0119ty r\u00f3g kartki',\n  'kawa, kt\u00f3ra wystyg\u0142a zanim zd\u0105\u017cy\u0142a pom\u00f3c',\n  'cie\u0144 kurzu w promieniu \u015bwiat\u0142a',\n  'p\u0119kni\u0119cie w farbie',\n  'rysunek zrobiony bez zamiaru',\n  '\u015blad po czym\u015b, co zosta\u0142o zabrane',\n\n  \/\/ \u2014 technologia \/ cyfrowe resztki\n  'powerbank',\n  'kabel USB',\n  '\u015bwiat\u0142o LED',\n  'stary smartfon',\n  'rozbita szybka',\n  'pendrive z nieznan\u0105 zawarto\u015bci\u0105',\n  '\u0142adowarka bez pr\u0105du',\n  'drukowany regulamin',\n  'ekran w trybie czuwania',\n  'powiadomienie bez tre\u015bci',\n  'has\u0142o zapisane na kartce',\n  'login, kt\u00f3ry nie dzia\u0142a',\n  'pami\u0119\u0107 podr\u0119czna',\n  'timeout',\n  'sygna\u0142 bez odbiorcy',\n  'plik bez nazwy',\n  'wersja robocza bez wersji finalnej',\n  'folder nazwany \u201enowe\u201d',\n  'backup sprzed zmiany',\n  'kursor migaj\u0105cy jak niepok\u00f3j',\n  'ekran, kt\u00f3ry niczego nie obiecuje',\n  'sygna\u0142 op\u00f3\u017aniony o jedno uczucie',\n  'dane, kt\u00f3re wiedz\u0105 za du\u017co',\n\n  \/\/ \u2014 czas \/ pami\u0119\u0107\n  'wspomnienie bez obrazu',\n  'dzie\u0144, kt\u00f3ry niczym si\u0119 nie wyr\u00f3\u017cnia\u0142',\n  'godzina zapami\u0119tana przez przypadek',\n  'przesz\u0142o\u015b\u0107 w trybie tylko do odczytu',\n  'czas, kt\u00f3ry nie by\u0142 gotowy',\n  'data bez wydarzenia',\n  'pami\u0119\u0107, kt\u00f3ra myli kolejno\u015b\u0107',\n  'co\u015b, co wydarzy\u0142o si\u0119 za wcze\u015bnie',\n  'co\u015b, co przysz\u0142o za p\u00f3\u017ano',\n\n  \/\/ \u2014 cia\u0142o \/ obecno\u015b\u0107\n  'cia\u0142o',\n  'cia\u0142o, kt\u00f3re pami\u0119ta',\n  'oddech',\n  'oddech pomi\u0119dzy zdaniami',\n  'spojrzenie',\n  'gest',\n  '\u015blad palca',\n  'ciep\u0142o po czyjej\u015b obecno\u015bci',\n  'ci\u0119\u017car w\u0142asnych ramion',\n  'd\u0142onie, kt\u00f3re nie wiedz\u0105 co zrobi\u0107',\n  'plecy zwr\u00f3cone do okna',\n  'zm\u0119czenie w kolanach',\n  'oddech liczony nie\u015bwiadomie',\n  'sk\u00f3ra jako granica',\n  'cia\u0142o czekaj\u0105ce na instrukcj\u0119',\n  'cia\u0142o jako dow\u00f3d',\n\n  \/\/ \u2014 j\u0119zyk \/ znaczenie\n  's\u0142owo',\n  's\u0142owo, kt\u00f3re nie pad\u0142o',\n  'j\u0119zyk zm\u0119czony znaczeniem',\n  'g\u0142os schowany w gardle',\n  'szept dla nikogo',\n  'echo bez \u017ar\u00f3d\u0142a',\n  'zdanie urwane w po\u0142owie intencji',\n  'my\u015bl bez czasownika',\n  's\u0142owo, kt\u00f3re przysz\u0142o po fakcie',\n  'j\u0119zyk, kt\u00f3ry nie nad\u0105\u017ca',\n  'znaczenie w stanie rozk\u0142adu',\n  'komunikat bez adresata',\n  'pytanie, kt\u00f3re nie szuka odpowiedzi',\n  'odpowied\u017a, kt\u00f3ra nie pasuje',\n\n  \/\/ \u2014 \u015bwiat\u0142o \/ cie\u0144 \/ zmys\u0142y\n  '\u015bwiat\u0142o, kt\u00f3re nie wie sk\u0105d przysz\u0142o',\n  'cie\u0144 d\u0142oni na \u015bcianie',\n  'zapach, kt\u00f3ry nie nale\u017cy do nikogo',\n\n  \/\/ \u2014 cisza \/ zawieszenie\n  'cisza',\n  'cisza po pytaniu',\n  'pauza',\n  'czekanie',\n  'oczekiwanie bez obietnicy',\n  'chwila przed decyzj\u0105',\n  'czas rozci\u0105gni\u0119ty do granic uwagi',\n  'moment, kt\u00f3ry nie chce min\u0105\u0107',\n  'zm\u0119czenie, kt\u00f3re udaje spok\u00f3j',\n  'cisza, kt\u00f3ra co\u015b przerywa',\n  'bezruch pe\u0142en napi\u0119cia',\n  'czekanie bez obiektu',\n  'chwila po zrozumieniu',\n  'moment, w kt\u00f3rym nic si\u0119 nie dzieje',\n  'zatrzymanie bez powodu',\n  'trwanie bez narracji',\n  'obecno\u015b\u0107 bez roli'\n];\n\n\/\/ brak \"u\u017cywa\" \u2014 celowo\nconst czasowniki = [\n  'dotyka', 'uruchamia', 'przywo\u0142uje', 'niesie', 'rozpuszcza',\n  'nas\u0142uchuje', 'konfrontuje', 'wstrzymuje', 'aktywizuje',\n  'skanuje', 'przecina', 'zap\u0119tla', 'wycisza', 'rozszczelnia',\n  'podmienia', 'koduje', 'rozmontowuje', 'odkleja', 'przestawia'\n];\n\nconst aktor = \"Neo-Ubogi Performer\u2122\";\nconst publicznosc = \"Spo\u0142eczno\u015b\u0107 lokalna + boty z sieci ;)\";\n\nfunction randUint32() {\n  if (window.crypto && window.crypto.getRandomValues) {\n    const a = new Uint32Array(1);\n    window.crypto.getRandomValues(a);\n    return a[0];\n  }\n  \/\/ fallback\n  return Math.floor(Math.random() * 2 ** 32);\n}\n\n\/\/ losowanie int bez biasu (rejection sampling)\nfunction randInt(min, max) {\n  const range = (max - min + 1) >>> 0;\n  const limit = Math.floor(0x100000000 \/ range) * range;\n  let x;\n  do { x = randUint32(); } while (x >= limit);\n  return min + (x % range);\n}\n\nfunction choice(arr) {\n  return arr[randInt(0, arr.length - 1)];\n}\n\nfunction sleep(ms) {\n  return new Promise(r => setTimeout(r, ms));\n}\n\nlet running = false;\n\nasync function startPerformance() {\n  if (running) return;\n  running = true;\n\n  const btn = document.getElementById(\"btnPerf\");\n  btn.disabled = true;\n\n  const output = document.getElementById(\"performance\");\n  output.textContent = \"\";\n\n  const runId = randInt(10000, 99999);\n  const stamp = new Date().toLocaleString();\n\n  output.textContent += `RUN ${runId} \u2022 ${stamp}\\n`;\n  output.textContent += `\\n${aktor} wchodzi na scen\u0119.\\n`;\n  output.textContent += `Publiczno\u015b\u0107 obecna: ${publicznosc}\\n\\n`;\n\n  \/\/ wi\u0119cej linijek = bardziej odczuwalna losowo\u015b\u0107\n  const linie = randInt(18, 45);\n\n  for (let i = 0; i < linie; i++) {\n    const v = choice(czasowniki);\n    const m = choice(materia);\n    output.textContent += `${aktor} ${v}: ${m}\\n`;\n    await sleep(randInt(250, 1100));\n  }\n\n  output.textContent += `\\nPerformance zako\u0144czony.\\nPATCH_REALITY deployed.\\n`;\n\n  btn.disabled = false;\n  running = false;\n}\n\ndocument.getElementById(\"btnPerf\").addEventListener(\"click\", startPerformance);\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Symulator performera \u25b6 Start Performance<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1896","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/pages\/1896","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/comments?post=1896"}],"version-history":[{"count":22,"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/pages\/1896\/revisions"}],"predecessor-version":[{"id":1929,"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/pages\/1896\/revisions\/1929"}],"wp:attachment":[{"href":"https:\/\/roberttraczyk.art\/en\/wp-json\/wp\/v2\/media?parent=1896"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}