XML:FILM

From OniGalore
Revision as of 12:58, 2 November 2012 by Paradox-01 (talk | contribs)
Jump to navigation Jump to search

FILM: animation playbacks

Template:XMLModdingHints

The xml code on this page is compatible with onisplit v0.9.61.0 and v0.9.68.0


general information

  • FILM*.oni are level specific (they are usually used in cutscenes and can be found in levelXX_...)
  • For best results (esp. for run and jump) use same character for recording and playing the FILM files.
  • Holster and unholster is same key event, make sure character has (un)holstered weapon as you planed, else it can affect sprint.
  • Following values are in radians. HERE you can calculate radians to degrees and vice versa.
<Facing>
<DesiredFacing>
<HeadFacing>
<HeadPitch>


BSL support

playback ai_name FILM_name
playback script_id FILM_name


How to make an own FILM

  • They become stored in Oni/edition folder. First file is named "saved_film000.dat"
  • Enter Developer Mode to record a FILM.
F9 - start record
F10 - stop record
F11 - play record


FILM converting

for original FILM*oni to FILM*.xml
onisplit -extract:xml xml_dir levelXX_name/FILM*.oni
for new saved_film*.dat to saved_film*.xml
onisplit film2xml xml_dir source_dir/saved_film*.dat
for converting original/new *.xml to *oni
onisplit -create oni_dir xml_dir/*.xml


<Keys>

None
Escape
Console
Pause
Cutscene1
Cutscene2
F4
F5
F6
F7
F8
StartRecord
StopRecord
PlayRecord
F12
LookMode
Screenshot
Forward
Backward
TurnLeft
TurnRight
StepLeft
StepRight
Jump
Crouch
Punch
Kick
Block
Walk
Action
Hypo
Reload
Swap
Drop
Fire1
Fire2
Fire3


sample piece

[...] stands for another <FILMFrame>...</FILMFrame> code block

<?xml version="1.0" encoding="utf-8"?>
<Oni>
   <Instance id="0" type="FILM">
       <Position>414.461334 50 666.26355</Position>
       <Facing>4.767578</Facing>
       <DesiredFacing>4.767578</DesiredFacing>
       <HeadFacing>0</HeadFacing>
       <HeadPitch>-0.196971774</HeadPitch>
       <FrameCount>165</FrameCount>
       <Animations>
           <String></String>
           <String></String>
       </Animations>
       <Frames>
           <FILMFrame>
               <MouseDelta>0 0</MouseDelta>
               <Keys></Keys>
               <Frame>0</Frame>
           </FILMFrame>
           [...]
       </Frames>
   </Instance>
</Oni>