French Ship Madame De Pompadour
Соціальна симуляція та генератор історій, що створює науково‑фантастичні оповідання на основі Star Trek. OOP Python/Flask з деякими структурами даних, Gemini API, React/Vite/Tailwind фронтенд.
Симулятор космічного корабля з використанням ШІ та випадкових дій, натхненний "Зоряним шляхом".
FS Madame de Pompadour — це текстовий наративний симулятор, який створює динамічні та непередбачувані історії у науково-фантастичному всесвіті. Натискаючи "Далі", ви просуваєте симуляцію по одному кроку за раз, спостерігаючи, як персонажі взаємодіють один з одним на основі комбінації попередньо визначених поведінок та генеративного ШІ.

Мета — створити "цифровий тераріум", де складні соціальні динаміки та несподівані події виникають із простих правил та творчої сили ШІ.
Ласкаво просимо до FS Madame de Pompadour.
Капітан Пепілло обернувся до рядового Гарольда і гаркнув: "Доповідь про дисциплінарні заходи, вжиті проти Вона".
Капітан Пепілло повернувся до комунікаційної станції і вимагав: "Негайно зв'яжіть мене з лейтенантом Дюбуа".
Тедрік нахилився до рядового Вейлона і прошепотів: "Ти бачив, що зробив Вон? Здається, капітан Пепілло сьогодні не в настрої", — водночас непомітно поправляючи свою уніформу, щоб виглядати охайно.
Костянтин швидко глянув на рядового Гарольда, потім тихо пробурмотів рядовому Мохаммеду: "Цікаво, що такого зробив Вон, що знову потрапив у немилість до капітана", — непомітно протираючи ділянку поручня поруч.
Рядовий Вон нервово поправив свою уніформу, потім, зустрівшись поглядом з рядовим Езекіїлем, пробурмотів собі під ніс: "Це буде довгий день", — сподіваючись на відповідь Езекіїля.
Рядовий Мохаммед, помітивши, як Костянтин непомітно протирає поручень, глянув на поручень і сказав: "Виглядає так, ніби його треба добре почистити, га? Може, ми разом займемося цією ділянкою, Костянтине?"
Рядовий Гарольд, помітивши напружену атмосферу та накази капітана, невимушено поправив свою уніформу і пробурмотів рядовому Себастьяну: "Схоже, Вон у скрутному становищі, га? Думаєш, нам варто піти випити кави, щоб розрядити обстановку, перш ніж обов'язки стануть ще неприємнішими?"
Бачачи напругу, рядовий Вестлі повернувся до рядового Фліна і запитав: "Ти чув, що сталося з Воном? Здається, капітан не в настрої, можливо, нам варто переконатися, що наші пости бездоганні".
Капітан Пепілло просить їхньої професійної думки, рядовий Гарольд.
Капітан Пепілло повернувся до рядового Вона і вимагав: "Вон, негайно доповіж мені про стан твого поточного поста та систем".
Рядовий Вестлі, помітивши суворий наказ капітана Вону, швидко обернувся до рядового Фліна і тихо сказав: "Флін, давай перевіримо комори з припасами, думаю, капітан може захотіти перевірити аварійні запаси", — сподіваючись виглядати зайнятим і уникнути небажаної уваги.
Рядовий Мохаммед, бачачи напругу навколо капітана Пепілло, тихо підійшов до рядового Езекіїля і прошепотів: "Як думаєш, нам варто підготувати якісь миючі засоби, про всяк випадок, якщо капітану щось швидко знадобиться?"


