Jump to content

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


Axe Cop

Recommended Posts

i installed the latest 1.0.4.2 Epoch version and your script, but when i try to connect i become " This Server is running an incorrect Version of the Server Side Application. You cannot Play on this Server . If you are the Server admin contact Dayz Epoch Staff" or something. What to do'?

 

And yes before i installed the Script, the server works :)

Link to comment
Share on other sites

i installed the latest 1.0.4.2 Epoch version and your script, but when i try to connect i become " This Server is running an incorrect Version of the Server Side Application. You cannot Play on this Server . If you are the Server admin contact Dayz Epoch Staff" or something. What to do'?

 

And yes before i installed the Script, the server works :)

hard to say without knowing more details, the server version is usually just checked within the player_monitor.fsm

Link to comment
Share on other sites

Axe sorry for doing this in your thread but it might help others using your .dll as well.

IF i want to have only the child:999 option of the .dll....can i just add that extra cell slot to my database and then just use your .dll ?

I want to be able to make calls like this:

 _key = format ["CHILD:999: select id from custom_table WHERE class_name= '%1' AND id > ?:[0]:", _classname];

Or do i need to recompile the whole thing :/ ?

 

Using the latest server...1.0.4.2

 

edit: Yeah....that didnt work....I even put the 'slots' cell at the end of my character_data so it doesnt interfere with player_login functions....but it still doesnt recognize 999 calls.

Why oh why, dont they make a hive.dll with 999 and 998 T_T......

 

Axe dont you have a hive.dll version with just the 999 and 998 calls ? :(

Link to comment
Share on other sites

No sorry, CHILD:999 support was removed with Epoch 1.0.4, they've changed it to Child 50x (see the wiki http://dayzepoch.com/wiki/index.php?title=Custom_SQL_Calls )

I think you can only use SELECT statements with that (not update or delete anything sadly)

 

I had the CHILD:999 support in there because it was in the official Epoch code (but not the actually compiled HiveExt.dll that shipped with Epoch),

I think it was removed for security reasons, a potential hacker could just delete your whole database if he was smart enough.. :P

Link to comment
Share on other sites

No sorry, CHILD:999 support was removed with Epoch 1.0.4, they've changed it to Child 50x (see the wiki http://dayzepoch.com/wiki/index.php?title=Custom_SQL_Calls )

I think you can only use SELECT statements with that (not update or delete anything sadly)

 

I had the CHILD:999 support in there because it was in the official Epoch code (but not the actually compiled HiveExt.dll that shipped with Epoch),

I think it was removed for security reasons, a potential hacker could just delete your whole database if he was smart enough.. :P

 

Yeah i saw that....but that is only for objects_data and characters_data....they are not even allowing us to have our own custom table....Not many....1 !!!!

And besides tons of dayz mods out there have 999 support. I dont see them burst in flames....999 calls should be an option for server admins...use hiveext.dll for default, or hiveext999.dll if you want to have custom calls. simple as that. 99.999% of the server admins do a backup every hour or so...even if a hacker drops your whole database, it wouldnt be that different than spawning 1000 vehicles or killing all players....you still have to restore....right ? I wish i could compile it myself....but even if i did...epoch team would not allow me to publish it i guess...ffs!!!

Link to comment
Share on other sites

I never tried this myself but I thought you can enable custom tables in the HiveExt.ini with that new method?

maybe start a new thread for that I don't know. sorry :D

 

anyway sure you can change the official HiveExt.dll code, it is open source and under GPL licence: https://github.com/vbawol/DayZhiveEpoch

since the epoch hive is just a fork of the DayZ CE Hive itself, anyway my mod contains a modified version of the Epoch Hive, what do you think? :D

Link to comment
Share on other sites

I never tried this myself but I thought you can enable custom tables in the HiveExt.ini with that new method?

maybe start a new thread for that I don't know. sorry :D

 

anyway sure you can change the official HiveExt.dll code, it is open source and under GPL licence: https://github.com/vbawol/DayZhiveEpoch

since the epoch hive is just a fork of the DayZ CE Hive itself, anyway my mod contains a modified version of the Epoch Hive, what do you think? :D

 

Yeah, i know...but i havent used a C++ compiler since 2000, lol....not sure i'll be able to compile it myself that easily.

Your mod is nice, reminds me of WarInc character selection....but i am already trying to keep up with 1 player entry in the database....having +2 more would be just extra work for me.

I am more into PHP, mysql type of guy, and juggling with 2 extra tables for each player is not something that i want right now...I tried to 'butcher' your .fsm files to allow the .dll to work with the default server files but keep getting an 101 error and in the end the famous server version incompatibility.

In the end i think i'll recompile the dll....hell...i did plugins for minecraft and muonline that needed compiling ...how hard can this be right :P (facepalm, ahaha)

Link to comment
Share on other sites

lol getting my custom Hive to work with the default Epoch version is easy, you have to add only 2 characters to the login process.. that is all..

but the question is why?? my DLL only adds the multi char support everything else is the same (that is the whole point) :p

Link to comment
Share on other sites

I'm not sure if I missed this question while looking through posts  . so sorry in advance if it was asked.

 

Is it possible for the player to change the name of the character ID they are selecting on the login screen ? so each toon has it's own character name associated to there ID # ,  instead of loging out and changing player profile off line..

Link to comment
Share on other sites

No sorry, the name is bound to the player and not the chars.

It would be possible to add custom names for each char, but only for visible name tags and stuff i think. Anyway for that to work many epoch files need to be changed and that breaks with every epoch update etc..

Link to comment
Share on other sites

No sorry, the name is bound to the player and not the chars.

It would be possible to add custom names for each char, but only for visible name tags and stuff i think. Anyway for that to work many epoch files need to be changed and that breaks with every epoch update etc..

Thats what I figured. Great job on this script . I got it working on both servers . Thanks for the reply.

Link to comment
Share on other sites

This is fantastic work, Thanks for your release :).  Working with my epoch panthera 1.0.4.2 but NOT with battle eye.

