Aller au contenu


Meilleures Demeures - Better Homes

quête maison arme enchantement

  • Veuillez vous connecter pour répondre
36 réponses à ce sujet

#26 HawkFest

HawkFest

Posté 07 septembre 2013 - 19:04

Nouveautés et correctifs
  • Correction de la catégorie de "Crafting" (sGenericCraftKeywordName08) pour pouvoir confectionner l'ensemble des épées éthériques et leurs enchantements. La disponibilité de la confection de chaque épée dépend du niveau du joueur, niveau associé à l'épée (conditions sur les "constructible objects").La catégorie est nommée "ÉTHÉRIQUE"
  • Ajout d'une catégorie de "Crafting" (sGenericCraftKeywordName09) pour pouvoir confectionner la combinaison d'armure du Furotte avec ses enchantements attachés. Seules les armures du niveau 1 sont disponibles à la confection, les autres peuvent être achetées à Frédéric Foyatiers suite à l'achat du patio de Hauteflèche, ou à sa soeur Alyne quand elle se trouve au centre-ville de Douce Brise
    • EDIT : il y a un bug qui ne permet pas l'utilisation sGenericCraftKeywordName09, seule la "slot" libre 08 est utilisable : le moteur ignore la "slot" 09 et assigne la confection à la catégorie "Divers".
  • Script du  vestiaire/porte secrète de Hautefleche permettant l'accès à un passage secret sous les remparts de Solitude, et menant aux terrasses jouxtant ces remparts (Terrasses associées à l'achat du patio). Dépend de l'achat du patio et de l'autel d'enchantement : sans patio mais avec autel, ce n'est qu'un vestiaire partagé entre toutes les demeures; avec patio mais sans autel, ce n'est qu'une porte vers le passage secret (il faudra une clé pour ouvrir le panneau arrière); avec patio et autel, c'est les deux et un menu permet de sélectionner entre le passage ou le vestiaire, SI la porte est fermée. Si la porte est ouverte, alors le script ne fait que fermer la porte, en vérifiant que le panneau (second objet "Door" lié à la porte) soit fermé sinon on le ferme aussi.
Je continue sur les potions de conjuration de loup-garou, de canis lupus, sanguinarius, astringère et conflagraturum :
  • Le problème de blocage lors d'un passage d'une cellule à l'autre via une porte est réglé : bien que l'effet magique implique un archétype "Summon Creature", il fallait ajouter la faction CurrentFollowerFaction.
  • Les loups-garou conjurés se comportent comme il faut, mais pas les familiers conjurés par ces loups-garou : ils combattent de notre côté, mais quand il n'y a pas de combat ils restent sur place. Ce qui est normal car j'ai associé un script à l'effet de conjuration qui "PlaceAtMe" ces familiers, sans plus, selon un modèle vanille sur les spriggans, ce qui est une erreur. Deux solutions : soit que je fasse en sorte via script sur les loups-garou qu'en apparaissant ("event"), ils lancent un sort de conjuration; soit  qu'en cas de plus d'un famililer, je garde le script actuel, et complète la fonctionnalité via un autre script sur les familiers conjurables qui gère leur comportement; ou via des packages... C'est à explorer mais les solutions sont là.

Modifié par HawkFest, 06 octobre 2013 - 18:18.


#27 HawkFest

HawkFest

Posté 19 septembre 2013 - 03:41

Dernières nouveautés - Énorme "spoiler", mais c'est aussi afin de recueillir des avis ou des suggestions pour cette dernière phase de développement. Par exemple, est-ce que dans ce qui suit l'ambiance de Hauteflêche semble correcte (selon les goûts cela pourrait être trop sombre, bien que plus réaliste)? Des suggestions pour les coffres partagés (en dehors les gemmes, les ressources et les ingrédients, il y a aussi des coffres partagés qui acceptent tout avec un seul inventaire) : qu'aimeriez-vous d'autre à  distinguer ou "micro-manager" lors des rangements? ...?

La caisse traînant sous l'escalier de Doucebrise (avant l'achat du mobilier de salle à manger), peut être utilisée pour s'y assoir, disponible au PJ et aux PNJ. La lanterne est active (On/Off).
Image IPB


PNJ compagnons
  • Frédéric et Alyne Foyatiers ont leurs propre sorts (et cris pour Fred) : ces derniers n'ont pas d'effet sur le PJ, ses acolytes, les gardes en ville, ni tout autre allié durant les combats.
  • S'ils sont tués, après un peu plus d'une demi-journée, tout le contenu de leur corps est transféré dans leur cercueil respectif, l'un dans les catacombes de Solitude (Frédéric), l'autre dans celles de Doucebrise (Alyne). Afin de guider le joueur en ce sens, une lettre d'héritage apparait dans leur aire de repos respectif dès que le transfert est fait. Ainsi le PJ pourra récupérer tout objet précieux qu'il eut pu donner à l'un ou l'autre des Foyatiers, advenant qu'ils se fassent tuer et que le joueur en perde trace (ou que le PJ ne soit pas suffisamment fort pour tout récupérer sur les lieux du drame).
  • Amélioration du statu marchand d'Alyne : le jour elle a deux inventaires, l'un derrière DouceBrise, l'autre quand elle se promène près du centre-ville. Le soir, elle s'installe au centre-ville de Blancherive et offre divers inventaires dépendamment du stand qu'elle occupe (aléatoire, elle change de stand selon ce que son package sélectionne). Bien entendu, comme c'est le soir, avant de s'installer derrière un stand elle accroche sa lanterne afin de s'éclairer, puis la retire quand elle change de stand ou qu'elle va finir sa soirée au bar.

    À gauche, apothicaire (ingrédients, recettes, vêtements, bâtons, potions); au milieu, armurier (armures, nourriture, bijoux, ressources, armures du Furotte); à droite, vendeur d'armes (armes, parchemins, gemmes, épées éthériques)
    Image IPB....Image IPB....Image IPB

Lumières

Hauteflêche : les nuits sont de vraies nuit! Comme on peut le lire plus avant dans ce fil, je trouvais qu'en les demeures les nuits étaient irréalistes : trop claires comme s'il s'agissait d'ampoules électriques, ou que l'on soit près d'un pôle aux nuits ensoleillées, alors que tout l'éclairage est produit par des chandelles (du feu quoi), et que le ciel est celui d'une nuit équatoriale... Le premier mod en ce sens fut un script qui allume ou éteint les ampoules des fenêtre associées à la lumière du jour selon l'heure. Mais ceci n'élimine pas la légère lumière ambiante qui persiste même quand il n'y a aucune source lumineuse : j'ai donc ajouté à cela un nouveau modèle d'ambiance (présentement seulement à Hauteflêche), et suis relativement satisfait... À tout le moins je trouve ça plus "imprégné" qu'auparavant, et à mon humble avis c'est une amélioration (bien qu'il me reste à tester les paramètres de brume sur le modèle). Ici, pas besoin d'Image Space particulier (à éviter autant que possible), le résultat est assez probant.

Avant mobilier
Comparaison avec la vanille - À gauche la vanille (sans MOD) de jour; à droite avec MOD de jour, toutes lumières (activables) éteintes. Les images du MOD montrent un côté un peu plus lugubre, ce qui est réaliste considérant une demeure en pierre grise encore toute sale et sans lumière outre ses fenêtres...
Image IPB....Image IPB

Côté patio avec MOD , toutes lumières éteintes : à gauche de nuit; à droite de jour.
Image IPB....Image IPB

Mobilier acheté avec MOD - Dans ces images, les Roombounds et lumières paramétrées avec Portal Strict, permettent de bloquer le rayonnement lumineux à travers murs et planchers des lumières du sous-sol et du second étage (qui sont allumées lors des captures d'écran : la majorité sont des "Omnidirectional")
Côté patio de nuit : la première la nuit sans lumière avec le nouveau modèle d'ambiance; la seconde au crépuscule sans lumière; la troisième la nuit avec lumières et l'ancien modèle d'ambiance; la quatrième la nuit avec lumières et le nouveau modèle d'ambiance.
Image IPB....Image IPB....Image IPB....Image IPB

Image IPB....Image IPB

Salon de nuit : la première à gauche lumières éteintes; la seconde lumières allumées
Image IPB....Image IPB

Image IPB

Note 1 : Script versus Emittance

Au lieu d'un script pour gérer les lumières de fenêtre, peut-être aurais-je pu utiliser le paramètre Emittance/Extrerior light sur les références d'ampoules, ayant remarqué que certaines sélections offraient différentes émission de LUX selon l'heure de la journée (chose que j'ai laissé sur les ampoules manipulées par le script, ainsi on voit un changement graduel jusqu'à l'extinction totale). Cependant, je n'arrive pas à en trouver les objets dans le CK (!), contrairement au paramètre Interior Light. En cliquant-droit 2x sur la liste déroulante, au lieu d'ouvrir un dialogue montrant le Form de la sélection, un message du CK mentionne « trying to use dialog box template for unknown type "REGN" » : il semble  que le  CK n'offre pas d'interface pour ce type de record, et il n'y a pas d'entré "Region" dans l'Object Window... Si quelqu'un a un indice il serait fort bienvenu.


