Difference between revisions of "0x0002"
(Auto-inserted from WakkaWikki) |
|||
| (8 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| − | |||
| − | |||
For those familiar with TS1 modding, there is nothing new here. This page is designed primarily for the newcomer who does not have any previous experience with SimAntics. | For those familiar with TS1 modding, there is nothing new here. This page is designed primarily for the newcomer who does not have any previous experience with SimAntics. | ||
| + | ==Overview== | ||
This is by far the most used BHAV operation and, therefore, one of the first an aspiring behavioral modder should learn. | This is by far the most used BHAV operation and, therefore, one of the first an aspiring behavioral modder should learn. | ||
At its heart, Expression is a fairly simple instruction, taking two items and performing a logical comparison or mathematical calculation with them. | At its heart, Expression is a fairly simple instruction, taking two items and performing a logical comparison or mathematical calculation with them. | ||
| + | ==Structure== | ||
The structure (with the exception of the as yet unknown bytes) is also fairly simple. We will use the following example instruction to explore the structure further: | The structure (with the exception of the as yet unknown bytes) is also fairly simple. We will use the following example instruction to explore the structure further: | ||
| − | + | aa, aa, bb, bb, ??, oo, AA, BB | |
| − | + | xx, xx, xx, xx, xx, xx, xx, xx | |
| − | + | ||
| − | + | Example: | |
| − | + | ||
| − | + | ||
| − | + | 00, 00, 00, 00, 00, 05, 19, 09 | |
| + | 00, 00, 00, 00, 00, 00, 00, 00 | ||
| − | + | ;xx | |
| − | + | :''unused'' | |
| − | + | ;oo | |
| − | + | :the [[Operator]], which tells the game which mathematical/logical operation to perform | |
| − | + | ;AA | |
| − | + | :the first (or left-side) [[Operand]] | |
| + | ;aa | ||
| + | :argument for the first operand | ||
| + | ;BB | ||
| + | :the second (or right-side) [[Operand]] | ||
| + | ;bb | ||
| + | :argument for the second Operand | ||
| + | ;?? | ||
| + | :was never completely understood in TS1. Either it is some type of flag or is unused. | ||
So in our example instruction: | So in our example instruction: | ||
| − | the Operator is | + | *the Operator is 0x05 (assign to) |
| − | the first Operand is | + | *the first Operand is 0x19 (local variable) |
| − | which has an argument of | + | *which has an argument of 0x00 (numeric 0) |
| − | the second Operand is | + | *the second Operand is 0x09 (parameter) |
| − | which has an argument of | + | *which has an argument of 0x00 (numeric 0) |
| + | |||
| + | Our instruction would therefore be read as "local variable 0x0 := parameter 0x0". | ||
| + | In simpler terms, this means "the value for local variable 0x0 := the value listed in parameter 0x0" | ||
| + | |||
| + | =See also= | ||
| + | *[[Primitives]] | ||
| + | *[[SimAntics]] | ||
| + | |||
| + | {{OldWikiEntryCleaned}} | ||
| − | + | [[Category:Sims 2 Modding]] | |
| − | + | [[Category:Primitives|{{PAGENAME}}]] | |
| − | + | ||
Latest revision as of 17:24, 17 September 2012
For those familiar with TS1 modding, there is nothing new here. This page is designed primarily for the newcomer who does not have any previous experience with SimAntics.
[edit] Overview
This is by far the most used BHAV operation and, therefore, one of the first an aspiring behavioral modder should learn. At its heart, Expression is a fairly simple instruction, taking two items and performing a logical comparison or mathematical calculation with them.
[edit] Structure
The structure (with the exception of the as yet unknown bytes) is also fairly simple. We will use the following example instruction to explore the structure further:
aa, aa, bb, bb, ??, oo, AA, BB xx, xx, xx, xx, xx, xx, xx, xx
Example:
00, 00, 00, 00, 00, 05, 19, 09 00, 00, 00, 00, 00, 00, 00, 00
- xx
- unused
- oo
- the Operator, which tells the game which mathematical/logical operation to perform
- AA
- the first (or left-side) Operand
- aa
- argument for the first operand
- BB
- the second (or right-side) Operand
- bb
- argument for the second Operand
- ??
- was never completely understood in TS1. Either it is some type of flag or is unused.
So in our example instruction:
- the Operator is 0x05 (assign to)
- the first Operand is 0x19 (local variable)
- which has an argument of 0x00 (numeric 0)
- the second Operand is 0x09 (parameter)
- which has an argument of 0x00 (numeric 0)
Our instruction would therefore be read as "local variable 0x0 := parameter 0x0". In simpler terms, this means "the value for local variable 0x0 := the value listed in parameter 0x0"
[edit] See also
This article is imported from the old MTS2 wiki. It's original page, with comments, can be found at http://old_wiki.modthesims2.com/0x0002