[HELP] Very Slow OnPlayerLogin
#1

Hello everyone,

Last wekk I started to edit a LA-RP script his House, vehicle and business system to a more dynamic system. However now thats finished I get a weird bug in my game...

When a player logs in he will spawn in some random skin. at the last know position. but thats not the meaning. It takes arouind 20 to 30 seconds to respawn him in the wished skin position and stats. During this period you also can't use any commands.

I really don't know what the problem is, so please if someone wants to take a look for me

Gamemode: http://www.mediafire.com/?h4w60k8xp4t8tyj

For those who don't get my proble I included the server to run it yourself....
Server: http://www.mediafire.com/?rw5jjglvbbl2j19

Greetings and Thanks,
Kastranova
Reply
#2

Pastebin? Are you perhaps using dini for saving?
Reply
#3

OnPlayerUpdate!!! Check it.
Reply
#4

Yes i'm using dini, but it didn't have that problem till I addeda new house loading, saving system (And also no houses are added into the system so that would not take so long, will it )

Unfotunally the gamemode is to big to put in a pastebin...

Here is the gamemode to download http://www.mediafire.com/?h4w60k8xp4t8tyj

Hope you can help me out


--EDIT--

My onplayerupdate

pawn Код:
public OnPlayerUpdate(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        if(gPlayerLogged[playerid])
        {
            new string3[64];
            new playername3[MAX_PLAYER_NAME];
            GetPlayerName(playerid, playername3, sizeof(playername3));
            format(string3, sizeof(string3), "users/%s.ini", playername3);
            new File: hFile = fopen(string3, io_write);
            if (hFile)
            {
                new var[64];
                format(var, 64, "Key=%s\n", PlayerInfo[playerid][pKey]);fwrite(hFile, var);
                PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
                format(var, 64, "Level=%d\n",PlayerInfo[playerid][pLevel]);fwrite(hFile, var);
                format(var, 64, "AdminLevel=%d\n",PlayerInfo[playerid][pAdmin]);fwrite(hFile, var);
                format(var, 64, "DonateRank=%d\n",PlayerInfo[playerid][pDonateRank]);fwrite(hFile, var);
                format(var, 64, "UpgradePoints=%d\n",PlayerInfo[playerid][gPupgrade]);fwrite(hFile, var);
                format(var, 64, "ConnectedTime=%d\n",PlayerInfo[playerid][pConnectTime]);fwrite(hFile, var);
                format(var, 64, "Registered=%d\n",PlayerInfo[playerid][pReg]);fwrite(hFile, var);
                format(var, 64, "Sex=%d\n",PlayerInfo[playerid][pSex]);fwrite(hFile, var);
                format(var, 64, "Age=%d\n",PlayerInfo[playerid][pAge]);fwrite(hFile, var);
                format(var, 64, "Origin=%d\n",PlayerInfo[playerid][pOrigin]);fwrite(hFile, var);
                format(var, 64, "CK=%d\n",PlayerInfo[playerid][pCK]);fwrite(hFile, var);
                format(var, 64, "Muted=%d\n",PlayerInfo[playerid][pMuted]);fwrite(hFile, var);
                format(var, 64, "Respect=%d\n",PlayerInfo[playerid][pExp]);fwrite(hFile, var);
                format(var, 64, "Money=%d\n",PlayerInfo[playerid][pCash]);fwrite(hFile, var);
                format(var, 64, "Bank=%d\n",PlayerInfo[playerid][pAccount]);fwrite(hFile, var);
                format(var, 64, "Crimes=%d\n",PlayerInfo[playerid][pCrimes]);fwrite(hFile, var);
                format(var, 64, "Kills=%d\n",PlayerInfo[playerid][pKills]);fwrite(hFile, var);
                format(var, 64, "Deaths=%d\n",PlayerInfo[playerid][pDeaths]);fwrite(hFile, var);
                format(var, 64, "Arrested=%d\n",PlayerInfo[playerid][pArrested]);fwrite(hFile, var);
                format(var, 64, "WantedDeaths=%d\n",PlayerInfo[playerid][pWantedDeaths]);fwrite(hFile, var);
                format(var, 64, "Phonebook=%d\n",PlayerInfo[playerid][pPhoneBook]);fwrite(hFile, var);
                format(var, 64, "LottoNr=%d\n",PlayerInfo[playerid][pLottoNr]);fwrite(hFile, var);
                format(var, 64, "Fishes=%d\n",PlayerInfo[playerid][pFishes]);fwrite(hFile, var);
                format(var, 64, "BiggestFish=%d\n",PlayerInfo[playerid][pBiggestFish]);fwrite(hFile, var);
                format(var, 64, "Job=%d\n",PlayerInfo[playerid][pJob]);fwrite(hFile, var);
                format(var, 64, "Paycheck=%d\n",PlayerInfo[playerid][pPayCheck]);fwrite(hFile, var);
                format(var, 64, "HeadValue=%d\n",PlayerInfo[playerid][pHeadValue]);fwrite(hFile, var);
                format(var, 64, "Jailed=%d\n",PlayerInfo[playerid][pJailed]);fwrite(hFile, var);
                format(var, 64, "JailTime=%d\n",PlayerInfo[playerid][pJailTime]);fwrite(hFile, var);
                format(var, 64, "Materials=%d\n",PlayerInfo[playerid][pMats]);fwrite(hFile, var);
                format(var, 64, "Drugs=%d\n",PlayerInfo[playerid][pDrugs]);fwrite(hFile, var);
                format(var, 64, "LegalDrugs=%d\n",PlayerInfo[playerid][pLDrugs]);fwrite(hFile, var);
                format(var, 64, "Leader=%d\n",PlayerInfo[playerid][pLeader]);fwrite(hFile, var);
                format(var, 64, "Member=%d\n",PlayerInfo[playerid][pMember]);fwrite(hFile, var);
                format(var, 64, "FMember=%d\n",PlayerInfo[playerid][pFMember]);fwrite(hFile, var);
                format(var, 64, "Rank=%d\n",PlayerInfo[playerid][pRank]);fwrite(hFile, var);
                format(var, 64, "Char=%d\n",PlayerInfo[playerid][pChar]);fwrite(hFile, var);
                format(var, 64, "ContractTime=%d\n",PlayerInfo[playerid][pContractTime]);fwrite(hFile, var);
                format(var, 64, "DetSkill=%d\n",PlayerInfo[playerid][pDetSkill]);fwrite(hFile, var);
                format(var, 64, "SexSkill=%d\n",PlayerInfo[playerid][pSexSkill]);fwrite(hFile, var);
                format(var, 64, "BoxSkill=%d\n",PlayerInfo[playerid][pBoxSkill]);fwrite(hFile, var);
                format(var, 64, "LawSkill=%d\n",PlayerInfo[playerid][pLawSkill]);fwrite(hFile, var);
                format(var, 64, "MechSkill=%d\n",PlayerInfo[playerid][pMechSkill]);fwrite(hFile, var);
                format(var, 64, "JackSkill=%d\n",PlayerInfo[playerid][pJackSkill]);fwrite(hFile, var);
                format(var, 64, "CarSkill=%d\n",PlayerInfo[playerid][pCarSkill]);fwrite(hFile, var);
                format(var, 64, "NewsSkill=%d\n",PlayerInfo[playerid][pNewsSkill]);fwrite(hFile, var);
                format(var, 64, "DrugsSkill=%d\n",PlayerInfo[playerid][pDrugsSkill]);fwrite(hFile, var);
                format(var, 64, "CookSkill=%d\n",PlayerInfo[playerid][pCookSkill]);fwrite(hFile, var);
                format(var, 64, "FishSkill=%d\n",PlayerInfo[playerid][pFishSkill]);fwrite(hFile, var);
                format(var, 64, "pSHealth=%.1f\n",PlayerInfo[playerid][pSHealth]);fwrite(hFile, var);
                GetPlayerHealth(playerid,PlayerInfo[playerid][pHealth]);
                format(var, 64, "pHealth=%.1f\n",PlayerInfo[playerid][pHealth]);fwrite(hFile, var);
                format(var, 64, "Int=%d\n",PlayerInfo[playerid][pInt]);fwrite(hFile, var);
                format(var, 64, "Local=%d\n",PlayerInfo[playerid][pLocal]);fwrite(hFile, var);
                format(var, 64, "Team=%d\n",PlayerInfo[playerid][pTeam]);fwrite(hFile, var);
                format(var, 64, "Model=%d\n",PlayerInfo[playerid][pModel]);fwrite(hFile, var);
                format(var, 64, "PhoneNr=%d\n",PlayerInfo[playerid][pPnumber]);fwrite(hFile, var);
                format(var, 64, "Car=%d\n",PlayerInfo[playerid][pPcarkey]);fwrite(hFile, var);
                format(var, 64, "Car2=%d\n",PlayerInfo[playerid][pPcarkey2]);fwrite(hFile, var);
                format(var, 64, "Car3=%d\n",PlayerInfo[playerid][pPcarkey3]);fwrite(hFile, var);
                format(var, 64, "House=%d\n",PlayerInfo[playerid][pPhousekey]);fwrite(hFile, var);
                format(var, 64, "Bizz=%d\n",PlayerInfo[playerid][pPbiskey]);fwrite(hFile, var);
                if ((PlayerInfo[playerid][pPos_x]==0.0 && PlayerInfo[playerid][pPos_y]==0.0 && PlayerInfo[playerid][pPos_z]==0.0))
                {
                    PlayerInfo[playerid][pPos_x] = 1684.9;
                    PlayerInfo[playerid][pPos_y] = -2244.5;
                    PlayerInfo[playerid][pPos_z] = 13.5;
                }
                if(Spectate[playerid] != 255)
                {
                    PlayerInfo[playerid][pPos_x] = Unspec[playerid][sPx];
                    PlayerInfo[playerid][pPos_y] = Unspec[playerid][sPy];
                    PlayerInfo[playerid][pPos_z] = Unspec[playerid][sPz];
                    PlayerInfo[playerid][pInt] = Unspec[playerid][sPint];
                    PlayerInfo[playerid][pLocal] = Unspec[playerid][sLocal];
                }
                new Float:x, Float:y, Float:z;
                GetPlayerPos(playerid,x,y,z);
                PlayerInfo[playerid][pPos_x] = x;
                PlayerInfo[playerid][pPos_y] = y;
                PlayerInfo[playerid][pPos_z] = z;
                format(var, 64, "Pos_x=%.1f\n",PlayerInfo[playerid][pPos_x]);fwrite(hFile, var);
                format(var, 64, "Pos_y=%.1f\n",PlayerInfo[playerid][pPos_y]);fwrite(hFile, var);
                format(var, 64, "Pos_z=%.1f\n",PlayerInfo[playerid][pPos_z]);fwrite(hFile, var);
                format(var, 64, "CarLic=%d\n",PlayerInfo[playerid][pCarLic]);fwrite(hFile, var);
                format(var, 64, "FlyLic=%d\n",PlayerInfo[playerid][pFlyLic]);fwrite(hFile, var);
                format(var, 64, "BoatLic=%d\n",PlayerInfo[playerid][pBoatLic]);fwrite(hFile, var);
                format(var, 64, "FishLic=%d\n",PlayerInfo[playerid][pFishLic]);fwrite(hFile, var);
                format(var, 64, "GunLic=%d\n",PlayerInfo[playerid][pGunLic]);fwrite(hFile, var);
                format(var, 64, "Gun1=%d\n",PlayerInfo[playerid][pGun1]);fwrite(hFile, var);
                format(var, 64, "Gun2=%d\n",PlayerInfo[playerid][pGun2]);fwrite(hFile, var);
                format(var, 64, "Gun3=%d\n",PlayerInfo[playerid][pGun3]);fwrite(hFile, var);
                format(var, 64, "Gun4=%d\n",PlayerInfo[playerid][pGun4]);fwrite(hFile, var);
                format(var, 64, "Ammo1=%d\n",PlayerInfo[playerid][pAmmo1]);fwrite(hFile, var);
                format(var, 64, "Ammo2=%d\n",PlayerInfo[playerid][pAmmo2]);fwrite(hFile, var);
                format(var, 64, "Ammo3=%d\n",PlayerInfo[playerid][pAmmo3]);fwrite(hFile, var);
                format(var, 64, "Ammo4=%d\n",PlayerInfo[playerid][pAmmo4]);fwrite(hFile, var);
                format(var, 64, "CarTime=%d\n",PlayerInfo[playerid][pCarTime]);fwrite(hFile, var);
                format(var, 64, "PayDay=%d\n",PlayerInfo[playerid][pPayDay]);fwrite(hFile, var);
                format(var, 64, "PayDayHad=%d\n",PlayerInfo[playerid][pPayDayHad]);fwrite(hFile, var);
                format(var, 64, "Watch=%d\n",PlayerInfo[playerid][pWatch]);fwrite(hFile, var);
                format(var, 64, "Crashed=%d\n",PlayerInfo[playerid][pCrashed]);fwrite(hFile, var);
                format(var, 64, "Wins=%d\n",PlayerInfo[playerid][pWins]);fwrite(hFile, var);
                format(var, 64, "Loses=%d\n",PlayerInfo[playerid][pLoses]);fwrite(hFile, var);
                format(var, 64, "AlcoholPerk=%d\n",PlayerInfo[playerid][pAlcoholPerk]);fwrite(hFile, var);
                format(var, 64, "DrugPerk=%d\n",PlayerInfo[playerid][pDrugPerk]);fwrite(hFile, var);
                format(var, 64, "MiserPerk=%d\n",PlayerInfo[playerid][pMiserPerk]);fwrite(hFile, var);
                format(var, 64, "PainPerk=%d\n",PlayerInfo[playerid][pPainPerk]);fwrite(hFile, var);
                format(var, 64, "TraderPerk=%d\n",PlayerInfo[playerid][pTraderPerk]);fwrite(hFile, var);
                format(var, 64, "Tutorial=%d\n",PlayerInfo[playerid][pTut]);fwrite(hFile, var);
                format(var, 64, "Mission=%d\n",PlayerInfo[playerid][pMissionNr]);fwrite(hFile, var);
                format(var, 64, "Warnings=%d\n",PlayerInfo[playerid][pWarns]);fwrite(hFile, var);
                format(var, 64, "VirWorld=%d\n",PlayerInfo[playerid][pVirWorld]);fwrite(hFile, var);
                if(PlayerInfo[playerid][pDonateRank] < 1) { PlayerInfo[playerid][pFuel] = 0; }
                format(var, 64, "Fuel=%d\n",PlayerInfo[playerid][pFuel]);fwrite(hFile, var);
                format(var, 64, "Married=%d\n",PlayerInfo[playerid][pMarried]);fwrite(hFile, var);
                format(var, 64, "MarriedTo=%s\n",PlayerInfo[playerid][pMarriedTo]);fwrite(hFile, var);
                format(var, 64, "FishTool=%d\n",PlayerInfo[playerid][pFishTool]);fwrite(hFile, var);
                format(var, 64, "Note1=%s\n",PlayerInfo[playerid][pNote1]);fwrite(hFile, var);
                format(var, 64, "Note1s=%d\n",PlayerInfo[playerid][pNote1s]);fwrite(hFile, var);
                format(var, 64, "Note2=%s\n",PlayerInfo[playerid][pNote2]);fwrite(hFile, var);
                format(var, 64, "Note2s=%d\n",PlayerInfo[playerid][pNote2s]);fwrite(hFile, var);
                format(var, 64, "Note3=%s\n",PlayerInfo[playerid][pNote3]);fwrite(hFile, var);
                format(var, 64, "Note3s=%d\n",PlayerInfo[playerid][pNote3s]);fwrite(hFile, var);
                format(var, 64, "Note4=%s\n",PlayerInfo[playerid][pNote4]);fwrite(hFile, var);
                format(var, 64, "Note4s=%d\n",PlayerInfo[playerid][pNote4s]);fwrite(hFile, var);
                format(var, 64, "Note5=%s\n",PlayerInfo[playerid][pNote5]);fwrite(hFile, var);
                format(var, 64, "Note5s=%d\n",PlayerInfo[playerid][pNote5s]);fwrite(hFile, var);
                format(var, 64, "InvWeapon=%d\n",PlayerInfo[playerid][pInvWeapon]);fwrite(hFile, var);
                format(var, 64, "InvAmmo=%d\n",PlayerInfo[playerid][pInvAmmo]);fwrite(hFile, var);
                format(var, 64, "Lighter=%d\n",PlayerInfo[playerid][pLighter]);fwrite(hFile, var);
                format(var, 64, "Cigarettes=%d\n",PlayerInfo[playerid][pCigarettes]);fwrite(hFile, var);
                format(var, 64, "Locked=%d\n",PlayerInfo[playerid][pLocked]);fwrite(hFile, var);
                format(var, 64, "PhoneOwned=%d\n",PlayerInfo[playerid][pPhoneOwned]);fwrite(hFile, var);
                format(var, 64, "PayDayTime=%d\n",PlayerInfo[playerid][pPayDayTime]);fwrite(hFile, var);
                fclose(hFile);
            }
        }
    }
    return 1;
}
Reply
#5

Quote:
Originally Posted by Vince
Посмотреть сообщение
OnPlayerUpdate!!! Check it.
ROFLMAO

Dude, if you do not know what OnPlayerUpdate is don't use it lol.
Reply
#6

Ok, but can someone please take a look at what is the problem of such a long loading time ?

Greetings
Kastranova
Reply
#7

This: https://sampwiki.blast.hk/wiki/OnPlayerUpdate
Important Note: This callback is called very frequently per second per player, only use it when you know what it's meant for.
Reply
#8

Well, I haven't changed anything in that area, it appeard after I scripted the new house loading and saving system...

I tryed to get it out of the OnGameModeInit (houses won't load ) and the problem isn't fixed..

So my guess that ain't the problem....
Reply
#9

It IS the problem!

Nuf said, don't expect us to help even more
Reply
#10

But what in is the problem the whole onplayerupdate ? Explain it to me please
Reply


Forum Jump:


Users browsing this thread: 5 Guest(s)