Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About dynamic libraries. #24

Open
Damin72 opened this issue Mar 11, 2018 · 7 comments
Open

About dynamic libraries. #24

Damin72 opened this issue Mar 11, 2018 · 7 comments

Comments

@Damin72
Copy link

Damin72 commented Mar 11, 2018

Are we get converter for mods-dll, or we need do this procces manually?

@fgsfdsfgs
Copy link
Owner

I plan on eventually making a script or something that would automate the porting process, but I'm afraid that it could require manual work anyway in some cases.

The porting process right now usually consists of these steps:

  1. Obtain source code for the mod you're porting.
  2. Copy the utils/vita directory from the HLSDK port to YOUR_MOD_SOURCE/utils/vita.
  3. Copy Makefile.vita, cl_dll/Makefile.vita and dlls/Makefile.vita from the HLSDK port.
  4. Edit the object/source file lists in the latter two files to match your mod (you can obtain the lists from the mod's original Makefiles, if they're present, or from Android.mk files, if they're present).
  5. In the source directory, run ./utils/vita/genentexports.py .
  6. Insert the two lists you got from step 5 into utils/vita/vita_server.cpp, keeping the first 4 lines in each list and the { NULL, NULL } line intact.
  7. In the source directory, run make -f Makefile.vita
  8. Remove any undefined exports from utils/vita/vita_server.cpp and fix any other errors you got during step 7.
  9. In the source directory, run make -f Makefile.vita. If you did everything correctly, this should produce client.suprx and server.suprx in the source directory. Copy them to ux0:/data/xash3d/YOURMOD/cl_dlls and ux0:/data/xash3d/YOURMOD/dlls, respectively.

Of course you need to have VitaSDK and Python 3 installed and you have to be running the above commands either from an MSYS shell or from a Linux shell.

@Damin72
Copy link
Author

Damin72 commented Mar 11, 2018

Well... About source code... It's gonna be hard, because i don't think this ukrainian modders have release SC of HL Decay to public... =(

Or "source code" = "dlls/cl_dlls" files?

@fgsfdsfgs
Copy link
Owner

fgsfdsfgs commented Mar 11, 2018

No, source code means the source code of the dlls/cl_dlls files. Yes, the Decay port is not open source. There was an open source recreation of its DLLs somewhere, but it's unfinished. Sadly, you have to recompile the DLLs for Vita to make them work, and for that you need the source code.

@IlDucci
Copy link

IlDucci commented Mar 11, 2018

I guess that if someone wants a mod to be converted to Vita, that someone should ask the original creators...

Right now there's only a few mods with open source code. Natural Selection, poke646...

@Damin72
Copy link
Author

Damin72 commented Mar 12, 2018

I hope "Contact"-section on HL Decay site is still working. Wrote to team about Xash3D on Vita and problem with mods. Maybe they answer me.

@AlC4pwn
Copy link

AlC4pwn commented Apr 8, 2020

would something such as this project https://github.com/s1lentq/ReGameDLL_CS allow Condition Zero to function with Xash3D?

@nekonomicon
Copy link

nekonomicon commented Apr 8, 2020

@AlC4pwn not Deleted Scenes.
regamedll is already used in cs 1.6 port, and normal czero does not have any difference with cs 1.6 in game code on server-side.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants