[Ajuda] Por que ta travando?
#1

Код:
[23:29:42] [warning] client exceeded 'ackslimit' MEUIP:64163 (3070) Limit: 3000/sec
Quando eu chamo a funзгo serversave
Код:
forward HoraSave();
public HoraSave() {
	new Hour, Minute, Second;
	gettime(Hour, Minute, Second);
	if (
	Hour == 00 && Minute == 30 ||
	Hour == 01 && Minute == 30 ||
	Hour == 02 && Minute == 30 ||
	Hour == 03 && Minute == 30 ||
	Hour == 04 && Minute == 30 ||
	Hour == 05 && Minute == 30 ||
	Hour == 06 && Minute == 30 ||
	Hour == 07 && Minute == 30 ||
	Hour == 08 && Minute == 30 ||
	Hour == 09 && Minute == 30 ||
	Hour == 10 && Minute == 30 ||
	Hour == 11 && Minute == 30 ||
	Hour == 12 && Minute == 30 ||
	Hour == 13 && Minute == 30 ||
	Hour == 14 && Minute == 30 ||
	Hour == 15 && Minute == 30 ||
	Hour == 16 && Minute == 30 ||
	Hour == 17 && Minute == 30 ||
	Hour == 18 && Minute == 30 ||
	Hour == 19 && Minute == 30 ||
	Hour == 20 && Minute == 30 ||
	Hour == 21 && Minute == 30 ||
	Hour == 22 && Minute == 30 ||
	Hour == 23 && Minute == 30)
	{
		SalvarCasas();
		SalvarFactions();
		SalvarServer();
		SendClientMessageToAll(COLOR_LIGHTRED, "SERVER SAVE!");
    }
    return 1;
}
Salvar casas
Код:
stock SalvarCasas()
{
	for(new houseid; houseid < MAX_HOUSES; houseid++) {
        new query[1030];
        format(query, sizeof(query), "UPDATE `houses` SET `OutPosX` = '%f', `OutPosY` = '%f', `OutPosZ` = '%f', `InPosX` = '%f', `InPosY` = '%f', `InPosZ` = '%f', `World` = '%d', `Price` = '%d', `Interior` = '%d', `Locked` = '%d', `Dono` = '%s', `FHQ` = '%d', `Money` = '%d', `Maconha` = '%d', `Material` = '%d', `Owner` = '%d', `hlastlogin` = '%d' WHERE `ID` = '%i' ",
            HouseInfo[houseid][OutPosX],
            HouseInfo[houseid][OutPosY],
            HouseInfo[houseid][OutPosZ],
            HouseInfo[houseid][InPosX],
            HouseInfo[houseid][InPosY],
            HouseInfo[houseid][InPosZ],
            HouseInfo[houseid][World],
            HouseInfo[houseid][Price],
            HouseInfo[houseid][Interior],
            HouseInfo[houseid][Locked],
            HouseInfo[houseid][Dono],
            HouseInfo[houseid][FHQ],
            HouseInfo[houseid][Money],
            HouseInfo[houseid][Maconha],
			HouseInfo[houseid][Material],
            HouseInfo[houseid][Owner],
			HouseInfo[houseid][hlastlogin],
            houseid);
        mysql_pquery(ConnectMYSQL, query);
	}
	return 1;
}
Salvar factions
Код:
stock SalvarFactions()
{
	for(new factionid; factionid < MAX_FACTIONS; factionid++) {
        new query[1030];
        format(query, sizeof(query), "UPDATE `factions` SET `facname` = '%s', `HQposX` = '%f', `HQposY` = '%f', `HQposZ` = '%f', `pistolSPAWNfac` = '%d', `shotgunSPAWNfac` = '%d', `submachineSPAWNfac` = '%d', `assaultSPAWNfac` = '%d', `sniperSPAWNfac` = '%d', `meleeSPAWNfac` = '%d', `cofredinheiro` = '%d', `cofresalario` = '%d', `cofrematerial` = '%d', `cofremaconha` = '%d', `hq` = '%d' WHERE `ID` = '%i' ",
            FactionInfo[factionid][facname],
            FactionInfo[factionid][HQposX],
            FactionInfo[factionid][HQposY],
            FactionInfo[factionid][HQposZ],
            FactionInfo[factionid][pistolSPAWNfac],
            FactionInfo[factionid][shotgunSPAWNfac],
            FactionInfo[factionid][submachineSPAWNfac],
            FactionInfo[factionid][assaultSPAWNfac],
            FactionInfo[factionid][sniperSPAWNfac],
            FactionInfo[factionid][meleeSPAWNfac],
            FactionInfo[factionid][cofredinheiro],
            FactionInfo[factionid][cofresalario],
            FactionInfo[factionid][cofrematerial],
            FactionInfo[factionid][cofremaconha],
			FactionInfo[factionid][hq],
            factionid);
        mysql_pquery(ConnectMYSQL, query);

        format(query, sizeof(query), "UPDATE `factions` SET `membro1` = '%s', `membro2` = '%s', `membro3` = '%s', `membro4` = '%s', `membro5` = '%s', `membro6` = '%s', `membro7` = '%s', `membro8` = '%s', `membro9` = '%s', `membro10` = '%s', `membro11` = '%s', `membro12` = '%s', `membro13` = '%s', `membro14` = '%s', `membro15` = '%s' WHERE `ID` = '%i' ",
            FactionInfo[factionid][membro1],
            FactionInfo[factionid][membro2],
            FactionInfo[factionid][membro3],
            FactionInfo[factionid][membro4],
            FactionInfo[factionid][membro5],
            FactionInfo[factionid][membro6],
            FactionInfo[factionid][membro7],
            FactionInfo[factionid][membro8],
            FactionInfo[factionid][membro9],
            FactionInfo[factionid][membro10],
            FactionInfo[factionid][membro11],
            FactionInfo[factionid][membro12],
            FactionInfo[factionid][membro13],
            FactionInfo[factionid][membro14],
            FactionInfo[factionid][membro15],
            factionid);
        mysql_pquery(ConnectMYSQL, query);

        format(query, sizeof(query), "UPDATE `factions` SET `cargo1` = '%d', `cargo2` = '%d', `cargo3` = '%d', `cargo4` = '%d', `cargo5` = '%d', `cargo6` = '%d', `cargo7` = '%d', `cargo8` = '%d', `cargo9` = '%d', `cargo10` = '%d', `cargo11` = '%d', `cargo12` = '%d', `cargo13` = '%d', `cargo14` = '%d', `cargo15` = '%d' WHERE `ID` = '%i' ",
            FactionInfo[factionid][cargo1],
            FactionInfo[factionid][cargo2],
            FactionInfo[factionid][cargo3],
            FactionInfo[factionid][cargo4],
            FactionInfo[factionid][cargo5],
            FactionInfo[factionid][cargo6],
            FactionInfo[factionid][cargo7],
            FactionInfo[factionid][cargo8],
            FactionInfo[factionid][cargo9],
            FactionInfo[factionid][cargo10],
            FactionInfo[factionid][cargo11],
            FactionInfo[factionid][cargo12],
            FactionInfo[factionid][cargo13],
            FactionInfo[factionid][cargo14],
            FactionInfo[factionid][cargo15],
            factionid);
        mysql_pquery(ConnectMYSQL, query);
	}
	return 1;
}
salvar server
Код:
stock SalvarServer()
{
	for(new factionid; factionid < MAX_FACTIONS; factionid++) {
        new query[1030];
        format(query, sizeof(query), "UPDATE `server` SET `god` = '%s', `cm1` = '%s', `cm2` = '%s', `gm1` = '%s', `gm2` = '%s', `gm3` = '%s', `gm4` = '%s', `sa1` = '%s', `sa2` = '%s', `sa3` = '%s', `sa4` = '%s', `adm1` = '%s', `adm2` = '%s', `adm3` = '%s', `adm4` = '%s' ",
            admlist[god],
            admlist[cm1],
            admlist[cm2],
            admlist[gm1],
            admlist[gm2],
            admlist[gm3],
			admlist[gm4],
            admlist[sa1],
            admlist[sa2],
            admlist[sa3],
            admlist[sa4],
            admlist[adm1],
            admlist[adm2],
            admlist[adm3],
            admlist[adm4]);
        mysql_pquery(ConnectMYSQL, query);

        format(query, sizeof(query), "UPDATE `server` SET `mod1` = '%s', `mod2` = '%s', `mod3` = '%s', `mod4` = '%s', `mod5` = '%s', `mod6` = '%s', `mod7` = '%s', `mod8` = '%s', `tutor1` = '%s', `tutor2` = '%s', `tutor3` = '%s', `tutor4` = '%s', `tutor5` = '%s', `tutor6` = '%s', `tutor7` = '%s', `tutor8` = '%s' ",
            admlist[mod1],
            admlist[mod2],
            admlist[mod3],
            admlist[mod4],
            admlist[mod5],
            admlist[mod6],
			admlist[mod7],
            admlist[mod8],
            admlist[tutor1],
            admlist[tutor2],
            admlist[tutor3],
            admlist[tutor4],
            admlist[tutor5],
            admlist[tutor6],
			admlist[tutor7],
            admlist[tutor8]);
        mysql_pquery(ConnectMYSQL, query);

        format(query, sizeof(query), "UPDATE `server` SET `donoDende` = '%d', `donoComplexo` = '%d', `donoUrubu` = '%d', `donoMangueira` = '%d', `donoRocinha` = '%d', `donoTitanic` = '%d' ",
            donoDende,
            donoComplexo,
            donoUrubu,
            donoMangueira,
            donoRocinha,
            donoTitanic);
        mysql_pquery(ConnectMYSQL, query);
	}
	return 1;
}
Reply
#2

Nгo entendi, poderia explicar melhor?
Reply
#3

ta travando o servidor quando executa essa funзгo
ela й chamada nas horas quebradas tipo 1:30, 2:30
Qnd executa ela trava o sv todo
Reply
#4

Use o debug !
PHP код:
stock SalvarCasas()
{
    print(
"Entrei na stock SalvarCasas");
    for(new 
houseidhouseid MAX_HOUSEShouseid++) {
        
printf("Estou na Loop e Salvando a casa ID: %d"houseid);
        new 
query[1030];
        
format(querysizeof(query), "UPDATE `houses` SET `OutPosX` = '%f', `OutPosY` = '%f', `OutPosZ` = '%f', `InPosX` = '%f', `InPosY` = '%f', `InPosZ` = '%f', `World` = '%d', `Price` = '%d', `Interior` = '%d', `Locked` = '%d', `Dono` = '%s', `FHQ` = '%d', `Money` = '%d', `Maconha` = '%d', `Material` = '%d', `Owner` = '%d', `hlastlogin` = '%d' WHERE `ID` = '%i' ",
            
HouseInfo[houseid][OutPosX],
            
HouseInfo[houseid][OutPosY],
            
HouseInfo[houseid][OutPosZ],
            
HouseInfo[houseid][InPosX],
            
HouseInfo[houseid][InPosY],
            
HouseInfo[houseid][InPosZ],
            
HouseInfo[houseid][World],
            
HouseInfo[houseid][Price],
            
HouseInfo[houseid][Interior],
            
HouseInfo[houseid][Locked],
            
HouseInfo[houseid][Dono],
            
HouseInfo[houseid][FHQ],
            
HouseInfo[houseid][Money],
            
HouseInfo[houseid][Maconha],
            
HouseInfo[houseid][Material],
            
HouseInfo[houseid][Owner],
            
HouseInfo[houseid][hlastlogin],
            
houseid);
        
printf("Vou Mandar Para o Banco de dados a casa ID: %d"houseid);
        
mysql_pquery(ConnectMYSQLquery);
        
printf("Salvei com sucesso a casa ID: %d"houseid);
    }
    print(
"Sai da stock Salvar Casas !");
    return 
1;

Reply
#5

@[BOPE]Seu._.Madruga

Ta funcionando, no localhost tudo carrega e salva, da umas travadas, mas no host ta dando bosta (acho q ta mt pesado e preciso melhorar isso)


Desse jeito que eu fiz melhora um pouco jб nй? Sу vai carregar se tiver faction ou casa (fiz certo)?

Код:
stock SalvarCasas()
{
	for(new houseid; houseid < MAX_HOUSES; houseid++) {
		new rows, fields;
		cache_get_data(rows, fields);
		if(rows) {	
			new query[1030];
			format(query, sizeof(query), "UPDATE `houses` SET `OutPosX` = '%f', `OutPosY` = '%f', `OutPosZ` = '%f', `InPosX` = '%f', `InPosY` = '%f', `InPosZ` = '%f', `World` = '%d', `Price` = '%d', `Interior` = '%d', `Locked` = '%d', `Dono` = '%s', `FHQ` = '%d', `Money` = '%d', `Maconha` = '%d', `Material` = '%d', `Owner` = '%d', `hlastlogin` = '%d' WHERE `ID` = '%i' ",
				HouseInfo[houseid][OutPosX],
				HouseInfo[houseid][OutPosY],
				HouseInfo[houseid][OutPosZ],
				HouseInfo[houseid][InPosX],
				HouseInfo[houseid][InPosY],
				HouseInfo[houseid][InPosZ],
				HouseInfo[houseid][World],
				HouseInfo[houseid][Price],
				HouseInfo[houseid][Interior],
				HouseInfo[houseid][Locked],
				HouseInfo[houseid][Dono],
				HouseInfo[houseid][FHQ],
				HouseInfo[houseid][Money],
				HouseInfo[houseid][Maconha],
				HouseInfo[houseid][Material],
				HouseInfo[houseid][Owner],
				HouseInfo[houseid][hlastlogin],
				houseid);
			mysql_pquery(ConnectMYSQL, query);
		}
	}
	return 1;
}
Код:
stock SalvarFactions()
{
	for(new factionid; factionid < MAX_FACTIONS; factionid++) {
		new rows, fields;
		cache_get_data(rows, fields);
		if(rows) {
			new query[1030];
			format(query, sizeof(query), "UPDATE `factions` SET `facname` = '%s', `HQposX` = '%f', `HQposY` = '%f', `HQposZ` = '%f', `pistolSPAWNfac` = '%d', `shotgunSPAWNfac` = '%d', `submachineSPAWNfac` = '%d', `assaultSPAWNfac` = '%d', `sniperSPAWNfac` = '%d', `meleeSPAWNfac` = '%d', `cofredinheiro` = '%d', `cofresalario` = '%d', `cofrematerial` = '%d', `cofremaconha` = '%d', `hq` = '%d' WHERE `ID` = '%i' ",
				FactionInfo[factionid][facname],
				FactionInfo[factionid][HQposX],
				FactionInfo[factionid][HQposY],
				FactionInfo[factionid][HQposZ],
				FactionInfo[factionid][pistolSPAWNfac],
				FactionInfo[factionid][shotgunSPAWNfac],
				FactionInfo[factionid][submachineSPAWNfac],
				FactionInfo[factionid][assaultSPAWNfac],
				FactionInfo[factionid][sniperSPAWNfac],
				FactionInfo[factionid][meleeSPAWNfac],
				FactionInfo[factionid][cofredinheiro],
				FactionInfo[factionid][cofresalario],
				FactionInfo[factionid][cofrematerial],
				FactionInfo[factionid][cofremaconha],
				FactionInfo[factionid][hq],
				factionid);
			mysql_pquery(ConnectMYSQL, query);

			format(query, sizeof(query), "UPDATE `factions` SET `membro1` = '%s', `membro2` = '%s', `membro3` = '%s', `membro4` = '%s', `membro5` = '%s', `membro6` = '%s', `membro7` = '%s', `membro8` = '%s', `membro9` = '%s', `membro10` = '%s', `membro11` = '%s', `membro12` = '%s', `membro13` = '%s', `membro14` = '%s', `membro15` = '%s' WHERE `ID` = '%i' ",
				FactionInfo[factionid][membro1],
				FactionInfo[factionid][membro2],
				FactionInfo[factionid][membro3],
				FactionInfo[factionid][membro4],
				FactionInfo[factionid][membro5],
				FactionInfo[factionid][membro6],
				FactionInfo[factionid][membro7],
				FactionInfo[factionid][membro8],
				FactionInfo[factionid][membro9],
				FactionInfo[factionid][membro10],
				FactionInfo[factionid][membro11],
				FactionInfo[factionid][membro12],
				FactionInfo[factionid][membro13],
				FactionInfo[factionid][membro14],
				FactionInfo[factionid][membro15],
				factionid);
			mysql_pquery(ConnectMYSQL, query);

			format(query, sizeof(query), "UPDATE `factions` SET `cargo1` = '%d', `cargo2` = '%d', `cargo3` = '%d', `cargo4` = '%d', `cargo5` = '%d', `cargo6` = '%d', `cargo7` = '%d', `cargo8` = '%d', `cargo9` = '%d', `cargo10` = '%d', `cargo11` = '%d', `cargo12` = '%d', `cargo13` = '%d', `cargo14` = '%d', `cargo15` = '%d' WHERE `ID` = '%i' ",
				FactionInfo[factionid][cargo1],
				FactionInfo[factionid][cargo2],
				FactionInfo[factionid][cargo3],
				FactionInfo[factionid][cargo4],
				FactionInfo[factionid][cargo5],
				FactionInfo[factionid][cargo6],
				FactionInfo[factionid][cargo7],
				FactionInfo[factionid][cargo8],
				FactionInfo[factionid][cargo9],
				FactionInfo[factionid][cargo10],
				FactionInfo[factionid][cargo11],
				FactionInfo[factionid][cargo12],
				FactionInfo[factionid][cargo13],
				FactionInfo[factionid][cargo14],
				FactionInfo[factionid][cargo15],
				factionid);
			mysql_pquery(ConnectMYSQL, query);
		}
	}

	return 1;
}
Reply
#6

Uma dica, eu acho melhor criar uma sу funзгo para armazenar outras, exemplo: Armario > Armas > Skins > Equipamentos, tipo isso, assim criando sу uma funзгo para salvar, e nгo lotando o banco de dados.
Reply
#7

Quote:
Originally Posted by Derritee1001
Посмотреть сообщение
Uma dica, eu acho melhor criar uma sу funзгo para armazenar outras, exemplo: Armario > Armas > Skins > Equipamentos, tipo isso, assim criando sу uma funзгo para salvar, e nгo lotando o banco de dados.
Nгo entendi
Reply
#8

Quote:
Originally Posted by maikons
Посмотреть сообщение
Nгo entendi
Tipo, invйz de criar vбrias funзхes no salvamento, criar sу uma que vai armazenar tudo(Exemplo: Armario > Armas Leves > Armas Pesadas > Armas Brancas > Vestimentas > Equipamentos) e usar sу o salvamento com o nome "Armario" que salvaria isso tudo ^^.

OBS: o sono nгo estб deixando explicar melhor, nem dormir desde de ontem :v.
Reply
#9

Concordo com o Derrite, Й como se fosse uma pasta armario e dentro dela os arquivos tipo armasleves.ini e dentro dele conte-se o nome das armas e quantias...
Reply
#10

Uma pergunta manda a funзгo de como vocк estб chamando a public HoraSave() e de quanto em quanto tempo ela estб sendo chamada...
Jб verificou se ela nгo estб sendo chamada exemplo a cada 1 segundo ou seja 60 vezes durante o tempo determinado de 30 minutos atй 31 minutos ela ser chamada 60 vezes fora a loop que contйm dentro dela.

Jб analisou isto?
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)