Showing posts with label tutorial. Show all posts
Showing posts with label tutorial. Show all posts

Saturday, December 6, 2014

Tutorial: Shifting Appearance Genes

A while back I considered making my own set of genetics tutorials covering things that more newbie-friendly tutorials wouldn't touch on. Since my blog has been really inactive lately, I've decided to actually make just such a tutorial.

Before I begin, I should note that I'm assuming people reading this have some idea of how to make basic genetic edits. For those who have no idea how to do that but want to learn, then I suggest giving this resource at Creatures Caves a look (everything under the "Genetics" header should be of use, but feel free to look at everything if your dream is to make a full breed).

Now, onto the meat of the tutorial. This one covers a subject that many people who have just started out, myself included when I was just a newbie, have tried but found didn't work: making a creature whose appearance changes as it ages.

As anyone who has tried in the past probably knows, it's not quite as simple as making multiple appearance genes, setting them to different lifestages, and then calling it a day. If you hatch such a creature, whatever appearance it had at birth will be how it looks for its entire life, pigment and pigment bleed genes notwithstanding.

However, it is possible to make creatures whose appearance changes depending on their lifestage. Just take a look at Mummy's Chameleon Norns or West Wind's Gremlins. But if simply adding appearance genes for future lifestages doesn't work, then how did they do it?

As it turns out, you just don't just need appearance genes for each lifestage. You'll also need to create multiples of another gene type to get it to work: the genus gene, or in other words the gene that determines the species of a creature and is needed for a genome to work at all. The grand majority of creatures only have one genus gene, and for good reason: they don't need more than one. In fact, if you try to create more than one in the Genetics Kit it tells you this:

So how do you create more than one, if you can't do it in the Genetics Kit? Simple. You use a different genetics editor. I don't have much experience with third-party genetics editors, but I do use a few of them. And one of them is especially relevant for this tutorial: GeneLab.

GeneLab unfortunately lacks a "new gene" option, but it does have something else: a copy-paste option, something I'd absolutely love to have in the official Genetics Kit. It is this option that you'll need to create the multiple genus genes that are required for appearance-changing creatures. 

And here's how you do that: 
  1. Open up GeneLab, wherever you have it placed. I have mine in my Program Files folder, though it might be different for you. 
  2. Open up the genetics file you wish to edit. I'm just using my base ChiChi Norn genome for this.
  3. You'll be greeted with this:
  4. Right click on the "Genus" gene up at the top and select "Copy."
  5. Select the gene immediately below it and select "Paste."
  6. The gene you copied will appear above the gene you selected in the previous step.
  7. Creating multiple genus genes is as simple as that! If you want your creature to change appearance just once, then you're done here. However, if you want your creature to change appearances at multiple lifestages, you'll need a genus gene for each lifestage (e.g. if you want your creature to change appearance at adolescence, adulthood, and old, you'll need three extra genus genes, one for each lifestage) and therefore you'll need to repeat the above steps. 
  8. The next step is to edit each of those extra genus genes so that they switch on at the desired lifestages. If you wish you can save your edits here and switch back to your preferred genetics editor for the following steps (I'll be switching back to the Genetics Kit, for instance), although you can just as easily keep on editing in GeneLab if you think it suits you. Do be careful not to overwrite your previous genome if it's not the one you want to add the extra genus genes to; GeneLab has a normal "Save" option in addition to the "Save As" option. 
  9. If you switched to a different editor, open up your extra genus gene. If you're still using GeneLab, then you should have another window that has the Header information in it. Change the Lifestage from "Embryo/Birth" to your desired age (I'll be switching it to "Youth" here).

The information below the header (in GeneLab there's a separate window labeled "Gene Details" can be edited; if you so wish you can change the species. However, unfortunately it is impossible for a creature to change species over the course of its life; whatever species the Birth genus gene specifies will be that creature's species for its entire life. Also, make sure that at least one genus gene turns on at "Birth/Embryo," nasty things happen if a creature is born without a genus.
10. Now all you have to do is create the extra appearance genes for each lifestage you have a genus gene set to. You can change the breed to whatever you want so long as you know the other breed's breed slot - I'll be turning my ChiChi Norn into a Bengal Norn for the purposes of this tutorial.
You can create just one extra appearance gene if you just want the head to change or something, though for this tutorial I'll be making an entire set of them so the creature's appearance changes completely upon becoming a youth. 
11. If using the genetics kit, move each appearance gene so it's with the other appearance genes of its type (for example, make sure the head genes are grouped together). For GeneLab you'll need to copy-paste the appearance genes due to the lack of a "New Gene" option, and you can do that in the same way you did the genus genes earlier. Making sure the appearance genes are grouped together is optional as the breed will still change appearance regardless of where the extra genes are; doing so just makes sure crossbreeds with normal creatures a little more interesting. 
12. And you're done! You can now export your creature into the game and watch it change breeds when it hits different lifestages. For the Genetics Kit you can just use the "Export" option; for GeneLab and other genetics editors you'll need to save your genome and get it into the game some other way (for example, by using DevThing or JayD's Egg Maker).
13. If you did everything right, your creature should change into a different breed upon hitting the lifestages you set the extra genus genes for.

It's a fun little feature to add to a breed; you can have norns that transform into grendels or ettins once they get old enough, or creatures that change breed every lifestage, or creatures that slowly transform into another breed as they age. Plus it shows a little bit about how the game works (namely, that appearance genes and the genus gene are related somehow), which is always interesting. 

A few things to note about this, however: If you have a creature switch between two breeds with wildly different body data, for instance if you have a norn who turns into a grendel, the body data from the initial appearance takes precedence and makes the second appearance look a little strange. Between this, the fact that extra genus genes are required at all for this to work, and the fact that the official Genetics Kit won't let one create the extra genus genes, I'm fairly certain this is a bug and something that was never intended. 

That about does it for this tutorial. I'll probably be posting more in the future as I think of them, so keep your eyes open. Until the next one, folks.

Monday, April 29, 2013

Screwing around with Starter Families

Most players of C3/DS are aware of the Welcome Screen that greets you whenever you create a new world. One of the options on this screen gives you two adult, pre-trained norns to start off with. This was fine and dandy back in the day, but now with all the improved genetics running around, the default genomes the starters use is really outdated.

So I decided to look into the possibility that the starters could be messed with. This sounds simple, but the starter families use a unique file type (.family), which I wasn't certain could be edited. However, changing these files around is not difficult at all - the way the .family files are composed is almost identical to the way normal .creature files are composed.

A little background info first: Compiling a .creature file uses PRAY, just like .agent files do. However, the way the file's set up looks quite a bit different from an .agent file:

"en-GB"

inline GLST "001-mist-jru57-bwdgq-xp8h2-65prp.glist.creature" "001-mist-jru57-bwdgq-xp8h2-65prp.glist.creature"

inline CREA "001-mist-jru57-bwdgq-xp8h2-65prp.creature" "001-mist-jru57-bwdgq-xp8h2-65prp.creature"

inline GENE "001-mist-jru57-bwdgq-xp8h2-65prp.genetics" "001-mist-jru57-bwdgq-xp8h2-65prp.genetics"

inline PHOT "001-mist-jru57-bwdgq-xp8h2-65prp-2.photo" "001-mist-jru57-bwdgq-xp8h2-65prp-2.photo"

group EXPC "001-mist-jru57-bwdgq-xp8h2-65prp"
  "Creature Age In Ticks" 552
  "Creature Life Stage" 4
  "Exported At Real Time" 1367289044
  "Exported At World Time" 8007
  "Gender" 2
  "Genus" 2
  "Pregnancy Status" 0
  "Variant" 4
  "Creature Name" ""
  "Exported From World Name" "Engineering"
  "Exported From World UID" "ship-6v34z-wncpq-65jll-srkjr"
  "Head Gallery" "A40a"

I'm not quite sure what GLST and CREA are supposed to do - I'm guessing the former has something to do with life events, but the latter just seems recursive (considering the finished file is a .creature file). GENE and PHOT are the creature's genetics and photographs, respectively. This particular PRAY file came from a C3 standalone creature, so there's probably some additional information in the PRAY files for a DS creature.

What exactly all this means isn't important at the moment, however - what's important is how this relates to .family files. As it turns out, .family files also use PRAY and are compiled almost identically to .creature files:

 "en-GB"

inline GLST "001-time-6rja3-nmfrr-hsfgz-ubtj2.glist.creature" "001-time-6rja3-nmfrr-hsfgz-ubtj2.glist.creature"

inline CREA "001-time-6rja3-nmfrr-hsfgz-ubtj2.creature" "001-time-6rja3-nmfrr-hsfgz-ubtj2.creature"

inline GENE "001-time-6rja3-nmfrr-hsfgz-ubtj2.genetics" "001-time-6rja3-nmfrr-hsfgz-ubtj2.genetics"

inline PHOT "001-time-6rja3-nmfrr-hsfgz-ubtj2-4.photo" "001-time-6rja3-nmfrr-hsfgz-ubtj2-4.photo"

group SFAM "001-time-6rja3-nmfrr-hsfgz-ubtj2"
  "Creature Age In Ticks" 856
  "Creature Life Stage" 4
  "Exported At Real Time" 965732356
  "Exported At World Time" 1357
  "Gender" 1
  "Genus" 1
  "Pregnancy Status" 0
  "Variant" 3
  "Creature Name" ""
  "Exported From World Name" "Training ground"
  "Exported From World UID" "ship-hd4jj-kfwpp-7ts2c-3qxay"
  "Head Gallery" "A00a"

Literally the only difference between .family files and .creature files is the fact that the PRAY group for .family files is SFAM rather than EXPC. Which means that if you take the PRAY file of a normal .creature file, change EXPC to SFAM, and recompile the file, you get a file that the game can use as a starter parent.

And here's how you do that:
1. Export a creature of your choosing.
2. Decompile the .creature file into its component parts somehow (REVELATION works extremely well, and I believe the PRAY Decompiler at TCR can also break it down. Jagent can't handle .creature files as well as it can .agents files, unfortunately, so I wouldn't recommend using it in this case).
3. Find the .ps file and open it up (if you're using Windows, Notepad can open it and edit it without issues)
4. Find the line that begins "group EXPC..." Change EXPC to SFAM.
5. Now grab all the parts that decompiling the .creature file gave you (.creature, .glist.creature, .genetics, and .photo) in addition to to your altered .ps file and recompile it (I used PRAYBuilder for this - considering Monk's difficulty decompiling .creature files, I'm not sure if it'll work for compiling them).
6. You'll get a .agents file. Change the extension to .family (ignore any warnings your OS might give you about doing this).
7. That's it! You can now put the .family file into your "My Agents" folder (though I recommend replacing one of the default .family files - I haven't gotten around to testing what happens if you just drop it in there). When you create a new world, select the Starter Parent option and one of the creatures that gets dropped in should be the one you exported earlier.

More testing remains to be done concerning this subject (particularly if the choice of starter parent can be randomized), but the fact that it can be changed at all can make the early game a little more interesting. Let me know what you come up with!

Edit: So I just decompiled a .ds.creature file, and turns out PRAY files for those look a bit different:

 "en-GB"

inline GLST "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.glist.creature" "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.glist.creature"

inline CREA "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.creature" "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.creature"

inline GENE "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.genetics" "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX.genetics"

inline PHOT "001-star-tnhhf-mp5aj-nq88u-suksv-2.DSEX.photo" "001-star-tnhhf-mp5aj-nq88u-suksv-2.DSEX.photo"

inline PHOT "001-star-tnhhf-mp5aj-nq88u-suksv-7.DSEX.photo" "001-star-tnhhf-mp5aj-nq88u-suksv-7.DSEX.photo"

group DSEX "001-star-tnhhf-mp5aj-nq88u-suksv.DSEX"
  "Creature Age In Ticks" 712
  "Creature Life Stage" 4
  "Exported At Real Time" 1367291960
  "Exported At World Time" 450487
  "Gender" 2
  "Genus" 1
  "Pray Extra Tint_Blue" 128
  "Pray Extra Tint_Green" 128
  "Pray Extra Tint_Red" 132
  "Pray Extra Tint_Rota" 128
  "Pray Extra Tint_Swap" 128
  "Pregnancy Status" 0
  "Variant" 4
  "Creature Name" ""
  "Exported From World Name" "Crystal Cave"
  "Exported From World UID" "dock-y8fwb-r7knm-65q4j-dja5a"
  "Head Gallery" "a40w"
  "Last Network User" ""
  "Native Network User" ""
  "Pray Extra Birthday" "29 Apr 2013 23:18"
  "Pray Extra Moniker" "001-star-tnhhf-mp5aj-nq88u-suksv"
  "Pray Extra Pregnant" ""

And here's what DS .family files look like:

"en-GB"

inline GLST "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.glist.creature" "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.glist.creature"

inline CREA "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.creature" "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.creature"

inline GENE "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.genetics" "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM.genetics"

inline PHOT "001-aqua-hgru4-5fevv-aaz32-7npj8-3.DFAM.photo" "001-aqua-hgru4-5fevv-aaz32-7npj8-3.DFAM.photo"

group DFAM "001-aqua-hgru4-5fevv-aaz32-7npj8.DFAM"
  "Creature Age In Ticks" 1196
  "Creature Life Stage" 4
  "Exported At Real Time" 995030875
  "Exported At World Time" 1698
  "Gender" 1
  "Genus" 1
  "Pregnancy Status" 0
  "Variant" 7
  "Creature Name" ""
  "Exported From World Name" "Space camp"
  "Exported From World UID" "dock-rszby-82syq-c4an3-xpapx"
  "Head Gallery" "a00d"
  "Last Network User" ""
  "Native Network User" ""

Now that's a more significant difference than the C3 versions. I haven't tried making a DS .family file yet, but it's lesser priority for me since DS gives you the option to just go into the game, but I'm going to give it a shot eventually. If you want to give it a shot yourself, let me know what comes of it!

Friday, March 23, 2012

Tutorial: Extracting Plants and Animals from a Metaroom

In my last post, I mentioned that I had placed the whales from Aquatilis Caverna into the western C1toDS ocean. Now, if you look at my favorite places, you'll notice that Aquatilis Caverna wasn't injected, so I couldn't have simply picked up the whales and plopped them in here. So, how did I do it? Let me show you how, and how you can use this exact process to rip any plant or animal from a metaroom of your choice and place it somewhere else (and possibly add it to Amai's Garden Box later).

A few things to note before we begin: This is for Windows users only. I've never used a Mac/Linux computer, and as such know nothing about them. If you use one of those OS's, you MIGHT be able to follow this, but you'll probably need different directions for things such as navigating to your Creatures 3/Docking Station directory. As well, I'm not sure if the required programs for this tutorial even work on a Mac/Linux.

While I'll try to explain everything in as much detail as possible so that even those without any CAOs knowledge can follow this tutorial, reading AquaShee's CAOs Chaos and Moe's Beginner Tutorial before attempting to follow this tutorial will really help you understand what you're doing here.

You'll also need the following things:
1. The CAOS Tool from Gameware Development (WARNING: Direct Download Link).
2. The SpriteBuilder from Gameware Development. (WARNING: Direct Download Link).
3. Mirality System's REVELATION.
4. If you're using Creatures Exodus, you'll probably need the Remastered Patch to use the CAOS Tool.

And here's how to install them:

1. The CAOS Tool Installer is an .exe file. After it's done downloading, double-click it to install. When prompted, put down "Gameware" for the name and  "350-4742K-1234U-WK" for the registration number (code? It's been a while since I've installed the CAOS Tool).
2. The SpriteBuilder is also an .exe file, but unlike the CAOS Tool it's standalone. Just extract it somewhere and run it.
3. REVELATION is a DOS/Console program. Like the SpriteBuilder, you can just extract it anywhere you want (although I STRONGLY suggest you put it in a folder - using it makes a lot of files that will cause issues if you put it on the Desktop). However, you need to do something special in order to use it correctly, which will be covered later in this guide.

 Be sure to know the path to wherever you put REVELATION - you'll need to know that later. The path will probably look something like the highlighted bit in the picture.

Alright, enough expository banter. Let's get down to the meat, shall we?

For this tutorial, I'll be extracting the Water Weedgrass from Aquatilis Caverna 2, but you'll probably be extracting a different plant/animal from a different metaroom. Your choice won't affect the tutorial at all, however. 


The Process
1. Navigate to your C3/DS "My Agents" folder. If you're running a "normal" C3/DS installation (i.e. the free DS Download or from Creatures Trilogy), then your path should look something like mine (highlighted bit):
If you're using Creatures Exodus (GOG version or otherwise), then it probably has a different path you'll need to navigate to. In the GOG version of Exodus, it's probably under "GOG/Creatures Exodus/*Game*/My Agents." I'm not certain about non-GOG installations of Exodus, but I imagine it's under "Gameware Development/Creatures Exodus/*See GOG version*." If someone can confirm the correct paths, I'll update this.

2. Find the agent file for the metaroom you wish to extract a plant/animal from. Usually, the agent file is named after the metaroom, but sometimes it's named oddly (for example, Aquanornia's agent file is simply called "AgentC3" or "AgentDS." Really descriptive, isn't it?). In that case, you might want to use Notepad to open up all the oddly named agents. Once the file's done loading, it'll say what the agent contains at the top. Either way, once you've found your metaroom, copy its agent file (right-click on it, then select "Copy").

3. Navigate to wherever you put REVELATION, and paste the agent file into that folder (right click on the folder and not on REVELATION itself and select "Paste").
 For the record, your folder probably won't be filled up with .cos files unless you use REVELATION a lot like I do. The important parts of this picture are REVELATION itself and the agent file.

4. Now, to run REVELATION. If you tried to double click on REVELATION itself, you'll find that it simply brought up a window for a split second and disappeared again. The same thing happens if you attempt to drop your agent file onto REVELATION. Neither will get you very far. To run REVELATION properly, you'll need to do this:
4a. On your main Windows menu, navigate to "Accessories" and click "Command Prompt." Alternatively, you can use the Run function and type "cmd" into the dialog to run the Command Prompt if it's not on your main menu. Just ignore the fact that the wrong thing's highlighted in this picture - the thing you want is right above it.
4b. The default path for the command prompt is "X:/Users/*Your name*". Since you probably didn't put REVELATION there, you'll need to navigate to the correct location. Type in "cd *your path to REVELATION*" and push Enter. This is why I told you to copy down the path to REVELATION's location earlier.
4c. Now type "revelation *yourmetaroom*.agents (or .agent - it doesn't matter which ending the file uses, it works either way). Push Enter again.
You'll get something that looks like this:
If you get an error, you might have misspelled the name of the agent file/misplaced it. Make sure the file is in the same folder as REVELATION, and check how it's spelled.

5. If the decompiling was successful, exit out of the Command Prompt (either by pushing the X button or by simply typing "exit" and pushing Enter). Go back to the folder you put REVELATION in.

6. Among all the random files you should have gotten (here's why I told you to give REVELATION its own folder), there should be a .cos file named *agent name*_*Agent Injector/Creator Name*-1. Open that .cos file with the CAOS tool.
6a. There are some agent files (such as anything CL made and the Norngardens) that simply will not produce a .cos file when decompiled with REVELATION. There is a way around this; unfortunately, I've forgotten it. If you're trying to get something out of a CL agent file then you're out of luck unless you use that alternative method, but for anything else you should still be able to get at the code by opening up the .agent file with Notepad. If you were able to install the CAOs Tool, then you can still follow the tutorial with the .agent file opened up in Notepad.

7. The CAOS Tool screen looks something like this:
 The first part of this file is simply injecting the room itself - you can ignore it. The part we're interested in is immediately after this - the part where the agents populating the room get injected.

Using the Find function (either by clicking "Find" in the Edit menu or by clicking the binoculars symbol on the toolbar), you can locate the plant/animal you want to extract. If the .cos file is commented, you may be able to get away with simply typing the name of the plant/animal into the search bar, but if not (or if the file is commented oddly), you'll have to use SpriteBuilder.
7a. Open up SpriteBuilder (wherever you might have placed it). Under the File menu, click "Open."
7b. Navigate to your "Creatures 3/Images" or "Docking Station/Images" folder.
7c. From here, we'll search for the sprite file of the critter/plant we want to extract. Most metaroom creators put the name or acronym of their metaroom before the name of the critter/plant (for example: "ac_shrimp" for the Aquatilis Caverna shrimp).

If you can't find a sprite file named in that fashion, then try looking for groups of images named in a similar fashion (Aquatopia's sprite files, for example, have underscores before and sometimes after the critter's/plant's name). If that fails...well, think of a descriptive word for whatever you're searching for and see if you find it. Provided you installed the metaroom, you will find it eventually.

8. If you searched via comments, the first thing you got taken to was probably the name of the critter/plant above a segment of code beginning with something along the lines of "new: simp." If you searched for the name of the sprite file, you probably got taken within this "new: simp" command itself. That's the installation routine of the critter/plant. Copy this entire routine (everything under the "new: simp" command up until the next space/"new simp" command - generally speaking, a single installation routine will end with either the "mvto/mvsf" command or the "repe" command).

9. Open up a new .cos file ("New" under the file menu or the single sheet of paper to the far left of the toolbar), and paste the stuff you copied into it. Check to see how many classifiers are contained within your installation script (seeds and adult plants are always classified differently, and sometimes adult and baby critters are classified differently as well). If there's more than one, then you need to get the scripts for all of them. As an additional note, the AC2 watergrass is an example of an installation routine that has a bunch of stuff other than "reps" or "new: simp" at the start of it - in this case, it'll be irrelevant soon enough, but if your installation routine looks like this one, don't count it off right off the bat.

10. Now it's time to find the event scripts for your chosen plant/critter. You can use the comments again, but this time it's easier to simply search for the agent's classifier. This is the set of 3 numbers to the right of the sprite file's name (which is in quotations). Copy these into the "Find" function and search. What the numbers mean is largely irrelevant to this guide, so don't worry about that too much.

11.  Click the "Find Next" button several times to judge how many scripts you need to copy. Note that the event routines are always within "scrp X X X X"/"endm" blocks. Stuff after the "rscr" command will be covered shortly, and just outright ignore the classifier if it shows up anywhere else.

12. Now, copy all the event scripts ("script X X X X"/"endm" blocks) that contain your chosen plant/critter's classifier into your new .cos file that was created in step 9. Make sure that you don't copy scripts from the agents immediately preceding/proceeding your chosen agent unless their classifiers also showed up in your installation script. Make sure you get ALL of the event scripts - if you miss one, you'll run into an error when it comes time to get your extracted agent into the game.

13. Now for the stuff after the "rscr" command. The "rscr" command is the remove script - that is, it gets rid of the room's agents and their scripts. Now, not all rooms have these (in fact, the room I'm using doesn't), so if it's not there you can skip this step. Otherwise, copy the commands that contain the classifier(s) in your installation script (they always look like "enum X X X/kill targ/next" or "scrx X X X X") into your .cos file. When you're sure you have copied everything, you can close the room's .cos file (but leave yours!). We won't be needing it for the rest of this tutorial.

14. Now, fire up your game. Before you go any further, make sure the game mentioned on the bar at the very top of the CAOs Tool window matches the game that you've chosen to run (it should read "Docking Station" if you're running Docking Station, for example). If they don't match, you won't be able to inject your extracted plant/critter into your game. Go to the spot where you want to place your extracted plant/critter (I'll be using the Norn Meso, which I've flooded).

15. Push "Shift+Ctrl+X" to bring up a pair of numbers next to the hand. These are the coordinates of the hand within the world - the top refers to the X-axis and the bottom refers to the Y-axis. Move the hand to the leftmost position of the area where you want to inject your plant/critter.
16. Copy down those coordinates - you can pause the game with the "Pause/Break" key on your keyboard to freeze the coordinates, or you can simply write them down on an external sheet of paper. Go back to your .cos file.

17. In your installation script, find the command labeled "mvto" or "mvsf." Replace the coordinates immediately after that command with the ones you just copied down. Don't worry if your script says something like "mvsf va00 va01" instead of "mvsf 34021 758" - treat the "vaXX's" like they were actual numbers.
18. In theory, you could inject the script now. However, there's a high probability that you'll get weirdness (such as multiple plants growing in the exact same spot) if you leave the "mvto/mvsf" command like this, so let's randomize the location a little. Go to the rightmost spot of your area and copy down the X-coordinate (not the Y coordinate - you got that in the previous steps) of that spot. 

19. Immediately after the "mvto/mvsf" command, type in the command "rand" and put a space between it and whatever your X-coordinate is. Immediately after your X coordinate, type in the X-coordinate you just copied down. Now, the script will randomly choose a location in between the two coordinates you typed in and put a plant/critter there.
  

20. Now it's time to inject your newly created .cos file into the game. In the CAOs tool window, push the button to the far right that has three lines on it.
 21. If you get no errors, then congratulations! You have successfully turned a critter/plant that was originally packaged with a metaroom into a standalone plant/critter! You can save this .cos file if you want to use it more than once; however, do NOT put it in your "Creatures 3/Bootstrap" or "Docking Station/Bootstrap" folder, especially if you injected your plant/critter into a third-party metaroom. Save it to somewhere else (I personally put mine in my EasyPRAY "Projects" folder).
21a. However, if you did get an error, check to see what it said. If it tells you something about an "invalid map position," you need to find different coordinates to inject your plant/critter into - the ones you chose originally couldn't fit the agent!
21b. If you get "tried to set bhvr X, but couldn't find one of the appropriate scripts," then you probably missed a script somewhere. Go back to the room's .cos file, find your plant's/critter's event scripts, and compare them to the ones you copied down.
21c. Finally, you might get a syntax error - if this happens, the affected parts of the .cos file in the CAOs Tool will be red instead of blue. If this happens, something got formatted wrong - make sure each bit of code is on its own line, and make sure that all "scrp X X X X" blocks end with an "endm."

Man, that was a long tutorial. Feel free to tell me if something doesn't make sense or needs elaborating.