Author Topic: Saga-Modding  (Read 9374 times)

0 Members and 1 Guest are viewing this topic.

Offline Aginor

  • Spelljammer
  • 210
Hi there!

Since I had another funny night with the Saga FRED last night I decided to open a thread here.
I want to write about the progress on my missions, ask a few questions that I feel silly to ask in the mission editing forums and talk about Saga-specific FRED things.
Also I want to inspire others to learn FRED to make missions for Saga, and generally improve their skills. Post your ideas here!

Of course I know I am still a beginner with FRED, so feel free to correct anything wrong I write or suggest cool things I could do in FRED.


Soo... let's get started.

Last night and the day before I had some time and started to create a mission.

A small base (Saga supply depot ) near a jump point is the base. The player starts there, flying an Arrow.
The briefing tells him a convoy is going to jump out, and he should scan all the transports to make sure there are no smugglers hiding in the convoy.
So the player starts and there are eight friendly transports of various sizes in space (Artemis, Pelileu, Clarkson, Shuttle), all of them heading for the jump point, initial orders are given to follow three routes to the jump point. Some of them have 1-2 escorting Razor-class fighters. (I formed them to wings, the transport being the wing leader) All are scannable and have cargo and subspace drive.
Their depart cue is when they are less than 1000m from the jump buoy. The escorts jump out simultaneously with their wing leaders.
There are two evil ship captains, a Demon with drugs as cargo and a Clarkson with slaves. Both attack some seconds after being scanned (I set it to 5 for now). The player has to kill the escorts. The Demon has also to be killed but the Clarkson with the slaves is to be disarmed, which triggers a chain of events that set the transport to friendly again and it docks at the station.
If the objectives are reached or impossible to reach (for example if the player destroyed the slave transport) the player is ordered to land. Mission end occurs when Alpha 1 is closer than 30m to the fighterbay.

I also did three different debriefings depending on whether the objectives were reached or not and played a bit with backgrounds.

So that's what I did. It took me approximately 5 hours.
Funniest thing to happen: I forgot to disable the other AI goals for the slave transport when I told it to dock. So it docked.... and then flew to the jump point carrying my station away!! I LOL'd very hard. Then I set it to "play dead" as soon as it had docked via a chained event.

