For information about unlocking CAW to have effects available in the Metadata list, see this tutorial. This tutorial describes how to splice a layer into an existing CAW project; if you wish to splice a clean global layer into an existing CAW project you should use this tutorial.

I figured out how to do this when I was trying to get the Lighthouse beam and lens flare to work in my custom world. I couldn't find the lighthouse effect in any of the game files (so that I could mod it to show up in catalog), and the lot-based fog emitter is not easily placed atop the Janie Point lighthouse object.

I noticed that Sunset Valley had an object called 'lighthousefx' and that it did indeed produce the beam and flare effect. So I wondered, how could I get this object from Sunset Valley into my own world?

The answer is to splice a layer from Sunset into the files of your custom world.

Apart from obtaining effects- such as the Bridgeport fountains and pigeons, Twinbrook science lab smoke, WA vacation hot air balloons- I can't think of any other reasons why this would be useful but still- if you follow this you'll know a bit more about how the layers work, so it may come in handy!

Kiwimaus has kindly translated this into German, and it is a very good and comprehensive tutorial with many step-by-step images. Even if you don't speak German, it is worth using Google Translate to view it in your language! You can see the translated tutorial here.A big thank you to Kiwimaus for that!

In S3PE you need to go to Settings> External Programs and point S3PE to your Hex Editor Program.

Instructions:
1: backup your files! You need to make a safe copy of everything you are going to be working with so that you can go back, in case anything explodes!

2: Open up the source world (which has your required object) in Create-A-World. You may need to read this thread to help you to do this:http://www.modthesims.info/showthread.php?t=416989
I'm opening Sunset Valley, because I want the Lighthousefx object for my Lighthouse.

3: In this world, create a new layer. I've called mine Lighthousefx.
Now you need to find all of the objects you want to export, and move (drag) them to the layer you just created. You can use as many objects as you like.

4: Save that world so that the layer you created is saved.

5: Open the destination world (that you want to import the layer to) in Create-A-World. Create a new layer- I've called mine Test.

Open the folder for your Source World and then open the Layers folder. Each file in there represents a layer in CAW, so you should be able to see a file representing the layer you created in there.
For me, the layer was called lighthousefx_3678003acdd83370.layer and it was in folder Documents\ Electronic Arts\ The Sims 3 Create A World Tool\ UserToolData\ Worlds\ Pleasant_Valley\ Layers:
What you need to do is to write down that hex number that follows the name of the layer- so in my case this is 3678003acdd83370.
Do the same for your destination world- open the layers folder and write down the hex number. In my case the layer was called Test_3678003acdf91f50.layer.

8: Now you need to open up the world file for your destination world in S3Pe. This will be in the folder you were just looking at- Documents\ Electronic Arts\ The Sims 3 Create A World Tool\ UserToolData\ Worlds. Find the resource called UNKN 0x90620000:
This is the Layers resource- it contains information about all of the layers which are in your world.

9: Click on the HEX button at the bottom of the S3PE screen so that this resource opens in your chosen Hex editor. Take a look at the figures there- do any look familiar? You can see in this image that my layer, Test, is identified there as 3678003acdf91f50 (I highlighted it in red):
The numbers are in a different order to how we are used to reading them, as S3PE is displaying it in big endian. So 3678003acdf91f50 looks like 50 1f f9 cd 3a 00 78 36.

10: You need to change this number to the number of your layer in the source world. So, I am changing (Test) 3678003acdf91f50 to (lighthousefx) 3678003acdd83370. In the hex editor I am using I need to set it to overwrite:
And then I can type over my original layer number, remembering to get the numbers in the right order! So 50 1f f9 cd 3a 00 78 36 becomes 70 33 d8 cd 3a 00 78 36.

11: Click file> save in your hex editor, and then close that program. S3PE will now ask you if you wish to commit those changes- click Yes.
You will now see that your old version of the resource UNKN 0x90620000 is struck out, and the new version is beneath it.
Do file>save in S3PE to save this world.

What that has just done is to make the destination world file accept the Lighthousefx layer from my source world (Sunset Valley).

12: Now we need to actually add the layer file from the source world to your destination world. Go to your source world Layers folder, as you did in step 7, and copy the layer you made. For me this was lighthousefx_3678003acdd83370.layer.

Paste that into your destination world Layers folder- for me that was Documents\ Electronic Arts\ The Sims 3 Create A World Tool\ UserToolData\ Worlds\ NewWorld\ Layers.

You can now delete the blank layer you made in that world as we don't need it any more. So I am deleting Test_3678003acdf91f50.layer.
Splice complete! I have done the CAW equivalent of a limb transplant!

13: Now open up your destination world in Create-A-World and see the new layer there with all of the objects you added to it.
All you need to do now is to locate the items and move them to where you want them to be. To easily locate them you can right click> Find in render panel.
I'm now going to move my Lighthousefx object to the lighthouse:
That's better!

Here are some pigeons and the fountain jets from Bridgeport in my custom world:

More Images:

Lighthouse flare (Sunset Valley)

Walking pigeons and fountain jets (Bridgeport)

Pigeons (Bridgeport)

Birds flying from a tree/ bush/ whatever you can imagine! (Bridgeport)

Hot air balloon (vacation worlds)

Pigeons flying from city hall- city hall is on a lot, the pigeons are not. (Bridgeport)

Fireflies (China)

Pigeon (Bridgeport)

Factory smoke effect- again, the building is on a lot but the effects are not. (Twinbrook)

Animated Windmill (Riverview)- the Derrick (wooden frame) is separate, if you have pets there is one available in Metadata called 'Headless Windmill'. If you don't have Pets you could use the one from Riverview- you need to have that in game as CC (as it is ripped from Riverview, and you cannot normally have it unless you are actually playing Riverview since it is embedded in the .World file!). You can get the Riverview Derrick from this post.

All of the above are fully animated, they work just as they do in the EA worlds when imported into a custom world.
There are many other effects to discover, please post images when you find them!

World size: I've tested this on worlds of differing sizes and it seems to work okay. For example, I can import the lighthousefx from Sunset (large) to a small custom world. The object ends up in the middle of the ocean, but once you drag it back into the grid area there seem to be no problems with exporting the world and playing it in game. Let me know if you find any problems though as I haven't tested all size combinations!

This is experimental- please keep safe backups of your files, and let me know if you find any problems with this method.

I was able to get it to work in a tiny test world, what's cool is that is that is stayed in phase in any direction unlike the fog emitter.

I had big issues with saves I found I was able to load sunset valley and place a new layer and move lighthousefx to it but when I did "save" or "save as" using same name it would fail. If I "save as" under a different name it would save with the new layer with the fx and then was able to graph it to the new world.

ETA Developing worlds worlds are not a problem regarding the save issues unlike imported worlds. Just graphed the the lighthouse beam with not a problem into a new world I'm developing. While I added to an existing world Simsville and had the same save issues as before.

ETA: Imported the Antique train (ep1train_87) from France! It's affect has a limited distance so need the tunnels.

I had big issues with saves I found I was able to load sunset valley and place a new layer and move lighthousefx to it but when I did "save" or "save as" using same name it would fail. If I "save as" under a different name it would save with the new layer with the fx and then was able to graph it to the new world.

I think what you're describing here is a common issue when opening packed worlds; save as seems the only way to do it.

OMG YAY I now have four trains and eight firefly spawners in my world!
You did a brilliant job figuring this out and turning it into a very understandable tutorial. There sure is a lot of details to convey, and I first looked at this thinking I'll never pull this off but it's so much easier after the first try. Now I'll just need to keep myself from adding more and more fireflies...

----------------------------------------------------------

EDIT: Okay I spoke too soon. I tried adding new layers of the same layer (fireflies and trains) but each time the previous one was just emptied and the objects were on the newest layer. I seem to be missing some vital step here...?

Arisuka, if you are attempting to import the same item several times (for example, the train from France) then you have to change the object ID numbers, otherwise CAW will not recognise them as different items.

**Deleted, because simsample wasn't making a lot of sense. See my other post below for a less silly reply**

Okay! When I open the layer in S3PE there are four sections of numbers. I should click any of them and go to "details..." which shows resource details. Then in the "Type" box I choose WPID and OBJN and give them a new instance? I tried this, and changed the first four digits to randomly chosen numbers and gave this new ID to the WPID and OBJN. That didn't work, because the whole layer disappeared in CAW... I then changed the digits like you mentioned, to match the global layer. The whole layer didn't appear this time either.
I think I'm changing something that shouldn't be changed. Should the WPID and OBJD both appear as two of the four sections when the layer is first opened? I only have WPID visible, but I can find both these in every of the four sections by going to "details" and finding them under "type" box.

Okay, scratch what I said before- it sounded really nonsensical! What I was trying to explain was how to save the object name (which isn't really necessary) and how to match your object ID to your world layer IDs (which isn't necessary either, and overcomplicates it). Also, I meant WDET not WPID. Perhaps I was drunk? So I'll try again! backup your CAW world files.

Open your export world (the world that originally contained the objects) in CAW, look at your export object in your world layers panel and click on Property Browser. The Object ID is at the top of that box. Record that, then convert it to hex (you need a decimal>Hex converter for that).

Next, close CAW and go to your import layer in the world file folder of your import world. For example, Documents\ Electronic Arts\ The Sims 3 Create A World Tool\ UserToolData\ Worlds\ Worldname\ Layers\ Layername_3678003fa5aa6020.layer- and open that in S3PE.

You need to find the hex number that you just converted in the OBJN- but remember the endianness, it is big endian so F5 90 00 31 will show as 31 00 90 F5.

When you have found that, change the last two bits of that number so that the object ID of that particular object is different from the one you already imported. So, I changed the object ID of Fireflies_32 (Twinbrook) from F5 90 00 31 45 EC 43 90 to F5 90 00 31 45 EC 44 91. Again, I don't think that the number here is that important- only that it is unique. Click save, close S3Pe.

Now when you open your import world in CAW, you will see that your imported object has lost its name, but is registered as a separate object. Just click on it in the World layers list and give it a new name, Fireflies_01 for example, and now you can identify what it is in game easily.

Hopefully this will make a little more sense, I really try to make things too complex at times!

Would this be the right kind of converter I'd need to use? I used it, but I can't find the right string of numbers in hex editor. :/ I opened the right layer and OBJN in hex editor, but I can't find the string in there (I used the search tool to make sure). I re-did the steps from the start three times to make sure it wasn't something I might have missed accidentally.
I converted the ID 17 69 46 43 14 75 65 18 79 84 to 11 45 2E 2B E 4B 41 12 4F 54.

Weird, I still can't find the right string of numbers in the OBJN even though I got the same string of numbers as you... I checked that the objects were on the right layer in CAW, and they are there and I opened the right layer. Although, I did find a big piece of the string in hex editor, but with two of the first pair of digits missing.

Try that one, I noticed that sometimes the last (or first, depending on which way you look at it) pair of digits are different, possibly due to the length of the decimal number involved (I noticed that the hex editor I use will truncate the hex number when handling huge numbers). As long as you backup first, you'll be okay.

Okay, scratch what I said before- it sounded really nonsensical! What I was trying to explain was how to save the object name (which isn't really necessary) and how to match your object ID to your world layer IDs (which isn't necessary either, and overcomplicates it). Also, I meant WDET not WPID. Perhaps I was drunk? So I'll try again! backup your CAW world files.

Open your export world (the world that originally contained the objects) in CAW, look at your export object in your world layers panel and click on Property Browser. The Object ID is at the top of that box. Record that, then convert it to hex (you need a decimal>Hex converter for that).

Next, close CAW and go to your import layer in the world file folder of your import world. For example, Documents\ Electronic Arts\ The Sims 3 Create A World Tool\ UserToolData\ Worlds\ Worldname\ Layers\ Layername_3678003fa5aa6020.layer- and open that in S3PE.

You need to find the hex number that you just converted in the OBJN- but remember the endianness, it is big endian so F5 90 00 31 will show as 31 00 90 F5.

When you have found that, change the last two bits of that number so that the object ID of that particular object is different from the one you already imported. So, I changed the object ID of Fireflies_32 (Twinbrook) from F5 90 00 31 45 EC 43 90 to F5 90 00 31 45 EC 44 91. Again, I don't think that the number here is that important- only that it is unique. Click save, close S3Pe.

Now when you open your import world in CAW, you will see that your imported object has lost its name, but is registered as a separate object. Just click on it in the World layers list and give it a new name, Fireflies_01 for example, and now you can identify what it is in game easily.

Hopefully this will make a little more sense, I really try to make things too complex at times!