• 10 Juin 2024, 01:42:04


Auteur Sujet: [Race] Yrace Modifications  (Lu 3226 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne memech

  • *
  • Nouveau
  • Messages: 6
    • Voir le profil
[Race] Yrace Modifications
« le: 13 Octobre 2008, 22:16:27 »
Bonjour,

Nouveau depuis deux jours dans le monde du pawn scripting...
J'ai décider de faire un petit serveur pour jouer avec mes amis de temps à autres.
J'ai donc installer Yrace, le seul soucis c'est que la commande "/join" n'est pas très sympa car elle ne téléporte pas la personne directement sur la ligne de départ.

Donc j'ai chercher, encore et encore... J'ai lus des topics avec des calculs pas sympas.
Donc j'ai mis la main à la pâte, et je m'en sort maintenant avec une modification simple à comprendre.
Comme j'ai vus que certaines personnes peinais à faire celà, je décide de le poster ici.

Ajouts :
-Lorsque le joueur tape "/join" il est téléporter au point de départ
-Lorsque le joueur tape "/join" il est figer au point de départ jusqu'à ce que la course commence
-Lorsque le joueur tape "/join" il est téléporter dans le véhicule prédestiner pour la course
-Lorsqu'une course est lancer, un message s'affiche au centre de l'écran des joueurs
-Lorsqu'une course est lancer, un décompte est lancer pour ensuite lancer la course
-Lorsque le véhicule utiliser pour la course (véhicule à usage unique) est détruit, il ne respawn pas
-Système de grille de départ simple à utiliser

(A savoir que presque tout a été créer avec des variables)

Fonctionnement : (admin)

-Chaque course a une commande qui change la variable de rrace:
 "/rfastlane" met la variable "rrace" sur "1". (le 1 représentant la course fastlane)
 "/rannoying" met la variable "rrace" sur "2". (le 2 représentant la course annoying)
-L'admin charge la course dans Yrace:
 "/loadrace nom_de_course"
-Un message s'affiche au centre de l'écran des joueurs:
 "A new Race will start in 20sc.Type /join to join the race !"
-Si un joueur tape "/join":
 "racer_count" prend "+1" (racer_count = 1 ; 1 représentant le premier slot)
 Le joueur est téléporter dans un véhicule à la position du premier slot de la grille de départ
 Le joueur est figer pendant 20 secondes jusqu'à ce que la course commence
-Si un second joueur tape "/join":
 "racer_count" prend "+1" (racer_count = 2 ; 2 représentant le second slot)
 Le joueur est téléporter dans un véhicule à la position du second slot de la grille de départ
 Le joueur est figer pendant 20 secondes jusqu'à ce que la course commence
-Ainsi de suite...

Utilisation : (admin) (exemple d'utilisation pour la course fastlane)
-Il faut en premier lancer la commande "/rfastlane" (celle-ci met "rrace == 1", le 1 est définis comme étant la course fastlane)
-Ensuite charger la course dans Yrace "/loadrace fastlane"

AIDE :

-Ajouter une commande pour une course: (rrace == x)
 Il vous suffis de copier le modèle de commande qui se trouve ici "// Admin Command Race" (CRTL + F pour chercher du texte)
if (strcmp("/rfastlane", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, 0xAA3333AA, "[ ! ] Fastlane Configuration Loaded [ ! ]");
rrace = 1;
return 1;
}

-Faire une grille de départ pour une course:
 Il vous suffis de copier le modèle de commande qui se trouve ici "// Starting Grid for Race Fastlane" (CRTL + F pour chercher du texte)
       
                // Starting Grid for Race Fastlane
                if (rrace == 1) // Fastlane
{
if (racer_count == 1) // Slot 1 Start
  {
    if(!IsPlayerInAnyVehicle(playerid))
{
  RemovePlayerFromVehicle(playerid);
}
carmdl = CreateVehicle(424,2098.2361,838.7304,6.5227,270.8990,86,86,50000);
SetPlayerPos(playerid,2098.2361,838.7304,6.5227);
PutPlayerInVehicle(playerid, carmdl, 0);
spawnveh = 1;
  }
                if (racer_count == 2) // Slot 2 Start
  {
                 carmdl = CreateVehicle(424, x , y , z , angle ,86,86,50000);
SetPlayerPos(playerid, x , y , z );
PutPlayerInVehicle(playerid, carmdl, 0);
spawnveh = 1;
  }
Pour chaque course il faut recréer une nouvelle grille de départ.
C'est simple, on fait un copier/coller de la grille de départ en changeant les coordonnés par celles que l'on a soigneusement sauvegarder.

Téléchargement :
http://www.megaupload.com/?d=V47O7QN6

Crédits :
-Yaggu's pour son script Yrace
-Nikko™ & NatiVe™ pour m'avoir aider dans mon topic

PS: Il n'est pas simple d'expliquer le fonctionnement du script, en cas de soucis merci de me le dire.
PS²: Je verrais à faire un générateur de grille de départ en batch si ça intèresse les gens
PS3: Désoler pour le manque de commentaires et le code un peu barbare
« Modifié: 13 Octobre 2008, 22:23:10 par memech »

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #1 le: 14 Octobre 2008, 19:56:26 »
Jolie travail.
Le fonctionnement ressemble surment au script de lalu, et cest ce que tout le monde recherche  :happy

Sinon ca m'a l'air bien fait  ;)

++
nikko

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #2 le: 23 Octobre 2008, 12:08:33 »
Soit tu n'as pas encore fini, soit le script que tu donnes dans ton lien n'est pas le bon.
J'ai jeté un coup d'oeil car je voulais voir comment tu avais fait la chose (pour comparer avec ce que j'ai fait sur Lalu).
Il manque donc la partie le plus importante, le positionnement sur la grille de départ.
J'ai vu qu'il y avait une ébauche mais tout est plus ou moins vide.
De plus, tu ne gères que deux courses (en dur) et si tu dois en ajouter d'autre, ton script risque de devenir énorme (pour info, sur Lalu's Stunt, il y a plus de 150 courses).
Donc essaies de faire quelque chose de plus générique.

++
Syg
Courtesy of GtaManiac

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #3 le: 23 Octobre 2008, 13:49:25 »
a ouai, javais pas vu, cest vrai que si lalu été basé sur ca ... XD
cest dommage, mais continue ^^

++
nikko

Hors ligne memech

  • *
  • Nouveau
  • Messages: 6
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #4 le: 23 Octobre 2008, 15:56:28 »
Salut,

Citer
Soit tu n'as pas encore fini, soit le script que tu donnes dans ton lien n'est pas le bon.
La modification est pour moi terminée.
J'ai atteind mon but, faire quelque chose de simple à comprendre ainsi qu'à modifier.

Citer
Il manque donc la partie le plus importante, le positionnement sur la grille de départ.
Oui la grille n'est qu'une ébauche, mais si il y a un réel besoin d'en montrer une complète, je le ferais.
Le premier TP est surtout là en guise d'exemple.

Citer
De plus, tu ne gères que deux courses (en dur) et si tu dois en ajouter d'autre, ton script risque de devenir énorme
Tout à fait d'accord avec toi, c'est pour cette raison que je me penche sur un système de chargement de course, en gros tous les paramètres d'une course serraient dans ce fichier et éviterait la surcharge.

Citer
Donc essaies de faire quelque chose de plus générique.
Mon but n'est pas de faire quelque chose d'hyper évoluer, j'ai modifier Yrace pour mes propres besoins, ensuite j'ai poster cette modification pour montrer une possibilitée.  ;)

Citer
a ouai, javais pas vu, cest vrai que si lalu été basé sur ca ...
Lalu gère un serveur plus ou moins connus, moi je gère un serveur qui est allumer 2H maximum par semaines et qui acceuil uniquement mes amis.

Citer
cest dommage, mais continue ^^
Ce n'est pas dommage, le résultat que j'attendais est atteint, donc pour moi c'est une réussite...

Mais en tous cas merci pour ta critique constructive Lalu, j'en prend note et verrais si je peux faire différemment la modification pour la rendre plus légère.

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Re : [Race] Yrace Modifications
« Réponse #5 le: 23 Octobre 2008, 22:14:45 »
Mais en tous cas merci pour ta critique constructive Lalu, j'en prend note et verrais si je peux faire différemment la modification pour la rendre plus légère.

Moi, c'est Syg et l'autre personne qui t'as répondu, c'est Nikko. Mais ce n'est pas grave  :).

En fait, ton premier post prête à confusion, tu y sous-entends que tu vas donner un script tout fait.
Hors ce n'est pas le cas, c'est un peu pour ça que j'ai fait mon post précédent.
En fait, ton script ressemble plus à un tutorial, ce que j'aurais du comprendre au vu de ton premier post qui explique en détail ce qu'il faut faire.

++
Syg
Courtesy of GtaManiac

Jewels

  • Invité
Re : [Race] Yrace Modifications
« Réponse #6 le: 31 Octobre 2008, 22:04:15 »
ça reste dur à comprendre et à modifier. ^^
Syg : Comment vous procèdez sur Lalu's (mettre al grille de départ déjà), c'est automatique ou ... ?

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #7 le: 01 Novembre 2008, 19:07:36 »
La grille de départ est calculée en fonction de la course et des véhicules utilisés (pour l'espacement entre les joueurs).

Je ne donnerais pas ici la façon dont c'est fait, je l'ai déjà fait sommairement dans un autre post je ne sais plus où.
De toutes façons, même en donnant la méthode, la réalisation n'est pas forcément facile si on n'a pas un bon niveau en math.

++
Syg
Courtesy of GtaManiac

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #8 le: 01 Novembre 2008, 20:07:16 »
Salut,

environ quel niveau en math??
et il faut déterminer une largeur et une longueur pour chaque modèle de véhicule??

++Sim++





Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #9 le: 03 Novembre 2008, 09:37:49 »
En fait, tout réside dans le calcul de l'angle de départ, c'est à dire l'angle formé par l'axe (Ox) et le vecteur (CP1, CP2).
Un fois qu'on a cet angle, il suffit de faire faire une rotation à une grille de départ générique. En 3D, une rotation se résume à une multiplication de deux matrices.
Donc il faut des connaissances en géométrie, trigonométrie et quelques notions sur les matrices. En France ceci correspond plus ou moins au niveau qu'on a en fin de terminale, début de second cycle.

++
Syg
Courtesy of GtaManiac

Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #10 le: 04 Novembre 2008, 00:05:39 »
j'ai tester ton FS mais quand le joueur tape /join il ne rejoin pas la ligne de depart mais reste freezé la ou il était

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne angelrider

  • Scripteur
  • *
  • Bandit
  • Messages: 299
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #11 le: 05 Novembre 2008, 15:45:54 »
J'ai aussi tester le FS et petit problème lors ce que le joueurs tape join sa met:

[!] There is no race [!]

puis

you must have visited the starting CP to /ready.

ça me donne l'emplacement du checkpoint de départ mais le joueur es figé -_-.

Voila j'espère avoir été assez détaillé dans mon rapport de bug ^^ .
Nouveau Site de Mods San Andreas:
http://lcdacreation.fr

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Re : [Race] Yrace Modifications
« Réponse #12 le: 05 Novembre 2008, 17:19:32 »
ça me donne l'emplacement du checkpoint de départ mais le joueur es figé -_-.

Cest un peu le but du FS  ...

++
nikko

Hors ligne angelrider

  • Scripteur
  • *
  • Bandit
  • Messages: 299
    • Voir le profil
Re : [Race] Yrace Modifications
« Réponse #13 le: 05 Novembre 2008, 20:12:10 »
Escuse moi Nikko je me suis mal expliqué le joueur est figé mais pas au checkpoint de départ ^^.
Nouveau Site de Mods San Andreas:
http://lcdacreation.fr