PDA

Voir la version complète : Récupérer la réputation du joueur



BenIsra
17/01/2008, 00h31
Yop!

J'ai essayé de récupérer la réputation de joueur envers les autres races. Il est marqué dans le Handbook que la fonction add notoriety ne fonctionne pas dans X2... Mais ça semble être toujours le cas...

Je me plante dans le fonctionnement de cette fonction? Ou il y a un autre moyen de le faire?

phlt
17/01/2008, 09h09
Yop!

J'ai essayé de récupérer la réputation de joueur envers les autres races. Il est marqué dans le Handbook que la fonction add notoriety ne fonctionne pas dans X2... Mais ça semble être toujours le cas...

Je me plante dans le fonctionnement de cette fonction? Ou il y a un autre moyen de le faire?

Dans les Custom Starts de NH, j'ai utilisé la commande "add notoriety" pour modifier certaines conditions de départ et ça fonctionne.

.

Azz
17/01/2008, 10h45
Pour récupérer la notorieté, Je pense que tu voulais parler de GET NOTORIETY, Ben

elle fonctionne, à priori dans le sens :

$notoriete = get notoriety from race Pirates to race Player

(utilisé dans le script 'NH.boucle.pirates.amis')



pour ADD NOTORIETY, l'ordre aussi a de l'importance :
Pour ajouter de la notoriete au joueur :

Player add notoriety: race=Paranid value=20



et pas :

Paranid add notoriety: race=Player value=20

ce qui semble logique si on tient compte des ':' dans la phrase.

EDIT :
après avoir fureté de droite et gauche, je suis tout à coup moins sûr pour le sens 'Player add notoriety: race=Paranid' ????

Re-EDIT :
remis l'edit à sa place sinon c'etait incompréhensible...

BenIsra
17/01/2008, 20h38
Je me suis planté de fonction, j'avais pas pris la bonne fonction Get Notoriety... Quelle idée d'en mettre deux aussi...

Merci Azz, ça marche. :-)

Autre petite question, vous avez une correspondance entre les valeurs de la réputation, et les rangs? Ca m'aiderait pas mal pour la TEU.

Encore une chose qui m'intrigue. J'ai ajouté 1000 à la réputation du joueur auprès des Argon, et la réputation est passé de 0 à 12500... C'est un peu bizarre comme truc. Apparemment, ce n'est qu'une multiplication à appliquer, mais c'est quand même un peu perturbant...

phlt
17/01/2008, 21h30
Il existe bien sûr un tableau des rangs, mais il n'y a pas un clair rapport entre le nombre de points nécessaires pour acheter un M6 par exemple - 3333 - et la réputation que tu te donnes par script.

Si tu te scriptes 3333 points de réputation, tu vas te retrouver "héros de la fédération" ou pas loin.

C'est genre tatonnement pour trouver le bon rapport malheureuseement.

BenIsra
17/01/2008, 21h57
Ben apparamment si, il y a un rapport. De 12.5 exactement. Quand j'ajoute 1000 points en script, il ajoute 12500 points.
Donc si on ajoute 3333 points, il va obtenir 3333 * 12.5 = 41000 points et des brouettes.

L'important, c'est que je sache à combien se situent les différents rangs, le reste, ce n'est qu'une règle de trois.

Azz
17/01/2008, 22h17
Tu as ce thread qui explique le fonctionnement de la réputation, avec un tableau des rangs :

http://forum.egosoft.com/viewtopic.php?t=113058

BenIsra
17/01/2008, 22h24
Yep, je viens de tomber dessus, suite à des résultats folkloriques de test. En fait, c'est encore plus compliqué que ça...

Si la valeur ajoutée et la valeur actuelle de réputation sont de même signe, on ajoute 12.5 * la valeur donnée en script (ou on retire, si elles sont toutes deux négatives).

Mais si elles sont de signe contraire... Supposons que le joueur à une réputation de -10000, et qu'on ajoute 20 à sa réputation, on réduit sa réputation de 20 * 2.5 = 50%!
Elle passera donc de -10000 à -5000.
De la même façon, si on lui donne une valeur supérieure à 40, on remet à réputation à 0.
On a intérêt à checker fortement ces tests!

Ce qui m'arrange un peu en fait au vu de mes objectifs... Mais quand même... Franchement, les voies des développeurs sont impénétrables...

phlt
17/01/2008, 22h41
Il m'avait bien semblé que ça ne marchait pas pareil vers le haut ou vers le bas.

Un post t'attends concernant les rangs. :-)

.