Canalblog
Suivre ce blog Administration + Créer mon blog

le Blog pour RPG maker

le Blog pour RPG maker
Derniers commentaires
15 octobre 2007

le jeu

ce jeu parle d'un héro qui devra contrer les forces du mal pour sauver une île ("farthest" qui veut dire perdu,lointain) et pouvoir partir par la même occasion de celle ci. Mais... je ne vous raconte pas la suite puisque sinon cela casserai le suspens. Donc ce jeu est créé avec RPG Maker XP et j'ai fait un installateur pour que TOUTES les personnes puissent y jouer sans avoir besoin du logiciel.
pour ce qui est du mot de passe d'installation contactez moi et je vous le dirai peut être ^^.
il se nomme donc "Andrew's Island" et dans un prochain message je vous donnerai l'installateur mais mon jeu n'étant a ce jour pas encore fini je vous le donnerai pas avant 2008 (si c'est avant c'est un miracle)

Bon passons au screen shoots de ce jeu

l'écran titre
andrew
le tout bercé par une musique de Titan Quest sa met dans l'ambiance.
ensuite il y a la première map
ScreenShot002
vous pouvez appeler votre héro comme bon vous semble (comme ici Eychiro)
et j'ai enlevé le brouillard de soleil pour que vous puissiez mieux voir .
les textes sont en mode défilant il y a en guise de menu un ring menu :
Sans_titre
voila je ne vous en dit pas plus je fini le jeu et je vous le mettrai sur le blog.
une dernière chose au niveau de l'installateur c'est normal qu'il y est un mouton qui s'affiche a votre écran car j'ai fait exprès de le mettre mais par contre en fin d'installation il faut double cliquer sur le mouton et lui dire remove voila vous savez tout maintenant. ( n'oubliez pas les commentaire pour mieux optimiser les page de ce blog. @+

Publicité
15 octobre 2007

les photos

alors je m'en excuse je n'ai pas trouvé le temps pour aler voir le rally mais j'ai péché toutes ces photos sur un amis alors comme je suis gentil je vous les fait parvenir . les voici : (cliquez dessus pour l'agrandir)
DSC00054
DSC00059
Loeb__1_DSC00066DSC00062DSC00058

DSC00071
Loeb__9_

alors voila je pense avoir fait un bon petit dossier sur ce tour tout en étant absent aux spéciales

15 octobre 2007

voici le photos de vendredi au tour

ce sujet n'est pas pour rpg maker je suis daccord mais c'est ma passion alors j'ai envie de la partager avec vous voila donc je suis conscient que cela n'interesse pas tout le monde mais surement que certain se ravieront des photos que je vous donne et donnerai du tour.

s'il y en a qui aime les belles mécanique poussé a bout, voici déja le parcour de ce fabuleux rallye.

1_over10

ensuite vient quelques voitures

206

307


clios1600


dscn2708

puis une des voitures que je préfère est la mitsubishi lancer évolution IX :

mitsu
et la un amateur qui va douiller s'il fait une sortie de route ^^ :

207
voila je vous en posterai plus un peut plus tard.

23 août 2007

script pour afficher un faceset dans un message

alor le script qui vas suivre est tout simplement G.E.N.I.A.L il permet d'afficher une photo d'un personnage  (max 96pix X 96pix).voila ici c'est assez simple il faut aler dans "Window_Message"suprimer tout ce qu'il y a dedans et ensuite y coler tout ce script :

#==============================================================================
# Window_Message
#------------------------------------------------------------------------------
#
#==============================================================================

class Window_Message < Window_Selectable
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def initialize
super(80, 304, 480, 160)
self.contents = Bitmap.new(width - 32, height - 32)
self.contents.font = Font.new("Arial")
self.visible = false
self.z = 9998
@fade_in = false
@fade_out = false
@contents_showing = false
@cursor_width = 0
@pic_width = 96
@pic_height = 96
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def dispose
terminate_message
$game_temp.message_window_showing = false
if @input_number_window != nil
@input_number_window.dispose
end
super
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def terminate_message
self.active = false
self.pause = false
self.index = -1
self.contents.clear
@contents_showing = false

if $game_temp.message_proc != nil
$game_temp.message_proc.call
end

$game_temp.message_text = nil
$game_temp.message_proc = nil
$game_temp.choice_start = 99
$game_temp.choice_max = 0
$game_temp.choice_cancel_type = 0
$game_temp.choice_proc = nil
$game_temp.num_input_start = 99
$game_temp.num_input_variable_id = 0
$game_temp.num_input_digits_max = 0

if @gold_window != nil
@gold_window.dispose
@gold_window = nil
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = normal_color
x = y = 0
@cursor_width = 0

if $game_temp.choice_start == 0
x = 8
end

if $game_temp.message_text != nil
text = $game_temp.message_text

begin
last_text = text.clone
text.gsub!(/\\[Vv]\[([0-9]+)\]/) { $game_variables[$1.to_i] }
end until text == last_text
text.gsub!(/\\[Nn]\[([0-9]+)\]/) do
$game_actors[$1.to_i] != nil ? $game_actors[$1.to_i].name : ""
end
text.gsub!(/\\[Ww]\[([0-9]+)\]/) do
@pic_width = $1.to_i
""
end
text.gsub!(/\\[Hh]\[([0-9]+)\]/) do
@pic_height = $1.to_i
""
end
text.gsub!(/\\[Ff]\[([\w]+)\]/) do
temp = RPG::Cache.picture($1)
pic_x = self.contents.width - @pic_width - 10
pic_y = self.contents.height / 2 - @pic_height / 2
dest = Rect.new(pic_x,pic_y,@pic_width, @pic_height)
src = Rect.new(0,0,temp.width, temp.height)
self.contents.stretch_blt(dest, temp, src)
""
end

text.gsub!(/\\\\/) { "\000" }
text.gsub!(/\\[Cc]\[([0-9]+)\]/) { "\001[#{$1}]" }
text.gsub!(/\\[Gg]/) { "\002" }

while ((c = text.slice!(/./m)) != nil)

if c == "\000"
c = "\\"
end

if c == "\001"
text.sub!(/\[([0-9]+)\]/, "")
color = $1.to_i
if color >= 0 and color <= 7
self.contents.font.color = text_color(color)
end
next
end

if c == "\002"
if @gold_window == nil
@gold_window = Window_Gold.new
@gold_window.x = 560 - @gold_window.width
if $game_temp.in_battle
@gold_window.y = 192
else
@gold_window.y = self.y >= 128 ? 32 : 384
end
@gold_window.opacity = self.opacity
@gold_window.back_opacity = self.back_opacity
end
next
end

if c == "\n"
if y >= $game_temp.choice_start
@cursor_width = [@cursor_width, x].max
end
y += 1
x = 0

if y >= $game_temp.choice_start
x = 8
end
next
end

self.contents.draw_text(4 + x, 32 * y, 40, 32, c)

x += self.contents.text_size(c).width
end
end

if $game_temp.choice_max > 0
@item_max = $game_temp.choice_max
self.active = true
self.index = 0
end

if $game_temp.num_input_variable_id > 0
digits_max = $game_temp.num_input_digits_max
number = $game_variables[$game_temp.num_input_variable_id]
@input_number_window = Window_InputNumber.new(digits_max)
@input_number_window.number = number
@input_number_window.x = self.x + 8
@input_number_window.y = self.y + $game_temp.num_input_start * 32
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def reset_window
if $game_temp.in_battle
self.y = 16
else
case $game_system.message_position
when 0 # ?
self.y = 16
when 1 # ?
self.y = 160
when 2 # ?
self.y = 304
end
end
if $game_system.message_frame == 0
self.opacity = 255
else
self.opacity = 0
end
self.back_opacity = 160
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def update
super

if @fade_in
self.contents_opacity += 24
if @input_number_window != nil
@input_number_window.contents_opacity += 24
end
if self.contents_opacity == 255
@fade_in = false
end
return
end

if @input_number_window != nil
@input_number_window.update

if Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
$game_variables[$game_temp.num_input_variable_id] =
@input_number_window.number
$game_map.need_refresh = true

@input_number_window.dispose
@input_number_window = nil
terminate_message
end
return
end

if @contents_showing

if $game_temp.choice_max == 0
self.pause = true
end

if Input.trigger?(Input::B)
if $game_temp.choice_max > 0 and $game_temp.choice_cancel_type > 0
$game_system.se_play($data_system.cancel_se)
$game_temp.choice_proc.call($game_temp.choice_cancel_type - 1)
terminate_message
end
end

if Input.trigger?(Input::C)
if $game_temp.choice_max > 0
$game_system.se_play($data_system.decision_se)
$game_temp.choice_proc.call(self.index)
end
terminate_message
end
return
end

if @fade_out == false and $game_temp.message_text != nil
@contents_showing = true
$game_temp.message_window_showing = true
reset_window
refresh
Graphics.frame_reset
self.visible = true
self.contents_opacity = 0
if @input_number_window != nil
@input_number_window.contents_opacity = 0
end
@fade_in = true
return
end

