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 - quixotecoyote

#1
If I grandmother played adventure games I'd switch to her ginkoba...
#2
You may want to start on something easier.  I have a couple really interesting ideas, but I'm making a traditional game first to (among other reasons) familiarize myself with the program.
#3
I wondered the same thing.  I changed SetMusicMasterVolume to 5 and heard no difference, but it's such a counterintuitive position I assumed my hearing was just off that day.
#4
It's probably easier just to set the zoom level for the walkable area than to set manual scaling, unless he's got other sprites he doesn't want scaled.
#5
[qupte]p.s. just in case you repost it for someone more n00b than me, make sure you edit your "doorlocked = false:" colon into a semicolon  Grin[/quote]

Oops   :-[


And yeah, using an open door object that  isn't initially visible and then turning it visible in the same script that unlocks the door would be the easiest way to do that.
#6
Welcome to the wonderful world of 'if' statements and variables.

Open up your room script.

at the top put

Code: ags

bool doorlocked = true;


This will set a true/false variable that keeps track of if the door is locked or not.

Now open up the interaction menu for the door.
Set a run script action under use inventory item on object.  (or use inventory item on hotspot if you have the door as a hotspot).

Now you write an if statement:

Code: ags

if (cEgo.ActiveInventory == ikey) {
  doorlocked = false:
  Display ("The door is unlocked");
  cEgo.LoseInventory(ikey);
}

If you are using the key, this sets the doorlocked variable to false, shows a message, and disappears the key.

Next go to the interaction editor and set a run script action under interact with object (or hotspot as the case may be) and put two if statements.
Code: ags

if (doorlocked == true) {
 Display ("The door is locked");
}

else if (doorlocked == false) {
  cEgo.ChangeRoom(x);
}

If the door is not locked, you move to another room.
If the door is locked you get the message and nothing else happens.
#7
Yeah, I was referring to the time and effort involved to make it look nice. 


in 2.72 the max specs are Hi-color 16 bit and 800x600 resolution.  I've never played a game with 800x600, but the 640x400's move around with no graphics slowdown.
#8
Anything that can fit into 800 x 600 resolution can be in your game.

Sky's the limit!

eta: Although once you start working on it, you will realize that extra-special graphics are a curse as well as a blessing, especially on a longer game.
#9
Well thanks to both of you.  If I need a longer conversation, now I know how to do it.
#10
I haven't messed with arrays yet. 

Would you have to name your timer array like:

timer bkgtalk[100]

or does

timer[100] automatically increase the timers available.


The only odd artifact I'm finding with this is that it's screwed up where dialog appears for one of the guards.  Red and Girl are fine, but the Black guard's dialog appears in the center of the screen.  Not his SayBackground, just his dialog.



#11
Why bother messing with a whole new module if a short script can do what you want instead?
#12
This may be old news, but in case it hasn't been said before:

I was trying to get a group of guards to have a looping conversation in the background.  I wanted to be able to interrupt the conversation by speaking and have it resume when I stop.

I ran into the problem of all the characters SayBackground texts displaying at the same time.

I searched the forum, saw a lot of references to a speech queue module, but wondered if I couldn't script it more simply.

So at the top:
Quote
// room script file
Overlay *ovredguard;  //overlay for the red guard
Overlay *ovblackguard; // overlay for the black guard
Overlay *ovgirlguard;  //overlay for the female guard
import bool guardstalking; //importing the varible to see if they are talking or interrupted
bool backstart = true;  // the variable to make the conversation loop

and down in the repeatedly execute section

Quote
function room_c() {
  // script for Room: Repeatedly execute
     if ((guardstalking == true) && (backstart == true)) { //not interupted and starting from the beginning
          ovredguard = cTguardr.SayBackground("Blah");  //Red speaks into his overlay
          backstart = false;  //restart varible is shut off
          SetTimer (1, 120); // timer for the first speech is set
}
   if ((IsTimerExpired(1)) && (guardstalking == true)) {  //after done speaking
     ovredguard.Remove(); //Red's overlay disappears
     ovblackguard = cTguardb.SayBackground ("Oh yeah?"); //Black Speaks
     SetTimer (2, 120); //timer for this speech is set
   }
   
   if ((IsTimerExpired(2)) && (guardstalking == true)){ // same as above
     ovblackguard.Remove();
     ovgirlguard = cTguardg.SayBackground ("Yeah.");
     SetTimer (3, 120);
   }
   if ((IsTimerExpired(3)) && (guardstalking == true)) {// the timer for the last speech is done
     ovgirlguard.Remove();// the last overlay is removed
     backstart = true; // the restart variable begins the loop again
   }
   if (guardstalking == false) {//and if anything interrupts it, the loop is broken
     cTguardb.FaceLocation(0,200,eBlock);// any reaction to the interruption
          cTguardg.FaceLocation(0,200,eBlock);
          cTguardr.FaceLocation(0,200,eBlock);
}
   
}



I'm happy with it because it's simple and can be restarted with a minimum of fuss.

The only downside is you can only have a maximum of 20 lines of repeating conversation because of the timer limits.

Any suggestions on tweaking this?
#13
Since this has come to the top again, I'll make a couple points.

1. There are no KoF graphics in my game.  Not a biggie, but I wanted to clear that up.  I had mixed up which games I used as source material and had since gone back and straightened it out.  I think I said that right before I disappeared for a bit.

2. This is not a game intended primarily for mass distribution.  If anyone is curious about it I could maybe send them a copy and I was curious if putting a thread up here with it would be appreciated. So really, as far as this game goes I'm doing whatever I want with it.

3. It's about 1/5 done already and I'm not going to redo that much design now, considering the amount of time it took to edit and animate the graphics I used.

4. If I've still got the desire to do another game after this one, I'll probably do my own graphics, because I agree that the options are limited and the disjunct of styles, while manageable, is still suboptimal.

5. People who think this is illegal really need to look up US Fair Use Doctrine as eerything else aside, this is transformative.

6. Everything used is credited.


Nothing too important, just popped in for a tech question and saw this had floated back up.
#14
Thanks.

I've got a sketchbook filled cover to cover of attempts to improve and it's just not happening, so I'll do what I have to to produce the best I can.  I've got the bearing of what the values  are here, so I may not  be reading the thread to respond to further replies.  Feel free to post at me if you want though.
#15
Quote from: Ghost on Fri 12/10/2007 18:40:28
Quote from: quixotecoyote on Fri 12/10/2007 16:57:19
1. The substance of the use is transformative, not derivative.
2. Only an insubstantial part of any given work is being used.
3. No effect on the potential market of the original work
4. No commercial intent.

Thin ice that should be avoided. Because you could, on your fact, say that it is okay for me to use the character Lara Croft in an adventure  game of my own if I use only a few of her walkcycle frames (or, indeed, only her name) and release said game for free. Sounds pretty unlikely that nobody would object if I did, though.

I disagree that they are equivalent.  It seems that using the name Lara Croft would could theorhetically divert money from licensed Tomb Raider games, something my situation avoids.

I'm going ahead and making this regardless, as it's intended as a present for a specific person, but I wanted to get a feel for the sensitivities on this forum before I posted any of it in AGS Games in Production or Critics Lounge.  I know some people here have strong opinions about this and I'd rather not bother with creating flamewar threads.
#16
Hmm.  As far as the legality, my understanding is that under US law this would fall under a fair use exception as:

1. The substance of the use is transformative, not derivative.
2. Only an insubstantial part of any given work is being used.
3. No effect on the potential market of the original work
4. No commercial intent.

I realize ags is based out of the UK, laws may be different over there.


Do you really think I'd get KoF fans angry about the use of a background from the 2003 Kof?  It seems like an rather extreme prediction.

eta: Actually I checked what I had and I don't actually have any KoF rips.  some Street Fighter 2 and Monster Rancher 2, but no KoF backgrounds.  I wonder how I got that mixed up.
#17
Quote from: InCreator on Fri 12/10/2007 15:58:55
QuoteBesides, what's the difference between taking the backgrounds from the resources page and yanking them out of King of Fighters?

Take a look at both and ask again.
If that's what you intended to do, I seriously suggest not to.


Please don't be cryptic.  If there is something I need to know, please tell me what it is.
#18
Quote from: Radiant on Fri 12/10/2007 14:43:20
There are a few packs of free graphics available on the resources page. That might help.

I looked at those, but they weren't what I needed.

Besides, what's the difference between taking the backgrounds from the resources page and yanking them out of King of Fighters?

I'm slightly less than 1/5 of the way finished with the game.  Maybe when I get done I'll ask if anyone wants to do art for it, but I can't imagine anyone would want to invest that much time in someone else's baby.
#19
I lack any drawing skills, yet I wanted to make an AGS game.  So I took rips from old video games for background and object graphics.  The result is a mixed bag graphically, but I'm giving plenty of love to the story and scripting.  I've seen a few games get criticized for using ripped graphics.

Exactly how frowned upon is that here?
#20
Quote from: Ashen on Fri 12/10/2007 10:42:47
Also, since the functions now have relevant names (Room_Load, oDoor_Interact as opposed to room_a, object2_f, etc) it's actually far easier to find things purely in the script, without using the Events menu. I can't find a way to jump to a specific part of the Global script, though (as used to be in the 'Script' menu) - is that gone, or just not where I've looked?

Maybe it's wrong, but I had to smile at the death of the Interaction Editor...

<shrug>  Now I can stomach the loss without an issue, especially as you and Khris have reminded me that the core functions remain.

Eight months ago when I was deciding whether to write my game in AGS, seeing there was a shallow end to wade into first helped me start.
SMF spam blocked by CleanTalk