OOS combat - how SHOULD it work?

The place to discuss scripting and game modifications for X³: Terran Conflict and X³: Albion Prelude.

Moderators: Moderators for English X Forum, Scripting / Modding Moderators

Post Reply
User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Tue, 5. May 09, 19:54

MutantDwarf wrote:You might also be able to dynamically calculate them when you run the game - if you know damage per shot, can calculate the amount of damage that's done, and can see how much energy is left in the ship's energy bank, you could bash together a way to test this by spawning a ship in some far away corner of the player's current sector and have it fire at some other stationary large ship from, say, five meters away, then check how much damage is done and how much energy is consumed after one second.
No.
Been there, tried that, got the T-shirt.
Not gonna work.

MutantDwarf wrote:Actually, it doesn't. It only needs to be done once per target per laser type. You multiply the number of lasers that fire by that laser's RoF. It really shouldn't be any more costly to calculate than the current implementation. You don't even need to have it be done per turret grouping, though that's how I'd prefer it for player-involved battles.
Yes, it does. =P
Treating every ship and laser (type) individually is too far on the micromanaging side.

I suggested the 3 laser classes because there are 3 basic object classes for ships and lasers can be assigned to "belong to" one of these classes pretty well.
But yes, target speed could be factored into the THAC0 with minimal effort. =)

Also, a ship's "medium laser battery" could have a THAC0 based on the average of their bullet speeds, still allowing room for experimentation.

All of that would have to be precomputed in a setup phase, that only runs once.
Afterwards combat would (in spirit =) play out D&D style.
Without the cardboard dungeon master's screen.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

MutantDwarf
Posts: 705
Joined: Tue, 20. Jun 06, 02:29
x4

Post by MutantDwarf » Tue, 5. May 09, 20:11

Yes, it does. =P
Treating every ship and laser (type) individually is too far on the micromanaging side.
How? You were already talking about modifying ship loadouts because they make little sense. Why not just limit them to three laser types (one Huge Gun, one Big Gun, and one Small Gun)? That way there would be little to no difference between what I suggested and what you're talking about.

EDIT: To clarify, I'm not talking about a drastic revision of the way OOS Combat works. I'm talking about a way to calculate that 'THAC0' that you're talking about. As you say, it would almost entirely be done beforehand - Acc, RoF, Hnd, all those things I mentioned are calculated before you engage the enemy - during combat you just add them together.

User avatar
wyvern11
Posts: 1702
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Tue, 5. May 09, 20:17

EDIT : man, you guys are really fast - while i was reminescing my post together - three more posts

I'm leaning towards largely ignoring laser range.
As rough as it sounds... but as I outlined before, laser range plays an insignificant role in OOS combat.

I'd limit it to one Laser.Range.of.Ship value.
If an M2 can use PPC, everything down to Ion Disruptors has 6600m range.
This one value is required so the ship knows how close to get to the enemy before switching to the "attack run" portion of the attack script.
no objections on that. I'd also scrap bullet speed and firing rate too, modelling speed into
the to-hit-probability and rate per time integration into DPnS, n element of N

on energy generator: ships can sustain high firing rates for longer than few salvos - either ignore generator or decrease hitpoints after say 5 salvos in a row in steps of 10% down to 30% min -

Thac0 is a good idea - it will not be possible to get a much easier approach
but one thing does probably not match from AD&D rules - I never got over the fact
that bth nimbleness and heavy armor lead to a low thac0

DSA (german based RPG) has a "defence" value to dice the hit against and an "armor"
which got subtracted from the hit points - suits better for cap ship against fighter

another system is ship2ship-combat from star-wars rpg. short description :

Xwing red 1, combat skill 8d6 attacks, damage 6d6 attacks ISD Avenger 7d6 evade, 8d6 hull&shield

red 1 dices 8d6 to hit, avenger 7d6 to evade, but since it is capship-class all dies are counted as max 3 of 6 possible ---> easy target, red 1 scores a direct hit

red 1 dices the damage 6d6 but since it attacks a capship ISD all damage dice are counted as max 3 of 6 possible against ---> beesting, red 1 does not penetrate.

if ISD perchance hit red 1 (against a handicap of 3), red 1 would have had a handicap of 3 on the resist ---> kablouie

This is simple and rather stupid, but was heck of a lot of fun to play ...

"Sir we lost our bridge deflector shield"
"All energy on frontal batteries ... "
Redest du noch - oder denkst du schon ?

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Tue, 5. May 09, 20:22

MutantDwarf wrote:EDIT: To clarify, I'm not talking about a drastic revision of the way OOS Combat works. I'm talking about a way to calculate that 'THAC0' that you're talking about. As you say, it would almost entirely be done beforehand - Acc, RoF, Hnd, all those things I mentioned are calculated before you engage the enemy - during combat you just add them together.
Yes, of course.
However, I'm thinking of what the AI will do with it's current wild mix of weapons.

Improving the loadout of all AI ship's is another ambitious project which may or may not happen anytime soon.
However - dividing the AI ship's current crazy weapon mix into 3 laser types would gloss over nearly all of their silly loadout errors and make them semi-competent OOS fighters. =)

Of course the player could fine tune a little better - but within limits.

wyvern11 wrote:Thac0 is a good idea - it will not be possible to get a much easier approach
but one thing does probably not match from AD&D rules - I never got over the fact
that bth nimbleness and heavy armor lead to a low thac0

DSA (german based RPG) has a "defence" value to dice the hit against and an "armor"
which got subtracted from the hit points - suits better for cap ship against fighter
Oh, yes. I played D&D, AD&D, DSA, DSA Runemagic expansion (with silly complicated combat rules), Star Frontiers (SciFi RPG), Midgard (sillier than silly complicated combat rules), Star Wars, Traveller (SciFi RPG), Shadowrun, Battle/Aero/City/Smallfurryanimal-tech, Cyborg Commando (SciFi RPG), and whatever I forgot.

THAC0 is just the basic idea, to be twisted into something that fits with equal ease.
The final system should be felt playable as a board game. =)


D&D had some silly rules because of that system. (if taken out of context =)
Like: Every attempt to parry is automatically successful.
(imagine standing there, eating a sandwich with one hand... parryparry, oh, parryparry)
If you can find it: get "Murphy's Rules" by Steve Jackson Games.

Among many other things it has essential resources like the Giant vs. Human Armwrestling Result table, Random Polearm Generation table (18 on a 3d18 = Glaive Glaive Glaive Guisarme Glaive) or a Dead Character Soul Destination table.
Or a player character sheet for Kung Fu CB Mamas on Wheels vs the Motorcycle Aztec Wrestling Nuns. Where Psychosis (PS) is a character attribute.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
wyvern11
Posts: 1702
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Tue, 5. May 09, 20:56

you seem to be from the same generation

smallfurryanimal-tech :lol:


Thinking about my own post I think one should really design a simple, ship-class-based handicapping system against which to randomize
Redest du noch - oder denkst du schon ?

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Tue, 5. May 09, 22:01

AI ships' pilots have fight skill, morale, and aggression values.

The player's ships don't usually have "a pilot" so they don't even have any of these values.
The player's fight rank sounds like a good replacement, though.

If you SETA your game, your "command abilities" are low and therefore your OOS sector patrols suck. Or you might be a warlord with a small fleet of highly motivated crack troops...

This would probably be the first ever logical use for the player's fight rank and at the same time the first ever effective way to discourage excessive SETAing for free credits. =)
I like it when stats actually have a tangible meaning beyond a different text string.
Easy to do as well, since this rank doesn't really change fast.

The effects don't even have to be massive.
Just imagine if you lose a destroyer. Would it have survived the fight if you had been a better admiral?
SETA all day and night and your fight rank goes dooooown. Your sector patrols start losing more and more fights. Your favourite sectors become unsafe. Your UT and factory traders start dieing. Your factories run dry.
HAHAHAHAHAHAHAHA!

If nothing else - that settles it. This project must go live! =)
(And don't even try talking me out of that feature!)
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

Dumminion
Posts: 38
Joined: Sun, 26. Apr 09, 22:22

Post by Dumminion » Wed, 6. May 09, 06:25

AI ships' pilots have fight skill, morale, and aggression values.

The player's ships don't usually have "a pilot" so they don't even have any of these values.
The player's fight rank sounds like a good replacement, though.

If you SETA your game, your "command abilities" are low and therefore your OOS sector patrols suck. Or you might be a warlord with a small fleet of highly motivated crack troops...

This would probably be the first ever logical use for the player's fight rank and at the same time the first ever effective way to discourage excessive SETAing for free credits. =)
I like it when stats actually have a tangible meaning beyond a different text string.
Easy to do as well, since this rank doesn't really change fast.

The effects don't even have to be massive.
Just imagine if you lose a destroyer. Would it have survived the fight if you had been a better admiral?
SETA all day and night and your fight rank goes dooooown. Your sector patrols start losing more and more fights. Your favourite sectors become unsafe. Your UT and factory traders start dieing. Your factories run dry.
HAHAHAHAHAHAHAHA!

If nothing else - that settles it. This project must go live! =)
(And don't even try talking me out of that feature!)

Fight skill, morale, and aggression values should be based on software. (fightsoftware mk.1, fightsoftware mk.2, navigationsoftware, experience, number of kills and/or the time of ship existence.
Maybe you can add diffrent combat computers as a ware?

I don't like a big impact of the player's fight rank because the game is allready to hard at the start and to easy later.
Can't understand why people use S.E.T.A to get money!
Hm you could spawn enemy capitalships or m8 bombers killing player factories after 1 hour S.E.T.A? :roll: :roll: :roll:

What's the point of your M.A.R.S script defending 200+ missiles, shooting m5 ships with capitalship guns and remount guns in fight?
This is cheating if you ask me.
Capital ships like m1, m2, m7 or m8 should be bad against swarms of small fighters and it should cost firepower mounting antifighterguns.
How about enabling the use of flakweapons and capitalship guns in the same turret by shooting on the proper target with only one type of gun?
(a.k.a M.A.R.S light)

Hmmm.... however... I might manage to create the look of multi target tracking without any tracking at all.
Preemptive counterfire.
Instead of merely reacting to fighters firing at the M2, the attacking fighters register themselves with the M2 beforehand, let's say, when they decide to start the attack at a 10 km distance.
"Hi. My name is Argon Police Buster AM4YG-69. You killed my father. Prepare to die."
Is it possible to subtract this from the normal damage output or to restrict it on the number of the turrets?

User avatar
wyvern11
Posts: 1702
Joined: Sat, 15. Jul 06, 20:59
x3

Post by wyvern11 » Wed, 6. May 09, 08:46

@gazz

fight rank as modifier sounds good. but impact should not be as heavy as rank points or even rank id. depends of course on base range of fight skill.

fight-rank-id mod N

or

something like an elementary log2 (how often fight-rank-id can be divided by two and still remain >=1)

or

f : fight-rank-id -----> handicap-modifier
1,....,30 -------> -2,...,0,....,+2

might do the trick

yeah - this project must go live - count me aboard
who would ever think of trying to talk you out of **that** feature


@dumminion

counterfire using anti M3-M5-weapons only has been discussed previously and I find this sensible too


@all
having discussed most and discarded some of the features one should now discuss the rulebook
Redest du noch - oder denkst du schon ?

pelador
Posts: 1230
Joined: Wed, 6. Nov 02, 21:31
x3tc

Post by pelador » Wed, 6. May 09, 09:02

As a suggestion:

With assigning adjustments it might be useful to use larger orders if the maths will allow up to the limit as it gives greater flexibility to changes and or introductions from ES.

E.g. So where a range is 0 - 20 with increments of 1 at present it might be better to use 0 - 200 with increments of 10.

Maybe not crucial but might limit flexibility in the future if the orders are too small.

Am sure Gazz/others are aware so probably doesnt really need airing, but better safe than sorry, but that was a self constraining limitation of THAC0 also when deciding AC values.

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Wed, 6. May 09, 11:04

Dumminion wrote:Fight skill, morale, and aggression values should be based on software. (fightsoftware mk.1, fightsoftware mk.2, navigationsoftware, experience, number of kills and/or the time of ship existence.
Maybe you can add diffrent combat computers as a ware?
Adding wares requires a mod and that's always messy.

IS, the kind of Fight Software on board makes no difference whatsoever on how AI ships fight so I would not want to base any performance on it.
Besides, what would be the point? The player would just buy all those softwares and have perfect ships.
That would be an advantage solely for the player.

If that is somehow based on the players combat rating, the player has to work for gaining (and keeping =) an edge.

I don't like a big impact of the player's fight rank because the game is allready to hard at the start and to easy later.
wyvern11 wrote:fight rank as modifier sounds good. but impact should not be as heavy as rank points or even rank id. depends of course on base range of fight skill.
Well I didn't intend to multiply the player's ships OOS ability by 0 if the player is at rank 0...

Some handicap/advantage, yes, but rather in the 10-40% range overall.

Can't understand why people use S.E.T.A to get money!
Hm you could spawn enemy capitalships or m8 bombers killing player factories after 1 hour S.E.T.A? :roll: :roll: :roll:
No.
It's not possible to detect SETA with certainty.
What's the point of your M.A.R.S script defending 200+ missiles, shooting m5 ships with capitalship guns and remount guns in fight?
This is cheating if you ask me.
It's not.
The turrets turn towards the missile and only fire after they have the missile "in sight".
Not the least bit of cheating is involved.
Capital ships like m1, m2, m7 or m8 should be bad against swarms of small fighters and it should cost firepower mounting antifighterguns.
It does.
AI capital ships always switch weapons in a way similiar to MARS so this is simply how X3 is designed. It's not my invention.

E.g. So where a range is 0 - 20 with increments of 1 at present it might be better to use 0 - 200 with increments of 10.
Heh, no worries.
The THAC0 is just an arbitrary term for "very much simplified combat result generation system".
I didn't quite intend for players to roll d4, d6, d8, d12, and d20 and enter these values into the script. =P

If I use a system it will have a resolution of at least 0-100 because that should be sufficient accuracy and it's easy to relate to.
But those are technical details.
Last edited by Gazz on Wed, 6. May 09, 11:10, edited 1 time in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

orion84
Posts: 162
Joined: Thu, 30. Apr 09, 16:14
x4

Post by orion84 » Wed, 6. May 09, 11:09

wyvern11 wrote:Unluckily, they belong to german forum...
In a fit of rage since i lost my capped K to a friggin Kea, i spent alot of time in the forum trying to understand OOS so i could adapt to it. And yes, i did see you in that forum. :) I don't like why all the technical, real juicy stuff ends up in German forums. In general (not racist). I think i'll learn german before i buy myself a BMW.
Gazz wrote:Preemptive counterfire.
Instead of merely reacting to fighters firing at the M2, the attacking fighters register themselves with the M2 beforehand, let's say, when they decide to start the attack at a 10 km distance.
"Hi. My name is Argon Police Buster AM4YG-69. You killed my father. Prepare to die."
That's brilliant. It saves alot of time having to shuffle through ships in sector when choosing targets. I think it may even streamline the entire execution of combat.

IRL during war time, the military would have already created this "array" to identify enemies without having to decide whether to engage or not. Simple and very very effective. Kind of like when they spot the enemy miles away, they already have their safeties off, and guns drawn. At least military has some intelligence.

However..
Gazz wrote:Ship formations would actually fight as... formations.
Don't they already do? Given wing functionality and commands assigned to the wingmen? If the M2 leader uses his "guidebook to enemies" and comms to the wingmen, "hey, we're going after this guy", won't it clash if not overwrite (or simply cancel each other out) existing commands? When i create a wing or not OOS defense, i usually have the leader blindly attack.all with the wingmen either attack.nearestof or attack.targetof... When i watch them IS they do function as a single unit with all guns in the formation unleashing hell on the leader's target (attack.targetof). Or with attack.nearest, the formation flies into the dogfighting "bowl" engaging the nearest target, essentially breaking formation but still engaging (relatively) individual targets.
Gazz wrote:The most important thing is probably to abandon all hope of 100 % cloning IS combat, ye who hope to ever see this thing working.
Yes but i think if you manage to pull it off, you'll give players the illusion that it is. And i think that's a great achievement in itself, and should deter the countless complaints of people that post every few days saying they don't understand OOS combat, or that they lost a fully kitted/capped K to a Kea. :D And that's what really attracted me to this thread... And i'm losing sleep already because of it. :D
Gazz wrote:Oh, yes. I played D&D, AD&D, DSA, DSA Runemagic expansion (with silly complicated combat rules), Star Frontiers (SciFi RPG), Midgard (sillier than silly complicated combat rules), Star Wars, Traveller (SciFi RPG), Shadowrun, Battle/Aero/City/Smallfurryanimal-tech, Cyborg Commando (SciFi RPG), and whatever I forgot.
:o
***modified***

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Wed, 6. May 09, 11:16

orion84 wrote:Don't they already do? Given wing functionality and commands assigned to the wingmen? If the M2 leader uses his "guidebook to enemies" and comms to the wingmen, "hey, we're going after this guy", won't it clash if not overwrite (or simply cancel each other out) existing commands? When i create a wing or not OOS defense, i usually have the leader blindly attack.all with the wingmen either attack.nearestof or attack.targetof... When i watch them IS they do function as a single unit with all guns in the formation unleashing hell on the leader's target (attack.targetof). Or with attack.nearest, the formation flies into the dogfighting "bowl" engaging the nearest target, essentially breaking formation but still engaging (relatively) individual targets.
In theory and best case - yes.
It's all signal driven and reactive and will not allow for much "real intelligence" or potential features like targets of opportunity.

I'm pretty sure I can integrate that into something stronger, faster, I have the technology!


Anyway, it's about time to work on the actual rule book.
We have a lot of loosely connected ideas so far but no solid concept. =)
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

orion84
Posts: 162
Joined: Thu, 30. Apr 09, 16:14
x4

Post by orion84 » Wed, 6. May 09, 11:25

RE: M.A.R.S

I never really thought of this as cheating. Cap ships are manned by at least 100 crew in the technicality of it. I always thought as mars as a "ai bot" that would act as a human, with the captain (you) shouting at him to prioritize missile defense. I mean can you imagine the kind of technology involved in building a 2km long ship while being manned only by one person?

The nearest innovation to this is the US military Apache, whose nose turret reacts and moves in sync with the pilot's head. On the pilots helmet a small HUD hangs over one of his eyes so he can see what the turret sees. Although its a brilliant innovation, most pilots testify to having information overload. Imagine having a 3rd eye in the back of your head. It's not natural.

RE: SETA

People complain about losing things when sleeping eight hours with the SETA on. SETA is a 2 sided blade. It's an exploit that has a price. The only reason it was put in was to avoid traveling 100 km to between gates in a 100m/s M6.

RE: Fight Rank / player ships w/AI

I mentioned this before in an earlier post that Azz in the X3:R S&M made a script that allowed players to "hire" pilots to fly their ships. These ai pilots had their own combat rank too, and only gained them from fighting experience. Benefits of having ai pilots with high ranks made you confident to put them in charge of your M2... I desperately want him to port his script to TC, i don't feel safe without dependable pilots flying my M2's.

Fight Rank is just a system of measure to keep the game matched to the player. E.G. you don't want to have to fight M2's on your first patrol mission 10 minutes into starting a game. at the same time you don't want to be fighting waves and waves of m4's and m5's when you're rolling down the street in a pimped out Osaka.
***modified***

orion84
Posts: 162
Joined: Thu, 30. Apr 09, 16:14
x4

Post by orion84 » Wed, 6. May 09, 11:49

Gazz wrote:Anyway, it's about time to work on the actual rule book.
We have a lot of loosely connected ideas so far but no solid concept. =)
Yeah time to work.

Since i seem to be the only one that lacks in any scripting knowledge or (i mean you Gazz) thorough experience in pencil/paper rpg's, i'll do my best to make sure the flow is right and true.

But what i do have on my side is a bit of knowledge of Magic. In my experience (and depending on the GM) rpg combat rounds (deciding what to do) can take an hour (i'm exaggerating) but its decided in the roll of the dice and 'nuff said. I like this but i don't like the thinking part too much.

The game is played real time and you aren't given too much time to think. OOS combat is semi-real time with combat rounds resolved in 30 seconds (thanks Gazz).

We all agree on Preemptive Counterfire so lets start with that first. Rules are simple (anyone can step in and correct me if needed).

STEP 1.
Combatants, or ships/objects/npcs/strings/etc pick your poision are declared/declare themselves before combat commences.

STEP 2.
Ships (player ships only?) then call on a pre-defined array (like an enemies guide for dummies) to assess or directly fix current weapons loadout towards highest threat/nearest/direct threat.

Instructions then carried out to wingmen (if applicable)

STEP 3.
Combatants then proceed to enter combat phase.


Few points...

With this system, supposing playerships are located in a pirate sector, PC (preemptive counterfire) has committed both sides to the fight (player M7+wing M3's VS. NPC M6+wing), suppose an additional combatant enters scanner range (e.g. NPC M7+wing) that just entered through a different gate. Will PC be revised/rerun to adjust to new threat? In other words, will the PC "devote" involved ships to combat regardless of new data/information brought through scanners? Will this affect playerships only or NPC ships (reverse the scenario, you jump in the M7 for fire support)
***modified***

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Wed, 6. May 09, 12:09

orion84 wrote:RE: Fight Rank / player ships w/AI

I mentioned this before in an earlier post that Azz in the X3:R S&M made a script that allowed players to "hire" pilots to fly their ships. These ai pilots had their own combat rank too, and only gained them from fighting experience.
There are CODEA pilots, too.

I was thinking about using some kind of average between pilot (if available) and player "skill".
This would account for the use of scripts/mods like that while still only granting supah leet skeelz if the player fight rank is high as well.

Simply buying/training/scripting a pilot and getting a 100% elite ship is too easy. If the player wants the best, I want him to work for it. =P

STEP 2.
Ships (player ships only?) then call on a pre-defined array (like an enemies guide for dummies) to assess or directly fix current weapons loadout towards highest threat/nearest/direct threat.

Instructions then carried out to wingmen (if applicable)
I'm pretty sure OOS laser switching does not happen at all. (right now)
I'm not convinced there is a need for that, either.

That's another reason why I'd like a crude laser system like the 3 classes.
That creates a far better chance of AI ships having (by random chance =) a useful and somewhat balanced laser loadout.
Whether a light turret switches from Flak to HEPT would be irrelevant and even if a PPC turret fires at an M3, it would have a chance to hit.

I don't care if the AI uses optimised loadouts for this system. Maybe a little switching of lasers (available on the ship) can be done but no complete re-eqipping of every little M5.

orion84 wrote:Will PC be revised/rerun to adjust to new threat? In other words, will the PC "devote" involved ships to combat regardless of new data/information brought through scanners? Will this affect playerships only or NPC ships (reverse the scenario, you jump in the M7 for fire support)
A target array like that is no static affair.
If a new attacker joins the fight, it registers with the fighting party it wants to attack by appending itself to the array.

The only tricky bits I forsee are if the player doesn't want to fight a particular OOS fight. =)
Last edited by Gazz on Wed, 6. May 09, 12:26, edited 1 time in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

Post Reply

Return to “X³: Terran Conflict / Albion Prelude - Scripts and Modding”