I encountered a few strange things I don't understand (maybe someone here knows the answers):
- Something caused my station to become some sort of ghost without collision detection as soon as some event was activated. I can't reproduce it now though but it happened before.
- My sound seems to disappear and reappear sometimes during the mission. I think it happened when I added the Razors to my mission. It is not the whole sound I think but only some sounds, I don't know what causes it or how to fix it.
- One of the Razors had a Kilrathi deathscream once. I deactivated deathscreams now. I found no pirate persona :(


Questions:
1. Is it possible to have more than one effect in an event?
Something like:
When the cargo is known for more than 5 seconds:
 - wing pirates1: set iff to hostile
 - wing pirates1: add ai goal attack Alpha1
I did this with a event chain, the second event being true as soon as it is activated. Is there a better way?

2. I am a software developer so I am used to some constructs which I couldn't find in FRED, so maybe someone can answer those questions:
2a. Is there something like an IN-operator in FRED, so I can put ships that belong to different wings in arrays ?
For example in my mission I have an event "all_scanned" that becomes true when all transports are scanned. I used ten "and"s for that so I could include all the transports that shouldn't escape un-scanned. Is there a better way?

2b. Is there an operator in FRED to reference the object itself or one of its attributes, like "this.shipname", so I can use the same event on several ships? In my mission all ships have the same depart cue, just the ship name is changed every time.

3. Which methods are used if I want to do the following;
Don't allow the player to shoot at the ship with the drugs before it becomes hostile. So I have to trigger an event when the player hits a friendly ship. But of course one hit against a transport during a fight with the pirates is likely to happen so the event shouldn't fire instantly.

4. A design question:
Should I use complex expressions for mission goals or is it better to do the complex things in events and reference to the events in the objectives screen.

5. Something completely different: Can someone point me to a tutorial where I can learn to include new ships into Saga? I'll need a flyable Dralthi and/or Darket soon.
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Quote
Questions:
1. Is it possible to have more than one effect in an event?
Something like:
When the cargo is known for more than 5 seconds:
 - wing pirates1: set iff to hostile
 - wing pirates1: add ai goal attack Alpha1

Right click on the event and use 'add operator', don't accidentally click 'delete'

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
2. I am a software developer so I am used to some constructs which I couldn't find in FRED, so maybe someone can answer those questions:
2a. Is there something like an IN-operator in FRED, so I can put ships that belong to different wings in arrays ?
For example in my mission I have an event "all_scanned" that becomes true when all transports are scanned. I used ten "and"s for that so I could include all the transports that shouldn't escape un-scanned. Is there a better way?

2b. Is there an operator in FRED to reference the object itself or one of its attributes, like "this.shipname", so I can use the same event on several ships? In my mission all ships have the same depart cue, just the ship name is changed every time.

Both of these sound like something that would be improved by using the when-argument SEXP instead of when. Check my FAQ's FREDding section for more information on how to use it.

Quote
3. Which methods are used if I want to do the following;
Don't allow the player to shoot at the ship with the drugs before it becomes hostile. So I have to trigger an event when the player hits a friendly ship. But of course one hit against a transport during a fight with the pirates is likely to happen so the event shouldn't fire instantly.

Depending on whether it was added before or after the fork, use the damage-caused SEXP if you have it.

Quote
4. A design question:
Should I use complex expressions for mission goals or is it better to do the complex things in events and reference to the events in the objectives screen.

I personally like to do everything in the event editor and simply use is-event-true-delay everywhere else. Other FREDders prefer to do things differently. It's pretty much a personal choice. Just be consistent once you choose.

Quote
5. Something completely different: Can someone point me to a tutorial where I can learn to include new ships into Saga? I'll need a flyable Dralthi and/or Darket soon.

Do you need to add new ships? The "player_ship" flag might be all that is required. I'll leave an explanation of that to someone who is a better modder than me though.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
For the Klirathi ships, you'd need to add weapon configuration (allowed missiles and guns) and the "player_ship" flag. Maybe some loadout screen descriptions. That should be it.

 

Offline Aginor

  • Spelljammer
  • 210
Wow, three useful answer posts already, thanks a lot!

Let's see...

@General B: I just realized I was just clicking on the wrong spot all the time when I tried that. I have to click on the "when" to add an operator, not on the existing effect below it. Check!

@Karajorma:
2. I'll check out your FAQ today, maybe I'll also get seom inspiration for my next mission.
3. get_damage_caused is available it seems, so this may be useful.
4. Ok, I guess your approach is also the way I'll do it. Especially since in the event editor there are descriptions of the SEXPs which aren't there in the objective editor.
5. Ok, that's a start.

@Dragon:
ok... now there's the problem that I don't even know where to find the place to do what you said. I understand there are some "ship tables" somewhere but I can't find them. Are they stored somewhere in the .vp files, and can I overwrite them by putting new tables into some folder or do I have to change them where they are? I'm not new to modding but to FS2 modding so please forgive me if those are noobish questions.
I guess I'll look into the Data Structure page of the wiki.  http://www.hard-light.net/wiki/index.php/FS2_Data_Structure

I'll be back in a few minutes :)
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
They tables is in hermes_core.vp . You need to extract ships.tbl to [saga directory]/mod/modname/data/tables (that's how it works in WCS). You might be better off making a modular table altering only those lines. PM me if you need additional help, but it's pretty much basic FSO modding, look at the wiki for tutorials. If you won't be able to figure it out, I can even do that for you.

 

Offline Aginor

  • Spelljammer
  • 210
Thanks Dragon, I'll take a look at that.

@Karajorma: I suppose you hear that all the time, but.. MAN! That FAQ of yours really rocks! Very helpful.

Right now I'm digging into the files :)
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Aginor

  • Spelljammer
  • 210
Ok, I extracted the ships.tbl and added the "player_ship" flag for the Darket.
I created a folder [saga directory]/mod/Aginors_mod/data/tables and put the ships.tbl in there.

I also created a mod.ini in the mod's main folder.

I read that FRED uses the mod selected in the launcher but I can't select the mod in the launcher.
Of course this is the Saga launcher so the normal way to select a mod may not be possible...

Worst case will be that I have to wait for the Saga SDK, Keldor and Tolwyn will surely explain this so no problem if no one knows what I have to do now, but if you already know what to do, please tell me :)


I also tried a few things you guys told me, and I'm sure I can optimize future missions that way. If I just had more time and ideas for cool missions... :D
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Don't bother with a mod.ini
Select the mod in Saga launcher by choosing it with arrows.
Also, I've made a small mistake. The folder actually is [saga directory]/mods.

 

Offline Aginor

  • Spelljammer
  • 210
Yeah that worked, I can select the mod now. Thanks!
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Light

  • 24
If you want to fly the Kilrathi fighters take a look at the .tbm files that I have attached. I set them up while beta testing.

[attachment deleted by a ninja]

 

Offline Aginor

  • Spelljammer
  • 210
@Light: Thanks, that saves me a lot of time. I made the Darket flyable yesterday. First the weapons didn't work but then I realized that the Stalker missile wasn't usable by the player. I changed it and could use the missiles, but I don't know if the table changes affect the AI or something.

I just looked into your tables and they look much better than mine. I'll include them in my mod (and if I ever release it I'll mention you in the credits)


