Brèves

WebTV

Actualité de la scène

Compétitions



J3di, créateur de zBlock, sous les projecteurs

10629 46

Il y a près d'un an, nous publions déjà une interview du développeur d'un des plugins les plus célèbres pour CS:S, J3di, le codeur actuel du zBlock. A l'occasion du passage sur l'Orange Box, J3di a accordé une nouvelle interview à nos confrères de Cadred, que nous vous proposons ici, traduite par Damo.

Cette interview a été publiée sur Cadred il y a plus de 15 jours et avant la sortie du zBlock 4.5RC, faites donc attention à certaines de ces annonces.
 

Cadred : Pour ceux qui peut-être ne connaissent pas l'histoire du zblock et ses origines, peux-tu nous résumer son existence et nous expliquer ce qui selon toi justifiait à l'époque sa création ?

J3di : A vrai dire je n'étais pas le premier codeur à travailler sur le zBlock. Il faut remercier Trepje qui a écrit le code des deux premières éditions du plugin.

Ce dernier était nécessaire à cause de la quantité de failles dans le jeu permises par les réglages consoles (ndt. Cvars) qui permettaient aisément certains comportements proches de la triche. Ceux-ci était évidemment condamnables pour les personnes désirant un jeu juste dans un environnement compétitif, CAL a donc écrit un plugin serveur pour éviter ces CSP (je vous laisse deviner à quoi cela correspond).

Malheureusement il était possible de contourner ce plugin en utilisant "certaines commandes" dans le jeu, et c'est la raison pour laquelle zBlock a été écrit - pour le rendre plus sécurisé et éviter l'apparition de nouveaux abus.

J'ai été présenté à TheUnknownFactor (le fondateur du ZBlock) alors que j'étais Admin chez EnemyDown. J'écrivais un plugin-serveur pour eux qui était un peu avant l'heure un "Warmod", un "Mani-Admin" et un ZBlock réunis, utilisé pour les matchs d'EnemyDown. Il a apprécié le travail et m'a contacté pour écrire le zBlock.

Il y a peu, lorsque la mise à jour a été annoncée, quelles ont été tes premières pensées ? Voyais-tu cela d'un bon oeil ou étais-tu inquiet quant à ce que cela impliquait pour l'avenir de la scène compétitive ?


On a attendu une mise à jour pendant un bon moment, j'ai toujours été optimiste. Logiquement ils n'auraient jamais entrepris de gros changements puisque cela n'était qu'une mise à jour et les fixs sont toujours une bonne chose - à moins bien sûr de ne pas les comprendre. Je pense que tout est dit.

Egalement, juste pour confirmer puisque je sais que c'est une question qui a souvent été posée, tu as été en contact avec Hidden Path Entertainment (HPE) depuis la MAJ et les choses se déroulent bien, exact ?


Oui c'est vrai. Nous avons échangé plusieurs mails.


 
 
Bien que tu ne puisses pas parler au nom de HPE, quelles sont tes impressions quant à leur approche vis-à-vis de la communauté compétitive ? Penses-tu qu'ils seront réceptifs ?

Il me semble qu'ils sont enthousiastes à propos du jeu ! J'ai le sentiment qu'ils veulent l'améliorer pour tout le monde et qu'ils sont prêts à écouter quiconque prendra le temps de formuler convenablement des remarques.

Certains joueurs ont exprimé leur déception que certaines caractéristiques telles que les achievements ou les statistiques aient fait leur apparition sur CS:S. A vrai dire on peut trouver cela dans plein d'autres FPS modernes et ils ajoutent une nouvelle dimension pour les joueurs plus occasionnels. Et devinez quoi ? En plus ils peuvent être désactivés !

HPE ont assurément été réceptifs aux problèmes que j'ai soulevés. Cela se sent à travers nos conversations mais aussi par certaines améliorations que j'ai suggérées et qui se sont retrouvées dans la MAJ - et je sais qu'il en reste encore à venir :) - Si vous ne possédez pas encore leur jeu "Defense Grid : The Awakening" allez l'acheter dans la boutique Steam, c'est pas cher et très fun !

