================================================================================================== Event notes: ================================================================================================== This document and others like it detail how events and levels work in Jazz 1. This doucment covers the basic outline of both levels and events. Other documents will contain notes on specific sections **************************** OVERVIEW: SECTION 1: Intro SECTION 2: Event Behavior SECTION 3: Event Type SECTION 4: Other event bytes **************************** ================================================================================================== Basic Event Structure: ================================================================================================== Each event consists of 32 1-byte entries. Throughout this document, each byte will be referred to by the name given here, for ease of explaination. 1 Difficulty 9 Magnitude 17 Blank 25 Bridge length 2 Blank 10 Strength 18 Anim speed 26 Chain length 3 Reflect 11 Type 19 Blank 27 Chain direction 4 Blank 12 Score 20 Blank 28 Unused 5 Behavior 13 Attack 21 Number 29 Death anim left 6 Left anim 14 Attack speed 22 Sound 30 Death anim right 7 Right anim 15 Blank 23 Vary 1 31 Attack anim left 8 Blank 16 Speed 24 Vary 2 32 Attack anim right ================================================================================================== Basic Level structure: ================================================================================================== The Jazz level files contain a surprising amount of data, controlling everything from sprite behavior to Jazz's jump height and more. There is enormous redundancy and a notable lack of logic that makes you wonder just what the Epic team was smoking. The level files can be divided roughly into 17 'blocks' of data, some RLE compressed, others not. It appears each RLE block is loaded seperately, while the plain blocks affect variables in the game. Blocks 6, 8 and 13 seem to be read only by Epic's level builder. They are name lists and any data you want can be stored in them without affecting the level. When totally decompressed levels are 61'980 bytes long, give or take a few extras. Of this, about 50 bytes remains of unknown function. **************************** OVERVIEW: block0: Level header (Uncompressed) block1: Mapping block2: Transparency block3: Masking block4: Special behaviour block5: Events block6: Event names block7: Animation block8: Animation names block9: Level properties 1 (Uncompressed) block10: Jazz animation list block11: Derbis animation list (Uncompressed) block12: Attack block13: Attack names block14: Level properties 2 (Uncompressed) block15: Unknown block16: Level properties 3 (Uncompressed) ****************************