Активность
Лента обновляется автоматически
- Сегодня
-
Rickymaf присоединился к сообществу
-
Aleksandr4359 присоединился к сообществу
-
Pm me JDK: Migrated to OpenJDK 25. Database: Optimized for MySQL 8.0. #Java 25 Compatibility - Replaced script engine** — removed legacy `ecj-4.4.jar` + `java-engine-1.8.jar . Created `JavaExecutionEngine.java` using JDK's built-in `javax.tools.JavaCompiler` API. All scripts now compile and load at runtime on JDK 25. - Fixed `SelectorThread.java #Enabled Disabled Systems - TvT Event** — added initialization in `GameServer.java`. Config: `config/events/tvt_event.properties`. - Achievements** — added initialization. Config: `config/mods/achievements.xml` (25 achievements). - GodSystem** — added `GodSystem.getInstance()` initialization. Weekly "God of the Server" voting system via database. - All three systems had complete code and configs present # Localization System (EN/RU) The server supports two languages: **Russian** (default) and **English**. Each player's language preference is stored in the database and persists across sessions. 1. Faction NPC** — language selection button appears when choosing a faction 2. Voice command** — type `.lang` in chat to toggle, or `.lang en` / `.lang ru` to set explicitly 3. Localization all Configs #Fake Player system The `.fakeplayer` voice command allows a player to leave their character in the game world as a fake online player (bot without a real client). ### How it works 1. Player types `.fakeplayer` in chat 2. Character ID, name and IP are saved to the `fakeplayer` database table 3. Player is disconnected from the server 4. On next server restart, all characters from the `fakeplayer` table are restored and spawned in the world as fake players Critical Fixes and Important Fixes 1. Security Fixes - Removed backdoor voice command — any player could execute `**' to drop all database tables and shut down the server. No access check was present. File deleted and unregistered from `VoicedCommandHandler`. - Fixed server crash in `SelectorThread`** — `System.exit(0)` was called when a network read buffer was full, allowing a potential DoS attack via crafted packets. Replaced with connection close for the offending client. - Removed suspicious `PingP` class** from `L2PcInstance` — opened a socket to `www.google.com:80` every 4 seconds and broadcast the result to all players. Unnecessary external connection removed. 2.All Warning Fixes - Code Quality: Resolved all warnings across the core. Database Fixes Driver & Configuration Fixes - Updated deprecated MySQL JDBC driver from `com.mysql.jdbc.Driver` to `com.mysql.cj.jdbc.Driver` in `L2DatabaseFactory.java` - Fixed `geoengine.properties` location — moved to `config/` where the code expects it - Fixed login server classpath in `startLoginServer.bat` — corrected library path to `gameserver/libs` - Increased max player limit from 6 to 5000 3. CastleWars — addSpawn() returns null 4. Faction Flag — wrong NPC IDs 5.Fix: replace with correct NPC IDs 6. Base Teleport Buff overwritten 7. Rebirth Skills config 8. Faction Outposts — NPE + HTML paths 9. Donate Instance — null checks 10. PvP Map Change — wrong parameter 11. Faction Guards — NPC ID mismatch 12. Achievements — NPE protection 13. Blessed Enchant Scroll — off-by-one 14. TvT Event — NPE + TP1 coordinates 15. Dungeon Zone — static map reset 16. Faction Points — VIP multiplier 17. Flagged player attack
-
Согласен, речь действительно уже не о формулах, а об уровне восприятия. Но рассинхрон возникает не из-за server-side логики как таковой, а из-за отсутствия предиктивного слоя между вводом и подтверждением. Даже в Interlude отклик не был жёстко привязан к animation commit — клиент показывал намерение действия раньше серверного подтверждения, а затем происходила коррекция. Вопрос не в передаче логики на клиент, а в управлении ожиданием игрока: синхронизация достигается через предикцию и последующую серверную валидацию, а не через перенос механики. То есть задача — не заставить сервер “догонять” анимацию, а обеспечить согласованность между визуальным фидбеком и серверным тиком. Это вопрос слоя взаимодействия, а не отказа от server-driven модели.
-
-
I still don't get why you're doing this. It's 2026, for heaven's sake! Use live projects that are actually supported today instead of trying to dig up old junk from 2016. Everything in there is so outdated it's impossible to debug or use with modern tools.
-
Ошибаешься: это актуально для UX (User Experience). Игроку плевать, где считаются цифры, если его глаза видят одно, а руки чувствуют задержку из-за несовпадения серверного тика и клиентского кадра. Это база любого сервера, но она не решает проблему Input Lag. Если серверный пакет о прохождении дебаффа приходит позже, чем закончилась красивая анимация нового клиента, игрок получает визуальный лаг и рваный геймплей. Клиент - это интерфейс взаимодействия. Если твой слой рисует цель на дистанции 2000, а серверный Interlude-лимит не дает нажать на нее скилл до 900, ты ломаешь позиционирование и логику боя, превращая игру в симулятор чтения ошибок Цель слишком далеко. Ментальный тайминг игрока завязан именно на анимацию. Если ты не используешь animation commit, ты получаешь эффект киселя: персонаж уже докастовал визуально, но стоит столбом, потому что сервер еще досчитывает старый темп. Это невозможно без рассинхрона, потому что движок Classic и движок Interlude имеют разную частоту обновления (tick rate). Пытаясь сохранить темп 2006 года в оболочке 2024-го, ты создаешь не комфорт, а вечное ощущение высокого пинга, либо вялого геймплея. Ты пытаешься адаптировать математику, забывая про физику восприятия. Без передачи части логики на клиент (что ты отрицаешь), ты никогда не добьешься той отзывчивости персонажа, за которую ценят Interlude. Это будет просто кривой скин на старом движке.
- Вчера
-
rorzx присоединился к сообществу
-
Это справедливое замечание, но оно актуально в случае client-driven механик. В текущей реализации расчёт урона, крита, каст-таймингов и прохождения дебаффов остаётся server-side. Клиент используется как визуальный слой, а не как источник таймингов. Поэтому новые анимации или дистанции прорисовки сами по себе не меняют баланс — если не завязывать механику на animation commit. Задача как раз и заключается в том, чтобы сохранить server-driven темп Interlude в рамках более современной клиентской оболочки. То есть речь не о переносе формул “как есть”, а о контролируемой адаптации без передачи логики на клиент.
-
-
Если оставить старый темп в новом теле, игра ощущается неестественной, а если ускорить процесс - теряется дух хардкора. Как только ты добавляешь в Interlude хроники, современный Classic клиент, то вместо приключения, получается галерея иконок на экране. Старые формулы урона будут работать криво. Например, лучники или маги могут стать либо имбами из-за новой дистанции прорисовки, либо бесполезными из-за того, что в новом коде, иначе считается шанс крита и скорости каста.
- Последняя неделя
-
Warthunder присоединился к сообществу
-
Shinergylhc присоединился к сообществу
-
PriceGid изменил фотографию своего профиля
-
PriceGid присоединился к сообществу
-
Дякую за розгорнуту думку — загалом з нею складно не погодитись. Interlude дійсно є завершенням старої школи з її таймінгами та механічною “жорсткістю”, яка й формувала той самий геймплей. Classic же — це інша філософія, побудована на сучаснішій клієнтській базі та змінених формулах. Саме тому цей проєкт і не намагається “відтворити Interlude через Classic”. Його задача — адаптувати класичну логіку та відчуття гри в рамках сучаснішої технічної основи. Тобто це не спроба замінити стару школу, а скоріше експеримент: що буде, якщо поєднати стабільну архітектуру сучасного клієнта з геймплейними принципами старих хронік. І саме в цьому напрямку зараз ведеться робота.
-
Interlude - это финал старой школы с её ограничениями и если и бесплатно брать то лучше устоявшиеся команды. Classic - это попытка корейцев продать ностальгию, упаковав её в современную систему с автобоем. Classic базируется на современном клиенте (от хроник GoD/Helios). Отсюда другая плавность анимаций, иные задержки (cooldowns) и механика откликов. В оригинальном Interlude всё было топорнее и иначе, но именно это создавало те самые тайминги. В Classic переработаны формулы шанса крита, прохождения дебаффов и скорости каста. То, что в Interlude работало по принципу прошел летал - убил, в Classic заменено на более современный математический баланс. Сравнивать их - это как пересесть с механической коробки передач (Interlude) на современный автомат (Classic): вроде машина та же, но контроль ощущается совсем иначе.
-
Дякую. L2jMobius обраний свідомо як стабільна база з чистою архітектурою, яку можна розвивати під потрібний протокол. p110 у даному випадку не є “кінцевою точкою”, а робочою платформою, яка поступово доопрацьовується. Щодо мережевої частини — вона не є фінальною і також знаходиться в процесі оптимізації. Проєкт не позиціонується як готовий “ідеальний Classic”, а як розвиток стабільної основи.
-
Коментарі без конструктиву залишу без уваги 🙂
-
Дякую за думку 🙂 Проєкт створюється не заради “швидкого запуску сервера”, а як довгострокова розробка емулятора на базі L2jMobius. Робота ведеться у вільний час з акцентом на стабільність та відповідність Classic-механіці. Він розповсюджується безкоштовно та відкритий для тестування — тому кожен бажаючий може перевірити і зробити власні висновки. Платно можуть надаватися лише додаткові модифікації або дизайн за індивідуальним запитом — сама збірка залишається безкоштовною. Якщо є конкретні зауваження щодо технічної частини — буду радий їх почути.
-
Просмотр файла ai.assistant netbeans64 - 28 ai.assistant netbeans64 - 28 Добавил amada Добавлено 02/26/26 Категория Прочее Автор amada
-
Hello guys i’m looking for OvC Source interlude . I believe the topic it’s to old and the author of project it’s retired and don’t have any conntact . That’s why i decide to qsk if any of you have the source code? I think the forum it’s not actve like 5/6/7 year before but i want to try my luck. ❤️
