[Script-outil: Apparences de créatures] Constantes et aspect correspondant

Répondre
Partager Rechercher
J'ouvre un fil sur le sujet parce qu'évidemment, je n'ai rien trouvé. Je cherchais à quoi ressemblaient certaines apparences qui ne me disaient rien en anglais ou que je n'avais jamais vues. Je me suis donc fait un outil que je vous donne. Ca ne changera pas votre vie, mais ça peut servir.
Au passage, je signale que les apparences de Rakhasa Ours et Loup n'existent que dans l'imaginaire des concepteurs des constantes.

Comment s'en servir ?

Créer une créature quelconque ayant pour tag "cobaye" et la placer à coté d'un levier par exemple.
Attacher ce script à ce levier utilisable, l'actionner et regarder sans parler à la créature, sinon, on vide sa pile d'action.

NOTE: imbriquer ces actions dans une boucle ne fonctionnera pas. Si vous désirez passer en revue toutes les apparences, je vous conseille d'écrire un script à placer dans le OHB de la créature.

Code PHP:


void main
()
{
    
// Script a mettre sur un OnUsed quelconque
    // LES APPARENCES A TESTER:


    // APPEARANCE_TYPE_CAT_CRAG_CAT
    //APPEARANCE_TYPE_RAKSHASA_BEAR_MALE
    //APPEARANCE_TYPE_RAKSHASA_WOLF_MALE
    //APPEARANCE_TYPE_SHIELD_GUARDIAN
    //APPEARANCE_TYPE_DEER_STAG
    //APPEARANCE_TYPE_DEER
    //APPEARANCE_TYPE_INVISIBLE_HUMAN_MALE

    
object oCobaye GetNearestObjectByTag("cobaye"GetLastUsedBy(), 1);
    
// object oPC = GetLastUsedBy();
    // oCobaye = oPC; // Option si on veut tester sur un PJ
    
SetLocalInt(oCobaye"apparence"GetAppearanceType(oCobaye));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_CAT_CRAG_CAT)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_CAT_CRAG_CAT"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_RAKSHASA_BEAR_MALE)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_RAKSHASA_BEAR_MALE"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_RAKSHASA_WOLF_MALE)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_RAKSHASA_WOLF_MALE"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_SHIELD_GUARDIAN)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_SHIELD_GUARDIAN"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_DEER_STAG)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_DEER_STAG"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_DEER)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_DEER"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,APPEARANCE_TYPE_INVISIBLE_HUMAN_MALE)));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un APPEARANCE_TYPE_INVISIBLE_HUMAN_MALE"TALKVOLUME_SHOUT));
    
AssignCommand(oCobayeActionWait(15.0));

    
AssignCommand(oCobaye,
        
ActionDoCommand(SetCreatureAppearanceType(oCobaye,GetLocalInt(oCobaye"apparence"))));
    
AssignCommand(oCobaye,
        
ActionSpeakString("Je suis un "IntToString(GetLocalInt(oCobaye"apparence")), TALKVOLUME_SHOUT));

une bonne idée, merci.

Au passage, Rahshasa ours et loup existe bien
Ils sont présent dans les ressources du jeu mais les lignes dans le 2da ont été supprimés. Je suppose que les modèles ne devaient pas plaire.
remonte vieux machin, j'ai besoin de toi en haut.

Note additionnelle:

Technique plus éprouvée pour gérer les apparences:

1) Trouver le numéro correspondant à l'apparence souhaitée. Pour ça, ouvrir \...\NWN\Sources\appearence.2da avec le blocnotes SANS retour à la ligne automatique
Le numéro en tête de ligne correspond à l'apparence décrite dans le restant de la ligne.

2) Tester avec le script outil donné ici en remplaçant les constantes APPEARENCE_TYPE_xxx par la valeur trouvée dans le appearence.2da

ATTENTION: avant toute modification d'apparence sur un PJ, il convient de faire une sauvegarde de l'apparence initiale pour pouvoir la rendre plus tard, sous peine de pourrir le personnage.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés