[AMXX] FPS limiit serverile

Vaata eelmist teemat Vaata järgmist teemat Go down

avatar
DefertLeek05

Postitusi : 128
Maine : 12
Liitus : 15/02/2015
Vaata kasutaja profiili

PostitamineDefertLeek05 on 15.12.16 19:30

Sissejuhatus

Oled tüdinenud nendest FPS boostijatest? Siis see plugin on just teile!

Mida annab x>100 FPS?

* Kõrge FPSiga ground strafe'imisega tohutu kiiruse saamine (ka sv_airaccelerate 10 aitab selle vastu);
* Mida suurem FPS seda sujuvam on mäng;
* Surfida on üli lihtne.

Script

Kood:
#include <amxmodx>
#include <cstrike>

public plugin_init( ) {
   register_plugin( "FPS limiter" , "-" , "DefertLeek05" );
}

public client_putinserver(id) {
   Fps(id);
}

public Fps(id) {
   client_cmd(id, "developer 0; fps_max 99.5; fps_override 0");
   set_task(0.5, "Fps", id);
}

PS! Kui tahad FPS'i limiiti muuta, siis muuda fps_max 99.5 arv ära selleks, milleks tahad ja kui tahad FPS'i üle 100, siis pane fps_override 1 peale kauba.
avatar
Luixy
Juunior
Postitusi : 34
Maine : 3
Liitus : 23/09/2014
Vaata kasutaja profiili

PostitamineLuixy on 17.12.16 20:11

@DefertLeek05 kirjutas:

Sissejuhatus



Oled tüdinenud nendest FPS boostijatest? Siis see plugin on just teile!

Mida annab x>100 FPS?



* Kõrge FPSiga ground strafe'imisega tohutu kiiruse saamine (ka sv_airaccelerate 10 aitab selle vastu);
* Mida suurem FPS seda sujuvam on mäng;
* Surfida on üli lihtne.

Script



Kood:
#include <amxmodx>
#include <cstrike>

public plugin_init( ) {
 register_plugin( "FPS limiter" , "-" , "DefertLeek05" );
}

public client_putinserver(id) {
 Fps(id);
}

public Fps(id) {
 client_cmd(id, "developer 0; fps_max 99.5; fps_override 0");
 set_task(0.5, "Fps", id);
}

PS! Kui tahad FPS'i limiiti muuta, siis muuda fps_max 99.5 arv ära selleks, milleks tahad ja kui tahad FPS'i üle 100, siis pane fps_override 1 peale kauba.

Mõte iseenesest hea, aga serveri poolt sunnitavad käsklused on võimalik mängijatel ära blokeerida.
Selleks, et teha kindlaks, et mängijate FPS tõesti ka on nüüd limiidiga võrdne, tasuks lisada ka vastav kontroll.
Lisaks jääb praegusel kujul selles pluginas sisalduv task end lõputult kordama, isegi peale mängija serverist lahkumist, mille peale hakkab ka serveri konsooli tohutult veateateid kogunema.


Minu versioon:
Kood:

#include <amxmodx>
#include <hamsandwich>

#define FPS_MAX 99.5

new illegal[33];

public plugin_init()
{
 register_plugin("FPS Limiit", "1.0", "Kushfield");
 RegisterHam(Ham_Spawn, "player", "plrSpawned", 1);
}

public plrSpawned(id) if(!is_user_bot(id)) set_task(0.5, "checkfpstask", id+256, _, _, "b");

public client_putinserver(id) illegal[id] = 0;

public checkfpstask(taskid)
{
 new id = taskid - 256;
 if(is_user_alive(id))
 {
 query_client_cvar(id, "fps_max", "checkfps")
 query_client_cvar(id, "fps_modem", "checkfps")
 }
 else remove_task(taskid);
}

public checkfps(id, const cvar[], const value[])
{
 new Float:iValue = str_to_float(value);
 if(iValue > FPS_MAX)
 {
 illegal[id]++;
 if(illegal[id] > 1)
 {
 new name[32];
 get_user_name(id, name, 31);
 client_print_color(id, print_team_red, "^3%s got kicked for using FPS over %.1f!", name, FPS_MAX);
 server_cmd("kick #%d FPS over %.1f!", get_user_userid(id), FPS_MAX);
 }
 else
 {
 client_print_color(id, print_team_red, "^3Using FPS over %.1f is not allowed on this server!", FPS_MAX);
 client_cmd(id, "fps_max %.1f", FPS_MAX);
 client_cmd(id, "fps_modem 0");
 }
 }
}

Limiidi muutmiseks vaja muuta vaid real "#define FPS_MAX 99.5" olevat arvu.


PS! Väita, et FPSi limiteerimine 100 peale on kasulik selle pärast, et rohkemaga "Surfida on üli lihtne.", on veidi vigane, kui ametlike surfi reeglitega on FPS 131.


Viimati muutis seda Luixy (22.02.17 19:34). Kokku muudetud 1 kord


FY E1

Postitusi : 756
Maine : 38
Liitus : 29/10/2012
Vaata kasutaja profiili

PostitamineFY E1 on 17.12.16 21:32

99.5 on 6ige!
avatar
Luixy
Juunior
Postitusi : 34
Maine : 3
Liitus : 23/09/2014
Vaata kasutaja profiili

PostitamineLuixy on 18.12.16 20:06

@FY E1 kirjutas:99.5 on 6ige!
Millest jutt käib?
Kas sa üldse lugesid mu postituse läbi?


avatar
Luixy
Juunior
Postitusi : 34
Maine : 3
Liitus : 23/09/2014
Vaata kasutaja profiili

PostitamineLuixy on 22.02.17 19:36

Sain ühelt minu versiooni kasutajalt isikliku teate, et liiga suur FPSi eest kicki saades annab reasoniks väga vale maksimaalse FPSi arvu. Tõepoolest - kiiruga tehtult tuli väike viga sisse, nimelt oleks pidanud %i asemel FPS limiidi formattimiseks kasutama %.1f, kuna FPS_MAX'ina definetud arv on siiski float. Parandasin ka oma algses postituses selle vea ära.


Lisaks mainin ära, et kui kasutate vanemat AmxModX versiooni, kui 1.8.3, siis seal puudub client_print_color native. Sel juhul tuleb muuta see tavaliseks client_print'iks.

Täpsemalt asendage järgnev:
client_print_color(id, print_team_red, "^3

sellega:
client_print(id, print_chat, "


Vaata eelmist teemat Vaata järgmist teemat Tagasi üles

Postitada saavad ainult liitunud kasutajad

Vastamiseks tee endale kasutaja või logi sisse.

Liitu foorumiga

Tee endale kasutaja ning osale aruteludes.


Tee uus kasutaja

Logi sisse

Omad foorumis juba kasutajat? Logi sisse.


Logi sisse

 
Permissions in this forum:
Sa ei saa vastata siinsetele teemadele