En attendant c'est un script qui gère le tout, sans heurt. Le léger "glitch" que je doive corriger (et qui serait réglé sans souci ni script si j'arrivais à éditer un exterior emittance) est sans grande incidence : si on dort dans Hauteflêche le même jour que son acquisition (et seulement en ce cas) jusqu'à la tranche d'heure suivante du mécanisme, alors les lumières ne sont pas ajustées par le script au réveil (par ex. au réveil en matinée il fait toujours nuit en la demeure). Par contre, après la tranche d'heure suivante, le "glitch" se corrige de lui-même ne se reproduit plus du tout.. Étrange, mais ce n'est pas grave : l'occurrence est de probabilité globalement basse devant tous les comportements possibles du PJ, et quand ça se produit ça se "répare" tout seul pour le prochain coup et les suivants.


EDIT 2013-09-22 : je viens de faire un autre test avec le même contexte ci-haut expliquant le léger "glitch", et ça ne s'est pas reproduit... "l'occurrence est de probabilité" non seulement "basse", mais rare.


EDIT 2 : je crois  qu'il est possible d'éliminer cette rareté pour en faire un impossibilité, reste à savoir comment. D'après moi cela se produit quand le changement de tranche d'heure devrait se faire alors que le PJ est en train de dormir. Serait-il possible que le scheduling d'un OnUpdateGameTime ne soit pas pris en compte par le moteur quand le PJ est dans un processus du marchand de sable?


EDIT 3 : Je croyais ne plus le voir, mais finalement il y a un pattern : que ce soit pour une partie avec le mod chargé avant ou après l'achat de la demeure, si la première visite du PJ se fait après 18:55 (l'heure programmée de tombée des lumières dans le script), alors le système n'est pas enclenché, il s'enclenche à la prochaine tranche d'heures.


Note 2 : Scripts d'automatisation des lumières jour/nuit, et des interrupteurs On/Off
Les scripts de cette page du site sur le Creation Kit sont incomplets et je les ai refait à zéro, pour palier à ce qui suit :
  • Le premier est erroné et limitatif:
    • il détecte mal les tranches d'heure, les expressions booléennes (if-then-else) sont incomplètes;
    • j'ai ajouté des propriétés pour gérer quelque dépendance à un marqueur parent d'objets (en l'occurrence celui de l'achat du patio), ce qui permet d'aiguiller sur les états de mise en fonction, en gardant le script "éteint" quand le marqueur n'est pas encore mis en fonction (sans écoute sur un Event et à l'état vide). Ceci permet d'économiser sur des OnUpdateGameTime inutiles.
  • Le second est très limité et génère des "glitch" :
    • pour le cas où il y réinitialisation de la cellule, il ne garanti pas la remise en fonction de l'état présent (éteint ou allumé).
    • il ne permet pas un rafraîchissement si l'objet auquel il est attaché dépend 'un marqueur d'objet (dans le nouveau script de ce mod «Demeures Améliorées», si le parent est mis hors fonction, alors le script éteint tout et sort de l'état dans lequel il était pour arrêter toute "écoute" d'event);
    • il ne permet pas de "Link Chains", au cas où plus d'une ampoule doivent être manipulées en même temps pour la même source lumineuse (ce qui pourrait aussi servir à contrôler toutes les ampoules d'une salle complète)
  • Ces deux scripts n'utilisent qu'une propriété pour la source lumineuse, via un marqueur (donc des objets "allumés" selon que le marqueur soit mis en fonction ou "éteints" dans le cas inverse). Le nouveau script offre plus de versatilité en manipulant deux propriétés ObjectReference. Ces derniers peuvent être :
    • soit les objets d'une seule source (ex. 2 chandeliers, l'un éteint l'autre allumé);
    • soit des marqueurs d'objets permettant de contrôler une source à plus d'un élément par état, ou encore de contrôler une cellule entière : non seulement les ampoules de cette dernière via le Link Chain, mais aussi toutes les sources visuelles, chacune pouvant être constituée d'autant d'objets que l'on veut pour les états "On" et "Off", avec une variété de possibilités car on parle d'un marqueur parent d'objets par état, et non d'un seul pour les deux états;
    • notons aussi que les ampoules peuvent être soit éléments d'un Link Chain sur l'objet auquel est attaché le script, soit associées à l'option d'un marqueur parent pour l'état "On" donné en propriété.
Scripts

