Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Jeux: puie z / Jeux: Citymaime - Chapitre 1 / Jeux: Mer, îles et fous / News: Du neuf dans le making / News: Muma|Rope est disponible en (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

640 connectés actuellement

30729206 visiteurs
depuis l'ouverture

2823 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Le Comptoir Du clickeur

Hellsoft

Planète Glutko

Tous nos partenaires

Devenir
partenaire



Crafting program

Ajoute un menu et la possibilité de combiner des objets pour en former un nouveau. Les objets peuvent être configurés pour être visibles si le joueur possède la recette.

Script pour RPG Maker XP
Ecrit par Axe Man Deke
Publié par Ikurhaï (lui envoyer un message privé)
Signaler un script cassé

❤ 0

Auteur : Axe Man Deke
Logiciel : RPG Maker XP
Nombre de scripts : 2
Source RPG Community (non retrouvé)
Source la plus proche : http://www.creationasylum.net/index.php?showtopic=755

Bonjour le monde !

J'ai trouvé ce script sur RPG Community (qui, eux même, l'ont trouvé sur un autre site, le gros bordel quoi !), mais l'explication étant incomplète et sans démo, j'ai pensé que ça serait pas mal de l'avoir bien expliqué ! ^^

Installation
A placer au-dessus de Main.

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
#================================
# CRAFTING PROGRAM
#----------------------------------------------------------------
#-Scripté par Deke, Texte traduit par Ikurhaï.
#-yes_no window créer par Phsylomortis
#----------------------------------------------------------------
#================================
 
#updates to Game_Party class
 
class Game_Party
 
 attr_accessor       :recipes
 
 alias crafting_party_initialize initialize
 
 def initialize
   crafting_party_initialize
   @recipes=[]
 end
 
 #----------------------------------------------------------------------
 def know?(recipe, version = 1)
   unless recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   return $game_party.recipes.include?(recipe)
 end
 
#----------------------------------------------------------------------
 def learn_recipe(recipe , version = 1)
   unless recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   if recipe.is_a?(Game_Recipe)
     unless know?(recipe)
       @recipes.push(recipe)
     end
   end
 end
 
#----------------------------------------------------------------------
 def forget_recipe(recipe , version = 1)
   if !recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   if recipe.is_a?(Game_Recipe)
     for i in 0...@recipes.size
       if recipe == @recipes[i]
         index = i
         break
       end
     end
     if index != nil
       @recipes.delete(@recipes[index])
     end
   end
 end
 
#----------------------------------------------------------------------
 def get_recipe_from_master_list(item, version)
   index = nil
   for i in 0...$game_temp.recipe_list.size
     if item[0] == $game_temp.recipe_list[i].result and item[1] ==$game_temp.recipe_list[i].result_type
       version -= 1
       if version == 0
         index = i
         break
       end
     end
   end
   if index.is_a?(Integer)
     return ($game_temp.recipe_list[index])
   else
     return false
   end
 end
 
end # of Game_Party updates
 
#================================
class Game_Recipe
 
 attr_reader :ingredients
 attr_reader :quantities
 attr_reader :result
 attr_reader :result_type
 attr_reader :ingredient_types
 
#----------------------------------------------------------------------
 def initialize( ingredients, ingredient_types, quantities, result, result_type)
   @ingredients = ingredients
   @ingredient_types = ingredient_types
   @quantities = quantities
   @result = result
   @result_type = result_type
 end
 
#----------------------------------------------------------------------
 def name
   case @result_type
     when 0
       name = $data_items[@result].name
     when 1
       name = $data_armors[@result].name
     when 2
       name = $data_weapons[@result].name
   end
   return name
 end
 
#----------------------------------------------------------------------
 def have
   have_all = true
   for i in 0...@ingredients.size
     case @ingredient_types[i]
       when 0
         if $game_party.item_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
       when 1
         if $game_party.armor_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
       when 2
         if $game_party.weapon_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
     end
   end
   return have_all
 end
 
#----------------------------------------------------------------------
 def decrement
   for i in 0...@ingredients.size
     case @ingredient_types[i]
     when 0
       $game_party.lose_item(@ingredients[i], @quantities[i])
     when 1
       $game_party.lose_armor(@ingredients[i], @quantities[i])
     when 2
       $game_party.lose_weapon(@ingredients[i], @quantities[i])
     end
   end
 end
 
#----------------------------------------------------------------------
 def make
   if have
     case @result_type
     when 0
       $game_party.gain_item(@result, 1)
     when 1
       $game_party.gain_armor(@result, 1)
     when 2
       $game_party.gain_weapon(@result, 1)
     end
     decrement
   end
 end
 
#----------------------------------------------------------------------
 def == (recipe)
   if recipe.is_a?(Game_Recipe)
     equal = true
     if recipe.ingredients != self.ingredients
       equal = false
     end
     if recipe.ingredient_types != self.ingredient_types
       equal = false
     end
     if recipe.quantities != self.quantities
       equal = false
     end
     if recipe.result != self.result
       equal=false
     end
     if recipe.result_type != self.result_type
       equal = false
     end
   else
     equal = false
   end
   return equal
 end
 
end # of Game_Recipe class
 
#===================================
 
class Window_Craft < Window_Selectable
 
 #--------------------------------------------------------------------------
 def initialize
   super(0, 64, 240, 416)
   @column_max = 1
   refresh
   self.index = 0
 end
 
 #--------------------------------------------------------------------------
 def recipe
   return @data[self.index]
 end
 
 #--------------------------------------------------------------------------
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   for i in 0...$game_party.recipes.size
       @data.push($game_party.recipes[i])
   end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
     self.contents.font.size = $fontsize.is_a?(Integer) ? $fontsize : $defaultfontsize
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 
 #--------------------------------------------------------------------------
 def draw_item(index)
   recipe = @data[index]
   self.contents.font.color = recipe.have ? normal_color : disabled_color
   x = 16
   y = index * 32
   self.contents.draw_text(x , y, self.width-32, 32, recipe.name, 0)
 end
 
 #--------------------------------------------------------------------------
 def update_help
   current_recipe = recipe
   if current_recipe.is_a?(Game_Recipe)
   case current_recipe.result_type
     when 0
       description = $data_items[current_recipe.result].description
     when 1
       description = $data_armors[current_recipe.result].description
     when 2
       description = $data_weapons[current_recipe.result].description
     end
   else
     description = ""
   end
   @help_window.set_text(description)
   @help_window.update
 end
 
end # of Window_Craft
 
#=======================================
class Window_CraftResult < Window_Base
 
 #--------------------------------------------------------------------------
 def initialize
   super(240, 64, 400, 184)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   self.contents.font.size = 20
   @result = nil
   @type = nil
 end
 
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   case @type
     when 0
       item = $data_items[@result]
       if item.recover_hp_rate > item.recover_hp
         hp_string = "% de Soin :"
         hp_stat = item.recover_hp_rate
       else
         hp_string = "Soin:"
         hp_stat = item.recover_hp
       end
       if item.recover_sp_rate > item.recover_sp
         sp_string = "% de régénération :"
         sp_stat = item.recover_sp_rate
       else
         sp_string = "Régénération:"
         sp_stat = item.recover_sp
       end
       @strings = [hp_string, sp_string, "Déf phys:" , "Déf mag:", "Précision:", "Variance:"]
       @stats = [hp_stat, sp_stat, item. pdef_f, item.mdef_f, item.hit, item.variance,
                      $game_party.item_number(@result)]
       @bitmap = RPG::Cache.icon(item.icon_name)
     when 1
       item = $data_armors[@result]
       @strings = ["Déf phys:", "Déf mag:", "Esquive", "Force:", "Dextérité:",
                      "Agilité:", "Intelligence:"]
       @stats = [item.pdef, item.mdef, item.eva, item.str_plus, item.dex_plus,
                   item.agi_plus, item.int_plus, $game_party.armor_number(@result) ]
       @bitmap = RPG::Cache.icon(item.icon_name)
     when 2
       item = $data_weapons[@result]
       @strings =["Attaque:", "Déf phys:", "Déf mag:", "Force:", "Dextérité:",
                   "Agilité:", "Intelligence:"]
       @stats = [item.atk, item.pdef, item.mdef, item.str_plus, item.dex_plus,
                   item.agi_plus, item.int_plus, $game_party.weapon_number(@result) ]
       @bitmap = RPG::Cache.icon(item.icon_name)
   end
   for i in 0...@strings.size
     x = i%2 * 184
     y = i /2 *28 +32
     self.contents.font.color = normal_color
     self.contents.draw_text(x,y,100, 28,@strings[i])
     self.contents.font.color = system_color
     self.contents.draw_text(x + 110, y, 45, 28, @stats[i].to_s)
   end
   self.contents.blt(0, 0, @bitmap, Rect.new(0, 0, 24, 24), 255)
   self.contents.font.color= normal_color
   self.contents.draw_text(40, 0, 300, 28, "Déjà en possesion:")
   self.contents.font.color = system_color
   count = @stats[@stats.size - 1].to_s
   self.contents.draw_text(294, 0, 45, 28, count )
 end
   
#----------------------------------------------------------------------
 def set_result(result , type)
   @result = result
   @type = type
   refresh
 end
 
end #of Window_CraftResult
 
#=======================================
class Window_CraftIngredients < Window_Base
 
 #--------------------------------------------------------------------------
 def initialize
   super(240, 248, 400, 232)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   self.contents.font.size = 20
   @ingredients = []
   @types = []
   @quantities = []
   @item = nil
   @count = 0
 end
 
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   for i in 0...@ingredients.size
     case @types[i]
     when 0
       @item = $data_items[@ingredients[i]]
       @count = $game_party.item_number(@ingredients[i])
     when 1
       @item = $data_armors[@ingredients[i]]
       @count = $game_party.armor_number(@ingredients[i])
     when 2
       @item = $data_weapons[@ingredients[i]]
       @count = $game_party.weapon_number(@ingredients[i])
     end
     y = i *26
     self.contents.blt(0, y, RPG::Cache.icon(@item.icon_name), Rect.new(0, 0, 24, 24), 255)
     self.contents.font.color = @count >= @quantities[i] ? normal_color : disabled_color
     self.contents.draw_text(30, y, 280, 28, @item.name)
     self.contents.draw_text(300, y, 45, 28, @quantities[i].to_s)
     self.contents.font.color = system_color
     self.contents.draw_text(245, y, 45, 28, @count.to_s )    
   end
 end
     
 #--------------------------------------------------------------------------
 def set_ingredients(ingredients , types, quantities)
   @ingredients = ingredients
   @types = types
   @quantities = quantities
   refresh
 end
 
end # of Window_CraftIngredients
 
#======================================
class Scene_Craft
 
 #--------------------------------------------------------------------------
 def initialize(craft_index=0, return_scene = "menu")
   @craft_index=craft_index
   @return_scene = return_scene
 end
 
 #--------------------------------------------------------------------------
 def main
   @craft_window = Window_Craft.new
   @craft_window.index=@craft_index
   @confirm_window = Window_Base.new(120, 188, 400, 64)
   @confirm_window.contents = Bitmap.new(368, 32)
   @confirm_window.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   @confirm_window.contents.font.size = $fontsize.is_a?(Integer) ? $fontsize : $defaultfontsize
   @help_window = Window_Help.new
   @craft_window.help_window = @help_window
   @result_window=Window_CraftResult.new
   @ingredients_window=Window_CraftIngredients.new
   @yes_no_window = Window_Command.new(100, ["Oui", "Non"])
   @confirm_window.visible = false
   @confirm_window.z = 1500
   @yes_no_window.visible = false
   @yes_no_window.active = false
   @yes_no_window.index = 1
   @yes_no_window.x = 270
   @yes_no_window.y = 252
   @yes_no_window.z = 1500
   @label_window = Window_Base.new(450,200,190,52)
   @label_window.contents=Bitmap.new(@label_window.width - 32,@label_window.height - 32)
   @label_window.contents.font.size=20
   @label_window.contents.font.color = @label_window.normal_color
   @label_window.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   @label_window.contents.draw_text(0, 0, @label_window.contents.width, 20, "   Possédé(s)    Nécessaire(s)")
   Graphics.transition
   loop do
     Graphics.update
     Input.update
     update
     if $scene != self
       break
     end
   end
   Graphics.freeze
   @help_window.dispose
   @craft_window.dispose
   @result_window.dispose
   @ingredients_window.dispose
   @confirm_window.dispose
   @yes_no_window.dispose
   @label_window.dispose
 end
 
 #--------------------------------------------------------------------------
 def update
   @craft_window.update
   @ingredients_window.update
   if $game_party.recipes.size > 0
     @result_window.set_result(@craft_window.recipe.result, @craft_window.recipe.result_type)
     @ingredients_window.set_ingredients(@craft_window.recipe.ingredients,
                                                          @craft_window.recipe.ingredient_types,
                                                          @craft_window.recipe.quantities)
   end
   if @craft_window.active
     update_craft
     return
   end
   if @yes_no_window.active
     confirm_update
     return
   end
 end
 
 #--------------------------------------------------------------------------
 def update_craft
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     if @return_scene == "menu"
       $scene = Scene_Menu.new(0)
     else
       $scene = Scene_Map.new
     end
     return
   end
   if Input.trigger?(Input::C) and $game_party.recipes.size != 0
     @recipe = @craft_window.recipe
     if @recipe.have
       @yes_no_window.active = true
       @craft_window.active = false
     else
       $game_system.se_play($data_system.buzzer_se)
       return
     end
   end
 end
 
 #--------------------------------------------------------------------------
 def confirm_update
   @craft_index = @craft_window.index
   @confirm_window.visible = true
   @confirm_window.z = 1500
   @yes_no_window.visible = true
   @yes_no_window.active = true
   @yes_no_window.z = 1500
   @yes_no_window.update
   string = "Créer " + @recipe.name + "?"
   cw = @confirm_window.contents.text_size(string).width
   center = @confirm_window.contents.width/2 - cw /2
   unless @drawn
     @confirm_window.contents.draw_text(center, 0, cw, 30, string)
     @drawn = true
   end
   if Input.trigger?(Input::C)
     if @yes_no_window.index == 0
       $game_system.se_play($data_system.decision_se)
       @recipe.make
       $game_system.se_play($data_system.save_se)
       $scene=Scene_Craft.new(@craft_index)
     else
       $game_system.se_play($data_system.cancel_se)
       $scene=Scene_Craft.new(@craft_index)
     end
   end
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene=Scene_Craft.new(@craft_index)
   end
 end
 
end # of Scene_Craft




--------------------------- STOOOOOP !! Y'a un deuxième script ! ---------------------------


Faites de nouveau un nouveau script au dessus de Main.

Copiez-collez de nouveau

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#================================
# Sample master list for crafting script
#----------------------------------------------------------------
#-written by Deke
#----------------------------------------------------------------
#================================
 
class Game_Temp
  attr_reader :recipe_list
 
  alias crafting_temp_initialize initialize
 
  def initialize
    crafting_temp_initialize
    @recipe_list=[]
    get_recipe_list
  end
 
  def get_recipe_list
    
#----------------------------------------------------------------
#----------------------------------------------------------------
#--------------- Insérer vos recettes ici ! --------------
#----------------------------------------------------------------
#----------------------------------------------------------------
   
 
    @recipe_list.push(Game_Recipe.new(ingredients,ingredient_types,quantities,result,result_type))
    
    
  end # of get_recipe_list method
end # of updates to Game_Temp Class




Ça, c'est fait !
C'est la que les choses deviennent un peu plus compliquées : on va créer nos recettes.

Utilisation

I - Les objets

Dans un premier temps, on va créer nos ingrédients.
Allez dans la base de données (F9), puis dans l'onglet objets. En bas à gauche ce trouve un bouton "Nombre maximum d'éléments...". Cliquez dessus et ajoutez y le nombre d'ingrédients que vous voulez créer (pour moi ca sera 3).
Nommez les, mettez leurs un prix, etc... Notez bien leurs IDs (le nombre à côté de leur noms) , car on en aura besoin pour la suite.

Maintenant que nous avons les ingrédients, on va s'occuper de l'objet créé.
Allez dans l'onglet de l'objet que vous voulez forger (Armes, Armures, ou encore Objets) , et créé votre objet. Retenez aussi son ID.


II - Les recettes

Le plus dur : la création des recettes.
Accrochez vous ! C'est PARTIIII !!! image


Je résume ce que l'on a fait : on a créer nos ingrédients et notre objet qui est à forger et on a leur IDs. On est prêt !

On ouvre notre magnifique, et ô combien puissant éditeur de script (F11) et on va dans le script "Crafting_List".

On va insérer les recettes en dessous de la où c'est écrit.

Première ligne du code de la recette:

Portion de code : Tout sélectionner

1
ingredients = []


Cette ligne permettra au script de savoir quels ingrédients il faut utiliser dans la recette. Donc si vous avez bien compris, il faut y mettre les IDs de nos ingrédients (séparer par une virgule)
Pour moi c'est :

Portion de code : Tout sélectionner

1
ingredients = [33,34,35]



Deuxième ligne du code de la recette:

Portion de code : Tout sélectionner

1
ingredient_types = []


Cette ligne permettra au script de savoir quels types d'ingrédients il doit prendre:
-les objets sont de type 0
-les armures sont de type 1
-les armes sont de type 2
On met donc :

Portion de code : Tout sélectionner

1
ingredient_types = [0,0,0]


Si on utilise que des objets en ingrédients.
Si on est dans le cas au le deuxième ingrédients de la recette est une arme, et le reste des objets, ca sera [0,2,0], ou encore si c'est une armure qui se trouve en troisième position, le code sera [0,0,1].

Quatrième ligne du code de la recette :

Portion de code : Tout sélectionner

1
result = 


Cette ligne permettra au script de savoir ce qui va être forgé. mettez donc l'ID de votre objet.
Voici ma ligne :

Portion de code : Tout sélectionner

1
result = 33



Cinquième ligne du code de la recette :

Portion de code : Tout sélectionner

1
result_type = 


Cette ligne permettra au script de savoir le type de l'objet forgé.

Spoiler (cliquez pour afficher)


Dans mon cas:

Portion de code : Tout sélectionner

1
result_type = 2



Sixième et dernière ligne du code de la recette:

Portion de code : Tout sélectionner

1
@recipe_list.push(Game_Recipe.new(ingredients,ingredient_types,quantities,result,result_type))


Rien à dire. Copiez-collez cette ligne. J'espère que cela ne sera pas trop dur. image


Aperçu final du code d'une recette (la mienne):

Portion de code : Tout sélectionner

1
2
3
4
5
ingredients = [33,34,35]
ingredient_types = [0,0,0]
quantities = [1,1,1]
result = 33
result_type = 2    @recipe_list.push(Game_Recipe.new(ingredients,ingredient_types,quantities,result,result_type))



Et voilà ! Une recette de créé ! Vous pouvez en créer autant que vous voulez !


III - Les commandes

Au début du jeu, il faut initialiser le script en créant un événement qui à ce script en lui:

Portion de code : Tout sélectionner

1
$game_party.recipes = [] 


Mais attention ! Il ne faut pas que le joueur puisse avoir accés une nouvelle fois à ce code, car il va perdre toutes les recettes qu'il a appris !

Et oui ! Il faut que le joueur apprenne les recettes ! SInon c'est pas drôle ! image
Il faudra donc un événement pour apprendre une ou des recette(s).
Voici le bout de code à insérer:

Portion de code : Tout sélectionner

1
$game_party.learn_recipe([])


ce qui sera dans les crochets sera l'objet de la recette, et son type.
Dans mon cas, l'apprentissage de la recette de l'épée d'ID 33 sera:

Portion de code : Tout sélectionner

1
$game_party.learn_recipe([33,2])



Et enfin, voici la commande qui est à insérer dans l'événement qui fera appelle au menu de forge.

Portion de code : Tout sélectionner

1
$scene=Scene_Craft.new





Voilà ! Tout est fini ! Vous êtes devenu un pro du codage de recettes ! image

Démo par Sabotender (anglais) (Archive Wayback Machine)

Voilà voilà ! Tout est dit !
J'espère que ce script et cette explication vous sera fort bien utile !

A pluch !


Mis à jour le 22 novembre 2020.






NanakyTim - posté le 13/09/2009 à 20:10:55 (23817 messages postés)

❤ 0

Pas mal, ça peut servir :D

Héros ou Fléau ? Devenez le Roi de Quineroy ! ~ Plongez dans l'univers sombre du Darkans ! ~ Dimens Reis... Allez y faire un tour. ~ Rangez votre chambre ! ~ Avez-vous peur du noir ? ~ Sauvez le futur, en allant dans le passé: BOCALATOR...


Alkanédon - posté le 13/09/2009 à 21:53:30 (8351 messages postés) - -

❤ 0

Citoyen d'Alent

si on s'est deja bien fais ch**r a faire des recette avec le script de fusion de compétences ,
on devrait pas pédaler dans la semoule avec celui-ci ...

Mes musiques


Kanton-Cherchontrouv - posté le 15/09/2009 à 18:59:35 (155 messages postés)

❤ 0

[...] Chargin mah lazor WHA

mhhh semoule super ce script, moi ça me prenait 2 heures de faire ça en event XD:lolX)

♪ZBOOB♫


KnightLink - posté le 16/09/2009 à 14:59:06 (153 messages postés)

❤ 0

J'aime les frites. Et toi, à quoi tu joue ?

Sniif, moi qui croyais que le script état pour VX, le choc, le script était exactement celui que je cherchais ToT
Et puis la démo marche pas.

Sur un projet de jeu web.


TheDuke - posté le 16/09/2009 à 16:45:34 (34 messages postés)

❤ 0

Notest! Powa!

Il est pas pour Vx oo snif:'(

Notest! Official Démo 2! pour bientot ;)


Olorthost - posté le 18/09/2009 à 08:52:24 (151 messages postés)

❤ 0

Patapon onirique

Ton système de différenciation des objets (0,1,23,...) ça veut aussi dire que l'on peut faire autre chose que des armures ou des armes, comme des aliments pour un cuisinier ou des potions pour un alchimiste?


Alkanédon - posté le 19/09/2009 à 19:58:08 (8351 messages postés) - -

❤ 0

Citoyen d'Alent

objet+objet = arme/armure/objet
objet+arme= arme/armure/objet
objet+armure= arme/armure/objet
arme+arme= arme/armure/objet
arme+armure= arme/armure/objet

C'est ça si je ne m'abuse ?

Mes musiques


Ikurhaï - posté le 23/09/2009 à 20:52:06 (13 messages postés)

❤ 0

Eka aí fricai un skulblaka.

Il y a une infinité de combinaisons ! Ce que tu proposes est donc un bon exemple, Alaknédon !

Astra esterni ono thelduin. Mor'ranr lifa unin hjarta onr. Un du evarinya ono varda.


chyro - posté le 29/12/2009 à 20:57:42 (93 messages postés)

❤ 0

la légende revient

super se script :lol c'est exactement l"ingrédient manquant"
y a un script un peut près pareil mai sur le thème de la cuisine un peut peut plus haut dans l index des script ;)
enfin je t applaudit si c toi qu'il la fait :sonic un grand GG a toi!
tu a mes sincère remerciement pour ce script :lei


Mookyz - posté le 18/03/2010 à 18:54:44 (1 messages postés)

❤ 0

Super ce script =)
Par contre, si on veut par exemple faire des recettes de cuisine ou créer nimporte quel autre objet qui ne se fait pas dans une forge est-ce possible de faire deux menus différents ?
Comme un menu pour la forge et un pour la cuisine par exemple. =)
Merci d'avance.


Fredomaker - posté le 11/08/2010 à 22:29:17 (37 messages postés)

❤ 0

Epéliste en colère

Citation:

Il est pas pour Vx oo snif


je le fait sur VX et XP sans problème grace aux events
[color=red][/color][size=24][/size]C'EST D"'LA BALLE

beaucoup de choses se passe mais quoi que vous fassiez quelqu'un ous regarde d'un mauvais oeil


Eichimaru - posté le 16/10/2010 à 13:41:24 (209 messages postés)

❤ 0

Graphiste en puissance!!

bug ligne 31!!!:'(

Iron::http://iron.xooit.fr/index.php


Ranger Maker - posté le 15/01/2011 à 09:17:01 (17 messages postés)

❤ 0

en train de maker

J'ai remarqué qu'en copiant la dernière ligne des recettes, elle y est 2 fois (en effet elle y est dès le départ)
Mais même après l'avoir supprimé ça me met :
Script Crafting_List line 31 : NameError ocurred
undefined local variable or method 'quantities' for #<Game_Temp:0x3fc 42d8>

est-ce qqn peut m'aider svp

Bordel pourquoi tout le monde a photoshop alors que ce sont des RPG AMATEURS !


gamer34 - posté le 22/07/2011 à 18:58:34 (99 messages postés)

❤ 0

:'( moi j'ai un problème avec la derrière ligne des recettes
et quant je la surprime la fenêtre de forge est vide même quant
j'apprend les recette !!!

a c'est bon j'ai trouver Ikurhaï tu avait oublier les quantité .....:D


Zaryel - posté le 22/04/2012 à 13:41:53 (45 messages postés)

❤ 0

J'ai un petit problème avec ce script. Il marche, enfin je pense car je n'est pas encore pu vraiment tester, car le seul petit problème est que au moment ou je fais apprendre un recette à mon perso, il message d’erreurs s'affiche pour la ligne 127 du script qui est :
if item[0] == $game_temp.recipe_list.result and item[1] ==$game_temp.recipe_list.result_type

Quelqu'un sait il pourquoi j'ai ce problème ?


zurae - posté le 15/07/2012 à 12:15:34 (3 messages postés)

❤ 0

J'ai exactement le même problème .... Peut-être qu'une petite démo ouvrable avec rmxp suffirait à nous aider. Merci d'avance !

Ranger maker tu as oublié de mettre la ligne :

quantities = [1,1,1]

En dessous de ingredients_type.
Biensur tu peux changer les valeurs des 1 que j'ai mit.


itashi76 - posté le 08/11/2012 à 22:07:44 (54 messages postés)

❤ 0

Tranquille

J'ai moi aussi se problème quelqu'un peu nous aidé.

Le savoir est une arme


kanatos - posté le 09/08/2015 à 09:45:58 (293 messages postés)

❤ 0

cute rabbit

Bonjour, pour ceux qui veulent utilisé ce script et auxquelles ça marche pas.
Remplacé le script scene_craft par celui-ci :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
#================================
# CRAFTING PROGRAM
#----------------------------------------------------------------
#-written by Deke
#-yes_no window code created by Phsylomortis
#----------------------------------------------------------------
#================================
 
#updates to Game_Party class
 
class Game_Party
 
 attr_accessor       :recipes
 
 alias crafting_party_initialize initialize
 
 def initialize
   crafting_party_initialize
   @recipes=[]
 end
 
 #----------------------------------------------------------------------
 def know?(recipe, version = 1)
   unless recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   return $game_party.recipes.include?(recipe)
 end
 
#----------------------------------------------------------------------
 def learn_recipe(recipe , version = 1)
   unless recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   if recipe.is_a?(Game_Recipe)
     unless know?(recipe)
       @recipes.push(recipe)
     end
   end
 end
 
#----------------------------------------------------------------------
 def forget_recipe(recipe , version = 1)
   if !recipe.is_a?(Game_Recipe)
     recipe = get_recipe_from_master_list(recipe, version)
   end
   if recipe.is_a?(Game_Recipe)
     for i in 0...@recipes.size
       if recipe == @recipes[i]
         index = i
         break
       end
     end
     if index != nil
       @recipes.delete(@recipes[index])
     end
   end
 end
 
#----------------------------------------------------------------------
 def get_recipe_from_master_list(item, version)
   index = nil
   for i in 0...$game_temp.recipe_list.size
     if item[0] == $game_temp.recipe_list[i].result and item[1] ==$game_temp.recipe_list[i].result_type
       version -= 1
       if version == 0
         index = i
         break
       end
     end
   end
   if index.is_a?(Integer)
     return ($game_temp.recipe_list[index])
   else
     return false
   end
 end
 
end # of Game_Party updates
 
#================================
class Game_Recipe
 
 attr_reader :ingredients
 attr_reader :quantities
 attr_reader :result
 attr_reader :result_type
 attr_reader :ingredient_types
 
#----------------------------------------------------------------------
 def initialize( ingredients, ingredient_types, quantities, result, result_type)
   @ingredients = ingredients
   @ingredient_types = ingredient_types
   @quantities = quantities
   @result = result
   @result_type = result_type
 end
 
#----------------------------------------------------------------------
 def name
   case @result_type
     when 0
       name = $data_items[@result].name
     when 1
       name = $data_armors[@result].name
     when 2
       name = $data_weapons[@result].name
   end
   return name
 end
 
#----------------------------------------------------------------------
 def have
   have_all = true
   for i in 0...@ingredients.size
     case @ingredient_types[i]
       when 0
         if $game_party.item_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
       when 1
         if $game_party.armor_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
       when 2
         if $game_party.weapon_number(@ingredients[i]) < @quantities[i]
           have_all=false
         end
     end
   end
   return have_all
 end
 
#----------------------------------------------------------------------
 def decrement
   for i in 0...@ingredients.size
     case @ingredient_types[i]
     when 0
       $game_party.lose_item(@ingredients[i], @quantities[i])
     when 1
       $game_party.lose_armor(@ingredients[i], @quantities[i])
     when 2
       $game_party.lose_weapon(@ingredients[i], @quantities[i])
     end
   end
 end
 
#----------------------------------------------------------------------
 def make
   if have
     case @result_type
     when 0
       $game_party.gain_item(@result, 1)
     when 1
       $game_party.gain_armor(@result, 1)
     when 2
       $game_party.gain_weapon(@result, 1)
     end
     decrement
   end
 end
 
#----------------------------------------------------------------------
 def == (recipe)
   if recipe.is_a?(Game_Recipe)
     equal = true
     if recipe.ingredients != self.ingredients
       equal = false
     end
     if recipe.ingredient_types != self.ingredient_types
       equal = false
     end
     if recipe.quantities != self.quantities
       equal = false
     end
     if recipe.result != self.result
       equal=false
     end
     if recipe.result_type != self.result_type
       equal = false
     end
   else
     equal = false
   end
   return equal
 end
 
end # of Game_Recipe class
 
#===================================
 
class Window_Craft < Window_Selectable
 
 #--------------------------------------------------------------------------
 def initialize
   super(0, 64, 240, 416)
   @column_max = 1
   refresh
   self.index = 0
 end
 
 #--------------------------------------------------------------------------
 def recipe
   return @data[self.index]
 end
 
 #--------------------------------------------------------------------------
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   for i in 0...$game_party.recipes.size
       @data.push($game_party.recipes[i])
   end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
     self.contents.font.size = $fontsize.is_a?(Integer) ? $fontsize : $defaultfontsize
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 
 #--------------------------------------------------------------------------
 def draw_item(index)
   recipe = @data[index]
   self.contents.font.color = recipe.have ? normal_color : disabled_color
   x = 16
   y = index * 32
   self.contents.draw_text(x , y, self.width-32, 32, recipe.name, 0)
 end
 
 #--------------------------------------------------------------------------
 def update_help
   current_recipe = recipe
   if current_recipe.is_a?(Game_Recipe)
   case current_recipe.result_type
     when 0
       description = $data_items[current_recipe.result].description
     when 1
       description = $data_armors[current_recipe.result].description
     when 2
       description = $data_weapons[current_recipe.result].description
     end
   else
     description = ""
   end
   @help_window.set_text(description)
   @help_window.update
 end
 
end # of Window_Craft
 
#=======================================
class Window_CraftResult < Window_Base
 
 #--------------------------------------------------------------------------
 def initialize
   super(240, 64, 400, 184)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   self.contents.font.size = 20
   @result = nil
   @type = nil
 end
 
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   case @type
     when 0
       item = $data_items[@result]
       if item.recover_hp_rate > item.recover_hp
         hp_string = "HP Recovery% :"
         hp_stat = item.recover_hp_rate
       else
         hp_string = "HP Recovery Points:"
         hp_stat = item.recover_hp
       end
       if item.recover_sp_rate > item.recover_sp
         sp_string = "SP Recovery% :"
         sp_stat = item.recover_sp_rate
       else
         sp_string = "SP Recovery Points:"
         sp_stat = item.recover_sp
       end
       @strings = [hp_string, sp_string, "Phy. Def:" , "Mag Def:", "Accuracy:", "Variance:"]
       @stats = [hp_stat, sp_stat, item. pdef_f, item.mdef_f, item.hit, item.variance,
                      $game_party.item_number(@result)]
       @bitmap = RPG::Cache.icon(item.icon_name)
     when 1
       item = $data_armors[@result]
       @strings = ["Phy. Def:", "Mag. Def:", "Evasion plus:", "Strength plus:", "Dex. plus:",
                      "Agility plus:", "Int. plus:"]
       @stats = [item.pdef, item.mdef, item.eva, item.str_plus, item.dex_plus,
                   item.agi_plus, item.int_plus, $game_party.armor_number(@result) ]
       @bitmap = RPG::Cache.icon(item.icon_name)
     when 2
       item = $data_weapons[@result]
       @strings =["Attack Power:", "Phy. Def:", "Mag. Def:", "Strength plus:", "Dex. plus:",
                   "Agility plus:", "Int. plus:"]
       @stats = [item.atk, item.pdef, item.mdef, item.str_plus, item.dex_plus,
                   item.agi_plus, item.int_plus, $game_party.weapon_number(@result) ]
       @bitmap = RPG::Cache.icon(item.icon_name)
   end
   for i in 0...@strings.size
     x = i%2 * 184
     y = i /2 *28 +32
     self.contents.font.color = normal_color
     self.contents.draw_text(x,y,100, 28,@strings[i])
     self.contents.font.color = system_color
     self.contents.draw_text(x + 110, y, 45, 28, @stats[i].to_s)
   end
   self.contents.blt(0, 0, @bitmap, Rect.new(0, 0, 24, 24), 255)
   self.contents.font.color= normal_color
   self.contents.draw_text(40, 0, 300, 28, "Quantity curentley owned:")
   self.contents.font.color = system_color
   count = @stats[@stats.size - 1].to_s
   self.contents.draw_text(294, 0, 45, 28, count )
 end
   
#----------------------------------------------------------------------
 def set_result(result , type)
   @result = result
   @type = type
   refresh
 end
 
end #of Window_CraftResult
 
#=======================================
class Window_CraftIngredients < Window_Base
 
 #--------------------------------------------------------------------------
 def initialize
   super(240, 248, 400, 232)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   self.contents.font.size = 20
   @ingredients = []
   @types = []
   @quantities = []
   @item = nil
   @count = 0
 end
 
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   for i in 0...@ingredients.size
     case @types[i]
     when 0
       @item = $data_items[@ingredients[i]]
       @count = $game_party.item_number(@ingredients[i])
     when 1
       @item = $data_armors[@ingredients[i]]
       @count = $game_party.armor_number(@ingredients[i])
     when 2
       @item = $data_weapons[@ingredients[i]]
       @count = $game_party.weapon_number(@ingredients[i])
     end
     y = i *26
     self.contents.blt(0, y, RPG::Cache.icon(@item.icon_name), Rect.new(0, 0, 24, 24), 255)
     self.contents.font.color = @count >= @quantities[i] ? normal_color : disabled_color
     self.contents.draw_text(30, y, 280, 28, @item.name)
     self.contents.draw_text(300, y, 45, 28, @quantities[i].to_s)
     self.contents.font.color = system_color
     self.contents.draw_text(245, y, 45, 28, @count.to_s )    
   end
 end
     
 #--------------------------------------------------------------------------
 def set_ingredients(ingredients , types, quantities)
   @ingredients = ingredients
   @types = types
   @quantities = quantities
   refresh
 end
 
end # of Window_CraftIngredients
 
#======================================
class Scene_Craft
 
 #--------------------------------------------------------------------------
 def initialize(craft_index=0, return_scene = "menu")
   @craft_index=craft_index
   @return_scene = return_scene
 end
 
 #--------------------------------------------------------------------------
 def main
   @craft_window = Window_Craft.new
   @craft_window.index=@craft_index
   @confirm_window = Window_Base.new(120, 188, 400, 64)
   @confirm_window.contents = Bitmap.new(368, 32)
   @confirm_window.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   @confirm_window.contents.font.size = $fontsize.is_a?(Integer) ? $fontsize : $defaultfontsize
   @help_window = Window_Help.new
   @craft_window.help_window = @help_window
   @result_window=Window_CraftResult.new
   @ingredients_window=Window_CraftIngredients.new
   @yes_no_window = Window_Command.new(100, ["Yes", "No"])
   @confirm_window.visible = false
   @confirm_window.z = 1500
   @yes_no_window.visible = false
   @yes_no_window.active = false
   @yes_no_window.index = 1
   @yes_no_window.x = 270
   @yes_no_window.y = 252
   @yes_no_window.z = 1500
   @label_window = Window_Base.new(450,200,190,52)
   @label_window.contents=Bitmap.new(@label_window.width - 32,@label_window.height - 32)
   @label_window.contents.font.size=20
   @label_window.contents.font.color = @label_window.normal_color
   @label_window.contents.font.name = $fontface.is_a?(String) ? $fontface : $defaultfonttype
   @label_window.contents.draw_text(0, 0, @label_window.contents.width, 20, "   Have    Need")
   Graphics.transition
   loop do
     Graphics.update
     Input.update
     update
     if $scene != self
       break
     end
   end
   Graphics.freeze
   @help_window.dispose
   @craft_window.dispose
   @result_window.dispose
   @ingredients_window.dispose
   @confirm_window.dispose
   @yes_no_window.dispose
   @label_window.dispose
 end
 
 #--------------------------------------------------------------------------
 def update
   @craft_window.update
   @ingredients_window.update
   if $game_party.recipes.size > 0
     @result_window.set_result(@craft_window.recipe.result, @craft_window.recipe.result_type)
     @ingredients_window.set_ingredients(@craft_window.recipe.ingredients,
                                                          @craft_window.recipe.ingredient_types,
                                                          @craft_window.recipe.quantities)
   end
   if @craft_window.active
     update_craft
     return
   end
   if @yes_no_window.active
     confirm_update
     return
   end
 end
 
 #--------------------------------------------------------------------------
 def update_craft
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     if @return_scene == "menu"
       $scene = Scene_Menu.new(0)
     else
       $scene = Scene_Map.new
     end
     return
   end
   if Input.trigger?(Input::C) and $game_party.recipes.size != 0
     @recipe = @craft_window.recipe
     if @recipe.have
       @yes_no_window.active = true
       @craft_window.active = false
     else
       $game_system.se_play($data_system.buzzer_se)
       return
     end
   end
 end
 
 #--------------------------------------------------------------------------
 def confirm_update
   @craft_index = @craft_window.index
   @confirm_window.visible = true
   @confirm_window.z = 1500
   @yes_no_window.visible = true
   @yes_no_window.active = true
   @yes_no_window.z = 1500
   @yes_no_window.update
   string = "Create " + @recipe.name + "?"
   cw = @confirm_window.contents.text_size(string).width
   center = @confirm_window.contents.width/2 - cw /2
   unless @drawn
     @confirm_window.contents.draw_text(center, 0, cw, 30, string)
     @drawn = true
   end
   if Input.trigger?(Input::C)
     if @yes_no_window.index == 0
       $game_system.se_play($data_system.decision_se)
       @recipe.make
       $game_system.se_play($data_system.save_se)
       $scene=Scene_Craft.new(@craft_index)
     else
       $game_system.se_play($data_system.cancel_se)
       $scene=Scene_Craft.new(@craft_index)
     end
   end
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene=Scene_Craft.new(@craft_index)
   end
 end
 
end # of Scene_Craft


(Par contre tous sera en anglais...)


Super-spark - posté le 23/06/2023 à 18:28:26 (15 messages postés)

❤ 0

Bonjour, y aurait-il un moyen d'avoir 2 systèmes de craft différents avec 2 listes de craft;
dans le même jeu ? Pour faire par exemple:
une forge simple avec certaines recettes basiques
et une forge magique pour enchanter les objets basiques

Il y a peut-être moyen de le faire avec un system de variable ?
Mais je ne suis pas un pro des script Lol

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