Hefest: videojoc multijugador en món obert
Videojoc de conducció i contraban amb estat compartit en temps real entre jugadors.
- Any
- 2025
- Context
- Projecte personal
- Stack
- Unity · C# · Netcode for GameObjects
Hefest és un videojoc multijugador de conducció i contraban ambientat en un entorn urbà obert, desenvolupat amb Unity i C# entre juny i novembre de 2025. Va néixer de l'interès per entendre com funcionen els videojocs internament i va evolucionar cap a un projecte de complexitat considerable: sincronització d'estat entre clients, autoritat de xarxa, càrrega d'escenes coordinada i sistemes de joc interdependents.
En síntesi
Sincronització d'estat en temps real i disseny de sistemes interdependents
Context
El jugador ha de transportar una càrrega fins a un punt fronterer travessant controls policials, tallers i garatges, en un entorn que reacciona a les seves decisions. Des del punt de vista tècnic, el repte central és mantenir diversos clients d'acord sobre un món que canvia contínuament, sense desincronitzacions ni estats inconsistents.
El desenvolupament va ser iteratiu: diverses parts es van reescriure un cop funcionals per resoldre limitacions de disseny que només es van fer evidents amb l'ús.
Sistemes principals
Basat en Netcode for GameObjects, el joc sincronitza vehicles, jugadors, escenes i cinemàtiques. Quan un jugador canvia d'escena, la resta de clients carreguen els elements necessaris per mantenir la coherència global. La principal dificultat va ser definir l'autoritat sobre cada objecte i gestionar-ne la transferència quan es perd en ple moviment.
Aprenentatges
El projecte em va donar un domini sòlid de C# i Unity i experiència en problemes propis dels sistemes distribuïts: autoritat, consistència i tolerància a la latència. També va ser el primer contacte amb la integració de serveis externs dins d'un bucle interactiu, on cal preveure respostes lentes o errònies sense degradar l'experiència, un problema directament aplicable als sistemes amb IA en producció.
Stack
- Unity (C#) Motor, física, interaccions i interfícies.
- Netcode for GameObjects Sincronització, autoritat i escenes compartides.
- Cinemachine Càmeres dinàmiques i cinemàtiques sincronitzades.
- ShaderGraph Efectes visuals i materials propis.
- NavMesh / AI Tools Navegació i comportament dels NPCs.
- Blender Models 3D.
- Git / GitHub Control de versions.
Estat actual
El multijugador és estable, amb cinemàtiques sincronitzades, conducció, inventari i interacció amb objectes. El desenvolupament es va aturar el novembre de 2025 per prioritzar Capital Tracker; la base actual permetria reprendre'l.