Hola gente de EP hoy vengo con duda para mi server roleplay, esque me descargue un gm basico de roleplay y viene sin autos, y no tengo el mta, quisiera saber si hay una manera de poner los autos sin el MTA por favor soy nuevo en esto, gracias.
2 participantes
como pongo autos a mi server
Caccia- Mensajes : 14
Fecha de inscripción : 04/03/2013
Edad : 25
- Mensaje n°1
como pongo autos a mi server
4L3X- Mensajes : 1068
Fecha de inscripción : 15/01/2011
Edad : 28
Localización : Cuenca, España
- Mensaje n°2
Re: como pongo autos a mi server
para empezar dime el nombre del gamemode que descargaste por favor
Caccia- Mensajes : 14
Fecha de inscripción : 04/03/2013
Edad : 25
- Mensaje n°3
Re: como pongo autos a mi server
El nombre es GMBase Roleplay, aca esta el link de donde lo descargue: http://www.solidfiles.com/d/ebafb4419e/
4L3X- Mensajes : 1068
Fecha de inscripción : 15/01/2011
Edad : 28
Localización : Cuenca, España
- Mensaje n°4
Re: como pongo autos a mi server
Esa base de Roleplay es tan simple que no tiene sistema de facciones, si quieres hacer el sistema no sera facil pero aqui una explicacion breve de un sistema sencillo:
1ºAbres el gamemode "[GM]Base-RP" con Pawno.
2ºBuscas la siguiente linea:
debajo de dicha linea veras esto los arrows de jInfo preparadas para la varible InfoJugador, y lo que tiene que acer en dicha enumeracion, es agregar una nueva numeracion para las facciones, puedes agregarlo de la siguiente manera:
3ºcuando ya allas echo el enum, dirigete a la siguiente linea:
cuando estes en dicha linea mira en su interior justo debajo de
agregas una linea con este siguiente codigo:
lo que emos echo en la funcion de Registro es añadir un nuevo stat para que cuando el jugador entre y salga del servidor, se le guarde la faccion en la que esta, pero para completar esta funcion todavia nos quedan unos pasos.
4ºAhora dirigete a la siguiente linea:
bueno aqui basicamente es lo mismo, debajo del siguiente script tienes que agregar el script siguiente:
el codigo a agregar:
quedaria algo asi:
5ºDespues de poner a su punto la funcion para guardar los datos del jugador tienes que agregar lo mismo a la funcion del logueo, que cuando tu entras al servidor te cargue la faccion en la que se guardo anteriormente, y para eso nos dirigimos en la siguiente linea:
bueno aqui tenemos que ir donde la linea de :
y agregar debajo de dicha linea una nueva con este script:
una vez colocada quedaria algo por el estilo (Si no sabes como agregar el codigo anterior copia y remplazalo por el public LogearJugador)
bueno y con esto, el sistema de facciones ya estaria agregado, ahora solo faltaria lo mas importante, como los comandos de agregar miembro y quitar miembro, pero este sistema de facciones no tiene lider ni nada, yo te aconsejo usar otro gamemode ya que en este si no sabes ya manejarte en pawno te perderas rapido.
espero que te sirva y cualquier cosa deja tu mensaje
1ºAbres el gamemode "[GM]Base-RP" con Pawno.
2ºBuscas la siguiente linea:
- Código:
enum jInfo
debajo de dicha linea veras esto los arrows de jInfo preparadas para la varible InfoJugador, y lo que tiene que acer en dicha enumeracion, es agregar una nueva numeracion para las facciones, puedes agregarlo de la siguiente manera:
- Código:
enum jInfo
{
jClave[128],
jAdminNvl,
jSexo,
jEdad,
jRopa,
Float:jVida,
Float:jArmadura,
jMascara,
Float:jPos_x,
Float:jPos_y,
Float:jPos_z,
jInterior,
jMundoVirtual,
jRegistrado,
jFaccion,
};
3ºcuando ya allas echo el enum, dirigete a la siguiente linea:
- Código:
public RegistrarJugador(playerid, inputtext[])
cuando estes en dicha linea mira en su interior justo debajo de
- Código:
format(var, 64, "Registrado=%d\n",InfoJugador[playerid][jRegistrado]);fwrite(hFile, var);
agregas una linea con este siguiente codigo:
- Código:
format(var, 64, "Faccion=%d\n",InfoJugador[playerid][jFaccion]);fwrite(hFile, var); //by 4L3X
lo que emos echo en la funcion de Registro es añadir un nuevo stat para que cuando el jugador entre y salga del servidor, se le guarde la faccion en la que esta, pero para completar esta funcion todavia nos quedan unos pasos.
4ºAhora dirigete a la siguiente linea:
- Código:
public GuardarInfo(playerid)
bueno aqui basicamente es lo mismo, debajo del siguiente script tienes que agregar el script siguiente:
- Código:
format(var, 64, "Registrado=%d\n",InfoJugador[playerid][jRegistrado]);fwrite(hFile, var);
el codigo a agregar:
- Código:
format(var, 64, "Faccion=%d\n",InfoJugador[playerid][jFaccion]);fwrite(hFile, var); //by 4L3X
quedaria algo asi:
- Código:
public GuardarInfo(playerid)
{
if(IsPlayerConnected(playerid))
{
if(JugadorLogeado[playerid] == 1)
{
new string2[64];
new NombreJugador2[MAX_PLAYER_NAME];
GetPlayerName(playerid, NombreJugador2, sizeof(NombreJugador2));
format(string2, sizeof(string2), "Cuentas/%s.ini", NombreJugador2);
new File: hFile = fopen(string2, io_write);
if (hFile)
{
new var[64];
format(var, 64, "Clave=%s\n", InfoJugador[playerid][jClave]);fwrite(hFile, var);
format(var, 64, "AdminNvl=%d\n",InfoJugador[playerid][jAdminNvl]);fwrite(hFile, var);
format(var, 64, "Sexo=%d\n",InfoJugador[playerid][jSexo]);fwrite(hFile, var);
format(var, 64, "Edad=%d\n",InfoJugador[playerid][jEdad]);fwrite(hFile, var);
InfoJugador[playerid][jRopa] = GetPlayerSkin(playerid);
format(var, 64, "Ropa=%d\n",InfoJugador[playerid][jRopa]);fwrite(hFile, var);
GetPlayerHealth(playerid,InfoJugador[playerid][jVida]);
format(var, 64, "Vida=%.1f\n",InfoJugador[playerid][jVida]);fwrite(hFile, var);
GetPlayerArmour(playerid,InfoJugador[playerid][jArmadura]);
format(var, 64, "Armadura=%.1f\n",InfoJugador[playerid][jArmadura]);fwrite(hFile, var);
format(var, 64, "Mascara=%d\n",InfoJugador[playerid][jMascara]);fwrite(hFile, var);
if ((InfoJugador[playerid][jPos_x]==0.0 && InfoJugador[playerid][jPos_y]==0.0 && InfoJugador[playerid][jPos_z]==0.0))
{
InfoJugador[playerid][jPos_x] = 1684.9;
InfoJugador[playerid][jPos_y] = -2244.5;
InfoJugador[playerid][jPos_z] = 13.5;
}
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
InfoJugador[playerid][jPos_x] = x;
InfoJugador[playerid][jPos_y] = y;
InfoJugador[playerid][jPos_z] = z;
format(var, 64, "Pos_x=%.1f\n",InfoJugador[playerid][jPos_x]);fwrite(hFile, var);
format(var, 64, "Pos_y=%.1f\n",InfoJugador[playerid][jPos_y]);fwrite(hFile, var);
format(var, 64, "Pos_z=%.1f\n",InfoJugador[playerid][jPos_z]);fwrite(hFile, var);
format(var, 64, "Interior=%d\n",InfoJugador[playerid][jInterior]);fwrite(hFile, var);
format(var, 64, "MundoVirtual=%d\n",InfoJugador[playerid][jMundoVirtual]);fwrite(hFile, var);
format(var, 64, "Registrado=%d\n",InfoJugador[playerid][jRegistrado]);fwrite(hFile, var);
format(var, 64, "Faccion=%d\n",InfoJugador[playerid][jFaccion]);fwrite(hFile, var); //by 4L3X
fclose(hFile);
}
}
}
return 1;
}
5ºDespues de poner a su punto la funcion para guardar los datos del jugador tienes que agregar lo mismo a la funcion del logueo, que cuando tu entras al servidor te cargue la faccion en la que se guardo anteriormente, y para eso nos dirigimos en la siguiente linea:
- Código:
public LogearJugador(playerid,inputtext[])
bueno aqui tenemos que ir donde la linea de :
- Código:
if( strcmp( key , "Registrado" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jRegistrado] = strval( val ); }
y agregar debajo de dicha linea una nueva con este script:
- Código:
if( strcmp( key , "Faccion" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jFaccion] = strval( val ); } //by 4L3X
una vez colocada quedaria algo por el estilo (Si no sabes como agregar el codigo anterior copia y remplazalo por el public LogearJugador)
- Código:
public LogearJugador(playerid,inputtext[])
{
new string3[64];
new NombreJugador3[MAX_PLAYER_NAME];
new playernamesplit[3][MAX_PLAYER_NAME];
GetPlayerName(playerid, NombreJugador3, sizeof(NombreJugador3));
split(NombreJugador3, playernamesplit, '_');
format(string3, sizeof(string3), "Cuentas/%s.ini", NombreJugador3);
new File: UserFile = fopen(string3, io_read);
if ( UserFile )
{
new PassData[256];
new keytmp[256], valtmp[256];
fread( UserFile , PassData , sizeof( PassData ) );
keytmp = ini_GetKey( PassData );
if( strcmp( keytmp , "Clave" , true ) == 0 )
{
valtmp = ini_GetValue( PassData );
strmid(InfoJugador[playerid][jClave], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(InfoJugador[playerid][jClave],inputtext, true ) == 0)
{
new key[ 256 ] , val[ 256 ];
new Data[ 256 ];
while ( fread( UserFile , Data , sizeof( Data ) ) )
{
key = ini_GetKey( Data );
if( strcmp( key , "AdminNvl" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jAdminNvl] = strval( val ); }
if( strcmp( key , "Sexo" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jSexo] = strval( val ); }
if( strcmp( key , "Edad" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jEdad] = strval( val ); }
if( strcmp( key , "Ropa" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jRopa] = strval( val ); }
if( strcmp( key , "Vida" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jVida] = floatstr( val ); }
if( strcmp( key , "Armadura" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jArmadura] = floatstr( val ); }
if( strcmp( key , "Mascara" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jMascara] = strval( val ); }
if( strcmp( key , "Pos_x" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jPos_x] = floatstr( val ); }
if( strcmp( key , "Pos_y" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jPos_y] = floatstr( val ); }
if( strcmp( key , "Pos_z" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jPos_z] = floatstr( val ); }
if( strcmp( key , "Interior" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jInterior] = strval( val ); }
if( strcmp( key , "MundoVirtual" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jMundoVirtual] = strval( val ); }
if( strcmp( key , "Registrado" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jRegistrado] = strval( val ); }
if( strcmp( key , "Faccion" , true ) == 0 ) { val = ini_GetValue( Data ); InfoJugador[playerid][jFaccion] = strval( val ); } //by 4L3X
}
SpawnPlayer(playerid);
fclose(UserFile);
}
else
{
new loginstring[128];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"{FFFFFF}Servidor: Contraseña Incorrecta\n{FFFFFF}Coloca Bien Tu {6600FF}Contraseña.");
ShowPlayerDialog(playerid,DIALOGO_INGRESO,DIALOG_STYLE_INPUT,"{00FFFF}[GM]Base Roleplay",loginstring,"Entrar","Salir");
fclose(UserFile);
IntentosdeIngreso[playerid] += 1;
if(IntentosdeIngreso[playerid] == 5) { Ban(playerid); }
return 1;
}
}
if(InfoJugador[playerid][jRegistrado] == 0)
{
ShowPlayerDialog(playerid, DIALOGO_SEXO, DIALOG_STYLE_MSGBOX, "- Sexo -","¿Qué género eres?","Hombre","Mujer");
}
return 1;
}
bueno y con esto, el sistema de facciones ya estaria agregado, ahora solo faltaria lo mas importante, como los comandos de agregar miembro y quitar miembro, pero este sistema de facciones no tiene lider ni nada, yo te aconsejo usar otro gamemode ya que en este si no sabes ya manejarte en pawno te perderas rapido.
espero que te sirva y cualquier cosa deja tu mensaje
Caccia- Mensajes : 14
Fecha de inscripción : 04/03/2013
Edad : 25
- Mensaje n°5
Re: como pongo autos a mi server
Y como hago para ponerle los miembros y algunos comandos? con esto ya terminaria las facciones. gracias por todo!
4L3X- Mensajes : 1068
Fecha de inscripción : 15/01/2011
Edad : 28
Localización : Cuenca, España
- Mensaje n°6
Re: como pongo autos a mi server
para poner miembros tendrias que hacer lo que icimos anteriormente pero con un nuevo stat llamado "pMiembro" tu puedes ponerlo como quieras, ese stat vendria como el stat del miembro osea que si tu en pFaccion no tienes nada osea 0 y en pMiembro tienes por ejemplo 1, tu eres miembro de la faccion 1, pero si fuera al reves, osea si tu fueras pFaccion=1 y pMiembro=0 no serias nada pero en cambio si eres pFaccion=1 y pMiembro=1 ya eres lider de la faccion 1, tiene que ser la misma id en los 2 stats para que puedas ser el lider.
¿Crear algunos comandos?
Bueno por ahora solamente tienes que crear los comandos de admin, como por ejemplo /darlider o /hacerlider o como tu quieras, aqui te dejo el comando con los stats que te dije: pFaccion y pMiembro, ya personalizado para el funcionamiento pero no en tu server, sino en otro pero tu lo puedes acomodar:
repito, lo mas seguro dara errores, pero nada que no se pueda arreglar.
¿Crear algunos comandos?
Bueno por ahora solamente tienes que crear los comandos de admin, como por ejemplo /darlider o /hacerlider o como tu quieras, aqui te dejo el comando con los stats que te dije: pFaccion y pMiembro, ya personalizado para el funcionamiento pero no en tu server, sino en otro pero tu lo puedes acomodar:
- Código:
if(strcmp(cmd, "/hacerlider", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /hacerlider [playerid/PartOfName] [Number FAC]");
return 1;
}
new para1;
new level;
para1 = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
level = strval(tmp);
if(level > 25 || level < 0) { SendClientMessage(playerid, -1, " Sólo hay 25 facciones!"); return 1; }
if (PlayerInfo[playerid][pAdmin] >= 4)
{
if(IsPlayerConnected(para1))
{
if(para1 != INVALID_PLAYER_ID)
{
if(PlayerInfo[para1][pMiembro] > 0)
{
SendClientMessage(playerid, -1 " That player is in a Faction / Family !");
return 1;
}
GetPlayerName(para1, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
PlayerInfo[para1][pFaccion] = level;
PlayerInfo[para1][pMiembro] = level;
format(string, sizeof(string), " Fuiste ascendido a Lider de Una Faccion, Gracias a: %s", sendername);
SendClientMessage(para1, -1, string);
format(string, sizeof(string), " Le diste a: %s el Control de La Faccion Numero: %d.", giveplayer,level);
SendClientMessage(playerid, -1, string);
}
}//not connected
}
else
{
SendClientMessage(playerid, -1, " ! No estás autorizado para utilizar este comando !");
}
}
return 1;
}
repito, lo mas seguro dara errores, pero nada que no se pueda arreglar.
Caccia- Mensajes : 14
Fecha de inscripción : 04/03/2013
Edad : 25
- Mensaje n°7
Re: como pongo autos a mi server
Muchas gracias 4L3X por toda tu ayuda, y creo que tens razon de que consiga un gm no tan basico.