Iv spent my entire night trying to figure out how to add a battle eye exception for a public variable kick this keeps giving me.

This is what im getting;

24.02.2014 05:27:56: Harkness[ADMIN] (XXX.XXX.X.XX:XXXX) xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx - #3 "PVDZE_plr_Characters" = <NULL-object>

removed personal info

any help on creating the exception and adding it is greatly appreciated its now 05:30am so I must give up for now.

Thanks guys

Link to comment
Share on other sites

it should just work with the default BattleEye filter shipping with Epoch!? I've tested it with those and other don't have any problems so I guess you have modified your filters or don't use the new RegEx format?

https://github.com/vbawol/DayZ-Epoch/blob/master/Server%20Files/Battleye/publicvariable.txt

 

alos i am wondeirng why you get a "NULL-object" kick, the variable PVDZE_plr_Characters should never be null :o

Link to comment
Share on other sites

Hi AxeCop,
 
your last Post was quite a while ago, so i hope you are well. 
 
as i can see you are located in germany , so i am guessing you are also talking german, ( ich auch ) but i think to keep the other members updated we should stick to english.
 
Howerver: 
 
I installed your Multicharactermod ( Version: 1.3.2 )on my Server Running Arma2OA 1.62.103718 and Dayz Epoch on 1.0.4.2 .
 
when i am doing my tests i am getting kicked by battleeye telling me:
 
o 02.03.2014 09:42:52: Apraxas XX - #3 "PVDZE_plr_Characters" = <NULL-object>
 
As you mentioned above this Variable should never be NULL, but apparently it is .. 
 
I poked around ( not good in this )  and found basicly the call where this Variable should get filled. 
 
 
o "PVDZE_plr_Characters" addPublicVariableEventHandler {_id = (_this select 1) spawn server_playerCharacters};
 
which should load i quess > server_playerCharacters.sdf 
 
In this server_playerCharacters.sdf it looks like you are doing some hive magic ( grabbing the informaiton out of the Database )
 
however the either the variable is not getting set or not filled, as there  is some kind of error handling in this file i think its something else.
 
o Client Log:
 
PLOGIN: Player Ready"
"PLOGIN: Waiting for server to start authentication"
[5.171,"PVDZE_plr_Characters",B 1-1-A:1 (Apraxas)]
[5.221,"retry requesting character data"]
 
o Hivelog doesnt show something funny ...
 
2014-03-02 09:42:52 HiveExt: [information] Method: 103 Params: PlayerID:0:2:
2014-03-02 09:42:52 HiveExt: [information] Result: ["PASS"]
 
Just out of intrest i looked up my character in the database 
 
> select playerUID from player_data where playername like "%Apraxas%";
> select * from character_data where playeruid = ****** ;
 
 
as you can imagine in the character_data table you can find multiple entries of a player 
 
> just for testing purpos i removed all the records in the database, but nothing changes, so i am getting down to the point where i think this is not getting loaded. 
 
currently i am a bit in a hassle, but i will have a look if the database is catching the request, so we can proove the variable is getting triggert.
 
 
just to give you all the nuts and bolts, the Battleeye filter, for me is is correct, just to give all of you the hint if you use AH made from infistar, you might need to have 
a  look into your filters. 
 
o Battleeye Publicvariable.txt
 
