Aller au contenu


Enlever La Magie Via Un Birthsign


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

#1 Artemis

Artemis

Posté 01 avril 2006 - 12:57

Y aurait il des scripts pour mettre la magie a zero avec un birthsign sans qu elle ne remonte?????

#2 Jack Bauer

Jack Bauer

    Les paroles s'envolent, les écrits restent...


Posté 01 avril 2006 - 13:15

je cherche a faire a peu prés la meme chose
tu as lu mon sujet : refaire le systeme de magie ?

#3 Squallynou

Squallynou

Posté 01 avril 2006 - 13:25

Regarde comment est fait le signe du voleur par exemple qui rajoute 10 points d'agilité permanents. Suffit de faire pareil mais avec une atténuation de magie.
*la mort est un réel manque de savoir vivre*

#4 Artemis

Artemis

Posté 01 avril 2006 - 13:43

ben non le souci est la voir un autre post, l attenuation dure tout le temps resultat tu te retoruve a 0 de magie.

Oui j ailu ton post sur la modficiationde magie, et c'est cool la jerefais toutes les armes et armures pour faire un truc un peu plus vrai, et la amgie faudrait chnager aussi je pense, je verrais bien moin de mage magie plus rare donc plus efficace.

Ajouter els sorts de donjons et dragons ca serait chouet aussi

#5 Squallynou

Squallynou

Posté 01 avril 2006 - 14:25

Citation

Y aurait il des scripts pour mettre la magie a zero avec un birthsign sans qu elle ne remonte?????

Citation

attenuation dure tout le temps resultat tu te retoruve a 0 de magie.

C'est ce que tu veux non ? Avoir sa barre de mana vide sans qu'elle ne remonte...
*la mort est un réel manque de savoir vivre*

#6 Artemis

Artemis

Posté 01 avril 2006 - 14:39

ouai mais la si tu veux via un birthsign interessant qui te procure un bon bonus mais qui t'enleve la amgie faire quand meme un mage tu ne pourras plus. le but c'est de se retoruver zero au debut  mais si jamais tu veux avoir quelques pouvoir  en magie en montant ton int tu peux en avoir un peu, sinon tun'auras jamais de magie, ca baissera toujours.

comprendo?

Modifié par Artemis, 01 avril 2006 - 14:40.


#7 Squallynou

Squallynou

Posté 01 avril 2006 - 16:28

Et bien tu passes par un script global qui détecte le signe du player et son niveau d'intelligence. Et en fonction de ces deux parametres tu enleves tout le mana ou le limite au nombre que tu veux...

Modifié par Squallynou, 01 avril 2006 - 16:29.

*la mort est un réel manque de savoir vivre*

#8 Artemis

Artemis

Posté 01 avril 2006 - 17:10

si quelqu'unpouvait me faire le script et me dire comment on l'integre :arrow:, suis pas du tout script...

see ya

#9 Squallynou

Squallynou

Posté 01 avril 2006 - 17:28

On est pas à carrefour :arrow:

Tu demandes de l'aides okay on t'en donne.
Tu demandes qu'on te fasse ton boulot, non.

Si tu as besoin d'aide pour ton script y'a pas de prob mais c'est à toi de le faire.

Allez pour t'aider je te file les fonctions que tu devras sans doute utiliser :

http://cs.elderscrol...p/ModActorValue
http://cs.elderscrol...p/SetActorValue
http://cs.elderscrol...PlayerBirthsign

Bon courage :huhu:
*la mort est un réel manque de savoir vivre*

#10 Artemis

Artemis

Posté 01 avril 2006 - 22:52

tu sais je fais les mods pour tout le monde  pas que pour moi maintenant suis nul en script donc jai beau avoir essayer je vais pas m'y pencher 3 semaines pour faire un truc qu'un gars ici peut faire en 3 mn.

Ca s'appelle l'entraide ...........

tes liens j ai beau les regarder 100 fois j'y arriverais pas......:rolleyes:

merci quand meme

Modifié par Artemis, 01 avril 2006 - 22:53.


#11 Squallynou

Squallynou

Posté 02 avril 2006 - 10:10

Non l'entraide c'est : "Hey les gars j'arrive pas à faire fonctionner tel ou tel truc, vous savez pas comment faire ?" Ou encore : "Arf mon script ne fonctionne pas, j'ai cherché pendant 3 heures mais je ne trouve pas mon erreur, si quelqu'un peut me dire ce qui cloche..."

Si tu veux que quelqu'un script pour toi, dans ce cas monte un petit groupe de développeur, tu postes un topic comme quoi tu recherches un scripteur pour t'aider dans tes mods.

Car imagine si tout le monde fait comme toi ça va vite être le bazard avec tous les nouveau "TESeurs" qui ont tous envie de faire un mod sans bosser un tant soit peu...

Donc pour les scripts je te fais un rapide tuto pour que tu comprennes :

Il ne faut pas voir les scripts comme quelque chose de compliqué, il s'agit d'un langage tout comme l'anglais ou le français, mais en BEAUCOUP BEAUCOUP plus simple. Donc si tu sais parler Français tu sauras scripter. D'autant que le language du TESCS est vraiment très simple (ce qui le rend compliqué lorsque l'on veut faire des trucs un peu tordu ^^, car il manque de trop de possibilités). Ainsi tu as juste à connaitre 7 règles de grammaires (alors qu'en Français y'en a des centaines !). A savoir :
- La règle du "script" : un script commence toujours par :
script nomDuScript
- La règle des "blocs de script" : Une partie de script est toujours comprise entre
Begin condition
et
End
- La règle des blocs de confition : Une bloc de condition (si, sinon si, sinon) commence toujours par
if (condition)
et se finit par
endif
. Entre deux tu mets toutes les instructions qui doivent s'effectuer SI la condition du If est remplie. S'il y a plusieurs conditions différentes on peut utiliser les "sinonsi" (elseif) et "sinon" (else), donc par exemple :
if ( Condition 1 )
  Afficher On est dans la condition 1
elseif ( Condition 2 )
  Afficher On est dans la condition 1
elseif ( Condition 3 )
  Afficher On est dans la condition 3
else
  Afficher On est ni dans condition 1 ni dans condition 2 ni dans condition 3
endif
- la règle des objets : Le TESCS2 repose sur une logique objet, ainsi pour qu'un objet (un PNJ, un coffre, une créature etc.) éxécute la fonction il suffit de faire : ObjetID.LaFonction. Donc pour que ce soit le joueur par exemple qui meurt, et bien il faut mettre : player.kill
- la règle des variables : il faut déclarer les variables avant de les utiliser. on a pas grand chose comme type possible :

Citation

short      -32 768 à 32 767 (entier court)
long       -2 147 483 648 à 2 147 483 647 (entier long)
float      1,18E-38 à 3,40E38 (precision = 7 digits) (nombre à virgule)
ref        un ObjetID (reférence sur un objet, comme un PNJ, un coffre etc.)
- la règle des commentaires : tout ce qui est précédé par ";" est un commentaire. Donc :
; blablabla tout ça c'est du comment
; if (condition1) est aussi un comment
if (condition2)
; mais le if (condition2) ci dessus ne l'est pas
- Enfin, la règle d'éxécution des scripts : ils sont éxécutés en boucle : à chaque frame, le script est éxécuté une fois (si les conditons d'éxécutions sont rempliers. Donc si tu fais :
script un_test
begin GameMode
messageBox "Mwaha tu peux plus jouer !", "Ok"
end
Celà va afficher la messageBox tout le temps et le joueur devra appuyer sur OK tout le temps sans avoir la possibilité de jouer.


Ensuite il suffit de trouver les fonctions qui réalisent ce que tu veux faire (ajouter de la vie, renommer une cell etc.) ou d'en créer une toi même (calcul de modulo, opérations de trigo etc.) si elles ne sont pas déjà implémentées.

Donc en résumé voici un script à mettre sur l'anneau qui sert à rien :
script mon_script_test
Begin OnActivate; ce qui est compris entre ce Begin et le End ne sera exécuté que si on active l'anneau (on le ramasse)
  short doOnce; déclaration d'une variable de type entier court car elle ne prendra que -1 (ou 0) ou 1
  short dayExec; idem
  short monthExec; idem
  short yearExec; idem
  float hourExec; l'heure qui est un float dans le jeu

  if ( doOnce != 1 ); Si doOnce est différente de 1 (elle est à 0 ou -1 par défaut à sa création.)
	MessageBox "C'est la première et dernière fois que cette partie s'éxécute", "ok"; on affiche ça
	set doOnce to 1; on affecte la valeur 1 à doOnce
	set hourExec to GameHour; hourExec récupère l'heure actuelle dans le jeu)
	set dayExec to GameDay; récupère le jour
	set monthExec to GameMonth;idem pour le mois
	set yearExec to GameYear;idem pour l'année
  endif

  Activate; on active l'anneau car le OnActivate annule l'activation donc si on ne mettait pas Activate ici on ne pourrait jamais le prendre
End

Begin OnDeath player; ce qui suit ne sera exécuté qu'à la mort du player
  MessageBox "Haha vous êtes morts ! Vous aviez pris l'anneau pour la première fois le %.0f %.0f %.0f à %.2f", dayExec, monthExec, yearExec, hourExec, "Snif"
; va afficher une boite de message avec le texte où les %.0f et %.2f seront remplacés dans l'ordre par les variables qui suivent le message. Le seul bouton sur lequel on pourra cliquer sera le bouton "snif"
End

Voilà tu as toutes les bases du scripting tu vois ce n'est pas du tout compliqué ;)
Dailleurs si tu veux essayer d'apprendre à scripter autrement qu'avec le TESCS2 (qui oblige à lancer Oblivion pour voir si le script fonctionne...) tu peux essayer d'apprendre le JavaScript ou le PHP. Ce sont deux langages très simples qui s'aprennent facilement. http://www.phpdebutant.org est très bien pour commencer. Sinon : http://developpez.com a de très bon tutos sur un peu tous les langages.

En conclusion, il faut donc lire et écrire un script comme si tu parlais. Par exemple pour toi c'est :

Si le joueur à le signe "MachinChose" alors il doit avoir 0 de magie. Mais s'il a plus de X point d'intelligence, alors on lui accorde Y points de magie en fonction de ce qu'il a et de X (par exemple Y = ("Pts Int Joeurs" - X ) * 3 + ("Level Joueur" * 2)

Ce qui se traduit en script par quelquechode de ce genre (pas testé je peux pas faire touner Obliv là ou je suis) :

Script Exemple
Begin GameMode
  short int
  short will
  short level
  short permit

  if ( GetIsPlayerBirthsign "MachinChose" == 1 )
	set int to player.GetActorValue intelligence
	set will to player.GetActorValue WillPower
	set level to player.getLevel	

	if ( int  > X )
	  if ( will > permit )
		 player.SetActorValue WillPower permit 
	  endif
	else
	  player.SetActorValue WillPower 0
	endif
  endif
end

Tu as tout pour en faire toi même maintenant. Evite de compter sur les autres pour les scripts pas trop compliqués et ce pour plusieurs raisons :
- personne ne pourra faire le script exactement comme tu l'imagines (bon sauf si c'est pour afficher un texte...)
- tu vas perdre un peu de temps au début en les faisant toi même car tu devras apprendre mais après ce sera beaucoup plus rapide que de trouver quelqu'un, lui expliquer, verifier ce qu'il a fait, lui dire ce qu'il ne va pas, lui réexpliquer etc.

