• Why won't PlayerInitialSpawn fire?
    15 replies, posted
I am trying to fire the command sb_start when a player joins a server but it just won't work. I am making my own gamemode (mostly just for fun) and I have tried both hooking it and the normal way. Here is what I have tried: [code]function onplyinit( ply ) // When spawning after joining the sever self.BaseClass:PlayerInitialSpawn(ply) CheckSpecialCharacters( ply ) //Is he defined in the specialchars.lua file? If yes, then he gets those values, and it stops here. if ply:IsAdmin() then //Is the connecting player admin? sb_team2( ply ) //If he is then set his team to team 2. else // If he isn't admin then, joining( ply ) //Call the function joining (found near the bottom of this file) RunConsoleCommand( "sb_start" ) //Run the console command defined in cl_init.lua. RunConsoleCommand( "testvgui" ) //Run the console command defined in cl_init.lua. end //Close the if return ""; end //close the function hook.Add("PlayerInitialSpawn", "yesnobox", onplyinit) [/code] and this: [code]function GM:PlayerInitialSpawn( ply ) // When spawning after joining the sever self.BaseClass:PlayerInitialSpawn(ply) CheckSpecialCharacters( ply ) //Is he defined in the specialchars.lua file? If yes, then he gets those values, and it stops here. if ply:IsAdmin() then //Is the connecting player admin? sb_team2( ply ) //If he is then set his team to team 2. else // If he isn't admin then, joining( ply ) //Call the function joining (found near the bottom of this file) RunConsoleCommand( "sb_start" ) //Run the console command defined in cl_init.lua. RunConsoleCommand( "testvgui" ) //Run the console command defined in cl_init.lua. end //Close the if return ""; end //close the function[/code] I have searched everywhere and I am out of ideas.
The function RunConsoleCommand() is a client only thing. Usually to run concommands on a player from the server you would use ply:ConCommand, but apparently that broke in the update, so you have to use: [code]ply:SendLua("RunConsoleCommand(\"sb_start\")")[/code] Like that.
Unfortunately that doesn't seem to be working. ply:ConCommand doesn't work either as you suspected. [editline]11:02AM[/editline] I was able to get it working, but in a different fashion: in cl_int.lua I put:[code]hook.Add("InitPostEntity", "GetLocalPlayer", function() CL = LocalPlayer() datastream.StreamToServer( "incomingPlayerData", CL); end)[/code] which sends the player data to the server once he is done loading. In init.lua I put this:[code]function acceptInitalSpawn ( ply, handler, id, encoded, decoded ) ply:PrintMessage( HUD_PRINTTALK, "Welcofdasfsdme back, " .. ply:Nick() .. "\nYou connected under the IP: " .. ply:IPAddress() ) ply:SendLua("RunConsoleCommand(\"sb_start\")") --print(ply,handler,id, encoded,decoded); return true; end datastream.Hook( "incomingPlayerData", acceptInitalSpawn ); [/code] which accepts the client and runs sb_start.
is it just not doing anything or are you getting some sort of error?
...... that is the most bastardized system i have ever seen... InitPostEntity on client, use that and run the console commands there also do not return anything in PlayerIntitalSpawn
@SeveredSkull it just isn't doing anything. @Bang Train I know it isn't the best system, but it works. This is just the beginning. I will need to run some server side things before the the client runs sb_start.
are you sure the function isnt running? add a print at the top of the function before any code is ran check the lua error log, may be a syntax error or something
okay i put the print in and I saw it. so i guess it is running. where is the lua error log?
garrysmod/garrysmod lua_errors_server.txt make sure you have lua_log_sv 1 on the server
I get this but I don't think it is related:[code]Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) -- Error SENDING CLIENTSIDE file ------------------------- - File Not Found: cl_init.lua ---------------------------------------------------------- Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) Couldn't include file 'entities/base_wire_entity/init.lua' (File not found) [/code]
nope so just add add a ton of prints and trace the code
I forgot to mention that if I type sb_start in the console it works just as it should. Which means cl_init.lua is being loaded because that console command is defined there. [editline]11:43AM[/editline] I just put used ConCommand and it worked.[code]function GM:PlayerInitialSpawn( ply ) -- When spawning after joining the sever self.BaseClass:PlayerInitialSpawn(ply) CheckSpecialCharacters( ply ) --Is he defined in the specialchars.lua file? If yes, then he gets those values, and it stops here. if ply:IsAdmin() then --Is the connecting player admin? sb_team2( ply ) --If he is then set his team to team 2. else -- If he isn't admin then, joining( ply ) --Call the function joining (found near the bottom of this file) ply:ConCommand("testvgui") ply:ConCommand("sb_start") end --Close the if end --close the function [/code]
Did you get that code from a tutorial on the Wiki?
yeah i did.
I followed that tutorial too, and I had the same problem.
well i got it to work like this (i removed non-essential things)[code]function GM:PlayerInitialSpawn( ply ) self.BaseClass:PlayerInitialSpawn(ply) timer.Simple(1, ply.ConCommand, ply, "team_menu") end [/code]
Sorry, you need to Log In to post a reply to this thread.