Sujet n°12909
Posté par
TouzaxA le
8 Juil - 13:42 (2013)Titre :
Trainer IABonjour,
Je n'ai pas de problème technique à proprement parler, mais je le suis toujours posé la question par rapport au script gérant l'intelligence artificielle lors des combats.
Est-ce que quelqu'un pourrait avoir la gentillesse de m'expliquer la présence de codes divers et leur utilité ?
Merci beaucoup.
Posté par
Zohran le
8 Juil - 13:45 (2013)Oulà, là, je n'ai pas le niveau pour t'expliquer le fonctionnement, c'est trop complexe pour moi, je ne peux malheureusement pas t'aider à ce sujet, je n'oserais même pas essayer de toucher à ce script lol...Je vais demander à Yuri si elle peut te répondre
Posté par
TouzaxA le
8 Juil - 13:47 (2013)C'est par curiosité et j'aimerais faire quelques ajustements. ^^
Posté par
Zohran le
8 Juil - 13:47 (2013)Oui, ne t'inquiète pas, j'ai MP Yuri, il n'y a plus qu'à attendre qu'elle se connecte !
Posté par
TouzaxA le
8 Juil - 13:48 (2013)Je ne m'inquiétais pas. ^^"
Posté par
Nuri Yuri le
8 Juil - 14:37 (2013)Le trainner IA est une coquille vide... Le script regarde juste les effets d'une attaque puis augment ou diminue les taux de lancer celle-ci en fonction des informations des deux pokémons sur le terrain. Si ce taux est supérieur aux trois autres et surtout à 200 alors l'attaque ayant ce taux sera lancée.
Pour résumer c'est un gros Case When When...
Posté par
Zohran le
8 Juil - 14:46 (2013)...D'accord, je comprend mieux moi aussi, et dis moi, comment je peux apprendre à utiliser ce language:when 0x1D(je profite du topique pour me parfaire
)
Autre chose, est-ce dans ce script par exemple que l'on pourrait définir une condition pour que le dresseur échange son pokémon envoyé avec un autre?
Posté par
Pαlвσlѕку le
8 Juil - 14:56 (2013)0x1D c'est de l'hexadécimal.
Pour convertir en décimal, soit tu sais le faire toi-même et dans ce cas ta tête suffit.
Ou alors, la calculatrice Windows le fait très bien en mode programmation.
0x1D = 29 en décimal.
Posté par
Zohran le
8 Juil - 15:12 (2013)D'accord merci. Si j'avais envie de le faire avec ma tête, où puis-je apprendre ça?
Posté par
TouzaxA le
8 Juil - 15:32 (2013)
Posté par
Girakoth le
8 Juil - 15:57 (2013)Édit SSA : Chut faut conserver le secret
Posté par
TouzaxA le
8 Juil - 15:59 (2013)J'avais même pas vu. XD
A la vanne ! C'est screenné !!!!
Posté par
Nuri Yuri le
8 Juil - 17:45 (2013)Pour faire des flags mais Krosk s'en sert comme des identifiants donc en effet c'est pas très utile dans ce cas mais voici un cas où c'est utile :
Code: |
char* rby_string_value_ptr(RString* str) { if(((int)str&0xe)==0xe || ((int)str&0x1) || !str || (int)str==2 || (int)str==4 || (int)str==6) { rb_notimplement(); } return str->as.heap.ptr; } |
Posté par
TouzaxA le
8 Juil - 18:00 (2013)Je sais ce que sont les flags, mais j'ai quelques questions:
- Qu'est-ce que RString ?
- A quoi sert la condition ?
- Qu'est-ce que ça retourne ?
Posté par
Nuri Yuri le
8 Juil - 18:08 (2013)C'est du C++ là x)
RString c'est un String Ruby tel qu'il est en mémoire, la condition sert à vérifier si l'objet en question est ni un symbol, ni un fixnum, ni false, ni true, ni nil, ni undef.
Posté par
TouzaxA le
8 Juil - 18:21 (2013) Yuri a écrit: |
C'est du C++ là x) RString c'est un String Ruby tel qu'il est en mémoire, la condition sert à vérifier si l'objet en question est ni un symbol, ni un fixnum, ni false, ni true, ni nil, ni undef. |
Non, sans blagues ? XD
Tiens, t'avais envie de mettre des accolades, un type char, etc...
Bien sur que j'avais vu que c'était du C++.
Étant donné que je n'ai jamais utilisé ce genre de fonctions en C++ (bien que j'ai plus ou moins la théorie), c'était un peu flou tout de même.
Après, ces valeurs, je ne les connais pas. C'est du trop bas niveau. (Je suis sur que m'initier un peu à l'assembleur ne me ferait pas de mal)
Bon, et bien merci beaucoup pour ton aide, et ta leçon de programmation. Par contre, j'avais une question, tu as fait une école, ou tu es autodidacte ?
Posté par
Nuri Yuri le
8 Juil - 18:30 (2013)C'est des valeurs du ruby, seul ruby comprend que 2 c'est true et 4 nil x) (Sauf ceux qui s'intéresse à ça bien entendu :b)
Sinon, je suis autodidacte.
Posté par
TouzaxA le
8 Juil - 18:35 (2013)OK.
C'est vrai que Ruby est loin d'être mon langage de prédilection. ^^
Et tu as des sites particuliers où tu apprends ça, ou c'est en fouillant dans les sources de programmes ou de bibliothèques.
Posté par
Nuri Yuri le
8 Juil - 18:44 (2013)Aucuns sites, j'apprends en touchant à la chose. Il y a un site qui contenais des choses vraiment intéressantes mais il est en japonais donc pour ceux qui ne comprennent déjà pas le ruby ça va être dur de comprendre le reste x)
http://www.rubylife.jp/ini/J'y ai vu certaines subtilité avec les modules dessus il me semble.
Posté par
TouzaxA le
8 Juil - 19:15 (2013)C'est sans doute très bien, mais c'est pas totalement de l'Hiragana. Sinon, il aurait fallu que je m'y mette un peu plus, et ça aurait été une bonne raison pour me mettre sérieusement au japonais.
On verra lorsque je serais moins flemmard. XD
Posté par
Ezio le
8 Juil - 19:43 (2013) TouzaxA a écrit: |
OK. C'est vrai que Ruby est loin d'être mon langage de prédilection. ^^ Et tu as des sites particuliers où tu apprends ça, ou c'est en fouillant dans les sources de programmes ou de bibliothèques. |
Au pire il reste le bon vieux site du zero mais je suppose que tu as déjà regardé^^
Posté par
TouzaxA le
8 Juil - 19:46 (2013)Ouaip.
J'y ait un compte, et pas mal de messages à mon actif (pas loin de 800 XD), mais je n'aime pas la nouvelle direction du site, les admins sont devenus pour certains de vrais pourris, et ne parlons même pas de M. Nebra.
Alors, c'est une bonne idée au départ, mais à part certaines personnes sympas dans le staff, c'est zero. De toute façon, tout a basculé dès le départ de Calizero.
Posté par
raph59790 le
19 Juil - 00:33 (2013)Il y a n'y a pas moyen de contrôler l'IA via les commandes d'événements. Parce que j'aimerai que certains pokémon quand ils arrivent en jeu, utilise une attaque précise. Merci de votre aide car je suis une sous-quiche en programmation.
Posté par
TouzaxA le
20 Juil - 20:19 (2013)Se sont des bases de RMXP, ça.
Posté par
Pαlвσlѕку le
21 Juil - 00:30 (2013)Je crois surtout que c'est dans le manuel.