Hard Light Productions Forums
Modding, Mission Design, and Coding => The FRED Workshop => Topic started by: soilder198 on February 21, 2020, 06:21:49 pm
-
Hi all. Instead of making a thread for each question I have as they arise I am going to just keep bumping this one as I need to.
Current question is, in the initial status menu of two ships, one a GTF Pegasus, the other a SF Astaroth, I want to set their initial velocities to match that of their max thruster speed. In the case of the Astaroth, it has a maximum afterburner velocity of 155 mps according to the wiki, while the Pegasus tops out at 160 mps. If I set the initial velocities of these two ships to match their respective maximum afterburner velocities, FRED will default their velocities back to 100 mps without fail. Is this a limitation on the end of FRED? Or is there a way I can circumvent this?
-
FRED probably doesn’t ‘know’ about afterburner velocity. You could use an event to force them to fire burners at mission start, I think...? Been a while since I ****ed with AI movement.
-
Just to clarify, the int ital velocity in FRED is a percent, not the actual value. For example, if a ship's speed is 80 then setting the initial velocity to 100 will mean the ship starts with a speed of 80.
-
AFAIK there's no SEXP with that you could force a ship to use its AB. You could use set-ets-values to max out normal speed by editing ETS settings to go to maximum overclock speed though.
-
There is no SEXP specifically, but you can do some things to make it work.
One trick I employed was to tell the AI to attack an invisible ship model. AI almost always uses thrusters to reach a target. Then I also locked the AI weapons. This had the effect of causing them to afterburn to where I wanted them to go. Once there, I removed the invisible object and unlocked weapons.
Now, IIRC there is an ai-profiles.tbl flag that will allow the AI to use afterburners to reach waypoints now. So it could be as simple as making sure that flag is active in a tbl and telling the AI to travel to a waypoint.
-
Thanks for the responses guys.
Didn't realize Initial Velocity was a percent scale.
I'll play around with some of these ideas.
-
Hi everyone gonna bump the thread for a new question.
In a mission, Alpha One is in charge of Alpha wing. I have disabled certain commands that Alphas Two, Three, and Four will accept. The same commands are all disabled for these three ships. Fred tells me that every ship in a wing must accept the same commands, and Alpha One, the player, is breaking this protocol by not accepting the same commands as his teammates, though Alpha One is the player and does not accept commands to begin with.
Is this something I can ignore in this instance? It doesn't seem to make sense.
Also another question.
The Initial Orders tab can be used for both wings and individual ships. Alphas 2, 3, and 4 have individually been given an initial order of Attack Any Ship. After a certain enemy wing is destroyed, I want to use the clear-goals sexp to remove the Attack Any Ship goal from Alphas 2, 3, and 4. In the clear-goals sexp, can I clear Alpha as a whole wing of their goals even if I gave the orders to individual ships? Or would that only work if the Attack Any Ship initial order was given through the Wings editor and not the Ships editor?
-
Yeah you can probably just ignore it. Or maybe just set the permitted commands at the wing level?
-
Yeah you can probably just ignore it. Or maybe just set the permitted commands at the wing level?
Thanks Battuta... didn't expect a reply so fast. Edited my post to include another question.
-
If you want a channel where you can ask quick questions and get quick answers easier you should join our discord server (https://discord.gg/YNVP3WR).
-
IIRC there's no functional difference between orders given from the editors and those given by SEXP.
-
Hi everyone gonna bump the thread for a new question.
In a mission, Alpha One is in charge of Alpha wing. I have disabled certain commands that Alphas Two, Three, and Four will accept. The same commands are all disabled for these three ships. Fred tells me that every ship in a wing must accept the same commands, and Alpha One, the player, is breaking this protocol by not accepting the same commands as his teammates, though Alpha One is the player and does not accept commands to begin with.
Is this something I can ignore in this instance? It doesn't seem to make sense.
This is because the engine determines the permissible orders for a wing from the permissible orders of the ships in it. "+Orders Accepted:" is handeled on a ship to ship basis, it doesn't feature in the data for a wing.
So even though a player ship cannot accept orders from the player, it still has to match the "+Orders Accepted:"-value of all other ships in its wing. (mark all four ships and set the player orders in bulk)
The Initial Orders tab can be used for both wings and individual ships. Alphas 2, 3, and 4 have individually been given an initial order of Attack Any Ship. After a certain enemy wing is destroyed, I want to use the clear-goals sexp to remove the Attack Any Ship goal from Alphas 2, 3, and 4. In the clear-goals sexp, can I clear Alpha as a whole wing of their goals even if I gave the orders to individual ships? Or would that only work if the Attack Any Ship initial order was given through the Wings editor and not the Ships editor?
Don't quote me on this, but distinctly remember that there is a hierarchy to the relationship between individual ship ai-goals and wing ai-goals. I just don't remember the specifics.
-
Don't quote me on this, but distinctly remember that there is a hierarchy to the relationship between individual ship ai-goals and wing ai-goals. I just don't remember the specifics.
Don't quote me either as I am unable to test this right now, but I *think* the hierarchy might only be present with player-given orders, with all orders being treated the same way, and the priority values being like: all fighters < wing < ship.
-
You are partially right. Player orders to a ship have higher priority than orders to a wing. When given via the comms menu. When given by SEXP or initial orders, they use those priorities instead.
That's why you are advised in the initial orders editor to keep priorities below 89. Priorities above that can interfere with player orders. Now that might be what you actually want (i.e wingmen have a specific target they will go after and only once it's dealt with, will they listen to the player) but you have to be careful.
EDIT: Found the code that defines those priorities.
#define PLAYER_PRIORITY_MIN 90
#define PLAYER_PRIORITY_SHIP 100
#define PLAYER_PRIORITY_WING 95
Using the comms menu, orders to "All ships" have a priority of 90. Wings 95 and individual ships are 100. What this means is that if I set Beta wing to attack a Shivan destroyer with a priority of 96 the player can order beta 1 to do something else, but if he orders beta wing to do it, they'll respond with an "Affirmative Sir!" message and then quietly ignore him and carry on with what they are doing until it's finished. Only then will the player's orders have priority.
-
It would actually be kind of cool to have a 'negative, sir!' response if they already have an overriding priority. But it would probably be confusing, and obviously there's no way to record new lines for the (excellent) retail profiles.
-
Pretty sure the retail profiles already included a "I can't do that" line that mostly goes unused.
-
Yeah I was gonna say that they do have a "No" it's just unused.
They also have a "I don't have a target" line that almost never gets said.
https://wiki.hard-light.net/index.php/Messages.tbl#.24Allow_substitution_of_missing_messages:
-
$Name:
Required. Defines the type of the message
Syntax: String
Available types (types marked with * do not have code support) :
Arrive Enemy
Attack Target
Beta Arrived
Check 6
Engage
Gamma Arrived
Help
Praise
Backup
Ignore Target
No
Oops 1 * (Only Command has code support in Retail)
Permission *
Stray *
Depart
yes
Rearm on Way
On way
Rearm warping in
No Target
Docking Start *
Repair Done
Repair Aborted
Traitor
Rearm
Disable Target
Disarm Target
Player Dead
Death
Support Killed
All Clear *
All Alone
Repair
Delta Arrived
Epsilon Arrived
Instructor Hit
Instructor Attack
Stray Warning
Stray Warning Final
AWACS at 75
AWACS at 25
FS2 Open, 3.6.12:
Praise Self
High Praise
Primaries Low
I think you do get the no answers if you use Hot-keys for messaging, but no one does that so yeah.
They also have a "All clear" and judging by the lines it's supposed to be used with the victory music / or during good rearm time?
-
I've added new built-in messages in the past. So it's not like we couldn't add an "I'm busy sir" style response.
-
I've added new built-in messages in the past. So it's not like we couldn't add an "I'm busy sir" style response.
There already kinda is one tho, that's the weird part.
Could someone look at what the built-in "No" command is caused by? I always wondered whether it had a case trigger or not, it has recorded and tabled lines in both retail FS1 and FS2 but I never heard it so it seems like something might actually trigger it under certain conditions, but I'm not sure.
There are some other recorded/tabled lines that I never heard in game as well, "All Clear" and "No Target" come to mind.
I may make a thread listing all the unused/rare Personas messages later, it always seemed strange to me.
-
Could someone look at what the built-in "No" command is caused by? I always wondered whether it had a case trigger or not, it has recorded and tabled lines in both retail FS1 and FS2 but I never heard it so it seems like something might actually trigger it under certain conditions, but I'm not sure.
I'm pretty sure that in addition to the normal "c" communications menu, you can give wingmen orders with keyboard macros (shift + different keys for each command). If you try to give wingmen an order that doesn't work (attack a friendly craft, etc.), you get that "Not here, sir!" response. You don't usually hear those lines, because you can't give those kinds of orders from the normal menu (they're grayed out).
-
Could someone look at what the built-in "No" command is caused by? I always wondered whether it had a case trigger or not, it has recorded and tabled lines in both retail FS1 and FS2 but I never heard it so it seems like something might actually trigger it under certain conditions, but I'm not sure.
I'm pretty sure that in addition to the normal "c" communications menu, you can give wingmen orders with keyboard macros (shift + different keys for each command). If you try to give wingmen an order that doesn't work (attack a friendly craft, etc.), you get that "Not here, sir!" response. You don't usually hear those lines, because you can't give those kinds of orders from the normal menu (they're grayed out).
That's what I figured, I was asking if anyone had proof of that. :nervous:
I'll try it hang on.
EDIT:
(https://i.imgur.com/WwKS3ab.jpg)
EDIT2: Okay, so why doesn't "All Clear" ever play?
-
🤔🤔🤔
-
You are partially right. Player orders to a ship have higher priority than orders to a wing. When given via the comms menu. When given by SEXP or initial orders, they use those priorities instead.
That's why you are advised in the initial orders editor to keep priorities below 89. Priorities above that can interfere with player orders. Now that might be what you actually want (i.e wingmen have a specific target they will go after and only once it's dealt with, will they listen to the player) but you have to be careful.
EDIT: Found the code that defines those priorities.
#define PLAYER_PRIORITY_MIN 90
#define PLAYER_PRIORITY_SHIP 100
#define PLAYER_PRIORITY_WING 95
Using the comms menu, orders to "All ships" have a priority of 90. Wings 95 and individual ships are 100. What this means is that if I set Beta wing to attack a Shivan destroyer with a priority of 96 the player can order beta 1 to do something else, but if he orders beta wing to do it, they'll respond with an "Affirmative Sir!" message and then quietly ignore him and carry on with what they are doing until it's finished. Only then will the player's orders have priority.
This seems like legitimately bugged behavior from a player standpoint. If I give a ship/wing an order, and them issue another order, my expectation is that the ship/wing in question will do the last thing I told them to. Finding out this isn't the case after playing this game for almost 20 years is mind-boggling, and probably explains any number of bull**** things I've seen the AI do (or in this case, not do). I mean would it be reasonable to adjust this behavior so that the last-issued order takes precedence, regardless of whether it's a ship or a wing?