Utilisation d'SKSE optionnelle - Deux contextes de script tirent profit d'SKSE, mais ce dernier n'est pas nécessaire pour que ces scripts fonctionnent, une alternative étant alors appliquée.
  • Scripts de gestion d'inventaire partagé pour les conteneurs sans categorie (acceptent tous les objets sans filtrer) : ces derniers tiennent le décompte des éléments pendant l'utilisation. Si SKSE n'est pas actif, alors ce décompte n'est pas fait mais le tout fonctionne quand même.
  • Script initialisant le GameSetting pour les sauts associé au Magic Effect des enchantements de Furotte, quand les bottes de furotte sont portées par le PJ : sans SKSE, il ne peut pas y avoir d'initialisation d'un GameSetting. Un message en ce sens apparait alors à la première occurrence.
Ouverture du code - J'ai terminé la tâche de faire en sorte que les scripts soient génériques et réutilisables. Ils ne dépendent d'aucune quête, ainsi ils peuvent être facilement intégrés à d'autres MOD via leurs propriétés, sans avoir à toucher au code. Certains offrent donc un nombre conséquent de propriétés à remplir pour un minimum de versatilité (ex. pour les inventaires via conteneurs, sans ou avec son, animations, FXShaders, les différents délais pour ces derniers, tableaux de Formlist et autres, tous les messages sont des "Message Form" et non du texte dans le code du script, etc.).

Optimisation - Plusieurs scripts qui comptaient sur des RegisterForSingleUpdateGameTime, furent recodés en réagissant plutôt à l'event OnCellAttach, notamment ceux concernant les décorations à dépendance multiple (objets qui dépendent des combinaisons entre les status de plus d'un marqueur parent). Cela supprime des processus inutiles sur OnUpdateGameTime quand on est hors de la demeure. Initialement je voulais que ces scripts puissent fonctionner autant à l'ext. qu'à l'int., prévoyant donc les cas où quelque changement de statu se produirait dans la même cellule, mais dans le cas des demeures c'est inutile car les achats de mobilier se font toujours hors de la cellule de la demeure.

Commentaires - Tous les scripts sont lourdement commentés, j'y explique certaines contraintes, la technique, etc. : mon but est de les clarifier au cas où d'autres modeurs voudraient les utiliser.

Partage - Après publication du MOD, je vais aussi publier des pages exposant les scripts et leur utilisation. Notamment pour la gestion d'inventaire avec les conteneurs, et particulièrement : la gestion des ressources qui est hyper-efficace (il fut testé avec plus de 1000-1500 éléments et c'est instantané - mon ordi est un vieux i7 950 avec 6 Go. RAM et une ATI HD6900 2 Go.).; l'illumination taxinomique qui est versatile et visuel (peut impliquer plusieurs coffres/activateurs et visuellement les manipuler, avec animations, sons et shaders en option, selon le nombre de catégories tout en gardant un niveau de performance acceptable), sa structure permettant des contextes variés, de n'en utiliser que les diverses fonctions, etc..

Modifié par HawkFest, 25 septembre 2013 - 20:59.


#28 MagikMike

MagikMike

    Crétins de bugs !


Posté 19 septembre 2013 - 18:29

Bravo !
PNOG
PNOS

On a toujours besoin d'un petit PNO chez soi (merci Neluche)

#29 HawkFest

HawkFest

Posté 20 septembre 2013 - 03:23

Merci MagikMike!

Je viens de corriger les liens de quelques images dans le post précédent, là c'est bon. Je suis en train de parfaire certaines choses. Par ex. la lettre d'héritage d'Alyne apparaît au milieu d'un meuble au lieu de sa surface bien que le CK ne montre pas ce problème : je crois qu'il y a un glitch du moteur quant aux collisions associées à des objets dont l'échelle est modifiée (scaling), il me reste à choisir une alternative. Ensuite, les livres, puis un gros nettoyage (mes "essais-erreurs" ayant laissé plusieurs objets que le mod n'utilise plus), puis ce sera prêt pour une première publication!

Finalisation des Navmesh de Solitude

Image IPB
Les PNJ peuvent accéder et occuper les remparts ainsi que les terrasses jouxtant les remparts, que ce soit avant ou après l'aménagement des terrasses. J'avais des problèmes avec les arrêtes définissant des marqueurs de saut (les plateformes contre les remparts), c'est réglé, les PNJ peuvent suivre le PJ des remparts aux terrasses (surtout avant achat). Après l'achat du mobilier de patio pour Hauteflêche, ll est possible de voir quelque PNJ qui n'est pas compagnon utiliser le passage entre Tamriel et Solitude sous les terrasses, car dès lors le moteur calcule ce raccourcit : en un tel cas il passe par les terrasses, puis aboutit dans Hauteflêche via le passage secret dans les remparts, pour en ressortir dans Solitude, ce qui donne un peu d'animation à la demeure et des visites impromptues... Je songe d'ailleurs à ajouter une procédure de Lock sur la porte et le panneau du passage secret, ce qui permettrait au PJ de barrer la porte afin que le moteur ne tienne plus compte de cette voie pour les autres PNJ du jeux, on verra.

Script de synchronisation des feux de mage entre les cellules de Tamriel et de Solitude : le PJ peut allumer/éteindre les feux du mage des terrasses à partir de Tamriel, sans devoir être dans Solitude : il faut bien viser!
Image IPB....Image IPB....Image IPB


Scripts et SKSE (ce qui suit fut aussi ajouté au message précédent)
Deux contextes de script tirent profit d'SKSE, mais ce dernier n'est pas nécessaire pour que ces scripts fonctionnent, une alternative étant alors appliquée.
  • Scripts de gestion d'inventaire partagé pour les conteneurs sans categorie (acceptent tous les objets sans filtrer) : ces derniers tiennent le décompte des éléments pendant l'utilisation. Si SKSE n'est pas actif, alors ce décompte n'est pas fait mais le tout fonctionne quand même.
  • Script initialisant le GameSetting pour les sauts associé au Magic Effect des enchantements de Furotte, quand les bottes de furotte sont portées par le PJ : sans SKSE, on ne peut pas initialiser un GameSetting. Un message d'avertissement en ce sens apparait à la première occurrence, mentionnant que les sauts ne peuvent pas être améliorés (pour rappel, modifier un GameSetting via le CK n'est pas suffisant, car cette modification ne persiste pas à travers les sauvegarde du joueur : il faut le réinitialiser à chaque chargement d'une sauvegarde et c'est aussi là qu'SKSE entre en jeux, en plus de chaque fois que l'on équipe les bottes).
