Jump to content

[Release] Multiple Character Support (now compatible with Epoch 1.0.5.1)


Axe Cop

Recommended Posts

the HiveExt.dll might work with 1.0.3.1 in theory, but the player monitor is from 1.0.4 so that won't work.

You can still us the previous version of this mod, it works fine with 1.0.3.1: http://dl.bintray.com/vos/dayz/multichar1.2.zip (there is a readme with the download, but its essentially the same installation, only a few more dlls to overwrite for the old Epoch version) :)

Link to comment
Share on other sites

To use this Hiveext.dll for the Child:999/998 you have to do:

Copy and paste the hiveext.dll into you @DayZ_Epoch_Server directory

Issue the SQL insert to add the Slot to the Character_DATA table.

Change to this in server_playerLogin:
_key = format["CHILD:101:%1:%2:%3:0:",_playerID,dayZ_instance,_playerName];

Link to comment
Share on other sites

I am getting an issue with the syntax I assume for the CHILD:999/998 though....  Is there something wrong with these SQF statements?
 

_key = "CHILD:999:insert into donor_bank (PlayerUID,Balance) values (555555,1111):[0]:";
_result = _key call server_hiveReadWrite;
_key = "CHILD:998:insert into donor_bank (PlayerUID,Balance) values (444444,2222):[0]:";
_result = _key call server_hiveReadWrite;
_key = format ["CHILD:998: INSERT INTO donor_bank (PlayerUID) VALUES (?):[""%1""]:", player getPlayerUID];  
_key call server_hiveWrite;
Link to comment
Share on other sites

hey blckeagls sorry but nobody knows how that works exactly :D

I looked at the code for some minutes and it seems there is no simple Hive 999 or 998 support but new handlers for custom queries called CHILD:500 to 505

 

maca's solution with Child 999 was much simpler, I don't know why but whoever coded the new version had some time and reinvented queries or something, if you know your way around c++ just check the official code.

look at the code: https://github.com/vbawol/DayZhiveEpoch/blob/master/Hive/Source/HiveLib/HiveExtApp.cpp#L120-L125

there are some examples here and others below: https://github.com/vbawol/DayZhiveEpoch/blob/master/Hive/Source/HiveLib/HiveExtApp.cpp#L723-L751

 

here is the files for the custom queries:

https://github.com/vbawol/DayZhiveEpoch/blob/master/Hive/Source/HiveLib/DataSource/CustomDataSource.h

https://github.com/vbawol/DayZhiveEpoch/blob/master/Hive/Source/HiveLib/DataSource/CustomDataSource.cpp

 

good luck :)

 

anyway this has nothing to do with this topic in general, since this is added in the official hive since Epoch 1.0.4 :)

Link to comment
Share on other sites

Hi Axe Cop,

 

first of all damn fine script!

Unfortunately we do have an error to report:

 

People can't spawn with their 1. Character - they always get a black screen. Changing Character to Character #2 or #3 fixes the blackscreen but as soon as they relog to their first character they land in the blackscreen once again.

In the blackscreen they can do everything they normally do, walk, shot etc but they dont see shit and are nowhere to be found on the map.

Not all players have that problem strangely but most of them do.

 

Do you have any idea what could have caused that?

 

Using your script for about 1 week now - Server is running Epoch 1.0.4 Taviana 2.0. The problem started arround an hour ago.

 

Regards

Link to comment
Share on other sites

The HiveExt.dll is unchanged and I don't think it will be updated any time soon in the official Epoch version so you just need to merge the script files for the new version..

I will probably do that tomorrow if I have some time. :)

 

@uNbea7: that's a weird bug if that only occurs on the 1. char slot, because all the slots are handled the same anditI may be the default black screen bug I know from default Epoch or DayZ in for years.

If the server is busy players might get stuck in the debug zone or black screen (if you press esc while you are in the black screen you spawn as a bird or something?).

Anyway if you see the character selection screen and it shows the characters correctly there is nothing I can do  I think, everything after that is default Epoch login, the only change is the extra slot id that is send to the server.

 

btw uNbea7 nice to see you again, I've played some month on your origins server some time ago :D

Link to comment
Share on other sites

The HiveExt.dll is unchanged and I don't think it will be updated any time soon in the official Epoch version so you just need to merge the script files for the new version..

