Raised This Month: $51 Target: $400
 12% 

[CS] Player Models API 1.2


Post New Thread Reply   
 
Thread Tools Display Modes
happy_2012
Senior Member
Join Date: Aug 2012
Old 07-16-2015 , 09:44   Re: [CS] Player Models API 1.2
Reply With Quote #31

It also used throw this error in player's console:
PHP Code:
Host_ErrorCL_ParseFileTxferFailed:  empty filename 
__________________
Discord contacts:
I rarely look at private messages here, but I am very active on Discord!
happy_2012 is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 07-16-2015 , 11:30   Re: [CS] Player Models API 1.2
Reply With Quote #32

This error is another silly engine bug related to reliable buffer (more infos here).
__________________
Arkshine is offline
happy_2012
Senior Member
Join Date: Aug 2012
Old 07-16-2015 , 20:29   Re: [CS] Player Models API 1.2
Reply With Quote #33

Quote:
Originally Posted by Arkshine View Post
This error is another silly engine bug related to reliable buffer (more infos here).
Yes, but this error forces the players to leave the server for being unable to download the empty file, and it crash their game ;)

The new update stop it, and I forgot to mention you will have to increase model change delay and round start delay to fully fix the problem
__________________
Discord contacts:
I rarely look at private messages here, but I am very active on Discord!
happy_2012 is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 07-17-2015 , 03:35   Re: [CS] Player Models API 1.2
Reply With Quote #34

I don't understand what are you trying to say. The CL_ParseFileTxferFailed error is unrelated to model update, at least not directly. Even without model updates you can still trigger this error, just a matter to fill the reliable buffer (MSG_ALL), you can't technically fix it unless you modify the engine.

I don't know what update you're talking about, but about the update done on cs_set_user_model, it's unlikely it's needed more delay considering it does the update per player at the next frame (32 players = 32 frames).
__________________
Arkshine is offline
Destro-
Veteran Member
Join Date: Jun 2010
Location: $me->location();
Old 07-19-2015 , 16:44   Re: [CS] Player Models API 1.2
Reply With Quote #35

Quote:
Originally Posted by Arkshine View Post
Actually, I fixed the natives related to setting a model, which is going to be merged soon : https://github.com/alliedmodders/amxmodx/pull/255
Essentially, the issue is an engine bug which doesn't check for overflow, so solution is to send each update to the next frame.
This is actually similar to the above API except it sets right away the model for maximizing backward compatibility but force postponing engine update to next frame.

If you want to see how it's done, it's basically this file and this one.

EDIT: Merged!
Good .

A doubt:
The reliable channel is not reset only when the client send confirmed packet ?. If the client ping and server FPS is high, is not a problem?.
__________________

Last edited by Destro-; 07-19-2015 at 16:50.
Destro- is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 07-19-2015 , 17:19   Re: [CS] Player Models API 1.2
Reply With Quote #36

The original issue with the native is a crash, triggered by the engine, because overflow is not allowed in this context. This is purely an engine issue server-side, a missing check when engine is about to update info on each players (sending svc_updateuserinfo, a big message up to 260 bytes per player, when the reliable buffer size is only 3000) to make sure that the buffer doesn't go over the limit.
__________________
Arkshine is offline
Destro-
Veteran Member
Join Date: Jun 2010
Location: $me->location();
Old 07-19-2015 , 18:57   Re: [CS] Player Models API 1.2
Reply With Quote #37

Tell me if I'm not right, but is not it ?

old native: (hlds crash)
SZ_GetSpace: overflow without FSB_ALLOWOVERFLOW set on Server Reliable Datagram

new native: (client kick)
SZ_GetSpace: overflow without FSB_ALLOWOVERFLOW set on netchan->message
(although some factors like high client ping and high server FPS are required)

@EDIT
works perfect in normal situations , kicked me when i was downloading a video (300ms) xd.

PHP Code:
#include <amxmodx>
#include <engine>

new sendbuff[128] = { '1', ... }
new 
sendcount 32

public plugin_init()
{
    
register_clcmd("say /test""test")
}

public 
test(id)
    
sendcount 0

public server_frame()
{
    if(
sendcount++ < 32)
    {
        
message_begin(MSG_ALLget_user_msgid("SayText"))
        
write_byte(1)
        
write_string(sendbuff)
        
message_end()
    }

__________________

Last edited by Destro-; 07-20-2015 at 13:40.
Destro- is offline
wicho
Veteran Member
Join Date: Feb 2012
Location: GuateAmala
Old 07-24-2015 , 23:25   Re: [CS] Player Models API 1.2
Reply With Quote #38

So this API can cause reliable channel overflowed?
wicho is offline
happy_2012
Senior Member
Join Date: Aug 2012
Old 07-27-2015 , 17:50   Re: [CS] Player Models API 1.2
Reply With Quote #39

I only run this API on my Zombie Plague server, I use the version I posted, and I also edited the delay times for round start, and change model. It stopped throwing any SVC_Bad kicks, bad file downloads, however it started to kick clients for stack flow error, but I solved this problem by adding high ping kicker.
__________________
Discord contacts:
I rarely look at private messages here, but I am very active on Discord!
happy_2012 is offline
wicho
Veteran Member
Join Date: Feb 2012
Location: GuateAmala
Old 07-28-2015 , 10:33   Re: [CS] Player Models API 1.2
Reply With Quote #40

How much delay u put in round start?
wicho is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 05:59.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode