Le Grimoire de Dolanor

Répondre
Partager Rechercher
Mais le fait de lancer le gui de nwnmain.exe avec le dup chargé en tant que tlk par defaut ne doit pas poser de probleme, non ?
Donc un joueur devrait pouvoir selectionner le bon serveur avec le dup chargé non ?
Car la je ne vois pas pourquoi on ne pourrait pas se deplacer dans le gui de nwmain.exe une fois le dup chargé.
Non aucun problème , pardon je ne suis pas très clair. Le programme marche, et l'astuce du module bidon avec juste la bonne description aussi. C'est juste que je préférerais ne pas avoir à distribuer des fichiers qui ne sont pas logiquement nécessaires, et rendre les choses aussi simples et rapides que possible pour le joueur et pour le concepteur.
je vous propose de recreer un nouveaux post, et d'y continuer cette , ma foi, fort interessante conversation... Le pb, c'est que ce post est en persistant... a propos des modification des scripts de sorts...


(PS : laissez moi un post en blanc dans votre nouveau topic, que je copie/colle les HS de celui ci dedans, pour que tout le monde puisse suivre...)

merci
Petit up pour demander a la communeauté et aussi ceux qui travaillent/participent avec moi (Solaufein, Delphinea)

Que pensez vous si j'inclus
*les composants de sorts en option activable ou desactivable avec une commande (voire une variable locale) (les composants incluent les focaliseurs)
*Les zone de magie morte/magie sauvage

Je me baserais sur le HCR pour ces scripts, mais j'ai deja parcouru les scripts de zone de magie morte/sauvage, et y'a 2-3 trucs a modifier qui sont faisable sous nwn et qui se rapprochent plus des regles. Et je souhaiterais meme changer le type de zone si c'est faisable (actuellement c'est un objet invisible avec un AOE placé dessus, je souhaiterais peut etre en faire une zone avec des trigger, mais je me suis pas assez penché dessus pour voir si c'est gerable comme ca).

Je demande maintenant avant de scripter d'autres sorts, sinon c'est pas la peine que je passe plein de temps, puis que je doive remodifier les sorts par la suite pour rajouter des lignes a differents endroits pour gerer l'un des 2 ajouts.

En tout cas, moi je suis pour cette implementation.

Les autres implémentations possibles qui interagiraient plus ou maoins dans le script des sorts selon mon estimation seraient :
*Le spellpool d'un mage de guilde (si qqn a la traduction de spellpool en francais, ca serait sympa de me l'indiquer =))
*incantation en cercle comme les mages rouges de Thay ou les Ethran
*avec un grand nombre de personne, on pourrait simuler de la Haute Magie elfique...(mais bon c tres rare, mais une fois le code du cercle fait, on peut se baser la dessus pour faire de la magie Elfique. Enfin...Si qqn a plus d'info sur la Haute magie elfique, qu'il me fasse signe ^^)
*Faire une gestion de Duel de Mages
*avec la gestion des composants de sorts, on pourrait rajouter le don qui permet de se passer des composants.
*faire la gestion d'un sort avec don de substitution d'energie, ou meme energy admixture (je ne sais pas ce que ca donne en francais ^^)
*gestion de la Shadow Weave (en francais ? Toile d'ombre ?)


Si vous avez d'autres idées, meme si elles vous semble inapplicable, faites en part. Je viens de regarder mes livres pour trouver les idées, mais il m'en echappe peut etre.
Je me base comme reference :
*les livres de base :
  • Manuel Du Joueur
  • Guide Du Maitre
  • Manuel Des Monstres
*Add On D&D
  • Tome And Blood
*Les livres des Royaumes Oubliés :
  • Monsters of Faerun
  • Lords of Darkness
  • Magic of Faerun
  • Forgotten Realms Campaign Settings

Si jamais y'a d'autres references a la magie dans D&D et dans les royaumes oubliés exprimez vous, je n'ai pas assez de sousous pour me payer les autre ouvrage, alors il me manque surement des idées ^^.

Par contre, je scripterais moins en nwscript les 2 prochaines semaines, cause : examens ^^.
Citation :
*les composants de sorts en option activable ou desactivable avec une commande (voire une variable locale) (les composants incluent les focaliseurs)
Selon moi, tu as deux façons de faire:

- Modifier chaque script de sort, afin de déterminer si le lanceur possède l'objet (mais là fait très gaffe, parce que ça sera valable pour les PNJ/Monstres/MD aussi si tu ne veilles pas à ajouter un GetIsPC )

- Changer complètement le système et ne permettre de lancer les sorts qu'à partir d'objets activables. (comme un livre de sorts par exemple).
Ce soir je me suis amusé à débuter une série de scripts pour livre de sort. Bien entendu rien n'est terminé, c'est juste un essai et des idées lancées, rien de définitif, mais jette un coup d'oeil si tu veux:

Code PHP:

//include pour les fonctions Array
#include "nw_o0_itemmaker"

//Fonction a placer en fin de sommeil
void MemorizeSpells(object oPC)
{
 
int nSpell;
 for(
nSpell 0nSpell 480nSpell++)
 {
  
int nNombreSort GetHasSpell(nSpelloPC);
  if(
nNombreSort 0)
  {
   
SetLocalArrayInt(oPC"Sort"nSpellnNombreSort);
   
int nDec;
   for(
nDec 1nDec nNombreSortnDec++)
   {
    
DecrementRemainingSpellUses(oPCnSpell);
   }
  }
 }
}

//OnActivated Livre de Sorts, bien entendu selon la classe,
//le TAG changera (livre de sort pour le mage, symbole sacré
//pour le prêtre, etc)
void OnActSpellBook(object oActivator)   //GetItemActivator();
{
  
object oItem GetItemActivated();
  if (
GetIsObjectValid(oItem) && GetTag(oItem) == "Spellbook" && GetIsPC(oActivator))
  {
    
AssignCommand(oActivatorActionStartConversation(oActivator"Spellbook"TRUE));
  }
}

//Starting Conditional du Dialogue du SpellBook, ici bien entendu
//il faudra ajouter l'identification du sort d'une autre façon que
//Sort1 par exemple, mais plutôt "Aide" :D
void StartSpellBook(object oPC//GetPCSpeaker() en suspend
{
 
int nListe;
 
int nSpell;
 for(
nSpell 0nSpell 480nSpell++)
 {
  
int nNombreSort GetLocalArrayInt(oPC"Sort"nSpell);
  if(
nNombreSort 0)
  {
   
nListe nListe++;
   
SetCustomToken(1000+nListe"Sort"+IntToString(nSpell));
   
SetCustomToken(2000+nListeIntToString(nNombreSort));
  }
 }
}

//Action du Dialogue du SpellBook, là rien de fait, 
//le plus dur sera de récupérer la valeur nSpell....
void CastSpell(object oPC//GetPCSpeaker() en suspend
{
 
//EventSpellCastAt(oPC, nSpell);

Mais c'est juste une idée, tu peux très bien, beaucoup plus simplement, ajouter le TAG du "Spellbook" comme ingrédient dans le lancement de tous les sorts, il suffirait donc au PJ/PNJ/Monstre/MD d'avoir l'objet dans son inventaire.
C'est sympa comme solution, mais bon perso, j'utilise bcp le menu radial pour lancer mes sorts, alors lancer un sort avec une boite de dialogue, c un peu lourd.
Et puis du coup, les macros, c a la poubelle

Si Bioware nous laisser faire nos menus radiaux tout seul, on fera un truc qui conserverait les macros et serait dans le meme genre. Mais la meme si c'est une bonne idée, y'a un desavantage certain aussi.
C'est une solution pour module "roleplay", si évidemment le module laisse une bonne place à la baston, c'est même pas la peine d'imaginer utiliser un dialogue pour lancer les sorts en combat; le temps que tu ouvres ton livre, tu es mort

Solution intermédiaire: modifier chaque script de sort afin de vérifier si le PNJ possède bien un "livre de sort" (ou tout autre objet nécessaire) avant que le sort ne se lance.

Le truc qui m'embête le plus dans tout ce système, c'est que le système de combat de Bioware est totalement hermétique du côté du PJ. Des évènements On_Player_SpellCast ou encore On_Player_Attack, etc.... ça nous simplifierait 10000000.... fois la vie
Citation :
Provient du message de Delphinea
Le truc qui m'embête le plus dans tout ce système, c'est que le système de combat de Bioware est totalement hermétique du côté du PJ. Des évènements On_Player_SpellCast ou encore On_Player_Attack, etc.... ça nous simplifierait 10000000.... fois la vie
J'ai une idée ^^
On fait pression !!

(oui et meme si ce ne sont pas des evenements juste pour le PJ, au moins qu'on puisse avoir les emme evenements que ceux des monstres mais sur le module, apres on peut gerer comme on veut (en faisant des if (getpc(object_self)) ou pas.) Et c plus pratique de mettre une mort typé, que de devoir changer manuellement les reference de chaque script de mort a chaque monstre.
Parce qu'un gars, si il a construit son module et que d'un coup il veut utiliser un script qu'il n'utilisais pas auparavant, ben vive la perte de temps a changer chaque reference de script )
vous faite une fonction include du genre:

void ConsumeSpellItem(string sRefre, int nNb , object oCaster = OBJECT_SELF);

comme ca, tu modifie une seule fois le script de composante...
Citation :
Provient du message de eMRaistlin
vous faite une fonction include du genre:

void ConsumeSpellItem(string sRefre, int nNb , object oCaster = OBJECT_SELF);

comme ca, tu modifie une seule fois le script de composante...
Oui et faut rajouter les lignes de code a chaque sort qui utilise un/plusieurs composants.
Donc c'est lourd.
Avec un evenement spellCast sur le module, ben ca se gererait bien mieux, en 1 x le code a marquer, au lieu de le marquer pour chaque sort.
Citation :
Provient du message de Dolanor
Oui et faut rajouter les lignes de code a chaque sort qui utilise un/plusieurs composants.
Donc c'est lourd.
Avec un evenement spellCast sur le module, ben ca se gererait bien mieux, en 1 x le code a marquer, au lieu de le marquer pour chaque sort.
mouai...


toute facon, tu serait obligé de faire un case pour chaque sort lancé...

entre nous, ca va presque aussi vite d'editer les sorts, en plus t'en profite pour mettre des trucs qui t'arrangent, ou tu corrige des erreurs bioware...
Citation :
Provient du message de eMRaistlin
mouai...


toute facon, tu serait obligé de faire un case pour chaque sort lancé...

entre nous, ca va presque aussi vite d'editer les sorts, en plus t'en profite pour mettre des trucs qui t'arrangent, ou tu corrige des erreurs bioware...
Oui, mais je prefere a ecrire un script rempli de case plutot que d'ouvrir un nombre enorme de script pour rajouter 3 ligne


Mais c vrai que ce n'est pas un mal de regarder les sorts bioware, quasiment chaque sort y'a une variable qui sert a rien ou une boucle inutile...C bien...
bon je vais arreter de cracher dans la soupe, car c'est quand meme grace a eux qu'on peut editer pas mal de chose (pas tout malheureusement par contre)
Mise à Mal et Guérison version D&D3.5 où "Wizards of the Coast Rocks !"

Ha les p'tits gars de WotC je les aime bien tout de même... On voit au moins qu'ils sont un minimum attentif à leur bébé (même s'il n'est toujours pas parfait ).

Au programme donc, je pense qu'il serait TRES judicieux d'adapter les sorts "Mise à mal" et "Guérison" dans NWN tels qu'ils sont décrits dans D&D3.5 !

Pourquoi ? parce que ces deux sorts ont maintenant une limite (ouf, les grands dracosires ou les avatars de dieux ne se font plus démonter par un simple "mise à mal" ) : Mise à Mal réduit à 1D4 pv tant que la cible n'a pas plus de 150 pv.... Au delà, la "mise à mal" n'inflige maximum que 150 dégâts d'énergie négative. De même, Guérison ne fait plus regagner "que" 150 points de vie maximum

Un ou des volontaires pour changer cela dans les scripts de sorts correspondants ?

P.S : Et en plus, cela fait une bonne raison pour remonter ce sujet
Tiens, voilà Harm...
Merci pour le lien.
Toutefois, le script final proposé est loin d'être fidèle à la version papier du sort en 3.5 :

1 ) Le scripteur a, pour une raison que j'ignore, inclut la possibilité que le sort soit utilisé avec le don de métamagie "Extension d'effet". Or, ce don ne peut normalement être utilisé que sur des sorts faisant un certain nombre de dés de dégâts. Dans le cas de mise à mal, ce ne sont pas des dés de dégâts mais une tranche de 10 dégât par niveau du prêtre (jusqu'à un maximum de 150). Le fait que ce ne soit pas des dés de dégâts a été fait sciemment, pour éviter de regro-billiser le sort à nouveau.

2 ) Le sort ne s'arrête pas à 150 dégâts, mais à 200 selon le script proposé (il a enlevé la barrière des 150 dégpâts pour scripter le fait que la mise à mal laisse au moins 1 pv à la cible).

Bref, au lieu d'avoir un sort qui fait normalement maximum 150 pts de dégâts, avec le script présent, le sort peut faire jusqu'à 300 dégâts, ce qui est encore beaucoup trop : on en revient au même point : 99% des aventuriers (tous à part les barbares optimisés en fait) se retrouvreront à 1 pv contre ce sort.

Pour information sur la manière dont fonctionne désormais ce sort en version 3.5, voici la description officielle :

---------------------------------------------------

Nom : Mise à mal
Ecole : Nécromancie
Niveau : Prêtre 6, Destruction 6
Composants : V, S
Temps d'incantation : 1 action
Portée : contact
Cible : créature touchée
Durée : instantanée
Jet de sauvegarde : Volonté, 1/2 dégâts
Résistance à la magie : oui

Description :
"Mise à mal" transmet une importante quantité d'énergie négative à la cible qui occasionne 10 points de dommage par niveau du jeteur du sort (jusqu'à un maximum de 150 points de dommage au niveau 15). Si la créature réussit son jet de sauvegarde, "Mise à mal" n'inflige que la moitié des dommages normaux mais ne peut être réduire le nombre de points de vie de la cible à moins de 1. Si ce sort est utilisé sur un mort-vivant, il agit comme le sort "Guérison" sur ce dernier.

Points importants sur les effets de ce sort mise à jour :
1 ) Contrairement à la façon dont il était scripté dans NWN, "Mise à mal" ne nécessite pas de Jet de toucher au contact (pas de TouchMeleeAttack), il touche automatiquement. Ceci est maintenant contrebalancé par le fait que la cible a droit à un jet de sauvegarde.
2 ) Désormais, "Mise à mal" PEUT tuer, si la cible ne réussit pas son jet de sauvegarde et qu'elle a moins de 150 points de vie.
3 ) Ce sort, comme dans sa version précédente (et contrairement à ce qu'ont voulu faire nos collègues américains ) ne peut s'utiliser avec aucun don de métamagie (du moins avec aucun de ceux intégrés à NWN).
Pour info, j'ai un peu perdu la motivation de scripter des sorts sous NWN, car j'ai été bloqué de nombreuse fois a cause du hard coded sans autre moyen que de ne rien changer car pas de bidouilles possibles.

Autre point, aujourd'hui ma GeForce 4 est partie a la SAV, donc pas de retour avant 1 mois, on retourne avec la vieille voodoo 3 de derriere les fagots, et ca ne marche pas...Mais alors pas du tout avec NWN Donc 2 raison pour ne pas faire grand chose (je ne peux meme lancer laurora, et encore moins tester dans le jeu les scripts)

Et troisieme raison je suis assez pris IRL. Mais si jamais des gens sont motiver pour continuer, je veux bien aider sur le forum, mais j'aurais du mal sans aurora sous les yeux.

Par contre j'ai un autre projet (pour pas que Sol se decourage ) mais pour le moment j'en parle pas, d'une parce que j'ai pas vraiment commencé, dautre part, parce que je ne peux aps vraiment commencer, et de trois, car je n'ai pas bcp de temps )
Salut Dolanor !
Pour le fait que tu sois moins dispo et/ou moins motivé, pas de soucis (en espérant que lorsque tu auras retrouvé ta carte graphique tu aies un regain de motivation ).
Sinon, question sur le long terme (c'est pas pour demain quoi ) : Serais-tu intéressé par faire partie du projet proposé dans le sujet suivant :
https://forums.jeuxonline.info/showthread.php?t=220571

(La question est d'ailleurs aussi valable pour EMRaistlin ).

Enfin, petite chose :
Après les sorts "Mise à Mal" et "Guérison" version 3.5, voici maintenant le tour de "Rapidité" qui a été aussi sacrément revu à la baisse :

Version D&D3 :
- (+1) attaque supplémentaire (au bonus maximum)
- (+4) en Classe d'Armure (de type "Esquive", donc cumulable avec d'autres bonus de ce type).
- Vitesse de déplacement : 150%

Version D&D3.5 :
- (+1) attaque supplémentaire (au bonus maximum)
- (+1) aux jets d'attaque
- (+1) en Classe d'Armure (de type "Esquive", donc cumulable avec d'autres bonus de ce type).
- (+1) aux jets de sauvegarde de type "Réflexe".
- Vitesse de déplacement : 150%
Si ça vous dit, j'ai rayon prismatique dans ma boîte à scripts :
http://nwvault.ign.com/Files/scripts...01046708.shtml

Ce n'est pas la version définitive j'ai oublié qu'un des rayons fait pétrification au lieu de juste immobilisation (ahh ce sort, c'est mon préféré^^).
je créé TOUTES les attaques disponibles dans Saint Seiya pour mon projet de module. je mettrai le résultat de mes travaux ici, cela pourra peut être en intéresser certains.

La technique est simple : de l'adaptation de sorts existants à la création totale. Les incantation seront en VO, et je vais essayer de reproduire certains effets spéciaux, mais là je suis pas pro de 3dstudio max donc ce n'est pas prioritaire pour le moment.
Citation :
Provient du message de Olblach
Si ça vous dit, j'ai rayon prismatique dans ma boîte à scripts :
http://nwvault.ign.com/Files/scripts...01046708.shtml

Ce n'est pas la version définitive j'ai oublié qu'un des rayons fait pétrification au lieu de juste immobilisation (ahh ce sort, c'est mon préféré^^).
Desolé a toi et eMR, mais j'avais mis ce projet en attente car manque de temps et de motivation face aux probleme du moteur de NWN.
Mais un de ces 4 je m'y remet, en attendant je mets a jour ce post la (renomme le moi en "Le Grimoire" eMR s'il te plait )
OKi. Hesite pas a poser de question ou faire des demandes...


Je te renomme ce post Le Grimoire, mais je vais laisser la balise SPELL dans les autres, pour simplifier les recherches (le moteur de recherche etant deja bancale, si en plus on lui met pas de termes clair... )
Citation :
Provient du message de eMRaistlin
OKi. Hesite pas a poser de question ou faire des demandes...


Je te renomme ce post Le Grimoire, mais je vais laisser la balise SPELL dans les autres, pour simplifier les recherches (le moteur de recherche etant deja bancale, si en plus on lui met pas de termes clair... )
Vivi, je met DD Spell devant chaque post de sorts.
Par contre, meme avec DD Spell dans le titre, pas moyen de trouver avec le moteur de recherche. : /

Merci pour le renommage du post (ca fait un peu bcp le "de Dolanor" car je ne suis pas seul sur le projets. Vous etes plusieurs a participer ponctuellement. Mais merci
Répondre

Connectés sur ce fil

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