Alors, en tant que maître à penser pour tout ce qui concerne CS:S peux-tu expliquer intelligiblement pourquoi un tick 66 offrira une meilleure expérience qu'un tick 100 et pourquoi, et si c'est ce que tu penses, est-ce une amélioration pour la scène compétitive ?

Augmenter le tick-rate cause des problèmes de timing sur certaines parties bien précises du moteur graphique. Ca ne vient pas de sortir, on le sait depuis un moment - zb_doorfix vous dit quelque chose ? - ils ont donc décidé de rester sur un tick 66.

Le tick 66 est la façon optimale de jouer, désormais plus de problème de timing. Les différences entre cela et le "vieux tick 100" sont mineures et en comparaison il y a un bon nombre de jeux qui tournent sur des valeurs plus faibles.

Un autre avantage du tick 66 est l'uniformité que cela apporte au jeu. Chaque serveur utilisant un tick 66, l'expérience de jeu ne devrait pas trop changer d'un serveur à l'autre. Presque tout le monde peut atteindre 66 FPS et avoir ses rates à 66/66, alors qu'auparavant beaucoup étaient réglés à 100/100 sans pouvoir atteindre 100 FPS, de ce point de vue les choses sont tout de suite meilleures. Il faut par contre du temps pour que les joueurs s'y habituent.

Un environnement optimisé en tick 100 serait peut être la configuration optimale en lan mais cela reste pour l'instant le meilleur compromis.

Ta position quant au netcode de CS:S - qu'il était parfait - a toujours été fortement impopulaire auprès de certaines personnes au sein de la communauté compétitive. Dans un premier temps, peux-tu clarifier cette affirmation et dans un second temps, quels réglages apportent cette MAJ ? Une chose sur laquelle tout le monde semble s'entendre est que l'enregistrement des tirs (ndt. "touchabilité" en français) est meilleure.

Le code multijoueur de Source est indéniablement le plus juste et le plus précis que l'on puisse trouver parmi tous les FPS actuels. La plupart des critiques qui lui sont adressées sont en fait parce qu'il est trop bon - et je pèse mes mots.

