- 16 Giugno 2011
- 39
- 0
- Miglior risposta
- 0
questa piccola guida l' ho creata per chi vuole creare un server,e contiene l' essenziale per creare e far funzionare un server samp
incominciamo:
per creare un proprio server sara necessario soltanto avere un po di pasienza
cose necessarie:
1 pc(xD)
gta sa v1.0
ovviamente samp
iniziamo:
per prima cosa dovete scaricare il pacchetto server(download
ora aprite il file server.cfg con il blocco note e vi appariranno delle scritte simili a queste:
echo Executing Server Config...
lanmode 1
rcon_password changeme
maxplayers 25
port 7777
hostname sampservero.3c
gamemode0 grandlarck
filterscripts
announce 1
query 1
weburl
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
maxnpc 0
e dovrete modificarlo,sopratutto la rcon password(o il vostro server non si aprira)
lo dovrete modificare seguendo questo schema:
echo Executing Server Config...
lanmode 1
rcon_password (la pass del server,potete mettere anche 123)
maxplayers (qui inserite il numero massimo di player che possono entrare nel vostro server)
port 7777
hostname (il nome del vostro server)
gamemode0 (qua va inserito il nome della vostra gm che poi creerete o modificherete,perche glandarck fa skifo)
filterscripts (qua vengono inseriti i nomi dei filerscript,proprio come la gm,con l' unica differenza che ne puoi mettere quanto vuoi)
announce 1
query 1
weburl (qua inserite il forum del vostro server,che poi creerete,ma nn è difficile)
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
e adesso se seguirete lo schema samp_server partira.
ora abbiamo finito con la creazione del server,ma ora incominciamo con il creare una gamemode(gm)
allora aprite il programma pawno e se volete selezionate una gm originale o cliccate su new
e vi apparia una schermata con molti codici: questa sara cmq la vostra gm.
io creero la gm da new
vi apparira una cosa cosi se fate una nuova gm:
CODICE// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#include <a_samp>
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
// Colori
#define COLOR_RED 0xAA3333AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_BLUE 0x1111AAFF
#define COLOR_PINK 0xFF66FFAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
#endif
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);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid, COLOR_RED, "Benvenuto nel server M.C.P!");
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
ban(playerid)//ban
adesso si incomincia a scriptare:
i primi righi,cioe
// This is a comment
// uncomment the line below if you want to write a filterscript
li potete modificare,tipo
// mega cazzeggio PLANET
// server and gm by francy_700
ma nn credo sia necessario,ma rende la gm un po piu decorata(lol)
ora su SetGameModeText dovrete scrivere il nome della vostra nuova gm,il nome che visualizzeranno tutti i player guardando la parte dove c' è scritto mode
modificandola ad esempio cosi:
SetGameModeText("[ITA]MCP SERVER"); tra parantesi e con i "
adesso la vostra gm ha un nome che visualizzeranno tutti
e se vogliamo aggiungere delle skin tipo claude speed o qualsiasi altra skin?
abbastanza semplice. questo è lo skema
AddPlayerClass(numero della skin, posizione x,posizione y,posizione z ,angolo della rotazione della posizione z, id arma slot n1, munizioni della 1a arma, id arma slot n2, munizioni della 2a arma, id arma slot n3, munizioni della 3a arma);
potete anche lasciare gli slot vuoti(intendo quelli delle armi)ad esempio se volete aggiungere the truth dovete fare
AddPlayerClass(1, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
il punto di spawn originale è lo stesso di quello della nostra gm
con aggiungere i player potete continuare quanto volete,ma nn cancellate mai i return:senza di quelli vi darebbe errori a non finire.non dovrete fare i return ogni volta che inserite una skin,lo dovrete fare solo sotto l' ultima skin,altrimenti farete un sacco di errori.
questa parte è sicuramente molto importante:
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,posizione x, posizione y, posizione z);
SetPlayerCameraPos(playerid, posizione x, posizione y, posizione z);
SetPlayerCameraLookAt(posizione x,posizione y,posizione z);
e cosi settate il posto in cui scegliete il personaggio
poi ci sono alcuni eventi tipo
public OnPlayerConnect(playerid)
{
return 1;
}
e potete ad esempio dare il benvenuto cosi
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,"Benvenuto Nel server!buona permanenza!")
return 1;
}
ma pero se vogliamo darlo nell' evento di spawn dovrete fare cosi
public OnPlayerSpawn(playerid)
{
GameTextForPlayer(playerid,"~g~Benvenuto nel server ~w~MCP!~r~Buona Permanenza!", 5000, 3);
return 1;
}
i simboli ad esempio ~g~ servono per dare iun colore alla scritta
i colori che si possono dare alla scritta sono:
~r~ rosso
~g~ verde
~b~ blu
~w~ bianco
~y~ giallo
~n~ a capo
500 è il tempo per quanto il messaggio deve rimanere espresso in millisecondi(500ms=5s)
gli altri sono eventi normali,ma ora passiamo a cio che rendera veramente il nostro server bello:i comandi.
per inserire un comando basta mettere sotto
public OnPlayerCommandText(playerid, cmdtext[])
// Do something here
{
if (strcmp("/comando", cmdtext, true, 10) == 0)
{
conseguenza (o e);
return 1;
}
tipo per mettere il comando kill che si fa cosi
if(strcmp("/kill", cmdtext, true)==0)
{
SetPlayerHealth(playerid, 0);
return 1;
}
per settare invece il jetpack cm cmd è un po piu difficile,ma si fa
if (strcmp("/jetpack",cmdtext, true)== 0)
{
SetPlayerSpecialAction (playerid , SPECIAL_ACTION_USEJETPACK);
return 1;
}
e avrete messo il comando /jetpack
poi ci sono soltanto eventi,ma con degli fs che potete scaricare e modificare il vostro server sara + bello
ps:creare 1 fs(filerscripts) è abbastanza semplice,proprio come creare una gamemode
incominciamo:
per creare un proprio server sara necessario soltanto avere un po di pasienza
cose necessarie:
1 pc(xD)
gta sa v1.0
ovviamente samp
iniziamo:
per prima cosa dovete scaricare il pacchetto server(download
Perfavore,
Entra
oppure
Registrati
per vedere i Link!
)se avete linux selezionate quello per linux,se avete windows(sicuramente la maggior parte)scaricate quello per windows. adesso avrete il vostro server,ma fara skifo per il fatto che non si aprira e le gm faranno skifo.ora aprite il file server.cfg con il blocco note e vi appariranno delle scritte simili a queste:
echo Executing Server Config...
lanmode 1
rcon_password changeme
maxplayers 25
port 7777
hostname sampservero.3c
gamemode0 grandlarck
filterscripts
announce 1
query 1
weburl
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
maxnpc 0
e dovrete modificarlo,sopratutto la rcon password(o il vostro server non si aprira)
lo dovrete modificare seguendo questo schema:
echo Executing Server Config...
lanmode 1
rcon_password (la pass del server,potete mettere anche 123)
maxplayers (qui inserite il numero massimo di player che possono entrare nel vostro server)
port 7777
hostname (il nome del vostro server)
gamemode0 (qua va inserito il nome della vostra gm che poi creerete o modificherete,perche glandarck fa skifo)
filterscripts (qua vengono inseriti i nomi dei filerscript,proprio come la gm,con l' unica differenza che ne puoi mettere quanto vuoi)
announce 1
query 1
weburl (qua inserite il forum del vostro server,che poi creerete,ma nn è difficile)
onfoot_rate 40
incar_rate 40
weapon_rate 40
stream_distance 300.0
stream_rate 1000
e adesso se seguirete lo schema samp_server partira.
ora abbiamo finito con la creazione del server,ma ora incominciamo con il creare una gamemode(gm)
allora aprite il programma pawno e se volete selezionate una gm originale o cliccate su new
e vi apparia una schermata con molti codici: questa sara cmq la vostra gm.
io creero la gm da new
vi apparira una cosa cosi se fate una nuova gm:
CODICE// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#include <a_samp>
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
// Colori
#define COLOR_RED 0xAA3333AA
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_BLUE 0x1111AAFF
#define COLOR_PINK 0xFF66FFAA
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_DARKRED 0x660000AA
#define COLOR_ORANGE 0xFF9900AA
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
#endif
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);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid, COLOR_RED, "Benvenuto nel server M.C.P!");
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
ban(playerid)//ban
adesso si incomincia a scriptare:
i primi righi,cioe
// This is a comment
// uncomment the line below if you want to write a filterscript
li potete modificare,tipo
// mega cazzeggio PLANET
// server and gm by francy_700
ma nn credo sia necessario,ma rende la gm un po piu decorata(lol)
ora su SetGameModeText dovrete scrivere il nome della vostra nuova gm,il nome che visualizzeranno tutti i player guardando la parte dove c' è scritto mode
modificandola ad esempio cosi:
SetGameModeText("[ITA]MCP SERVER"); tra parantesi e con i "
adesso la vostra gm ha un nome che visualizzeranno tutti
e se vogliamo aggiungere delle skin tipo claude speed o qualsiasi altra skin?
abbastanza semplice. questo è lo skema
AddPlayerClass(numero della skin, posizione x,posizione y,posizione z ,angolo della rotazione della posizione z, id arma slot n1, munizioni della 1a arma, id arma slot n2, munizioni della 2a arma, id arma slot n3, munizioni della 3a arma);
potete anche lasciare gli slot vuoti(intendo quelli delle armi)ad esempio se volete aggiungere the truth dovete fare
AddPlayerClass(1, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
il punto di spawn originale è lo stesso di quello della nostra gm
con aggiungere i player potete continuare quanto volete,ma nn cancellate mai i return:senza di quelli vi darebbe errori a non finire.non dovrete fare i return ogni volta che inserite una skin,lo dovrete fare solo sotto l' ultima skin,altrimenti farete un sacco di errori.
questa parte è sicuramente molto importante:
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid,posizione x, posizione y, posizione z);
SetPlayerCameraPos(playerid, posizione x, posizione y, posizione z);
SetPlayerCameraLookAt(posizione x,posizione y,posizione z);
e cosi settate il posto in cui scegliete il personaggio
poi ci sono alcuni eventi tipo
public OnPlayerConnect(playerid)
{
return 1;
}
e potete ad esempio dare il benvenuto cosi
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,"Benvenuto Nel server!buona permanenza!")
return 1;
}
ma pero se vogliamo darlo nell' evento di spawn dovrete fare cosi
public OnPlayerSpawn(playerid)
{
GameTextForPlayer(playerid,"~g~Benvenuto nel server ~w~MCP!~r~Buona Permanenza!", 5000, 3);
return 1;
}
i simboli ad esempio ~g~ servono per dare iun colore alla scritta
i colori che si possono dare alla scritta sono:
~r~ rosso
~g~ verde
~b~ blu
~w~ bianco
~y~ giallo
~n~ a capo
500 è il tempo per quanto il messaggio deve rimanere espresso in millisecondi(500ms=5s)
gli altri sono eventi normali,ma ora passiamo a cio che rendera veramente il nostro server bello:i comandi.
per inserire un comando basta mettere sotto
public OnPlayerCommandText(playerid, cmdtext[])
// Do something here
{
if (strcmp("/comando", cmdtext, true, 10) == 0)
{
conseguenza (o e);
return 1;
}
tipo per mettere il comando kill che si fa cosi
if(strcmp("/kill", cmdtext, true)==0)
{
SetPlayerHealth(playerid, 0);
return 1;
}
per settare invece il jetpack cm cmd è un po piu difficile,ma si fa
if (strcmp("/jetpack",cmdtext, true)== 0)
{
SetPlayerSpecialAction (playerid , SPECIAL_ACTION_USEJETPACK);
return 1;
}
e avrete messo il comando /jetpack
poi ci sono soltanto eventi,ma con degli fs che potete scaricare e modificare il vostro server sara + bello
ps:creare 1 fs(filerscripts) è abbastanza semplice,proprio come creare una gamemode