Objets aléatoires

From Worms Knowledge Base

Jump to: navigation, search
Autres langues : English (en) • français (fr) • +/-

Les objets aléatoires de Worms 2, Worms Armageddon et Worms World Party sont les mines et les barils de pétrole.

Types d'objets

Il peut y avoir quatre valeurs : pas d'objet, mines uniquement, barils uniquement, ou bien les deux.

Nombre d'objets

Cette valeur n'existe que dans W:A. Vous pouvez définir le nombre d'objets qui vont apparaître, de 1 à 250. Pour avoir zéro objets, mettez tout simplement "pas d'objets" comme type.

Attention cependant, si vous dites, par exemple, qu'il y aura 250 objets, il n'y aura pas forcément 250 objets. En effet, il doit y avoir un écart minimal entre les objets, ainsi qu'entre les objets et les vers. Donc cette option ne représente que le nombre maximum d'objets, et donc pas le nombre exact

On ne peut pas choisir n'importe quelle valeur entre 1 et 250. Voici la liste des valeurs possibles :
Tous les entiers de 1 à 30, tous les multiples de 5 de 35 à 100, tous les multiples de 10 de 110 à 250.

Comment cette option est-elle sauvegardée dans un fichier WSC ?

Vieux schemes

Dans les schemes WWP et les schemes W:A v1 (et les vieux schemes W:A v2 avant la version 3.6.28.0), seuls le type d'objet est sauvegardé, ce qui fait qu'il y aura jusqu'à 8 objets sur le terrain.

Les valeurs sont : 0x00=Pas d'objet, 0x01=Mines, 0x02=Barils de pétrole, 0x05=Les deux.

Nouveaux schemes

Dans les nouveaux schemes de W:A, il y a également l'option nombre d'objets. Du coup, le type et le nombre d'objets sont deux valeurs stockées dans le même octet.

Types

Vous devez faire un modulo (%) par 4 avec cette valeur. Le modulo est en fait une opération qui prend le reste d'une division euclidienne.

  • Si vous obtenez 0, il n'y aura pas d'objets.
  • Si vous obtenez 1, il n'y aura que des mines.
  • Si vous obtenez 2, il n'y aura que des barils.
  • Si vous obtenez 3, il y aura des mines et des barils.

Par exemple

Vous avez la valeur "79".

79 % 4 = 3 (parce que 79 / 4 = 19 et il reste 3)

Donc il y aura les deux types d'objets dans ce scheme.

Prenons un autre exemple

Vous avez maintenant la valeur "246".

246 % 4 = 2 (parce que 246 / 4 = 61 et il reste 2)

Donc il n'y aura que des barils de pétrole dans ce scheme.

Nombre d'objets

Alors là, c'est un peu plus compliqué.

Tout d'abord, vous devrez réutiliser le résultat du modulo ci-dessus. On va l'appeler M.

Puis, en considérant que V est la valeur de l'octet, faites :

N = V - (8 + M)

Et enfin, divisez N par 4 pour obtenir la clé de l'array (E).

E = N / 4.

Ajustez E selon votre array. C'est-à-dire par exemple :

  • Vous pouvez faire un array dont la clé 0 vaut NULL. Dans ce cas, vous n'aurez pas besoin de changer le résultat, vous avez déjà la clé de l'array.
  • Vous pouvez faire un array normal (0 => 1, 1 => 2...). Il vous faudra dans ce cas enlever 1 à E.
  • Vous pouvez enfin faire un array avec les valeurs de 35 à 250 uniquement. Si E < 31, E équivaut déjà à la valeur (si E = 5 par exemple, alors C = 5 - si on considère que C est le nombre d'objets). Si E >= 31, alors enlevez 31 pour avoir la clé de la valeur dans l'array (par exemple, 32 - 31 = 1, et 1 est la deuxième entrée de l'array - un array commence à 0, 1 => 40 donc C = 40).

Pour rappel, les valeurs de l'array sont :

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220, 230, 240, 250.

Par exemple

On reprend la valeur "79". V = 79.

Comme on a vu plus haut, M = 3.

Donc :

N = 79 - (8 + 3)
N = 79 - 11
N = 68.

Ensuite, calculons E :

E = 68 / 4
E = 17.

Regardons ce qu'il se passe dans chacun des trois arrays de tout à l'heure :

  • Il suffit de prendre la clé E de l'array. Donc on prend la clé n°17, qui vaut 17. Donc C = 17.
  • 17 - 1 = 16. On va donc prendre la clé n°16 de l'array. Elle contient 17, donc C = 17.
  • 17 < 31, donc C = E = 17 tout simplement.

Donc il y aura 17 mines et barils.

Essayons avec l'autre exemple

V = 246.

Comme on a dit, M = 2.

Donc :

N = 246 - (8 + 2)
N = 246 - 10
N = 236.

Calculons E :

E = 236 / 4
E = 59.

Ensuite, pour les arrays :

  • Il suffit de prendre la clé E de l'array, donc la clé n°59. La clé n°59 contient la valeur 250. Donc C = 250.
  • 59 - 1 = 58. On va donc prendre la clé n°58 de l'array, qui contient la valeur 250. Donc C = 250.
  • 59 > 31, donc on doit faire 59 - 31, ce qui nous donne 28. La valeur de la clé n°28 est 250. Donc C = 250.

Il y aura donc 250 barils sur le terrain, et uniquement des barils.

Valeurs invalides de l'octet

Les valeurs suivantes sont transformées en 1 (8 mines) par le jeu :

3, 4, 6, 7, 8, 9, 10, 11, 248, 249, 250, 251, 252, 253, 254, 255.

Personal tools