Hi,
weis wer wie man einen Tram Bot oder eine Tram wo man selbst fahren kann einfügen kann?!
Gruß
Hi,
weis wer wie man einen Tram Bot oder eine Tram wo man selbst fahren kann einfügen kann?!
Gruß
Wie meinst du das =? Selbst aufnehmen ?
Alles anzeigenInhalt:
Was sind Bots?
Was wird für die Erstellung von Bots benötigt?
1. Bots in Fahrzeugen
2. Bots zu Fuß
Was Sind Bots?
Bots (auch NPC oder KI genannt) sind "Spieler", die Aktionen ausführen, die zuvor aufgenommen wurden.
Nicht-Spieler-Charakter (Wikipedia)
Bot (Wikipedia)
Was wird für die Erstellung von Bots benötigt?
SAMP 0.3 Client
SAMP Server (egal ob Windows oder Linux)
Mindestens Basiswissen (!!)
Bots in Fahrzeugen
(Der Fahrzeugbot wird hier BulletLS genannt, ersetzt BulletLS einfach überall gegen euren Botnamen zB Taxi)
Starte den Homeserver
Logge dich als Rcon Admin ein (/rcon login PASSWORT)
Lade den Filterscript für das Aufnehmen von Bots (/rcon loadfs npc_record)
Setzte dich in ein Fahrzeug (Ich empfehle das Fahrzeug das Später von den Bot gefahren wird!)
Beginne die Aufnahme (/vrecord BulletLS) BulletLS steht hier für den Aufnahmenamen.
Fahre bzw fliege die Strecke die der Bot dann zurücklegen soll
Aufnahme beenden (/stoprecord)
Gta schließen oder minimieren
Sampserver schließen
BulletLS aus den Scriptfiles ordner ausschneiden und in den Ordner npcmodes/recordings einfügen
Nun öffnet ihr Pawno und klickt oben auf "File-->new"
In dieser neuen Datei wird nun dieser Code für den Bot benötigt:
PAWN Quelltext
#include "a_npc"//Baut die Include "a_npc" ein
#define RECORDING "BulletLS"// BulletLS gegen euren Aufnahmenamen ersetzen!
main()
{
}
public OnRecordingPlaybackEnd()
{
StartRecordingPlayback(1, RECORDING);//1 = Aufnahmetyp - Fahrzeug, Recording = Der oben definierte Aufnahmename
}
public OnNPCEnterVehicle(vehicleid, seatid)
{
StartRecordingPlayback(1, RECORDING);//1 = Aufnahmetyp - Fahrzeug, Recording = Der oben definierte Aufnahmename
}
public OnNPCExitVehicle()
{
StopRecordingPlayback();
}
Datei im Ordner "npcmodes" unter den gleichen Name speichern wie die Aufnahme hat. (Hier: BulletLS)
Datei Kompilieren (Wichtig! Erst NACH dem Speichern Kompilieren!)
Nun öffnet ihr den Gamemode in den der Bot eingebaut sein soll
Hier wird der Bot auf den Server verbunden, sobald der Server gestartet wird, das heißt, wir müssen den Bot unter OnGameModeInit verbinden lassen dazu wird folgendes gemacht:
PAWN Quelltext
1
2
ConnectNPC("BulletLS","BulletLS");//Das erste BulletLS steht für den Namen hier im Script, das 2te für den Namen der .rec Datei
car_BulletLS = CreateVehicle(541, 1000.0,1000.0, 1000.0, 0.0, 10, 1, -1);//car_BulletLS ist der Name des Autos mit dem der Bot fahrt, Die Positionen von CreateVehicle sind egal,
Nun müssen wir noch den Autonamen erstellen (oben im Script zu den anderen new's hinzufügen):
PAWN Quelltext
1
new car_BulletLS;
Jetzt muss der Bot die Rechte bekommen, das er verbinden darf:
PAWN Quelltext
public OnPlayerConnect(playerid)
{
//Hier Aufpassen! Der Bot wird hier eingeloggt
//In jeden Login&Register Script wird entweder in OnPlayerconnect oder erst später überprüft ob bereits ein Account mit diesen Namen besteht oder nicht,
//deswegen unbedingt die Bedingungen bei diesen Scripts anpassen!
if(IsPlayerNPC(playerid))
{
new botname[MAX_PLAYER_NAME];
GetPlayerName(playerid, botname, sizeof(botname));
if(!strcmp(botname, "BulletLS", true))
{
gPlayerLogged=1;//Der Bot ist gleich eingeloggt (Anpassen!)
}
}
......
So, jetzt muss der Bot noch spawnen:
PAWN Quelltext
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid))
{
new botname[MAX_PLAYER_NAME];
GetPlayerName(playerid, botname, sizeof(botname));
if(!strcmp(botname, "BulletLS", true))
{
pCarLic[playerid]=1;//Hier muss der Führerschein gegeben werden! (Anpassen!)
PutPlayerInVehicle(playerid, car_BulletLS, 0);//car_BulletLS = das Fahrzeug was wir oben erstellt haben, 0 = der Fahrersitz
}
}
......
Nicht vergessen - Login & Register System anpassen!!
Kompilieren
in der server.cfg die anzahl der bots (maxnpc) anpassen
Das war es auch schon....
Bots zu Fuß erstellen
(Dieser Bot wird hier "Zivi" genannt)
Starte den Homeserver
Logge dich als Rcon Admin ein (/rcon login PASSWORT)
Lade den Filterscript für das Aufnehmen von Bots (/rcon loadfs npc_record)
Starte jetzt die Aufnahme (/ofrecord Zivi) - Zivi steht für den Botnamen
Führe nun die Aktionen aus die der Bot machen soll (gehen, ......)
Sobald du fertig bist, beende die Aufnahme (/stoprecord)
Gta schließen oder minimieren
Sampserver schließen
"Zivi" aus den Scriptfiles ordner ausschneiden und in den Ordner npcmodes/recordings einfügen
Nun öffnet ihr Pawno und klickt oben auf "File-->new"
In dieser neuen Datei wird nun dieser Code für den Bot benötigt:
PAWN Quelltext
#include
#define RECORDING "Zivi"// Zivi gegen euren Aufnahmenamen ersetzen!
main()
{
}
public OnRecordingPlaybackEnd()
{
StartRecordingPlayback(2, RECORDING);//2 = Aufnahmetyp - Zu fuß, Recording = Der oben definierte Aufnahmename
}
public OnNPCExitVehicle()
{
StartRecordingPlayback(2, RECORDING);//2 = Aufnahmetyp - Zu fuß, Recording = Der oben definierte Aufnahmename
}
public OnNPCSpawn()
{
StartRecordingPlayback(2, RECORDING);//2 = Aufnahmetyp - Zu fuß, Recording = Der oben definierte Aufnahmename
}
Datei im Ordner "npcmodes" unter den gleichen Name speichern wie die Aufnahme hat. (Hier: Zivi)
Datei Kompilieren (Wichtig! Erst NACH dem Speichern Kompilieren!)
Nun öffnet ihr den Gamemode in den der Bot eingebaut sein soll
Hier
wird der Bot auf den Server verbunden, sobald der Server gestartet
wird, das heißt, wir müssen den Bot unter OnGameModeInit verbinden
lassen dazu wird folgendes gemacht:
PAWN Quelltext
1
ConnectNPC("Zivi","Zivi");//Das erste "Zivi" steht für den Namen hier im Script, das 2te für den Namen der .rec Datei
Jetzt muss der Bot die Rechte bekommen, das er verbinden darf:
PAWN Quelltext
public OnPlayerConnect(playerid)
{
//Hier Aufpassen! Der Bot wird hier eingeloggt
//In jeden Login&Register Script wird entweder in
OnPlayerconnect oder erst später überprüft ob bereits ein Account mit
diesen Namen besteht oder nicht,
//deswegen unbedingt die Bedingungen bei diesen Scripts anpassen!
if(IsPlayerNPC(playerid))
{
new botname[MAX_PLAYER_NAME];
GetPlayerName(playerid, botname, sizeof(botname));
if(!strcmp(botname, "Zivi", true))
{
gPlayerLogged=1;//Der Bot ist gleich eingeloggt (Anpassen!)
}
}
......
So, jetzt muss der Bot noch spawnen:
PAWN Quelltext
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid))
{
new botname[MAX_PLAYER_NAME];
GetPlayerName(playerid, botname, sizeof(botname));
if(!strcmp(botname, "Zivi", true))
{
//Hier den Bot sachen geben, wie Waffen oder Ähnliches
}
}
......
Nicht vergessen - Login & Register System anpassen
Kompilieren
in der server.cfg die anzahl der bots (maxnpc) anpassen
Fertig
Leider sind beim einfügen die Klammern verrutscht, bitte selbst wieder richtig einrücken
//Edit übersichtlicher
Ne Tram kannste auch so spawnen ...