Si votre visée est correcte alors vous atteindrez votre cible de la manière exacte dont vous avez vu le tir (en supposant que vous le fassiez avant qu'un autre joueur ne réponde). Malheureusement cela est vrai pour les joueurs avec une connexion Internet excellente, alors qu'un joueur avec un ping élevé pourra par exemple être touché après s'être mis à couvert. Cela est juste puisqu'il a en réalité été touché avant de se mettre à couvert, l'information a simplement mis du temps à lui parvenir.

Le code multijoueur de Source est discuté dans des articles écrits par Valve, je conseille à tous ceux qui décident de se plaindre d'aller y jeter un oeil.

Code Multijoueur de Source :

Latency Compensating Methods In Client

Source Multiplayer Networking

Attention au risque de modifications par des personnes étrangères à Valve.

Le code-source est également consultable dans le SDK (ndt. Software Developement Kit), publique. Bien évidemment j'ai fait mes propres tests et relecture pour m'assurer que le jeu se comportait comme prévu et j'ai été heureux de voir que c'était le cas. Le netcode n'a pas changé depuis la MAJ mais par d'autres aspects importants il y a eu une grande quantité d'autres réglages et changements ici et là. Cela devrait heureusement se traduire par un meilleur timing et un jeu un peu plus vif. Le SDK est à la disposition de ceux qui veulent en savoir plus.
 
  
  
Illustration par RegnaM, en bootcamp, de l'avantage à celui qui décale le premier

Un autre point qui faisait énormément débat était l'avantage à celui qui décalait (ndt. "peekers advantage"), qui a désormais quasiment disparu du jeu. Pourquoi est-ce le cas et peux-tu nous expliquer de quelle manière le moteur graphique a amélioré ce défaut majeur du jeu ?

Il y a toujours un avantage pour celui qui bouge le premier dans un monde virtuel à prédiction. Nous ne pouvons pas changer les lois de la physique. Le jeu calcule vos mouvements un certain nombre de fois et les transmet au serveur et si le client est en train d'anticiper vous pouvez bouger durant ce laps de temps. Par exemple, vous pouvez voir un joueur à la sortie d'un angle avant que lui ne puisse vous voir. Ceci dit ce n'est en aucun cas un gros avantage étant donné la technologie à haut débit actuelle.

On pourrait se débarrasser de ce problème mais cela affecterait la jouabilité et la précision du multijoueur.

On parle souvent d'un retard d'interpolation de 100ms à propos de l'avantage pour celui qui décale, mais ce n'est pas le cas. Le retard par interpolation est et a toujours été 'cl_interp', aujourd'hui 15.2ms (en comparaison on met approximativement 300-400ms pour cligner des yeux).

L'interpolation a-t-elle été supprimée avec la mise à jour ?

Non. On fait souvent la confusion. La commande "cl_interpolate" n'existe que pour les développeurs (0 est buguée), elle est toujours activée et c'est une bonne chose, encore une fois la majorité des FPS utilise des techniques similaires.

Beaucoup se sont plaints quant à la stabilité des FPS depuis la MAJ - y a-t-il quelque chose que Zblock puisse faire pour arranger cela, ou un conseil que tu puisses donner pour résoudre le problème ?

Tout d'abord il faut faire une installation propre, il faut la considérer comme un nouveau jeu à part entière. Supprimez les vieux dossiers, Steam les remplacera par les nouveaux.

Mettez vos vieux fichiers cfg à la corbeille.

Tentez différents réglages avec mat_queue_mode et voyez celui qui vous garantit le plus grand nombre de FPS.

De manière temporaire vous pouvez essayer d'exclure votre antivirus des dossiers du jeu, le système de statistiques effectue beaucoup d'opérations sur le disque dur, cela peut aider.

La prochaine version de Zblock possèdera-t-elle les mêmes réglages qu'avant - tel que le crouch-bugging - ou y aura-t-il une période où ils seront de nouveau présent avant que tu ne trouves à nouveau un moyen d'arranger cela ?

Certains doivent être réglés différemment, beaucoup peuvent désormais être enlevés. Ce n'est pas vraiment gênant et je peux arranger tout ça maintenant que la MAJ est sortie.
 
 
 
Et le bunnyhop ? La nouvelle école fait bloc pour dire que l'on ne peut pas faire de bunnyhop sur un tick 66, donc le problème ne devrait plus se poser, mais y aura-t-il toujours un réglage pour éviter cela, afin d'éviter le moindre doute ?

J'arrive à faire du bunnyhop parfaitement sur mon serveur test tick 66. Le patch restera.

Certaines personnes continuent à profiter du bug de crash serveur - le réglage contre cela sera-t-il implémenté dans chacune des futures versions du Zblock ?

Les réglages qu'il y avait dans le plugin temporaire CrashBlock seront implémentés dans le futur Zblock jusqu'à ce que ces problèmes soient résolus. S'il existe toujours quelques failles de crash qui marchent ici et là s'il vous plaît faites nous en part, nous travaillons à leur éradication et nous pourrons les faire remonter aux personnes compétentes.

Tu as mis en appétit la communauté en faisant allusion à quelques améliorations que tu pourrais faire, telle que faire en sorte qu'un wallhack ne puisse pas marcher sur un serveur. Comment avancent ces améliorations ?

Oui vous avez sûrement déjà été confrontés à quelques plugins qui "tentaient" de reproduire ces techniques, comme par hasard peu de temps après que j'ai eu annoncé qu'elles étaient en test. Ceux-ci peuvent entrainer de sérieux problèmes alors faites attention à la manière dont vous les utilisez.

J'aimerai continuer à rester secret quant aux fonctionnalités à venir.

Quelles autres améliorations seront faites dans la prochaine version du Zblock au cours de l'avancée du projet ? Qu'y a-t-il à venir ?

J'ai déjà intégré un plugin que j'ai écrit dans la prochaine version du Zblock - il s'appelait auparavant "Deadvoice" - et permet aux coéquipiers morts de parler à ceux qui sont encore vivants. J'espère que les gens ne rechigneront pas à utiliser cette fonction pour remplacer des programmes vocaux tiers. De cette manière les gens pourraient entendre les conversations sur les SourceTV et les demos.

On travaille toujours sur une sortie pour le week-end prochain ou peu après, suivant les tests (ndt. Interview publiée le 29 juin).

VALVE a souvent affirmé que modifier les variables réseau par défaut pouvaient avoir des effets non-désirés, est-ce vrai ?

Absolument. Les réglages par défaut du jeu sont destinés à être jouables par la majorité des connexions mais on fait parfois quelques changements pour améliorer l'expérience compétitive. Beaucoup de joueurs vont juste copier la config de joueurs talentueux, c'est juste une blague quand on sait à quel point certaines de ces configs sont en fait ridicules.

Pour être paré pour la compétition sur CS:S je recommande de jouer avec au moins 100 fps, ne les bridez pas !

Utilisez ensuite les variables suivantes (laisser toutes les autres variables du net par défaut) :

rate 30000 // Plus que suffisant
cl_cmdrate 66   
cl_updaterate 66   
cl_interp_ratio 1
cl_interp 0
cl_smooth 0

Jouez en ethernet, fermez toutes les autres applications réseaux, choisissez un serveur à latence faible et soyez conscient du moindre serveur qui entraîne une perte de paquets (ndt. "packet loss", soit la perte d'information entre le serveur et le client)

Visez/réagissez vite et amusez vous !

Quelque chose à rajouter pour cette rare interview ?

Juste un message pour la communauté et les cheaters. Les cheaters ruinent le jeu pour ceux qui ne trichent pas, et ce n'est un secret pour personne que CS:S est remplit de tricheurs.

C'est le devoir de chacun de débusquer les tricheurs sur la scène compétitive, ne vous moquez pas si quelqu'un dénonce quelqu'un d'autre.

On ne devient pas professionnel à ce jeu ou à un autre du jour au lendemain. C'est juste impossible ! Les meilleurs y consacrent de grandes parties de leurs vies et parfois ils ne s'amusent même pas autant qu'un joueur qu'ils traiteraient de noob.

Le jeu est fait pour s'amuser et si vous souhaitez gagner en niveau alors entraînez vous avec d'autres personnes dans le même état d'esprit, mais ne téléchargez pas de cheat. Si vous jouez avec "de l'aide" vous ne serez jamais un vrai gagnant et vous vous mentirez à vous-même. S'il vous plaît arrêtez de tricher et appréciez le jeu comme il se doit.

Merci à CodeRed, Orion et aux membres de zBlock passés TheUnknownFactor and Trepje.

Merci pour l'interview et j'espère avoir répondu à un grand nombre de questions.

  

Traduit de Cadred.org par Damo

Bannière par dekey
Quand on voit les screens de regnam c'est quand même hallucinant le décalage
édifiant et intéressant, voilà un acteur qui se bouge le cul pour faire avancer le jeu ^^
Super taffe. On ne peut que le remercier.
First, superbe interview ;)
J'adore la photo du bunnyhopping ^^
Hum, cl_interp 0 ????

Sinon nice interview, je n'aurais plus de besoin d'expliquer chaque config du jeu, j'aurais juste à link cet interview ;D
Tu m'as ouvert les yeux J3di, c'est décidé j'arrête le cheat.
sympa l'itw, et plein de chose interressant dedans ^^ j'espere que tous les boulets en ffa arreteront leurs conneries avec la MAJ
"L'interpolation a-t-elle été supprimée avec la mise à jour ?

Non. On fait souvent la confusion."


J'avais cru comprendre que c'était le but de la MaJ ...

#5 first. pas mal :)


sympa. dommage qu'on ai pas eu l'interview juste après la sortie de la dernière version , mais c'est toujours enrichissant.
J'avoue que les screens font un peu "peur", maintenant qu'on sait qu'on se fait pas tué derrière les caisses ou quand on est accroupi on saura d'où ça vient !
#7 cl_interp 0 c'est pour que ton lerp soit au plus bas selon comment tu es réglé.

Commentaire modifie le 22/07/2010 19:32:30 par Lekk
"Tien on va faire une MaJ d' 1.8GO pour supprimer l'interpolate !"
Non Azee, t'as mal compris.
J3DI une sorte de sauveur sur la MAJ pour le zBlock =P
#1 c'est clair je savais pas qu'il y avais un tel décalage

"S'il vous plaît arrêtez de tricher et appréciez le jeu comme il se doit."
#11 Il y avait un gros travail de traduction à faire, donc difficile d'être aussi réactif. Un grand merci à Damo d'ailleurs =)
#13 C'est une camera cachée?
#12 Merci je sais, mais a part être en fibre optique, cl_interp à 0 n'est pas la valeur optimisé comme précisé :D
"En plus ils peuvent être désactivés !"


Oui , mais comment faire?
super interview très intéressant à lire :)
#17 oui je me doute bien.
Les screens datent d'avant ou d'après la MAJ ?
#22

