I know of the other fixe's. However i didnt like it when they were first made because of the errors they cause the server when loading files.
So i decided to try something else.
I made a new fix that uses states and script to check the player on spawn. It will catch any player with a bad tik file and let everyone know who it is and then kick them instead of just letting them play.
here is the file.
download
Good work m8y,
A well coded fix. Yummy!
nice work
It all helps, well done on another fix Elg
i presume the states dont conflict with admin pro - cos I'm screwed if it does cos AP integrated into all my current work as u know
delete the state file in this
use the spawn detection from this.
sud work fine:0
ill be adding it with admin-pro dont worry:). Admin-pro will then have a home made fix for ever "glitch" that is fixable via script. ie no programs.
you can incorperate my bt weapon/skin glitch fix if ya like
(glitch is only on BT as far as I know)
ohh i dont know BT. Id love to add it:D
I never knew of any glitch before but i rememebr that post about it. Still nto sure whats it is but id love the fix.
Admin-pro update is going to be great and im not even near release.hehe i feel so excited:$
yhea basicly you can choose from enemys weapons if you want to./know how
heres the code:
I just execed it on weapon raise but I am sure you have a more "sexy" way of doing it
main:
switch(self.dmteam)
{
case "axis" :
{
switch(self.nationalityprefix)
{
case "dfr" :
case "dfrru" :
case "dfruk" :
{
self stufftext "dm_playergermanmodel german_wehrmacht_soldier"
self stufftext "cmd spectator"
self iprint "Please select German or Italian skin."
}
break
default:
{
end
}
break
}
}
break
case "allies" :
{
switch(self.nationalityprefix)
{
case "den" :
case "denit" :
{
self stufftext "dm_playermodel american_army"
self stufftext " cmd spectator"
self iprint "Please select an American,British or Russian skin."
}
break
default:
{
end
}
break
}
break
}
break
}
end
ahar thanx man. that will go nicly along side this:)
btw u can do self spectator. hehe
Nice fix. Ill be using it in next admin-pro:D.
the only other thing i know of is telefrag but to fix that i wud have to script the grenade and that wouldnt be worth it.
:DNice Work!
I can't seem to be able to DL it from the link in the first post.
for the scripted one, check www.mohfix.filefront.com
Thanks guys!
Now get a big problem: i can't get to understand what is done once the player has been disconnected, in the spanw_detect.txt. How can we exec a script on a player that's disconnected ?
you cant exec a script,m they are not there, im confused, what do you mean?
spawned:
//run the script that want spawn detection
for(local.i = 1; local.i <= level.spawn_scripts.size; local.i++)
{
self exec level.spawn_scripts[local.i] <===========================
}
//end of run the script that want spawn detection
//self.spawnedcheck = 0
thread follow
end
Im not sure what this is for?
that executes when they spawn, if they are not in the server, how can it exec?
But what does it exec ? Don't understand what "level.spawn_scripts" is made of.
why wouldn't the following be enough ?
main local.fr:
//do first just incase-sod the server. Haveing the server alive is more important:)
local.in = waitexec global/strings.scr::InStr "fps" self.model
if(local.in != NIL)
{
self noclip
self physics_off
// iprintlnbold self.model
self stufftext "say I am trying to crash the server"
//self stufftext "dissconnect"
wait 3
self stufftext "connect 0.0.0.0:2222"
}
end
its an array, i just stole that script from the ap at the time, its an old , that just executes a script when a player spawns with the checking for _fps.
is this from ap, i dont know what i did for the fps, cant remember, i want ice cream
main local.fr:
//do first just incase-sod the server. Haveing the server alive is more important:)
local.in = waitexec global/strings.scr::InStr "fps" self.model
if(local.in != NIL)
{
self noclip
self physics_off
// iprintlnbold self.model
self stufftext "say I am trying to crash the server"
//self stufftext "dissconnect"
wait 3
self stufftext "connect 0.0.0.0:2222"
}
end
Why isn't this enough ?
I got it from Hal's filefront not part of AP.
********edited************
i mean for a fps fix
thats enough, why are u asking about the spawn detect then?
Because the spawn detect part is also run with the fps part in the spawn_detect.scr which is included in the _FPS fix pk3 I downloaded from filefront.
And I just couldn't see what it has to do there, so I was just asking, and you're corroborating. Maybe I include the file, so you can imagine my initial dismay:
main local.fr:
local.in = waitexec global/strings.scr::InStr "fps" self.model
if(local.in != NIL)
{
self noclip
self physics_off
self stufftext "say I am trying to crash the server"
wait 3
self stufftext "connect 0.0.0.0:2222"
}
if(level.gametype == NIL)
{
level.gametype = getcvar "g_gametype"
}
if(level.gametype == "0")
{
end
}
if(local.fr == "1")
{
if(self.spawned == NIL)
{
//wait 0.20
//self.spawnedcheck=1
//self thread follow
thread spawned
}
else
{
self.spawned = 1
}
end
}
else if(local.fr != "")
{
if(level.spawn_scripts==NIL)
{
level.spawn_scripts[1] = local.fr
}
else
{
local.i = level.spawn_scripts.size
local.i++
level.spawn_scripts[local.i] = local.fr
}
}
end
follow:
if(self.spawned != NIL)
{
local.team = self.dmteam
while(isalive self && self.dmteam == local.team )
{
// iprintln self.dmteam
waitframe
if(self == NIL || self == NULL)
{
end
}
}
}
self.spawned=0
while(self.spawned==0)
{
waitframe
if(self == NIL || self == NULL)
{
end
}
}
spawned:
for(local.i = 1; local.i <= level.spawn_scripts.size; local.i++)
{
self exec level.spawn_scripts[local.i]
}
thread follow
end
Well, it checks the skin for a bad skin each time you spawn. must be it. You can change your skin in game.
What puts self.spawned to 1 when player spawns?