Night.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / News: Quoi de neuf sur Oniromancie (...) / Sorties: Dread Mac Farlane - episode 6 / News: Quoi de neuf sur Oniromancie (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

278 connectés actuellement

29353955 visiteurs
depuis l'ouverture

469 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

RPG Maker VX

Kingdom Ultimate

Leo-Games

Alex d'Or

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [RESOLU] [RPGMaker] Apprendre le Ruby


Pheno - posté le 18/01/2016 à 14:35:02 (41 messages postés)

❤ 0

Domaine concerné: Code
Logiciel utilisé: RPGMaker
Salut tout le monde,

J'aime beaucoup passer du temps à la création (beaucoup plus qu'à jouer) et comme je ne m'y connais pas du tout en codage, je me demandais quel était le meilleur moyen d'apprendre à coder en Ruby.

Parce que le jeu est bien foutu, mais je n'ai JAMAIS réussi à faire fonctionner un script sans avoir d'erreur, et évidement je n'ai jamais su comment les corriger, les erreurs.
Donc je me suis dit qu'au lieu de chercher à corriger l'erreur sans savoir pourquoi elle était là ni comment elle a été corrigée, j'allais apprendre entièrement à coder. Comme ça je pourrai enfin utiliser des scripts, corriger les erreurs (et les comprendre) et encore mieux, créer des scripts moi même. (le système de combat par défaut et les animations d'attaque m'ont toujours piqué les yeux...).

