Oni Central Forum

A forum for the Oni community

You are not logged in.

#1 09/12/08 18:09

VitalFlame
Member
Registered: 09/01/08

Characters

How do I Put Muro into another level to fight? But Just muro No one else.

Thanks,
-Vital

Offline

#2 09/12/08 20:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

We should have a tutorial for this on the wiki.  I don't see that we do, but I could be wrong.  Certainly this comes up often enough that it should be documented permanently.

Sorry, I can't answer your question, VF, but I know you can find the answer if you search the forum for this topic.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#3 09/12/08 21:09

EdT
Moderator
From: Los Angeles, CA
Registered: 01/13/07
Website

Re: Characters

Note these instructions are for Mac users.

Get the AE Tools Beta:
http://oni.bungie.org/community/forum/v … php?id=674

Put the app AETools and the folder AETools_Data, in your Oni folder.

Start AETools, click on the Export Tab, select the checkbox "Export as .xml file", then click on the button "Export .oni file".  Browse to the level19_Final folder and select the file BINACJBOCharacter.oni.

You will see in the Message Center box: "The file can be found at Oni/AETools_Data/XMLfiles" Go to that folder in the Finder and first rename it to BINACJBOCharacterLevel19.xml, now open the file in a text editor.

Search for muro_generic, you will see something like this:

<Object Id="8733" Type="CHAR">
            <Header>
                <Flags>0</Flags>
                <Position>-112.0837 1486 -2619.775</Position>
                <Rotation>0 171.3265 0</Rotation>
            </Header>
            <OSD>
                <Flags>NotInitiallyPresent Omniscient Boss</Flags>
                <Class>muro_generic</Class>
                <Name>Muro</Name>
                <Weapon />
                <Scripts>
                    <Spawn />
                    <Die>check_death2</Die>
                    <Combat />
                    <Alarm />
                    <Hurt />
                    <Defeated />
                    <OutOfAmmo />
                    <NoPath />
                </Scripts>
                <AdditionalHealth>0</AdditionalHealth>
                <Job>
                    <Type>None</Type>
                    <PatrolPathId>0</PatrolPathId>
                </Job>
                <Behaviors>
                    <CombatId>0</CombatId>
                    <MeleeId>30</MeleeId>
                    <NeutralId>0</NeutralId>
                </Behaviors>
                <Inventory>
                    <Ammo>
                        <Use>1</Use>
                        <Drop>0</Drop>
                    </Ammo>
                    <EnergyCell>
                        <Use>1</Use>
                        <Drop>0</Drop>
                    </EnergyCell>
                    <Hypo>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Hypo>
                    <Shield>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Shield>
                    <Invisibility>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Invisibility>
                </Inventory>
                <Team>Syndicate</Team>
                <InitialAmmo>100</InitialAmmo>
                <Alert>
                    <Initial>Low</Initial>
                    <Minimal>Low</Minimal>
                    <JobStarting>Low</JobStarting>
                    <Investigating>Low</Investigating>
                </Alert>
                <AlarmGroups>0</AlarmGroups>
                <Pursuit>
                    <Strong>4</Strong>
                    <Weak>1</Weak>
                    <StrongSeen>4</StrongSeen>
                    <WeakSeen>4</WeakSeen>
                    <Lost>0</Lost>
                </Pursuit>
            </OSD>
        </Object>

You will need to copy all this info to spawn Muro in another level.

Now go back to AETools, do the same process, this time for the level you want  to add Muro. Go back to the XMLfiles folder and open BINACJBOCharacter.xml in the text editor.

Go to the end of the file, the last 2 lines are:

</ObjectCollection>
</Oni>

Paste all the info about Muro right before the line "</ObjectCollection>" and save.

Go to the levelx_Final folder where you want to add Muro and backup the file "BINACJBOCharacter.oni" somewhere safe, be sure to note which level that file belongs to.

Go to AETools and select the Import tab.  There is a drop down menu with the words "Select the level in which you want to install the .oni file" next to it. So select that level.

Click the "Import source file" button and browse to the XMLfiles folder and select the file "BINACJBOCharacter.xml".

You should see the in the Message Center "Please rebuild levelx_Final. Now use the drop down menu right above the Message Center and "Select Level to rebuild"

Once that is done, you will have to deal with BSL scripting and that's another story...

Note to Iritscen, there is a tutorial on the wiki, but its using hex editing to add more characters. http://wiki.oni2.net/AE:Adding_spawnable_characters

Last edited by EdT (09/12/08 21:09)

Offline

#4 09/12/08 23:09

Gumby
Member
From: Seattle, WA, USA
Registered: 08/30/07

Re: Characters

If you are on Windows, I can help you, if you need me to...


Iritscen: roll
Iritscen: it's amazing this program even works
Gumby: i know
Iritscen: and that statement applies to my code, not just yours

Offline

#5 09/13/08 12:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

EdT wrote:

Note to Iritscen, there is a tutorial on the wiki, but its using hex editing to add more characters. http://wiki.oni2.net/AE:Adding_spawnable_characters

Ah, I see.  Some people may even prefer to do it by hex... but for those of us who want to use this method, the XML method, maybe we can make another tutorial.  You could just copy your post pretty much verbatim to a new page like AE:Adding_spawnable_characters_by_XML (and then technically the current page should be moved to AE:Adding _spawnable_characters_by_hex).  Except make the parts in your instructions where the user uses AETools optional so we are accommodating Windows users; those parts can say something like "use OniSplit to [yada yada], or if you are on a Mac, use AETools to [yada yada] more easily by clicking [yada yada]".  If I had the time, I would do it myself, but maybe if you have a few minutes at some point, you can do that, EdT.  Otherwise I will eventually get to it, so no worries.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#6 09/13/08 13:09

Gumby
Member
From: Seattle, WA, USA
Registered: 08/30/07

Re: Characters

"Some people may even prefer to do it by hex"

Haha, yeah right. I gave instructions to someone (loveOni maybe) in another topic using XML.

Really, if it doesn't make it too big, there should be one page with two sections. Otherwise one might get lost. tongue


Iritscen: roll
Iritscen: it's amazing this program even works
Gumby: i know
Iritscen: and that statement applies to my code, not just yours

Offline

#7 09/13/08 13:09

s10k
Member
Registered: 01/14/07
Website

Re: Characters

It's amazing how oni is now customizable! We can do now very interesting scripts with this XML files..  Maybe I could finish one that I began making in level II. wink

Offline

#8 09/13/08 14:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

Gumby wrote:

Really, if it doesn't make it too big, there should be one page with two sections. Otherwise one might get lost. tongue

Yeah, you're totally right.  Scratch what I said before and we'll just make one page with subheaders dividing the two methods from each other.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#9 09/13/08 16:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

EdT wrote:

Note these instructions are for Mac users.

Get the AE Tools Beta:
http://oni.bungie.org/community/forum/v … php?id=674

Put the app AETools and the folder AETools_Data, in your Oni folder.

Start AETools, click on the Export Tab, select the checkbox "Export as .xml file", then click on the button "Export .oni file".  Browse to the level19_Final folder and select the file BINACJBOCharacter.oni.

You will see in the Message Center box: "The file can be found at Oni/AETools_Data/XMLfiles" Go to that folder in the Finder and first rename it to BINACJBOCharacterLevel19.xml, now open the file in a text editor.

I got lost after That Part.

Offline

#10 09/13/08 17:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

Were you able to find the text "muro_generic" in the XML file?  Which part was confusing, exactly?


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#11 09/13/08 17:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

No because there is so many texts. And I don't understand what to do from there.

Offline

#12 09/13/08 19:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

What you are doing is literally copying the part of level19_Final's data that adds Muro to that level, and pasting it into another level.  Each level has its own BINACBJOCharacter.oni file and you are just adding data from one of them to another.  You have to use the search function in your text editor to find "muro_generic", and that's the section that you want to copy (starting from the "Object Id" part).


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#13 09/13/08 19:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

Click the "Import source file" button and browse to the XMLfiles folder and select the file "BINACJBOCharacter.xml".

Click the "Import source file" button and browse to the XMLfiles folder and select the file "BINACJBOCharacter.xml".

when i do this part it sais in "Apple Script Error" Then "System.Xml.XmlException: Child element is not expected in this operation. file:///Applications/Oni ?/AETools_Data/XMLfiles/BINACJBOCharacter.xml Line 19, position 22.
  at System.Xml.XmlReader.ReadContentString (Boolean isText) [0x00000]
  at System.Xml.XmlReader.ReadElementContentAsString () [0x00000]
  at Oni.Xml.RawXmlImporter.Oni.Metadata.IMetaTypeVisitor.VisitString (Oni.Metadata.MetaString type) [0x00000]
  at Oni.Metadata.MetaString.Accept (IMetaTypeVisitor visitor) [0x00000]
  at Oni.Xml.RawXmlImporter.ReadFields (Oni.Metadata.Field[] fields) [0x00000]
  at Oni.Xml.RawXmlImporter.Oni.Metadata.IMetaTypeVisitor.VisitStruct (Oni.Metadata.MetaStruct type) [0x00000]
  at Oni.Metadata.MetaStruct.Accept (IMetaTypeVisitor visitor) [0x00000]
  at Oni.Xml.RawXmlImporter.ReadFields (Oni.Metadata.Field[] fields) [0x00000]
  at Oni.Xml.RawXmlImporter.Oni.Metadata.IMetaTypeVisitor.VisitStruct (Oni.Metadata.MetaStruct type) [0x00000]
  at Oni.Metadata.MetaStruct.Accept (IMetaTypeVisitor visitor) [0x00000]
  at Oni.Xml.ObjcXmlImporter.ReadCharacter () [0x00000]
  at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void ()
  at Oni.Xml.ObjcXmlImporter.ReadObject () [0x00000]
  at Oni.Xml.ObjcXmlImporter.Import () [0x00000]
  at Oni.Xml.ObjcXmlImporter.Import (System.Xml.XmlReader reader, Oni.FileWriter writer) [0x00000]
  at Oni.Xml.XmlImporter.ReadObjectCollection () [0x00000]
  at Oni.Xml.XmlImporter.Import (System.String filePath, System.String outputDirPath) [0x00000]
  at Oni.Program.CreateFromXml (System.String[] args) [0x00000]
  at Oni.Program.Main (System.String[] args) [0x00000]  (1)"

Offline

#14 09/13/08 20:09

Gumby
Member
From: Seattle, WA, USA
Registered: 08/30/07

Re: Characters

Count down 19 lines and look for an error there. It looks like you tried to add an XML tag where there shouldn't be one.


Iritscen: roll
Iritscen: it's amazing this program even works
Gumby: i know
Iritscen: and that statement applies to my code, not just yours

Offline

#15 09/13/08 20:09

Iritscen
Moderator
From: NC, USA
Registered: 10/22/07

Re: Characters

In other words, he didn't close a tag, I'm guessing.

VitalFlame, make sure that the text you copied starts with "<Object Id="8733" Type="CHAR">" and ends with the text "</Object>" that comes right before the line "<Object Id="8734" Type="CHAR">" in the first BINACJBOCharacter.oni file.


Check out the Anniversary Edition Seven at ae.oni2.net!

Offline

#16 09/13/08 20:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

on wich one? Sorry Im stupid with these things. :l

Offline

#17 09/13/08 21:09

EdT
Moderator
From: Los Angeles, CA
Registered: 01/13/07
Website

Re: Characters

VF: Why don't you post the code that you pasted into the file and include a few lines before and after, so we can see what you did.

Offline

#18 09/13/08 22:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

</Header>
            <OSD>
                <Flags>NotInitiallyPresent Omniscient</Flags>
                <Class>elite_hard_1</Class>
                <Name>GrifElite05</Name>
                <Weapon />
                <Scripts>
                    <Spawn />
                    <Die>final_round</Die>
                    <Combat />
                    <Alarm />
                    <Hurt />
                    <Defeated />
                    <OutOfAmmo />
                    <NoPath />
                </Scripts>
                <AdditionalHealth>0</AdditionalHealth>
                <Job>
                    <Type>None</Type>
                    <PatrolPathId>0</PatrolPathId>
                </Job>
                <Behaviors>
                    <CombatId>6</CombatId>
                    <MeleeId>21</MeleeId>
                    <NeutralId>0</NeutralId>
                </Behaviors>
                <Inventory>
                    <Ammo>
                        <Use>1</Use>
                        <Drop>0</Drop>
                    </Ammo>
                    <EnergyCell>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </EnergyCell>
                    <Hypo>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Hypo>
                    <Shield>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Shield>
                    <Invisibility>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Invisibility>
                </Inventory>
                <Team>Syndicate</Team>
                <InitialAmmo>100</InitialAmmo>
                <Alert>
                    <Initial>Combat</Initial>
                    <Minimal>Low</Minimal>
                    <JobStarting>Low</JobStarting>
                    <Investigating>Medium</Investigating>
                </Alert>
                <AlarmGroups>0</AlarmGroups>
                <Pursuit>
                    <Strong>4</Strong>
                    <Weak>1</Weak>
                    <StrongSeen>4</StrongSeen>
                    <WeakSeen>4</WeakSeen>
                    <Lost>0</Lost>
                </Pursuit>
            </OSD>
        </Object>
    </ObjectCollection>
</Oni>

Offline

#19 09/13/08 22:09

Gumby
Member
From: Seattle, WA, USA
Registered: 08/30/07

Re: Characters

Where is the <Object> tag?


Iritscen: roll
Iritscen: it's amazing this program even works
Gumby: i know
Iritscen: and that statement applies to my code, not just yours

Offline

#20 09/14/08 13:09

VitalFlame
Member
Registered: 09/01/08

Re: Characters

I dont know.

Offline

#21 09/14/08 15:09

paradox-01
Member
From: Germany
Registered: 01/14/07

Re: Characters

You just missed a few lines.

<Object Id="11316" Type="CHAR">
            <Header>
                <Flags>0</Flags>
                <Position>-182.735886 1485 -2075.24</Position>
                <Rotation>180.001 173.673 180.001</Rotation>

            </Header>
            <OSD>
                <Flags>NotInitiallyPresent Omniscient</Flags>
                <Class>elite_hard_1</Class>
                <Name>GrifElite05</Name>
                <Weapon></Weapon>
                <Scripts>
                    <Spawn></Spawn>
                    <Die>final_round</Die>
                    <Combat></Combat>
                    <Alarm></Alarm>
                    <Hurt></Hurt>
                    <Defeated></Defeated>
                    <OutOfAmmo></OutOfAmmo>
                    <NoPath></NoPath>
                </Scripts>
                <AdditionalHealth>0</AdditionalHealth>
                <Job>
                    <Type>None</Type>
                    <PatrolPathId>0</PatrolPathId>
                </Job>
                <Behaviors>
                    <CombatId>6</CombatId>
                    <MeleeId>21</MeleeId>
                    <NeutralId>0</NeutralId>
                </Behaviors>
                <Inventory>
                    <Ammo>
                        <Use>1</Use>
                        <Drop>0</Drop>
                    </Ammo>
                    <EnergyCell>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </EnergyCell>
                    <Hypo>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Hypo>
                    <Shield>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Shield>
                    <Invisibility>
                        <Use>0</Use>
                        <Drop>0</Drop>
                    </Invisibility>
                </Inventory>
                <Team>Syndicate</Team>
                <InitialAmmo>100</InitialAmmo>
                <Alert>
                    <Initial>Combat</Initial>
                    <Minimal>Low</Minimal>
                    <JobStarting>Low</JobStarting>
                    <Investigating>Medium</Investigating>
                </Alert>
                <AlarmGroups>0</AlarmGroups>
                <Pursuit>
                    <Strong>4</Strong>
                    <Weak>1</Weak>
                    <StrongSeen>4</StrongSeen>
                    <WeakSeen>4</WeakSeen>
                    <Lost>0</Lost>
                </Pursuit>
            </OSD>
        </Object>

These tags marks the file end.

</ObjectCollection>
</Oni>

Last edited by paradox-01 (09/14/08 15:09)

Offline

#22 10/11/08 06:10

RuthgerMiles
Member
From: Netherlands - Enschede
Registered: 10/11/08

Re: Characters

What do you mean? You instantely play muro instead of konoko?

Maybe with player models?


You play to much oni if: You paint your hair purple, call your little brother Muro and beats him up 3 times a day like this...

crazydolfightom4lk0.gif

Offline

Board footer

Powered by FluxBB