ModEnc is currently in Maintenance Mode: Changes could occur at any given moment, without advance warning.
ModEnc:Sandbox: Difference between revisions
Jump to navigation
Jump to search
m Sandbox created, |
No edit summary |
||
Line 8: | Line 8: | ||
<div style="padding:1px; text-indent:10px; -moz-border-radius:10px; border:2px dotted #c00; color:#00c; font-style:italic;">This post was brought to you by <b>DCoder</b> - founder of [http://dcoder.cannis.net RedUtils] - all the INI editing tools you'll ever need.</div> | <div style="padding:1px; text-indent:10px; -moz-border-radius:10px; border:2px dotted #c00; color:#00c; font-style:italic;">This post was brought to you by <b>DCoder</b> - founder of [http://dcoder.cannis.net RedUtils] - all the INI editing tools you'll ever need.</div> | ||
== Layout suggestions for YR exe info == | |||
Example: EMPulseClass | |||
(insert EMPulseClass description here) | |||
===Derivation=== | |||
[[AbstractClass]] {{arr|r}} EMPulseClass | |||
===Class specifications=== | |||
{| align="center" width="100%" cellpadding="2" class="table_descrow" | |||
!width="40%"|Property | |||
!width="60%"|Value | |||
|- | |||
|colspan="2"|'''General:''' | |||
|- | |||
|[[VT]] address (YR 1.001)||'''0x7E87A8''' | |||
|- | |||
|Size of members data (YR 1.001)||'''0x34 bytes''' | |||
|- | |||
|colspan="2"|'''AbstractClass derivative:''' ''Note: these rows would only be added for AbstractClass derivatives'' | |||
|- | |||
|[[ClassID]]||'''0x37''' | |||
|} | |||
===Member variables=== | |||
{| align="center" width="100%" cellpadding="2" class="table_descrow" | |||
!width="5%"|Offset | |||
!width="15%"|Type | |||
!width="20%"|Name | |||
!width="60%"|Description | |||
|- | |||
|colspan="4"|'''AbstractClass:''' | |||
|- | |||
|0x0||Pointer||VirtualTable||Pointer to the class' virtual table | |||
|- | |||
|0x4||Pointer||VirtualTable2||Pointer to an extended virtual table (not sure what exactly it does) | |||
|- | |||
|0x8||Pointer||VirtualTable3||Pointer to an extended virtual table (not sure what exactly it does) | |||
|- | |||
|0xC||Pointer||VirtualTable4||Pointer to an extended virtual table (not sure what exactly it does) | |||
|- | |||
|0x10||DWORD||unknown|| | |||
|- | |||
|0x14||DWORD||DerivationFlags||Bit 0: set if Techno<br>Bit 1: set if Object<br>Bit 2: set if Foot | |||
|- | |||
|0x18||DWORD||unknown|| | |||
|- | |||
|0x1C||DWORD||unknown|| | |||
|- | |||
|0x20||BYTE||unknown|| | |||
|- | |||
|0x21||BYTE||unused|| | |||
|- | |||
|0x22||WORD||unused|| | |||
|- | |||
|colspan="4"|'''EMPulseClass:''' | |||
|- | |||
|0x24||WORD||OriginCell_X||X coordinate of the origin cell of the EMP | |||
|- | |||
|0x26||WORD||OriginCell_Y||Y coordinate of the origin cell of the EMP | |||
|- | |||
|0x28||DWORD||Spread||Cell spreading radius of the EMP effect | |||
|- | |||
|0x2C||DWORD||CreationTime||Time point at which this EMPulse instance has been created | |||
|- | |||
|0x30||DWORD||Duration||Time the EMP effect lasts | |||
|} | |||
===Virtual Table=== | |||
{| align="center" width="100%" cellpadding="2" class="table_descrow" | |||
!width="5%"|Offset | |||
!width="15%"|Return Type | |||
!width="15%"|Arguments | |||
!width="20%"|Name | |||
!width="45%"|Description | |||
|- | |||
|colspan="4"|'''AbstractClass:''' | |||
|- | |||
|0x0||unknown||unknown||unknown|| | |||
|- | |||
|0x4||unknown||unknown||unknown|| | |||
|- | |||
|0x8||unknown||unknown||unknown|| | |||
|- | |||
|0xC||unknown||unknown||unknown|| | |||
|- | |||
|0x10||unknown||unknown||unknown|| | |||
|- | |||
|0x14||unknown||Load||Stream* stream<br>AbstractClass* dst||Load data from a stream (used for loading savegames) | |||
|- | |||
|0x18||unknown||Save||Stream* stream<br>AbstractClass* src<br>(3rd is unknown)||Save data to a stream (used for saving games) | |||
|- | |||
|0x1C||unknown||unknown||unknown|| | |||
|- | |||
|0x20||AbstractClass*||Delete||none||Free memory and remove from global arrays.<br>The returned pointer is invalid. | |||
|- | |||
|0x24||unknown||unknown||unknown|| | |||
|- | |||
|0x28||unknown||unknown||unknown|| | |||
|- | |||
|0x2C||int32||GetAbstractClassID||none||Get the AbstractClass derivation ID of this class.<br>Used to find out "what something is". | |||
|- | |||
|0x30||int32||GetDataSize||none||Get the size of the member data. | |||
|- | |||
|0x34||unknown||unknown||unknown|| | |||
|- | |||
|0x38||unknown||unknown||unknown|| | |||
|- | |||
|0x3C||unknown||unknown||unknown|| | |||
|- | |||
|0x40||int32||GetArrayIndex||none||Get the index of this class instance in the global array.<br>This will return 0 for abstract classes. | |||
|- | |||
|0x44||bool||IsDead||none||Find out whether this instance is dead.<br>This is only used for "living" objects with a health. | |||
|- | |||
|0x48||void||Get3DCoords||int32* dst_xyz||Load 3D coordinates into dst_xyz. | |||
|- | |||
|0x4C||void||Get3DCoords_var||int32* dst_xyz||Load 3D coordinates into variables, then into dst_xyz.<br>This method is obsolete (use 0x48). | |||
|- | |||
|0x50||unknown||unknown||unknown|| | |||
|- | |||
|0x54||unknown||unknown||unknown|| | |||
|- | |||
|0x58||unknown||unknown||unknown|| | |||
|- | |||
|0x5C||void||AdvanceFrame||none||This is an updating routine, called every frame. | |||
|} |
Revision as of 18:35, 13 June 2007
Testing page
This is a sandbox - a page for testing stuff.
Pretty URL test
Testing testing, if this goes through, the Pretty URLs are functional.
This post was brought to you by DCoder - founder of RedUtils - all the INI editing tools you'll ever need.
Layout suggestions for YR exe info
Example: EMPulseClass (insert EMPulseClass description here)
Derivation
AbstractClass → EMPulseClass
Class specifications
Property | Value |
---|---|
General: | |
VT address (YR 1.001) | 0x7E87A8 |
Size of members data (YR 1.001) | 0x34 bytes |
AbstractClass derivative: Note: these rows would only be added for AbstractClass derivatives | |
ClassID | 0x37 |
Member variables
Offset | Type | Name | Description |
---|---|---|---|
AbstractClass: | |||
0x0 | Pointer | VirtualTable | Pointer to the class' virtual table |
0x4 | Pointer | VirtualTable2 | Pointer to an extended virtual table (not sure what exactly it does) |
0x8 | Pointer | VirtualTable3 | Pointer to an extended virtual table (not sure what exactly it does) |
0xC | Pointer | VirtualTable4 | Pointer to an extended virtual table (not sure what exactly it does) |
0x10 | DWORD | unknown | |
0x14 | DWORD | DerivationFlags | Bit 0: set if Techno Bit 1: set if Object Bit 2: set if Foot |
0x18 | DWORD | unknown | |
0x1C | DWORD | unknown | |
0x20 | BYTE | unknown | |
0x21 | BYTE | unused | |
0x22 | WORD | unused | |
EMPulseClass: | |||
0x24 | WORD | OriginCell_X | X coordinate of the origin cell of the EMP |
0x26 | WORD | OriginCell_Y | Y coordinate of the origin cell of the EMP |
0x28 | DWORD | Spread | Cell spreading radius of the EMP effect |
0x2C | DWORD | CreationTime | Time point at which this EMPulse instance has been created |
0x30 | DWORD | Duration | Time the EMP effect lasts |
Virtual Table
Offset | Return Type | Arguments | Name | Description |
---|---|---|---|---|
AbstractClass: | ||||
0x0 | unknown | unknown | unknown | |
0x4 | unknown | unknown | unknown | |
0x8 | unknown | unknown | unknown | |
0xC | unknown | unknown | unknown | |
0x10 | unknown | unknown | unknown | |
0x14 | unknown | Load | Stream* stream AbstractClass* dst |
Load data from a stream (used for loading savegames) |
0x18 | unknown | Save | Stream* stream AbstractClass* src (3rd is unknown) |
Save data to a stream (used for saving games) |
0x1C | unknown | unknown | unknown | |
0x20 | AbstractClass* | Delete | none | Free memory and remove from global arrays. The returned pointer is invalid. |
0x24 | unknown | unknown | unknown | |
0x28 | unknown | unknown | unknown | |
0x2C | int32 | GetAbstractClassID | none | Get the AbstractClass derivation ID of this class. Used to find out "what something is". |
0x30 | int32 | GetDataSize | none | Get the size of the member data. |
0x34 | unknown | unknown | unknown | |
0x38 | unknown | unknown | unknown | |
0x3C | unknown | unknown | unknown | |
0x40 | int32 | GetArrayIndex | none | Get the index of this class instance in the global array. This will return 0 for abstract classes. |
0x44 | bool | IsDead | none | Find out whether this instance is dead. This is only used for "living" objects with a health. |
0x48 | void | Get3DCoords | int32* dst_xyz | Load 3D coordinates into dst_xyz. |
0x4C | void | Get3DCoords_var | int32* dst_xyz | Load 3D coordinates into variables, then into dst_xyz. This method is obsolete (use 0x48). |
0x50 | unknown | unknown | unknown | |
0x54 | unknown | unknown | unknown | |
0x58 | unknown | unknown | unknown | |
0x5C | void | AdvanceFrame | none | This is an updating routine, called every frame. |