Donc, ma demande : Où puis-je apprendre au mieux le Ruby (si vous avez un super site, ou même un livre du genre "Le Ruby pour les nuls", je prends.

Merci.


arttroy - posté le 18/01/2016 à 16:25:48 (2394 messages postés)

❤ 0

Just working

Pour apprendre à coder faut déjà savoir une chose, à chaque rpg maker son langage :

RGSS1 pour xp
RGSS2 pour vx
RGSS3 pour ace
et javascript ('fin un truc du genre je me suis pas trop penché dessus) pour mv

En premier le plus simple c'est d'observer comment sont fichus les scripts de base, si tu ne les comprends pas ça ne sert à rien de vouloir faire plus compliqué ^^.

En ce qui me concerne je suis surtout familier du RGSS3 mais à force de bidouiller je comprend aussi ceux de xp et même ceux de MV alors qu'à l'origine j'ai aucune connaissance en informatique...

Premier truc très important si tu ne gères pas bien l'anglais ben faut t'y mettre ^^. La plupart des scripts sont codés en anglais donc autant s'adapter ^^.

Deuxième chose, les lignes en vert dans les scripts sont des commentaires qui t'expliquent le fonctionnement des def ou à quoi servent les class.

Exemple :

Portion de code : Tout sélectionner

1
2
3
4
5
6
#==============================================================================
# ** Game_Temp
#------------------------------------------------------------------------------
#  This class handles temporary data that is not included with save data.
# The instance of this class is referenced by $game_temp.
#==============================================================================



Comme tu peux le voir, chaque ligne commence par un #, en mettant ce caractère au début d'une ligne elle devient un commentaire (couleur verte).

Ce truc tu vas l'utiliser TOUT le temps... C'est mieux de placer un # devant une ligne que de l'effacer si on veux tester quelque chose

Par exemple tu verras que les script sont souvent construits comme ça :
class
def initialize

end

def update

end

def terminate

end
end

ou dans le cas des Window_x
class Window_x
def start (ou initialize)

end

def refresh

end

def terminate

end
end

Ça c'est la base de toutes les class, les def qui suivent celles là servent à gérer le fonctionnement des divers éléments de la class.

Si tu regarde le nom des script dans la fenêtre de gauche tu verras ça :

Sprite_Base
Window_Base
Scene_Base

En étudiant ces class là tu verras que toutes les def qu'elles contiennent se retrouvent dans toutes les autres class de même catégorie.

Une fois que tu auras compris le fonctionnement de tout ça, tu devrais déjà être en mesure de t'attaquer à ça...

http://ruby-doc.org/

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Pheno - posté le 18/01/2016 à 17:14:24 (41 messages postés)

❤ 0

Merci bien pour ton explication bien détaillée.

J'avais déjà vu la base de la base, avec les def ... et end.
J'avais commencé à voir les nombres, aussi.

Merci pour le lien aussi.

Par contre j'ai absolument pas compris le RGSS, c'est encore un langage différent ? parce que je pensais que c'était simplement du "Ruby", qu'on tapait un code en langage Ruby et hop, ça roule... c'est quoi la différence ?
Le RGSS c'est un truc à ajouter au langage Ruby quand on fait un scrip sur RGPMaker ?


tonyryu - posté le 18/01/2016 à 17:17:54 (74 messages postés)

❤ 0

attention!! petit correctif, le RGSS n'est pas un langage, met un framework proposant de nombreuse classe Ruby (écrite en c++ embeded Ruby). Les scripts des projets RpgMaker utilisent les fonctions fournies par la RGSS. La version s'étant amélioré au fur et à mesure des rpgmaker

Du rpg maker XP au VxAce, le langage utilisé est le Ruby.

tu peux éventuellement faire un tour ici, mes tutos sont pas de premières jeunesses, mais peuvent être utile : http://www.tonyryudev.com/joomla3/index.php/menu-mes-developpements/menu-cours-ruby-rgss


Pheno - posté le 18/01/2016 à 17:38:46 (41 messages postés)

❤ 0

X)
J'ai toujours rien compris avec le RGSS. Il sert à quoi très exactement ? Pourquoi on a besoin de parler de RGSS quand on parle de Ruby ?
Il apporte quoi au Ruby ?


tonyryu - posté le 18/01/2016 à 17:50:34 (74 messages postés)

❤ 0

Le ruby est un langage de programmation, mais dans le cadre de RPGmaker, le langage de programmation standard ne permet pasde gérer la création d'une fenêtre Windows, d'afficher un pixel, des sprites, de jouer une musique, etc...

Donc, il a fallu créer une bibliothèque permettant de créer un système de jeu avec script Ruby : Ruby Game Scripting System (RGSS). Apportant plein de classe permettant de réaliser les actions décrites précédemment, mais que le langage Ruby seul ne permet pas.

Par exemple les classes Sprite, Window sont des classes proposées par le RGSS.


Pheno - posté le 18/01/2016 à 17:53:09 (41 messages postés)

❤ 0

Aaaah ok !
Donc, si je comprends tout à fait bien, il faut apporter quelques changements au langage Ruby de base pour que le script fonctionne sur RGPMaker, et ces changements c'est le RGSS ?
C'est bien ça ? J'ai compris ou toujours pas ?
Et si c'est ça, c'est quel genre de changement / modification, dans un script ?
Tu as un exemple ?

Je lirai tes tuto aussi, je viens de voir plus bas que tu as un tuto spécialement sur le RGSS, que j'ai pas vu tout de suite.


Cantarelle - posté le 18/01/2016 à 18:09:31 (1530 messages postés)

❤ 0

Makeuse tarée et Agent du FBI...

On va y aller point par point.

Ruby est un langage de programmation. C'est ce langage qui sert de base aux scripts des RPG Maker XP, VX et VX.ace.
(pour MV, c'est javascript, mais on s'en fout).

Les RGSS (1 pour XP, 2 pour VX et 3 pour VX.ace. Attention, les trois sont différents) ne sont que des bibliothèques (libraries en anglais). Pour être plus précis, il s'agit de classes et de méthodes contenus dans un paquet et qui te facilite le boulot en évitant de réécrire à chaque fois des parties que tu as besoin.
Il n'y a pas qu'avec RM que tu trouves cette notion de bibliothèque. Tu en as dans presque tous les langages (commençant par le C où tu as des bibliothèques comme NCurses, Python avec PyGame, Ruby avec le RGSS, mais aussi Gosu etc... bref, il y en a des centaines de bibliothèques dans chaque langage).


Pour donner un exemple un peu plus concret, quand tu écris :

print("helloworld"), tu fais appel à la bibliothèque standard de Ruby (ou ce que nous, on appelle verbeusement Ruby tout court). Ça t'écrit l'argument passé en paramètre (ici, helloworld) dans une boite de commande (ou directement dans une autre fenêtre sur RM, pour des raisons que je ne vais pas aborder).
Ça fonctionne avec et en dehors de RM.

Par contre, si tu écris :

print($actor_data[0].name) dans une boite de commande, il y a une erreur. $actor_data[0].name est dans RPG Maker uniquement.
Grossièrement, ça te fait :
$_actor_data[0] te renvoie l'acteur 0 (bref, ton premier héros de ta base de donnée)
Si tu regardes dans RM, tu as une classe qui s'appelle Actor.
Dans Ruby, tu n'as pas de classe qui s'appelle Actor. C'est à toi de la créer.


J'espère avoir été plus claire.



PS : bon, tony a répondu en même temps que moi...

Makeuse à la crosse de street-hockey. Livestream.


Pheno - posté le 18/01/2016 à 18:15:15 (41 messages postés)

❤ 0

Oui, c'est de plus en plus clair pour moi, en tout cas.

Quand on crée un nouveau script (disons une fenêtre différente de la bleue qu'on connait) il faut utiliser le script déjà dans RPGMaker (window) et on modifie avec du Ruby ?

Index du forum > Entraide > [RESOLU] [RPGMaker] Apprendre le Ruby

repondre up

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers