Skocz do zawartości
Masz już aplikację Sharegon?

Odkryj wszystkie możliwości. Dowiedz się więcej

Sharegon.pl

Zainstaluj aplikację Sharegon i korzystaj z powiadomień push oraz licznika nowych aktywności bezpośrednio z ekranu głównego.

Aby zainstalować tę aplikację na iOS i iPadOS.
  1. Tap the Share icon in Safari
  2. Przewiń menu i stuknij Dodaj do ekranu początkowego.
  3. Stuknij Dodaj w prawym górnym rogu.
Zainstaluj aplikację Sharegon na Androidzie
  1. Otwórz Sklep Google Play na swoim smarfonie.
  2. Wyszukaj „Sharegon” w pasku wyszukiwania.
  3. Stuknij „Zainstaluj”, aby pobrać aplikację.

Tworzę Nowy Silnik do Metin2 – C++23, Vulkan, ECS

Nieaktywny

Featured Replies

Opublikowano

Cześć!

Pracuję nad nowoczesnym silnikiem gry Metin2. Projekt tworzony jest od zera w języku C++23/C++26, z naciskiem na wydajność, modularność i czysty kod. Poniżej najważniejsze założenia techniczne:

🔧 Główne komponenty projektu:

Auth Server

Database Server

Game Server - w trakcie

Client (desktop + mobilny) - w trakcie

📦 Własne biblioteki i moduły

NetworkLib

JsonParserLib

DbLib

AuthLib

LogLib

SecurityLib

ThreadManagerLib

SchedulerManager

EventManagerLib

🚫 Dlaczego nie modernizuję starego silnika?

Stary kod Metin2 jest mocno związany i nie da się go efektywnie przystosować do nowoczesnych wzorców jak ECS, SoA czy moduły C++23. Modernizacja byłaby złożona, kosztowna i nieopłacalna, więc wybrałem stworzenie nowego silnika od podstaw, dla pełnej kontroli i wydajności

Rendering oparty na Vulkanie – nowoczesne, niskopoziomowe API graficzne zapewniające wysoką wydajność i pełną kontrolę nad GPU

Wieloplatformowość – wsparcie dla systemów Windows, Linux i Android (desktop i mobile)

Modularna architektura umożliwiająca łatwe portowanie na inne platformy w przyszłości (np. macOS, iOS)

🚀 Główne cechy projektu:

Napisany w C++23, z wykorzystaniem modułów językowych

Architektura ECS (Entity-Component-System) + SoA (Structure of Arrays) dla maksymalnej wydajności

Wielowątkowy job system do przetwarzania logiki gry

Wsparcie dla Lua jako języka skryptowego do tworzenia logiki gry i modów

Integracja z PostgreSQL (przez libpqxx) do zarządzania danymi gry – idealne rozwiązanie do przechowywania danych graczy, stanu świata gry, sesji multiplayer i analityki

Wieloplatformowość – wsparcie dla Windows, Linux, Android (w tym tablety), a w przyszłości także iOS/iPadOS oraz macOS

Dlaczego to robię?

Ten projekt to dla mnie coś więcej niż tylko techniczne wyzwanie.

🔹 Chcę stworzyć swój własny silnik – jako fundament pod przyszłą grę (lub gry).

🔹Zależy mi na realnym rozwoju umiejętności – nie tylko w C++, ale też w projektowaniu systemów na poziomie produkcyjnym.

🔹Mam nadzieję, że projekt będzie mógł kiedyś posłużyć innym – a może nawet stać się źródłem dochodu.

Nie korzystam z gotowych rozwiązań, bo chcę pełnej kontroli, elastyczności i braku kompromisów. To mój sposób na naukę i tworzenie czegoś naprawdę „swojego”.

📅 Plan i dalsze kroki:

🔸 Planowany termin ukończenia MVP: 2030–2034

🔸 Obecnie pracuję nad:

‌budową Database Server

‌modularną biblioteką sieciową, opartą na ECS + SoA

🔸 Cena: Brak ustalonego modelu licencjonowania – wszystko zależy od zainteresowania społeczności

💬 Twoja opinia ma znaczenie!

Jestem bardzo ciekaw, co o tym myślisz.

🔹Jakie funkcje byłyby dla Ciebie kluczowe w takim silniku?

🔹Co powinno się znaleźć w MVP, żebyś chciał/chciała go używać – lub nawet kupić?

🔹Czy ważna byłaby dla Ciebie dokumentacja, edytor, gotowe komponenty sieciowe?

🔹Masz inne pomysły lub uwagi, które mogłyby usprawnić ten projekt?

💡 Planuję też możliwość udostępnienia projektu jako open source.

Czy byłbyś/byłabyś zainteresowany/a udziałem w takim projekcie?
Po Ukończeniu Database Server ta opcja będzie już nieaktywna.

🔹Współpraca przy kodzie?

🔹 Pisanie dokumentacji?

🔹 Testowanie i feedback?

Edytowane przez Eclipse Shade

Opublikowano

To bardzo ambitny projekt, obawiam się, że w trakcie możesz stracić zapał do rozwoju to akurat częste przy czymś aż tak ambitnym przerabiałem to wiele razy. Jaki jest twój poziom wiedzy w programowaniu? bo tu jednak musisz praktycznie od zera stworzyć całą architekturę więc potrzebujesz wiedzy na poziomie inżyniera. Myślę, że bardziej byś się rozwinął dołączając do projektu przykładowo https://github.com/MeikelLP/quantum-core-x gdzie pracują nad podobnym rozwiązaniem, ale współpraca z innymi programistami daje dużego boosta w rozwoju.

Opublikowano
  • Autor
6 minut temu, Sevence napisał(a):

To bardzo ambitny projekt, obawiam się, że w trakcie możesz stracić zapał do rozwoju to akurat częste przy czymś aż tak ambitnym przerabiałem to wiele razy. Jaki jest twój poziom wiedzy w programowaniu? bo tu jednak musisz praktycznie od zera stworzyć całą architekturę więc potrzebujesz wiedzy na poziomie inżyniera. Myślę, że bardziej byś się rozwinął dołączając do projektu przykładowo https://github.com/MeikelLP/quantum-core-x gdzie pracują nad podobnym rozwiązaniem, ale współpraca z innymi programistami daje dużego boosta w rozwoju.

Cześć!

Dzięki za link, ale to nie mój styl. Tam jest emulator w C#, zrobiony w starym, obiektowym stylu.

Mój projekt to zupełnie inna liga — silnik pisany od zera w C++23/C++26, zaprojektowany wokół ECS + SoA, Vulkana, własnego job systemu, multi‑platformy i modularności. Nie marnuję czasu na liftowanie legacy kodu — stawiam na nowoczesność, wydajność i pełną kontrolę.

W przyszłości pewnie rozważę open‑source i zaproszę innych, ale fundament musi być rock solid.

Opublikowano
  • Autor
1 minutę temu, KoYGeR napisał(a):

AI podobnie jak to forum. Potrafisz coś sam napisać bez pomocy ChatGPT?

PS.

Twój największy fan ( ͡° ͜ʖ ͡°)

Ciebie to pamiętam jesteś tym co przerabia czyjeś systemy i sprzedaje nooba na forum

Opublikowano
3 minuty temu, Eclipse Shade napisał(a):

Ciebie to pamiętam jesteś tym co przerabia czyjeś systemy i sprzedaje nooba na forum

Wypraszam sobie, nie ja przerabiam tylko ChatGPT. Ja nie umiem w te kodowania

Edytowane przez KoYGeR

Opublikowano
  • Autor
13 minut temu, ARK napisał(a):

A skończyłeś chociaż wcześniejszy projekt XD?

Tak, częściowe. dziala po 64 bit binka oraz game, ale porzuciłem to pół roku temu udostępnienie jak tamten temat uzyska 200 reakcji.

Opublikowano
6 minut temu, Eclipse Shade napisał(a):

Tak, częściowe. dziala po 64 bit binka oraz game, ale porzuciłem to pół roku temu udostępnienie jak tamten temat uzyska 200 reakcji.

to może tak skończyć pierwszy a potem brać się za inny XD
bo cos czuje z tym będzie identycznie, poza tym jak tam z martysama dalej czujesz do niego miętę ( ͡° ͜ʖ ͡°) ?

Opublikowano
  • Autor
2 minuty temu, ARK napisał(a):

to może tak skończyć pierwszy a potem brać się za inny XD
bo cos czuje z tym będzie identycznie, poza tym jak tam z martysama dalej czujesz do niego miętę ( ͡° ͜ʖ ͡°) ?

Czyli chcesz bym marnował czas na ten syf? Fakt jest taki ze nawet przepisanie go pod vulkan mało ci da, to jest też to samo jak zrobienie własnego klienta ale w własnym kliencie mogę użyć ECS + SoA to mi da zysk conajmniej 1000-2000%. Do tego prawa autorskie gameforge tam masz. Czekałem na c++23 i czekam na c++26 aż skończą poprawiać błędy modow bo jeszcze troche jest nie wspominać ze vs2022 strasznie w tyle. Odpłatnie mogę ci zrobić za 1k $ w miesiąc

Opublikowano
28 minut temu, Eclipse Shade napisał(a):

Czyli chcesz bym marnował czas na ten syf? Fakt jest taki ze nawet przepisanie go pod vulkan mało ci da, to jest też to samo jak zrobienie własnego klienta ale w własnym kliencie mogę użyć ECS + SoA to mi da zysk conajmniej 1000-2000%. Do tego prawa autorskie gameforge tam masz. Czekałem na c++23 i czekam na c++26 aż skończą poprawiać błędy modow bo jeszcze troche jest nie wspominać ze vs2022 strasznie w tyle. Odpłatnie mogę ci zrobić za 1k $ w miesiąc

Masz jakiś publiczny projekt, można twój github żeby sobie popatrzeć co tam robiłeś już? Tak z ciekawości, bo po projektach najłatwiej ocenić programistę.

Opublikowano
14 minut temu, Sevence napisał(a):

Masz jakiś publiczny projekt, można twój github żeby sobie popatrzeć co tam robiłeś już? Tak z ciekawości, bo po projektach najłatwiej ocenić programistę.

GitHub
No image preview

EclipseShade - Overview

EclipseShade has 4 repositories available. Follow their code on GitHub.
Opublikowano
4 minuty temu, Sevence napisał(a):

Szkoda, że nie ma tam żadnej linijki wyprodukowanej przez autora. ;/

wielkie umysły nie zaprzątają sobie takimi głupotami głowy :P

51 minut temu, Eclipse Shade napisał(a):

Czyli chcesz bym marnował czas na ten syf? Fakt jest taki ze nawet przepisanie go pod vulkan mało ci da, to jest też to samo jak zrobienie własnego klienta ale w własnym kliencie mogę użyć ECS + SoA to mi da zysk conajmniej 1000-2000%. Do tego prawa autorskie gameforge tam masz. Czekałem na c++23 i czekam na c++26 aż skończą poprawiać błędy modow bo jeszcze troche jest nie wspominać ze vs2022 strasznie w tyle. Odpłatnie mogę ci zrobić za 1k $ w miesiąc

a czemuż to syf?
Vulkanik jest niskopoziomowy, wiec powodzenia przy ustawianiu zarzadzania pamięcią czy zabawa z refactorem FF XD
ECS + SoA to mi da zysk conajmniej 1000-2000%, a masz pan cos na udowodnienie tej tezy?
Odpłatnie mogę ci zrobić za 1k $ w miesiąc - patrząc na twoja przeszłość i stękanie do niepełnego wycieku martysamy która sam uważałeś za full wersje, to ostro powątpiewam w twoje umiejętności XD

Opublikowano
  • Autor

17 minut temu, Sevence napisał(a):

Masz jakiś publiczny projekt, można twój github żeby sobie popatrzeć co tam robiłeś już? Tak z ciekawości, bo po projektach najłatwiej ocenić programistę.

Obecnie nie wrzucone na github, i w temacie napisałem co zrobione a dokładniej

Auth Server w 1:1 działa z klientem oraz db.

przez który można wejść do wyboru postaci a następnie do gry, bo akurat za to już odpowiada game i db. Mogę zrobić publiczne repozytorium jakby kilka osób się znalazło które rzeczywiście by pomogły w projekcie ale potrzebna podstawa: moduly oraz znajomość z ESC + SoA. Zrobienie komunikacji to chwila roboty ale libki pod ESC + SoA i organizacji to inna juz sprawa, ludzie wolą Klepać 1000 instancji i gówno kod jak w 2003 roku.

2 minuty temu, ARK napisał(a):
GitHub
No image preview

EclipseShade - Overview

EclipseShade has 4 repositories available. Follow their code on GitHub.

Na ten github już nie wchodzę, i ta wersje z binka pod 64 zrobiona mam na innym koncie na prywatnym repo

Opublikowano
1 minutę temu, Eclipse Shade napisał(a):

Obecnie nie wrzucone na github, i w temacie napisałem co zrobione a dokładniej

Auth Server w 1:1 działa z klientem oraz db.

przez który można wejść do wyboru postaci a następnie do gry, bo akurat za to już odpowiada game i db. Mogę zrobić publiczne repozytorium jakby kilka osób się znalazło które rzeczywiście by pomogły w projekcie ale potrzebna podstawa: moduly oraz znajomość z ESC + SoA. Zrobienie komunikacji to chwila roboty ale libki pod ESC + SoA i organizacji to inna juz sprawa, ludzie wolą Klepać 1000 instancji i gówno kod jak w 2003 roku.

Na ten github już nie wchodzę, i ta wersje z binka pod 64 zrobiona mam na innym koncie na prywatnym repo

No cóż, szkoda że nie chcesz się podzielić jakimś swoim projektem w pełni, ale na pewno masz wiele projektów bo imponujesz wiedzą. Skąd masz tak duże doświadczenie? 🤔Przy takim doświadczeniu musisz mieć mnóstwo projektów na które moglibysmy rzucić okiem, nie musi być metin.

3 minuty temu, Eclipse Shade napisał(a):

ludzie wolą Klepać 1000 instancji i gówno kod jak w 2003 roku.

