Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
Quick Reply
Search this Thread
Fat Obstreperous Jerk
#26 Old 15th Nov 2008 at 12:08 PM
Quote: Originally posted by tunaisafish
I just found out about there only being 8 temps
I tried to edit your object and got errors when assigning to anything above temp7.
If for some bizarre reason you need to pass a ridiculously huge amount of values, it's time to start experimenting with arrays.

Grant me the serenity to accept the things I cannot change, the courage to change the things I cannot accept, and the wisdom to hide the bodies of those I had to kill because they pissed me off.
Advertisement
One horse disagreer of the Apocalypse
#27 Old 15th Nov 2008 at 12:27 PM
Arrays - great things in proper programming languages with a manual. Gobbledygook in Simantics via SimPE

"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Fat Obstreperous Jerk
#28 Old 16th Nov 2008 at 12:04 PM
I've dabbled in them a fair deal in things like the Macrotastics shop-production for nonstandard production types, as well in Bathroom Uses you for caching purposes. Does SimPE even support it? I use Ye Olde SimPE, so I did it manually using documentation from Disasims and EAxis samples.

Grant me the serenity to accept the things I cannot change, the courage to change the things I cannot accept, and the wisdom to hide the bodies of those I had to kill because they pissed me off.
One horse disagreer of the Apocalypse
#29 Old 16th Nov 2008 at 12:13 PM
Well SimPE doesn't ban arrays - and it parses the array commands into text in as far as it knows about them. But I wouldn't say it was exactly "supportive" lol.

"You can do refraction by raymarching through the depth buffer" (c. Reddeyfish 2017)
Don't ask me, I just code
#30 Old 21st Nov 2008 at 3:06 PM
Tuna -- thanks! Those FFs have always been a puzzle.

What I've understood is:
Quote:
When calling a BHAV,
FF FF FF FF FF FF FF FF
00 00 00 00 00 00 00 00
is a special value, as suspected, but doesn't mean "null arguments", it means "populate the parameters from somewhere else, starting with the temps, at least most of the time, as far as we can tell". Roughly. In brief: "Use Temps".

The ModFather
retired moderator
#31 Old 21st Nov 2008 at 8:00 PM
Peter, are you quoting yourself?
Also the "starting with the temps" makes me think that there may be other sources for the values to be copied in the Params... What sources may they be? Global variables? Values read from "Me" (i.e. the interacting sim)? Anyway, I can't think to one single case where those values (Temps, Globals, sim's attributes) wouldn't be accessible using the standard ways (e.g. Param0 := Temp0)...

I've finally started my Journal. Information only, no questions.

My latest activity: CEP 9.2.0! - AnyGameStarter 2.1.1 (UPD) - Scriptorium v.2.2f - Photo & Plaques hide with walls - Magazine Rack (UPD) - Animated Windows Hack (UPD) - Custom Instrument Hack (UPD) - Drivable Cars Without Nightlife (UPD) - Courtesy Lights (FIX) - Custom Fence-Arches - Painting-TV - Smarter Lights (UPD)


I *DON'T* accept requests, sorry.
Slippery When Wet
Original Poster
#32 Old 22nd Nov 2008 at 12:13 PM
Yes Peter, that's roughly, briefly what we know

I was going to wait until I'd checked some more before bothering you about updating SimPE.
Just checked some more, so it's a bit less rough, and the code you wrote last time is still good :D
If you can change the string 'unknown operands' to 'Use Temps' - fix done.


I modified Numenor's test object and plugged in the lines where kill=1 from the old truth table.

[PHP]Test NV X72 X1 X0 Kill P_out Method
2 0 ? ? 1 1 0x0F NAR -> NAR
3 0 ? ? 0 1 0x0F UNK -> Temps
4 1 ? 0 0 1 0x0F UNK -> Temps
5 1 1 1 1 1 0x0F UNK -> Temps
6 1 ? 0 1 1 0x0F NAR -> NAR
7 1 ? 1 0 1 0x0F NAR -> NAR
8 1 0 1 1 1 0x0F NAR -> NAR[/PHP]

I did 2 tests, one using 0's for the ?'s, and one using 1's. Identical results.
So the existing null arguments bit ('all zeros') is still correct.
Don't ask me, I just code
#33 Old 23rd Nov 2008 at 1:01 PM
Thanks Tuna. Just to confirm my understanding:
[php]Test NV X72 X1 X0 Kill P_out Method
3 0 ? ? 0 1 0x0F UNK -> Temps
2 0 ? ? 1 1 0x0F NAR -> NAR[/php]Node version 0:
Does this mean that you can put anything you like in the other bits of b[12] (apart from X0) and it'll still pass Temps (if X0 is 0)? What about FF? Can you put anything in b[8-15] other than zeros? Or must b[8-15] be zeros completely (like I expect)? Or b[8-15] all FFs?
[php]4 1 ? 0 0 1 0x0F UNK -> Temps
6 1 ? 0 1 1 0x0F NAR -> NAR
7 1 ? 1 0 1 0x0F NAR -> NAR
8 1 0 1 1 1 0x0F NAR -> NAR
5 1 1 1 1 1 0x0F UNK -> Temps[/php]Node version 1:
In test 4, was X completely zero? Did setting any of X72 make a difference? What about values elsewhere in b[8-15]? (Expected result: same as tests 6-8.)
In test 5, what values are in the rest of b[8-15]? Zeros? FFs?

(In your earlier testing, you showed that if the receiving BHAV had >8 args defined, it received nothing from the caller - or UNK, which now know are the Temps and, it seems, go regardless! What we don't know is what, if anything, can fill the remaining params in the called BHAV.)

Slippery When Wet
Original Poster
#34 Old 23rd Nov 2008 at 3:48 PM
Node version 0.
Yes, it doesn't seem to matter about the other flags of b[12]. I didn't try every combo, but when the '?' are all zero, or all 1 it gives the same result. So that includes the b[12] := 00 -> Temps, and b[12] := FF -> NAR.

Node version 1,
test 4, with b[12] set to 00, or FC, it still worked out to be Temps.

In all the tests, the remaining values of b[8 - 15] were all zeros.
I didn't test those this time as I remember they made no difference whatsoever last time, hence why I left them out of the original truth table.


Yep, still no idea what the values of param8+ are when 'Use Temps' is in effect.
The values in the logs of both Numenors and mine are very similar though.
0 n 0 -1 97 0 0
Value for n were from 0 to 7. The others never changed.

I've still got the test objects and logs. So if you or anyone else wants to test a hunch just say so and I'll zip them up and post them
Don't ask me, I just code
#35 Old 23rd Nov 2008 at 6:03 PM
Heh but that would mean running the game!

OK, I'll work on the basis you've explained above. Thanks!
Test Subject
#36 Old 4th Jun 2009 at 2:28 AM
Default comparison of Temp and param use between releases
Most of my modding experience has been in The Sims One, but the basic structure of the Simantics Language (which strongly resembles the old Single Command Timex/Sinclair Basic I started with)...lol...I noticed that the interchangeability of parameters and temps is default. If a parameter was actually input into the command call, then it would override the temp, and allow that temp to pass info also. (Such as entering a value of 25 for decreasing social in a social interaction. In routines like create baby, a temp value was passed with parents Object ID, but the create DNA routine read them as parameters. used this routine to create sperm and zygote objects to more accurately simulate natural conception.)

I try ta think but nuttin' happens!...Nyuk...nyuk
Page 2 of 2
Back to top