anpera.net
https://anpera.dyndns.org/phpbb3/

Erfahrungspunkte für jeden Post
https://anpera.dyndns.org/phpbb3/viewtopic.php?f=25&t=3906
Seite 1 von 1

Autor:  december [ Do 16 Aug, 2007 15:46 ]
Betreff des Beitrags:  Erfahrungspunkte für jeden Post

Hi,
mal wieder ich und schon komme ich zurück mit einer Frage.
Ich habe schon öfter gehört, dass einige LoGDs es so handhaben, dass die Chars pro Post auch ein paar Erfahrungspunkte bekommen.
Der geschriebene Post wird in Zeichen / Buchstaben aufgeteilt und pro drei Zeichen / Buchstaben bekommt der Char einen Erfahrungspunkt.

Ich würde das bei mir auch gerne einbauen, weiß nur nicht genau wie. Es sollte dann in etwa so aussehen, dass man pro 10 Zeichen einen Erfahrungspunkt bekommt.

Ich würde mich sehr über eure Hilfe freuen.

Hier die Source:
http://www.saturuusu-logd.de/source.php

December

Autor:  Pater Nix Nutzius [ Do 16 Aug, 2007 15:59 ]
Betreff des Beitrags: 

hmm Ich weiss nicht ob es dir weiter helfen wird..aber ich habe was da gefunden

http://anpera.homeip.net/forum/viewtopi ... ngs&t=3033

Autor:  december [ Do 16 Aug, 2007 16:07 ]
Betreff des Beitrags: 

Schon mal danke für deine Suche, aber das hilft mir nicht so sonderlich weiter.
Ich hab ja auch schon eingaubt, dass man pro Post ab 500 Zeichen 5 RP-Points kriegt.
In dem System, das du mir im Link geschickt hast, geht es darum, dass der Post abgeschickt wird und man dann eben Points (welche auch immer man da einsetzen möchte) kriegt, wenn der Post über 50 / 100 / etc. Zeichen lang ist.
Ich würde es aber gerne haben, dass wenn jemand z. B. einen Post von 100 Zeichen schreibt, er 10 Erfahrungspunkte bekommt. Schreibt man einen Post der nur 15 Buchstaben lang ist, bekommt man eben nur einen Erfahrungspunkt.
Mit diesem System tu ich mir einfach schwer und weiß nicht, wie ich das einbauen soll.
Das man pro Post ab so und so viel Zeichen eine Belohnung bekommt, das krieg ich hin, aber eben nicht, dass man pro Zeichen 10 einen Erfahrungspunkt bekommt und es unabhängig von der Postlänge ist.

December

Autor:  Kevz [ Do 16 Aug, 2007 16:35 ]
Betreff des Beitrags: 

Hab bereits via ICQ geholfen. :)
Lösung (bitte Anpassen):
[php]$bonus = 1;
$divide = 10;

$varStr = '12345678901234567890';
$varLength = round( (strlen($varStr) / $divide) );

If ( !is_float($varLength) )
$session['user']['expierence'] += ($varLength*$bonus);[/php]

Autor:  Rikkarda [ Do 16 Aug, 2007 16:52 ]
Betreff des Beitrags: 

december hat geschrieben:
Schon mal danke für deine Suche, aber das hilft mir nicht so sonderlich weiter.
Ich hab ja auch schon eingaubt, dass man pro Post ab 500 Zeichen 5 RP-Points kriegt.
In dem System, das du mir im Link geschickt hast, geht es darum, dass der Post abgeschickt wird und man dann eben Points (welche auch immer man da einsetzen möchte) kriegt, wenn der Post über 50 / 100 / etc. Zeichen lang ist.
Ich würde es aber gerne haben, dass wenn jemand z. B. einen Post von 100 Zeichen schreibt, er 10 Erfahrungspunkte bekommt. Schreibt man einen Post der nur 15 Buchstaben lang ist, bekommt man eben nur einen Erfahrungspunkt.
Mit diesem System tu ich mir einfach schwer und weiß nicht, wie ich das einbauen soll.
Das man pro Post ab so und so viel Zeichen eine Belohnung bekommt, das krieg ich hin, aber eben nicht, dass man pro Zeichen 10 einen Erfahrungspunkt bekommt und es unabhängig von der Postlänge ist.

December



irgendwer hat hier nen rpglevelsystem veröffentlicht.. such da mal nach vielleicht ist das da ähnlich umgesetzt worden

Autor:  Harthas [ Do 16 Aug, 2007 17:03 ]
Betreff des Beitrags: 

Anzahl der Buchstaben des Beitrages (strlen ermittelt) durch 10 dividieren.
Das Resultat auf die 10er Stelle abrunden (floor glaube ich)

[php]$session['user']['experience'] += floor(strlen($blubb)/10);[/php]

Autor:  Kevz [ Do 16 Aug, 2007 17:06 ]
Betreff des Beitrags: 

Achja, durch Abrunden des Ergebnisses verfälschst Du den eigentlichen Sinn, den sie wollte. Habe oben mal meine Version Editiert, nach einen kleinen Denkfehler. . .

Autor:  Eliwood [ Do 16 Aug, 2007 17:11 ]
Betreff des Beitrags: 

Kevz hat geschrieben:
Hab bereits via ICQ geholfen. :)
Lösung (bitte Anpassen):
[php]$bonus = 1;
$divide = 10;

$varStr = '12345678901234567890';
$varLength = ( strlen($varStr) / $divide );

If ( !is_float($varLength) )
$session['user']['expierence'] += ($varLength*$bonus);[/php]


Sobald die Anzahl zeichen ungerade ist, passiert nichts.

Korrektere Version:

[php]$expPerXChars = 1; # must be an integer
$XChars = 10; # must be an integer

$string = "Es war einmal vor langer, langer Zeit"; # recommened to be a string
$strlen = strlen($string); # must not change.

$session['user']['experience'] += floor($strlen/$XChars)*$expPerXChars; # [/php]

Autor:  Harthas [ Do 16 Aug, 2007 17:12 ]
Betreff des Beitrags: 

Find ich nicht.

Sie sagt ja, dass falls er nur 15 Zeichen verwendet hat, die Person dennoch nur 1 Punkt erhält.

Autor:  Kevz [ Do 16 Aug, 2007 17:13 ]
Betreff des Beitrags: 

Argh. . . habs grad erst selbst bemerkt. . .

Autor:  december [ Do 16 Aug, 2007 17:17 ]
Betreff des Beitrags: 

Ich bedanke mich ganz herzlich. Es funktioniert jetzt wunderbar und auch ungerade Zeichenanzahlen in einem Post werden belohnt.
Ich bedanke mich noch einmal ganz herzlich für die schnell Hilfe und auch für die Hilfe per ICQ.

December

EDIT
Jetzt hab ich das Problem, dass man bei mir im OCC-Chat auch Erfahrungspunkte bekommt.
Diesen Teil habe ich schon eingebaut, bei den RP-Points, damit man im OCC-Chat keine RP-Points absahnen kann:
$nopoints_sections = array('out'=>true);
if (!$nopoints_sections[''.$section.''] && strlen($commentary)>=500);
{
$session['user']['rppoints']+=5;
}

Wo muss ich also "!$nopoints_sections[''.$section.'']" einbauen, damit man im OCC-Chat keine Erfahrungspunkte mehr bekommt.
Muss ich da evtl. sogar was ganz anderes einfügen, denn beim hin und her probieren hat gar nichts geklappt.

Ich freue mich wie immer über Hilfe.

December

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/