Ramming possiblities

Ramming possiblities -> (ramming ship always destroyed); support/discussion/questions

Moderator: thunderchero

Post Reply
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Ramming possiblities

Post by thunderchero »

Hi code masters, :wink:

I could use some help. ruthlessferengi and mickar found a new bug while practicing for UDM tournament. (Also test same way in vanilla)

Bug seems to be in how hull strength is read after a successful ramming.

example;

ship A hull 1000 will uses ram command

ship B hull 800 ship being rammed (hailing)

ship C hull 800 (hailing)

turn 1
ship A rams ship B. ship A survives 250 hull. ship B is destroyed (this part is correct)

turn 2
ship C hull 800 rams ship A hull 250 (hailing). Both ships destroyed :?:

So problem is ship A should be destroyed and ship C should survive with 550 hull.

any ideas?

thunderchero
Last edited by thunderchero on Thu Feb 04, 2010 4:48 pm, edited 1 time in total.
Mentat
Commander
Commander
Posts: 360
Joined: Sun May 04, 2008 2:00 am

Post by Mentat »

Is this bug limited to the "hailing" option, or does it also appear when other orders are given to the Vessel getting rammed? Overall one of the not so encouraging bugs that have been found, since this would unbalance spacebattles quite a bit.
Dominion Wars - Scenario
to be released for UDM3.0.1a !
User avatar
thunderchero
Site Administrator aka Fleet Admiral
Site  Administrator aka Fleet Admiral
Posts: 7849
Joined: Fri Apr 25, 2008 2:00 am
Location: On a three month training mission, in command of the USS Valiant.

Post by thunderchero »

This is not limited to hail command by ship being rammed. This was done during testing to cause less damage to ships during tests before impact.

I suspect Gowron already found this bug since he edited BOP for ramming already.

In BOP any ship that is given "ram" command regaurdless of hull will be destroyed on impact. The ship being rammed may survive depending on if it has a higher hull than ship doing the ramming.

This code could be used if a better code is not found to correct problem. I also tested if battle command could be edited and it can be as well. So "Ram" could be "Sacrifice Ship-Ram".



thunderchero
Last edited by thunderchero on Fri Dec 25, 2009 11:01 pm, edited 1 time in total.
Mentat
Commander
Commander
Posts: 360
Joined: Sun May 04, 2008 2:00 am

Post by Mentat »

Sounds reasonable to me Thunder, since one can assume that ships are set to autodestruct, warpcore overload whatsoever.

But, e.g. you send a group of Jem Hadar attack ships on ram to destroy one Galaxy class ship. Would it mean that all of them are lost, even if some don't even hit their target? And even more specific, what happens if I set my ship on ram, and it doesn't reach its target this turn? Will it be destroyed at the end of the turn, or continue to persue the target vessel until it rams it, or other oders are designated to the ship?

edit: Just reread your post and "destroyed on impact" would likely mean, "only if it hits the target ship". If that is so, I would even embrace Gowrons solution, since its more realistic, that a ship set on ram, is also set on autodestruct and warpcore overload.
Dominion Wars - Scenario
to be released for UDM3.0.1a !
User avatar
Gowron
Code Master
Code Master
Posts: 304
Joined: Sat Apr 26, 2008 2:00 am
Location: 50° N, 11° E

Post by Gowron »

Mentat wrote: edit: Just reread your post and "destroyed on impact" would likely mean, "only if it hits the target ship".
Yes, if a ship is set to "ram", but misses, then no ramming damage is inflicted to either ship.



This is how the ramming fix is implemented in BoP:

It's actually just two bytes which have been changed.
At position 0x12938D, change
8B5608
to
8B5010.

This is the original statement:

Code: Select all

8B5608     mov edx, [esi+0x08]
It reads the maximum hull strength of either the attacking ship or the defending ship, whichever is lower. This amount of hit points will then be inflicted as hull damage to the attacking ship.

And this is the modified statement:

Code: Select all

8B5010     mov edx, [eax+0x10]
It reads the maximum hull strength of the attacking ship. As before, this amount of hit points will then be inflicted as hull damage to the attacking ship, resulting in certain destruction.
A discovery consists in seeing something everybody has seen and at the same time thinking something nobody has thought yet.
Mentat
Commander
Commander
Posts: 360
Joined: Sun May 04, 2008 2:00 am

Post by Mentat »

As I wrote before, I like that solution, but it leaves Thunder and especially me with a tricky situation for UDM and Dominion Wars. Ruthless Ferengi has pointed out this problem very well in another thread.

If we change Ramming to a suicidal run, then the so called Cardassian-"Underdogs" will suffer dearly in Spacecombat and I doubt that any form of balance can be assured. So we would have to change at least the shipstats for Cardassian vessels, which would disrupt my work on the map, and that is out of question for me atm.

So if the real issue can not be solved, I have to say, for UDM we rather stick with the buggy Ramming maneuver as it is implemented in BOTF originally. This might give the races with stronger hulls an edge, but I would rather live with that then having the Cardassians stripped from their greatest advantage in combat.
Dominion Wars - Scenario
to be released for UDM3.0.1a !
User avatar
Spocks-cuddly-tribble
Code Master
Code Master
Posts: 1884
Joined: Sun Apr 27, 2008 2:00 am

Post by Spocks-cuddly-tribble »

Mentat wrote:So if the real issue can not be solved, I have to say, for UDM we rather stick with the buggy Ramming maneuver as it is implemented in BOTF originally. This might give the races with stronger hulls an edge...
As Gowron pointed out, in fact there is no bug - we just misinterpreted the functionality of the ram feature in BotF. Ram damage, applied to both ships, is determined by the lower nominal hull of the both ships.

And IMHO this feature makes sense, since even a major-damaged ship still holds its mass. So ramming a ship with a higher(or equal) nominal hull (i.e. mass/armour) than the own, is always a suizidal ramming regardless of higher current hull (which is not a indicator of the current mass of a ship, but just its damage status).
I don't know how many bugs is too many but that point is reached somewhere before however many in BotF is.
Mentat
Commander
Commander
Posts: 360
Joined: Sun May 04, 2008 2:00 am

Post by Mentat »

Well I am neither of the two, ....

While I greatly agree with SCTs last post, at least from a realistic viewpoint, I think the perfect solution would be, that the actual hull value is used when computing the damage on the rammed/ramming ships, not the total/nominal hullpoints as it is done now.

This means, a heavily damaged ship (as SCT has pointed out correctly) that still has more mass then the target, will lack the integrity to do the same amount of damage to another ship, even if its nominal mass would point into that direction.

Ship A(Hull 800) rams Ship B(hull 500) and destroys it, but takes heavy damage and is down to 300 Hullpoints=Shipintegrity (XP-level: green).
If Ship A(Hull 300) now decides to ram Ship C(hull 400), it would be destroyed, and Ship C(also XP-level: green) would suffer 300 damage on its hull and end up as Ship C (Hull 100). If now Ship D (Hull 150) decides to ram Ship C (Hull 100), then Ship C is destroyed while Ship D survives with 50 Hullpoints.

So much about my theory as how it should work, or in other words, how I imagined it did work in BOTF until this "bug?" was found.
Dominion Wars - Scenario
to be released for UDM3.0.1a !
User avatar
Turner
Ensign
Ensign
Posts: 31
Joined: Fri May 09, 2008 2:00 am

Post by Turner »

This is a nice implementation from Spocks-cuddly-tribble, but there still is a too low risk for the ramming ship in my opinion (if this ship has more hps). We should remember that not only metal is crashing on metal. There are also the torpedos, deuterium, plasma and last but not least the warp core itself that can explode during a ramming maneuver.

So my question is, if there is a possibility to add this feature of danger to the game. The best solution in my opinion is a random generator, which adds randomly more damagepoints to the surviving ship (perhaps enough to destroy it). But I expect this is not easily to do, so my other proposal is to add a fixed percentage of the ramming-damage to the surviving ship (maybe ~20%).
Post Reply

Return to “Ramming possiblities -> (ramming ship always destroyed)”