CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

J'aide les débutants dans rpg maker

firemanx23
firemanx23
Niveau 10
09 juin 2006 à 13:54:37

Fonction : Permet de mettre une interface du combat plus joli ( voir le screen ci -dessous )

Image(s): screen

Ressource(s) : aucune

Remarque : Testé et fonctionnel.

Installation : Copiez le code, ouvrez l´éditeur de script ( F11 ) et créez en un nouveau au dessus de ´Main´. Collez ce script :

Code :

class Scene_Battle
def main
$game_temp.in_battle = true
$game_temp.battle_turn = 0
$game_temp.battle_event_flags.clear
$game_temp.battle_abort = false
$game_temp.battle_main_phase = false
$game_temp.battleback_name = $game_map.battleback_name
$game_temp.forcing_battler = nil
$game_system.battle_interpreter.setup(nil, 0)
@troop_id = $game_temp.battle_troop_id
$game_troop.setup(@troop_id)
s1 = $data_system.words.attack
s2 = $data_system.words.skill
s3 = $data_system.words.guard
s4 = $data_system.words.item
@actor_command_window = Window_Command.new(160, [s1, s2, s3, s4])
@actor_command_window.y = 160
@actor_command_window.back_opacity = 160
@actor_command_window.active = false
@actor_command_window.visible = false
@party_command_window = Window_PartyCommand.new
@help_window = Window_Help.new
@help_window.back_opacity = 160
@help_window.visible = false
@status_window = Window_BattleStatus.new
@message_window = Window_Message.new
@spriteset = Spriteset_Battle.new
@wait_count = 0
if $data_system.battle_transition == ""
Graphics.transition(20)
else
Graphics.transition(40, "Graphics/Transitions/" +
$data_system.battle_transition)
end
start_phase1
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
$game_map.refresh
Graphics.freeze
@actor_command_window.dispose
@party_command_window.dispose
@help_window.dispose
@status_window.dispose
@message_window.dispose
if @skill_window != nil
@skill_window.dispose
end
if @item_window != nil
@item_window.dispose
end
if @result_window != nil
@result_window.dispose
end
@spriteset.dispose

    1. Début de l´ajout par Krazplay pour sa nouvelle fenêtre d´exp ###

if @levelup != nil #Correction du bug de fuite
@fond = Window_Base.new(0,0,640,480)
coordx = [5,320, 5,320]
coordy = [12, 12, 248, 248]
@window = []
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
@window[i] = Window_Result.new(coordx[i], coordy[i])
@window[i].refresh(actor,0)
if @levelup[i] != nil #correction d´un bug, n´oubliez pas le end plus bas
if @levelup[i] > 0
@window[i].refresh(actor, @levelup[i])
@window[i].showlvlup(actor)
end
end #voila le end qui va avec la correction
end
if $data_system.battle_transition == ""
Graphics.transition(20)
else
Graphics.transition(20, "Graphics/Transitions/" + $data_system.battle_transition)
end
loop do
Graphics.update
Input.update
if Input.trigger?(Input::C)
break
end
end
for i in 0...$game_party.actors.size
@window[i].dispose
end
@fond.dispose
end # end de la correction du bug de fuite

    1. Fin de l´ajout par Krazplay pour sa nouvelle fenêtre d´exp ###

if $scene.is_a?(Scene_Title)
Graphics.transition
Graphics.freeze
end
if $BTEST and not $scene.is_a?(Scene_Gameover)
$scene = nil
end
end

def start_phase5
@phase = 5
$game_system.me_play($game_system.battle_end_me)
$game_system.bgm_play($game_temp.map_bgm)
exp = 0
gold = 0
treasures = []
for enemy in $game_troop.enemies
unless enemy.hidden
exp += enemy.exp
gold += enemy.gold
if rand(100) < enemy.treasure_prob
if enemy.item_id > 0
treasures.push($data_items[enemy.item_id])
end
if enemy.weapon_id > 0
treasures.push($data_weapons[enemy.weapon_id])
end
if enemy.armor_id > 0
treasures.push($data_armors[enemy.armor_id])
end
end
end
end
treasures = treasures[0..5]
@levelup = [] # Cette ligne-là est à ajouter si vous ne voullez pas copier

  1. tout le scrîpt

for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
if actor.cant_get_exp? == false
last_level = actor.level
actor.exp += exp
@levelup[i] = actor.level - last_level # Cette ligne-là aussi #
if actor.level > last_level
@status_window.level_up(i)
end
end
end
$game_party.gain_gold(gold)
for item in treasures
case item
when RPG::Item
$game_party.gain_item(item.id, 1)
when RPG::Weapon
$game_party.gain_weapon(item.id, 1)
when RPG::Armor
$game_party.gain_armor(item.id, 1)
end
end
@result_window = Window_BattleResult.new(exp, gold, treasures)
@phase5_wait_count = 100
end
end

  1. ========================
  2. Créer un nouveau scrîpt au-dessus de main et copier celui-là dedans.
  3. Tout ce qui est sous la définition refresh est ce qui apparait tout le temps
  4. Tout ce qui est sous la définition showlvlup est ce qui n´apparait qu´en
  5. cas de level up
  6. ========================

class Window_Result < Window_Base
def initialize(x,y)
super(x, y, 315, 220)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
self.back_opacity = 255
end

def refresh(actor,levelenmoins)
self.contents.clear
self.contents.font.color = Color.new(255, 50, 50, 255)
self.contents.font.size = 24
draw_actor_battler(actor,50,90,30)
draw_actor_battler(actor,110,90,60)
draw_actor_battler(actor,170,90,90)
if levelenmoins == 0
draw_actor_battler(actor,230,90,250)
end
largeur_nom = contents.text_size(actor.name).width
self.contents.draw_text(width/2 - largeur_nom/2 -16, 0, 99, 24, actor.name)
self.contents.font.color = Color.new(100, 255, 100, 255)
self.contents.font.size = 19
self.contents.draw_text(0,25, 99, 24, "Niv")
self.contents.font.color = normal_color
self.contents.draw_text(10, 45, 99, 24, "HP")
self.contents.draw_text(10, 63, 99, 24, "MP")
self.contents.font.size = 18
self.contents.draw_text(0, 83, 99, 24, "Force")
self.contents.draw_text(0, 103, 99, 24, "Dexterité")
self.contents.draw_text(0, 123, 99, 24, "Agilité")
self.contents.draw_text(0, 143, 99, 24, "Intelligence")
self.contents.font.color = Color.new(125, 255, 125, 255)
self.contents.draw_text(60, 170, 99, 24, "Suivant")
@levelenmoins = levelenmoins
@lvl = actor.level-levelenmoins
self.contents.font.color = normal_color
self.contents.draw_text(80, 25, 30, 24, @lvl.to_s,2)
self.contents.draw_text(60, 45, 50, 24, $data_actors[actor.id].parameters[0, @lvl].to_s,2)
self.contents.draw_text(60, 63, 50, 24, $data_actors[actor.id].parameters[1, @lvl].to_s,2)
self.contents.draw_text(80, 83, 30, 24, $data_actors[actor.id].parameters[2, @lvl].to_s,2)
self.contents.draw_text(80, 103, 30, 24, $data_actors[actor.id].parameters[3, @lvl].to_s,2)
self.contents.draw_text(80, 123, 30, 24, $data_actors[actor.id].parameters[4, @lvl].to_s,2)
self.contents.draw_text(80, 143, 30, 24, $data_actors[actor.id].parameters[5, @lvl].to_s,2)
self.contents.draw_text(140, 170, 70, 24, actor.next_rest_exp_s.to_s,1)
end

def showlvlup(actor)
hpgagne = $data_actors[actor.id].parameters[0, actor.level] - $data_actors[actor.id].parameters[0, @lvl]
mpgagne = $data_actors[actor.id].parameters[1, actor.level] - $data_actors[actor.id].parameters[1, @lvl]
forcegagne = $data_actors[actor.id].parameters[2, actor.level] - $data_actors[actor.id].parameters[2, @lvl]
dexgagne = $data_actors[actor.id].parameters[3, actor.level] - $data_actors[actor.id].parameters[3, @lvl]
agigagne = $data_actors[actor.id].parameters[4, actor.level] - $data_actors[actor.id].parameters[4, @lvl]
intgagne = $data_actors[actor.id].parameters[5, actor.level] - $data_actors[actor.id].parameters[5, @lvl]
self.contents.font.color = Color.new(100, 255, 100, 255)
self.contents.font.size = 19
self.contents.draw_text(50, 25, 99, 24, "UP !" )
self.contents.font.color = Color.new(20, 255, 20, 255)
self.contents.font.size = 18
self.contents.draw_text(210, 25, 99, 24, actor.level.to_s)
self.contents.draw_text(190, 45, 40, 24, $data_actors[actor.id].parameters[0, actor.level].to_s,2)
self.contents.draw_text(190, 63, 40, 24, $data_actors[actor.id].parameters[1, actor.level].to_s,2)
self.contents.draw_text(200, 83, 30, 24, $data_actors[actor.id].parameters[2, actor.level].to_s,2)
self.contents.draw_text(200, 103, 30, 24, $data_actors[actor.id].parameters[3, actor.level].to_s,2)
self.contents.draw_text(200, 123, 30, 24, $data_actors[actor.id].parameters[4, actor.level].to_s,2)
self.contents.draw_text(200, 143, 30, 24, $data_actors[actor.id].parameters[5, actor.level].to_s,2)
self.contents.font.color = Color.new(100, 255, 255, 255)
self.contents.draw_text(140, 25, 20, 24, @levelenmoins.to_s,2)
self.contents.draw_text(130, 45, 40, 24, hpgagne.to_s,2)
self.contents.draw_text(130, 63, 40, 24, mpgagne.to_s,2)
self.contents.draw_text(140, 83, 30, 24, forcegagne.to_s,2)
self.contents.draw_text(140, 103, 30, 24, dexgagne.to_s,2)
self.contents.draw_text(140, 123, 30, 24, agigagne.to_s,2)
self.contents.draw_text(140, 143, 30, 24, intgagne.to_s,2)
self.contents.font.color = Color.new(255, 100, 100, 255)
h = [25,45,63,83,103,123,143]
for i in 0...7
self.contents.draw_text(120, h[i], 20, 24, "+")
end
for i in 0...7
self.contents.draw_text(180, h[i], 20, 24, "=")
end
end

def draw_actor_battler(actor, x, y, transparence=255)
bitmap = RPG::Cache.battler(actor.battler_name, actor.battler_hue)
cw = bitmap.width
ch = bitmap.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x - cw / 2, y - ch / 2, bitmap, src_rect, transparence)
end
end

voila ce que ca dit

soule_link
soule_link
Niveau 10
09 juin 2006 à 15:18:38

Il faut que tu fasse:

Installation : Copiez le code, ouvrez l´éditeur de script ( F11 ) et créez en un nouveau au dessus de ´Main´. Collez ce script

Ou es le probleme?

CheatFan3
CheatFan3
Niveau 10
09 juin 2006 à 15:46:35

euh a peut près sauf qui y a des option que j´ai pas éssayer

CheatFan3
CheatFan3
Niveau 10
09 juin 2006 à 16:50:09

et je sais pas possitionner correctement une image

geo51
geo51
Niveau 8
09 juin 2006 à 16:51:31

est-ce possible de donner une apparence au héros lorsqu´il est a l´arret ?

(en fait il faudrais que lorsqu´il est a l´arret l´apparence soit la meme que lorsqu´il regarde en bas)

CheatFan3
CheatFan3
Niveau 10
09 juin 2006 à 16:59:54

rien compris

linkfanzeldamar
linkfanzeldamar
Niveau 10
09 juin 2006 à 18:18:50

je recommence ma question:
Comment faire pour QUE les noms des monstres apparaissent quand je choisi qui attaquer? sur le 2003 dans les combats.
On peux me répondre svp?sa fait 3 fois que je demande cette questions

dragar
dragar
Niveau 3
09 juin 2006 à 18:47:35

Comment on fait pour mettre son propre personnage comme Link dans zelda par exemple????????? :question: :svp:

merci d´avence.

pour rpg maker 2000

soule_link
soule_link
Niveau 10
09 juin 2006 à 19:32:12

geo51

Pour que ton héros soit toujours en position en bas quand il est a l´arret fait un evenement commun et a chaque fois que le héros se met a l´arret au bout de 10 frames tu peux lui dire de se metre vers le bas.

cheatfan3

Connais tu les variables?C´est important si tu veux que tes compagnons te suive a la queue-leu-leu.

linkfanzeldamar

Je ne sais pas, si ca te deranges tellement fait un system de combat personallisé.

dragar

Je te conseil rpgmaker2003 ou rpgmakerXp, le 2000 ne t´apportes rien par rapport aux deux autres.
Pour metre link dans ton jeux, tu le mets dans le dossier charset de ton projet et tu pourras l´utiliser dans ton jeu.

geo51
geo51
Niveau 8
09 juin 2006 à 20:37:51

oui mais comment traduire l´information "à l´arret" dans RPG maker xp ?

luc78
luc78
Niveau 7
09 juin 2006 à 20:38:27

Merci soul_link mais on m´a répondu sur mon topic :)
J´avais fait comme ça, processus parallèle et un message mais ca avait pas marché.... :merci: quand même !

dragar
dragar
Niveau 3
09 juin 2006 à 21:42:38

bon désolé si je pose toute ses kestion mais je suis débutant et c koi le dossier charset et si quelqu´un pourrait me donner un lien pour télécharger le patch français du 2000 ça serais simpa et peut on reprende les jeu ke on à fait avec 2000 dans le xp ou 2003 merci

merci d´avence.

linkfanzeldamar
linkfanzeldamar
Niveau 10
10 juin 2006 à 10:56:09

soul link---> Sa me déranger pas mais c´était pour savoir merçi!^^
dragar--->le dossier charset c´est dans dossier systeme!
http://oniro.warparadise..com/index.php?page=programmes
la c´est pour le patch et pour ta derniere question je pense que oui mais sa dépend du format de l´image

cheatfan2
cheatfan2
Niveau 7
10 juin 2006 à 11:49:29

oui je connais les variables mais maintenant je cherche à ne pas etre bloqué quand j´arrrivez a une impasse

et j´ai du mal a positionné les picture dans l´écran sur un menu perso

soule_link
soule_link
Niveau 10
10 juin 2006 à 12:31:13

Ben en gros

X c´est les absice donc de droite a gauche.

X=
0-------------160---------------240

Et y c´est les ordonnée donc de haut en bas.

Y=
0
-
-
-
-
-
120
-
-
-
-
-
240

cheatfan2
cheatfan2
Niveau 7
10 juin 2006 à 13:18:12

euh je sais ça l´abssice et l´ordonné je suis en (cinquiene alord ça me conserne pas mais j´arrive pas a les possition n´est correctment

soule_link
soule_link
Niveau 10
10 juin 2006 à 13:35:19

Oui mais dans rpgmaker l´ordonnée est inversée.

45a
45a
Niveau 7
10 juin 2006 à 17:02:36

Slt
J´ai un problemme sur rpg maker mes maps sont embrouller est je commence sur la 3eme commen le remetre en ordre??

dragar
dragar
Niveau 3
10 juin 2006 à 18:39:03

Bonjour

1.Comment on fait pour que notre personnage frappe avec son épée quand on appui sur shift pour faire un rpg action

2.Cé koi des scripts et ça sere à koi???

merci a celui ou celle qui me répondera

3. pourrais-je avoir un liens pour télécharger RPG MAker XP ou 3D

tout ça c pour RPG Maker 2003

soule_link
soule_link
Niveau 10
10 juin 2006 à 19:08:50

dragar

1 Si c´est pour rpgmaker2003 il faut que tu fasse un event parallele, puis tu metteras un attendre apuie touche, et des que tu apuieras sur un touche le heros donnera des coups(mais il faut savoir utiliser les variables)

2 des script servent a changer le fonctionement du jeu, par exemple pour rajouter, modifier ou enlever des trucs en +

3

tu trouveras rpgmakerXp sur ce site:
http://creation-de-jeux.com

Ou ici:
http://oniro.warparadise..com/index.php?page=programmes

45a

Je n´ai rien compris.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment