Talk:Cutscene
Jump to navigation
Jump to search
Does anyone got any ideas how to to handle with the audio streams? Normally there is one ID increased by 1 for each stream used by an cutscene, but I don't know where it is loaded! --Aschratt 19:24, 18 Dec 2007 (UTC)
- The audio streams for cutscenes are hardcoded. The exe contains a list of these IDs and loads and plays the proper audio immediately when the cutscene starts, one ID for each cutscene:
.data:008D0AA8 dd offset aBcesar2 ; "BCESAR2" .data:008D0AAC dd 626 .data:008D0AB0 dd offset aBcesar4 ; "BCESAR4" .data:008D0AB4 dd 627 .data:008D0AB8 dd offset aBcesa4w ; "BCESA4W" .data:008D0ABC dd 628 .data:008D0AC0 dd offset aBcesar5 ; "BCESAR5" .data:008D0AC4 dd 629 .data:008D0AC8 dd offset aBcesa5w ; "BCESA5W" .data:008D0ACC dd 630 .data:008D0AD0 dd offset aBcras1 ; "BCRAS1" .data:008D0AD4 dd 631 .data:008D0AD8 dd offset aBcras2 ; "BCRAS2" .data:008D0ADC dd 632 .data:008D0AE0 dd offset aBhill1 ; "BHILL1" .data:008D0AE4 dd 633 .data:008D0AE8 dd offset aBhill2 ; "BHILL2" .data:008D0AEC dd 634 .data:008D0AF0 dd offset aBhill3a ; "BHILL3a" .data:008D0AF4 dd 635 .data:008D0AF8 dd offset aBhill3b ; "BHILL3b" .data:008D0AFC dd 636 .data:008D0B00 dd offset aBhill3c ; "BHILL3c" .data:008D0B04 dd 637 .data:008D0B08 dd offset aBhill5a ; "BHILL5a" .data:008D0B0C dd 638 .data:008D0B10 dd offset aBhill5b ; "BHILL5b" .data:008D0B14 dd 639 .data:008D0B18 dd offset aCas_1a ; "CAS_1a" .data:008D0B1C dd 640 .data:008D0B20 dd offset aCas_1b ; "CAS_1b" .data:008D0B24 dd 642 .data:008D0B28 dd offset aCas_2 ; "CAS_2" .data:008D0B2C dd 643 .data:008D0B30 dd offset aCas_3 ; "CAS_3" .data:008D0B34 dd 644 .data:008D0B38 dd offset aCas_4a ; "CAS_4a" .data:008D0B3C dd 645 .data:008D0B40 dd offset aCas_4b ; "CAS_4b" .data:008D0B44 dd 646 .data:008D0B48 dd offset aCas_4c ; "CAS_4c" .data:008D0B4C dd 647 .data:008D0B50 dd offset aCas_5a ; "CAS_5a" .data:008D0B54 dd 648 .data:008D0B58 dd offset aCas_6a ; "CAS_6a" .data:008D0B5C dd 649 .data:008D0B60 dd offset aCas6b_1 ; "CAS6b_1" .data:008D0B64 dd 650 .data:008D0B68 dd offset aCas6b_2 ; "CAS6b_2" .data:008D0B6C dd 651 .data:008D0B70 dd offset aCas_7b ; "CAS_7b" .data:008D0B74 dd 652 .data:008D0B78 dd offset aCas_9a1 ; "CAS_9a1" .data:008D0B7C dd 653 .data:008D0B80 dd offset aCas_9a2 ; "CAS_9a2" .data:008D0B84 dd 654 .data:008D0B88 dd offset aCas_11a ; "CAS_11a" .data:008D0B8C dd 641 .data:008D0B90 dd offset aCat_1 ; "CAT_1" .data:008D0B94 dd 655 .data:008D0B98 dd offset aCat_2 ; "CAT_2" .data:008D0B9C dd 656 .data:008D0BA0 dd offset aCat_3 ; "CAT_3" .data:008D0BA4 dd 657 .data:008D0BA8 dd offset aCat_4 ; "CAT_4" .data:008D0BAC dd 658 .data:008D0BB0 dd offset aCesar1a ; "CESAR1A" .data:008D0BB4 dd 659 .data:008D0BB8 dd offset aCesar2a ; "CESAR2A" .data:008D0BBC dd 660 .data:008D0BC0 dd offset aCrash1a ; "CRASH1A" .data:008D0BC4 dd 295h .data:008D0BC8 dd offset aCrash2a ; "CRASH2A" .data:008D0BCC dd 662 .data:008D0BD0 dd offset aCrash3a ; "CRASH3A" .data:008D0BD4 dd 663 .data:008D0BD8 dd offset aCrashv1 ; "CRASHV1" .data:008D0BDC dd 664 .data:008D0BE0 dd offset aCrasv2a ; "CRASv2a" .data:008D0BE4 dd 665 .data:008D0BE8 dd offset aCrasv2b ; "CRASv2b" .data:008D0BEC dd 666 .data:008D0BF0 dd offset aD10_alt ; "D10_ALT" .data:008D0BF4 dd 667 .data:008D0BF8 dd offset aD8_alt ; "D8_ALT" .data:008D0BFC dd 668 .data:008D0C00 dd offset aDesert1 ; "DESERT1" .data:008D0C04 dd 671 .data:008D0C08 dd offset aDesert2 ; "DESERT2" .data:008D0C0C dd 672 .data:008D0C10 dd offset aDesert3 ; "DESERT3" .data:008D0C14 dd 673 .data:008D0C18 dd offset aDesert4 ; "DESERT4" .data:008D0C1C dd 674 .data:008D0C20 dd offset aDesert6 ; "DESERT6" .data:008D0C24 dd 675 .data:008D0C28 dd offset aDesert8 ; "DESERT8" .data:008D0C2C dd 676 .data:008D0C30 dd offset aDesert9 ; "DESERT9" .data:008D0C34 dd 677 .data:008D0C38 dd offset aDes_10a ; "DES_10A" .data:008D0C3C dd 678 .data:008D0C40 dd offset aDes_10b ; "DES_10B" .data:008D0C44 dd 679 .data:008D0C48 dd offset aDoc_2 ; "DOC_2" .data:008D0C4C dd 680 .data:008D0C50 dd offset aEpilog ; "EPILOG" .data:008D0C54 dd 681 .data:008D0C58 dd offset aFarl_2a ; "FARL_2A" .data:008D0C5C dd 682 .data:008D0C60 dd offset aFarl_3a ; "FARL_3A" .data:008D0C64 dd 683 .data:008D0C68 dd offset aFarl_3b ; "FARL_3B" .data:008D0C6C dd 684 .data:008D0C70 dd offset aFarl_4a ; "FARL_4A" .data:008D0C74 dd 685 .data:008D0C78 dd offset aFarl_5a ; "FARL_5A" .data:008D0C7C dd 686 .data:008D0C80 dd offset aFinal1a ; "FINAL1A" .data:008D0C84 dd 687 .data:008D0C88 dd offset aFinal2a ; "FINAL2A" .data:008D0C8C dd 688 .data:008D0C90 dd offset aFinal2b ; "FINAL2B" .data:008D0C94 dd 689 .data:008D0C98 dd offset aGarag1b ; "GARAG1B" .data:008D0C9C dd 690 .data:008D0CA0 dd offset aGarag1c ; "GARAG1C" .data:008D0CA4 dd 691 .data:008D0CA8 dd offset aGarag3a ; "GARAG3A" .data:008D0CAC dd 692 .data:008D0CB0 dd offset aGrove1a ; "GROVE1a" .data:008D0CB4 dd 693 .data:008D0CB8 dd offset aGrove1b ; "GROVE1b" .data:008D0CBC dd 694 .data:008D0CC0 dd offset aGrove1c ; "GROVE1c" .data:008D0CC4 dd 695 .data:008D0CC8 dd offset aGrove2 ; "GROVE2" .data:008D0CCC dd 696 .data:008D0CD0 dd offset aHeist1a ; "HEIST1a" .data:008D0CD4 dd 697 .data:008D0CD8 dd offset aHeist2a ; "HEIST2a" .data:008D0CDC dd 698 .data:008D0CE0 dd offset aHeist4a ; "HEIST4a" .data:008D0CE4 dd 699 .data:008D0CE8 dd offset aHeist5a ; "HEIST5a" .data:008D0CEC dd 700 .data:008D0CF0 dd offset aHeist6a ; "HEIST6a" .data:008D0CF4 dd 701 .data:008D0CF8 dd offset aHeist8a ; "HEIST8a" .data:008D0CFC dd 702 .data:008D0D00 dd offset aIntro1a ; "INTRO1A" .data:008D0D04 dd 703 .data:008D0D08 dd offset aIntro1b ; "INTRO1B" .data:008D0D0C dd 704 .data:008D0D10 dd offset aIntro2a ; "INTRO2A" .data:008D0D14 dd 705 .data:008D0D18 dd offset aProlog1 ; "PROLOG1" .data:008D0D1C dd 706 .data:008D0D20 dd offset aProlog2 ; "PROLOG2" .data:008D0D24 dd 707 .data:008D0D28 dd offset aProlog3 ; "PROLOG3" .data:008D0D2C dd 708 .data:008D0D30 dd offset aRiot_1a ; "RIOT_1a" .data:008D0D34 dd 709 .data:008D0D38 dd offset aRiot_1b ; "RIOT_1b" .data:008D0D3C dd 710 .data:008D0D40 dd offset aRiot_2 ; "RIOT_2" .data:008D0D44 dd 711 .data:008D0D48 dd offset aRiot_4a ; "RIOT_4a" .data:008D0D4C dd 712 .data:008D0D50 dd offset aRiot_4b ; "RIOT_4b" .data:008D0D54 dd 713 .data:008D0D58 dd offset aRiot_4c ; "RIOT_4c" .data:008D0D5C dd 714 .data:008D0D60 dd offset aRiot_4d ; "RIOT_4d" .data:008D0D64 dd 715 .data:008D0D68 dd offset aRiot4e1 ; "RIOT4e1" .data:008D0D6C dd 716 .data:008D0D70 dd offset aRiot4e2 ; "RIOT4e2" .data:008D0D74 dd 717 .data:008D0D78 dd offset aRyder1a ; "RYDER1A" .data:008D0D7C dd 718 .data:008D0D80 dd offset aRyder2a ; "RYDER2A" .data:008D0D84 dd 719 .data:008D0D88 dd offset aRyder3a ; "RYDER3A" .data:008D0D8C dd 720 .data:008D0D90 dd offset aScrash1 ; "SCRASH1" .data:008D0D94 dd 721 .data:008D0D98 dd offset aScrash2 ; "SCRASH2" .data:008D0D9C dd 722 .data:008D0DA0 dd offset aSmoke1a ; "SMOKE1A" .data:008D0DA4 dd 723 .data:008D0DA8 dd offset aSmoke1b ; "SMOKE1B" .data:008D0DAC dd 724 .data:008D0DB0 dd offset aSmoke2a ; "SMOKE2A" .data:008D0DB4 dd 725 .data:008D0DB8 dd offset aSmoke2b ; "SMOKE2B" .data:008D0DBC dd 726 .data:008D0DC0 dd offset aSmoke3a ; "SMOKE3A" .data:008D0DC4 dd 727 .data:008D0DC8 dd offset aSmoke4a ; "SMOKE4A" .data:008D0DCC dd 728 .data:008D0DD0 dd offset aSteal_1 ; "STEAL_1" .data:008D0DD4 dd 729 .data:008D0DD8 dd offset aSteal_2 ; "STEAL_2" .data:008D0DDC dd 730 .data:008D0DE0 dd offset aSteal_4 ; "STEAL_4" .data:008D0DE4 dd 731 .data:008D0DE8 dd offset aSteal_5 ; "STEAL_5" .data:008D0DEC dd 732 .data:008D0DF0 dd offset aStrap1a ; "STRAP1A" .data:008D0DF4 dd 733 .data:008D0DF8 dd offset aStrap2a ; "STRAP2A" .data:008D0DFC dd 734 .data:008D0E00 dd offset aStrap3a ; "STRAP3A" .data:008D0E04 dd 735 .data:008D0E08 dd offset aStrap4a ; "STRAP4A" .data:008D0E0C dd 736 .data:008D0E10 dd offset aStrp4b1 ; "STRP4B1" .data:008D0E14 dd 737 .data:008D0E18 dd offset aStrp4b2 ; "STRP4B2" .data:008D0E1C dd 738 .data:008D0E20 dd offset aSweet1a ; "SWEET1A" .data:008D0E24 dd 739 .data:008D0E28 dd offset aSweet1b ; "SWEET1B" .data:008D0E2C dd 740 .data:008D0E30 dd offset aSweet1c ; "SWEET1C" .data:008D0E34 dd 741 .data:008D0E38 dd offset aSweet2a ; "SWEET2A" .data:008D0E3C dd 742 .data:008D0E40 dd offset aSweet2b ; "SWEET2B" .data:008D0E44 dd 743 .data:008D0E48 dd offset aSweet3a ; "SWEET3A" .data:008D0E4C dd 744 .data:008D0E50 dd offset aSweet3b ; "SWEET3B" .data:008D0E54 dd 745 .data:008D0E58 dd offset aSweet4a ; "SWEET4A" .data:008D0E5C dd 746 .data:008D0E60 dd offset aSweet5a ; "SWEET5A" .data:008D0E64 dd 747 .data:008D0E68 dd offset aSweet6a ; "SWEET6A" .data:008D0E6C dd 748 .data:008D0E70 dd offset aSweet6b ; "SWEET6B" .data:008D0E74 dd 749 .data:008D0E78 dd offset aSweet7a ; "SWEET7A" .data:008D0E7C dd 750 .data:008D0E80 dd offset aSynd_2a ; "SYND_2A" .data:008D0E84 dd 751 .data:008D0E88 dd offset aSynd_2b ; "SYND_2B" .data:008D0E8C dd 752 .data:008D0E90 dd offset aSynd_3a ; "SYND_3A" .data:008D0E94 dd 753 .data:008D0E98 dd offset aSynd_4a ; "SYND_4A" .data:008D0E9C dd 754 .data:008D0EA0 dd offset aSynd_4b ; "SYND_4B" .data:008D0EA4 dd 755 .data:008D0EA8 dd offset aSynd_7 ; "SYND_7" .data:008D0EAC dd 756 .data:008D0EB0 dd offset aTruth_1 ; "TRUTH_1" .data:008D0EB4 dd 758 .data:008D0EB8 dd offset aTruth_2 ; "TRUTH_2" .data:008D0EBC dd 757 .data:008D0EC0 dd offset aW2_alt ; "W2_ALT" .data:008D0EC4 dd 759 .data:008D0EC8 dd offset aWoozi1a ; "WOOZI1A" .data:008D0ECC dd 761 .data:008D0ED0 dd offset aWoozi1b ; "WOOZI1B" .data:008D0ED4 dd 762 .data:008D0ED8 dd offset aWoozie2 ; "WOOZIE2" .data:008D0EDC dd 760 .data:008D0EE0 dd offset aWoozie4 ; "WOOZIE4" .data:008D0EE4 dd 763 .data:008D0EE8 dd offset aZero_1 ; "ZERO_1" .data:008D0EEC dd 764 .data:008D0EF0 dd offset aZero_2 ; "ZERO_2" .data:008D0EF4 dd 765 .data:008D0EF8 dd offset aZero_4 ; "ZERO_4" .data:008D0EFC dd 766 .data:008D0F00 dd offset aDate1a ; "DATE1a" .data:008D0F04 dd 670 .data:008D0F08 dd offset aDate1b ; "DATE1b" .data:008D0F0C dd 669 .data:008D0F10 dd offset aDate2a ; "DATE2a" .data:008D0F14 dd 670 .data:008D0F18 dd offset aDate2b ; "DATE2b" .data:008D0F1C dd 669 .data:008D0F20 dd offset aDate3a ; "DATE3a" .data:008D0F24 dd 670 .data:008D0F28 dd offset aDate3b ; "DATE3b" .data:008D0F2C dd 669 .data:008D0F30 dd offset aDate4a ; "DATE4a" .data:008D0F34 dd 670 .data:008D0F38 dd offset aDate4b ; "DATE4b" .data:008D0F3C dd 669 .data:008D0F40 dd offset aDate5a ; "DATE5a" .data:008D0F44 dd 670 .data:008D0F48 dd offset aDate5b ; "DATE5b" .data:008D0F4C dd 669 .data:008D0F50 dd offset aDate6a ; "DATE6a" .data:008D0F54 dd 670 .data:008D0F58 dd offset aDate6b ; "DATE6b" .data:008D0F5C dd 669
The function that loads the cutscene audio is located at 00507E30 (US 1.0) Seemann 14:13, 19 Dec 2007 (UTC)
Opcodes
I guess we should merge Mission script subsections for III/VC and SA into a single list of opcodes. Maybe also add the natives list as:
- Mission script
- Opcodes
- list of opcodes
- Native functions
- list of natives
- Opcodes