DO/WHMTG

From Dark Omen Wiki

(Difference between revisions)
Jump to: navigation, search
m (added missing line break)
(Add adress list)
Line 23: Line 23:
  WH_REPEAT <--> WH_UNTIL  |
  WH_REPEAT <--> WH_UNTIL  |
  WH_DO    <--> WH_LOOP    | (WH_BREAK)
  WH_DO    <--> WH_LOOP    | (WH_BREAK)
 +
 +
 +
== Adress Dump of Functions ==
 +
 +
<pre>
 +
41DB60 GOTO
 +
41DB80 IF
 +
41DC30 ENDIF
 +
41DC60 ELSE
 +
41DC80 GOSUB
 +
41DCD0 RETURN
 +
41DE30 DO
 +
41DDF0 PUSHLV
 +
41DE10 POPLV
 +
41DE20 SETLV
 +
41DE60 LOOP
 +
41DD00 REPEAT
 +
41DD20 UNTIL
 +
41DEC0 BREAK
 +
41DED0 END
 +
41C910 Test
 +
41C920 PlayMovie
 +
41DA00 Narration
 +
41C970 MeetingPoint
 +
41CA00 TravelMap
 +
41CB10 Deploy
 +
41CB20 Battle
 +
41CDC0 GetUnitStatus
 +
41CE20 GetUnitHireStatus
 +
41CE80 AddUnit
 +
41CED0 RemoveUnit
 +
41DA10 WriteTextToFile
 +
41DA20 SetUnitVar
 +
41DA30 ReadUnitVar
 +
41DEE0 SetVariable
 +
41DF00 ReadVariable
 +
41D620 AddCash
 +
41D970 GameOver
 +
41DA40 DisableAutosave
 +
41DF20 ClearVariables
 +
41CFB0 ForceUnit
 +
41CFF0 UnForceUnit
 +
41D040 ExcludeUnit
 +
41D080 IncludeUnit
 +
41D0D0 TemporayUnitSet
 +
41D120 TemporayUnitClear
 +
41D170 UnitIsGoingSet
 +
41D1C0 UnitIsGoingClear
 +
41CAB0 Book
 +
41C9D0 MeetingWait
 +
41CB40 InitDebrief
 +
41CB70 Debrief
 +
41CAE0 SaveGame
 +
41CBA0 Picture
 +
41CC00 Delay
 +
41CCE0 Pause
 +
41CD90 HideMouse
 +
41CDA0 ShowMouse
 +
41CBE0 SetDefaultSaveName
 +
41D640 AddMagic
 +
41D690 RemoveMagic
 +
41D870 DisplayBitmap
 +
41D8A0 RemoveBitmap
 +
41D210 CheckObjective
 +
41D250 SetObjective
 +
41D550 Voice
 +
41D8B0 SpotAnim
 +
41D950 ChooseInit
 +
41D740 PlaySFX
 +
41D720 StopSFX
 +
41D980 StopAllSFX
 +
41D9A0 PlayMusic
 +
41D9B0 StopMusic
 +
41D9C0 SetMusic
 +
41D9E0 SetBackground
 +
41DA50 StartAnimAsync
 +
41DA60 StopAnim
 +
41DA70 PlayAnim
 +
41DA80 LoadHeads
 +
41DA90 ShowHead
 +
41D2A0 Speak
 +
41D360 SpeakNoWait
 +
41D420 Narrate
 +
41DAA0 AddOption
 +
41DAB0 ChooseOption
 +
41DAC0 HideHead
 +
41D410 Wait
 +
41D9F0 PlaySample
 +
41DAD0 PlaySampleNoWait
 +
41DAE0 LoadDots
 +
41DB10 PlayDots
 +
41DB20 WaitForDots
 +
41DB30 FinishDots
 +
41DB40 ContinuePrompt
 +
41DAF0 SetResult
 +
</pre>

Revision as of 01:06, 10 April 2012


Contents


WHMTG (Warhammer Meeting) is the script language used to script the activities like meetings between the battles.

The developers were so kind to include a complete WHMTG-Function-Name-Table in EngRel. This made decoding the functions a piece of cake.

Dump of the whole WHMTG-Script

Analysis

Initiator  vs. Terminator | (Nested)
--------------------------+----------------
WH_IF     <--> WH_ENDIF   | (WH_ELSE)
WH_GOSUB  <--> WH_RETURN  |
WH_REPEAT <--> WH_UNTIL   |
WH_DO     <--> WH_LOOP    | (WH_BREAK)


Adress Dump of Functions

41DB60 GOTO
41DB80 IF
41DC30 ENDIF
41DC60 ELSE
41DC80 GOSUB
41DCD0 RETURN
41DE30 DO
41DDF0 PUSHLV
41DE10 POPLV
41DE20 SETLV
41DE60 LOOP
41DD00 REPEAT
41DD20 UNTIL
41DEC0 BREAK
41DED0 END
41C910 Test
41C920 PlayMovie
41DA00 Narration
41C970 MeetingPoint
41CA00 TravelMap
41CB10 Deploy
41CB20 Battle
41CDC0 GetUnitStatus
41CE20 GetUnitHireStatus
41CE80 AddUnit
41CED0 RemoveUnit
41DA10 WriteTextToFile
41DA20 SetUnitVar
41DA30 ReadUnitVar
41DEE0 SetVariable
41DF00 ReadVariable
41D620 AddCash
41D970 GameOver
41DA40 DisableAutosave
41DF20 ClearVariables
41CFB0 ForceUnit
41CFF0 UnForceUnit
41D040 ExcludeUnit
41D080 IncludeUnit
41D0D0 TemporayUnitSet
41D120 TemporayUnitClear
41D170 UnitIsGoingSet
41D1C0 UnitIsGoingClear
41CAB0 Book
41C9D0 MeetingWait
41CB40 InitDebrief
41CB70 Debrief
41CAE0 SaveGame
41CBA0 Picture
41CC00 Delay
41CCE0 Pause
41CD90 HideMouse
41CDA0 ShowMouse
41CBE0 SetDefaultSaveName
41D640 AddMagic
41D690 RemoveMagic
41D870 DisplayBitmap
41D8A0 RemoveBitmap
41D210 CheckObjective
41D250 SetObjective
41D550 Voice
41D8B0 SpotAnim
41D950 ChooseInit
41D740 PlaySFX
41D720 StopSFX
41D980 StopAllSFX
41D9A0 PlayMusic
41D9B0 StopMusic
41D9C0 SetMusic
41D9E0 SetBackground
41DA50 StartAnimAsync
41DA60 StopAnim
41DA70 PlayAnim
41DA80 LoadHeads
41DA90 ShowHead
41D2A0 Speak
41D360 SpeakNoWait
41D420 Narrate
41DAA0 AddOption
41DAB0 ChooseOption
41DAC0 HideHead
41D410 Wait
41D9F0 PlaySample
41DAD0 PlaySampleNoWait
41DAE0 LoadDots
41DB10 PlayDots
41DB20 WaitForDots
41DB30 FinishDots
41DB40 ContinuePrompt
41DAF0 SetResult
Personal tools
communication