Welcome to Gaia! ::

Reply Home Colony, Grand Vanguard
Import Station 06 Goto Page: 1 2 3 [>] [»|]

Quick Reply

Enter both words below, separated by a space:

Can't read the text? Click here

Submit

Locke Trufeld
Captain

PostPosted: Wed Aug 04, 2004 6:35 pm


Vanguardian Mech Battle Thread

This thread is for all friendly battles with Mechs, and also includes all the rules and other information about Mechs for Battling Conveniences.
Keep in mind that battles that are in means of RPing events shall take place in that RP Thread, instead of here.

Edit: As of now, this Battle System will be outdated, and obsolete, as I have created a new Java program for calculating the damages, using a totally new formula.


Quote:
Battle Sequences.

1A. The player first attacking gets to go first, obviously. This usually taken affect if someone happens to throw in the first attack in the RP.

1B. A dice roll can take place to determine who goes first. The judge will roll 2, 100 sided dice, and the Battle Contestants will choose either 1st die or 2nd die. The higher number will go first.

2A. If it is an event battle, or a battle in the RP, where you have no access to your other equipments, you must engage the battle with whatever equipments you have equipped on your Mech.

2B. If it''s a friendly battle, or a battle in the RP, where you have access to your other equipments, you may choose your equipments before starting.

3. Calculate your stat. Post your Mech''s original stats, and post every eqiupment you have equipped.
HP, EN, Weapons and their Power, Defense and Shield Defense if any, Speed and Speed Boosting Equipments, if any. Also post any other equipments you may have and what it does.
Then, post the final stats of your Mech, mainly the Speed stat, as many equipments decreses the speed.

4. Commence Fight!
Each turn will go in this order.

a. Any recoveries. All Mechs will recover atleast 5 EN.
b. Any EN costs that takes place every turn, such as Jet Boosters.
c. Select Attack and target, Defend, or Evade.
d. Judge rolls 100 sided dice. Number of dice varies in equipment.
e. Judge calculates damage dealt, and posts.
f. Opponent''s turn. Opponent repeat a~f.

5. Whenever someone''s HP reaches 0, that pilot loses.

The rules may change in the future, as this is still in Beta Testing. Also, there will be new equipments in the future, which may also affect a few things in this battle system.

Quote:
With a //roll-sides100 command on AOL / AIM chatrooms, the first dice will determine the Weapon efficiency, and the second for Accuracy.

Damages will be calculated in this form.
( Weapon Power * Weapon Efficiency % * Accuracy % ) / ( Defense / 750 )
Weapon Power depends on what weapon you will use.
Weapon Efficiency depends on the first dice you roll.
Accuracy depends on the second dice you roll.
Any other defensive or evasive actions that the enemy has depends on the 3rd to whatever many dice the opponent has.

At an average, they will follow along these lines..
Weapon Efficiency
1~10 = 80%
11~25 = 90%
26~75 = 100%
76~90 = 110%
91~100 = 120%

Accuracy
1~20 = 0% Miss
21~30 = 25% Scrape
31~40 = 50% Weak Hit
41~50 = 75% Light Hit
51~70 = 100% Normal Hit
71~90 = 125% Directy Hit
91~100 = 150% Critical

For every 50 difference in the attacking and defending Mechs'' speed stat, the number will vary by 1 on the dice.
Say one will have 300 speed, and the other would have 700 speed, the difference being 400 speed, the change in the numbers on the dice will go up or down by 8. If you are the faster Mech, your rolls will be +8 to everything in the accuracy roll, and for the slower Mech, it would be a -8 to everything in the accuracy roll.

Defending will raise your stat by Mech Defense * 2 + any shield / barriar Defense for the following opponent''s turn.
Evading will raise your stat by Speed * 2 for the following opponent''s turn.

However, you will not be able to attack when defending or evading.
PostPosted: Wed Aug 04, 2004 6:36 pm


Bringing Mechs into VA

A. Unique, Grade A Mech = 5,000 Gold
B. Unique, Grade B Mech = 2,500 Gold
C. Unique, Grade C Mech = 1,000 Gold
D. Uncommon, Above Average Mech = 800 Gold
E. Common, Above Average Mech = 600 Gold
F. Uncommon, Average Mech = 400 Gold
G. Common, Average Mech = 200 Gold

Discounts are possible, depending on your RPing skills. It might help to gain interest in some missions.

We intend this to be a way to get the new people to RP more actively within the guild for the discount. Also, for those who do earn their units, it's just a way to make them feel like they would want to RP for their money/effort's worth, after gaining the unit they wished to RP with. And it also has the fairness factor, of how it controls those random, new people just jumping into the RP with godly mechs, ruining the RP with an unbalanced force. Your cooperation in this is very important to us and to the rest of the other RPers.

Required information are things of the following.
Quote:
Mech name:
Picture ( Optional ):
HP ( or Armor Points, etc. ):
EN ( Energy ):
Def ( Defense ):
Agl ( Agility ):

Terrain Compatibility ( Put S, A, B, C, D, or - for the following. S = Best, D = Worst, - = Incapable of being in that terrain. )
Sky:
Land:
Water:
Space:

Size ( SS = Human size, S, M, L, LL = Carrier Ship size ):

Sword ( Yes or no ):
Shield ( Yes or no):
Any other special attribute, such as barriers:

Attacks
Attack Name:
Attack Power:
Attack Range ( Or MAP attack ):
Max Ammo or EN Cost, if any:
Accuracy Bonus:
Critical Hit Bonus:
Weapon Terrain Compatibility ( In the order of Sky, Land, Water, Space, like above. ):
Any other requirements for attack:


Vanguardian Original Mechs

Weapons = +Attack, -Agility, Consume Ammo or EN/Fuel
Sheilds = +Defense, - Agility
Barriers = ++Defense, Consumes EN

Higher level equipments = Less penalties, stronger, efficient.

Other accessories, such as..
Jet Packs, Boosters = Agility +, Consumes EN.
and more.

Check the other thread for more details.

Locke Trufeld
Captain


Locke Trufeld
Captain

PostPosted: Wed Aug 04, 2004 6:37 pm


Tutorial for Judges

This is a tutorial for judges. Judges must be able to go on AOL or AIM, and have the use of online chatrooms, whether public or private. Prefferably Private Chat Rooms.


1B. The first thing you will do is ask the Mech Pilots whether if they'll pick the first number or the second number, which may be the bigger number roll.
After the Mech Pilots settle with whichever number will be larger, you will type this in the chat.

//roll-sides100-dice#. Replace # with the number of Mech Pilots that will be participating in the battle. There will be numbers displayed in the chatroom, and the order the battle will take place in will be from the greatest number to the lowest number.

For example.

Mech Pilot A calls the 2nd dice.
Mech Pilot B calls the 4th dice.
Mech Pilot C calls the 3rd dice.
Mech Pilot D calls the 1st dice.

And you type //roll-sides100-dice4 in the chatroom, as there are 4 Mech Pilots in this battle. After that, something like this should be displayed in the chatroom.

*OnlineHost*: SwordNamed Truth rolled 4 100-sided dice: 86 25 93 54

Since the highest number there is 93, which is the 3rd dice, whoever called the 3rd dice will go first. In this case, Mech Pilot C. Second highest, 86, is the 1st dice, which Mech Pilot D called. The same for 3rd highest, and least numbers, and you should end up with this order.

Mech Pilot C goes first.
Mech Pilot D goes second.
Mech Pilot B goes third.
Mech Pilot A goes last.


2B ~ 3. Next, you will confirm the Mechs' Final Stats. That will be their HP, EN, Defense, Agility, and their weapons, with each stat calculated, such as the -Speed for most equipments.

Then, Get their username, stats, weapons and their power, EN Cost or Ammunition Number, if any, and any other systems their Mechs may have, such as Shields, Barriars, Regeneration, etc. and post them in this thread.


4. Now, you simply follow the common patterns.

a. Any recoveries. All Mechs will recover atleast 5 EN.
b. Any EN costs that takes place every turn, such as Jet Boosters.
c. Select weapon, attack, and target.
d. Judge rolls 100 sided dice. Number of dice varies in equipment.
e. Judge calculates damage dealt, and posts.
f. Opponent's turn. Opponent repeat a~f.

Things will go in this order.

Judges will be the one doing all the calculations and rolling.

Keeping track of HP, EN, and Ammunition might help when you have a Note Pad open.

For d., type //roll-sides100-dice2 to get the Weapon Efficiency and Accuracy, with the list above. Add another dice if the opponent has a shield, barriar, or any other defensive / evasive move.

Whether if the opponent's defensive / evasive move is a success may depend on the move itself, speed, and / or the attack used. Ex. I Field weakens beam attacks.

After that, calculate the damage dealt. Say, an attack that has the power 3000, and rolled 3 dice, as the opponent has a shield. Opponent's defense is 700, and the shield is + 200 Defense. Opponent has the same speed as you.

*OnlineHost*: SwordNamed Truth rolled 3 100-sided dice: 79 92 29

Since the 3rd roll was not above 50, your attack was also blocked by the shield, so the + 200 to Defense applies.

( Weapon Power * Weapon Efficiency % * Accuracy % ) / ( Defense / 750 )

( 3000 * 110% * 150% ) / ( 700 + 200 / 750 )
( 4950 ) / ( 900 / 750 )
( 4950 ) / ( 1.2 )
Damage = 4125

e. Now, you subtract the damage dealt from the Mech's HP, which has recieved this damage, and post the HP and EN left of everyone's Mechs.

f. Repeat.
PostPosted: Fri Aug 06, 2004 1:48 pm


I guess reserved for future updates.

Locke Trufeld
Captain


Partisus

PostPosted: Wed Aug 11, 2004 9:25 am


*Checks the mission listings*

((Anything is fine, as long as I have some gravity and something solid beneath my feet. Also, the link at the top of this still points to the old GV thread...))
PostPosted: Wed Nov 10, 2004 12:02 pm


Alright. I'm in school right now, during my Java class. I want to make a beta test of the Mech Battle System right now with Java, but I want to confirm a few things.

What should the Basic Minimum and Maximum of each stat be? This is just for computer generated mechs, so... something reasonable, and doesn't have to be based on the current population of the mechs we have right now.

Second.. o_o; My programming is still horrible at this point, so it's gonna be very ugly with lots of things repeated due to me not knowing enough commands and stuff for Java. @_@ Of course, we can edit it after I post it here and everything, so.. yeah.

After this beta, I'll plan on making a 2 player one, except it wouldn't be online or anything, since I don't know how to make it operate online. o_o;

Locke Trufeld
Captain


Partisus

PostPosted: Wed Nov 10, 2004 12:06 pm


For the stat generation, I recommend like 800-1200, and a system to keep the total of the stats within a certain range would be a good idea when you have more time.

