ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ β ΡΠ΄Π°Π»ΡΠ½Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Π² ΠΠΎΡΠΊΠ²Π΅
ΠΠ°ΡΠ°: 2025-12-26
ΠΠ΅ΡΠ°Π»ΠΈ
Π Π΅Π³ΠΈΠΎΠ½
ΠΠΎΡΠΊΠ²Π°
ΠΠ°Π½ΡΡΠΎΡΡΡ
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ°ΡΠ° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ
2025-12-26
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΎΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°. ΠΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ: Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Python-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΡΠΎΠ²Π½Ρ Middle Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠΌΠΈ Ρ OpenAI API ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ RAG-ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΎΠ². Π Π°Π±ΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ REST API, ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, Π²Π΅ΠΊΡΠΎΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ, ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠΎ streaming-ΠΎΡΠ²Π΅ΡΠ°ΠΌΠΈ LLM.
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ frontend (React) ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π½Π° Go. 🧩 ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠΈ: β’ ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΠ΄ΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ Β«ΠΊΠΎΠ½ΡΠ΅Π½ΡΒ»: API, Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ°, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ
β’ Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° REST API (FastAPI)
β’ ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ OpenAI API: ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠ²Π΅ΡΠΎΠ², Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠ΅ΡΡΠ°ΠΈ
β’ ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π΄Π°Π½Π½ΡΡ
: ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅, Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΡΠ°Π±ΠΎΡΠ° Ρ JSON/ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ
β’ Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° RAG-ΠΏΠΎΡΠΎΠΊΠ°: ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ, embeddings, ΡΠ°Π±ΠΎΡΠ° Ρ vector store
β’ Π Π°Π±ΠΎΡΠ° Ρ ΠΎΡΠ΅ΡΠ΅Π΄ΡΠΌΠΈ (ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ NATS JetStream): ΠΏΡΠΎΠ΄ΡΡΠ΅ΡΡ/ΠΊΠΎΠ½ΡΡΡΠΌΠ΅ΡΡ
β’ ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ frontend-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (React): ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠ΅ API, ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΎΠ², ΡΠΎΡΠΌΠ°ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ
β’ ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ Π½Π° Go
β’ Code review, ΡΠ½ΠΈΡ-ΡΠ΅ΡΡΡ, ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ²
β’ Π Π°Π±ΠΎΡΠ° Ρ GitLab (CI, merge requests, ΡΠ΅Π»ΠΈΠ·Ρ) 🛠 Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ: β’ Π£Π²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ Python 3, ΡΠΈΡΡΡΠΉ ΡΠΈΡΠ°Π΅ΠΌΡΠΉ ΠΊΠΎΠ΄
β’ ΠΠΏΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ REST API (FastAPI)
β’ ΠΠ°Π·ΠΎΠ²ΡΠ΅ Π·Π½Π°Π½ΠΈΡ SQL, ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ PostgreSQL
β’ Π Π°Π±ΠΎΡΠ° Ρ JSON, Pandas, ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ
β’ ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ API
β’ ΠΠΏΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡβΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ (frontend ↔ backend)
β’ Π£ΠΌΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ°ΡΡ ΡΠ΅Ρ
Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ (Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈΠΉ)
β’ ΠΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ, Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΡΡΡ, ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ ⭐ ΠΡΠ΄Π΅Ρ ΠΏΠ»ΡΡΠΎΠΌ: β’ Embeddings (OpenAI, Sentence-Transformers), vector search, RAG
β’ LangChain / LlamaIndex
β’ Π Π°Π±ΠΎΡΠ° ΡΠΎ streaming-LLM (SSE, Π΄Π΅Π»ΡΡΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ²)
β’ ΠΠ°Π·ΠΎΠ²ΡΠΉ ΠΎΠΏΡΡ Ρ React (ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π°, Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ API)
β’ ΠΠΏΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈΠ»ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Go-ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ
β’ Docker (Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, dev-ΡΡΠ΅Π΄Ρ)
β’ ΠΡΠ΅ΡΠ΅Π΄ΠΈ (NATS JetStream)
β’ ETL / ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Ρ Π΄Π°Π½Π½ΡΡ
β’ Asyncio 📌 ΠΠΏΡΡ:
2β3 Π³ΠΎΠ΄Π°. ΠΡΠΈΡΠΈΡΠ½ΠΎ: ΠΎΠΏΡΡ Π² ETL, AI-Π°Π³Π΅Π½ΡΠ°Ρ
, RAG, embeddings. 💰 ΠΠΏΠ»Π°ΡΠ°: β’ ΠΡΠΏΡΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠΊ β 2 ΠΌΠ΅ΡΡΡΠ°
β’ ΠΠ° ΠΈΡΠΏΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΌ: 180 000 ₽.
ΠΠΎΡ
ΠΎΠΆΠΈΠ΅ Π·Π°ΠΊΠ°Π·Ρ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ 1Π‘
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠ°ΡΡΡΠΎΠΈΡΡ: ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ 1Π‘: ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅. ΠΠ΅ΡΡΠΈΡ: 7.7. ΠΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ, ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ΅Π½Ρ Ρ Π²ΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΡ ΡΠΎΠ²Π°ΡΠΎΠ², ΠΏΠ΅ΡΠ΅ΠΎΡΠ΅Π½ΠΊΠ°. ΠΠ°Π΄ΠΎ Π·Π°ΠΉΡΠΈ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΠ΅ΡΠ΅Π· Π°Π½ΠΈΠ΄Π΅ΡΠΊ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π»Π° Π½Π° ΠΌΠΎΠ΅ΠΉ Π±Π°Π·Π΅.
ΠΠΎΡΠΊΠ²Π°
Π€ΡΠΈΠ»Π°Π½ΡΠ΅ΡΡ
2025-12-27
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° 1Π‘
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΡΠΆΠ½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° 1Π‘. ΠΠ°ΡΡΡΠΎΠΈΡΡ: ΠΎΡΡΡΡΡ 1Π‘, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ 1Π‘: ΠΠΠ’ ΠΡΠ΅Π½Π΄Π°. ΠΠ΅ΡΡΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ: 8.3. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ: Π΄ΠΎ 10 ΡΠ΅Π» ΠΠ°Π΄Π°ΡΠ°: ΠΠΎΠ½ΡΡΠ»ΡΡΠ°ΡΠΈΡ ΠΏΠΎ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΡΠ΅Π½Π΄Π°.
ΠΠΎΡΠΊΠ²Π°
Π€ΡΠΈΠ»Π°Π½ΡΠ΅ΡΡ
2025-12-27
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΠΎΡΠΎΠ² Telegram
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ°Π΄Π°ΡΠΈ ΡΠ°Ρ-Π±ΠΎΡΠ°: ΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π Π’Π. ΠΡΠΎΠ΄ΡΠΊΡ: ΠΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΊΠΎΠΌΡΡΠ½ΠΈΡΠΈ. Π’Π΅Ρ
Π·Π°Π΄Π°Π½ΠΈΠ΅ Π΅ΡΡΡ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π’Π , Π΅ΡΡΡ ΡΠ΅ΡΠ½ΠΎΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΠ.
ΠΠΎΡΠΊΠ²Π°
Π€ΡΠΈΠ»Π°Π½ΡΠ΅ΡΡ
2025-12-27
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ/ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Ρ Π½ΡΠ»Ρ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΡΠΎ Π·Π°Π΄Π°ΡΠΈ ΠΌΠΎΠ³Ρ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ Π² ΡΠ°ΡΠ΅. ΠΠ΅Π΄Π»Π°ΠΉΠ½ 11 ΡΡΡΠ°.
ΠΠΎΡΠΊΠ²Π°
Π€ΡΠΈΠ»Π°Π½ΡΠ΅ΡΡ
2025-12-27
ΠΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ²
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠ»Ρ ΡΠ΅Π±Ρ
Π‘Π°ΡΠ°ΡΠΎΠ²
Π Π΅ΠΏΠ΅ΡΠΈΡΠΎΡΡ
2025-12-27
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ³Ρ
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π‘Π΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ΄ ΠΊΠ»ΡΡ, ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°ΡΡ Π³ΠΎΡΠΎΠ²ΡΡ ΠΈΠ³ΡΡ, ΠΠ΅ΡΠ΅Π΄Π΅Π»Π°ΡΡ ΠΌΠΎΠ΄Ρ. ΠΠ³ΡΠ°: Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π° ΠΠ. ΠΠ³ΡΠ°: ΠΌΠ°ΡΡΠΎΠ²Π°Ρ ΠΎΠ½Π»Π°ΠΉΠ½. ΠΠ°Π½Ρ: RPG. ΠΠ»Π°ΡΡΠΎΡΠΌΠ°: Java, Forg. ΠΡΠ°ΡΠΈΠΊΠ°: 3D. ### Π’Π Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° β JJK: Jujutsu Kaisen Craft #### Π¦Π΅Π»Ρ ΠΠ½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠΎΠ΄ΠΏΠ°ΠΊ: Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠΈ; ΡΠ±ΡΠ°ΡΡ/ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅Π±Π°Π»Π°Π½ΡΠ½ΡΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠΈ; ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΈΠ³ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ; ΡΠ΄Π»ΠΈΠ½ΠΈΡΡ ΠΏΡΠΎΠΊΠ°ΡΠΊΡ; ΡΠ½ΠΈΠ·ΠΈΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Β«ΡΡΠ΅Π±ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ
Β» ΠΏΠ΅ΡΡΠΎΠ½Π°ΠΆΠ΅ΠΉ; ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΡΠΌΠ΅ΡΡΠ½ΠΎΡΡΡ ΠΈΠ³ΡΠΎΠΊΠΎΠ². --- ### 1. ΠΡΠ°ΡΠΊΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΠΌΠΎΠ΄ΠΏΠ°ΠΊ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ, ΡΠ΅ΠΈΠ³ΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ΅ΠΉ, Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΆΠ΅ΡΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ
ΠΌΠΎΠ΄ΠΎΠ². --- ### 2. Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ - **ΠΠ΄ΠΌΠΈΠ½?ΠΊΠΎΠΌΠ°Π½Π΄Ρ**: kick, kill, revive, setlevel, givexp, giveresource, setrole, freeze, tp, togglesystem, logs. - **ΠΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅**: Π²ΡΠ΅ Π°Π΄ΠΌΠΈΠ½?Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ ΡΠΌΠ΅ΡΡΠΈ Π² JSON?Π»ΠΎΠ³Π°Ρ
Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠΌΠΈ. - **ΠΠ°Π»Π°Π½Ρ**: ΠΎΡΠΊΠ»ΡΡΠΈΡΡ/ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠΈ one?shot, Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΡ
ΡΠ΅ΡΡΡΡΠΎΠ², ΠΈΠ³Π½ΠΎΡ Π±ΡΠΎΠ½ΠΈ, ΠΏΠ΅ΡΠΌΠ°Π½Π΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ. - **ΠΠΎΠ½ΡΡ?ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠΈ**: Emergency Shield (Π°Π²Π°ΡΠΈΠΉΠ½ΡΠΉ ΡΠΈΡ), ΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅, Π°Π½ΡΠΈ?ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Ρ diminishing returns. - **Π Π΅ΠΈΠ³ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ**: ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΠΌΠΈΡΠΎΠ²ΡΡ
ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ°ΡΡΠΎΠ²ΡΡ
ΡΡΠ»ΠΎΠ²ΠΈΠΉ, Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ
ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ², ΠΌΠ΅ΡΠ°ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΡΠΈΡΠΌΠΈ. - **ΠΡΠΎΠΊΠ°ΡΠΊΠ°**: ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ max level (ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΠ΅ΠΌΠΎ), Π½ΠΎΠ²Π°Ρ ΠΊΡΠΈΠ²Π°Ρ XP, ΡΠ°Π·Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊ ΠΊΠ°ΠΆΠ΄ΡΠ΅ N ΡΡΠΎΠ²Π½Π΅ΠΉ, ΡΠ΅Π΄ΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ Π΄Π»Ρ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄ΠΎΠ². - **Π‘ΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π²Π»ΠΈΡΠ½ΠΈΠ΅**: ΠΊΠ²ΠΎΡΡ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅ΠΏΡΡΠ°ΡΠΈΠΈ, Π³ΠΎΠ»ΠΎΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»Ρ Π²Π°ΠΆΠ½ΡΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, Π»ΠΈΠΌΠΈΡ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΡ
ΡΡΡΠ΅ΠΊΡΠΎΠ² Π½Π° ΡΠ΅Π»Ρ. - **Π‘ΠΌΠ΅ΡΡΡ ΠΈΠ³ΡΠΎΠΊΠ°**: Π·ΠΎΠ½Ρ Ρ ΡΠ°Π·ΡΠ΅ΡΡΠ½Π½ΠΎΠΉ ΡΠΌΠ΅ΡΡΠ½ΠΎΡΡΡΡ, ΡΠ΅ΡΠΏΠ°ΡΠ½, ΠΏΠΎΡΠ΅ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ², ΠΎΠΊΠ½ΠΎ Π΄Π»Ρ Π²ΠΎΡΠΊΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΡΠ·Π½ΠΈΠΊΠΎΠΌ, anti?grief Π»ΠΈΠΌΠΈΡΡ. --- ### 3. ΠΠΎΠΌΠ°Π½Π΄Ρ (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ) - `/jjk admin kick [reason]` - `/jjk admin kill [reason]` - `/jjk admin revive ` (mode: full|partial) - `/jjk admin setlevel ` - `/jjk admin givexp ` - `/jjk admin giveresource ` - `/jjk admin setrole ` - `/jjk admin freeze ` - `/jjk admin tp ` - `/jjk admin togglesystem ` - `/jjk admin logs [filter]` --- ### 4. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ (ΡΠ°ΠΉΠ»Ρ Π² `config/jjk/`) - **admin.yml** β ΠΏΡΠ°Π²Π° ΡΠΎΠ»Π΅ΠΉ: SuperAdmin, Admin, Moderator, Auditor. - **balance.yml** β ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±ΡΠΎΠ½ΠΈ, Emergency Shield, ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΡΡΡΠ΅ΠΊΡΠΎΠ² (maxDurationSeconds, drWindowSeconds, drMultiplier). - **progression.yml** β maxLevel, baseXP, expFactor, levelsPerTier, xp.dailyCap, xp.sessionCap. - **events.yml** β ΡΠΏΠΈΡΠΎΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ: id, weight, duration, effects. - **social.yml** β actionQuota, quotaWindowSeconds, reputationDecayPerDay, maxNegativeEffectsPerTarget. - **death.yml** β zones.deathAllowed[], respawn.baseSeconds, death.lossPercent, reviveWindowSeconds, antiGrief.killLimit, killLimitWindow. --- ### 5. Π€ΠΎΡΠΌΡΠ»Ρ (Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ) - **XP:** \(\displaystyle xpForLevel(n)=\lfloor baseXP\cdot n^{expFactor}\rfloor\). - **Π£ΡΠΎΠ½ ΠΏΠΎΡΠ»Π΅ Π±ΡΠΎΠ½ΠΈ:** `effectiveDamage = baseDamage * (1 - armor / (armor + 100))`. - **DR Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ:** ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΠΉ CC Π² `drWindowSeconds` ? Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ *= `drMultiplier`. - **Emergency Shield:** Π΅ΡΠ»ΠΈ `incomingDamage >= thresholdPercent * maxHP` ? `absorb = min(maxAbsorb, incomingDamage * absorbPercent)`. --- ### 6. Π‘ΠΎΠ±ΡΡΠΈΡ ΠΈ API (ΠΊΡΠ°ΡΠΊΠΎ) - `AdminService.kick(player, reason)` - `AdminService.kill(player, reason)` - `AdminService.revive(player, mode)` - `LevelService.addXP(player, amount)` - `EventManager.spawnRandomEvent()` - `DeathService.onPlayerDeath(victim, killer, cause)` - Π‘ΠΎΠ±ΡΡΠΈΡ: `onPlayerDamage(attacker, victim, damage, damageType)`, `onApplyControlEffect(actor, target, effect)`, `onLevelUp(player, newLevel)`. --- ### 7. Π₯ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
- **ΠΠ³ΡΠΎΠΊΠΈ:** `players/.json` Ρ ΠΏΠΎΠ»ΡΠΌΠΈ `uuid, level, xp, stats, reputation, metaProgression, lastDeath`. - **ΠΠΎΠ³ΠΈ:** `logs/jjk_admin.log`, `logs/jjk_deaths.log` Π² JSON, ΡΠΎΡΠ°ΡΠΈΡ 90 Π΄Π½Π΅ΠΉ. - **ΠΠΎΠ½ΡΠΈΠ³ΠΈ:** `config/jjk/*.yml`. --- ### 8. Acceptance criteria 1. ΠΡΠ΅ Π°Π΄ΠΌΠΈΠ½?ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΈ ΠΏΠΈΡΡΡ Π»ΠΎΠ³. 2. One?shot ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Π΅. 3. CC Π΄Π»ΠΈΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΡΡΠ΅ `control.maxDurationSeconds` ΠΈ ΠΏΠΎΠ΄ΡΠΈΠ½ΡΠ΅ΡΡΡ DR. 4. XP ΠΊΡΠΈΠ²Π°Ρ ΠΈ ΡΠ°Π·Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎ ΡΡΠΎΠ²Π½ΡΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ. 5. Π‘ΠΎΠ±ΡΡΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΏΠΎ Π²Π΅ΡΠ°ΠΌ; loot Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ ΡΠ°Π½ΡΠ°ΠΌΠΈ. 6. Π Π΅ΠΏΡΡΠ°ΡΠΈΡ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠΈΠ»Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ
Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ; ΠΊΠ²ΠΎΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ. 7. Π‘ΠΌΠ΅ΡΡΡ Π»ΠΎΠ³ΠΈΡΡΠ΅ΡΡΡ; ΡΠ΅ΡΠΏΠ°ΡΠ½ ΠΈ ΠΏΠΎΡΠ΅ΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ; Π°Π΄ΠΌΠΈΠ½?revive ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. 8. Π‘Π΅ΡΠ²Π΅Ρ Π²ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»Π΅Π²ΠΎΠΉ ΠΏΠΎΡΠΎΠ³ ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π±Π΅Π· Π΄Π΅Π³ΡΠ°Π΄Π°ΡΠΈΠΈ TPS Π±ΠΎΠ»Π΅Π΅ 10% (ΠΏΠΎΡΠΎΠ³ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°ΡΡ). --- ### 9. ΠΠ»Π°Π½ ΡΠ°Π±ΠΎΡ (ΠΌΠΈΠΊΡΠΎ?ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ) 1. Π‘Π±ΠΎΡ ΡΠΏΠΈΡΠΊΠ° Π½Π΅Π±Π°Π»Π°Π½ΡΠ½ΡΡ
ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊ ΠΈ ΡΠΊΡΠΏΠΎΡΡ Π΄Π°Π½Π½ΡΡ
ΠΈΠ³ΡΠΎΠΊΠΎΠ² β 1β2 Π΄Π½Ρ. 2. ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°: ΠΊΠΎΠ½ΡΠΈΠ³ΠΈ, Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ β 2β3 Π΄Π½Ρ. 3. AdminModule: ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ Π»ΠΎΠ³ΠΈ β 3β5 Π΄Π½Π΅ΠΉ. 4. CombatModule: Π±ΡΠΎΠ½Ρ, CC, Emergency Shield β 5β8 Π΄Π½Π΅ΠΉ. 5. ProgressionModule: ΡΡΠΎΠ²Π½ΠΈ, XP, ΡΠ°Π»Π°Π½ΡΡ β 4β6 Π΄Π½Π΅ΠΉ. 6. EventModule + Loot β 3β5 Π΄Π½Π΅ΠΉ. 7. SocialModule: ΡΠ΅ΠΏΡΡΠ°ΡΠΈΡ, ΠΊΠ²ΠΎΡΡ β 3β4 Π΄Π½Ρ. 8. DeathModule ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ β 2β3 Π΄Π½Ρ. 9. Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΊΠΈ β 5β10 Π΄Π½Π΅ΠΉ. --- ### 10. Π§ΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ - ΠΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΌΠΎΠ΄ΠΎΠ². - ΠΠΊΡΠΏΠΎΡΡ ΡΠ΅ΠΊΡΡΠΈΡ
Π΄Π°Π½Π½ΡΡ
ΠΈΠ³ΡΠΎΠΊΠΎΠ². - Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ
Π½Π΅Π±Π°Π»Π°Π½ΡΠ½ΡΡ
ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊ (ΡΠ°ΠΉΠ»Ρ/ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ). - Π‘Π΅ΡΠ²Π΅Ρ?ΡΡΠ΅Π½Π΄ Π΄Π»Ρ ΡΠ΅ΡΡΠΎΠ². - ΠΠΎΠ½ΡΠ°ΠΊΡ Π»ΠΈΡΠ° Π΄Π»Ρ ΡΡΠΎΡΠ½Π΅Π½ΠΈΠΉ ΠΏΠΎ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠ°ΠΌ. --- ### ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ»Ρ Π² `config/jjk/`. ΠΠΎΠ³ΠΈ β Π² JSON?ΡΠΎΡΠΌΠ°ΡΠ΅. ΠΡΠ΅ Π°Π΄ΠΌΠΈΠ½?Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΡΠ΅Π±ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠ°Π² ΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² Π»ΠΎΠ³.
ΠΠΎΡΠΊΠ²Π°
Π€ΡΠΈΠ»Π°Π½ΡΠ΅ΡΡ
2025-12-26