GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Peper le 18 Février 2008, 16:05:28
-
Salut :)
Je me suis crée un serveur cela doit faire 4 jours maintenant, et par default, à la connexion, on est à Las Venturas :-X Pis moi bah ce que je veut c'est que dès la connexion avec le joueur qu'on veut, qu'on sois à LS ..
J'ai regardé un tuto concernant le respawn mais bon, j'sais pas si j'ai bien fait ce qu'ils ont dit car, bah, ça marche pas :dry
Pour test, j'ai lancer le mode Debug puis j'ai choisis le gangsta de Groove, avec la casquette, et je l'ais emmené à Ganton. Puis /save et j'ai copier les cordo dans savedposition et coller dans le dossier 'new', ouvert avec Pawno, et dans la fonction 'OnGameModeInit()' en dessous de
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
Voici la ligne copier dans le dossier save
AddPlayerClass(107, 2499.8340, 1669.3813, 13.3505, 73.2948, 0, 0, 0, 0, 0, 0);
Ce qui donne
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); //
AddPlayerClass(107, 2499.8340, 1669.3813, 13.3505, 73.2948, 0, 0, 0, 0, 0, 0);
return 1;
Tout ça en finissant par F5.
J'lance SA:MP, je go sur mon serveur puis lorsque je prend le gars de Groove correspond au cordo, bah je suis à LV ;D
Donc je commence à avoir des doutes, si c'est vraiment comme ça qu'on fait ou si je suis carrément à l'Ouest :dry
(Je rappel que c'est pour commencer à LS à la connexion et non à LV)
Mercii
-
Va voir dans "Tuto", "Votre 1er serveur !"
C'est un Tutorial pour les nouveau que j'ai fait !
-
Les coordonnées que tu donnes dans tes deux AddPlayerClass sont toutes les deux à LV.
Il est donc normal que tu n'atterrisses pas à LS comme tu le veux.
Donc refait ton /save en y mettant un commentaire pour être sur que tu prends la bonne ligne dans le fichier savedpositions.
Exemple :
/save Position à LS
++
Syg
-
OK. Donc je vais déjà testé ce que tu m'as dit de faire Syg', pis je check le tuto si c'est mort.
Merci à vous deux, je vous dit quoi.
;)
-
Désolé du double post' mais .. Toujours rien. J'ai pris la ligne correspondant à la position dans /save mais rien je réapparait toujours à LV :(
Je peux screené mon Pawno si vous voulez ..
-
Donc je résume, tu édites ton fichier PAWN, tu appuies sur F5 pour le compiler, il n'y pas d'erreur donc tu va sur ton serveur pour tester et là, rien.
Alors peut-être que tu as oublié une étape, le rechargement de ton mode.
Je vois 2 cas dans lesquels ton nouveau mode ne sera pas pris en compte :
- Tu as oublié de faire un /rcon gmx (ou gmx dans le fenêtre noire du serveur)(ou arrêt/redémarrage du serveur) pour que le nouveai mode soit pris en compte
- Ton fichier .amx ne se trouve pas dans le répertoire gamemode (et c'est le cas si ton fichier .pwn ne s'y trouve pas non plus).
Donc dans un cas comme dans l'autre, pour être sûr, voici la marche à suivre :
Edite ton fichier PAWN, appuie sur F5, arrête le jeu, le client et le serveur, vérifie que le fichier .amx se trouve bien dans le répertoire gamemode (regarde la date et l'heure du fichier, elles doivent correspondre au moment où tu as appuyé sur F5) et si le fichier .amx est correct, lance ton serveur, lance le client puis le jeu.
Le plus simple est de mettre le fichier .pwn dans le répertoire gamemode pour que le fichier .amx soit généré dans ce répertoire puis de faire /rcon gmx dans le jeu (après t'être loggué administrateur par /rcon login <pwd>).
++
Syg
-
Ah ouep, tout ça, c'était pas presicer dans les tutos :dry
Y aurait t'il un nom précis à donné aux fichiers .amx et .pwn ? Parce-que, j'ai fait exactement comme tu m'as dit .. M'enfin je pense xD
Ayant modifié le fichier .pwn par défault, je l'est compilé puis mis dans le dossier Gamemodes accompagné du .pwn. Mais toujours rien ;D
-
/rcon changemode <NomDuMode(sans .pwn)> :)
Ou dans config.cfg. ;)
-
Ouais nickel, merci à vous deux ;)
Petite question : Etant donné que j'ai mis qu'un joueur dans le script, je voulais savoir si le fait qu'il n'y ait plus personne dans la selection des joueurs était normal ? (J'ai une préférence pour une réponse positive, car l'ID du joueur est 107 et non 0). M'enfin je veux être sûr :)
Thx encore :)
[Edit] Ah oui, aussi, commet faire pour ne plus avoir à recharger le mode à chaque redémarrage du serveur ? Et aussi, ( :laugh ) à la selection des perso', on est en face d'un escalator situé à LV, pis impossible d'avoir l'aperçu du joueur qu'on prend :-X
-
salut Peper,
que veut tu dire exactement par:
je voulais savoir si le fait qu'il n'y ait plus personne dans la selection des joueurs était normal ?
si tu veut dire qu'on a le choix d'un seul skin, effectivement, c'est normal. 8)
si tu veut tous les mettes, tu n'as qu'a copier coller la ligne que tu as en changeant le premier nombre:
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
tu le change pour un autre compris entre 0 et 285 je croit..... en tous cas, sur wiki ils disent qu'il y a un total de 284/299 skins différents
tu garde les autres données comme elles sont( celles ci ne sont pas celles que tu as besoin puisqu'il s'agit de celle que tu as cité précédemment donc prend les tiennes) ;)
et quand tu dit ne pas avoir a recharger le mode, tu veut dire aller sur pawno et l'enregistrer ??? si oui, ben si tu modifie rien, tu n'as pas besoin d'aller sur pawno le recharger, tu n'as besoin de la faire que lorsque tu change quelque chose dans ton mode.... ???
et si tu parle que le serveur load le fichier (NOMDUGM).amx, il le fera toujours( ça m'étonnerais que tu parle de ça...)
en espérant t'avoir aidé.......
++Sim++
-
Oui c'est bien de ça que je parlais pour les skins, donc OK, merci ! :)
Et en faite pour le mode, je voulais dire plutot la commande
/rcon changemode <nomdemonfichier>
Si il n'y aurait pas un moyen de faire cela automatiquement, car à chaque redémarrage de mon serveur, j'ai les persos par défault et tout .. Et c'est un peu relou de devoir tapé ça tout le temps :closedeyes
Merci ;)
(Ah oui, et au chargement du fichier .amx pendant le jeu, je ne voit pas l'aperçu du skin de mes persos ajoutée :-X)
-
Salut Peper,
pour mettre ton gm, c'est super simple
ouvre ton dossier qui contient samp-server.exe
trouve le fichier server.cfg
tu l'ouvre avec bloc note,
puis dans la ligne gamemode......
tu efface ce qu'il y a après le gamemode (un chiffre) et tu écrit le nom du fichier de ton mode que tu a fait...
il ouvrira maintenant ton gm
pour les filterscript, c'est pareil mais sur la ligne qui commence par filterscript..... et tu peut en mettre plusieurs ;)
et euh...
(Ah oui, et au chargement du fichier .amx pendant le jeu, je ne voit pas l'aperçu du skin de mes persos ajoutée Lèvres scellées)
tu veut dire que tu n'apparait pas sur lMécran qui te permet de choisir le skin??
je croit que la commande changemode ne fait pas un restart, tu reste au même endroit??
si oui, c'est normal,(fait F4 et tue toi pour choisir)
je ne sais vraiment pas sinon, je ne me suis jamais servi de cette commande, je ne peut que te souhaiter bonne chance
++Sim++
-
Ouais, ça marche :)
Pour mon problème de skin, à la selection du perso' j'ai ça :
(http://img151.imageshack.us/img151/5425/samp005gy7.png)
Je devrais normalement voir un mec de Grove, mais là rien :-X
Sinon merci à vous les gars vous gerez ;)
-
C'est normal, c'ets car tu t'es tromper d'id dans la ClassSelection. Je te donen le mien :
public SetupPlayerForClassSelection(playerid)
{
SetPlayerInterior(playerid,10);
SetPlayerPos(playerid,-1130.0795,1029.1222,1349.1802);
SetPlayerFacingAngle(playerid, 90);
SetPlayerCameraPos(playerid,-1132.8027,1028.9460,1350.1802);
SetPlayerCameraLookAt(playerid,-1130.0795,1029.1222,1349.1802);
AllowPlayerTeleport(playerid, 0);
AllowAdminTeleport(1);
}
-
J'ai beau chercher, j'voit pas la ligne
public SetupPlayerForClassSelection(playerid)
;D
-
Crée-la. ;)
-
salut,
viruz, il m'étonnerais que ton commentaire aide Peper
tu doit tout simplement placer cette fonction dans OnPlayerRequestClass comme ceci:
public OnPlayerRequestClass(playerid, classid)
{
SetupPlayerForClassSelection(playerid);
return 1;
}
et tu peut rajouter une musique si tu veut:
PlayerPlaySound(playerid,1062,0.0,0.0,0.0);
et pour la stopper, dans OnPlayerRequestSpawn,
PlayerPlaySound(playerid,1063,0.0,0.0,0.0);
(car ce son n'existe pas, il stoppe le son,
et si tu veut choisir toi meme ou tu place ton personnage pour le choix, tu vas sur le jeu et /save pour la position,
rappel: AddPlayerClass(ID,POS X,POS Y, POS Z, Angle, WEAPON 1, AMMO1, WEAPON 2, AMMO 2, WEAPON 3, AMMO 3);
et voila, encore bonne chance peper
++Sim++
-
Error lors de la compilation :/
D:\PROGRA~1\ROCKST~1\GTASAN~1\pawno\COPIED~1.PWN(54) : error 017: undefined symbol "SetupPlayerForClassSelection"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
-
En haut de ton GM :
forward SetupPlayerForClassSelection(playerid);
-
Pareil toujours rien ;D Vous pourriez me faire un screen de votre fichier .pwn ? Que j'voit où le mettre exactement, parce-que ça s'trouve c'est moi qui me gourre -_-. Pis c'est plus clair comme ça ..
Merci à vous :)
-
salut peper,
tu peut le placer n'importe où ou presque dans ton gm,
il s'agit juste qu'il ne soit pas dans une callback, qu'est-ce qu'une callback??
c'est tout simplement une fonction qui est appelé lorsque survient un événement, par exemple:
un joueur sort de son vehicle, la callback OnPlayerExitVehicle est appelé et la le serveur effectue les actions que tu as inscrites dans cette callback....
public OnPlayerExitVehicle(playerid, vehicleid)
{
SetTimerEx ("CarRespawn", 15000,0, "i", vehicleid);
return 1;
}
//ici tu placerais le code du SetupPlayerForClassSelection
et voila tu devrais comprendre cela
bonne chance et cherche un peu.... :P
++Sim++
-
:dry Toutes vos réponses sont différente aussi .. Et bien que je vous ecoutent tous, toujours ce
error 017: undefined symbol
N'importe où je le met
:(
-
salut,
tu peut tout simplement le placer complètement a la fin ou encore au début, juste avec la ligne :
public OnGameModeInit ()
cherche un peu, fait des tests, tu finira bien par trouver ;)
++Sim++
-
Résolu par MP :)
Merci encore à Sim pour avoir résolu lui-même le problème, pis bien sûr aux autres pour mon problème précédent ;)
Continuez tous ainsi, vous dechirez .. :-* Lol
Clos.