Grilles de caractéristiques et paramètres :

Modifié par HawkFest, 23 septembre 2013 - 00:43.


#30 HawkFest

HawkFest

Posté 29 septembre 2013 - 22:46

Dernières nouveautés et correctifs

Tout comme Hautefleche, les nuits dans Doucebrise sont maintenant traitées et à mon humble avis plus réalistes

Les problèmes des Note 1 et 2 de l'avant dernier message sont réglés (concernant la bascule des lumières entre le jour et la nuit selon un horaire à deux états on-off, ou des interrupteurs réinitialisés lors de la visite suivante) :
  • Jour-nuit : au lieu d'un OnLoad à l'état "vide" (niveau premier ou ""), c'est un OnInit pour initialiser un paramètre, et un état par défaut qui a un OnLoad ne s'exécutant qu'une seule fois et aiguillant sur les états "off" ou "On", qui eux chargent un RegisterForSingleUpdateGameTime pour la prochaine tranche d'heure, après avoir vérifié (et initialisé au besoin) l'état en cours. Chaque bascule est un GotoState forçant un OnBeginState. L'intérêt du auto state, c'est de n'avoir qu'un seul "onLoad". J'ai remarqué que contrairement aux autres évènements (sauf OnInit), peu importe l'état dans lequel on se trouve, le OnLoad de l'état vide se fait toujours exécuter. Ceci permet donc aussi de ne pas avoir à ajouter la réaction d'un OnLoad dans chaque état.
  • Interrupteurs : plus simple encore, c'est un OnLoad dans un Auto State qui aiguille sur les états On ou Off, chacun de ces états traitant un évènement OnCellAttach qui lui est propre. Si l'objet auquel est attaché le script est mis hors fonction (typiquement un Trigger box via un parent ou via script), le OnCellAttach se charge de tout enlever et d'aiguiller le script à l'état vide ("") pour désactiver l'interrupteur et la source lumineuse. Je teste le cas d'une remise en fonction : en l'état actuel, je m'attends à ce que rien ne se produise car il n'y a plus de OnLoad  (qui est dans un auto state passé). Il faudra que je rétablisse le OnLoad à l'état vide, avec un booléen de contrôle genre bHasAlreadyBeenLoaded pour détecter si l'on doit effectuer une remise (ou première mise) en fonction : OnLoad ne se produit QUE lorsque le 3D du modèle est chargé, donc pas si le "Trigger" auquel est attaché le script est Disabled.
    • EDIT - c'est fait et ça fonctionne bien, avec une variante : plutôt qu'une condition dans le OnLoad racine, j'ai ajouté l'écoute d'un OnLoad avec rien dedans pour chaque état, ce qui contourne le OnLoad racine et élimine les processus inutiles liés à la manipulation d'un booléen de contrôle. Ainsi, le OnLoad racine est traité seulement lors d'une première mise en service ou d'une remise en service.
  • Plus de souci donc avec le contrôle des lumières (ce n'est pas la logique, simple en elle-même, mais la chaine événementielle qui faisait défaut), tout baigne! Bonus : 1- le script détecte s'il s'agit d'un horaire pour l'extérieur (le Off arrive avant le On) ou l'intérieur (le TimeOff arrive après le TimeOn), les blocs conditionnels se chargent du reste ; 2- le script est à deux marqueurs, l'un pour l'état "On" l'autre pour "Off", offrant une plus grande versatilité quant aux objets "enfant" qui dépendent de leur mise en fonction.
Ajout d'Emittance pour les lumières au-dessus des plafonds de dernier étage (2eme à Hauteflêche et Doucebrise), et dont les ampoules sont gardés hors du contrôle du script gérant les lumières jour-nuit (pas de dépendance parent ni à l'un des deux marqueurs, ni donc aussi à un seul selon la case "Opposite to parent"), ce qui donne un léger effet de reflet de Lune (ou plutôt de "lumière de nuit").