bo to się po prostu opłaca xD po co przeinwestowywać czas? gówno gra to i gówno kod proste. ;p serwery na tym gówno kodzie robią gruby pitos xd

Opublikowano
  • Programista

ale jaja xD

1 godzinę temu, ARK napisał(a):

Vulkanik jest niskopoziomowy, wiec powodzenia przy ustawianiu zarzadzania pamięcią czy zabawa z refactorem FF XD

Wystarczy użyć dobrego backendu, może jakiś bgfx czy coś, ale o czym my mówimy. Autor tematu i tak skopiował jego treść z gpt

Opublikowano
11 minut temu, Thorek napisał(a):

ale jaja xD

Wystarczy użyć dobrego backendu, może jakiś bgfx czy coś, ale o czym my mówimy. Autor tematu i tak skopiował jego treść z gpt

w sumie, bgfx jako abstraktor spoko, tylko nadal trzeba zrobić: FF, terrain, cienie, wodę, particles, batching/instancing itd.
Z tego co tak kojarzę, seremo chyba bawił się tą biblioteką i wrzucał kiedyś wyniki na deva z podpiętym DX11

Opublikowano
  • Autor
11 godzin temu, Sevence napisał(a):

No cóż, szkoda że nie chcesz się podzielić jakimś swoim projektem w pełni, ale na pewno masz wiele projektów bo imponujesz wiedzą. Skąd masz tak duże doświadczenie? 🤔Przy takim doświadczeniu musisz mieć mnóstwo projektów na które moglibysmy rzucić okiem, nie musi być metin.

bo to się po prostu opłaca xD po co przeinwestowywać czas? gówno gra to i gówno kod proste. ;p serwery na tym gówno kodzie robią gruby pitos xd

tak mam projekty ale są na moim prywatnym koncie github rl jako portfolio, np mam w 70~80% zbudowany prototyp do kompilatora wlasnego jezyka programowania, parser, lexer, AST, SemanticAnalyzer...

robię to w 90% dla poprawy skila oraz utrwalenia umiejętności by łatwiej i lepsza pozycje dostać w game dev studiu, oraz tez miec wlasny silnik do gry tak jak w temacie wspomnialem wiec to nie jest zaden stracony czas.

9 godzin temu, Andrzej napisał(a):

Kolega pomylił odwagę z odważnikiem ewidentnie. Już widzę jak tak wszechstronny programista od zera pisze 20 letnią grę za frajer xd

raczej to będzie na licencje zrobione, miał być open projekt jeśli znajdę parę osób zainteresowanych projektem które dołączą do teamu, przez ukończeniem 10%, po ukończeniu niema opcji bym ten projekt udostępnił za darmo tylko na licencji.


Temat jest zrobiony w HyderPak do ogólnej rozmowy i propozycji więc liczę ze ktoś coś sensownego do mojego projektu dorzuci.
Benchmark, oraz skompilowane pliki auth,db,game,client będą dostępne w temacie na początku 2026 roku, więc będzie można sobie pobrać odpalić na każdej platformie i sobie porównać bo będą kompatybilne 1:1 z czystym src jedynie będzie wymagane min c++23/26 bez zbędnych biblotek więc wrzucasz odpalasz a config będziesz mial prosty w .json, ilosc kanalow bedzie mozna ustawic w jednym game np 10 kanalow czy tez sobie rozdzielic 1 kanal per core

Edytowane przez Eclipse Shade

  • 1 miesiąc temu...
Opublikowano

Kiedy jakis nowy leak?

Opublikowano
4 godziny temu, Igor napisał(a):

Kiedy jakis nowy leak?

Daj koledze chwilę, wpierw odpala terenzo na freebsd 14.3 to 2-3 minutki roboty.

Edytowane przez ExoCarossa

Opublikowano

Poświęcić 5-10 lat na przepisywanie od zera kodu / silnika do gry, do której nie ma się praw. brzmi legitnie :D

Zamiast bawić się w sklejanie czegoś takiego w całość, przenieś to na unity czy tam inny Unreal Engine :D

Ludzie WoWa przenoszą na UE, a ten silnik z małymi "fixami" ma dobre 30 lat już. Warcraft sam w sobie jest ode mnie ciut młodszy :D
Ale co ja tam wiem... Ledwo odpalam terenzo na VPS z poradnikiem paszki.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Konto

Nawigacja

Skonfiguruj powiadomienia push w przeglądarce.

Chrome (Android)
  1. Stuknij ikonę kłódki obok paska adresu.
  2. Wybierz Uprawnienia → Powiadomienia.
  3. Dostosuj swoje preferencje.
Chrome (Desktop)
  1. Kliknij ikonę kłódki na pasku adresu.
  2. Wybierz Ustawienia witryny.
  3. Znajdź Powiadomienia i dostosuj swoje preferencje.