У цьому демонстраційному знімку з симуляції FS Madame de Pompadour ми спостерігаємо складну та динамічну соціальну екосистему в дії. Система демонструє свою здатність генерувати емерджентний наратив не через заздалегідь написані події, а дозволяючи незалежним агентам взаємодіяти, створюючи багатий і правдоподібний гобелен життя на нижніх палубах.
Симуляція запалюється чітким каталізатором: високопоставленою фігурою влади, капітаном Пепілло, яка створює негайну, високоризиковану напругу через прямі накази. Цей "каскад команд" стає центральною гравітаційною точкою для всієї соціальної екосистеми. Зверніть увагу, як його вимоги не просто запускають індивідуальні сценарії персонажів, а натомість ініціюють єдину, високотискову подію. Це демонструє новий фокус системи на ієрархічній структурі, де дії одного агента можуть визначати фокус, настрій та стратегічну мету для кожного іншого персонажа у спільному середовищі.
Коли накази капітана розходяться по екіпажу, ми бачимо появу складних, реактивних соціальних стратегій. Члени екіпажу не просто продовжують бездіяльні завдання; вони негайно починають обробляти нову реальність. Спостерігайте, як такі персонажі, як Тедрік і Костянтин, формують тимчасові розмовні групи, щоб пліткувати та аналізувати ситуацію, намагаючись зрозуміти нову динаміку влади. Ще більш вражаючим є те, що рядовий Вестлі демонструє вищий рівень емерджентної логіки, активно формулюючи стратегію виживання — пропонуючи йому та товаришу по службі виглядати зайнятими офіційними завданнями, щоб уникнути гніву капітана. Це не заздалегідь написана поведінка, а логічний соціальний висновок, згенерований ШІ у відповідь на сприйняту загрозу, що демонструє надійну здатність до оцінки ризиків.
Це коротке вікно розкриває потужний двигун для емерджентного оповідання, який бездоганно поєднує професійні ролі з особистою тривогою. Ми бачимо, як рядовий Гарольд змушений перейти від невимушеної, тихої розмови до надання формальної, професійної думки щодо вимоги капітана, що ілюструє здатність системи керувати конфліктуючими соціальними контекстами. Уся симуляція обертається навколо центрального конфлікту з Воном, створюючи єдиний наративний "котел під тиском", а не сукупність окремих, тихих драм. Двигун перевершив просте створення гобелена життя, тепер демонструючи силу симуляції складного павутиння соціальних розрахунків, стратегічних альянсів та емерджентного групового мислення під тиском.
FS Madame de Pompadour побудований на сучасній, відокремленій веб-архітектурі, що розділяє бекенд-симулятор від фронтенд-інтерфейсу користувача для модульності та продуктивності.
Бекенд: Python, Flask та Gemini
Увесь основний симулятор та логіка знаходяться в бекенді Python.
- Python: Природний вибір завдяки потужній обробці даних та надійній екосистемі ШІ/ML. Об'єктно-орієнтований підхід дозволяє створювати модульні класи
CrewmanтаActorManager, які легко розширювати. - Flask: Легкий та гнучкий веб-фреймворк, який використовується для створення API, з яким взаємодіє фронтенд. Його єдиний обов'язок — отримувати запит на наступний хід, запускати логіку симуляції та повертати результат.
- Google Gemini: "Привид у машині". Проект інтегрується з API Gemini для живлення своєї системи інтелектуальних дій. Коли персонаж вирішує діяти "інтелектуально", бекенд надсилає запит — що містить контекст корабля, роль персонажа та історію останніх дій — до моделі Gemini, яка потім повертає креативну, контекстно-залежну дію.
Фронтенд: React, Vite та Tailwind CSS
Інтерфейс користувача — це швидка, сучасна односторінкова програма (SPA).
- React: Потужна бібліотека JavaScript для створення динамічних інтерфейсів користувача на основі компонентів. Весь журнал подій — це компонент React, який ефективно оновлюється при отриманні нових дій від бекенду.
- Vite: Інструмент збірки фронтенду наступного покоління, який забезпечує надзвичайно швидкий сервер розробки та оптимізовані виробничі збірки.
- TypeScript: Використовується для додавання статичної типізації до коду JavaScript, покращуючи досвід розробника та зменшуючи кількість помилок.
- Tailwind CSS: CSS-фреймворк з утилітами, який дозволяє швидко та послідовно стилізувати безпосередньо в HTML, як видно з імен класів компонентів.
Загальна архітектура
Потік одного ходу простий та ефективний:
- Користувач натискає кнопку "Далі" в інтерфейсі на основі React.
- Фронтенд надсилає запит
fetchдо кінцевої точки/actionбекенду, що працює на Flask. - Сервер Flask викликає Python
ActorManager, який виконує один хід симуляції, потенційно викликаючи API Gemini. - Бекенд повертає результуючий рядок дії як JSON-об'єкт.
- Фронтенд React отримує JSON, оновлює свій стан і відображає нову подію на екрані, автоматично прокручуючи до останнього запису.