Correctifs des Navmesh pour l'accès aux terrasses via les remparts : lors des sauts, parfois les PNJ tentaient de sauter contre le mur, au lieu de la plateforme suivante. Ce n'est pas évident car on ne peut lier que deux arêtes constituant la bordure de la surface créée par les triangles, pas les arêtes internes déterminés par les triangles. Mais je crois être arrivé à quelque chose d'acceptable, à tout le moins les PNJ ne restent plus parfois bloqués.

Modification des enchantements des armures du Furotte : deux enchantements de base  pour chaque item au lieu de 6 distincts considérant 6 panoplies nivelées (en tout 8 enchantements multi-effets qui sont  récupérables, au lieu de 24). Ainsi la vitesse imbue par les enchantements des bottes (Randonnée de Furotte et Pas de Furotte) peut progresser avec le niveau d'enchantement (sinon il fallait qu'elle soit fixe, les 4eme 5eme et 6eme enchantements pouvant produire des vitesses incontrôlables et trop rapides pour le traitement visuel des cellules passées en éclair). Pour de moindres vitesses, utiliser de plus faibles gemmes, ou encore la première base d'enchantement au lieu de la base plus forte. Aussi, la première base permet de sauter une hauteur de 2,1 m., la seconde base 2,8 m. "Plus haut que ça tu meurs"... Pour plus de réalisme, la hauteur de chute sans heurt ne fut pas augmentée : « les sauts améliorés requièrent un certain contrôle, particulièrement pour les randonnées de trekking en montagne, et le fabriquant des bottes de Furotte n'endosse aucune responsabilité si l'utilisateur tient à croire qu'elles le rendent invulnérable ».

Sacs de couchage apparaissant lors de la  tombée de la nuit dans Hauteflêche (chambre du Huscarl), disponibles aux compagnons du UFO (ou autre mod permettant aux compagnons de "relaxer" là où le PJ le demande).

Modifié par HawkFest, 30 septembre 2013 - 16:22.


#31 HawkFest

HawkFest

Posté 06 octobre 2013 - 19:26

Épées et enchantements éthériques

Epées éthériques

Quatre épées éthériques sont données en cadeau au PJ quand il accède aux demeures après les avoir meublé, une par demeure. Elles sont nivelées, donc si le PJ accède à la zone de deux demeures potentielles dans la même fourchette de niveau, il obtiendra la même épée éthérique suite à l'achat des demeures et de leur mobilier correspondant. Note : les listes nivelées sont générées par le moteur quand le PJ accède à la zone où elles se trouvent (incluant les embranchements "enfant" de "Location"), et non pas suite à la première visite d'une cellule.

Image IPB    Image IPB    Image IPB    Image IPB    Image IPB

De gauche à droite : Épée d'énergie élémentale; épée d'énergie physique; épée d'énergie vitale; épée d'énergie éthérique; épée Séraphique (unique). Chaque type d'énergie a deux enchantements (à effets multiples) distincts.

En tout, 9 épées éthériques sont disponibles et peuvent être obtenues :
  • En les achetant à Alyne Foyatiers, seulement quand elle se trouve au centre-ville de Blancherive (en après-midi). Leur disponibilité dépend du niveau du PJ.
  • En les fabriquant à la Forgeciel ou à la nouvelle forge de Hauteflêche, dans la catégorie ÉTHÉRIQUE. leur disponibilité dépend du niveau du PJ. Note : il se peut que d'autres mods catégorisent leurs armures ou armes en utilisant la même "slot" 08. SI BetterHomes.esp est chargé avant un tel mod, les épées paraîtront dans la catégorie "Divers".
Dans chaque demeure, une meule éthérique permet de les améliorer.


Enchantements

En tout, 9 enchantements. Les épées peuvent être désenchantées à un autel d'enchantement, et leurs enchantements peuvent être imbus à n'importe quelle arme. Quatre familles, chacune ayant deux enchantements distincts. À cette liste s'ajoute aussi l'enchantement séraphique :