And I'd be happy to take a look through your code, and I could take a look through the networking stuff--we don't need to do anything fancy, so it shouldn't be too bad.
PostPosted: Sat Nov 13, 2004 4:27 pm


Btw, is it possible to return more than one variables from a method?

And to make lots of different variable equal something from the same method? In this case, I want to repeat this JOptionPane.showInputDialog method equal these stat variables, without having to type

hp=getStat();
en=getStat();
def=getStat();
agl=getStat();
etc.

Locke Trufeld
Captain


Locke Trufeld
Captain

PostPosted: Sun Jan 30, 2005 1:10 pm


Yeesh. This came out pretty ugly. For those that knows Java... yeah. @_@ Here is what I have of the main program.

import javax.swing.*;

public class BattleSystemAPP
{
public static void main(String args[])
{
String spiritA;
String spiritB;
int moraleA;
int moraleB;
String x="";
String y="";
int z;
double tBonusA;
double tBonusB;
double x1;
double y1;
int rand;
double damage=0;
String weapon;
int power;
String type;
String weaponC;
double weaponE;
double sizeBonus=0;
int sizeD;
double sBonus;
int attackSkill=0;
String terrain;
double tBonus;
String wCrit;
int cBonus;
int critical;
int x2=0;
int y2=0;
String command;

//Selects two characters participating in the battle.
CharacterClass characterA = new CharacterClass();
CharacterClass characterB = new CharacterClass();

//Character Morale Modifier. Enter between 50 - 150
spiritA=JOptionPane.showInputDialog(characterA.getPilot()+"'s Morale?");
moraleA=Integer.parseInt(spiritA);
spiritB=JOptionPane.showInputDialog(characterB.getPilot()+"'s Morale?");
moraleB=Integer.parseInt(spiritB);

/*For either of those characters that have the special ability, Foresight,
with Morale of 130 or above gets a Accuracy and Evade bonus of 10.*/
if(characterA.getForesight()==true){
if(moraleA>=130) x2=10;
}

if(characterB.getForesight()==true){
if(moraleB>=130) y2=10;
}

//Selects the two mechs the pilots will be pilotting in the battle.
MechClass mechA = new MechClass();
MechClass mechB = new MechClass();

//Displays the two mechs' attacks and Weapon Info.
System.out.println("Mech: "+mechA.getMech()+
"\n Attack Name razz ower,Range, Ammo, Accuracy, Critical,Cmptblty,Requirements\n"+
mechA.getAttacks()+
"\n\nMech: "+mechB.getMech()+
"\n Attack Name razz ower,Range, Ammo, Accuracy, Critical,Cmptblty,Requirements\n"+
mechB.getAttacks()+"\n");

//Terrain Modifier.
String terrainA=JOptionPane.showInputDialog(characterA.getPilot()+" Terrain: Sky, Land, Water, Space?");
String terrainB=JOptionPane.showInputDialog(characterB.getPilot()+" Terrain: Sky, Land, Water, Space?");

/*Player A Environment Compatibility. Determines how much environment
bonus Player A will get.*/
if(terrainA.equalsIgnoreCase("Sky")){
x=characterA.getSky();
y=mechA.getSky();
}

else if(terrainA.equalsIgnoreCase("Land")){
x=characterA.getLand();
y=mechA.getLand();
}

else if(terrainA.equalsIgnoreCase("Water")){
x=characterA.getWater();
y=mechA.getLand();
}

else if(terrainA.equalsIgnoreCase("Space")){
x=characterA.getSpace();
y=mechA.getSpace();
}

z=getNumber(x, y);

if(z>6) tBonusA=1.1;
else if(z==6) tBonusA=1;
else if(z>3) tBonusA=0.9;
else if(z>1) tBonusA=0.8;
else tBonusA=0.4;

/*Player B Environment Compatibility. Determines how much environment
bonus Player B will get.*/
if(terrainA.equalsIgnoreCase("Sky")){
x=characterB.getSky();
y=mechB.getSky();
}

else if(terrainB.equalsIgnoreCase("Land")){
x=characterB.getLand();
y=mechB.getLand();
}

else if(terrainB.equalsIgnoreCase("Water")){
x=characterB.getWater();
y=mechB.getLand();
}

else if(terrainB.equalsIgnoreCase("Space")){
x=characterB.getSpace();
y=mechB.getSpace();
}

z=getNumber(x, y);

if(z>6) tBonusB=1.1;
else if(z==6) tBonusB=1;
else if(z>3) tBonusB=0.9;
else if(z>1) tBonusB=0.8;
else tBonusB=0.4;

command=JOptionPane.showInputDialog(characterB.getPilot()+", Attack, Evade, or Defend?");

//Weapon Accuracy Bonus Modifier. Shown on list of Attacks.
String varA=JOptionPane.showInputDialog("Weapon Accuracy Bonus:");
int accBonus=Integer.parseInt(varA);

//Final Accuracy Calc.
x1=(characterA.getAccuracy()+x2)*tBonusA+accBonus+130;
y1=((characterB.getEvade()+y2)+mechB.getAgl())*tBonusB;

/*Distance Modifier. May not be necessary, but in case of future
updates with a Hex Grid Map, will come in handy for such damage formula.*/
String varD=JOptionPane.showInputDialog("Distance: 1~12ish");
int distance=Integer.parseInt(varD);
z=(5-distance)*3;

//Terrain Bonus Modifier ( Accuracy )
String varT=JOptionPane.showInputDialog("Terrain Bonus: (100% - Accuracy Down %) in decimal notation.");
double terrBonus=Double.parseDouble(varT);

//Accuracy Bonus from Target Unit's size.
if (mechB.getSize().equalsIgnoreCase("LL")) sizeBonus=1.4;
else if(mechB.getSize().equalsIgnoreCase("L")) sizeBonus=1.2;
else if(mechB.getSize().equalsIgnoreCase("M")) sizeBonus=1;
else if(mechB.getSize().equalsIgnoreCase("S")) sizeBonus=0.8;
else if(mechB.getSize().equalsIgnoreCase("SS")) sizeBonus=0.1;

//highMiss = Accuracy Percentage.
double highMiss=100-((x1-y1)*terrBonus*sizeBonus+z);
if(command.equalsIgnoreCase("Evade")) highMiss=highMiss/2;

if(highMiss<=0) highMiss=0;
System.out.println("Accuracy = "+(100-highMiss)+"%");

//Accuracy Roll.
rand=1+(int) (Math.random()*99);

//Case when attack misses.
if(rand damage=0;
System.out.println("\nMiss");
if(characterA.getPersonality().equalsIgnoreCase("Aggressive")) moraleA+=1;
else if(characterA.getPersonality().equalsIgnoreCase("Very Aggressive")) moraleA+=2;
if(characterB.getPersonality().equalsIgnoreCase("Timid")) moraleB+=3;
if(characterB.getSpiritEvade()==true) moraleB+=1;
}

//Case when attack hits.
else if(rand>=highMiss){
//Weapon Information Input
weapon=JOptionPane.showInputDialog("Enter Weapon Power.");
power=Integer.parseInt(weapon);
type=JOptionPane.showInputDialog("Melee or Shot?");
if(type.equalsIgnoreCase("Melee")) attackSkill=characterA.getMelee();
else if(type.equalsIgnoreCase("Shot")) attackSkill=characterA.getShot();
weaponC=JOptionPane.showInputDialog("Weapon Environment Compatibility?");
weaponE=getWeaponCompatibility(weaponC);

//Damage Calculation Formula.
x1=(power*(attackSkill+moraleA))/200*weaponE;
y1=(mechB.getDef()*(characterB.getDefense()+moraleB))/200;
x=mechA.getSize();
y=mechB.getSize();
sizeD=getSizeDifference(x, y);
sBonus=(100+(sizeD*10))/100;
terrain=JOptionPane.showInputDialog("Terrain Bonus: (100% + Defense Up %) in decimal notation.");
tBonus=Double.parseDouble(terrain);
damage=(x1-y1)*tBonus*sBonus;

if(characterA.getPersonality().equalsIgnoreCase("Timid")) moraleA+=1;
if(characterB.getPersonality().equalsIgnoreCase("Aggressive")) moraleB+=2;
else if(characterB.getPersonality().equalsIgnoreCase("Very Aggressive")) moraleB+=3;
else moraleB+=1;
if(characterA.getSpiritHit()==true) moraleA+=1;
if(characterB.getSpiritDamage()==true) moraleB+=2;
}

//Critical Hit Formula.
wCrit=JOptionPane.showInputDialog("Weapon Critical Bonus: In Int%");
cBonus=Integer.parseInt(wCrit);
critical=100-(characterA.getSkill()-characterB.getSkill()+cBonus);
rand=1+(int)(Math.random()*99);

//Case when Critical Hit.
if(rand>=critical){
damage=damage*1.25;
System.out.println("\nCritical Hit");
}

//Case when Mech B has After Image.
if(mechB.getAfterImage()==true){
if(moraleB>=130){
rand=1+(int)(Math.random()*99);
if(rand>=50){
if(highMiss<200){
damage=0;
System.out.println("\nAfter Image");
}
else System.out.println("\nAfter Image Break");
}
}
}

//Case when Mech B is capable of using Sword Cut.
rand=1 + (int) (Math.random( ) *16);
if(rand<=characterB.getSwordCut()){
if(mechB.getSword()==true){
if(highMiss<150){
damage=0;
System.out.println("\nSword Cut");
}
else System.out.println("\nSword Cut Break");
}
}

//Case when Mech B is defending.
if(command.equalsIgnoreCase("Defend")) damage=damage/2;

//Case when Mech B is capable of using Shield.
rand=1 + (int) (Math.random( ) *16);
if(rand<=characterB.getShield()){
if(mechB.getShield()==true){
if(highMiss<200){
damage=damage*0.6;
System.out.println("\nShield");
}
else System.out.println("\nShield Break");
}
}

//Case when Pilot B has Guard.
if(characterB.getGuard()==true) {
if(moraleB>=130) damage=damage*0.8;
}

//Final Output ( Including both pilots' morale, and damage dealt.
System.out.println(characterA.getPilot()+" Morale: "+moraleA+
"\n"+characterB.getPilot()+" Morale: "+moraleB+
"\n\nDamage = "+damage);

System.exit(0);
}

//Used for final Environment Compatibility Value.
public static int getNumber(String x, String y)
{
int x1=0;
int y1=0;
int z1;

if(x.equalsIgnoreCase("S")) x1=4;
else if(x.equalsIgnoreCase("A")) x1=3;
else if(x.equalsIgnoreCase("B")) x1=2;
else if(x.equalsIgnoreCase("C")) x1=1;
else if(x.equalsIgnoreCase("D")) x1=0;

if(y.equalsIgnoreCase("S")) y1=4;
else if(y.equalsIgnoreCase("A")) y1=3;
else if(y.equalsIgnoreCase("B")) y1=2;
else if(y.equalsIgnoreCase("C")) y1=1;
else if(y.equalsIgnoreCase("D")) y1=0;

z1=x1+y1;
return z1;
}

//Weapon Environment Compatibility Bonus.
public static double getWeaponCompatibility(String weaponC)
{
double x=0;

if(weaponC.equalsIgnoreCase("S")) x=1.1;
else if(weaponC.equalsIgnoreCase("A")) x=1;
else if(weaponC.equalsIgnoreCase("B")) x=0.9;
else if(weaponC.equalsIgnoreCase("C")) x=0.8;
else if(weaponC.equalsIgnoreCase("D")) x=0.4;

return x;
}

//Used for Mech Size Difference Value.
public static int getSizeDifference(String x, String y)
{
int x1=0;
int y1=0;
int z1;

if(x.equalsIgnoreCase("LL")) x1=4;
else if(x.equalsIgnoreCase("L")) x1=3;
else if(x.equalsIgnoreCase("M")) x1=2;
else if(x.equalsIgnoreCase("S")) x1=1;
else if(x.equalsIgnoreCase("SS")) x1=0;

if(y.equalsIgnoreCase("LL")) y1=4;
else if(y.equalsIgnoreCase("L")) y1=3;
else if(y.equalsIgnoreCase("M")) y1=2;
else if(y.equalsIgnoreCase("S")) y1=1;
else if(y.equalsIgnoreCase("SS")) y1=0;

z1=x1-y1;
return z1;
}
}