+ //new
5 "" !"PVDZE_" !"norrn" !"usec" !="remExField" !="remExFP" !="drn_AskServerDynamicWeatherEventArgs" !="norrinRAlie" !="BIS_effects_gepv" !="dayzPlayerLogin" !="dayzPlayerLogin2" !"PVAHR_" !="PVAH_AdminReq" !="PVAH_WriteLogReq"
5 "norrn" !="norrnRACarUp" !="norrnRAPicUp" !="norrnRaDrag" !="norrnR180" !="norrnRalie" !="norrnRLact" !="norrnRALW" !="norrnRDead"
5 "usec" !="usecMorphine" !="usecBandage" !="usecBleed"
5 "PVDZE_" !"PVDZE_player" !"PVDZE_send" !="PVDZE_veh_Update" !="PVDZE_plr_GutBody" !="PVDZE_plr_GutBodyZ" !="PVDZE_veh_Lock" !="PVDZE_plr_DeathB" !="PVDZE_maintainArea" !="PVDZE_obj_Publish" !="PVDZE_obj_Swap" !="PVDZE_plr_Save" !="PVDZE_obj_Delete" !="PVDZE_obj_Trade" !="PVDZE_veh_Publish2" !="PVDZE_zed_Spawn" !="PVDZE_plr_Died" !="PVDZE_obj_setlocalVars" !="PVDZE_plr_TradeMenu" !="PVDZE_obj_getlocalVars" !="PVDZE_veh_Upgrade" !="PVDZE_atp" !="PVDZE_plr_Login" !="PVDZE_plr_Login2" !="PVDZE_plr_LoginRecord" !="PVDZE_plr_DeathBResult" !="PVDZE_veh_SFix" !="PVDZE_plr_Hit" !="PVDZE_plr_HitV" !="PVDZE_veh_SFuel" !="PVDZE_plr_HideBody" !="PVDZE_plr_Morph" !="PVDZE_veh_Publish"
5 "PVAHR_" !"PVAHR_0_"
5="player"
5="server"
5 "remExFP" !="\"remExFP\" = \[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]" !"\[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]"
5 "" !"PVDZE_" !"norrn" !"usec" !="remExField" !="remExFP" !="drn_AskServerDynamicWeatherEventArgs" !="BIS_effects_gepv"
5 "remExFP" !="\"remExFP\" = \[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]" !"\[,,\"per\",\"execVM\",\"ca\\Modules\\Functions\\init.sqf\"\]"
1="PVAH_AdminReq"
1="PVAH_WriteLogReq"
1 "PVAHR_0_"
5="AHKICK"
 
 
Cheers and Greetings 
 
- Apraxas
Link to comment
Share on other sites

@Apraxas: that looks like an old BattlEye filter!? that is why you are getting kicked, the current one looks like this:

https://github.com/vbawol/DayZ-Epoch/blob/master/Server%20Files/Battleye/publicvariable.txt (it says "new" in the first line haha)

if you look in there it allows just all public variables starting with "PVDZE_", that is why you don't need to change your filters for my mod to work.

(not with updated BattlEye filters I mean, you had to add the variable "PVDZE_plr_Characters" before the update.. what you are using is just out of date as i expected)

 

I can't help you with AntiHack kicks, please disable all your AH scripts and test again, it should work with vanilla Epoch, everything else I cannot test, sorry.

Link to comment
Share on other sites

gonna test without infistar, but followed the instructions to the letter and i am no locked on "Requesting Character Data". No obvious errors in .rpt. A lot of spam from sarge and having a high vehicle spawn count vs number of vehicles capable of spawning. Will see if removing infistar does the trick

 

removing infistar didnt change anything, but i believe i did manage to find a clue as to what is going on.

 

No player found for channel 276119616 - message ignored

"get: STRING (myUID), sent: STRING (myUID)"

"DISCONNECT: Viktor Reznov (myUID) Object: B 1-1-A:1 (Viktor Reznov) REMOTE, _characterID: 0 at loc [-7245.22,19535.3,-3.05176e-005]"

 

been really workin at this, new error, nfi on this one  http://pastebin.com/r5gsXzGX

 

Going to try a fresh install of script, havent failed with a script this far but.. My name is Viktor Reznov and I will HAVE MY REVENGE

Link to comment
Share on other sites

Dont know if this is relevant, but in the instructions (in the op anyhow, read from page 1 - 10 and didnt see it) need to open your init and modify the _playerMonitor path to the new one and in the server_playerLogin you need to add _characterSlot = _this select 2; to the variables right at lines 7-9. those additions werent shipped with the dl and were omitted from instructions? testing now to see if that is the fix.

 

If this was all a well known fact and i am somehow just blind (or was really tired when i read the entire topic from start to finish) and missed it, my apologies. If this helps however, i will be very pleased with myself

 

Couldnt get it working, no matter what i tried. Fresh pbo's or not. </3

Link to comment
Share on other sites

Dont know if this is relevant, but in the instructions (in the op anyhow, read from page 1 - 10 and didnt see it) need to open your init and modify the _playerMonitor path to the new one and in the server_playerLogin you need to add _characterSlot = _this select 2; to the variables right at lines 7-9. those additions werent shipped with the dl and were omitted from instructions? testing now to see if that is the fix.

 

If this was all a well known fact and i am somehow just blind (or was really tired when i read the entire topic from start to finish) and missed it, my apologies. If this helps however, i will be very pleased with myself

 

Couldnt get it working, no matter what i tried. Fresh pbo's or not. </3

I don't know what you mean exactly but the sample files provided with the download are working, I took them right from my test server so you can use them if you have a default Epoch installation or follow the instructions to do the changes yourself.

The only difference from the instructions is the change in the file server_playerLogin.sqf, I kept the instructions simple but in the file I have just extracted the additional parameter "_this select 2" and saved it into a variable before using it:

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

if you refer to that? that are 3 steps instead of the 1 step in the instructions but is the same code essentially.. I just want to keep it simple :D

 

same as:

_key = format["CHILD:101:%1:%2:%3:%4:",_playerID,dayZ_instance,_playerName,_this select 2];
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...