diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 6d56781..0b281e1 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -27,12 +27,12 @@ "state": { "type": "markdown", "state": { - "file": "WORK & PROJECTS/UAS/Servers access.md", + "file": "PERSONAL PROJECTS/VPS.md", "mode": "source", "source": false }, "icon": "lucide-file", - "title": "Servers access" + "title": "VPS" } } ], @@ -199,10 +199,15 @@ }, "active": "267d6f6cb1297872", "lastOpenFiles": [ + "PERSONAL PROJECTS/cloudflare temp mail.md", + "PERSONAL PROJECTS/VPS.md", "PERSONAL PROJECTS/pe2ep script.md", + "JRPG.md", + "2025-07-18.md", + "Без названия.md", + "WORK & PROJECTS/UAS/Servers access.md", "WORK & PROJECTS/UAS/MAIL TRANSFER.md", "WORK & PROJECTS/Mol/Серверы/mail.mol-soft.ru.md", - "WORK & PROJECTS/UAS/Servers access.md", "PERSONAL PROJECTS/STREAMS/P2EP GOLD ZODIAC AOBA TV.md", "PERSONAL PROJECTS/STREAMS/TEXT TEMPLATE.md", "WORK & PROJECTS/Mol/Серверы/moldev.ru.md", @@ -214,7 +219,6 @@ "Untitled.base", "WORK & PROJECTS/UAS/Access.md", "WORK & PROJECTS/Mol/Серверы/git.moldev.ru.md", - "Без названия.md", "WORK & PROJECTS/Mol/Документы ООО Моль-софт/Счета оплаты серверов/Operation_Check_PJSC_Sberbank_04032026.pdf", "WORK & PROJECTS/Mol/Документы ООО Моль-софт/Счета оплаты серверов/beget_2026_03.pdf", "WORK & PROJECTS/Mol/Документы ООО Моль-софт/Счета оплаты серверов/beget_2026_03.pdf.crdownload", @@ -238,14 +242,10 @@ "WORK & PROJECTS/Mol/Планы и диаграммы/Разработка - 08_2025.md", "WORK & PROJECTS/Mol/Deepseek API-key.md", "WORK & PROJECTS/Mol/Ideas/Все идеи для Моли.md", - "WORK & PROJECTS/Mol/Планы и диаграммы/Alfa Cloud/Alfa cloud readme.md", "WORK & PROJECTS/Mol/Планы и диаграммы/Alfa Cloud/Alfa cloud prod.canvas", "WORK & PROJECTS/Mol/Планы и диаграммы/Согласования и статусы/entities flow.canvas", "WORK & PROJECTS/Mol/Планы и диаграммы/Согласования и статусы/Структура статусов.canvas", "PERSONAL PROJECTS/P2EP/cdRead.canvas", - "WORK & PROJECTS/UAS/Plan.md", - "PERSONAL PROJECTS/cloudflare temp mail.md", - "PERSONAL PROJECTS/P2EP/pseudoCode/fade calculation.md", "Структура объектов испытаний.png", "Схема связей юрлиц и адресов.png", "WORK & PROJECTS/img/Pasted image 20241212175419.png", diff --git a/PERSONAL PROJECTS/VPS.md b/PERSONAL PROJECTS/VPS.md new file mode 100644 index 0000000..a2d8de5 --- /dev/null +++ b/PERSONAL PROJECTS/VPS.md @@ -0,0 +1,9 @@ + +95.81.100.45 + +root +shemet +ljuJdjh5ljuJdjh5 + +proto +ee7ad4edc55facbf89916f064ed56774c86b6f6e636f6e2e6e6c \ No newline at end of file diff --git a/PERSONAL PROJECTS/pe2ep script.md b/PERSONAL PROJECTS/pe2ep script.md deleted file mode 100644 index 1bcc79c..0000000 --- a/PERSONAL PROJECTS/pe2ep script.md +++ /dev/null @@ -1,277 +0,0 @@ -# Скриптовый формат `Perep_script` - -**Версия:** 1.0 (стабильная, с поддержкой универсальных ссылок) -**Цель:** Полное описание синтаксиса и семантики скриптового языка, используемого в событиях _Persona 2 (PSX)_. -**Ключевая особенность:** Поддержка **универсальных ссылок** через `!`, `@`, `#`. - ---- - -## 1. Общее описание - -`Perep_script` — это **событийно-ориентированный, потоковый скриптовый язык**, предназначенный для описания интерактивных сцен в игре: диалоги, эффекты, анимации, переходы. - -Он сочетает: - -- Низкоуровневые hex-команды -- Высокоуровневые именованные операции -- **Механизм асинхронного управления через универсальные ссылки** -- Поддержку подпрограмм и ожиданий - ---- - -## 2. Универсальные ссылки: `!`, `@`, `#` - -### 🔥 Главный принцип: - -> **Любая команда может быть помечена символом `!`, `@` или `#`. Это создаёт уникальную ссылку (handle), по которой можно управлять выполнением этой команды.** - -Символы **не имеют семантической привязки** к типу команды (не важно, окно это, звук или задержка). Это просто **три доступных регистра ссылок**. - -|Символ|Назначение| -|---|---| -|`!`|Ссылка типа A (универсальная)| -|`@`|Ссылка типа B (универсальная)| -|`#`|Ссылка типа C (универсальная)| - -> ✅ Можно пометить `SoundPly#`, `000000A8!`, `LoadDung@` — всё валидно. -> ✅ Можно использовать `__WaitTo @` на `collLink@` или `00000043#`. -> ❌ Нельзя использовать один символ для двух активных задач одновременно — поведение не определено (перезапись). - ---- - -### Пример использования: - -PASCAL - -`SoundPly@ 00003023 0000007F // Проиграть звук → handle = @ 00000043# 00000004 // Задержка на 4 тика → handle = # __WaitTo @ // Ждать завершения звука __WaitTo # // Ждать завершения задержки` - -👉 Порядок `__WaitTo` определяет синхронизацию. - ---- - -## 3. Синтаксис команд - -### Формат: - -``` -[Команда][!/@/#] [аргументы...] -``` - -или - -``` -[Команда] [аргументы...] -``` - -Если команда помечена символом — она **регистрируется в системе ссылок** под этим тегом. - ---- - -## 4. Управление выполнением - -### `__WaitTo [!/@/#]` - -- Приостанавливает выполнение скрипта до **завершения команды**, помеченной указанным символом. -- Если команда уже завершена — продолжает сразу. -- Поддерживает асинхронные операции: звуки, загрузки, эффекты. - -**Пример:** - -PASCAL - -`LoadDung@ 00002E06 __WaitTo @ // Ждать загрузки локации` - ---- - -### `__GoSub># [label]` - -- Вызов подпрограммы. -- Метка `#` может использоваться для: - - Отслеживания выполнения - - Прерывания (`__Kill #` — если поддерживается) - - Вложенных ожиданий - -**Пример:** - -PASCAL - -`__GoSub># SHOW_TEXT __WaitTo # // Ждать завершения всей подпрограммы` - -> ⚠️ Реализация `__WaitTo #` зависит от движка: может означать "ждать входа", "ждать выхода" или "ждать завершения". - ---- - -### `__Return--> [label]` - -- Возврат из подпрограммы. -- Указание метки — скорее всего, **отладочное**, чтобы легче было читать скрипт. -- На исполнение не влияет. - ---- - -### Возможные дополнительные команды (предположительно): - -- `__Kill !` — принудительно завершить/прервать операцию с меткой `!` -- `__Check @` — проверить состояние (выполняется/завершена) -- (Требует подтверждения из других скриптов) - ---- - -## 5. Команды (по категориям) - -### 🔹 Аудио - -|Команда|Описание| -|---|---| -|`SoundPly@`|Проиграть звук. Аргументы: `sound_id volume`| -|`SoundStop!`|Остановить звук (если есть)| - ---- - -### 🔹 Визуальные эффекты - -|Команда|Описание| -|---|---| -|`000000A8`|Инициализация эффекта?| -|`000000B9`|Настройка окна: `x y w h color flags`| -|`000000BA`, `000000BB`|Fade-in/out: `type duration flag`| -|`000000A9`|Начало fade-блока| -|`0000004E`|Конец блока или синхронизация| - ---- - -### 🔹 Диалоги - -|Команда|Описание| -|---|---| -|`WindShow!`|Показать окно. Аргумент: режим| -|`TextShow@`|Вывести текст с тегами| -|`WinClose!`|Закрыть окно, связанное с `!`| - ---- - -### 🔹 Управление объектами - -|Команда|Описание| -|---|---| -|`collLink@`|Привязать объект к карте: `type x y z rot`| -|`CSetAnim#`|Установить анимацию: `char_id anim_id speed`| - ---- - -### 🔹 Работа с миром - -|Команда|Описание| -|---|---| -|`LoadDung@`|Загрузить локацию по ID| -|`SetFlag!`|Установить флаг события (если есть)| - ---- - -### 🔹 Системные - -|Команда|Описание| -|---|---| -|`00000043`|Задержка в тиках| -|`__GoSub>#`|Вызов подпрограммы| -|`__WaitTo @`|Ожидание завершения операции| -|`__Return-->`|Возврат из подпрограммы| - ---- - -## 6. Текст и теги - -Поддерживаются **встроенные теги** `[XXXX]`, интерпретируемые как байтовые коды. - -**Пример:** - -PASCAL - -`TextShow@ [2E12][0B00]Привет~[0111]Работает?` - -### Распространённые теги: - -|Тег|Предположение| -|---|---| -|`[2E12]`|Цвет текста| -|`[0B00]`|Размер шрифта| -|`[0100]`|Выравнивание| -|`[0111]`|Пауза между символами| -|`[0611]`|Эффект печати| -|`[0211]`|Звук при символе| -|`[0311]`|Новая строка / страница| - -Символ `~` — **управляющий**: пауза, перенос, продолжение. - ---- - -## 7. Пример: Полный разбор - -PASCAL - -`START: 000000A8 000000B9! 000000A0 00000078 00FFFFFF 00FFFFFF 00000002 SoundPly@ 00003023 0000007F 00000043# 00000004 __WaitTo @ __WaitTo # 000000A9 000000BA! 00000000 00006000 00000001 000000BB# 00000000 00006000 00000001 0000004E __GoSub>$ SHOW_TEXT __WaitTo $ LoadDung@ 00002E06 __Return--> START` - -### Что происходит: - -1. `000000B9!` — настройка окна → handle `!` -2. `SoundPly@` — старт звука → handle `@` -3. `00000043#` — задержка 4 тика → handle `#` -4. `__WaitTo @` — ждать звук -5. `__WaitTo #` — ждать задержку (хотя они могли идти параллельно) -6. Затем — fade-in через `000000BA!`, `000000BB#` -7. `__GoSub>$` — вызов `SHOW_TEXT` с handle `#` (здесь `$` — опечатка? или расширение? возможно, `#`) -8. `__WaitTo $` — ждать завершения подпрограммы -9. `LoadDung@` — загрузка локации -10. `__Return` - -> ⚠️ Ошибка: `__GoSub>$` — возможно, опечатка. Должно быть `__GoSub>#`. Или `$` — четвёртый тип ссылки? (маловероятно) - ---- - -## 8. Ключевые выводы - -### ✅ Сильные стороны: - -- **Универсальность ссылок** — любая команда может быть адресована -- **Гибкое управление потоком** — можно строить сложные цепочки -- **Асинхронность без потоков** — через `__WaitTo` -- **Читаемость** — при правильном использовании - -### ⚠️ Ограничения: - -- Нет проверки на повторное использование ссылки -- Нет обработки ошибок -- Нет явного освобождения handle -- Нет документации от разработчиков — всё по анализу - ---- - -## 9. Рекомендации - -1. **Используйте ссылки последовательно:** - - PASCAL - - `SoundPly@ ... __WaitTo @ TextShow# ... __WaitTo #` - -2. **Не используйте одну метку дважды подряд без ожидания:** - - PASCAL - - `SoundPly@ 1234 SoundPly@ 5678 ← Первая ссылка @ теряется!` - -3. **Для вложенных вызовов используйте разные метки:** - - PASCAL - - `__GoSub># sub1 __GoSub>@ sub2 __WaitTo # __WaitTo @` - - ---- - -## 10. Заключение - -`Perep_script` — это **гибкий, event-driven язык с мощной системой управления выполнением через универсальные ссылки**. Его ключевое преимущество — способность синхронизировать разнородные операции (звук, графика, загрузка) через единый механизм `__WaitTo @`. - -Он идеально подходит для сценариев в RPG с множеством асинхронных действий. -