From this point, I can get some help with the cleaning up part.. @_@ LoL.
PostPosted: Sun Jan 30, 2005 5:28 pm


This is the Character Class that I have right now. As people get stronger or we get new people's stats, I will update this.

import javax.swing.*;

public class CharacterClass
{
private String character;
private int melee;
private int shot;
private int evade;
private int accuracy;
private int defense;
private int skill;
private String sky;
private String land;
private String water;
private String space;
private String personality;
private int morale=100;
private int swordCut=0;
private int shield=0;
private int counter=0;
private boolean foresight=false;
private boolean guard=false;
private boolean spiritEvade=false;
private boolean spiritHit=false;
private boolean spiritDamage=false;
private int x=0;
//private int potential;

public CharacterClass()
{
setCharacter();
}

public void setCharacter()
{
do{
character=JOptionPane.showInputDialog("Enter Character Name.");

if(character.equalsIgnoreCase("Arc")){
melee=142;
shot=153;
evade=177;
accuracy=175;
defense=105;
skill=165;

sky="A";
land="A";
water="B";
space="A";

personality="Aggressive";

//Assist Attack level 2
//Assist Defend level 1
swordCut=4;
foresight=true;
spiritEvade=true;
}

else if(character.equalsIgnoreCase("Dion")){
melee=155;
shot=143;
evade=166;
accuracy=159;
defense=118;
skill=162;

sky="A";
land="A";
water="C";
space="A";

personality="Aggressive";

//Assist Attack level 1
}

else if(character.equalsIgnoreCase("Guilliam")){
melee=170;
shot=140;
evade=100;
accuracy=170;
defense=160;
skill=160;

sky="A";
land="A";
water="B";
space="A";

personality="Aggressive";

//potential=3;
}

else if(character.equalsIgnoreCase("Heath")){
melee=100;
shot=180;
evade=140;
accuracy=170;
defense=170;
skill=110;

sky="A";
land="B";
water="B";
space="S";

personality="Normal";
}

else if(character.equalsIgnoreCase("Leowen")){
melee=190;
shot=110;
evade=120;
accuracy=150;
defense=180;
skill=150;

sky="A";
land="A";
water="B";
space="A";

personality="Very Aggressive";
}

else if(character.equalsIgnoreCase("Alexander")){
melee=100;
shot=175;
evade=200;
accuracy=180;
defense=125;
skill=120;

sky="A";
land="A";
water="D";
space="S";

personality="Normal";
}

else if(character.equalsIgnoreCase("Partisus")){
melee=50;
shot=225;
evade=225;
accuracy=200;
defense=100;
skill=115;

sky="A";
land="S";
water="C";
space="A";

personality="Normal";
}

else if(character.equalsIgnoreCase("Vicki")){
melee=106;
shot=144;
evade=121;
accuracy=170;
defense=142;
skill=174;

sky="A";
land="B";
water="C";
space="A";

personality="Aggressive";
}

else if(character.equalsIgnoreCase("Ember")){
melee=70;
shot=190;
evade=190;
accuracy=190;
defense=190;
skill=70;

sky="B";
land="C";
water="B";
space="A";

personality="Aggressive";
}

else if(character.equalsIgnoreCase("Garde")){
melee=50;
shot=200;
evade=250;
accuracy=250;
defense=100;
skill=65;

sky="A";
land="B";
water="C";
space="S";

personality="Very Aggressive";
}

else if(character.equalsIgnoreCase("Kujaviak")){
melee=190;
shot=190;
evade=150;
accuracy=150;
defense=100;
skill=135;

sky="S";
land="A";
water="B";
space="S";

personality="Aggressive";

//Assist Attack level 5
spiritEvade=true;
spiritHit=true;
spiritDamage=true;
swordCut=7;
shield=4;
}

else if(character.equalsIgnoreCase("RenegadeA")){
melee=135;
shot=137;
evade=144;
accuracy=159;
defense=158;
skill=162;

sky="A";
land="A";
water="C";
space="A";

personality="Normal";
}


else {
x=1;
JOptionPane.showMessageDialog(null, "Not in Directory.");
}

}while(x==1);
}

public String getPilot()
{
return character;
}

public int getMelee()
{
return melee;
}

public int getShot()
{
return shot;
}

public int getEvade()
{
return evade;
}

public int getAccuracy()
{
return accuracy;
}

public int getDefense()
{
return defense;
}

public int getSkill()
{
return skill;
}

public String getSky()
{
return sky;
}

public String getLand()
{
return land;
}

public String getWater()
{
return water;
}

public String getSpace()
{
return space;
}

public String getPersonality()
{
return personality;
}

public int getSwordCut()
{
return swordCut;
}

public int getShield()
{
return shield;
}

public int getMorale()
{
return morale;
}

public boolean getForesight()
{
return foresight;
}

public boolean getGuard()
{
return guard;
}

public boolean getSpiritEvade()
{
return spiritEvade;
}

public boolean getSpiritHit()
{
return spiritHit;
}

public boolean getSpiritDamage()
{
return spiritDamage;
}
}

Locke Trufeld
Captain


Locke Trufeld
Captain

PostPosted: Sun Jan 30, 2005 5:30 pm


Here's the Mech Class. It's still missing a few units for even the first battle, so.. lots of updating will be necessary for this class. Btw, I'm still missing some stuff for the Attacks category, such as the Accuracy Bonus and Critical Bonus.

import javax.swing.*;

public class MechClass
{
private String mech;
private int HP;
private int EN;
private int def;
private int agl;
private String sky;
private String land;
private String water;
private String space;
private String size;
private boolean sword=false;
private boolean shield=false;
private boolean afterImage=false;
private String notes="";
private String attacks="";
private int x=0;

public MechClass()
{
setMech();
}

public void setMech()
{
do{
mech=JOptionPane.showInputDialog("Enter unit name.");

if(mech.equalsIgnoreCase("Zaku II F-2")){
HP=4000;
EN=120;
def=1100;
agl=850;

sky="-";
land="A";
water="B";
space="A";

size="M";

sword=true;
shield=true;

notes="Notes: None";

attacks="120mm Machine Gun : 1400, 1-4, Ammo 10, Acc 0 , Crit 10, A/A/B/A"+
"\nHeat Hawk : 1400, 1 , None , Acc 15, Crit 0 , -/A/A/A"+
"\n240mm Bazooka : 1600, 3-5, Ammo 4 , Acc-10, Crit-10, A/A/A/A";
}

else if(mech.equalsIgnoreCase("Aqua Valiance")){
HP=16000;
EN=350;
def=1800;
agl=1000;

sky="A";
land="C";
water="B";
space="A";

size="LL";

notes="Barriar.. thingy.";

attacks="Twin Vulcan : 2800, 1 , Ammo 20, Acc 35, Crit 30, A/A/B/A"+
"\nMulti Trace Missiles: 3200, MAP, Ammo 2 , Acc 10, Crit 10, A/A/C/A, Morale 120"+
"\nPhoton Rifle : 4500, 1-6, Ammo 10, Acc 20, Crit 0 , A/A/B/A"+
"\nRosh Saber : 4600, 1-2, None , Acc 40, Crit 35, A/A/B/A"+
"\nFang Slasher : 4900, 2-5, EN 10 , Acc 25, Crit 40, A/A/B/A, Morale 105"+
"\nGraviton Rifle BST : 5300, 2-8, EN 35 , Acc 15, Crit 10, A/A/B/A, Morale 120";
}

else if(mech.equalsIgnoreCase("Huckebein Mk-III")){
HP=6000;
EN=320;
def=2200;
agl=1700;

sky="A";
land="A";
water="B";
space="A";

size="M";

sword=true;
afterImage=true;

notes="Gravity Territory: EN Cost 5, Damage under 1500 = 0";

attacks="Twin Vulcan : 2800, 1 , Ammo 20, Acc 35, Crit 30, A/A/B/A"+
"\nMulti Trace Missiles: 3200, MAP, Ammo 2 , Acc 10, Crit 10, A/A/C/A, Morale 120"+
"\nPhoton Rifle : 4500, 1-6, Ammo 10, Acc 20, Crit 0 , A/A/B/A"+
"\nRosh Saber : 4600, 1-2, None , Acc 40, Crit 35, A/A/B/A"+
"\nFang Slasher : 4900, 2-5, EN 10 , Acc 25, Crit 40, A/A/B/A, Morale 105"+
"\nGraviton Rifle BST : 5300, 2-8, EN 35 , Acc 15, Crit 10, A/A/B/A, Morale 120";
}

else if(mech.equalsIgnoreCase("Huckebein Gunner")){
HP=7000;
EN=350;
def=2100;
agl=1800;

sky="A";
land="B";
water="C";
space="A";

size="M";

notes="Gravity Territory: EN Cost 5, Damage under 1500 = 0";

attacks="Twin Vulcan : 2800, 1 , Ammo 20, Acc 35, Crit 30, A/A/A/A"+
"\nMulti Trace Missiles: 3200, MAP, Ammo 2 , Acc 10, Crit 10, A/A/C/A, Morale 120"+
"\nLeap Missile : 3500, MAP, Ammo 1 , Acc 40, Crit-10, A/B/C/A, Morale 125"+
"\nRosh Saber : 4600, 1-2, None , Acc 40, Crit 35, A/A/B/A"+
"\nGraviton Rifle : 4700, 1-6, Ammo 8 , Acc -5, Crit 30, A/A/B/A"+
"\nFang Slasher : 4900, 2-5, EN 10 , Acc 25, Crit 40, A/A/B/A"+
"\nGravity Ring : 5300, 1-8, Ammo 6 , Acc 20, Crit 0 , A/B/C/A"+
"\nFull Impact Cannon : 6000, 1-9, EN 60 , Acc 20, Crit 0 , A/B/C/A, Morale 130";
}

else if(mech.equalsIgnoreCase("Huckebein Boxer")){
HP=9000;
EN=350;
def=2600;
agl=1600;

sky="B";
land="A";
water="A";
space="A";

size="M";

notes="Gravity Territory: EN Cost 5, Damage under 1500 = 0";

attacks="Twin Vulcan : 2800, 1 , Ammo 20, Acc 35, Crit 30, A/A/A/A"+
"\nRosh Saber : 4600, 1-2, None , Acc 40, Crit 35, A/A/B/A"+
"\nGraviton Rifle : 4700, 1-6, Ammo 8 , Acc -5, Crit 30, A/A/B/A"+
"\nFang Slasher : 4900, 2-5, EN 5 , Acc 25, Crit 40, A/A/B/A"+
"\nGeist Knuckle : 5400, 1 , EN 10 , Acc 30, Crit 0 , -/A/A/A, Morale 110"+
"\nCatapult Kick : 5900, 1 , EN 20 , Acc 15, Crit 25, -/A/A/A"+
"\nG Sword Diver : 6300, 1 , EN 50 , Acc 40, Crit 10, A/A/A/A, Morale 130";
}

else if(mech.equalsIgnoreCase("Reb Gelf")){
HP=3600;
EN=150;
def=1200;
agl=950;

sky="A";
land="A";
water="C";
space="A";

size="M";

sword=true;
//jammer=true;

notes="Jammer: 100% Evade against Smart Missiles";

attacks="5 Ren Missile Pod : 1300, 2-6, Ammo 5 , Acc 5 , Crit 0 , A/A/A/A"+
"\nLaser Sword : 1400, 1 , None , Acc 15, Crit 0 , A/A/A/A"+
"\n75mm Hand Rail Gun : 1400, 1-6, Ammo 10, Acc 0 , Crit 10, A/A/B/A";
}

else if(mech.equalsIgnoreCase("Alt Eisen")){
HP=6500;
EN=220;
def=2000;
agl=1000;

sky="A";
land="S";
water="B";
space="A";

size="M";

sword=true;

notes="Beam Coat: Damage - 700 on Beam Attacks. 5 EN Cost";

attacks="Heat Horn : 2000, 1 , None , Acc 40, Crit 40, A/A/B/A"+
"\n3 Way Gattling Gun : 2300, 1-4, Ammo 10, Acc 30, Crit 10, A/A/A/A"+
"\nHigh Prfm Beam Rifle: 2500, 2-7, Ammo 5 , Acc 25, Crit 20, A/A/-/A"+
"\nRevolving Stake : 3200, 1-3, Ammo 6 , Acc 10, Crit 35, A/A/A/A"+
"\nSquare Claymore : 4000, 1-2, Ammo 3 , Acc 50, Crit 50, A/A/B/A, Morale 110"+
"\nJoker : 5000, 1 , Ammo 1 , Acc 40, Crit 45, D/S/S/S, Morale 130"+
"\nRampage Ghost : 5500, 1-4, EN 60 , Acc 50, Crit 50, A/A/A/A, Morale 120 with Weiss Ritter";
}

else if(mech.equalsIgnoreCase("Weiss Ritter")){
HP=5000;
EN=200;
def=1000;
agl=1500;

sky="A";
land="A";
water="C";
space="S";

size="M";

sword=true;

notes="Beam Coat: Damage - 700 on Beam Attacks. 5 EN Cost";

attacks="Beam Knife : 1500, 1 , EN 5 , Acc 50, Crit 50, A/A/B/A"+
"\n3 Barrel Beam Cannon: 2200, 1-4, Ammo 10, Acc 40, Crit 20, A/B/D/S"+
"\nOxton Launcher - E : 3100, 4-7, EN 15 , Acc 35, Crit 0 , A/B/D/S, Beam"+
"\nOxton Launcher - B : 3500, 2-5, Ammo 5 , Acc 30, Crit 20, A/A/A/S"+
"\nOxton Launcher - W : 4200, 3-6, Ammo 3 , Acc 30, Crit 20, S/B/B/S, Morale 110"+
"\nRampage Ghost : 5500, 1-4, EN 60 , Acc 50, Crit 50, A/A/A/A, Morale 120 with Alt Eisen";
}

else if(mech.equalsIgnoreCase("White Phantom")){
HP=10000;
EN=200;
def=1000;
agl=900;

sky="A";
land="-";
water="-";
space="A";

size="LL";

notes="None";

attacks="Anti Mech Vulcan : 1200, 1-3, Ammo 20, Acc 50, Crit 50, A/A/B/A"+
"\nAll Terrain Missiles: 1500, 1-5, Ammo 8 , Acc 20, Crit 20, A/A/A/A"+
"\nMega Ptc Beam Cannon: 2500, 1-8, EN 30 , Acc 30, Crit 10, A/A/C/A, Morale 105"+
"\nAnti Warship Warhead: 3000, 1-8, Ammo 3 , Acc 20, Crit 50, A/A/A/A, Morale 120";
}

//Incomplete
else if(mech.equalsIgnoreCase("Epyon")){
HP=4300;
EN=180;
def=1000;
agl=950;

sky="A";
land="A";
water="C";
space="S";

size="M";

sword=true;

notes="Beam Coat: Damage - 700 on Beam Attacks. 5 EN Cost";

attacks="Beam Saber : 2000, 1 , EN 5 , Acc , Crit , A/A/B/A";
}

else if(mech.equalsIgnoreCase("Nightshade Mk-VI")){
HP=5000;
EN=210;
def=1100;
agl=1600;

sky="B";
land="S";
water="C";
space="A";

size="M";

sword=true;

notes="Booster: EN Cost 6 per turn, Speed + 10%"+
"Over Boost: EN Cost 9 per turn, 2 turn max. Speed + 20%"+
"Stealth: EN Cost 7 per turn, nullify opponent weapon accuracy bonus.";

attacks="Beam Saber : 1700, 1 , EN 5 , Acc 35, Crit 20, A/A/B/A"+
"\nDual Machine Gun : 2700, 1-4, Ammo 7 , Acc 23, Crit 25, A/A/C/A"+
"\nOver Boost Charge : 4500, 1-4, EN 35 , Acc 25, Crit 30, A/A/B/A, Morale 120, Req. Over Boost";
}

//incomplete
else if(mech.equalsIgnoreCase("Zeta Gundam")){
HP=4400;
EN=120;
def=750;
agl=900;

sky="A";
land="A";
water="C";
space="S";

size="M";

sword=true;

notes="Beam Coat: Damage - 700 on Beam Attacks. 5 EN Cost";

attacks="Beam Saber : 1700, 1 , EN 5 , Acc , Crit , A/A/B/A";
}

else {
x=1;
JOptionPane.showMessageDialog(null, "Not in Directory.");
}

}while(x==1);
}

public String getMech()
{
return mech;
}

public int getHP()
{
return HP;
}

public int getEN()
{
return EN;
}

public int getDef()
{
return def;
}

public int getAgl()
{
agl=agl/10;
return agl;
}

public String getSky()
{
return sky;
}

public String getLand()
{
return land;
}

public String getWater()
{
return water;
}

public String getSpace()
{
return space;
}

public String getSize()
{
return size;
}

public boolean getSword()
{
return sword;
}

public boolean getShield()
{
return shield;
}

public boolean getAfterImage()
{
return afterImage;
}

public String getAttacks()
{
return attacks;
}
}
PostPosted: Sun Jul 17, 2005 10:57 am


Mech name: Granzon
Picture ( Optional ):User Image
HP ( or Armor Points, etc. ):5,500
EN ( Energy ):300
Def ( Defense ): 1,000
Agl ( Agility ): 100

Terrain Compatibility ( Put S, A, B, C, D, or - for the following. S = Best, D = Worst, - = Incapable of being in that terrain. )
Sky:A
Land:B
Water:C
Space:S

Size ( SS = Human size, S, M, L, LL = Carrier Ship size ):L

Sword ( Yes or no ):Yes
Shield ( Yes or no): No
Any other special attribute, such as barriers: Energy barrier

Attacks
Attack Name: 1. Gran Wyrm Sword. 2. Wyrm Smasher. 3. Black Hole Cluster
Attack Power: 1. 3200 2. 4000 3. 6000
Attack Range ( Or MAP attack ): Graviton Cannon x2
Max Ammo or EN Cost, if any: 1. 0 EN 2. 25 EN 3. 50 EN
Accuracy Bonus: 1. 5 2. 2 3. 0
Critical Hit Bonus:
Weapon Terrain Compatibility ( In the order of Sky, Land, Water, Space, like above. ): A
Any other requirements for attack: 1. - 2. 10 moral points needed 3. 25 moral points needed

Granzon

Unbeatable Phantom

12,400 Points
  • Conventioneer 300
  • Forum Sophomore 300
  • Elocutionist 200

Shake mo Tv mo

PostPosted: Mon Jul 18, 2005 11:14 am


.............there are just so many things wrong there, it makes me shed a tear for Granzone.
PostPosted: Mon Jul 18, 2005 11:35 am


holy crap......that mech is way overpowered. 3 S-terrain classes? Yea, someone fix that would ya?

--leowen

Leowen


Shake mo Tv mo

PostPosted: Mon Jul 18, 2005 12:14 pm


Well, I was refering to the following:

1) Granzone is developed by the Divine Crusaders. It is not an Elemental Machine, though it does undergo fusion with Volkruss to become the Neo Granzone.

2) Granzone does not have a Black Hole Bomb. Thats Gunbuster.

3) Granzone's weapons are the Gran Wyrm Sword, Wyrm Smasher, Graviton Cannon (MAP), and Black Hole Cluster.

This doesn't count the numerous statistics he forgot to add, but those will have to be put in when the numbers we have get fixed up.
Reply
Home Colony, Grand Vanguard

Goto Page: 1 2 3 [>] [»|]
 
Manage Your Items
Other Stuff
Get GCash
Offers
Get Items
More Items
Where Everyone Hangs Out
Other Community Areas
Virtual Spaces
Fun Stuff
Gaia's Games
Mini-Games
Play with GCash
Play with Platinum