You basically have it right but you do have to do a few other things like add a MalePlayer and a FemalePlayer character, global them, and add them to the scripts. They also have to be scripted to teleport between the creation screen and cyseal as that's what trips the creation screen GUI to load again.
Also I don't use the existing henchmen, but use those added Male/Female player and add them to the companion database.
Far as adding them as "players", that's also do-able. The old version on classic worked this way. I elected to make them companions just to help ensure stuff doesn't break. Though the "companion" versions in my mod actually do get set as "isplayer" but the MakeCompanion procedure from main is what does it.
I'm pretty sure the IsPlayer property only dictates whether you can actually control the character. There might be some things hardcoded I'm not aware of though. But there are databases for them as either players or companions which dictate how the scripts handle them.
Ahh, the great SniperHF, the Bringer of Rain, the Slayer of Theodokles, ... just kidding ;-)
I don't think, the 'old' 4 Player mod was meant but the one that recently was in the top 3 in Steam.
I unpacked it and it has the meta file with NumPlayers="4" ... and nothing else. (Unless Norbyte's tool does not work anymore, which I don't think.)
I was just curious how 4 characters would fit on the creation screen to find out that it's done in some FIFO way. And I am wandering which characters are used as 'players' in that mod because it has nothing but the meta, so no new players can have been added.
Is the
CharacterTeleportPartyToTriggerMovieLoadState(TRIGGER_CYS_Start_P1,"MovieGameIntro_Finished","MovieGameIntro");
call in DOSStart/CYS_General.txt not enough to teleport the party out of Char Creation to Cyseal Beach ?
Maybe controls if characters are controllable initially, I do not believe that, because any companion can be controlled after the CharacterMakeCompanion() call. I believe in an internal call to some CharacterAddToParty() in char creation.
I think, the flag more so controls 'hardcoded' stuff like Lonewolf and Pet Pal showing up or not in character creation and on levelup. Those talents don't show up on companions I believe.
(Charisma e.g. is locked by story code in the Proc_LimitAbilitiesForCompanion( _Companion ) procedure.)