sv_nomvp 1 // Retire les histoires de MVP
sv_nonemesis 1 // Retire les histoires de domination
sv_nostats 1 // Ne prend pas en compte les stats
sv_disablefreezecam 1 // Retire le zoom à la TF2

#25 après la MAJ, mais je te conseille de lire ceci entièrement: http://www.cadred.org/Forums/Thread/111385/

Commentaire modifie le 22/07/2010 21:02:36 par Lil Ben
#26 Jcomprend meme pas pourquoi tu lui réponds.
#27 parce que c'ets pas un gros con qui n'a pas rien a faire des gens -__-
ITW intéressante mais quelques contradictions par rapoort à RegnaM, qui croire ? :s
C'est pas des contradictions en fait, c'est juste qu'ils abordent pas le problème de ce qu'on appelle le "bug de l'interpolate" sous le même angle. L'un a un point de vue joueur compétitif (faut le moins de décalage possible), l'autre de développeur (faut permettre a ceux qui ont pas des connexions/PC de fou de jouer a peu près correctement).
Bj, rien à dire ;D
Une itw interessante et bien complète
#30 Ok, je dis ça parceque dans l'autoexec de RegnaM, on touche à pleins de CVAR du netcode, et dans cette interview, J3di précise qu'ils ne faut pas changer les CVAR du netcode autres que:

rate 30000 // Plus que suffisant
cl_cmdrate 66
cl_updaterate 66
cl_interp_ratio 1
cl_interp 0
cl_smooth 0

Voilà, et c'est aussi pour ça que j'aimerais qu'une fois le nouveau CSS bien mis en place, les développeurs, techniciens du jeu et joueurs compétitifs se mettent d'accord sur une CFG optimale pour la compétition
#33 : Le problème c'est que la CFG optimale dépend un peu trop de ton PC, de ta connexion et de la qualité du serveur sur lequel tu joues.
ca me rappelle le cvarblock tout ça :) avant que le zblock sorte il me semble... j'avais jamais trop compris la diff qu'il y avait entre les deux mais bon... le zblock était plus performant je crois
gg le screen ^^ et l'itw =) tres instructif !!
jerry sur les 66fps
Très bonne itw ! bravo à lui.
#11

J'ai spontanément proposé de traduire cet article pas très longtemps avant sa sortie, et malheureusement entre le temps d'avoir l'accord du rédac de Cadred et un manque de temps libre de mon côté je n'ai pu le terminer que le week end dernier (autrement en deux jours/5 heures de travail la traduction était faite).

Il me semble cependant que même hors contexte d'une mise a jour cet article répond à pas mal de question que les Français peuvent souvent se poser. Il est important que chacun comprenne bien son jeu et reconnaisse le travail de ceux qui donne de leur temps libre pour l'améliorer. Nous devons tous beaucoup à Jedi :)
Je trouve ça bizarre ses "recommandations", il dit :