Modifié par Squallynou, 02 avril 2006 - 10:14.

*la mort est un réel manque de savoir vivre*

#12 Rojhann

Rojhann

    Pelleteuse daedrique : Le devoir ma pelle.


Posté 02 avril 2006 - 10:19

bon je lock, j'aime pas du tout la tournure que ça prend...


Squallynou:  oui on est pas dans un supermarché, mais ceci est un forum d'aide où:

- si quelqu'un a besoin d'un script on le lui fait bénévolement
- si quelqu'un a besoin d'une correction d'un de ses scripts qui ne marche pas on lui corrige

c'est comme ça depuis longtemps et ça a permit à beaucoup de nous sortir de bons mods.

Là où l'on aidera plus c'est quelqu'un qui fait sytématiquement une demande, et non une ou deux.

Artemis:  cette rubrique n'est pas une machine à café où tu appuie sur un bouton et quelque chose sort, pour t'aider on a besoin :

- d'une demande polie et explicite

- d'effort de la part de celui qui demande



Je ne donne raison à aucun de vous deux. Artemis, pour ta demande reposte là comme il faut. ;)

Squallynou, soit un peu plus souple à l'avenir ;)


[edit]: long à l'écriture moi, Squallynou a posté entre-temps... Merci de l'effort déployé pour cette dernière réponse :D
Qui scribit, bis legit

Dicton Manchot: "Pelle qui rouille n'amasse pas plousse."

"Le bon sens est une affaire d'orientation."




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

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