GCC   -   Forum > General . Strategy . Wanted . Federation . GCC Dev  

You must login to reply
Login

 Forum > General Discussion 
cagito
2014-12-04
  Best Ships  

So, before i give my mathematically scrutinized opinion i want to know what some of you think.


What do you think is the best overall ship in single stack battle attacking a stack with equal power?

Eg.
1116 Light fighter drones vs. 5 F.Broadword
That`s 5580 power on each side.

What do you think is the best ship overall when attacking a single stack with ships 1 to 1?
Eg.
1 light fighter drone vs. 1 F.broadsword.

This question is about all usable ships NOT including reward ships, and NPC ships. SO just ships everyone can build.
Also this only applies to attacking but that doesn`t really change things much statistically.

This is only for fun :) and to see what the opinions are.

If you can/would like to please explain the choices.
cagito
99+ day(s) ago
better?
lol
http://prntscr.com/5dyikt
cagito
99+ day(s) ago
If i were to do it that way i would need to swap the indexa anbd indexb as well as the .defender and .attacker for the mods.type

Just sayin. i didnt swap them earlier in that function.
BadWolf
99+ day(s) ago
well i missed that a/b typically why it`s better to write clearly named strings/arrays lol what i said still stands though

just in that case you`d end up with:-

if(mods.retal == 1)
{
total_damage *= (1+retal_value)
total_damage /= (ship[indexb].hull)
}
else
{
total_damage /= (ship[indexa].hull)
}

also concise

Edited by BadWolf on 2014-12-07
BadWolf
99+ day(s) ago
i learned on my own as well so given you said that just now i`ll point out it tends to be smarter to go with == in the first place unless you specifically will have situations where they will not be the same type..

==== avoids running down the conversion javascript does but when they`re always going to be same type (And for some reason you don`t want matches on Something = `true`; when checking for true/false).. == ends up working out the same results faster and just being the smarter choice..

though in working in true or false in general it tends to make more sense just to go with 1/0 so for that specific line i`d say you would want to go with:-
if(mods.retal == 1)
{
total_damage *= (1+retal_value)
}


concise and does the exact same thing :P

Edited by BadWolf on 2014-12-07
cagito
99+ day(s) ago
Also, remember that the retal version is the opposite. so i cant have it applying indexa`s weapons to indexb`s hull in a retal :p

so retal has to be checked first to make sure its doing the right one lol
cagito
99+ day(s) ago
Indeed, just the way i wrote it at the time. I know i don`t write good practices etc.

I really just did it that way to make sure i had things straight. Stuff like that can be modified.
I really only write for my own use etc. Learned all of it on my own.

Thanks for the input though BW.
BadWolf
99+ day(s) ago
just looking at how you wrote it (Not looked at anything else, or how it works out as i`m busy atm) i wanna point out it makes more sense to have written that as:-

total_damage  = ((ship[indexa].weapon[`energy`](1+ attack[mods.type].attacker))*(1 - ship[indexb].shield[`energy`]));
total_damage += ((ship[indexa].weapon[`kinetic`](1+ attack[mods.type].attacker))*(1 - ship[indexb].shield[`absorb`]));
total_damage += ((ship[indexa].weapon[`missile`](1+ attack[mods.type].attacker))*(1 - ship[indexb].shield[`emc`]));
total_damage += ((ship[indexa].weapon[`chemical`](1+ attack[mods.type].attacker))*(1 - ship[indexb].shield[`ionized`]));

if(mods.retal === true)
{
total_damage *= (1+retal_value)
}

total_damage /= (ship[indexa].hull)

I really don`t know why you have exact equals there.. i can`t say i could see a point where you wouldn`t have it being the proper type for a true/false statement but to each their own

Edited by BadWolf on 2014-12-07
cagito
99+ day(s) ago
Also, sleeper the way battles work was taking from EE`s how to battle in GC guide. The one that`s a picture (he was supposed to do a text version lol). I invented nothing when it came to calcing the battles. If i have something wrongs it would be due to missing information from EE`s guide :)

Source: http://gc.gamestotal.com/hef.cfm?&8112&f=hef_detail&hi=11962&ch=101

Mind you i did not do full stack battles. Only single stack per side. Needed to make sure all was well before moving onto full 10 stack battes.
cagito
99+ day(s) ago
1:1 Match, Attack and Defense
Most wins: K.Hun-Zen: Guardian
Wins: 540
Most losses: Ranger: A.Miner
Losses: 546

1.) Race: Guardian, K.Hun-Zen W: 540
2.) Race: A.Miner, G.Lictor W: 531
3.) Race: Guardian, K.Hun-Li W: 530
4.) Race: Guardian, G.Diamond W: 529
5.) Race: A.Miner, A.Kryo W: 527
6.) Race: Guardian, L.Topaz W: 526
7.) Race: Guardian, K.Hun-Xe W: 525
8.) Race: Guardian, G.Corundum W: 522
9.) Race: Guardian, G.Quartz W: 519
10.) Race: Terran, Hercules W: 515

Total battles run for entire list, of 6 different runs is 162450 battles.
162k is every ship vs every ship every attack mode, 1:1 and PR:PR as well as attack wins defense wins, and both.

Here is the output
http://jsfiddle.net/cagito/vjbx87aq/embedded/result/

you can aso view the entire codebase if you like.
cagito
99+ day(s) ago
Mind you thins is actual JS code.

http://prntscr.com/5dxa0d

that is the code that is used for damage calculation. Damageis returned as # of ships destroyed. also retal value is .5 for retaliation attacks.

The rest of the battle sequence is what i had to fix yesterday. it does the typical.