btw: Flying the Darket last night I realized that being a evil Kilrathi attacking transports can be great fun. I can start doing some of the more simple missions for my mod now, as soon as I understand the Saga autopilot template and can change everything to Kilrathi.
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Aginor

  • Spelljammer
  • 210
Ok, here's another question, this time about animations:
Saga uses ani files to show the weapons in the loadout screen.
Since there are no such files for the Kilrathi missiles I'm now in the process of creating these.
I already created an ani file for the Claw missile, and I changed the Claw's entry in the weapons table to $Anim: LoadoutClaw
The LoadoutClaw.ani I put into the folder /data/interface of my mod's directory.

But the ani doesn't show up in the loadout screen. Now I don't know if I did something wrong creating the ani or if I just put the ani in the wrong folder or something. The ani looks good in AniView.
Any ideas on that?


EDIT: Nevermind, the file name has to be 2_LoadoutClaw.ani for some reason. I noticed that the files in the Saga VPs are all called like that.
Its working now.  :)

EDIT2: ok, Loadout anis for all Kilrathi missiles are done. Since I'm not able to make better fitting icons I'll use those of the Terran missiles for now. Maybe I will change that in the future but that is low priority.

Next I will try to create a nice Kilrathi loading screen and then I'm back to FREDing :)
« Last Edit: April 14, 2012, 07:44:28 am by Aginor »
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
2_LoadoutClaw.ani = images used for 1024x768 and up. 640x480 will use the LoadoutClaw.ani
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Aginor

  • Spelljammer
  • 210
Ah, thanks!
I already wondered what all the 2_* meant  :)

My next problem is linked to interface files as well:
I did a new progress bar (2_Loading.ani) that works, but then I made the background (took the Saga 2_Loading_BG.dds and edited it) and it seems to be completely transparent. Ingame I can see the progress bar ani but not the background.
I already tried different DDS methods (DXT1,3 and 5) but neither worked. So what did I do wrong?

EDIT:
Aaand again I asked a few seconds too early. I looked at the filesize of the Saga DDS files and noticed they are much bigger than mine. So now I tried to use none of the methods mentioned above but uncompressed DDS and it works.
« Last Edit: April 14, 2012, 10:48:22 am by Aginor »
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Aginor

  • Spelljammer
  • 210
Here's another update.
I wanted to FRED a bit, but then I just had to do something else: I changed some interface screens to a Kilrathi design. Since I was the one who created or at least worked on most of those for Saga I knew what to do (and more important: what to avoid). Now I have almost all used interface screens finished. I think four or five are missing that I know of. It does add a cool Kilrathi mood to the game. I will post some screenshots when I'm home.

... hmmm, now that I think about it... basically I have a half finished Kilrathi mod without missions.
I even think about splitting my work in two:

One package would be the Kilrathi mod, including
- all interface screens Kilrathi style
- Default Kilrathi wingman, hopefully including voices
- Saga autopilot template with Kilrathi ships and using Kilrathi personas, so everyone can make their own Kilrathi campaign.

The other one will be my Kilrathi campaign. I may need some help or at least ideas for that. What I already have and what I need:
- rough story draft (I'll need somebody who is a writer so I can send him my draft, I need ideas)
- basic mission structure, with objectives, nav points and such things for the planned 10 missions. (I will FRED those myself if I can, but I'll need people who know FRED and FSO so they can do some QA )

I also looked if I can do a mainhall for the mod and I think I can't. I'm neither creative enough to design it nor do my modeling skills suffice for creating it. I will ask some artists for sketches of a Kilrathi main hall though, and if I get some I will try to model and render and include that stuff. This is low priority though, so I guess there will be a non-animated main screen in the first version, I can do that one myself.

My last request for now is sound-related:
Does anyone know a program or a plugin for audacity or something that I can use to transform normal voices into Kilrathi-sounding voices?
I also need a "computer voice" (robot-like) since the friendly Saga one is unsuitable for Kilrathi I think. I think I will record at least some of the voices myself but I have to change my voice for that, I don't sound Kilrathi enough.

So this is the state of my modding, stay tuned for more!  :)
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Aginor

  • Spelljammer
  • 210
Here is one of the promised pictures of the screens. Still WIP of course but most of them suffice I think. I have to get back to FREDing soon after all.
...actually it looks much better ingame (this is just a jpg i made of the DDS). Whatever.^^

I think I finished the screens now. (I just found two that were missing before).
Next I'll get back to FREDing and then maybe I'll do some medals and rank insignia (I also did that before for Saga, unfortunately my medals weren't used. I'll have to do some research though to see how Kilrathi medals may look like)

btw: If anyone has a cool idea how a Kilrathi main hall may look like feel free to post some concept art, then I'll see what I can do with that.
EDIT: same goes for Kilrathi HUD parts and medals/rank insignia of course.

[attachment deleted by ninja]
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."

 

Offline Deathsnake

  • 28
  • Again there
    • German Wing Commander Site
That looks nice. Well done.
Star Citizen Garage No. 250:

AEGIS DYNAMICS: Sabre, Starfarer Gemini
ROBERTS SPACE INDUSTRIES Polaris
ANVIL AEROSPACE Carrack

 
I agree with Deathsnake.
Audio Converter of Enigma Campaign 2666:
http://enigma.de.to/

German translator of WC: Hostile Frontier:
http://www.ciinet.org/kevin/wchf/

My Youtube Channel:
http://www.youtube.com/user/FekLeyrTarg?feature=mhee

 

Offline Aginor

  • Spelljammer
  • 210
Thanks a lot!
That one actually took quite long because I had to separate everything into six layers or so.
(Bonus points if anyone finds out what the signs mean. It is possible if you use the world's biggest information source)

Also here's another screen (Ship selection). As you see the structure is completely the same since those positions are fixed in the code, I just manipulated some colors and stuff.

[attachment deleted by ninja]
Member of the Scooby Doo model Fanclub "verticies and splines are the medium and he is the artist."