Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: IceFire on November 03, 2002, 09:11:26 am
-
I'm not sure if I've made this request before. If the team has all of the goods on this already in the works than feel free to let me blabber on while you already have the good word coming :)
ie. If you already know and plan to do something about these than I'm happy already! :D
Shield Ignoring Weapons - Weapons that ignore shields and pass right through them as if they aren't there. Applies to both missiles and guns hopefully.
Burst Fire Guns - Fires several rounds of pulses at one time. This already works to an extent in FS2 by putting the $Swarm tag on a turret weapon. The problem at the moment is that the normal turret tracking is not used and the pulse fires down the normal...no matter the FOV of the gun. Table additions would specify the number of pulses and delay between each round fired in a burst. The normal delay time would indicate time between each burst (so, zap zap zap....paulse....zap zap zap).
Gunship AI - This one would benefit TBP for sure and I bet others could put it to good use. A number of Babylon 5 vessels are much larger than fighters or bombers and carry heavy weapons but have those weapons pointing forward. Examples include the infamous WhiteStar, SunHawk, and the Vorchan. But these vessels have a number of capital ship qualities too including missile turrets, fighter launch bays, and their larger size. We need a new classification of vessel (ie. like "fighter" or "cruiser") for the tables to specify that the ship is a larger type vessel but that it manuvers like a fighter would to place its fighter like weaponry on target.
Thanks for hearing me out!
-
i remembered seeing something dealing with the "swarm" tag and turrets, i will look into it.
-
*remembers the plasma cannon in D3 Mercenary* Ahh, yess....
-
There is a specific part of the AI code where is specify that only ships that are not fighter or bomber can have fighter bay ..that is why seting Whitesatr as Bomber crashed since there is an ASSERT to check it
-
There's one event I could use in some of my missions.
change-weapon or something like that.
This event changes currently equipped weapon on specified turret to another weapon.
For example, EA Omega class destroyers have specialized anti-fighter turrets that does have two firing modes: pulse and beam.
It would be handy to change them in mission.
That was but one example.
Sorry if this was wrong thread for this suggestion, but this shouldn't be off topic? :p
-
Sounds good, a FRED tag somethnig along the lines of when a certain event happens, a certain ship changes a certain weapon on a certain turret. Could be fun, especially if you could have some sort of automatic weapon cycling ;)
-
Sounds good Mr. Fury...
-
My apologies for everyone, but now I am going a bit off topic...
Ladies and gentlemen. May I introduce Earth Alliance Omega class destroyer!
http://www.eon3d.com/temp/omega060.JPG
Any change of seeing this detailed models in FS2? ;)
OK, that was probably TOO detailed. But it is so beautiful... And the damn think does not even have textures yet!
Thanks to Horatiu for pointing me to this site: http://www.eon3d.com/temp/wip.htm and http://www.eon3d.com/index.htm :nod:
-
Not until we get the engine working with Hardware Transform and Light.
-
Originally posted by RandomTiger
Not until we get the engine working with Hardware Transform and Light.
What? You sound serious...? :eek:
Are you seriously saying that with T&L we can use that detailed models in FS2 without making our puters crawling? :eek:
-
To drag this back on topic... :doubt:
Originally posted by IceFire
Shield Ignoring Weapons - Weapons that ignore shields and pass right through them as if they aren't there. Applies to both missiles and guns hopefully.
Having this option not as a flag but as a teble entry would enable people to specify the percentage of the weapon that makes it through the shield. For example:
$ignore_shield: 100 ;; completely ignores shields
$ignore_shield: 25 ;; 25% of the weapon damage is done against the hull/subsystems, the rest is expended against the shields
Originally posted by IceFire
Burst Fire Guns - Fires several rounds of pulses at one time. This already works to an extent in FS2 by putting the $Swarm tag on a turret weapon. The problem at the moment is that the normal turret tracking is not used and the pulse fires down the normal...no matter the FOV of the gun. Table additions would specify the number of pulses and delay between each round fired in a burst. The normal delay time would indicate time between each burst (so, zap zap zap....paulse....zap zap zap).
For primary, secondary and turreted weapons right? ;7
Originally posted by IceFire
Gunship AI - This one would benefit TBP for sure and I bet others could put it to good use. A number of Babylon 5 vessels are much larger than fighters or bombers and carry heavy weapons but have those weapons pointing forward. Examples include the infamous WhiteStar, SunHawk, and the Vorchan. But these vessels have a number of capital ship qualities too including missile turrets, fighter launch bays, and their larger size. We need a new classification of vessel (ie. like "fighter" or "cruiser") for the tables to specify that the ship is a larger type vessel but that it manuvers like a fighter would to place its fighter like weaponry on target.
This would be perfect for DS9's USS Defiant, for example. :nod:
-
I would LOVE capship torps like in Starlancer.
-
We already can make capital ship torps. The only difference is that we don't have nearly as much scripting control over secondary weapons like we do with beams for instance.
-
Any change of seeing this detailed models in FS2? ;)
Maybe in 20-30 years. ;)
This has been mentioned in another thread (in the MODding forum I believe) but one thing I think would be a useful code modification would be the ability for turrets to use multiple weapons. (Turrets can be assigned multiple weapons in FRED2, but at present the ships don't use them.) Imagine a turret equipped with beams for anti-cap ships and regular turret guns for anti-fighter use. Which weapon it would use would depend on what it's targeting. (And there's also the idea of laser/beam+missile combo turrets.) In the interest of backwards compatability, we might need to make a ship/ship class flag so that ships in the :v: missions don't try to use them. (I know at least the Orion has a turret with multiple weapon slots, all assigned to the same thing by default.) Right now, for a laser+missile combo turret, the only thing you can do is chose whether it will be a missile turret or a laser turret. (If a primary is assigned to it, it will use that and ignore the secondary one I think.)
-
Originally posted by Mr. Fury
What? You sound serious...? :eek:
Are you seriously saying that with T&L we can use that detailed models in FS2 without making our puters crawling? :eek:
Well, not that level of quality no, but something much better than we have now. Heres an idea that could generate what we need if someone will do some work with me:
http://www.hard-light.net/forums/index.php/topic,11197.0.html
-
EdrickV: That kind of approach would be useful for TBP in a few instances as well. The Excalibur has a number of turrets (3-4) with a rather large pulse cannon and two medium sized beam cannons attached to it. Having both firing would be awesomely cool :)
-
Unless someone is already working on it, I'll take a stab at the Gunship AI update. I've looked at it a bit and I'm considering adding the following defines to ship.h:
#define SIF_GUNSHIP (1 << 31)
#define SIF_MED_SHIP (SIF_GUNSHIP)
#define SHIP_TYPE_GUNSHIP 20
And will update the logic to allow the GUNSHIP fly like a bomber but support a fighter bay, turrets, etc. If you prefer a different class name, let me know.
As for the AI gun control, would sexp control or automated by the AI be prefered?
-
Originally posted by IceFire
The only difference is that we don't have nearly as much scripting control over secondary weapons like we do with beams for instance.
How about fire-beam, beam-free and beam-free-all like events for secondary weapons? You could have better control over secondary weapons, like torpedoes.
Originally posted by EdrickV
This has been mentioned in another thread (in the MODding forum I believe) but one thing I think would be a useful code modification would be the ability for turrets to use multiple weapons. (Turrets can be assigned multiple weapons in FRED2, but at present the ships don't use them.) Imagine a turret equipped with beams for anti-cap ships and regular turret guns for anti-fighter use. Which weapon it would use would depend on what it's targeting. (And there's also the idea of laser/beam+missile combo turrets.) In the interest of backwards compatability, we might need to make a ship/ship class flag so that ships in the :v: missions don't try to use them. (I know at least the Orion has a turret with multiple weapon slots, all assigned to the same thing by default.) Right now, for a laser+missile combo turret, the only thing you can do is chose whether it will be a missile turret or a laser turret. (If a primary is assigned to it, it will use that and ignore the secondary one I think.)
I don't know of others but at least I have sugested that. :)
That would be awesome. :) An ability for turrets to fire multiple different weapons at once´or one weapon at once but AI or event chooses what weapon is in use.
Originally posted by Righteous1
And will update the logic to allow the GUNSHIP fly like a bomber but support a fighter bay, turrets, etc. If you prefer a different class name, let me know.
As for the AI gun control, would sexp control or automated by the AI be prefered?
Sounds good. A cruiser that flies like a bomber. Trying to keep it's front guns at the enemy. But what about the spinning problem? Would that occur with Gunships? I mean, usually FS2 fighters and bombers spins around for a few times when they arrive and are taking first orders. That would be funny as hell if Gunships would do that. :D
Gunship is fine, that's what we at TBP have always talked about.
Normal AI gun control like in all other capital ships. With perhaps one minor modification, AI should prioritize currently targeted enemy above all others. Example: Vorchan A is attacking three WhiteStars, WhiteStar B is the closest so Vorchan is targeting it. All turrets will try to fire at WhiteStar B at first priority. If they can't, then they will pick another target. Should WS B come into firing arc of turrets that were previously unable to target it, then turrets will pick WS B even if they were firing at another target.
That's the role of "Gunship". :)
-
It just occured to me that what we really need to add to go along with all these weapons would be 'meshbomb' support, so some of these uber powerful weapons can just blow a ship to smithereens.
-
I don't get what ##UnknownPlayer## wants.
Of course we can make überweapons of any type: beams, pulses, missiles with specialized effects. So what's the deal?
-
Originally posted by Righteous1
Unless someone is already working on it, I'll take a stab at the Gunship AI update. I've looked at it a bit and I'm considering adding the following defines to ship.h:
#define SIF_GUNSHIP (1 << 31)
#define SIF_MED_SHIP (SIF_GUNSHIP)
#define SHIP_TYPE_GUNSHIP 20
And will update the logic to allow the GUNSHIP fly like a bomber but support a fighter bay, turrets, etc. If you prefer a different class name, let me know.
As for the AI gun control, would sexp control or automated by the AI be prefered?
Sounds great. Gunship is what I've been refering to everyone else and I think its aptly named.
SEXP control for what exactly? Maybe a short description of weapons on various Gunship styles would help.
You have the WhiteStar & SunHawk which have all their guns firing forward. The best way to do that is to use the primary cannons rather than turrets with a limited FOV. The reason being that primaries are linked while turrets fire independantly.
You also have the Vorchan which has two turrets top and bottom and a main gun that fires in a small arc around the front. All of those weapons basically point forward but the primary gun slot is not a good option.
Those are Babylon 5 examples...I've got FreeSpace ships that would use Gunship AI as well :)
And your effort is very much appreciated!!
-
I was refering to the AI weapon selection issue. I think it could be automated somewhat based on the targeted ship type or a SEXP could be used to control when alternate weapons are selected. If its automated, the mission designer has less control, if a sexp is used, he has more work. So the question is, what's your preference? [:)]
But this one is still on the back burner. I'll finish the Gunship update first.
-
Originally posted by IceFire
You have the WhiteStar & SunHawk which have all their guns firing forward. The best way to do that is to use the primary cannons rather than turrets with a limited FOV. The reason being that primaries are linked while turrets fire independantly.
You also have the Vorchan which has two turrets top and bottom and a main gun that fires in a small arc around the front. All of those weapons basically point forward but the primary gun slot is not a good option.
Just for clarification, for the Vorchan, would you use a turret for those weapons? i.e. will existing turret logic work for these? Or are changes to the weapon logic needed as well.
Originally posted by IceFire
Those are Babylon 5 examples...I've got FreeSpace ships that would use Gunship AI as well :)
I'll be asking for those for testing purposes in a few days! :)
Other questions:
How large are these ships. I'm assuming something between a bomber and a corvette. The code uses several scaling factors for different effects based on ship size and I'm updating these for the new class.
As for the fighters and bombers spinning, I'm assuming this is probably due to the AI moving from the initial mission position to the 'formed on pilot' positioning. That logic is pretty convoluted (at least to someone who's just learning it). I'll probably just wave a dead chicken over it for now and hope its not too much of a problem! :D If you think its due to something else, let me know.
-
Originally posted by Righteous1
I was refering to the AI weapon selection issue. I think it could be automated somewhat based on the targeted ship type or a SEXP could be used to control when alternate weapons are selected. If its automated, the mission designer has less control, if a sexp is used, he has more work. So the question is, what's your preference? [:)]
But this one is still on the back burner. I'll finish the Gunship update first.
OK, how this sounds then?:
If mission designer likes AI to take care of weapons control, he/she can then equips turrets with whatever weapons he/she likes. AI will take care if from there.
But if mission designer likes to have more control, designer can unequip weapons if necessary and then use events to switch or equip weapons. And then AI will take care of it from there.
Of course this event needs also primary/secondary and slot number information. If mission designer wants to switch a primary weapon in slot 1, then current one is replaced. But if designer switches it to slot 2 and that particular slot is empty, then nothing else happens but now that turret has two weapons and will use both.
But I wonder how we could define if turret/weapon can be used with another weapon or not? Example:
-Turret 1 is equipped with heavy cap ship beam and heavy pulse gun. It will use only either, not both at same time.
-Turret 2 is equipped with light pulse gun and flak gun, it will use both at same time.
How we can define what we want turret by turret?
I hope it would be something we can change in FRED2.
Originally posted by Righteous1
How large are these ships. I'm assuming something between a bomber and a corvette. The code uses several scaling factors for different effects based on ship size and I'm updating these for the new class.
Drazi FireHawk is ~350 meters long and almost 300 meters wide.
Centauri Vorchan is ~605 meters long and little over 800 meters wide.
Can't confirm WhiteStar size because I don't have it currently in my tables. But it should be around 250 meters long, don't remember how wide tho...
So basically lenght of gunships is 100-800 meters...
-
we should work on giveing turrets orders, then that would make such things easier
-
Non-beam turrets lack a Turret-Fire SEXP, but there are Turret-Free/Turret-Free-All, Turret-Lock, Turret-Lock-All SEXPs. SEXPs for changing a turret's current weapon (whether that means changing the weapon selected for that weapon slot or just changing weapon slots) would be useful. (An ideal case would allow changing from say Gun Slot 1 (0 according to the code) to Gun Slot 2, (1 to the code) or even to Missile Slot 1, Missile Slot 2, etc. FRED2 currently allows 3 gun slots max, and 4 missile slots max. (The 4th gun slot space is used for the AI drop down list box.)
Righteous1, be aware that the ship types are used in multiple places in the source code. (For instance they're also used to determine what can dock with what.) If you're adding ship types, it would be nice to have a ship type that could dock with just about anything, or a ship flag that would allow such docking. :) Right now the only ships that can dock with Fighter/Bomber/Stealth fighter ships are repair/rearm ships, which makes a universal tow truck idea kinda hard to do. :) The ship wouldn't need new AI, transport/freighter would work. (I really need to find a copy of VC6 I can afford.)
I think the AI code in general needs an overhaul, (especially collision prediction and avoidance code) and it would be nice if the acceptable orders for various ship types were expanded.
-
Yep, I've noticed that. The ship class gets used by itself in places and is combined into the SMALL, BIG, and HUGE ship types as well. It looks like the update will be a big one (a lot of modules) but the updates themselves seem to be pretty trivial.
I agree with the AI upgrade. As near as I can tell, the AI does collision detection with its target, but with little else. Which would explain why your wingmen love to bump into you and each other. The trick will be upgrading the AI without affecting the way the original campaign plays. I suspect a lot of the missions are designed with the AI intelligence (or lack thereof) in mind ;)
Your suggestion for a tow truck brings up a question I have. The Ship flags use bits to identify each ship class ex.:
#define SIF_CARGO (1 << 6) // is this ship a cargo type ship -- used for docking purposes
#define SIF_FIGHTER (1 << 7) // this ship is a fighter
There are defines setup in ships.h using bits 1-29 and I'm getting ready to add bit 30. Does this mean we have room for one or two more ship flags? I'm assuming we're limited to 32 bits before we have to make changes to the way the flags are defined/used...or am I misunderstanding something?
-
Vorchan's weaponry would all be in turrets...however its relatively fast and all that weaponry is facing forward so the broadsize AI mentality that FS2 has for cruisers and destroyers is a problem. The WhiteStar behaves like a large fighter (250 - 450 meters depending on which season of B5 your watching).
I prefer to have things automated for the most part. I love having fire-beam in FRED2 because then I can script beamfights, but I also tend to use alot of beam-free as well (for obvious reasons). SO I prefer to have automation and potentially optional scripting control for specific circumstances.
My general feeling is that if there is too much scripting...the free flow exploratory nature of a mission is then lost because its based on specific player events determined by the creator of the mission rather than a sound tactical plan devised by the player.
I like it neither here nor there. I'm a pain in the butt :)
Not sure if that helps you but it does give a general overview of my personal philosophy of mission and MOD design.
-
As is, the SIF_*'s are being treated as ints so I think 31 is the max. (0-31 = 32 bits.) If we could find all the occasions where they are specified as ints and change them to doubles/long doubles we would increase the amount of bits, or we could do a seperate extra flags thing. (Extra flags would be put after the regular ship flags, read using optional string, and that could increase the amount of possible flags a lot more, depending on exactly how the string is read. As a F_NAME type, it would have a max of 255 characters.)
Edit: Scratch the double/long stuff. Bitwise operators won't work on them because they are floating point types.
-
Ohh, I just found something people will like. :v: code to let weapons cut through shields like they weren't there!
// AL 1-14-97: "Puncture" doesn't mean penetrate shield anymore, it means that it punctures
// hull do inflict maximum subsystem damage
/*
if ( Weapon_info[Weapons[other_obj->instance].weapon_info_index].wi_flags & WIF_PUNCTURE ) {
// If this weapon punctures the shield, then do
// the hit effect, but act like a shield collision never occurred.
quadrant_num = -1; // ignore shield hit
add_shield_point(obj-Objects, mc.shield_hit_tri, &mc.hit_point);
} else {
*/
For backwards compatability, we'd have to change the WIF_PUNCTURE to something else, but that shouldn't be too big a problem.
-
we could change what it is evaluateing from a flag to some new wip value like "pucture_value" and do some checking against the shield streingth in that quadrant
and for the colision detection thing maybe wecould just add ships that are in there radius * 3 and/or in there wing to the list ouf ships they are to check to see if they will plow into