Image IPB    Image IPB    Image IPB    Image IPB

Image IPB    Image IPB    Image IPB    Image IPB

Image IPB

De gauche à droite (et de haut en bas) :
  • 1- Enchantements d'énergie élémentale
    • Nuisance éthérique
    • Punition éthérique
  • 2- Enchantements d'énergie physique
    • Colère éthérique
    • Vengeance éthérique
  • 3- Enchantements d'énergie vitale
    • Agressivité éthérique
    • Violence éthérique
  • 4- Enchantements d'énergie éthérique
    • Furie éthérique
    • Damnation
  • Enchantement séraphique

Modifié par HawkFest, 16 octobre 2013 - 18:29.


#32 MagikMike

MagikMike

    Crétins de bugs !


Posté 06 octobre 2013 - 20:44

elles ont de la gueule :good:
PNOG
PNOS

On a toujours besoin d'un petit PNO chez soi (merci Neluche)

#33 HawkFest

HawkFest

Posté 08 octobre 2013 - 18:59

Content qu'elles te plaisent MagikMike!

Ça été relativement long à tester en jeux : voulant utiliser des shaders particule et membranes vanille, car le choix est suffisant pour obtenir des combinaisons inédites, il a fallu faire une myriade de tests en jeux sur différentes combinaisons; Aussi quatre variantes furent créées à partir d'un particle shader vanille dans NifSkope (simple modif des couleurs via le NiPSysMeshEmitter), une par famille d'enchantement.

Utilisation :
  • Les PNJ compagnon peuvent les utiliser! Tous les effets s'appliquent, et on peut voir les effets visuels, tant sur les épées que sur les "Hit" (sur les ennemis).
  • Les effets éthériques "Hit" des enchantements ne s'appliquent pas aux attaques sur des PNJs alliés, compagnon, gardes, etc. Il en va de même pour les épées de Draugr transparentes constituant les épées éthériques initiales.
À venir:
En ce moment je suis en train d'ajuster les lumières des demeures : quand des rayons s'entrecroisent, il arrive que le rayonnement d'une lumière disparaisse d'une surface éclairée selon l'angle de vue. Je soupèse l'alternative d'avoir un script permettant de faire des dépendances entre les ampoules, si l'une s'allume éteindre l'autre. Par exemple, la nuit si j'allume les bougies d'une chambre au deuxième, alors il y a croisement avec la lumière de lune émise par une ampoule qui est au-dessus de la demeure, ce qui produit le glitch. Comme cette lumière de lune n'est plus nécessaire quand il y a de la lumière dans la chambre, autant l'éteindre, mais seulement quand j'allume la bougie ET que c'est la nuit - car elle n'est active que la nuit)..... En ce moment ce n'est pas très grave, de l'ordre d'un glitch, mais je crois que ça va tout de même valoir l'effort.

Modifié par HawkFest, 16 octobre 2013 - 18:18.


#34 m0neka

m0neka

Posté 15 octobre 2013 - 15:02

Ca a de la gueule!

#35 HawkFest

HawkFest

Posté 16 octobre 2013 - 22:55

Merci Moneka!

Il  faut préciser que :
  • En plus des Art Objects telles les flammèches autour des lames, certaines membrane shaders sont animées sur la surface de la lame. Ces enchantements sont applicables à n'importe quelle arme, incluant donc celles des MOD qui en offrent.
  • Je pars tout de même d'une base d'effets visuels existante, n'en changeant que les couleurs de rayonnement via Nifskope (paramètre NiPSysMeshEmitter), pour disposer de plus d'une combinaison visuellement variée.
  • Au lieu d'impartir mon temps pour créer de nouvelles textures, n'ayant pas le talent de vrais artistes ici présent (à tout le moins je ne me suis pas essayé sauf avec le mod "Provost of the Nine Divines" fait pour Oblivion - et encore les textures des cuirasses de croisé furent créées en collaboration avec un autre "modeur"), je me suis surtout attardé au paramétrage des effets et aux tests de validité en plus de tentatives de script. De plus, certaines combinaisons issues d'éléments "vanille" ne fonctionnent pas dépendamment du mesh associé à l'effet, souvent en raison de plusieurs autres paramètres (que la couleur) et qui ne sont visibles et modifiables que sous Nifskope.
Derniers correctifs et nouveautés

