Yes it would be easier to just save the members, remove them, and then readd them after battle, the other (long) way would be to
modify Window_BattleStatus#refresh to only draw actors 1-4 of the party, a few of the methods in Game_Party to only test the first four actors, Scene_Battle#phase3_next_actor needs to be edited, Arrow Actor needs to be modified, Scene_Battle methods make_action_orders and set_target_battlers would also need to be edited.
here use this untested, but it may work
class Scene_Battle
MAX_ACTORS = 4
alias remove_main main
def main
@saved_actors = []
if $game_party.actors.size > MAX_ACTORS
for i in MAX_ACTORS...$game_party.actors.size
@saved_actors << $game_party.actors[i].id
$game_party.remove_actor($game_party.actors[i].id)
end
end
end
alias add_battle_end battle_end
def battle_end(result)
for actor_id in @saved_actors
$game_party.add_actor(actor_id)
end
add_battle_end(result)
end
end
set MAX_ACTORS to the maximum number of actors participating