XML:FILM: Difference between revisions
Jump to navigation
Jump to search
m (correcting prev/next types in nav header) |
Paradox-01 (talk | contribs) mNo edit summary |
||
Line 98: | Line 98: | ||
</Instance> | </Instance> | ||
</Oni> | </Oni> | ||
==Frame structures== | |||
FILM allows two structures for <Frames>. | |||
===Fixed structure=== | |||
There are always 4 elements within <FILMFrame>. | |||
<FILMFrame> | |||
<MouseDeltaX>0</MouseDeltaX> | |||
<MouseDeltaY>0</MouseDeltaY> | |||
<Keys></Keys> | |||
<Frame>0</Frame> | |||
</FILMFrame> | |||
===Modular structure=== | |||
There can be one up to three elements. | |||
</nowiki><Time></nowiki> is used instead of <Frame>. | |||
<MouseDelta> is an array of X and Y. | |||
<Frame> | |||
<nowiki><Time>0</Time></nowiki> | |||
</Frame> | |||
<Frame> | |||
<nowiki><Time>25</Time></nowiki> | |||
<MouseDelta>0.25 0</MouseDelta> | |||
</Frame> | |||
<Frame> | |||
<nowiki><Time>223</Time></nowiki> | |||
<MouseDelta>0 -0.25</MouseDelta> | |||
<Keys>Forward</Keys> | |||
</Frame> | |||
{{XML}} | {{XML}} |
Revision as of 13:11, 14 November 2023
FILM : Film | ||
---|---|---|
XML
DPge << Other file types >> HPge |
General information
- The XML code on this page is compatible with OniSplit v0.9.61.0 and v0.9.68.0.
- FILM*.oni files are level-specific (they are usually used in cutscenes and can be found in levelX_Final).
- For best results (esp. for running and jumping), use the same character for recording and playing the FILM files.
- Holster and unholster is the same key event, so make sure the character has their weapon holstered/unholstered as you planned or it will affect their ability to sprint.
- The tags below have their values in radians. THIS page can convert 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 your own FILM
- They will be saved next to the running game application. The first file will be named "saved_film000.dat".
- Enter Developer Mode to record a FILM.
- F9 - start record
- F10 - stop record
- F11 - play record
FILM converting
Converting FILM*oni to FILM*.xml:
onisplit -extract:xml xml_dir levelXX_name/FILM*.oni
Converting saved_film*.dat to saved_film*.xml:
onisplit film2xml xml_dir source_dir/saved_film*.dat
Converting *.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 XML
"[...]" below stands for additional <FILMFrame>...</FILMFrame> blocks.
<?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>
Frame structures
FILM allows two structures for <Frames>.
Fixed structure
There are always 4 elements within <FILMFrame>.
<FILMFrame> <MouseDeltaX>0</MouseDeltaX> <MouseDeltaY>0</MouseDeltaY> <Keys></Keys> <Frame>0</Frame> </FILMFrame>
Modular structure
There can be one up to three elements.
</nowiki>
<MouseDelta> is an array of X and Y.
<Frame> <Time>0</Time> </Frame> <Frame> <Time>25</Time> <MouseDelta>0.25 0</MouseDelta> </Frame> <Frame> <Time>223</Time> <MouseDelta>0 -0.25</MouseDelta> <Keys>Forward</Keys> </Frame>