Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Lucern7

1
Simply but I have some animations that have the same timing, and sound effects and stuff, but different animation sheets, it'd save a lot of time and space if I could just swap the files with scripts, but I can't seem to find a path from the help files and such for that specific datatype.

I feel like it'd be one line of code, but I can't seem to work it out.
2
Both those worked perfectly you're a lifesaver KK!

As far as it being annoying, I forgot to mention I set the text mode to All at once to mimic the window message pop ups like when you use an attack. I did delete the middle "Suffering from Poison" message since it's more redundant than helpful. Now it only plays when a state is added or removed.

For now I've just got a bunch of switches for each individual state that gets the job done well enough, the only time it gets a bit spammy is if multiple states are lost in a turn. That shouldn't happen too often though.
3
Okay so I've been working on a way to give the player more feedback as to when status effects/states are removed. The issue is since I have about 20 or so states the current system I'm using is getting a bit bloated and doesn't really work for enemies since common events only checks enemy index 1-8 rather than get specifics. (It's technically an issue with the party members too but since I plan to have a mostly fixed party order it's not as big of an issue though if it can be fixed too I'd appreciate it)

Here's a screenshot of a bit of the common event I'm using, basically each battle it'd be called on a per-turn basis.
https://www.dropbox.com/s/a40bmo639b06nqg/States.jpg?dl=0

I like trying things out before asking for help but this has got me stumped. It'd also be nice if there was a way to check if they have any states, before running, though the only way I could think of to do this would be have a "No states" state that gets removed if any are added. Either way I look forward to any tips you guys can think of to help me out.

4
Yeah I have a few set up. Only for the party members though the enemies use more generic animations.
5
All that worked perfectly! Though I have one more question how could I set up a conditional to determine who in the party is targeted, in your example lets say I had something like Aluxes shielding, I'd want that animation to play only if he dodged successfully, and so on for the other members.

Still thank you so much for the help so far you've definitely earned a spot in the credits.
6
Oh sure, I'm not sure it's the best method but here's how it goes

-The enemy does an attack for testing purposes I call it Attack Query it does nothing but do 0 damage to a random target (To ensure "Last Target" isn't a blank value) and call a common event I called "Dodge Query" which simplified looks like this.

Dodge Query
@>Show Battle Animation [1],[Attack Animation]
@>Wait 15 Frames
@>Conditional Branch The Left button is being pressed
@>Force Action[1],[Miss] Last target, Execute Now
: Else
@> Force Action[1],[Hit] Last target, Execute Now
:Branch End

and that's pretty much it.

I'd like to add a conditional to check which player is targeted so the right animation could play when a successful dodge is executed.

Now if there's a better way of doing it, or a way to hide the damage 0 pop up for attack query I'd love to hear it. This was the simplest way I could think of. I'm not looking for a full action battle system, just want to give the player a bit more control over the normally RNG based hit and miss system.

7
Okay after fixing the states bug, I've run into another issue. I'm working on a very simple dodging system that runs with the default battle system. It works so far but there's a little aesthetic thing that I haven't been able to fix.

Simply put I press a key, a dodging animation plays and the enemy's attack either hits or misses depending on the timing. However I can't find a way to play a specific animation depending on which party member was targeted. Otherwise everyone looks silly dodging an attack aimed at one person. Ideally I could store the id of "Last Target" to a variable and create a conditional with that variable. Though I'm not sure how to do that.

Also is there a command to disable the damage pop ups? I have a few moves that are only meant to target enemies, so the common event can target them and it looks odd having 0 damage pop up.
8
That did the trick, thank you so much!

Update for anyone else having these issues I combined KK20's suggestion with script to fix the issue of states ending early by a user MobiusXIV on RPGMakerWeb. Here's the final code if anyone else runs into the issue. Just Put it above main and below other scripts.


class Scene_Battle
  #--------------------------------------------------------------------------
  # * Start Main Phase
  #--------------------------------------------------------------------------
  def start_phase4
    # Shift to phase 4
    @phase = 4
    # Turn count
    $game_temp.battle_turn += 1
    # Search all battle event pages
    for index in 0...$data_troops[@troop_id].pages.size
      # Get event page
      page = $data_troops[@troop_id].pages[index]
      # If this page span is [turn]
      if page.span == 1
        # Clear action completed flags
        $game_temp.battle_event_flags[index] = false
      end
    end
    # Set actor as unselectable
    @actor_index = -1
    @active_battler = nil
    # Enable party command window
    @party_command_window.active = false
    @party_command_window.visible = false
    # Disable actor command window
    @actor_command_window.active = false
    @actor_command_window.visible = false
    # Set main phase flag
    $game_temp.battle_main_phase = true
    # Make enemy action
    for enemy in $game_troop.enemies
      enemy.make_action
    end
    # Make action orders
    make_action_orders
# Reduce Status Turn Count <- Added
@action_battlers.each {|battler| battler.remove_states_auto}
    # Shift to step 1
    @phase4_step = 1
  end
  #--------------------------------------------------------------------------
  # * Frame Update (main phase step 1 : action preparation)
  #--------------------------------------------------------------------------
  def update_phase4_step1
    # Hide help window
    @help_window.visible = false
    # Determine win/loss
    if judge
      # If won, or if lost : end method
      return
    end
    # If an action forcing battler doesn't exist
    if $game_temp.forcing_battler == nil
      # Set up battle event
      setup_battle_event
      # If battle event is running
      if $game_system.battle_interpreter.running?
        return
      end
    end
    # If an action forcing battler exists
    if $game_temp.forcing_battler != nil
      # Add to head, or move
      @action_battlers.delete($game_temp.forcing_battler)
      @action_battlers.unshift($game_temp.forcing_battler)
    end
    # If no actionless battlers exist (all have performed an action)
    if @action_battlers.size == 0
      # Start party command phase
      start_phase2
      return
    end
    # Initialize animation ID and common event ID
    @animation1_id = 0
    @animation2_id = 0
    @common_event_id = 0
    # Shift from head of actionless battlers
    @active_battler = @action_battlers.shift
    # If already removed from battle
    if @active_battler.index == nil
      return
    end
    # Slip damage
    if @active_battler.hp > 0 and @active_battler.slip_damage? && !@active_battler.current_action.forcing
      @active_battler.slip_damage_effect
      @active_battler.damage_pop = true
    end
    # Natural removal of states
    # @active_battler.remove_states_auto
    # Refresh status window
    @status_window.refresh
    # Shift to step 2
    @phase4_step = 2
  end
end
9
Hey I was working on a common event triggered combo attack system, and while the combos work as expected there's a side effect with status effects where the person doing the combo attack gets poisoned an additional time the force action executes. So they end up taking 5x damage (it's a 5 hit combo) than intended. I'm not sure if I need a script or if there's a command I missed to prevent this.

It's basically just a conditional branch that detects a keystroke and a force action command to do the attack. The rest is a default battle system. States are crucial for what I want to do for it so this has brought my project to a halt for the time being.