Runtime error 19
#1

Okay so I dont get it anymore. I am trying to fix this for last 3 hours.


Код:
#include <a_samp>
#include <YSI\y_ini>
#include <zcmd>
#include <sscanf2>
#include <foreach>
Код:
echo Executing Server Config...
lanmode 0
rcon_password xxxxxz
maxplayers 50
port 7777
hostname SA-MP 0.3 Server
gamemode0 Lvtdm
filterscripts
announce 0
query 1
chatlogging 0
weburl www.sa-mp.com
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
maxnpc 10
plugins sscanf
logtimeformat [%H:%M:%S]

Код:
----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3x, ©2005-2013 SA-MP Team

[01:23:57] filterscripts = ""  (string)
[01:23:57] 
[01:23:57] Server Plugins
[01:23:57] --------------
[01:23:57]  Loading plugin: sscanf
[01:23:57] 

[01:23:57]  ===============================

[01:23:57]       sscanf plugin loaded.     

[01:23:57]          Version:  2.8.1        

[01:23:57]    © 2012 Alex "******" Cole  

[01:23:57]  ===============================

[01:23:57]   Loaded.
[01:23:57]  Loaded 1 plugins.

[01:23:57] 
[01:23:57] Filterscripts
[01:23:57] ---------------
[01:23:57]   Loaded 0 filterscripts.

[01:23:57] Script[gamemodes/Lvtdm.amx]: Run time error 19: "File or function is not found"
[01:23:57] Number of vehicle models: 0
Reply
#2

Check your plugins. Check that you compiled the .pwn file.
Reply
#3

Okay so I found the problem, it was missing Whirlpool. But now I got different error

When I start the server I get this
Код:
Error: Function not registered: 'WP_Hash'
I have Whirlpool plugin & native.

Код:
native WP_Hash(buffer[],len,const str[]);
&

Код:
 plugins Whirlpool
Reply
#4

Whirlpool plugin is not loaded. Make sure you added this to the server.cfg (plugins line)
Reply
#5

Hmm, I dont know but I am loading it properly. It's first in my plugins list

Код:
plugins Whirlpool sscanf
Reply
#6

Does the server log show that the plugin is loaded or failed to load?
Reply
#7

Yes, it's starting to show up, but still cannot load the server. There are no errors or warnings in the script.

EDIT: Okay now it runs the script but after someones logs in it crashes


errors

Код:
[19:53:26] [debug] Server crashed while executing Lvtdm.amx
[19:53:26] [debug] AMX backtrace:
[19:53:26] [debug] #0 native fwrite () [00405710] from samp-server.exe
[19:53:26] [debug] #1 00038b40 in ?? () from Lvtdm.amx
[19:53:26] [debug] #2 00034b3c in ?? () from Lvtdm.amx
[19:53:26] [debug] #3 000084e4 in public OnDialogResponse () from Lvtdm.amx
[19:53:26] [debug] System backtrace:
[19:53:26] [debug] #0 00492860 in ?? () from D:\SAMP mapovanje i skriptovanje\LV TDM\samp-server.exe
[19:53:26] [debug] #1 0040534e in ?? () from D:\SAMP mapovanje i skriptovanje\LV TDM\samp-server.exe
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOG_REG)
    {
        if(!response) return Kick(playerid);
        if(response)
        {
            if(!strlen(inputtext))
            {
                ShowPlayerDialog(playerid,DIALOG_REG,DIALOG_STYLE_INPUT,"Register","Welcome! This account is not registered.\nEnter your own password to create a new account.\nPlease enter the password!","Register","Quit");
                return 1;
            }
            new hashpass[129];
            WP_Hash(hashpass,sizeof(hashpass),inputtext);
            new INI:file = INI_Open(Path(playerid));
            INI_SetTag(file,"Player's Data");
            INI_WriteString(file,"Password",hashpass);
            INI_WriteInt(file,"AdminLevel",0);
            INI_WriteInt(file,"VIPLevel",0);
            INI_WriteInt(file,"Money",500);
            INI_WriteInt(file,"Scores",0);
            INI_WriteInt(file,"Kills",0);
            INI_WriteInt(file,"Deaths",0);
            INI_WriteInt(file,"Kicks",0);
            INI_WriteInt(file,"warns",0);
            INI_WriteInt(file,"Banned",0);
            INI_WriteInt(file,"Helper",0);
            INI_WriteInt(file,"Team",0);
            INI_WriteInt(file,"Leader",0);
            INI_WriteInt(file,"CamoPerk",0);
            INI_WriteInt(file,"GodPerk",0);
            INI_WriteInt(file,"Crimes",0);
            INI_Close(file);
            GivePlayerMoney(playerid, 1000);
            SendClientMessage(playerid,-1,"You have been successfully registered");
            new name[MAX_PLAYER_NAME+1], string[24+MAX_PLAYER_NAME+1];
            GetPlayerName(playerid, name, sizeof(name));
            new ip[16];
            GetPlayerIp(playerid, ip, sizeof(ip));
            GetPlayerName(playerid,name,sizeof(name));
            format(string, 150, "%s has registered with ip: %s.", name, ip);
            RegisterLog(string);


            format(string, sizeof(string), "%s has just registered!", name);
            SendClientMessageToAll(COLOR_YELLOW, string);
            return 1;
        }
    }
    if(dialogid == DIALOG_LOGIN)
    {
        if(!response) return Kick(playerid);
        if(response)
        {
            new hashpass[129];
            WP_Hash(hashpass,sizeof(hashpass),inputtext);
            if(!strcmp(hashpass,PlayerInfo[playerid][pPass]))
            {
                INI_ParseFile(Path(playerid),"loadaccount_user",.bExtra = true, .extra = playerid);
                SetPlayerScore(playerid,PlayerInfo[playerid][pScores]);
                GivePlayerMoney(playerid,PlayerInfo[playerid][pMoney]);
                SendClientMessage(playerid,-1,"Welcome back! You have successfully logged in");
                new ip[16],name[50],string[150];
                GetPlayerIp(playerid, ip, sizeof(ip));
                GetPlayerName(playerid,name,sizeof(name));
                format(string, 150, "%s has logged in with ip: %s.", name, ip);
                LoginLog(string);
                if(PlayerInfo[playerid][pWarns] >= 4 || PlayerInfo[playerid][pBanned] >= 1)
                {
                        SendClientMessage(playerid, COLOR_RED, "<!>You are banned from this server. Reason: 4 warns!");
                        Kick(playerid);
                        return 1;
                }
            }
            else
            {
                ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Welcome back. This account is registered. \nInsert your password to login to your account.\nIncorrect password!","Login","Quit");

                return 1;
            }
        }
    }
    if(dialogid == 0 && response == 1)
    {
        new pName[MAX_PLAYER_NAME],gName[MAX_PLAYER_NAME],string[128], stringz[128];
        new giveplayerid = GetPVarInt(playerid,"ClickedPlayer");
        GetPlayerName(playerid,pName,sizeof pName);
        GetPlayerName(giveplayerid,gName,sizeof gName);
        format(string,sizeof string,"PM From %s: %s",pName,inputtext);
        SendClientMessage(giveplayerid,0x00ff00ff,string);
        format(string,sizeof string,"PM Send to %s: %s",gName,inputtext);
        SendClientMessage(playerid,0x00ff00ff,string);
        format(stringz,sizeof(stringz),"[CLICKED PM]%s PMS %s: %s",pName,gName,inputtext);
        PMLog(stringz);
        return 1;
    }
    if(response)
    {
        switch(dialogid == D_RADIO)
        {
            case 1:
            {
                switch(listitem)
                {
                    case 0:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://uk1.internet-radio.com:15626/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Go Dj Global Radio");

                    }
                    case 1:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://uk1.internet-radio.com:15763/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to The Zone!");
                    }
                    case 2:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://screlay-dtc0l-1.shoutcast.com:8012/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Chronix!");
                    }
                    case 3:
                    {
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Redneck Junction");
                        PlayAudioStreamForPlayer(playerid, " http://uk3.internet-radio.com:10354/");
                    }
                    case 4:
                    {
                        //Pop
                        PlayAudioStreamForPlayer(playerid, "http://uk2.internet-radio.com:30726/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to 1 Pop Radio!");
                    }
                    case 5:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://uk3.internet-radio.com:10138/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Rollin Radio!");
                    }
                    case 6:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://www.partyvibe.com:8010/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Party Vibe!");
                    }
                    case 7:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://stream2.wft.es:1025/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Ibica Sonica!");
                    }
                    case 8:
                    { //Reggae
                        PlayAudioStreamForPlayer(playerid, "http://radio.bigupradio.com:8000/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Big Up Radio!");
                    }
                    case 9:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://radio2.virtualdj.com:7000/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Radio Channel 2");
                    }
                    case 10:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://uk3.internet-radio.com:10918/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Sun Vibes!");
                    }
                    case 11:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://uk1.internet-radio.com:4086/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Amazing Smooth and Jazz!");
                    }
                    case 12:
                    {
                        PlayAudioStreamForPlayer(playerid, "http://secondlife.fm:9998/");
                        SendClientMessage(playerid, COLOR_YELLOW, "<!>You are now listening to Bassline ");
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == D_SHOP)
        {
            case 1:
            {
                switch(listitem)
                {
                    case 0:
                    {
                        if(GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, COLOR_RED, "<!>Not enough money!");
                        SetPlayerHealth(playerid, 100);
                        GivePlayerMoney(playerid, -500);
                        SendClientMessage(playerid, COLOR_YELLOW, "You have healed yourself to 100hp!");
                        return 1;
                    }
                    case 1:
                    {
                        if(GetPlayerMoney(playerid) < 600) return SendClientMessage(playerid, COLOR_RED, "<!>Not enough money!");
                        SetPlayerArmour(playerid, 100);
                        GivePlayerMoney(playerid, -600);
                        SendClientMessage(playerid, COLOR_YELLOW, "You have putton on armour (100 armour)!");
                        return 1;
                    }
                    case 2:
                    {
                        new string[512];
                        strcat(string, "Deagle (500$)\n9mm (300$)\nSilenced(300$)");
                        strcat(string, "\nBaseball bat (50$)\nKnife(30$)\nKatana (300$)\nChainsaw(2500$)");
                        strcat(string, "\nMP5 (1500$)\nTec 9 (1500$)\n Uzi (1500$)");
                        strcat(string, "\nShotgun (700$)\nCombat Shotgun (2000$)\nSawnoff shotgun (1600$)\nCountry Rifle (1300$)");
                        strcat(string, "\nAK-47 (2000$)\nM4 (2000$)\nSniper (3000$)");
                        strcat(string, "\nBombs (10 ammo) (5000$)\nMolotovs (10 ammo) (5000$)");
                        ShowPlayerDialog(playerid, D_WEAPONS, DIALOG_STYLE_LIST,"Weapon shop",string,"Buy","Exit");
                        return 1;
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == D_WEAPONS)
        {
            case 1:
            {
                switch(listitem)
                {
                    //Handguns
                    case 0:
                    {
                        if(GetPlayerMoney(playerid) < 500) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 24, 200);
                        GivePlayerMoney(playerid, -500);
                        return 1;
                    }
                    case 1:
                    {
                        if(GetPlayerMoney(playerid) < 300) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 22, 200);
                        GivePlayerMoney(playerid, -300);
                        return 1;
                    }
                    case 2:
                    {
                        if(GetPlayerMoney(playerid) < 300) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 23, 200);
                        GivePlayerMoney(playerid, -300);
                        return 1;
                    }

                    //melee
                    case 3:
                    {
                        if(GetPlayerMoney(playerid) < 50) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 5, 1);
                        GivePlayerMoney(playerid, -50);
                        return 1;
                    }
                    case 4:
                    {
                        if(GetPlayerMoney(playerid) < 30) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 4, 1);
                        GivePlayerMoney(playerid, -30);
                        return 1;
                    }
                    case 5:
                    {
                        if(GetPlayerMoney(playerid) < 300) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 8, 1);
                        GivePlayerMoney(playerid, -300);
                        return 1;
                    }
                    case 6:
                    {
                        if(GetPlayerMoney(playerid) < 2500) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 9, 1);
                        GivePlayerMoney(playerid, -2500);
                        return 1;
                    }

                    //Smg's
                    case 7:
                    {
                        if(GetPlayerMoney(playerid) < 1500) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 29, 500);
                        GivePlayerMoney(playerid, -1500);
                        return 1;
                    }
                    case 8:
                    {
                        if(GetPlayerMoney(playerid) < 1500) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 32, 500);
                        GivePlayerMoney(playerid, -1500);
                        return 1;
                    }
                    case 9:
                    {
                        if(GetPlayerMoney(playerid) < 1500) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 28, 500);
                        GivePlayerMoney(playerid, -1500);
                        return 1;
                    }

                    //Shotguns
                    case 10:
                    {
                        if(GetPlayerMoney(playerid) < 700) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 25, 250);
                        GivePlayerMoney(playerid, -750);
                        return 1;
                    }
                    case 11:
                    {
                        if(GetPlayerMoney(playerid) < 2000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 27, 500);
                        GivePlayerMoney(playerid, -2000);
                        return 1;
                    }
                    case 12:
                    {
                        if(GetPlayerMoney(playerid) < 1600) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 26, 300);
                        GivePlayerMoney(playerid, -1600);
                        return 1;
                    }
                    case 13:
                    {
                        if(GetPlayerMoney(playerid) < 1300) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 33, 300);
                        GivePlayerMoney(playerid, -1300);
                        return 1;
                    }

                    //Assault rifles
                    case 14:
                    {
                        if(GetPlayerMoney(playerid) < 2000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 30, 500);
                        GivePlayerMoney(playerid, -2000);
                        return 1;
                    }
                    case 15:
                    {
                        if(GetPlayerMoney(playerid) < 2000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 31, 500);
                        GivePlayerMoney(playerid, -2000);
                        return 1;
                    }
                    case 16:
                    {
                        if(GetPlayerMoney(playerid) < 3000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 34, 500);
                        GivePlayerMoney(playerid, -3000);
                        return 1;
                    }

                    //Misc
                    case 17:
                    {
                        if(GetPlayerMoney(playerid) < 5000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 16, 10);
                        GivePlayerMoney(playerid, -5000);
                        return 1;
                    }
                    case 18:
                    {
                        if(GetPlayerMoney(playerid) < 5000) return NoMoney(playerid);
                        GivePlayerWeapon(playerid, 18, 10);
                        GivePlayerMoney(playerid, -5000);
                        return 1;
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == P_GOTOPLACE)
        {
            case 1:
            {
                switch(listitem)
                {
                    case 0:
                    {
                        SetPlayerPos(playerid, 2267.6841,2449.1069,3.5313);
                        return 1;
                    }
                    case 1:
                    {
                        SetPlayerPos(playerid, 2507.3748,1242.6487,10.8203);
                        return 1;
                    }
                    case 2:
                    {
                        SetPlayerPos(playerid, 2625.9739,2018.8618,10.8203);
                        return 1;
                    }
                    case 3:
                    {
                        SetPlayerPos(playerid, 1722.5881,1853.3677,10.8203);
                    }
                    case 4:
                    {
                        SetPlayerPos(playerid, 2236.1987,1813.5143,10.8203);
                    }
                    case 5:
                    {
                        SetPlayerPos(playerid, 2108.7322,2149.7043,10.8203);
                    }
                    case 6:
                    {
                        SetPlayerPos(playerid, 2488.1921,2396.8503,4.2109);
                    }
                    case 7:
                    {
                        SetPlayerPos(playerid, 2490.5713,1878.3788,10.5611);
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == D_GPS)
        {
            case 1:
            {
                switch(listitem)
                {
                    case 0:
                    {
                        SetPlayerCheckpoint(playerid, 1722.5881,1853.3677,10.8203, 5.0);
                        UsingGPS = 1;
                    }
                    case 1:
                    {
                        SetPlayerCheckpoint(playerid, 2236.1987,1813.5143,10.8203, 5.0);
                        UsingGPS = 1;
                    }
                    case 2:
                    {
                        SetPlayerCheckpoint(playerid, 2108.7322,2149.7043,10.8203, 5.0);
                        UsingGPS = 1;
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == D_MODS)
        {
            case 1:
            {
                new vehicle;
                vehicle = GetPlayerVehicleID(playerid);
                switch(listitem)
                {
                    case 0:
                    {
                        AddVehicleComponent(vehicle, 1025);
                    }
                    case 1:
                    {
                        AddVehicleComponent(vehicle, 1073);
                    }
                    case 2:
                    {
                        AddVehicleComponent(vehicle, 1074);
                    }
                    case 3:
                    {
                        AddVehicleComponent(vehicle, 1075);
                    }
                    case 4:
                    {
                        AddVehicleComponent(vehicle, 1076);
                    }
                    case 5:
                    {
                        AddVehicleComponent(vehicle, 1077);
                    }
                    case 6:
                    {
                        AddVehicleComponent(vehicle, 1078);
                    }
                    case 7:
                    {
                        AddVehicleComponent(vehicle, 1079);
                    }
                    case 8:
                    {
                        AddVehicleComponent(vehicle, 1080);
                    }
                    case 9:
                    {
                        AddVehicleComponent(vehicle, 1081);
                    }
                    case 10:
                    {
                        AddVehicleComponent(vehicle, 1082);
                    }
                    case 11:
                    {
                        AddVehicleComponent(vehicle, 1083);
                    }
                    case 12:
                    {
                        AddVehicleComponent(vehicle, 1084);
                    }
                    case 13:
                    {
                        AddVehicleComponent(vehicle, 1085);
                    }
                    case 14:
                    {
                        AddVehicleComponent(vehicle, 1096);
                    }
                    case 15:
                    {
                        AddVehicleComponent(vehicle, 1097);
                    }
                    case 16:
                    {
                        AddVehicleComponent(vehicle, 1098);
                    }
                }
            }
        }
    }
    if(response)
    {
        switch(dialogid == D_PERKS)
        {
            case 1:
            {
                switch(listitem)
                {
                    case 0:
                    {
                        if(PlayerInfo[playerid][pCamoPerk] == 0)
                        {
                            if(GetPlayerMoney(playerid) < 50000) return SendClientMessage(playerid, COLOR_RED, "<!>You dont have enough money!");
                            PlayerInfo[playerid][pCamoPerk] = 1;
                            GivePlayerMoney(playerid, -50000);
                            SendClientMessage(playerid, COLOR_RED, "<!>You have purchased camouflage perk!");
                            return 1;
                        }
                    }
                    case 1:
                    {
                        if(PlayerInfo[playerid][pGodPerk] == 0)
                        {
                            if(GetPlayerMoney(playerid) < 150000) return SendClientMessage(playerid, COLOR_RED, "<!>You dont have enough money to buy god perk!");
                            PlayerInfo[playerid][pGodPerk] = 1;
                            GivePlayerMoney(playerid, -150000);
                            SendClientMessage(playerid, COLOR_RED, "<!>You have purchased god perk!");
                            return 1;
                        }
                    }
                }
            }
        }
    }
    return 0;
}


No errors compiling.
Reply
#8

Hmm, that's hard to find it by a look. What I suggest you is to use this (http://forum.sa-mp.com/showpost.php?...32&postcount=7), let's hope it's going to give us a hint about the line and debug your code. Debugging is very helpful, just add prints after each line and see where it stops to be printed. Then you know that somewhere there it causes the crash.
Reply
#9

Yeah but in 3k codes it's going to take ma year to add print every line :/
Reply
#10

Not in the whole gamemode. In OnDialogResponse, DIALOG_REG and DIALOG_LOGIN only.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)