Erster Post upgedated.
Beiträge von Mo3
-
-
Erster Post aktualisiert
//EDIT: Und nochmal.
-
In gewissem Maße reagieren sie schon auf die Umgebung, zum Beispiel schiessen sie auf Leute in ihrer Umgebung (wenn der Befehl vorher gegeben wurde). Das gleiche gilt, wenn zum Beispiel jemand im Chat schreibt "Fuck", antworten sie mit bissigen Kommentaren. Außerdem geben sie selber manchmal zufällige Kommentare ab.
Das mit dem in Deckung gehen ist eine gute Idee, danke. Ich werde das gleich umsetzen.
-
Hi.
Hier ist ein Projekt, an dem ich schon 3 Tage gearbeitet habe. Es handelt sich um künstlich intelligente und agierende Bots.
http://www.youtube.com/watch?v=GQtoAI_S43w
Das System ist noch sehr unausgereift. Allerdings werde daran ich weiterarbeiten, weil es jedem Server sehr viel bringen kann.
//-----------------------------------------------------------------------------------------------------------------------
Update 2.November 21:00:Der Bot reagiert jetzt auf seine Umgebung, zum Beispiel wenn jemand auf ihn schiesst oder auf ihn zufährt.
http://www.youtube.com/watch?v=izREGfa_nH0
//-----------------------------------------------------------------------------------------------------------------------
Update 3.November 16:00:Der Bot besitzt jetzt einen gewissen Grad von Intelligenz, er läuft ganz allein autonom herum und reagiert auf mögliche Gefahren.
-
LOL!!!
-
-
-
-
-
Das Problem ist, du hast string schon definiert, bei OnGameModeInit. Du musst wahrscheinlich das string[MAX_PLAYER_NAME] auch löschen.
-
Was ist denn die Zeile 6770?
-
Nein
-
-
Ja. String definiert die Länge des Ausgabetextes, nichts anderes.
-
Lösch einfach das hier: new string[256];
Du hast bei OnGameModeInit ja schon new string[128]; definiert, also brauchst du´s nicht nochmal tun.
-
Auf Anhieb kann ich nichts erkennen, außer: Mach mal die unbenötigten Funktionen raus. Und: Was hat das Zeug bei OnPlayerUpdate zu suchen? Geht anders und viel besser.
-
Hey
Zum Betriebssystem.. ich hab mit Debian und Ubuntu beste Erfahrungen gemacht, einfach in der Handhabung und es gibt nicht allzuviele Probleme.
Zum Server an sich.. ein ungeschützer Root-Server (ohne Firewall etc.) ist ziemlich gefährlich, weil er einfach gekapert werden kann und dann als Spamschleuder dient oder sogar DDoS-Angriffe auf andere Server fährt. Wenn du nur einen SA:MP-Server und eine Website brauchst, würde ich dir raten, das Zeug zu mieten und nicht einen vServer. Könnte dir unter Umständen ziemlich viel Ärger ersparen. Meiner wurde schonmal von Hackern gekapert und als Spamschleuder missbraucht, das war nicht lustig. -
Jetzt hat das Compilen funktioniert, zwar mit einer Warnung, aber egal..
new getippt[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
if(getippt[playerid] = 1)
{
for(new i = 0;i < MAX_PLAYERS; i++)
{
ShowPlayerNameTagForPlayer(playerid, i, 1);
}
return 1;}
return 1;
}public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/achucknorris", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_GREEN, "You are now Chuck Norris - name tag disabled, skin changed, health 10000000, weapons given");
SetPlayerSkin(playerid, 294);
GivePlayerWeapon(playerid, 26, 100000);
GivePlayerWeapon(playerid, 34, 100000);
GivePlayerWeapon(playerid, 35, 100000);
GivePlayerWeapon(playerid, 4, 1);
SetPlayerHealth(playerid, 100000000.0);
getippt[playerid] = 1;
}
return 1;
}Funktioniert das nun so auch? Keiner sieht den Nametag mehr, auch nicht wenn man nachher erst connected?
-
new getippt[MAX_PLAYERS];public OnPlayerConnect(playerid)
{
if(getippt[playerid] = 1;)
{
for(new i = 0;i < MAX_PLAYERS; i++)
{
ShowPlayerNameTagForPlayer(playerid, i, 1);
}
return 1;}
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/achucknorris", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_GREEN, "You are now Chuck Norris - name tag disabled, skin changed, health 1000000, weapons given");
SetPlayerSkin(playerid, 294);
GivePlayerWeapon(playerid, 26, 100000);
GivePlayerWeapon(playerid, 34, 100000);
GivePlayerWeapon(playerid, 35, 100000);
GivePlayerWeapon(playerid, 4, 1);
SetPlayerHealth(playerid, 100000000.0);
getippt[playerid] = 1;
}
return 1;
}C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : warning 211: possibly unintended assignment
C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : error 001: expected token: ")", but found ";"
C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : error 036: empty statement
C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : fatal error 107: too many error messages on one line
C:\Dokumente und Einstellungen\Moritz\Desktop\WW3\chucknorris.pwn(18) : fatal error 107: too many error messages on one line -
Hallo,
ich bin gerade dabei so ein kleines Admin-Command zu scripten.
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/chucknorris", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_GREEN, "You are now Chuck Norris - name tag disabled, skin changed, health 1000000, weapons given");
SetPlayerSkin(playerid, 294);
GivePlayerWeapon(playerid, 26, 100000);
GivePlayerWeapon(playerid, 34, 100000);
GivePlayerWeapon(playerid, 35, 100000);
GivePlayerWeapon(playerid, 4, 1);
SetPlayerHealth(playerid, 100000000.0);
for(new i = 0;i < MAX_PLAYERS; i++)
{
ShowPlayerNameTagForPlayer(playerid, i, 1);
}
return 1;
}
return 0;
}Tja. Für die Player, die gerade online sind, verschwindet der Name-Tag dann auch. Wenn aber danach neue Player connecten, können diese den Namen wieder sehen. Wie kann man das lösen? Vielleicht irgendwie bei OnPlayerConnect?
Bin verwirrt. xD