Bei den 3D Games unterscheidet man zwischen Text und Voice Roleplay. Sprich zusätzlich zu den Funktionen des Spieles kommt das Text Roleplay.
Beiträge von Keine_Person
-
-
Möchte mal wissen was so in der Welt des Roleplays los ist. Ich kenne bisher WOW, Gothic und SAMP Projekte die diese Art Roleplay fördern. Bitte nur Text RP mit 3D Engine!
Und wenn jemand ein Forum oder eine Homepage kennt die eine Übersicht bietet wäre es auch nett.
Danke!
-
Grundliegende Dinge für Roleplay sind Systeme die einfach mit so vielen Freiheiten wie möglich das RP ermöglichen. Sprich keine Jobs,Crafting, Handel und Dienstleistungen unter Spielern. Keine Fraktionen sondern Schlüssel, Key Karten und andere Dinge die zB. ein PD ermöglichen. Wird auf jeden Fall mal eine neue Erfahrung als Scripter.
Weiterhin auf der Suche!
-
Hallo liebe Gemeinde!
Wir "Forgotten Life" ein SAMP Hardcore Roleplay Server sind auf der Suche nach einem Hauptscripter und auf Wunsch alleinigen Scripter. Entwickelt werden muss ein kleiner und überschaulicher Mode der eigenständiges Roleplay unterstützen soll. Sprich keine Verankerungen im Script wie Jobs, Fraktionen und so weiter sondern die Grundlagen für Roleplay und ein demnach freies Spielen ohne Grenzen.
Wir sind:
Taddl (Projektleiter)
==Banger(Gamemanager)
Dardy(Supporter)
Zu finden auf: >DISCORD<Du willst das deutsche SAMP Roleplay unterstützen und spielst auch gerne die Hardcore Variante?
Dann bist du bei uns genau richtig!Push: Wir suchen weiterhin!
-
stock Load_Character(playerid)
{
new Stunde, Minute, Sekunde,Load_Log[128],Float:x,Float:y,Float:z;
new file[128],string[128];
gettime(Stunde, Minute, Sekunde);
format(Load_Log,sizeof(Load_Log),"Load Account: %s %d %d %d",GetName(playerid),Stunde,Minute,Sekunde);
print(Load_Log);
//Account Load
format(file,sizeof(file),"/Accounts/%s.inc",GetName(playerid));
Info[playerid][pAdminLevel] = dini_Int(file,"Admin Level");
Info[playerid][RpPoints] = dini_Int(file,"Roleplay Points");
//Character Load
format(file,sizeof(file),"/Accounts/%s/%s.inc",GetName(playerid),CharacterName[playerid]);
Info[playerid][pMoney] = dini_Int(file,"Money");
for(new i = 0; i<MAX_PRODUCTS;i++)
{
if(Inventar[playerid][Inventar_Daten:i] > 0)
{
format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]);
Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);
}
}
gettime(Stunde, Minute, Sekunde);
format(Load_Log,sizeof(Load_Log),"%d %d %d Inventar 1 loaded!",Stunde,Minute,Sekunde);
print(Load_Log);
for(new i = 0; i<MAX_NORMALINVENTAR;i++)
{
if(NormalInventar[playerid][NormalInventar_Daten:i] > 0)
{
format(string,sizeof(string),"%s",NormalInventarName[NormalInventar_Name:i]);
NormalInventar[playerid][NormalInventar_Daten:i] = dini_Int(file,string);
}
}
gettime(Stunde, Minute, Sekunde);
format(Load_Log,sizeof(Load_Log),"%d %d %d Inventar 2 loaded!",Stunde,Minute,Sekunde);
print(Load_Log);
for(new i = 0; i<MAX_QUALI; i++)
{
if(IllegalInventar[playerid][Cannabis][i] > 0)
{
format(string,sizeof(string),"Cannabis Qualität: %d%:",i);
IllegalInventar[playerid][Cannabis][i] = dini_Float(file,string);
}
if(IllegalInventar[playerid][CrystalMeth][i] > 0)
{
format(string,sizeof(string),"Crystal Qualität: %d%:",i);
IllegalInventar[playerid][CrystalMeth][i] = dini_Float(file,string);
}
if(IllegalInventar[playerid][Heroin][i] > 0)
{
format(string,sizeof(string),"Heroin Qualität: %d%:",i);
IllegalInventar[playerid][Heroin][i] = dini_Float(file,string);
}
if(IllegalInventar[playerid][Kokain][i] > 0)
{
format(string,sizeof(string),"Kokain Qualität: %d%:",i);
IllegalInventar[playerid][Kokain][i] = dini_Float(file,string);
}
}
gettime(Stunde, Minute, Sekunde);
format(Load_Log,sizeof(Load_Log),"%d %d %d Inventar 3 loaded!",Stunde,Minute,Sekunde);
print(Load_Log);
x = dini_Float(file,"pX");
y = dini_Float(file,"pY");
z = dini_Float(file,"pZ");
SetPlayerPos(playerid,x,y,z);
gettime(Stunde, Minute, Sekunde);
SetCameraBehindPlayer(playerid);
format(Load_Log,sizeof(Load_Log),"%d %d %d Spawn: %s",Stunde,Minute,Sekunde,GetName(playerid));
print(Load_Log);
return 1;
}Irgendwie kommt 2 mal in der cmd Box:
format(Load_Log,sizeof(Load_Log),"Load Account: %s %d %d %d",GetName(playerid),Stunde,Minute,Sekunde);
print(Load_Log);Ansonsten nichts und geldaen wird auch nicht.
-
Ich suche einmal so viele Mülltonnen die so auf der Straße rumstehen und dann noch eine Art Drogen Baggy (ein kleines nicht die großen Packete) oder ein Objekt das man dazu umtexturieren kann oder so.
-
Das funzt schon mal. Jetzt habe ich das selbe Problem bei der Speicherung von Integers. Also selbe Zeile der Funktion und selbes Warning. Wenn ich jedoch vor NormalInventar..... ein Int: setze kommen neue Errors. Hier beides einmal:
Vorangeheweise 1:
enum NormalInventar_Name
{
OfficerMarke[128],
SatelietenHandy[128],
OfficerUniform[128]
}
enum NormalInventar_Daten
{
pMarkeOfficer,
pSateliteHandy,
pUniformOfficer
};new NormalInventarName[NormalInventar_Name];
new NormalInventar[MAX_PLAYERS][NormalInventar_Daten];for(new i = 0; i<MAX_NORMALINVENTAR;i++)
{
if(NormalInventar[playerid][NormalInventar_Daten:i] > 0)
{
format(string,sizeof(string),"%s",NormalInventarName[NormalInventar_Name:i]);
NormalInventar[playerid][NormalInventar_Daten:i] = dini_Float(file,string);
}
}
Warning: NormalInventar[playerid][NormalInventar_Daten:i] = dini_Float(file,string);
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(930) : warning 213: tag mismatchVorangehweise 2:
new Int:NormalInventar[MAX_PLAYERS][NormalInventar_Daten];
else if(!sscanf(params,"s[128]d",produkt,qualitaet,menge))
{
for(new i = 0; i<MAX_NORMALINVENTAR; i++)
{
if(!strcmp(produkt, NormalInventarName[NormalInventar_Name:i]) /*&& !isnull(produkt) && !isnull(InventarName[Inventar_Name:i])*/)
{
new string[128];
NormalInventar[playerid][NormalInventar_Daten:i] += menge;
format(string,sizeof(string),"Objekt %s erstellt: %d",NormalInventarName[NormalInventar_Name:i],menge);
SCM(playerid,blau,string);
return 1;
}Zeile: NormalInventar[playerid][NormalInventar_Daten:i] += menge;
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(351) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(927) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(930) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(993) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(993) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(1043) : warning 213: tag mismatch
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(1043) : warning 213: tag mismatchFalls benötigt kann ich auch die anderen Zeilen raussuchen.
-
Ne ich hab jetzt die mehrdimensionalen Enums entfernt und wollte sagen ich habe nur noch einfache drin. Das Ganze sieht jetzt so aus:
enum Inventar_Name
{
PolosChickenwings[128],
FreddysMargarithaPizza[128],
Sprunk[128],
}
enum Inventar_Daten
{
//Bedarf Inventar
Float:PolosChickenwings,
Float:FreddysMargarithaPizza,
Float:Sprunk,
};new Inventar[MAX_PLAYERS][Inventar_Daten];
new InventarName[Inventar_Name];for(new i = 0; i<MAX_PRODUCTS;i++)
{
if(Inventar[playerid][Inventar_Daten:i] > 0)
{
format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]);
Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);
}
}
Warning in: Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(923) : warning 213: tag mismatch
-
Aber wenn es gespeichert ist und eine neue Ladung durch das System durchgeführt wird sollte das doch nicht mehr klappen oder?
-
Würde nicht gehen weil die Werte alphabetisch sotiert werden sollen und das auch mit neu Erstellten. Jemand anderes eine Idee? @Jeffry vllt?
-
Wie sieht es mit 3 dimensionalen Werten aus? zB: Inventar[playerid][Droge][Qualität]
Speichert der die auch einfach so ab und müssen die Werte in einer Reihe sein die bleibt oder kann man auch dynamisch im Nachhinein die Reihenfolge verändern? -
Ich will nur per Enum Setzung Inventargegenstände erstellen die dann dynamisch genutzt/gespeichert/geladen werden sollen.
-
Wir suchen einen Spielleiter für das Foren RP (Ein RP Game im Forum).
Push
-
Edit: Verlesen... Alles kalr danke dir
Hab jetzt nur Floats drin im Enum, kann man das irgendwie anders schreiben damit es dynamisch ist?
-
Man soll halt .01 verkaufen können und das in 100 Qualitätststufen. Wie weit man mit dem Wert runtergeht bleibt dem Roleplay überlassen. Naja ich möchte jedenfalls ein solches System haben, aber irgendwie klappt es nicht.
-
Dann fehlen doch die 100 Slots?
-
enum IllegalInventar_Daten
{
//Illegales Inventar
Float:Cannabis[101],
Float:CrystalMeth[101],
Float:Heroin[101],
Float:Kokain[101],
};
new IllegalInventarRPPlus[RPPlus_Daten] =
{
3,//Cannabis
10,//CrystalMeth
10,//Heroin
5,//Kokain
};C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(106) : warning 227: more initiallers than enum fields
C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(107) : error 018: initialization data exceeds declared size -
Ich finde den Fehler nicht.
enum Inventar_Name{ PolosChickenwings[128], FreddysMargarithaPizza[128], Sprunk[128], Cannabis[128], CrystalMeth[128], Heroin[128], Kokain[128]}enum Inventar_Daten{ //Bedarf Inventar Float:PolosChickenwings, Float:FreddysMargarithaPizza, Float:Sprunk, //Illegales Inventar Float:Cannabis[101], Float:CrystalMeth[101], Float:Heroin[101], Float:Kokain[101],};new Inventar[MAX_PLAYERS][Inventar_Daten];new InventarName[Inventar_Name];
for(new i = 0; i<MAX_PRODUCTS;i++)
{
format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]);
Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string); }- C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(907) : warning 213: tag mismatch
Betroffenes Problem:
format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]); Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string); }[/pwn] -
Hab überall ein not vorgescriptet, aber jetzt macht das Script bei "/use" gar nichts. Sollte nicht das else abgerufen werden?
-
if(sscanf(params,"s[128]df",produkt,qualitaet,menge))
{
if(strcmp(produkt, InventarName[playerid][Cannabis]))
{
if(Inventar[playerid][Cannabis][qualitaet] >= menge)
{
Inventar[playerid][Cannabis][qualitaet] -= menge;
Info[playerid][RpPoints] += InventarRPPlus[Cannabis];
return 1;
}
else return SCM(playerid,rot,"Nicht genügend vorhanden!");
}
else if(strcmp(produkt, InventarName[playerid][CrystalMeth]))
{
if(Inventar[playerid][CrystalMeth][qualitaet] >= menge)
{
Inventar[playerid][CrystalMeth][qualitaet] -= menge;
Info[playerid][RpPoints] += InventarRPPlus[CrystalMeth];
return 1;
}
else return SCM(playerid,rot,"Nicht genügend vorhanden!");
}
else if(strcmp(produkt, InventarName[playerid][Heroin]))
{
if(Inventar[playerid][Heroin][qualitaet] >= menge)
{
Inventar[playerid][Heroin][qualitaet] -= menge;
Info[playerid][RpPoints] += InventarRPPlus[Heroin];
return 1;
}
else return SCM(playerid,rot,"Nicht genügend vorhanden!");
}
else if(strcmp(produkt, InventarName[playerid][Kokain]))
{
if(Inventar[playerid][Kokain][qualitaet] >= menge)
{
Inventar[playerid][Kokain][qualitaet] -= menge;
Info[playerid][RpPoints] += InventarRPPlus[Kokain];
return 1;
}
else return SCM(playerid,rot,"Nicht genügend vorhanden!");
}
else
{
SCM(playerid,rot,"Produkt nicht bekannt!");
return 1;
}}
else if(sscanf(params,"s[128]f",produkt,menge))
{
if(strcmp(produkt, InventarName[playerid][Cannabis])||(produkt, InventarName[playerid][CrystalMeth])||(produkt, InventarName[playerid][Heroin])||(produkt, InventarName[playerid][Kokain]))
{
SCM(playerid,rot,"Benutze: /use [Produkt] [Qualitätsstufe] [Menge: 0.0]");
return 1;
}
else
{
for(new i = 0; i<MAX_INVENTAR; i++)
{
if(strcmp(produkt, InventarName[playerid][Inventar_Name:i]) /*&& !isnull(produkt) && !isnull(InventarName[playerid][Inventar_Name:i])*/)
{
if(Inventar[playerid][Inventar_Daten:i] >= menge)
{
Inventar[playerid][Inventar_Daten:i] -= menge;
Info[playerid][RpPoints] += InventarRPPlus[RPPlus_Daten:i];
return 1;
}
else return SCM(playerid,rot,"Nicht genügend dabei!");
}
if(i == MAX_INVENTAR)
{
SCM(playerid,rot,"Produkt nicht bekannt!");
return 1;
}
}
}
}
else return SCM(playerid,rot,"Benutze: /use [Produkt] [Menge: 0.0]");
return 1;Irgendwie kommt immer "Produkt nicht bekannt" statt "Benutze use...."
Also wenn ich "/use" eintippe sollte doch das else abgerufen werden oder nicht?