Join us at the Oolite Anniversary Party -- London, 7th July 2024, 1pm
More details in this thread.

BGS - The BackgroundSet

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: another_commander, winston

User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Thargoid wrote:
Admittedly I've never tried it with sound files, but I would expect it to be possible by building up the filename ("station_aegis_chatter_" + this.chatterNumber + ".ogg" or somesuch, and then using that in the sound file commands? It certainly works with .png files for textures and such, and I wouldn't expect audio files to work much differently?

You do need the correct filename format, but it should work?
Sure. If you know the exact filename it is not a big problem.
But collecting all files with a prefix is a different thing. By looping over possible combinations the script would try to access a lot of not existing filenames too.
The second point is that there is no way to differenciate between files that are meant to be used in BGS and other files.
And the third point is that collecting these files would take time, probably even a lot of time when it has to be done via OXP.
So I really think that a script is the best solution to expand the arrays.
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

BGS1.3.2 is online.

- Chatter is not looped anymore, picks another sound when finished and still in Aegis.
- Cleanup of some relicts from older versions.
- Raised the delay to 600ms between screens.
- Added multiple screen indicators on mainstations.
User avatar
Cody
Sharp Shooter Spam Assassin
Sharp Shooter Spam Assassin
Posts: 16065
Joined: Sat Jul 04, 2009 9:31 pm
Location: The Lizard's Claw
Contact:

Post by Cody »

Thanks Svengali... I'll take it out for a cruise tonight.
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
User avatar
onno256
---- E L I T E ----
---- E L I T E ----
Posts: 286
Joined: Thu Aug 12, 2010 11:31 am
Location: The Netherlands

BGS!

Post by onno256 »

Hey People,

I'm a bit late, but I assimilated this OXP the moment I saw it posted here.
I love it. You know, when I played Elite, a lot more was going in on in my head than was actually happening in the game. Nice to see the two merging!

Didn't install the updated pack just yet, but I'm sure to give it a try!

Thanx for all the hard work.

Greetz,
Onno.
Wheeling an' dealing while cruisin' the galaxies
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Thanks Onno :-) Have fun with it.
User avatar
pagroove
---- E L I T E ----
---- E L I T E ----
Posts: 3035
Joined: Wed Feb 21, 2007 11:52 pm
Location: On a famous planet

Post by pagroove »

Gr8 work my friend :)
For P.A. Groove's music check
https://soundcloud.com/p-a-groove
Famous Planets v 2.7. (for Povray)
Image
https://bb.oolite.space/viewtopic.php?f=4&t=13709
User avatar
pagroove
---- E L I T E ----
---- E L I T E ----
Posts: 3035
Joined: Wed Feb 21, 2007 11:52 pm
Location: On a famous planet

Post by pagroove »

@Svengali
I've installed the latest version. I like the countdown to Hyperspace. I will Look if I can re-edit my own version so that it is only saying: 'Hyperspace System initialized'. and let your sample do the countdown.
For P.A. Groove's music check
https://soundcloud.com/p-a-groove
Famous Planets v 2.7. (for Povray)
Image
https://bb.oolite.space/viewtopic.php?f=4&t=13709
User avatar
JeffBTX
---- E L I T E ----
---- E L I T E ----
Posts: 366
Joined: Sun Dec 27, 2009 2:23 pm
Location: Abilene Texas

Post by JeffBTX »

Minor question: when / under what conditions does the sound file "bgs-c_w_hole.ogg" get played?

I have a Wormhole Scanner installed...

I've played the sound in Windows Media Player to familiarize myself with it...

I can't seem to catch it ever getting played.

I've lurked outside of stations, for, say, a Boa and it's escorts to launch... and then followed closely behind... that soundfile does not seem to play when a wormhole is created, or at any other time.
Sword, thy name is Cobra. And Cobra has fangs!
User avatar
JeffBTX
---- E L I T E ----
---- E L I T E ----
Posts: 366
Joined: Sun Dec 27, 2009 2:23 pm
Location: Abilene Texas

Post by JeffBTX »

Another question, sorry... followed by an open thought that MIGHT be considered a question.
----
I just downloaded OXPConfig and the Cabal Common Library (about an hour ago).

I temporarily extracted it to have a look at it. It is NOT installed.

I am kind of overwhelmed by the documentation, and so far I don't understand it very well (I know... "learn by doing").

So before I try anything...

Can OXPConfig enable me to SELECT just certain sounds from BGS, and certain sounds from PAGroove's alternate BGS sounds, and a couple of my own sounds that I have created?
-----
I am kind of thinking instead of going the OXPConfig route... since I DON'T have that many OXPs installed anyway... to just simply hack my own personalized copy that emulates BGS. It would just be sounds... none of the background features. (which means I would work with the single packs of BGS; Custom Sounds, Scripted Sounds, PAGroove's ALT)

It almost seems that it would be easier, and certainly less bloated and more efficient that way. I did a preliminary experiment that worked... I used a customsounds.plist that referenced SOME of the BGS sounds, PAGroove ALT sounds, and one of my own (a "player_hit_by_ecm" sound, basically Oolite's "ecm.ogg" dropped an octave and then added an echo)... wrapped into a temporary test OXP. (and BTW the hit-by-ecm worked beautifully, I shot a missile at a GalCop viper... hehehe)

That just leaves the scripted sound events that I want (example engine sounds). Of course, the script ALSO has to be a bit overwhelming...
:cry:

I don't have enough OXPs (that I kept after testing) to really justify OXPConfig. I've rejected a LOT of OXPs because I don't like them, or they are OK but there is something that is too annoying, or they cause outright conflicts.

At present I ONLY have:

Asteroid Storm 4
DeepSpace Ships
JBHUD (my own hud)
Ore Processor 157
Repair Bots 2
Rock Hermit Locator

... and I am watching for progress and bugfixes on only 3 more (any Planet Texture OXP that handles the F7 function on the fly, Random Hits, and Your Ad Here).

Thoughts? Suggestions?
Sword, thy name is Cobra. And Cobra has fangs!
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

JeffBTX wrote:
Minor question: when / under what conditions does the sound file "bgs-c_w_hole.ogg" get played?

I have a Wormhole Scanner installed...
Never!!!

I think its an Oolite omission. Inside Oolite there is a file called "customSounds.plist". At the end there are 6 occasions defined without an explicit sound attached to them. Currently they are commented out, but Svengali did use them. 5 out of the 6 are actually used in the code but [wormhole-created] entry is never called by Oolite. Probably planned once but than forgotten?
User avatar
JeffBTX
---- E L I T E ----
---- E L I T E ----
Posts: 366
Joined: Sun Dec 27, 2009 2:23 pm
Location: Abilene Texas

Post by JeffBTX »

Eric;

Thanks, that answers that question. It was confusing... and it IS referenced in BGS.
Sword, thy name is Cobra. And Cobra has fangs!
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

JeffBTX wrote:
Can OXPConfig enable me to SELECT just certain sounds from BGS, and certain sounds from PAGroove's alternate BGS sounds, and a couple of my own sounds that I have created?
Short version - for customsounds.plist no, for script-controlled sounds yes.

A script can't change assigned sounds in/from customsounds.plist. That was one of the reasons for the missiontext.plist keys for BGS. And yes, it is a lot more efficient to edit the used OXPs scripts/plists instead of doing it via OXPConfig.

OXPConfig is in my eyes a nice way to to set some generic properties (like audio on/off or chances), but it is a OXP and has the limits of OXPs and JS. A configuration in Oolite itself or a third-party tool would be a lot better, but it seems that all plans for such a third-party tool never led to a working result and slipped away within a week. That's why I've updated OXPConfig.

And another thing is processing time. JS is compared to e.g. obj-C a looot slower, so if a OXP doesn't need OXPConfigs Interface it would be better to find another way. And OXPConfig can be pretty slow if OXPs are using dependency chains + EarlyCall/EarlySet/Notify flags, but it's up to the OXPers to decide if they want/need the flags. It requires a bit thinking about resources and Oolites loading-order makes it harder to choose the right settings, means that two OXPs which are doing the same thing (e.g. spawning stations) will need different settings and requires a fair bit of testing.
User avatar
JeffBTX
---- E L I T E ----
---- E L I T E ----
Posts: 366
Joined: Sun Dec 27, 2009 2:23 pm
Location: Abilene Texas

Post by JeffBTX »

Svengali;

Thanks. I was tired when I posted that; I am now awake, and I've had my first cup of coffee.
:D

For these noobish eyes, it was good to see your reply. It confirms what my inexperienced brain was thinking.

What I've done is to put together my *own* OXP just *for my own personal use* (I.E. no rip-offs here); JBAMB_V1_0_D.oxp (any OXP that I put together will have my initials "JB"; "AMB" = ambience; any OXP that I modify, I archive on my system with an "_M", any that are derived in part or in whole from 1 or more other OXPs has "_D").

It has a simple planetinfo.plist that increases the number of nebula and stars, just a little, but enough to notice.

It is using some of the custom sounds from BGS, from PAGroove-BGS, and 1 custom sound of my own. Eventually it will have 1 generic, looped background sound for a "when docked" condition. This uses a custom customsounds.plist (redundant redundantly?)

All I have left to do is to implement (definitely) 3 of the scripted sounds, plus (maybe) 2 more... 3 to 5 of the scripted sounds; derived from the BGS script.

Without the embedded OXPConfig specific code, without anything that will store things in my savegame, etc.

More coffee, and then I will stare at JS for a while.
Sword, thy name is Cobra. And Cobra has fangs!
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

JeffBTX wrote:
For these noobish eyes, it was good to see your reply. It confirms what my inexperienced brain was thinking.
He, yes. But the other side is that OXPConfig is pretty fast, compared to the amount of work it has to do. I'm currently running it with 103 worldScripts, 18 of them with declaration (mixture between included in database and test-OXPs, 3 of them with 6-level deep dependency chains (not included in database). The measured times are not exact values (quantised in heeps of 15...16 ms).

logEarly - 0...15 ms - dependency chains are not called by OXPConfig here.
displayAll + logEarly - 62...160 ms. 2 of the dependency chains called by OXPConfig at the lowest level = full chain.
displayAll + logEarly, but without dependency chains - 0...16 ms.

So I'd say it's fast enough for the next time, but for dependency chains only top-level scripts should use settings for OXPConfig.
User avatar
JeffBTX
---- E L I T E ----
---- E L I T E ----
Posts: 366
Joined: Sun Dec 27, 2009 2:23 pm
Location: Abilene Texas

Post by JeffBTX »

Sheesh...

As of right now, I am only running 7 OXPs, and I am basically satisfied. I need to modify 3 of the ones that I am running ((1) finishing touches on an ambience package, which is driving me crazy (2) adding emission maps to DeepSpace Ships; he appears to be on hiatus since october; I think I am up to it, but I need to make the time (3) Finishing touch on my HUD).

I intend to run modified versions of 1 (Your Ad Here) or possibly 2 more (Random Hits... probably NEVER... more like I will re-implement the general idea from scratch) in the near (he! define "NEAR"!) future, when I get around to making those modifications.

And I want to run a retextured-planet OXP when more work has been done on them (I do not consider myself experienced or "good enough" to reliably accomplish what I want... simply making the F7 System Info screen always match the retextured main planet) (I gather that there has been a development in "trunk" since 1.74.2 that will make this easier for OXP'ers).
Sword, thy name is Cobra. And Cobra has fangs!
Post Reply