Stats does not saving
#1

Hi there.
I would like to explain the problem: In my server, stats does not saving on player disconnect.
It's only saving player score and deaths, not money etc. I have already Mysql, and these things but it's still not saving even i type /savestats... Any solution please?
Reply
#2

Provide some codes please.
Reply
#3

Quote:
Originally Posted by RxErT
Посмотреть сообщение
Provide some codes please.
Do you mean compiling? Not sure if can I understand.
Reply
#4

Stats saving command.. or anything related with stats saving.
Reply
#5

Quote:
Originally Posted by RxErT
Посмотреть сообщение
Stats saving command.. or anything related with stats saving.
PHP код:
enum UserEnum
{
    
//saved data
    
u_admin,
    
u_vip,
    
u_kills,
    
u_deaths,
    
u_score,
    
u_money,
    
u_hours,
    
u_minutes,
    
u_seconds,
    
//not saved data
    
u_attempts,
    
u_sessionkills,
    
u_sessiondeaths,
    
u_spree,
    
//conditions data
    
u_jailtime,
    
u_mutetime,
    
u_cmutetime,
    
u_specdata[2],
    
Float:u_specpos[4],
    
u_vehicle,
    
u_warnings, 
PHP код:
public OnFilterScriptInit()
{
    print(
"------------------------------------------------");
    print(
"Running GAdmin System | Developed by Gammix | Loaded...");
    print(
"------------------------------------------------");
    
BUD::Setting(opt.Database, LOCATION_DATABASE);
    
BUD::Setting(opt.KeepAliveTime, 3000);
    
BUD::Initialize();
    
BUD::VerifyColumn("ip", BUD::TYPE_STRING);
    
BUD::VerifyColumn("joindate", BUD::TYPE_STRING);
    
BUD::VerifyColumn("laston", BUD::TYPE_STRING);
    
BUD::VerifyColumn("admin", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("vip", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("kills", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("deaths", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("score", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("money", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("hours", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("minutes", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("seconds", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("logged", BUD::TYPE_NUMBER);
    
BUD::VerifyColumn("autologin", BUD::TYPE_NUMBER);
    
SetTimer("PunishmentHandle", 1000, true); 
PHP код:
CMD:stats(playerid, params[])
{
    new 
target;
    if(
sscanf(params, "u", target))
    {
          
target = playerid;
        
SendClientMessage(playerid, COLOR_KHAKI, "TIP: You can also view other players stats by /stats [player]");
    }
    if(! 
IsPlayerConnected(target)) return SendClientMessage(playerid, COLOR_RED, "ERROR: The specified player is not conected.");
    
GetPlayerConnectedTime(target, gUser[target][u_hours], gUser[target][u_minutes], gUser[target][u_seconds]);
    
//Stats stuff !:D!
    
new DIALOG[676];
    new 
string[156];
    
format(string, sizeof(string), ""WHITE"You are now viewing "LIME"%s's [id: %i]"WHITE", statics:\n\n", ReturnPlayerName(target), target);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Kills: "CORAL"%i\n", gUser[target][u_kills]);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Deaths: "CORAL"%i\n", gUser[target][u_deaths]);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Session Kills: "CORAL"%i\n", gUser[target][u_sessionkills]);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Session Deaths: "CORAL"%i\n", gUser[target][u_sessiondeaths]);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Killing Spree: "CORAL"%i\n", gUser[target][u_spree]);
    
strcat(DIALOG, string);
    
//calculate Kill/Deaths ratio
    
new Float:ratio;
    if(
gUser[target][u_deaths] <= 0) ratio = 0.0;
    else 
ratio = (gUser[target][u_kills] / gUser[target][u_deaths]);
    
format(string, sizeof(string), ""SAMP_BLUE"K/D Ratio: "CORAL"%0.2f\n", ratio);
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Score: "CORAL"%i\n", GetPlayerScore(target));
    
strcat(DIALOG, string);
    
format(string, sizeof(string), ""SAMP_BLUE"Money: "CORAL"$%i\n", GetPlayerMoney(target));
    
strcat(DIALOG, string);
    
//player game play time
    
format(string, sizeof(string), ""SAMP_BLUE"Played time: "CORAL"%02i hours %02i minutes %02i seconds\n", gUser[target][u_hours], gUser[target][u_minutes], gUser[target][u_seconds]);
    
strcat(DIALOG, string);
    
//print if registered or not
    
new yes[4] = "YES", no[3] = "NO";
    
format(string, sizeof(string), ""SAMP_BLUE"Registered: "CORAL"%s\n", ((GetPVarType(playerid, "GAdmin_Loggedin") != PLAYER_VARTYPE_NONE) ? yes : no));
    
strcat(DIALOG, string);
    
//get user id
    
new userid = BUD::GetNameUID(ReturnPlayerName(target));
    new 
DATE[18];
    
//joined date
    
BUD::GetStringEntry(userid, "joindate", DATE);
    
format(string, sizeof(string), ""SAMP_BLUE"Join date: "CORAL"%s\n", DATE);
    
strcat(DIALOG, string);
    
//last visit to server date
    
BUD::GetStringEntry(userid, "laston", DATE);
    
format(string, sizeof(string), ""SAMP_BLUE"Last visit: "CORAL"%s\n", DATE);
    
strcat(DIALOG, string);
    
//current team id
    
format(string, sizeof(string), ""SAMP_BLUE"Team: "CORAL"%i\n\n", GetPlayerTeam(target));
    
strcat(DIALOG, string);
    
//shit!
    
strcat(DIALOG, ""WHITE"If you think your stats are wrong or not saved according to last log out, Please place an appeal in forums.\n");
    
strcat(DIALOG, "Make sure you have a screen of your last stats and this.");
    
//show stats in dialog
    
ShowPlayerDialog(playerid, DIALOG_COMMON, DIALOG_STYLE_MSGBOX, "Player statics", DIALOG, "Close", "");
    return 
1;
} 
Reply
#6

Hmm I think money saving system in gadmin is bugged, I also made a topic regarding same issue.
Reply
#7

Try showing your /savestats command.
Since the command you showed only displays the stats but doesn't save them.
Reply
#8

Quote:
Originally Posted by AdamsLT
Посмотреть сообщение
Try showing your /savestats command.
Since the command you showed only displays the stats but doesn't save them.
Can't find, i just want to know which FS have i to use for player money saving.
By the way, i found this code, what to do with it, i tried to put this to my game mode, but when i
compile it, it's showing many errors.
So if someone knowing how to fix money saving, i will be thanksful.
Reply
#9

Maybe you reset the player stats before the saving. Be sure that you are not reseting the variables (stats of the player) just after the stats will be saved like:

PHP код:
public OnPlayerDisconnect( playerid, reason )
{
    if( 
PlayerInfo[ playerid ][ LoggedIn ] == 1 )
        
SavePlayer( playerid );
        
    
//After the save reset the variables like:
    
PlayerInfo[ playerid ][ Score ] = 0;
    
PlayerInfo[ playerid ][ Coins ] = 0;
    
PlayerInfo[ playerid ][ Admin ] = 0;
    return 
1;
} 
Also, if u say that your score and deaths are not saving, search in your gamemode/FS if you don't
reset them in some place before the auto save or something like this.
Reply
#10

For info, i just found this in my server log when i started it first time..

PHP код:
BUD - Notice: The database "GAdmin/server.d" doesn't exist; it will be created.
BUD v1.0.5 BETA loaded.
BUD - Notice: The column "ip" doesn'
t exist; attempting to create it.
BUD - Notice: The column "joindate" doesn't exist; attempting to create it.
BUD - Notice: The column "laston" doesn'
t exist; attempting to create it.
BUD - Notice: The column "admin" doesn't exist; attempting to create it.
BUD - Notice: The column "vip" doesn'
t exist; attempting to create it.
BUD - Notice: The column "kills" doesn't exist; attempting to create it.
BUD - Notice: The column "deaths" doesn'
t exist; attempting to create it.
BUD - Notice: The column "score" doesn't exist; attempting to create it.
BUD - Notice: The column "money" doesn'
t exist; attempting to create it.
BUD - Notice: The column "hours" doesn't exist; attempting to create it.
BUD - Notice: The column "minutes" doesn'
t exist; attempting to create it.
BUD - Notice: The column "seconds" doesn't exist; attempting to create it.
BUD - Notice: The column "logged" doesn'
t exist; attempting to create it.
BUD - Notice: The column "autologin" doesn't exist; attempting to create it. 
And this in server.d

PHP код:
SQLite format 3   @                                                                     -в
                                                                                                                                                                                                                                                                                                                                                                                                                                           
&#131;h‡/tableusersusersCREATE TABLE users (uid INTEGER PRIMARY KEY, name TEXT, passhash BLOB, `ip` TEXT DEFAULT(''), `joindate` TEXT DEFAULT(''), `laston` TEXT DEFAULT(''), `admin` INTEGER DEFAULT(0), `vip` INTEGER DEFAULT(0), `kills` INTEGER DEFAULT(0), `deaths` INTEGER DEFAULT(0), `score` INTEGER DEFAULT(0), `money` INTEGER DEFAULT(0), `hours` INTEGER DEFAULT(0), `minutes` INTEGER DEFAULT(0), `seconds` INTEGER DEFAULT(0), `logged` INTEGER DEFAULT(0), `autologin` INTEGER DEFAULT(0))
     
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)