Quirky Questions

Started by theatrx, Sun 18/02/2007 06:41:18

Previous topic - Next topic

theatrx

I didn't know exactly where to post this but the Pumaman suggested that I post one question to ask for input.

That question is...

1st)Ã,  Couldn't there be a hybrid sort of gui, character, object thing that did all the things that these three things could do?Ã,  An Hthing

It could talk, it could have buttons, you could type to it, it could animate, it could have rollovers, it could go places and see new things... meet new people.Ã,  Maybe I'm dreaming.

I decided to ask a few more...

2nd)Ã,  Can timers be restarted in the same room?Ã,  Meaning once they've done their initital job... Can they be restarted to do another job?Ã,  That would sort of help the problem of not enough timers.

3rd) Along the timer thing... Can a timer... say it's going to time out at 400... Is there a way for it to do something when it hits 200?Ã,  That would mean we would have 40 timers instead of 20... or more if you could time for 100 or 300 or whatever in addition to that...Ã,  It seems to me that if you can say if timer =1... you should be able to say if timer =200.

4th) Transparencies... Ashen made a really cool module that fades in/out obj/gui/characters.Ã,  If this is possible with a module... couldn't it be possible with AGS?Ã,  Incremental transparency.Ã,  So, if a number on the timer is a certain number than the transparency is a certain number.Ã,  Right now, transparencies are sort of "blocky" unless you offset the timer.Ã,  Ã, It sort of goes along with the timer thing.Ã,  To me, a timer means every number between "400 and 1"Ã,  So every number is important.Ã,  Every number has a place. and a function... not just a place holder.Ã,  Ashen got me to understand something very basic and yet very important... almost profound.Ã,  A character or a number can be just that on face value... but it can also be an ascii figure and mean something totally different than its face value.Ã,  (But as Ashen says... that only happens with computers.Ã,  Does it?)

(5TH)Ã,  I'm really having a hard time having characters interact with one another.Ã,  The overlays are funky.Ã,  The blocking is funky.Ã,  I have to redraw them doing what they are doing (kissing) as separate characters... and yet together.Ã,  So, how do I get them to talk as separate characters if they are drawn together... other than place text here or there?Ã,  It's my problem.Ã,  I'm working with a new program.

6th) Dialog works great but could it be NoBlock inherantly? This would allow for stuff to happen while talking is happening.Ã,  Animation in the background, CEgo. moving... stuff.Ã,  Dialogs are interesting but I don't know if they hold the audience interest long enough.

This is definitely a note from me...
What I have found in live theater, is that the audience is more attuned to television, which means more stuff has to happen in a relatively short period of time. I should think this would hold true for the gaming industry as well... I guess we need more stuff.

(7th) This one is a weird on... As if they all weren't...
Can a np character actually move into a room visually (from room -1) (And withoutÃ,  appearing from no where? It seems to me that an NPC should be able to walk from room to room without affecting the room itself.Ã,  I think this was another module by Strazer ( who did an extraordinary job on this!)Ã,  But, you've got all these characters and I really don't think that we should have to rely on modules to get that character from room to room withoutÃ,  a module.

I have a room now that's just a holding room for characters (8 or 9 now) that are waiting to do something.Ã,  Seems sort of a waste of a room.Ã,  I've tried the transparent first image and that seems to work but there is still the blocking issue.Ã,  The player character can't seem to get 'around' the invisible character.Ã,  It makes them walk in a really weird way.

Okay, I'm done.Ã, 

Guys... all of you. Thank you for all your help.Ã,  There are forums, there are manuals, there is all sorts of stuff to help you through AGS but I have to tell you... When one man steps up and says " I think I know where your problem is"... It's that one guy or woman knowing that you're thrashed... and that your code is wrong but in an odd way...Ã,  It could be a ( or a ) or a ; or a : or a {}[]
It could be any number of things.

I have to tell you I went through the transparency thing today and the reference in the manual stated two different ways to state this...
Ex doesn't work... or at least I couldn't get it to work.

I think it was AJA that said "why don't you just say object[2]... That worked perfectly.Ã, 

Okay, I'm a dufe, and a newb, but I'm trying to learn.

And thanks everyone for helping me to learn.Ã, 

Puma, Ashen and Strazer... Damn!Ã,  I don't know how people figure this out without you.Ã,  It's not that it is not documented.Ã,  It's that the tut's don't tell you what to put what where.Ã,  Thank god for Ashen and Strazer... they are so forgiving about what goes where.

Puma, Supposedly there are eight constructs of time.
It's pretty cool that you're the center of one of them.
That's for us to figure which one, though.

Steve







Life is a banquet and most poor sonsofbitches are starving to death

monkey0506

#1
As for your questions about timers, I really do hate to whore off my modules after being told off by the mods about this...but this is specifically why I wrote the Timer module.

In regards to #2, you can (with my module) just call Timer.Set whenever you want to reset any given timer.

As for #3, you can use Timer.GetLoopsRemaining to find out how many loops are left for any given timer.

And as for #4...AshenLazarus's module works fine for this. But you seem to have some sort of modulephobia.

Regarding #7's "player character can't seem to get 'around' the invisible character" issue...how about the Character.Solid property?

Ashen

#2
QuoteCouldn't there be a hybrid sort of gui, character, object thing that did all the things that these three things could do?  An Hthing
Why? What would be the benefit of having a single type to replace pretty much every function in AGS? There can only be a very, very limited number of instances where you'd need a thing that can behave like a Character/Object/GUI, and those can probably be worked around with a little ingenuity. Lumping three quite specialised functionings together just seems like it'd lose a lot of organisatio, and cause a lot more clutter for no real benefit. (How would you seperate the Hthings that are mostly or solely Character-Things, from the GUI-Hthings and the Object-Hthings? Or would you still use the existing types for them and Hthings for ... what? Again - why do you need a hybrid type?)

2, 3 and to an extent 4 are (albeit a bit vaguely) answered on the front page of the BFAQ:
Quote
Please keep the following in mind. Most of our problems can be easily solved using variables. Need to change a hotspot's state in another room? Use variables! Need an object to be used only once? Use variables! You can either use Global Integers and Global Strings (look inside the AGS manual for these) or custom variables.
You can't check the progress of a Timer that uses SetTimer/IsTimerExpired - although if someone suggested that as a new feature, I'd support it - but you can make your own 'timers' using ints and a simple line or two of code, and check them at any value you want. A second varaible could store which 'run' of the timer you're one. This isn't really necessary if you're using int timers as you can have as many as you want, but you could use it along with IsTimerExpired to reuse the built in Timers:
Code: ags

if (IsTimerExpired(1)) {
  if (cycle == 0) {
    // First run stuff
  }
  else if (cycle == 1) {
    // Second run stuff
  }
  // Etc
}

(Although you don't seem to like modules, monkey's Timer one is pretty much ideal here - if he does say so himself ;) - because it's a lot of the int code done for you.)

Incremental transparency is actually pretty easy, just look up the Character/Object/GUI Transparency properties (no single link, unfortunately). However, AFAIK, it won't work with 8-bit sprites - could this be where you're having a problem?

Quote
Ashen made a really cool module that fades in/out obj/gui/characters.  If this is possible with a module... couldn't it be possible with AGS?
Unless I've been releasing modules in my sleep, you're probably thinking about THIS ONE, which is actually by Lazarus (although he does say I helped out). If I did release a fadeout module and forgot about it - can someone point me in the right direction?
And it totally IS possible with AGS, you just have to code it (see above) - that's all the module is, is the code done for you. (That's all any module it, when it comes down to  it. They can't add whole new functions, just use the existing stuff in ways others might not have thought of.)

Quote
So, how do I get them to talk as separate characters if they are drawn together... other than place text here or there?  It's my problem.
Getting characters to, for example, animate at the same time to that they kiss can take a little tinkering to get right, but is wholey possible. If you replace the two characters with a single 'overlay character' (that contains both animations) and make the original characters temporarily invisible (cEgo.Transparency = 100; cNpc.Transpareny = 100;) might be simpler, and that way the character speech should still appear in the right place. I'm not sure how that could be made easier, short of adding a function that does it automatically. However, the user would still have to configure it (set the view, maybe work out offsets if the characters where more that a few pixels away from each other, etc), and it just seems like a function that wouldn't necessarily be that much used. (I could be wrong, though - the animation side isn't really my thing.)

6, I'm right with you on this one. You can code your own Dialog system, but unless you enjoy the coding side, it's a lot of work for something that could be standard. (Hey, wait - is monkey's Scrolling Dialog thing up and running again yet?) CJ has said - repeatedly - that the dialog system needs a review, so I expect this is 'pending'.


7, you're right is a weird one. What's the alternative to having them 'appear from nowhere'? Have them appear behind a closed door, open the door and walk in? Then code it! Again, this isn't something you can't do without a module, the module is just someone that's done the coding for you - you can always do it yourself if you'd rather.
Why do you need a 'holding room' for characters? Room -1 acts in that capacity, and doesn't take up a crm.
I know what you're thinking ... Don't think that.

GarageGothic

Maybe it's just me, but reading theatrx' original post makes me feel like I was on drugs.

Ashen answered most of your questions, but to clarify:

7) If you want to make the character walk into a room, just place them in an off-screen area (i.e. cMan.ChangeRoom(2, - 30, 100)) and then have them walk into view (i.e. cMan.Walk(50, 100, eBlock, eAnywhere)). Using eAnywhere is important as there aren't any walkable areas off-screen.

Ali

Quote from: theatrx on Sun 18/02/2007 06:41:18
6th) Dialog works great but could it be NoBlock inherantly? This would allow for stuff to happen while talking is happening.Ã,  Animation in the background, CEgo. moving... stuff.Ã,  Dialogs are interesting but I don't know if they hold the audience interest long enough.

This is definitely a note from me...
What I have found in live theater, is that the audience is more attuned to television, which means more stuff has to happen in a relatively short period of time. I should think this would hold true for the gaming industry as well... I guess we need more stuff.

I don't endorse pandering to short attention spans, but I think an easy way to integrate 'acting' into dialogue would be very handy. I suppose that this Tracker entry is probably what I'm wanting. Short of that, having access to a few key functions, including Walk, from within the dialogue script would save a lot of dialog-requests.

SMF spam blocked by CleanTalk