I will probably do that tomorrow if I have some time. :)

 

Installed it into my test server to try it out and im getting "You have an outdated version of epoch, please download the correct version" error. So im guessing it won't work on 1.4.0.1. I'll wait till you test it and see if it's just me that screwed something up somewhere.

Link to comment
Share on other sites

Installed it into my test server to try it out and im getting "You have an outdated version of epoch, please download the correct version" error. So im guessing it won't work on 1.4.0.1. I'll wait till you test it and see if it's just me that screwed something up somewhere.

did you use my latest version? anyway it worked with Epoch 1.0.4 on my server and the HiveExt.dll was not changed with the Epoch 1.0.4.1 as far as i can see..

If they change the Hive again I don't think I will support it anymore, it is hours of works to get all the dependencies for the stupid HiveExt working and I've just cleaned my computer haha,

no really this is a lot of work and I think its like 10x the work to support mods like this then actually coding it so that kinda sucks in my opinion...

Link to comment
Share on other sites

Getting stuck at "Requesting Character Data", I have done all steps you have posted. Any idea why its getting stuck?

 

Also noticed you said

 

 

  1. open the file compile\server_playerLogin.sqf, around line 47 replace
    _key = format["CHILD:101:%1:%2:%3:",_playerID,dayZ_instance,_playerName];

    with

    _key = format["CHILD:101:%1:%2:%3:%4:",_playerID,dayZ_instance,_playerName,_this select 2];

 

but in your example file for server_playerLogin.sqf you have

 

    _key = format["CHILD:101:%1:%2:%3:%4:",_playerID,dayZ_instance,_playerName,_characterSlot];

Link to comment
Share on other sites

I know the readme is the simplified version and you are the first one who even noticed that :P

if you look at my example file I have defined

_characterSlot = _this select 2;

at line 9 and also added it to the private array in the first line, it's the same in the end but I wanted to keep the instructions simple to follow and this would be 3 steps instead of 1. :)

 

if you get stuck do you see any error in the RPT log files? (sorry but I have to ask this all the time, because never look in the error files by themselves it seems)

if not check your HiveExt.log or keep an eye on the server log when you try to join, there be a log entry like

HiveExt: [Information] Method: 100 Params:

followed by your player ID (method/child 100 is the multi character request, 101 is the actual character data). its hard to to remote debug of a mod like this,

if you do something wrong its very hard to find out what with ArmA mods i am afraid. :/

Link to comment
Share on other sites

Ok I've done a fresh install of my mod with Epoch 1.0.4.1 and I have to say it works like its supposed to!!

so whatever you are doing it's not my mod, but anyway I've uploaded the modified server and mission file if you wanna try it with those: http://8bit.info/dayz/multichar_example.zip (just the default Epoch 1.0.4.1 with this mod applied and the HiveExt.dll, so everything you need to get this mod working if you have added the slot column to your database). Hope that helps. :)

Link to comment
Share on other sites

Thanks Axe Cop, I'm pretty sure it is a confliction with another mod i have, ill have to redo the mission file with the default epoch plus this mod added and slowly add in my features i have.

 

Also check your PM's for an important message you need to read!

 

thanks,

Blacksheep25

Link to comment
Share on other sites

Hi

 

Thanks for sharing this great mod, I really like it. Unfortunately this does not work with 1.0.4.2 anymore. Do you already have plans of upgrading?

 

Cheers

fkh

 

just updated to Epoch 1.0.4.2: http://dl.bintray.com/vos/dayz/multichar1.3.2.zip

 

the "problem" is that the version check is in the file system_monitor.fsm, so with every single Epoch update they change at least the version in that file :D

might be a good thing, because they've added an extra line with Epoch 1.0.4.2 in that file, but it was a simple update in 5 minutes.

I still hope there isn't an update every week now haha! :)

Link to comment
Share on other sites

Yeah, I with Vilayer server provider, so I mainly work with the files and when I start the server, it compiles it into a pbo...

 

I'll get the files for you though mate

 

Bags

 

give me a few

Bags, I'm with vilayer too. Having trouble to find the location of the hiveext.dll. any folder I should look in? (had no trouble finding hiveext.ini)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...