"Pour être paré pour la compétition sur CS:S je recommande de jouer avec au moins 100 fps, ne les bridez pas !"

Pourquoi ne pas brider les fps à 100 ? Quel intérêt de laisser notre PC calculer des images pour rien vu que à 100 fps le jeu est déjà hyper fluide ?

Puis juste après :

"Utilisez ensuite les variables suivantes (laisser toutes les autres variables du net par défaut) :

rate 30000 // Plus que suffisant"

J'suis désolé mais chez moi, rate 30000, dès qu'il commence à y avoir une dizaine de joueur sur le serveur et un peu d'action, j'ai du choke (qui n'apparait pas quand je monte au dessus de rate 40000 environ ...)

Puis ensuite il y a le :

"cl_interp 0"

Qui semble un peu faire débat !
Je suis d'accord au niveau des rates a 3000 j'ai du choke ...

merci encore pour cette new pertinente,

est ce que quelqu'un pourrait faire le point sur ce que veut démontrer regnam ici:http://www.cadred.org/Forums/Thread/111385/
et qui me semble être en opposition avec les dire de j3di.

en tout cas c est la première fois qu on forcerait un jeu a un tick en dessous duquel il a prouvé qu il pouvait tourner :
_a cause d un énorme problème incontournable de porte régler par zblock et qui demande la création d un nouveau moteur de jeu ;
_pour le rendre plus accessible a tout ceux qui auraient des ordinateurs (mac) et afin de limiter tout le monde a 66 fps pour plus d équité car il paraitrait que pour avoir 100 fps il faudrait un pc de compette , car ces "pauvres" joueurs vont se retrouver avec des configues en dessous du nombre optimal de fps requis sur des tick 100.

a la prochaine mise a jour dans quelque années si l opération a été rentable financièrement on va avoir droit a un portage sur téléphone portable/ipad peut être ?un passage a un tick 33 voir un tick 2 tant qu on y est pour les connexions mobiles? fonction du nombre de fps qu ils pourront aussi sortir ?
mais on vous dira que c est plus mieux ainsi !

ca serait sympas d avoir un sondage sur l appréciation de la touchabilité depuis la mise a jour de la part des joueurs qui ont du niveau, avec comme variable au moins 100fps oui/non , connexion internet/lan ping entre 100-50 50-25 25-0,sur un serveur en tick 100 et 66.
je pencherai pour dire que les moins bien loti niveau connexion et pc sont ceux qui apprécient le plus la mise a jour et que c est d autant plus vrai s ils jouaient sur du tick 66;et que ceux qui ont un pc avec plus de 100fps avec un bon ping sur du tick 100 trouvent que la mise a jour pue.

c est tout de même dommage qu il y ai aussi peut de considérations de la part de HPE et de réponses de j3di concernant l avenir de la scène compétitive.


Commentaire modifie le 24/07/2010 12:00:36 par lamutte

Commentaire modifie le 24/07/2010 12:03:31 par lamutte
#43 : Je pense que le tick100 causait d'autres problèmes que la porte sur nuke, après c'était sans doutes moins visible.

#40 : Pour les rate c'est juste que J3Di se place a mon avis uniquement dans le cas de serveurs war en match. Effectivement pour du DM par exemple, à mon avis c'est trop faible. De toutes manières rate est une limite maximale, a partir du moment où vous avez une connexion ADSL correcte, il n'y a pas de soucis à mettre une valeur plus haute pour être tranquille (le seul soucis étant les allemands qui vont whiner avec un "fix rate" en war, mais bon :D)
#44 Si seulement y avait que les allemands =(
cl_interp 0.02 pas 0 !

Vous devez posséder un compte VaKarM et être connecté pour commenter les articles