Correction d'une erreur qui se produit si on charge le mod après avoir acheté le mobilier ET avoir visité la demeure une première fois : on peut déplacer les statiques sans problème, ainsi que différents types de trigger et conteneurs issus de la version vanille (ex. les "racks" d'armes), quant à lui le "clutter" doit être rangé (par exemple les fruits qui traînent par terre une fois que telle table ou telle caisse fut déplacée), cependant les bibliothèques font problème : leur statique ainsi que les trigger sont déplacés, mais pas leurs conteneurs... Ce qui fait que bien que je puisse interagir de manière normale avec la bibliothèque de la chambre qui fut déplacée au premier étage, les livres qui étaient présents ainsi que tout livre ajouté se retrouve à l'ancien endroit vanille, au second étage! Via le CK :
  • Créer une nouvelle bibliothèque à la zone vestiaire du premier étage (au lieu de déplacer la vanille de la chambre à coucher).
  • Déplacer la biblio vanille de la c. à c. "hors champ", c'est à dire hors des Roombounds de la cellule de Hauteflêche.
  • Script d'initialisation (script de quête. Il sera récupéré pour un éventuel mod servant à désinstaller Better Homes) :
    • si le marqueur associé à la c.à.c. est en service ET que la biblio vanille de la c. à c. contient au moins 1 livre, déplacer tous les livres qui puissent y avoir été ajoutés avant mod vers la nouvelle bibliothèque;
    • mettre l'ancienne bibliothèque de la c. à c. hors-service (disable de tous ses constituants).
    • faire en sorte que le script soit "récupérable" pour l'initialisation d'autres éventuels éléments demandant même traitement (en mon cas j'ai deux autres biblio à traiter de la sorte) : boucle sur un tableau de Formlist multi-types fournis en propriété, chaque Formlist ayant pour éléments les constituants d'un "mobilier" (par ex. une biblio avec tous ses "sous-objets" constitutifs, un rack à armes, etc.)
Quand ce sera terminé, ce sera le temps d'un grand ménage! Je prévois une à deux bonnes GROSSES semaines incluant quelques ajouts de script. En hors-d’œuvre  : TES5Edit. Cependant, la toute première étape se fera via le CK pour défaire tout effacement involontaire d'objet vanille (lors de l'ouverture d'un fichier MOD, fenêtre "Data" bouton "Details" puis cliquer l'entête "Deleted"), ou autre objet marqué comme ayant été modifié alors qu'il ne le devrait pas. Note : TES5Edit offre un automatisme pour cette étape, il suffit d'appliquer un filtre "identical to Master" afin de les détecter facilement, ou encore d'appliquer le filtre de nettoyage. Cependant il ne détecte pas l'intention derrière les objets listés à cette étape du CK, j'utilise donc ce dernier avant de sauter dans TES5Edit. Et même pour la suiite, je crois que je vais faire toutes les corrections manuellement via le CK et ne me servir de TES5Edit qu'en mode de visualisation (dans le raccourci, faire suivre l'exécutable entre guillemets par -view).

Modifié par HawkFest, 27 octobre 2013 - 11:36.


#36 HawkFest

HawkFest

Posté 17 janvier 2014 - 20:37

Cata avant les fêtes, une panne de courant très momentanée, de quelques secondes sinon une seule, a zappé mon power supply branché à un APC deffectueux, ce qui a aussi détruit ma carte mère. Au retour du courant, il y eut comme un pic qui a tout zappé. Le bruit du power supply qui gémit de sa courte agonie, le temps d'un buzzzz strident et effrayant... Pénible, avec tous ces travaux sous attaque... En ce moment je récupère le tout sur un autre ordi., alors de retour très bientôt!

Modifié par HawkFest, 17 janvier 2014 - 20:39.


#37 HawkFest

HawkFest

Posté 14 juin 2016 - 15:15

Woahhhh pas possible, je l'ai retrouvé, totalement par hasard quand je nettoyais mes vieux disques (un backup oublié)... Maintenant, après m'être bâti une bombe de PC, je dois tester s'il fonctionne toujours considérant les moult patch du Creation kit, après tant de temps... Pfoaw!!!! mdr.... Aussi je viens d'entrer en contact avec Xavier, un musicien... À défaut de voix on va ajouter de la musique, on verra ce que ça donne (de toute façon ça ne ne m'ajouterait pas de boulot, mes scripts de traitement de musique fonctionnent au top). Et aussi des quêtes. Donc ce mod devient une collaboration. Plus de nouvelles bientôt, et testeurs demandé pour dans deux-trois semaines (je travail à plein temps donc)... Et aussi acteurs de voix (j'irai voir du côté de la confrérie).

En attendant, au moins j'avais laissé tous les liens actifs, dont sur Google Docs - Les plus importants côté technique, et j'espère que vous aurez su en profiter.. ;-)

Modifié par HawkFest, 14 juin 2016 - 15:23.






Aussi étiqueté avec quête, maison, arme, enchantement

0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)