Question mainly for Ramkhamhaeng; I plan to merge your pitboss mod with my version of Realism Invictus (with proper credit of course), if you don't have problems with it. Question is: if I merge the dll content from PBMod into Realism Invictus dll, and do the same for the Assets folder (XML and python), is that enough so that I can register a game on civ.zulan.net and control/follow the game from there? Or do I need something else? Thanks in advance as usual.
Pitboss Mod Merge
|
Besides the merge, two more things are necessary:
1. Copy the {pbmod repo}/PBs/Python folder into the parent folder of ALTROOT-folder. Example: Code: Altroot is .../PBs/PB1 For the current version, the files in 'Python/v10' will be loaded at startup. Normally, you can not edit Python files of password protected games without forcing your players to update their local copy of the mod. But updating/edit files in above folder is possible. This is useful, e.g. for fixing bugs after a PB-game has started :-) 2. Inform pbmod about the path of the ALTROOT-folder. Open CivilizationIV.ini and add the full path into 'PitbossSMPTLogin' Example: Code: […] (July 16th, 2023, 17:06)Ramkhamhaeng Wrote: Besides the merge, two more things are necessary: Thanks Ramk, but before I get into this part I'm having some troubles with the merge. I think I merged everything in the dll, I've been able to compile a new dll for Realism Invictus which includes (I hope) all the changes that are marked with PBMod in the dll source code. But the game crashes before getting to the main menu. Could it be because I haven't merged the python files? Not the ones in the PBs folder, the ones in the mod folder. Is there an easy way to check what's been changed in the python files of PBMod? It looks like there are not PBMod tags, or almost so. Any advice? Thanks. Edit: I think I'll answer myself... if some python and xml files are missing the game will probably crash; I didn't get any warning of missing file though, just the ctd. So I suppose I might have also skipped something in the dll? I'll check everything again.
@DLL: Did you added the *.obj files and applied the Makefile changes? The release version of the DLL needs the /Oy- flag.
(July 18th, 2023, 07:14)Tarkeel Wrote:(July 18th, 2023, 05:46)45°38'N-13°47'E Wrote: Is there an easy way to check what's been changed in the python files of PBMod? It looks like there are not PBMod tags, or almost so. Any advice? Yeah, that's what I'm doing (July 20th, 2023, 09:57)Ramkhamhaeng Wrote: Does is work? Sorry for the late answer, no, not yet. I've ported everything in the dll, I think I did it correctly. But merging the python code looks rather difficult and tedious so I'm looking for other ways. Right now I've setup a server for our current Realism Invictus game but I miss of course most of the features of the pitboss mod. What I'm currently interested in is having an interface that shows whose turn it is. The problem I'm facing is sending that data about the completed turn from the dll to the Altroot folder. I don't think I'll have problems with the website interface, json files and so on; I've tried some coding using ChatGPT and it mostly work. But I don't want to hardcode the Altroot I'm currently using inside the dll or python files of the mod. I know you solved the problem with the SMTPLogin entry in the CivilizationIV.ini, but I still haven't figured out how you did it. I didn't invest much time in it though, hopefully I'll have more free time in the next weeks. (August 3rd, 2023, 17:02)45°38'N-13°47'E Wrote: Sorry for the late answer, no, not yet. I've ported everything in the dll, I think I did it correctly. But merging the python code looks rather difficult and tedious so I'm looking for other ways. Is your code somewhere public available? I could merge the Python part for you by simple focus on the required parts. E.g. changing the Fx-Advisiors is often optional. Quote: I don't think I'll have problems with the website interface, json files and so on; I've tried some coding using ChatGPT and it mostly work. But I don't want to hardcode the Altroot I'm currently using inside the dll or python files of the mod. I know you solved the problem with the SMTPLogin entry in the CivilizationIV.ini, but I still haven't figured out how you did it.In Python you can fetch the path by gc.getAltrootDir(). I've defined the function for this directly in the header CyGlobalContext.h Code: const char * getAltrootDir( ) const { Quote:Right now I've setup a server for our current Realism Invictus game but I miss of course most of the features of the pitboss mod. What I'm currently interested in is having an interface that shows whose turn it is. The problem I'm facing is sending that data about the completed turn from the dll to the Altroot folder. If you don't want interface the pbspy webinterface, but just want write something like a log: Charriu wrote a function which collects several information in a Logging-File after a turn. The data is appended in a file in the Altroot directory. https://github.com/Charriu84/CloseToHome...er.py#L492 Example for assembling data like the turn status can be found here: https://github.com/civ4-mp/pbmod/blob/28...62-L952C62 It's the function where I collect the data pushed to the webinterface. |