[Development] Main 5.2 with GFx Scaleform UI

Where can I download the source code for Takumi12?
 
You have them in 1st post. I switched server side to S12 IGCN 12.1.1.4 version and will share at some point server + client pack for testing.
Really nice work. can you share updated main src? Github repo would be great idea for this
 
Is the FPS and shader of TK12 still unable to achieve the same FPS effect as Pegasus?
 

Attachments

  • 2141 - [Development] Main 5.2 with GFx Scaleform UI - RaGEZONE Forums
    2141.webp
    349.9 KB · Views: 37
Really nice work. can you share updated main src? Github repo would be great idea for this
Idk, I did not receive any requests for help, so making Git repo for now no op. About sharing latest src also will think, since 1st post and current state there are major changes in controlling scaleform. Still need to do some cleanup and few refactorings.

For now I'm thinking of preparing testable client+server package.

Is the FPS and shader of TK12 still unable to achieve the same FPS effect as Pegasus?
idk about pegasus source, i just know it's same bad as takumi src :D
 
Idk, I did not receive any requests for help, so making Git repo for now no op. About sharing latest src also will think, since 1st post and current state there are major changes in controlling scaleform. Still need to do some cleanup and few refactorings.

For now I'm thinking of preparing testable client+server package.


idk about pegasus source, i just know it's same bad as takumi src :D
Are you using the same MAIN now? Multi player special effects will also reduce FPS under the same screen, which will lead to too laggy image quality?
 
Hello folks.

DISCLAIMER:
This thread is not for beginners! If you can't manage to compile any publically available source, skip this thread!

I have started implementation of GFx Scaleform into Main 5.2 source and today I want to share with community my current work with sources. This can be helpful for those who only starts to dig into this rabbit hole. The system is weird but once you spend more and more hours in it you get the core idea of how everything works.

So, I took as a base source takumi12 code and worked on it. From his code there is implementation of GFx via .dll controll - not effective, yet hp bar is being rendered from it. In source archives you will find SDK folder with scaleform 3.3 (or 3.2, i don't remember anymore) and all libs compiled in release with v142 if I remember right. Everything is imported to the solution and should work "out of the box" yet if you face some errors, feel free to ask google or AI.

I did not make any documentation yet, but the setup is pretty straight forward. Most of the GFx things are under GFX_ENABLE define. The gameserver must be used in order to render [POST] in chat correctly (custom packets) but you can track them in source and apply to your GS if needed.

Currently working on ~90%:
  1. MainUI
  2. Topmenu
  3. Chat
  4. Some tooltips on GFx UI and skill hotkeys
  5. Base movie controller via base.swf
Current critical bugs:
  1. Item slots in mainUI are not rendered, imageData conflicts with textures from C++
  2. We are forcing onFileLoad callback to populate swf movies and assign their paths (something is missing from base.swf/ExternalBase.swf initialization)
  3. Can't assign skills to skill hotkeys (need skill bar/ui implementation.. easiest eay is to take S8 bar and use it for now)
  4. maybe something else

This can be ported to your client source base, i'm just sharing all because there are some implementations in many original WZ files, you can track them.
UI used from S18 part2 and decompiled main src also included (you will need it). It's converted from OZG to GFX format to jumt straight into UI dev. Basically you can convert any season UI there and use it, just make sure you have Jpexs decompiler to look into gfx files and understand what they are demanting from C++ side and how you initialize them.
I used claude for decompiling and porting a lot of functions from original S18 main (pls don't judge me lol)

Download:




Any contribution is welcomed!


Credits:
webzen
MU Community

View attachment 302050View attachment 302051View attachment 302052View attachment 302053
Great work!!!!!
 
Great work!!!!!
Thanks. Sadly no one wants to join this nightmare 😀
ADMTec is working separately, and probably will be difficult to communicate due to his language barrier.
I removed first post src’s though, because I will prepare a bit tenet version and upload it to GitHub soon.

Right now changes from first version:

1. Loader now matches webzens (not literal copy, but same idea)
2. Added new HUD classes, 90% working.
3. Fixed 3D render for hot keys , inventory items.
4. Game protocol changes in progress for S12 IGCN+MUEMU server.
 
Thanks. Sadly no one wants to join this nightmare 😀
ADMTec is working separately, and probably will be difficult to communicate due to his language barrier.
I removed first post src’s though, because I will prepare a bit tenet version and upload it to GitHub soon.

Right now changes from first version:

1. Loader now matches webzens (not literal copy, but same idea)
2. Added new HUD classes, 90% working.
3. Fixed 3D render for hot keys , inventory items.
4. Game protocol changes in progress for S12 IGCN+MUEMU server.
you have discord ?
 
Update:

  1. Added support for more Lang.mpr files in client.
  2. Updated ServerList.bmd to use new format from S12+
  3. ItemList.xml support in game with all fields (Currently using IGCN list from S16)
  4. Pentagram system in progress.
  5. Added PartyFrame. Only left to port auto-move system.
  6. Item stacking support.
  7. Some core engine features refactored to mirror S13 main binary's.
  8. Added map support up to S16 (no need to retrofit, works out of the box). Haven't tested above yet.
  9. Stripped more then half of useless trash code and `features` from previous devs.
Might be something else I don't recall, the changes comes almost every day and I don't track small things. I hope that I will finalize soon test ground to share with.

 
Update:

  1. Added support for more Lang.mpr files in client.
  2. Updated ServerList.bmd to use new format from S12+
  3. ItemList.xml support in game with all fields (Currently using IGCN list from S16)
  4. Pentagram system in progress.
  5. Added PartyFrame. Only left to port auto-move system.
  6. Item stacking support.
  7. Some core engine features refactored to mirror S13 main binary's.
  8. Added map support up to S16 (no need to retrofit, works out of the box). Haven't tested above yet.
  9. Stripped more then half of useless trash code and `features` from previous devs.
Might be something else I don't recall, the changes comes almost every day and I don't track small things. I hope that I will finalize soon test ground to share with.


ZzzScene.cpp:Adjust OpenGL viewport rendering area in server selection
Code:
Change:
        glClearColor(0.f, 0.f, 0.f, 1.f);
        BeginOpengl(0, 25, 640, 430);
        CreateFrustrum(Width, pos);
To:
        glClearColor(0.f, 0.f, 0.f, 1.f);
        BeginOpengl(0, 0, 640, 480);
        CreateFrustrum(Width, pos);
 
Last edited:
ZzzScene.cpp:Adjust OpenGL viewport rendering area in server selection
Code:
Change:
        glClearColor(0.f, 0.f, 0.f, 1.f);
        BeginOpengl(0, 25, 640, 430);
        CreateFrustrum(Width, pos);
To:
        glClearColor(0.f, 0.f, 0.f, 1.f);
        BeginOpengl(0, 0, 640, 480);
        CreateFrustrum(Width, pos);
Thanks, good cosmetic upgrade :D

1783444473772 - [Development] Main 5.2 with GFx Scaleform UI - RaGEZONE Forums
 
Great initiation!
Can you share the source code of the S12 server/client?
I think I might have good use to it.
 
Back