I was a bit too optimistic though. I already knew from DemulShooter's code at which memory address is whether player 1 is active or not. My hope was that I could derive the address for player 2 from that and turn the player on. Then I would have had to find the address of the crosshairs and that's it. Unforunately I was not successful with that until now.
Even if you managed to "pop" a 2nd crosshair, this would not be enough to add a second player.
You would also need to enable the player, set health, damage, weapon.
Also activate 2dn player GUI elements to be added on screen.
And - even if all the above parts can be done as a patch even if that is not in the genuine game (drawing and handling values is easy) - you would also need the game to actually accept a second player so that AI would attack him. Overwise you'll end up with a "ghost" player, not seen by ennemies.
All of that knowing that nothing obvious in the code is telling that this is a possibility "by design", that would have been left unactivated from other platform code (I'm thinking Ps3 or Wii where you can play locally, so the code is existing somewhere but may have been removed from the PC binary, replaced with online coop code)
OR, it may be somewhere hidding in the binary, between manggled '0' and '1' from the compile code, waiting to be found and activated again.
And I'm not even talking of the game being a bonus part of another game (Typing of the dead), and not beeing a standalone binary.
So you'll have to separate code from both different game in the same binary.
Etc...etc.....that's why luck would not be enough on this one
Wow, as a HOTD fan I love to hear that! Just a week ago I setup HOTD Remake using the lightgun patch by Mystery Wizard, guess I will upgrade to your plugin now. Is that Arcade mod also new? I haven't heard of it, yet.
New, yes. I just put it up online with the DemulShooter update this morning.
You'll just find the mod in the wiki for now, I still have to put a Github page etc...etc.... for it.
A small readme is in the package with basic and most important information. Such as not use it side by side with Mystery Wizard page, or it will conflict
By the way, a minor suggestion: Wild West Shootout is a somewhat picky about permissions. It will show "NetDllBroken" when launched as administrator but the workaround is easy, using "RunAs /trustlevel:0x20000" or "PSExec64". However, what bugs me is that you can't run it from "C:\Programs (x64)\" as it then displays "IO board is abnormal, please check if it is connected!". The Mouse Mod fixed that, so I decompiled it and diffed it against the original file. Apparently the trick is to set GameData.CheckConnect and GameData.IOCheck to False. Could you please implement that into DemulShooter as well?
More than the CheckConnect or IOCheck issue, I noticed that running the game with that kind of privilege command in the X64 Program Files folder is blocking the plugin from beeing loaded by the game....so whatever I can add inside will not have any effect. And I honestly don't not know the unity/bepinex plugin loading mechanic to know why.
Mouse mod does not have this behavior, as it is the genuine loaded file by the game which has been modified.
So, just copy the WWS folder in another location and you will not have any trouble anymore.