if attacker range is higher attacker first. if range is same or lower defender first.

wave 1, high range, then retal if attacker ships doesnt have no retal and defnder doesnt have no defense.

then non high range retl etc etc.

wave 2 ditto.
cagito
99+ day(s) ago
Oh i`m not trying to hide my math. I will mitigate that problem shortly.

Either way though sleeper i do appreciate the constructive criticism. That`s why im sharing it. Otherwise i would not have found that error of mine in the code. (code was opposite of what it should have been.)

I don`t expect anyone to take my info as fact without proof. I have another area f code to fix. Which that section actually takes into account ships attacking and defending then orders them by total wins.

Expect my next post to show the damage section of my code.
Hyperion
99+ day(s) ago
Look I already the answer is obviously Ryu Kin so lets just leave it at that !
Sleeper
99+ day(s) ago
I`m not Criticizing any one or anything, but without some sort of confirmation as to the calculations behind this, i`m not going to blindly accept it as fact, I don`t doubt his math skills either, but if you`re not using the correct information or mistaking how something works then your results will be incorrect. So all I want to see is how battles are calculated within the system he uses so the rest of us can tell if he`s making a mistake there or not..

Also there is a difference between attacking on normal, or defending from an attack on normal and the same goes for aggressive, and it`s more than just a range issue. That 5% loss of damage while attacking on normal can affect how well C.Aries does against some ships, and how well other ships do against C.Aries. It`s an even bigger gap on Aggressive.
BadWolf
99+ day(s) ago
Personally i`m with sleeper here it`s not unreasonable to want to see the math behind things here.

"And there is no such thing as Normal and Aggressive defense...."

Lol.. normal/aggressive `defense` is when a ship is attacked by someone using normal/aggressive.. outcomes do and can in fact be vastly different from ships attacking and being attacked in the same situations.
Hyperion
99+ day(s) ago
Sleeper how about coming with your own answer then ?

Instead of criticising cagito

And there is no such thing as Normal and Aggressive defense....
Sleeper
99+ day(s) ago
you still never answered my question as to seeing the math behind the system you`re using, so i can see for myself if what ever you`re doing is actually calculating battles the way GC does, or if you`ve just invented your own way you think battles work.
MastaKilla
99+ day(s) ago
Ok I see. Aries beats herc and hoko on all stances though and fails to gall on aggro. It will probably take some time to straighten out the list, but I guess the conclusion is that tourm/borr is the best ship and aries very nice as well on RT where turn regen isnt a problem.
cagito
99+ day(s) ago
sibiriangun

I think i fixed the issue i had. Somehow some stuff was backwards lol

Updated Aries list then.

63, Scenarios, 26,C.Aries,8
T.Maru: Careful
T.Maru: Normal
P.Odin: Agressive
Nirvana: Careful
Nirvana: Normal
Nirvana: Agressive
Tyr: Careful
Tyr: Normal
Tyr: Agressive
Hercules: Careful
Hercules: Normal
Hercules: Agressive
G.Livid(r): Careful
G.Livid(r): Normal
G.Livid(r): Agressive
M.Lyth: Careful
M.Lyth: Normal
M.Lyth: Agressive
M.Lakko: Careful
M.Lakko: Normal
M.Lakko: Agressive
A.Hoko: Careful
D.Hammerhead: Careful
D.Hammerhead: Normal
D.Hammerhead: Agressive
Tiger: Careful
Tiger: Normal
Tiger: Agressive
Pyth: Careful
Pyth: Normal
Pyth: Agressive
V.Borrelly: Careful
V.Borrelly: Normal
V.Borrelly: Agressive
H.Corsair: Agressive
R.Pinnace: Normal
R.Pinnace: Agressive
H.Brigantine: Careful
H.Brigantine: Normal
H.Brigantine: Agressive
G.Agate: Careful
G.Agate: Normal
G.Agate: Agressive
Tourmaline: Careful
Tourmaline: Normal
Tourmaline: Agressive
G.Amethyst: Agressive
Ruby: Agressive
G.Quartz: Careful
G.Quartz: Normal
G.Quartz: Agressive
L.Garnet: Careful
K.Hun-Li: Careful
K.Hun-Li: Normal
K.Hun-Li: Agressive
L.Topaz: Agressive
K.Hun-Xe: Careful
K.Hun-Xe: Normal
K.Hun-Xe: Agressive
K.Hun-Zen: Careful
K.Hun-Zen: Normal
K.Hun-Zen: Agressive

I always forget about the Char limit lol.
cagito
99+ day(s) ago
Hmm, for some odd reason, In the case of the k class ships vs aries. There is waaaay more damage being done than should be. Odd. I may have to scrap the entire thing and start over. If i can`t find the problem.

Somehow things are a little wonky lol.
cagito
99+ day(s) ago
Yourself. Example as mentioned below.

C.Aries vs T.Maru. is offensive.

to do defensive T.Maru vs. C.Aries.
Im using the first ship as attacker. and both are used in both sides, so attacking and defending are done as part of the sim process. Since every ship goes against every ship including itself.

sibiriangun
Well my math is not screwed up.

Does the manual have the correct info for k class etc? If not then that is why. Otherwise, im applying weapons to shields Doesn`t really matter much how you do it since multiplication is commutative. :)

Anyways, indeed sibiriangun. I`m seeing that now. But not sure as to why its not showing up, as it should. I`m looking into that atm to see where the issue is. I know the issue is in how the info is collected not in the actual battle part, as that is correctly showing that 1 K.Hun kills more than 4,000 Aries ships ea.

Previous
  Next