Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Monsieur OUXX

#3621
That'll come handy for me. I started writing similar stuff, but didn't have time to polish the result, while working on everything else.
#3622
Quote from: Crimson Wizard on Sun 20/06/2010 08:49:10
I tried to write my own "vector" module with "lighter" implementation (as mentioned above), and it seem to work nicely... what do I miss? if anything?

PS. BTW, I wrote 2 "classes" for user-friendly reading and writing of custom structs from/into String. I wonder, if you can find it a possibly useful contribution to your module?

Post what you have! :-)

PS: don't expect answers from Monkey, he just DOESN'T HAVE the Internet.  :)
#3623
Quote from: Crimson Wizard on Fri 18/06/2010 13:04:17
The whole code above is a screwed workaround which does not make much sense and has an effeciency close to zero. :P

Wow, you're harsh.
Assuming I understood it properly (the array of "Parent" objects is there only to temporarily instanciate Parents and then give them back to the pool), then it's pretty much the only way. Monkey is not to blame for that, it even allows him to do elegant things based on those ugly workarounds. The only thing that annoys me is all those copies and function calls, that, as you reminded it, are *so* slow.

That's exactly why I started writing AGSH in the first place: pass everything "by reference", and use only static functions, so that I can choose which one I want to call.

This has nothing to do with this thread, but I'm also starting to think I'll write a tiny pre-processor that will allow the use of the "inline" keyword (you know, that thing that doesn't make much sense anymore in C++).
#3624
monkey, you just couldn't resist  :D
You just COULDN'T! And just after a dramatic post saying "hey, I don't have the Internet, don't expect me to post ANYHTING, like, seriously, ANYTHING".  ;)

I think that's cool. Ars gratia Artis!

I have a question, though.
Correct me if I'm wrong. In your code sample, in order to be able to call the original version of "SetData" (the one originally defined for "Parent"), you actually store copies of all the parents. However, don't the chidren contain their own value of the the member "data"? (if not, then I'm too rusty with AGS script).

Why doing all this duplication, instead of just keeping one and only instance of a "Parent" object that you'd call whenever you want to borrow its "SetData" ?

Oh, wait a minute, is it because you're afraid you can't predict if several calls to this method will be made simultaneously, and therefore you fear a collision of all those calls on your poor, single Parent instance? And to solve that you keep a pool of Parents where you can pick any available Parent?



#3625
General Discussion / Re: Worst Website Ever?
Fri 18/06/2010 09:39:51
Quote from: Esseb on Thu 17/06/2010 20:33:26
http://www.arngren.net may not be worse, but unlike the site you linked to it's not made for a laugh.

That one amazes me, because it's not THAT easy to code a page that will compact all the information that way, like it is in the ads pages of tabloids!
#3626
Quote from: RickJ on Fri 18/06/2010 06:16:14
What will the tether be attached to?

HE made it quite clear: The tether must be considered as a cable, which very nature makes it an electromagnet that interacts with Saturn's atmosphere; the Force created makes it float.
#3627
Your problem is super complex, both the modelling and the gathering of the parameters for the actual calculations.

For example, you say that the hook receives a stronger drag than the satellite because it's lower in the atmosphere. Without that hypothesis, you'd just model the satellite as dot. Instead, you already need 2 dots. But then, it means you assume the pipe going from the satellite to the hook is rigid. I hope you do! Otherwise it's 2, or 3, or 10, or 100 dots you'll need in your model.

2/ Each dot is submitted to basically 3 forces: (1) the gravity, always oriented towards the center of Saturn, (2) the drag, always oriented in a direction opposed to the movement, and (3) its propelling force (additionally, the gravity will result in the so-called centrifugal force, which is only a mathematical artefact). You made the hypothesis that the altitude actually alters the drag... So you'll need a formula to calculate the drag depending on the altitude. Wow! Your problem was already a complex mechanics model, now it include thermodynamics!

3/ The satellite is propelled not by an engine, but... by a magnet! WTF? And the force it generates depends on the altitude! --> Do you have the forumla and the values to feed it?

4/ So the drag depends on the altitude... And you say that the more powerful the magnet is, the more it changes the drag! And this magnet is not only the satellite, but actually the whole pipe! (which could be made of several points, as described in 1/) I hope for you there is a linear relation between all those functions, otherwise you'll need a supercomputer to solve the equations!

5/ "would this be sufficient to prevent orbital degradation?" Well, once again, do you have the formula for your tether's magnetic force? And the ones for Saturne? And do assume that the magnetic force generated by Saturne is constant around its surface? (especially towards the magnetic poles?)

6/ "I'm not sure just how much drag and momentum loss we're talking about" Same thing. It all depends on the hypothesis you take (all of the above) and values you choose to feed the formulas. What is the mass of each item, etc? If you change any of those parameters, then the drag could become too high, or the skyhook could tip (as you mentionned) or go away in space, etc. Anything is possible! Finding the bounds of each equation required you to write them down, and to calculate it all.


IF I'm writing all that, it's not to discourage you.. It's actually a very interesting idea. It's just that, at the same time you throw many ideas, with plenty of details, but without choosing your basic start hypothesis. You need a clear (and simple) model, and you'll definitely need actual values for all the parameters before you'll be able to answer any of those questions.

#3628
Quote from: Khris on Thu 17/06/2010 10:03:25
There's also the panorama module.

Yep, the PANORAMA MODULE does it for you. :-)
#3629
Quote from: kaputtnik on Wed 16/06/2010 19:42:55
"Six bears (...) were harmed"

Aren't pandas VERY close to bears? ;-)
#3630
Quote from: Ali on Sat 06/11/2004 01:28:24
I love any Myst-esque puzzles where you have to decode an alphabet or number system or memorize symbols or noises or make a chart...

Well, to be honest, for some time I tried to understand the alphabet based on the letters drawn on the wall all around the class room in Myst III. I listed all of them, and then tried to understand their meaning by using the text on the blackboard.

Luckily, I eventually remembered how strict and consistent Myst's creators are, and they wouldn't have used the cheap trick of transcripting the Latin alphabet (26 letters) into the same alphabet, but with different symbols. It wouldn't make sense in that imaginary universe. Especially after you decipher the numeric alphabet, which is not 10-based.

So I could continue playing, being absolutely sure that I had been following a wrong trail (it's always so good when you KNOW that something is not the right solution, instead of those random puzzles where you're never sure if it *might* work).
#3631
Quote from: cuiki on Sat 05/09/2009 00:09:15
My favourite type of puzzles are those that make you think and in which you got to have a pencil and a piece of paper somewhere near you to write down all the clues and then thought them out on the paper. I really enjoyed playing Myst (...)

Oh yes, those Myst puzzles, where you NEVER guess, ALWAYS (kind of) suffer to find the solution, and ALWAYS realize how much sense it actually made.

I played Myst I, II, III, IV, and the only puzzle I guessed was in Myst II or III: the giant rotative silo where you have to line up the upper, middle and lower cylinder in order to make the circuits drawn on the wall connect or something. I followed my intuition and eventually solved it, but never really understood what I was doing.

Also, I thought that the puzzle in Myst III where you have to rotate individually all 9 parts of the giant looping ramps to create a consistent circuit for the ball was incredibly cruel. From the beginning I thought: "OK, I feel like I should make something out of it", but at the same time I couldn't believe the programers would have inflicted that to the player, since you can't really have a clear view of the circuit below you. Well, it turns out they did!

Finally, my personal feeling was that the puzzle in Myst III where you must find-the-proper-balance-for-the-lever-ramps-positionning-the-ball-on-the-catapult was flawed. Did anyone else feel like the balance was incorrect, and was contradicting the small example model that you could find in Atrus' lab?
#3632
Every day is a new challenge to resist posting an unnecessary comment on the "Maniac Mansion DOTT style" thread, like "I can't wait for the game to be released". But, oh, god, I CAN'T WAIT FOR THE GAME TO BE RELEASED!
#3633
Bear attack, eh?
So why is your squad labelled "attacker" and the bears band labelled "defender" ?
It's pure bears mistreatment. It has to stop.

I propose the label "no animals were harmed during the making of this point n' shoot the bear".
#3634
Yes, resizing is destructive.
Why don't you store the bigger version, but then downsize it in the last moment, just for the preview?
#3635
Quote from: Crimson Wizard on Tue 15/06/2010 16:50:28
(...)

I didn't mean to start a theoritical discussion.
But to address your points:
- Yes, you can add extenders to other objects... But then you have to carry around the data of those objects, even when you just want an empty container.
- Yes, C++ doesn't have a generic type "Object"... But alllows you to create your own. In AGS, you *have* to use the existing types when it comes to extenders.


EDIT: Cancelled my request, but for other reasons. It's really not critical.
EDIT: I'm not making any sense, I'd better shut up.
#3636
An object type "Object", that does nothing. (not an Object as in "Object in the room's scene" - I mean an object as in "the common Object type that's in every OOP).

This would allow to add extender functions to something else than "String"


EDIT: I'm not making any sense.
#3637
Quote from: Andail on Mon 14/06/2010 22:33:11
it would be swell to see all the trophies in one thread

+1!
#3638
Quote from: Crimson Wizard on Mon 14/06/2010 15:45:05
Chris Jones knows better...  :P

Chris! Where did I lose my wallet last week? And WHY won't you tell me!?! Why do you keep repeating '42'? Are you my father? Did you create AGS with the cruel goal of torturing nerds? Don't you know that great power brings great responsibility?
#3639
Quote from: Crimson Wizard on Mon 14/06/2010 14:23:20
Quote from: Monsieur OUXX on Mon 14/06/2010 13:54:01
So, in the end, how does it work in AGS?

Quote from: Pumaman on Sun 13/06/2010 22:54:04
This is a limitation of AGS's support for #define.

It doesn't answer my question, sir, with all due respect, sir.  :)
What will cause an error? What won't? How can I reproduce the issue in advance in my not-so-powerful brain in order to anticipate its occurrence?  :)
#3640
So, in the end, how does it work in AGS?
Does the pre-compiler replace "A" with "1" even in the statement "#define B A"?

I don't think so, otherwise the error {int b[ B ];" error is "Array size must be constant value"} would not happen. Does that mean that AGS's pre-complier does not replace macros when they are in other macros' definitions?
SMF spam blocked by CleanTalk