if self.visible
@fade_out = true
self.opacity -= 48
if self.opacity == 0
self.visible = false
@fade_out = false
$game_temp.message_window_showing = false
end
return
end
end
#--------------------------------------------------------------------------
#
#--------------------------------------------------------------------------
def update_cursor_rect
if @index >= 0
n = $game_temp.choice_start + @index
self.cursor_rect.set(8, n * 32, @cursor_width, 32)
else
self.cursor_rect.empty
end
end
end

et apres vous n'avez plus qu'a coler ceci dans chaques nouveau messages


\f[nom_de_l'image_sans_l'extention]


L'image doit être 96x96 et dans le dossier Pictures de votre jeu,
/!\ne mettez pas l'extension/!\,/!\ne renomez pas vos images avec des majuscules/!\ /!\ou avec des espaces/!\!!!!!!!!!!!!!!

À faire: \f[perso1]
À ne pas faire: \f[perso1.png]

Faites ceci à chaques fois dans chaques nouveau message , suivit de ce que dit le perso.

voila . et ça donne cela :

Sans_titre

pour ceux qui n'on pas de faceset il y a un site en japonais pour des faceset's

ps: ce n'est pas moi qui l'ai fait ce script seulement la mise en page ^^ . eychiro

23 août 2007

la gauge de combo

C'est un script qui permet de créer ce quon appelle une overdrive(FF10) limit(FF7). cest une barre qui va monter a chaque coup donner a ladversaire(par defaut). lorsque la barre est au max le perso peut faire un skill spécial!

Créer un nouveau script au dessus de main et appellez le overdrive. insérez le script suivant


# Script Overdrive (cf.FFX) traduit par Ojiro

# Voilà un script qui permet d'installer une jauge Overdrive
# qui se remplit selon les types : Aggressif, Tenace, Victorieux,
# Lâche, Solo, Leader ou Revenant.
# Le type peut être modifié en cours de jeu grâce à :
# $game_actors [ID].overdrive_type = x

#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/  ?Overdrive - KGC_OverDrive? Traduit par Ojiro
#_/----------------------------------------------------------------------------
#_/ Jauge privé d'un joueur lui permettant d'activer une technique unique.
#_/============================================================================
#==============================================================================
# ? Paramètres ?
#==============================================================================

module KGC
  # ?Jauge Max
  #  Indique la valeur pour que la jauge soit pleine
  OD_jauge_MAX = 1000
  # ?Progression de la barre Si
  #  Dépend du Drive Mode du joueur
  #  Pour le 0 et 1, le Drive s'effectue selon la valeurs des dommages reçus.
  OD_GAIN_RATE = [10, 30, 200, 100, 160, 40, 160]

  # ?jauge d'Overdrive incliné
  OD_jauge_SLANT = true
  # ?Position Y de la jauge overdrive en non Combat
  OD_jauge_OFF_Y = 26
  # ?Position Y de la jauge overdrive en Combat
  OD_jauge_OFF_Y_BATTLE = 26
  # ?Barre caché en non Combat / True (Vrai) ou False (Faux)
  OD_jauge_HIDE = false
end

class Window_Base < Window
  # ?Image de la jauge Overdrive
  @@_od_jauge = RPG::Cache.picture("od_gauge.png")
end

#???????????????????????????????????????
$game_special_elements = {}
$imported = {}
$data_states = load_data("Data/States.rxdata")
$data_system = load_data("Data/System.rxdata")
$imported["OverDrive"] = true

# OverDrive??
$game_special_elements["overdrive"] = $data_system.elements.index("Overdrive")

#???????????????????????????????????????

#==============================================================================
# ¦ Game_Battler
#==============================================================================

class Game_Battler
  #--------------------------------------------------------------------------
  # ? Exécute le processus d'origineExécute le processus d'origine?????
  #--------------------------------------------------------------------------
  attr_accessor :base_damage              # Valeur des Dommmages de Base
  #--------------------------------------------------------------------------
  # ? Activation de l'Overdrive
  #--------------------------------------------------------------------------
  alias skill_can_use_KGC_OverDrive skill_can_use?
  def skill_can_use?(skill_id)
    # Activation de l'Overdrive
    if self.is_a?(Game_Actor)
      skill = $data_skills[skill_id]
      if skill != nil && skill.element_set.include?($game_special_elements["overdrive"])
        if self.overdrive < KGC::OD_jauge_MAX
          return false
        end
      end
    end

    # Exécute le processus d'origine
    return skill_can_use_KGC_OverDrive(skill_id)
  end
  #--------------------------------------------------------------------------
  # ? Application effective d'une Aggresif normale
  #--------------------------------------------------------------------------
  alias attack_effect_KGC_OverDrive attack_effect
  def attack_effect(attacker)
    @base_damage = nil

    # Exécute le processus d'origine
    result = attack_effect_KGC_OverDrive(attacker)

    if @base_damage == nil
      # Retient les dommages de base d'origine
      @base_damage = [attacker.atk - self.pdef / 2, 0].max *
        (20 + attacker.str) / 20
    end
    # Dommages reçus
    if result && self.damage.is_a?(Numeric)
      # Augmentation d'Aggresif
      if attacker.is_a?(Game_Actor) && self.is_a?(Game_Enemy) &&
          attacker.overdrive_type == 0 && self.base_damage > 0
        # Calcul du Drive
        od_up = [[self.damage * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min
        # Drive
        attacker.overdrive += od_up
      # Lors des dégâts reçus
      elsif attacker.is_a?(Game_Enemy) && self.is_a?(Game_Actor) &&
          self.overdrive_type == 1 && self.base_damage > 0
        od_up = [self.damage * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max
        self.overdrive += od_up
      end
    end
    return result
  end
  #--------------------------------------------------------------------------
  # ? Application effective de la technique
  #--------------------------------------------------------------------------
  alias skill_effect_KGC_OverDrive skill_effect
  def skill_effect(user, skill)
    @base_damage = nil

    # Exécute le processus d'origine
    result = skill_effect_KGC_OverDrive(user, skill)

    if @base_damage == nil
      # Calcul de la Puissance
      power = skill.power + user.atk * skill.atk_f / 100
      if power > 0
        power -= self.pdef * skill.pdef_f / 200
        power -= self.mdef * skill.mdef_f / 200
        power = [power, 0].max
      end
      # Calcul d'augmentation en pourcentage
      rate = 20
      rate += (user.str * skill.str_f / 100)
      rate += (user.dex * skill.dex_f / 100)
      rate += (user.agi * skill.agi_f / 100)
      rate += (user.int * skill.int_f / 100)
      # Retient les dommages de base
      @base_damage = power * rate / 20
    end
    # Lors des Tenaces reçus
    if result && self.damage.is_a?(Numeric)
      # Augmentation des dégâts
      if user.is_a?(Game_Actor) && self.is_a?(Game_Enemy) &&
          user.overdrive_type == 0 && self.base_damage > 0
        # Calcul du Drive
        od_up = [[self.damage * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min
        # Drive
        user.overdrive += od_up
      # Lors des Tenaces reçus
      elsif user.is_a?(Game_Enemy) && self.is_a?(Game_Actor) &&
          self.overdrive_type == 1 && self.base_damage > 0
        od_up = [self.damage * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max
        self.overdrive += od_up
      end
    end
    # Lors de l'utilisation de l'Overdrive
    if user.is_a?(Game_Actor) && skill.element_set.include?($game_special_elements["overdrive"])
      user.overdrive = 0
    end
    return result
  end
end

#???????????????????????????????????????

#==============================================================================
# ¦ Game_Actor
#==============================================================================

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # ? Installation
  #--------------------------------------------------------------------------
  alias setup_KGC_OverDrive setup
  def setup(actor_id)
    # Exécute le processus d'origine
    setup_KGC_OverDrive(actor_id)

    @overdrive, @overdrive_type = 0, 0
  end

  #--------------------------------------------------------------------------
  # ? Acquisition d'une jauge d'overdrive
  #--------------------------------------------------------------------------
  def overdrive
    @overdrive = 0 if @overdrive == nil
    return @overdrive
  end
  #--------------------------------------------------------------------------
  # ? Opération de la jauge Overdrive
  #--------------------------------------------------------------------------
  def overdrive=(value)
    @overdrive = 0 if @overdrive == nil
    @overdrive = [[value, 0].max, KGC::OD_jauge_MAX].min
  end
  #--------------------------------------------------------------------------
  # ? Acquisition du type d'Overdrive
  #--------------------------------------------------------------------------
  def overdrive_type
    @overdrive_type = 0 if @overdrive_type == nil
    return @overdrive_type
  end
  #--------------------------------------------------------------------------
  # ? Opération du type d'Overdrive
  #--------------------------------------------------------------------------
  def overdrive_type=(value)
    @overdrive_type = 0 if @overdrive_type == nil
    @overdrive_type = value
  end
end

#???????????????????????????????????????

#==============================================================================
# ¦ Window_Base
#==============================================================================

class Window_Base < Window
  #--------------------------------------------------------------------------
  # ? Initialisation
  #--------------------------------------------------------------------------
  alias initialize_KGC_OverDrive_Base initialize
  def initialize(x, y, width, height)
    @od_jauge = @@_od_jauge
    @od_g_width = @od_jauge.width / 3
    @od_g_height = (@od_jauge.height - 2) / 3

    # Exécute le processus d'origine
    initialize_KGC_OverDrive_Base(x, y, width, height)
  end
  #--------------------------------------------------------------------------
  # ? Image de la jauge overdrive
  #--------------------------------------------------------------------------
  def _od_jauge
    return @@_od_jauge
  end
  #--------------------------------------------------------------------------
  # ? Placement de la jauge
  #--------------------------------------------------------------------------
  def _od_jauge=(new_bitmap)
    @@_od_jauge.dispose
    @@_od_jauge = new_bitmap
  end
  #--------------------------------------------------------------------------
  # ? Acquisition de l'image
  #--------------------------------------------------------------------------
  def od_jauge
    return @od_jauge
  end
  #--------------------------------------------------------------------------
  # ? Mise en place de la jauge
  #--------------------------------------------------------------------------
  def od_jauge=(new_bitmap)
    @od_jauge = new_bitmap
  end
  #--------------------------------------------------------------------------
  # ? Nom
  #--------------------------------------------------------------------------
  alias draw_actor_name_KGC_OverDrive draw_actor_name
  def draw_actor_name(actor, x, y)
    unless (!$game_temp.in_battle && KGC::OD_jauge_HIDE)
      draw_actor_od_jauge(actor, x, y, 120)
    end

    # Exécute le processus d'origine
    draw_actor_name_KGC_OverDrive(actor, x, y)
  end
  #--------------------------------------------------------------------------
  # ? Jauge OD
  #--------------------------------------------------------------------------
  def draw_actor_od_jauge(actor, x, y, width)
    # Jauge
    if $game_temp.in_battle && self.is_a?(Window_BattleStatus)
      @gs_od[actor.index] = actor.overdrive if @gs_od[actor.index] == nil
      dx = actor.screen_x + 52 - @od_g_width
      dy = y + ($game_temp.in_battle ? KGC::OD_jauge_OFF_Y_BATTLE : KGC::OD_jauge_OFF_Y)
      dx -= 16 if $imported["HPSPAlter"] && !KGC::HPSP_DRAW_NAME_LUMP
      gw = @gs_od[actor.index] * @od_g_width / KGC::OD_jauge_MAX
      maximum = @gs_od[actor.index] == KGC::OD_jauge_MAX
    else
      @jauge_x = 0
      dx = x + width - @od_g_width - 13
      dy = y + ($game_temp.in_battle ? KGC::OD_jauge_OFF_Y_BATTLE : KGC::OD_jauge_OFF_Y)
      gw = actor.overdrive * @od_g_width / KGC::OD_jauge_MAX
      maximum = actor.overdrive == KGC::OD_jauge_MAX
    end
    # Schéma
    if KGC::OD_jauge_SLANT
      self.contents.fill_rect(dx, dy, @od_g_width + 7, 6, Color.new(0, 0, 0, 0))
      # Graduation
      gy = @od_g_height + 1
      for i in 0...(@od_g_height + 2)
        self.contents.blt(dx + i, dy + gy - i, @od_jauge, Rect.new(0, gy - i, @od_g_width + 2, 1))
      end
      # Effet de Substance
      gy -= 1
      gy2 = @od_g_height * (maximum ? 3 : 2) + 1
      for i in 0...@od_g_height
        self.contents.blt(dx + i + 2, dy + gy - i, @od_jauge, Rect.new(@jauge_x, gy2 - i, gw, 1))
      end
    # Normal
    else
      self.contents.fill_rect(dx, dy, @od_g_width + 2, @od_g_height + 2, Color.new(0, 0, 0, 0))
      self.contents.blt(dx, dy, @od_jauge, Rect.new(0, 0, @od_g_width + 2, @od_g_height + 2))
      gy2 = @od_g_height * (maximum ? 2 : 1) + 2
      self.contents.blt(dx + 1, dy + 1, @od_jauge, Rect.new(@jauge_x, gy2, gw, @od_g_height))
    end
  end
end

#???????????????????????????????????????

#==============================================================================
# ¦ Window_BattleStatus
#==============================================================================

class Window_BattleStatus < Window_Base
  #--------------------------------------------------------------------------
  # ? Initialisation
  #--------------------------------------------------------------------------
  alias initialize_KGC_OverDrive initialize
  def initialize
    @jauge_x, @gs_od = 0, []
    @od_g_width = @@_od_jauge.width / 3
    @od_g_height = (@@_od_jauge.height - 2) / 3

    # Exécute du processus d'origine
    initialize_KGC_OverDrive
  end
  #--------------------------------------------------------------------------
  # ? Rafraichissement
  #--------------------------------------------------------------------------
  alias refresh_KGC_OverDrive refresh
  def refresh
    # Exécute le processus d'origine
    refresh_KGC_OverDrive

    for i in 0...$game_party.actors.size
      @gs_od[i] = $game_party.actors[i].overdrive
    end
  end
  #--------------------------------------------------------------------------
  # ? Renouvelement de la graduation
  #--------------------------------------------------------------------------
  alias update_KGC_OverDrive update
  def update
    # Exécute le processus d'origine
    update_KGC_OverDrive

    # L'image de la gauge est laissée
    unless $imported["HPSPAlter"]
      @jauge_x -= [@od_g_width / 20, 1].max
      @jauge_x = @od_g_width * 2 if @jauge_x < 0
    end
    for i in 0...$game_party.actors.size
      draw_actor_od_jauge($game_party.actors[i], 0, 0, 120)
    end
  end
end

#???????????????????????????????????????

#==============================================================================
# ¦ Scene_Battle
#==============================================================================

class Scene_Battle
  #--------------------------------------------------------------------------
  # ? Fin du combat
  #     result : Résultat (0:Victorieux 1:Lache 2:Défaite)
  #--------------------------------------------------------------------------
  alias battle_end_KGC_OverDrive battle_end
  def battle_end(result)
    case result
    when 0  # Victorieux
      for actor in $game_party.actors
        next unless actor.exist?
        # Quand le type d'OD est Victorieux
        if actor.overdrive_type == 2
          actor.overdrive += KGC::OD_GAIN_RATE[2]
        end
      end
    when 1  # Lache
      for actor in $game_party.actors
        next unless actor.exist?
        # Quand le type d'OD est Lache
        if actor.overdrive_type == 3
          actor.overdrive += KGC::OD_GAIN_RATE[3]
        end
      end
    end

    # Exécute le processus d'origine
    battle_end_KGC_OverDrive(result)
  end
end

#???????????????????????????????????????

#==============================================================================
# ¦ Scene_Battle
#==============================================================================

class Scene_Battle
  #--------------------------------------------------------------------------
  # ? Renouvelement de la graduation
  #--------------------------------------------------------------------------
  alias update_phase4_step2_KGC_OverDrive update_phase4_step2
  def update_phase4_step2
    if @active_battler.is_a?(Game_Actor)
      # Augmentation
      case @active_battler.overdrive_type
      when 4  # Solo
        alone = true
        for actor in $game_party.actors
          next if actor == @active_battler
          # S'il y a un survivant, ce n'est pas considéré comme solo.
          if actor.exist?
            alone = false
            break
          end
        end
        od_up = alone ? KGC::OD_GAIN_RATE[4] : 0
      when 5  # Action
        od_up = KGC::OD_GAIN_RATE[5]
      when 6  # Si Revenant
        od_up = @active_battler.hp <= @active_battler.maxhp / 4 ? KGC::OD_GAIN_RATE[6] : 0
      else
        od_up = 0
      end
      @active_battler.overdrive += od_up
    end

    # Exécute le processus d'origine
    update_phase4_step2_KGC_OverDrive
  end
end

vous pouvez egalement changer comment la barre se remplit(chq coup sur ennemi, chq coup sur perso, chq fuite que vous avez fait et plus!)

une fois le script insérez, il vous faudra une jauge mais, les jauges ne sont pas que des image, enfin je sais pas comment en faire une et je nen ai trouver qun modele.



vous devez mettre cette jauge dans pictures du dossier de votre jeu.la jauge doit etre nommer "od_gauge" et elle doit etre en format png

Utilisation :
1. Créer un attribut(base de donné puis systeme) que vous nommerez overdrive

2. Créer un skill et mettez lattribut overdrive, ce  skill sera un des skill special ke vous pouvez créer

3. dans un combat, vous verrez une jauge apparaitre e ta chaque coup donné a lennemi(par defaut), la jauge sera remplira un peut plus.

4. pour utiliser votre skill special, dans un combat vous navez qua aller dans le menu habituelle de vos magie et si la barre est pleine, vous pourrez lutiliser.


Jespere que se script plaiera a certains dentre vous je nai pas trouver le créateur de ce script mais celui qui la traduit est Ojiro

Publicité
23 août 2007

script intro avant écran titre

Voila un petit scripts pour ceux qui veulent faire une intro avant l'écran titre (l'écran ou on choisis une nouvelle partie)

Tout dabord creer un nouveau scrîpt au dessus de main nommé [Scene_Intro]


                                                                       
Code:
#=================================
#Scene_Intro
#------------------------------------------------------------------
#Les images doivent etres mise dans le dossier pictures
#=================================

class Scene_Intro
 
#-----------------------------------------------------------------
  def main
    $data_system        = load_data("Data/System.rxdata")
    $game_system = Game_System.new
    @start_time = Time.now
    #---------------------------------
    pictures=["Arshes", "Basil", "Sirus", "Estelle", "Felix", "Gloria", "Hilda"]
    @pic_start_array=[1,3,4,14,23,29,80]
    @pic_end_array=[5,7,10,22,32,38,90]
    #---------------------------------
    x_list=[0,300,50,0,0,0,0]
    #------------------------------------
    y_list=[50,250,350,0,0,0,0]
    #ici la vitesse a laquelle les images dispraissent en fondu
    @fade_in_speed=[1,1,1,5,1,2,1]
    @pic_array=Array.new
    for i in 0...pictures.size
      sprite=Sprite.new
      sprite.bitmap=RPG::Cache.picture("" + pictures[i])
      sprite.opacity=0
      sprite.x=x_list[i]
      sprite.y=y_list[i]
      sprite.z=9997
      @pic_array[i]=sprite
    end
    strings=["put string list here"]
    @win=Window_Base.new(0,480,640,64 * strings.size  )
    @win.contents=Bitmap.new(@win.width-32,@win.height-32)
    @win.contents.font.name="Bookman Old Style"
    @win.contents.font.size=28
    @win.opacity=0
    @win.z=9998
    @win.contents.font.color=Color.new(234,236,147,200)
    for i in 0...strings.size
      cw=@win.contents.text_size(strings[i]).width
      @win.contents.draw_text(@win.contents.width/2 - cw/2,64*i,cw,32,strings[i])
    end
   @skip_enabled = false
    for i in 0..3
      if FileTest.exist?("Save#{i+1}.sav")
        @skip_enabled = true
      end
    end
    if $DEBUG
      @skip_enabled=true
    end
    #----------------------------
    Audio.bgm_play("Audio/BGM/Kaze No Ne (E)", 150, 100)
    Graphics.transition
    @go_to_title=false
    @every_other=0
    loop do
      if @go_to_title
        break
      end
      Graphics.update
      Input.update
      $game_system.update
      update
    end
    Graphics.freeze
    for i in 0...@pic_array.size
      @pic_array[i].dispose
    end
    @win.dispose
    $scene=Scene_Title.new
  end

#-----------------------------------------------------------------
  def update
    if Input.trigger?(Input::C) and @skip_enabled
      $game_system.se_play($data_system.cancel_se)
      @go_to_title= true
    end
    if Time.now >= @start_time + 85
      @go_to_title = true
    end
    if Time.now <= @start_time + 38 or Time.now >= @start_time +77
      phase_1
    end
    if Time.now >= @start_time + 33
      phase_2
    end
  end

#-----------------------------------------------------------------
  def phase_1
    for i in 0...@pic_array.size
      time = Time.now - @start_time
      if  time >= @pic_start_array[i] and time <= @pic_end_array[i]
        @pic_array[i].opacity +=@fade_in_speed[i]
      else
        @pic_array[i].opacity -= @fade_in_speed[i]
      end
    end
  end

#-----------------------------------------------------------------
  def phase_2
    @every_other+=1
    if @every_other % 2 ==1
        @win.y -= 1
    end
  end
   
end # Scene_Intro


Puis allez dans Main et metter a la place de "Scene_title","Sene_Intro"

Utilisation

Ligne 15:Spécifier le nom des images
Ligne 16:Ici la vitesse par laquelle les images apparaitrons [Par ordre]
Ligne 17:Ici la vitesse par laquelle les images disparaitrons [Par ordre]
Ligne 19:Ici les axes x ou les images apparaitrons [Par ordre]
Ligne 21:Ici les axes y ou les images apparaitrons [Par ordre]
Ligne 23:Ici la vitesse du fondu[Par ordre]
Ligne 21:Ici les axes y ou les images apparaitrons [Par ordre]
Ligne 35:Ici Un message(Bref ecrivez ce que vous voulez)
Ligne 37:Ici La police du message
Ligne 38:Ici La taille de la police du message
Ligne 39:Ici l'opacité de la fenetre du message
Ligne 41:Ici La couleur du message
Ligne 56:Ici La musique de l'intro

NOTE:Les images doivent etre mise dans le dossier "pictures"

22 août 2007

la nage

La nage est utile pour pouvoir passer de l'eau donc le tutoriel que je vous donne pourra surement servir . Nous alons donc s'y atteler tout de suite

tout d'abord il faut savoir qu'on ne verra pas les pieds du personage donc il faut faire une image du hero en train de nager comme ceci

013_Warrior01    013_Warrior01

voila maintenant que cela est fait il faut aler dans un chipset d'eau et mettre que l'eau est praticable et mettre un carreau obscurcissant. ensuite il faut faire un event dans l'eau comme suit
15739652qq9
puis vous faites des event comme sa de partout ou votre hero peu nager et enfin sur la berge vous faites un event de partout ou le hero peu remonter de l'eau ou y desendre .cet event devra retransformer votre hero en marcheur voila . ce tuto n'est pas tres bien expliqué mais il est utile .     eychiro

22 août 2007

le donjon de naheulbeuk

le donjon de naheulbeuk est une série constitué de plusieurs épisodes délirants avec rire garanti ou non remboursé. donc voici les lien de fichiers zip de l'épopée fantastique de cette saga

Episode 1er
Episode 2nd
Episode 3eme
Episode 4eme
Episode 5eme
Episode 6eme
Episode 7eme
Episode 8eme
Episode 9eme
Episode 10eme
Episode 11eme
Episode 12eme
Episode 13eme
Episode 14eme
Episode 15eme
Episode 16eme
Episode 17eme
Episode 18eme
Episode 19eme
Episode 20eme
Episode 21eme partie 1
Episode 21eme partie 2
Episode 22eme
Episode 23eme
Episode 24eme
Episode 25eme
Episode 26eme partie 1
Episode 26eme partie 2

ensuite vient le film qui est réalisé avec de vrai personnes completement folles (surtout le nain)

/!\/!\/!\mais pour les lire il faut le logiciel /!\ Quick Time /!\ que vous pouvez telecharger gratos sur ce lien/!\/!\/!\

et la les liens pour prendre les videos compréssés en zip (sauf les episodes 1,5,8,10 qui sont eux en mp4 et 11 a 15 qui sont en mov mais ceux en zip étaient en mp4 avant !)

episode 1
episode 2
episode 3
episode 4
episode 5
episode 6
episode 7
episode 8
episode 9
episode 10
episode 11
episode 12
episode 13
episode 14
episode 15

voila ça vaut le détour même si s'a n'est pas incroyablement joué.

 

22 août 2007

les liens

ces liens n'ont pas forcément de rapport avec RPG Maker XP mais ils valent quand même le détour .
les jeux de yetis sont très entraînant et les pingouins n'ont qu'a bien se tenir
pour ceux qui ne conaissent pas LE donjon de naheulbeuk peuvent aller sur la rubrique que j'ai créé rien que pour sa sur ce blog

21 août 2007

les resources

une ressource sert a enrichir la base de donnée de rpg maker . vous trouverez donc ici des sons, des logiciels et des images car les image servent beaucoup vu que c'est a la fois les personages qui bougent , les maps , les monstres et les apparences des menus ainsi que les batlers donc ne vous y fiez pas mais l'image devient très importante dans ce genre de jeux . bon et bien vous n'avez qu'a cliquer sur ce qui vous intéresse bonne e-promenade ...

tout d'abord le lien pour les sons pour l'instant il n'y en a pas beaucoup mais sa peut servir

Les sons

pour l'instant je ne suis pas encore très habile niveau gestion du blog alors pour mettre un son je ne sait pas comment faire désolé mais je me penche activement sur la question pour vous satisfaire

Les logiciels

comme vous le savez surement ,sur un ordinateur ,pour pouvoir faire ce que l'on veut il faut avoir LE logiciel a déquat c'est pourquoi je vous propose quelques liens pour remplir cette fonction

rpg maker xp en français

j'ai pu trouver aussi la version 2003 et 95 qui sont évidement plus encienne mais bon .

rpg maker 2003

rpg maker 95

ha et tenez vous bien j'ai trouvé un rpg maker 3D mais il est en .......... japonais !! même moi je ne my suis pas aventuré c'est dire

ensuite vient les add-on du genre face maker qui permet de créer des visages

tenez voici face maker xp il est en français sa tombe bien non ?

maintenant Chara Maker XP qui lui permet de faire des characters vous savez ceux qui se déplacent dans votre jeu ? lui est en ITALIEN désolé je ne l'ai pas trouvé en français ...

Pour ceux qui ont la tete comme une salade moisie je vous ai trouvé un logiciel qui vou génere des nons d'arme, d'armures, de jeux, de personnage et d'objets et il est en FRANCAIS !! ce logiciel s'appele RM2K Tool

un lien vous enverra vers rpg-legends qui est un bon site pour rpg maker 2000,2003,95,xp et autre il est vraiment super


Publicité
1 2 > >>
le Blog pour RPG maker
Publicité
Archives
Publicité