Mundo Maker
¡Bienvenid@ a Mundo Maker!

¿Quieres aprender todo sobre el RPG Maker?



Regístrate y forma parte de Mundo Maker.
Conectarse

Recuperar mi contraseña

Últimos temas
» Gameplay - Mansión Rybi - RMVXA.
por Miky Joe 2018-12-10, 08:36

» The Town of The Lost Witch [Horror/Suspense] - Enero 2019
por rstudios 2018-12-10, 01:20

» muchas dudas
por DiegoArancibia 2018-12-09, 16:55

» Galería Miky Art [Bocetos y más]
por Miky Joe 2018-12-09, 09:16

» Hemos vuelto
por alex1633 2018-12-08, 23:17

» [MV] Precognition
por franciscojapones 2018-12-08, 07:06

» (AJUDA) Conpatibilidade de 2 scripts simples
por orochii 2018-12-08, 03:14

» ("TCG") Que RPG Maker es el recomendado?
por orochii 2018-12-08, 03:03

» BOAS VINDAS
por orochii 2018-12-08, 02:58

» Script de mensaje de Wecoc
por orochii 2018-12-07, 23:43

Afiliados

¿Cómo hacer un enemigo metálico?

Ver el tema anterior Ver el tema siguiente Ir abajo

RPG Maker XP ¿Cómo hacer un enemigo metálico?

Mensaje por Kprojects el 2018-05-31, 20:52

Con esto me refiero a enemigos metalicos estilo Dragon Quest, que suelen tener muy poca vida, pero cada vez que son atacados sueles recibir 1 de daño, o ninguno, o simplemente esquivan el ataque, y que los golpes criticos sean fatales para ellos.
avatar
Kprojects
Iniciado
Iniciado

0/3

Créditos 35

Gracias : 2

Volver arriba Ir abajo

RPG Maker XP Re: ¿Cómo hacer un enemigo metálico?

Mensaje por Miky Joe el 2018-05-31, 22:27

Bueno, para quitarle 1 o 0, simplemente con subirle la defensa... pero éso de los críticos, ya es otra historia, creo que ahí entra lo que es las fórmulas.

O consiguete un scrich para dar críticos, no soy usuario de XP, pero debe de haber, eso es seguro.

No jugué D.Q. pero otros juegos tienen la temática, cómo Breath of fire 2, que solo les quitas 1, pero sus PV son 5 y con cada "ataque" le quitas 1 y si es crítico le quitas 2 o hasta 3.
avatar
Miky Joe
Veterano
Veterano

0/3

Créditos 2003

Gracias : 79

Volver arriba Ir abajo

RPG Maker XP Re: ¿Cómo hacer un enemigo metálico?

Mensaje por Wecoc el 2018-05-31, 23:36

Lo de que tengan poca vida y mucha defensa física (y quizá mágica) es cuestión de definirle bien los parámetros al enemigo, nada del otro mundo. También lo de fallar el golpe a menudo, simplemente le pones una evasión alta.

En cuanto a lo que el crítico que haga mucho daño, ahí sí entran las fórmulas. En RPG maker XP por defecto el daño crítico siempre es el doble que el normal. Para cambiar eso necesitarás un script.

No estoy seguro de si ya hice algo así hace tiempo, creo que no, así que te he hecho un script que te permitirá hacer lo que pides.
Define un valor multiplicador, por defecto 2.0, que indica por cuanto se multiplica el daño cuando te causan daño físico.
Afecta al target, es decir si defines al actor de ID 1 un valor de 4.0, cuando a éste le hagan crítico le hará más daño de lo normal.

Aunque no importa demasiado, la única desventaja de éste método es que ese valor no se puede cambiar a medio juego; se podría usando Data File Save pero eso complicaría un poco las cosas.

Código:
#==============================================================================
# ** [XP] Critical Multiplier by Actor/Enemy ID
#------------------------------------------------------------------------------
# Este valor afecta al target. Sirve por ejemplo si quieres hacer un enemigo
# al que el daño crítico le hace mucho daño respecto al daño normal.
#==============================================================================

module Critical_Mult
  # Default Critical Multiplier
  Default = 2.0
  # ID => Multiplier
  Actors = {
    1 => 2.5,
    2 => 1.25,
  }
  Enemies = {
    1 => 20,
  }
end

class Game_Battler
  def attack_effect(attacker)
    self.critical = false
    hit_result = (rand(100) < attacker.hit)
    if hit_result == true
      atk = [attacker.atk - self.pdef / 2, 0].max
      self.damage = atk * (20 + attacker.str) / 20
      self.damage *= elements_correct(attacker.element_set)
      self.damage /= 100
      if self.damage > 0
        if rand(100) < 4 * attacker.dex / self.agi
          #----------------------------------------------------
          critical_value = Critical_Mult::Default
          if self.is_a?(Game_Actor)
            if Critical_Mult::Actors.keys.include?(self.id)
              critical_value = Critical_Mult::Actors[self.id]
            end
          elsif self.is_a?(Game_Enemy)
            if Critical_Mult::Enemies.keys.include?(self.id)
              critical_value = Critical_Mult::Enemies[self.id]
            end
          end
          self.damage = (self.damage * critical_value).floor
          #----------------------------------------------------
          self.critical = true
        end
        if self.guarding?
          self.damage /= 2
        end
      end
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1].max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      eva = 8 * self.agi / attacker.dex + self.eva
      hit = self.damage < 0 ? 100 : 100 - eva
      hit = self.cant_evade? ? 100 : hit
      hit_result = (rand(100) < hit)
    end
    if hit_result == true
      remove_states_shock
      self.hp -= self.damage
      @state_changed = false
      states_plus(attacker.plus_state_set)
      states_minus(attacker.minus_state_set)
    else
      self.damage = "Miss"
      self.critical = false
    end
    return true
  end
end

Cabe recordar que por defecto solo los ataques físicos normales pueden causar daño crítico: Ni las magias, ni objetos de daño, ni el estado veneno pueden causarlo. Con este script eso no cambia.

Para configurarlo se hace en el inicio del script, dentro del module Critical_Mult. Ahí verás una serie de globales con formato ID => Multiplicador.
La ID es la posición en la lista en la Base de Datos (pestañas Personajes y Enemigos). Si en la lista no incluyes alguna ID, simplemente usará el valor Default para esa.
avatar
Wecoc
Administrador
Administrador



Créditos 12314

Gracias : 655

Volver arriba Ir abajo

RPG Maker XP Re: ¿Cómo hacer un enemigo metálico?

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


Permisos de este foro:
No puedes responder a temas en este foro.