Some easy fixes here.
Shooting Guns:
Make a Battle Command called "Shoot", set it to Attack type.
Make a Status Condition called NoAtk (or whatever). Set it to "Restriction=No Action" Make it last 0 rounds with 100 percent chance to cure.
Make ONE battle event page with the condition HERO uses SHOOT command.
In that page have a variable check. Set Variable "Ammo" to number of AMMO items in inventory.
Make a Condition Branch that Checks if Ammo >0 and has an ELSE condition
If Ammo >= 1 then remove one AMMO item from the inventory. Characters turn plays out as normal.
If Ammo <= 0 then inflict NoAtk status on Hero. Optionally, Show Message "OUT OF AMMO!"
Two two simplest ways to display bullets remaining would be through face sets or animations, provided you're not using a patch that enables pictures during battle.
The faceset solution requires copies of the character's face set (and the use of the battle system that displays face sets) that represent how much ammunition they currently have.
The animation solution requires you to make battle animations displaying the numbers of bullets remaining. The player has 11, on the turn they shoot, you could add in a Display Battle Animation call with an animation that displays the number 10, to indicate that they are down to 10 bullets.
2.
The Two Round Skill.
Easiest way to do this is through conditions and events. This is set up for an enemy all attack type though. An individually targeting version is still doable, but slightly more involved.
You need to be familiar with calling a common event during battle. It isn't that difficult.
Make a Status Condition called Skill Trigger (or whatever you want). Set it to restrict the character from attacking.
Make a skill called Two Round Trigger (or whatever) and cause it to inflict the Skill Trigger status on the user.
Create an Event Page in the Battle system with the condition Every 1x turn. This page will run every turn. Create a common event called Two Round Skill (or whatever). Call that event from the Every 1x turn battle event page.
Create a variable called Skill Charging (or whatever).
Create a switch called Use Skill.
In the Two Round Skill common event, check to see if the player is in the Skill Trigger condition.
Check to see if the Skill Charging variable is >1. If it is turn on the switch Use Skill.
If it isn't, add 1 to the Skill Charging variable. (Causing the skill to trigger on the next turn's call)
Back in the Battle Event, have a page with the trigger Switch:Use Skill is on.
In this page, set up your animation and damage figures that make up the visual appearance of your skill. You could even have another status Condition that sets the user's animation to whatever your "casting/magic use" animation looks like (just remember to have a line canceling it at the end.)
If you want to take the enemy's defense or intelligence scores into account while applying the damage, you could create variables to track them and adjust the final damage output accordingly.
Finally turn off all your switches, reset your variables and character conditions at the end of the Use Skill event.
Multiple Party Member Skill:
This one I'm not 100% on. I'm planning on using something like this in a project I'm working on, but I'm not to that point yet in development, so this is a theoretical answer. It relies on the same principles as the above solution though.
Create a Status Condition called ComboAtk.
Create a skill called Combo Setup that inflicts the user with Combo Attack.
Put a page in the battle event that occurs every 1x turns and calls a common event.
In that common event, check to see if Party members 1,2, and 3 are all in the ComboAtk status condition.
If they are, turn on a switch called Trigger Combo Attack.
Make a page in the battle event with the condition Trigger Combo Attack = On.
Fill out the details for the attack here, same drill from before. Enemy all skills are easiest to make, individual targeting ones take a little more work.
Remember to clear the status conditions and variables as well as toggle any switches you use back to their original states at the end of the event.
Fatigue Condition on 0 Sp:
Create a page in the battle event with the trigger Every 1x rounds (or just nest it into one event with your other every round functions). Store the values for each party member's SP into a variable.
Have a condition branch that checks to see if their SP > 0, with an Else condition.
If their sp variable is > 0, remove your Fatigue Condition.
If their sp variable is <= 0, add your Fatigue Condition.
End Notes:
These suggestions are geared toward Rpg Maker 2003. Most, if not all, should still be viable in Rpg Maker 2000.
The every 1x turn doesn't mean every player turn, or every party turn, it means every turn. If you have a skill that triggers after two turns, and there were three enemies and one party member, the party member would end his turn, one enemy would act, the second one would act, and then the skill would trigger. If you want it to be locked down to where it takes two turns for one character to use a skill, just make a skill called Charge. Easiest way would be to make it a switch. Have an event page triggered by that switch that adds a Battle Command containing the Skill Subset that your charged up skill is contained in. Make an event that checks to see if the character is using that command, and if so make sure to remove it at the bottom to return the player to normal operating conditions.
Hope this helps.
Vagrancy - Be careful who you wake up in a twenty four hour parking lot.
His name was Not Johnny - A young man becomes a sort of superhero after a crippling injury. He