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

Topics - subspark

#41
I wonder, now with the astounding popularity of the iPhone following the long awaited release of the Apple iPhone SDK, if we will see some kind of port to the device. I've got my hands on the SDK myself and it all seems very powerful yet surprisingly simple to work with. Do you think it is likely that somebody would actively take on an iPhone port of the famous AGS Engine? What are your thoughts on this Ladies & Gentlemen/Chris?

Cheers,
Paul.
#42
Not that this has happened in a while, but a few times I've been forced to investigate outages on google and americangirlscouts before with little success. Would it be too much to ask if the adoring community could receive email updates on potential outages and scheduled server changes.
It would be really convenient.

Thanks,
Paul.
#43
I've tried everything to get speech to play.
The following code won't play speech:
Code: ags
cEgo.Say("&5 Are you a bug?");


Cheers,
Paul.
#44
I am making an elevator and want the character to lock his view and slide down through the floor with a platform.

I have tried the following but the movement appears jerky and inconsistent.

Code: ags
function region2_WalksOnto()
{
  int y;
  hMetalPlate.Enabled = true; // turns on platform hotspot
  cEgo.Walk(205, 105, eBlock); // walks to center of platform
  cEgo.FaceLocation(205, 200, eBlock); //faces the camera
  cEgo.Baseline = 5; // character can now appear to be going through the hole in the floor
  oElevator.SetView(13);
  oElevator.Animate(0, 0, eOnce, eNoBlock, eForwards); // elevator object slides down
  cEgo.SayBackground("&2 WHOA!");
  while (y<45) {
    cEgo.LockViewOffset(EGOIDLE, 0, y);
    y++;
  }
  Wait(50); // waits at bottom for a bit
  oElevator.Animate(0, 0, eOnce, eNoBlock, eBackwards); // elevator object slides back up
  while (y=45) {
    cEgo.LockViewOffset(EGOIDLE, 0, y);
    y--;
  }
  cEgo.Baseline = 0; // returns walk behind to normal
  cEgo.UnlockView();
}


What am I doing wrong?

Cheers,
Paul.
#45
Advanced Technical Forum / Footstep Sounds
Sat 03/05/2008 07:11:07
I am trying to set the character's footstep sounds to a different set based on what room the player is in.
I can't get the code to work and keep getting stuck with nested functions. How do I write this?
This is what I have so far.

Code: ags

function room_Load() {

//===== FOOTSTEP SOUNDS =====//

// WALK DOWN
ViewFrame *walkdown = Game.GetViewFrame(EGOWALK, 1, 1); 
walkdown.Sound = 6; // idle footstep
walkdown = Game.GetViewFrame(EGOWALK, 1, 4);
walkdown.Sound = 5; 
walkdown = Game.GetViewFrame(EGOWALK, 1, 10);
walkdown.Sound = 5;

// WALK LEFT
ViewFrame *walkleft = Game.GetViewFrame(EGOWALK, 2, 1);
walkleft.Sound = 6; // idle footstep
walkleft = Game.GetViewFrame(EGOWALK, 2, 6);
walkleft.Sound = 5;
walkleft = Game.GetViewFrame(EGOWALK, 2, 12);
walkleft.Sound = 5;

// WALK RIGHT
ViewFrame *walkright = Game.GetViewFrame(EGOWALK, 3, 1);
walkright.Sound = 6; // idle footstep
walkright = Game.GetViewFrame(EGOWALK, 3, 6);
walkright.Sound = 5;
walkright = Game.GetViewFrame(EGOWALK, 3, 12);
walkright.Sound = 5;

// WALK UP
ViewFrame *walkup = Game.GetViewFrame(EGOWALK, 4, 1);
walkup.Sound = 6; // idle footstep
walkup = Game.GetViewFrame(EGOWALK, 4, 4);
walkup.Sound = 5;
walkup = Game.GetViewFrame(EGOWALK, 4, 10);
walkup.Sound = 5;

// WALK DOWN-RIGHT
ViewFrame *walkdownright = Game.GetViewFrame(EGOWALK, 5, 1);
walkdownright.Sound = 6; // idle footstep
walkdownright = Game.GetViewFrame(EGOWALK, 5, 5);
walkdownright.Sound = 5;
walkdownright = Game.GetViewFrame(EGOWALK, 5, 11);
walkdownright.Sound = 5;

// WALK UP-RIGHT
ViewFrame *walkupright = Game.GetViewFrame(EGOWALK, 6, 1);
walkupright.Sound = 6; // idle footstep
walkupright = Game.GetViewFrame(EGOWALK, 6, 5);
walkupright.Sound = 5;
walkupright = Game.GetViewFrame(EGOWALK, 6, 11);
walkupright.Sound = 5;

// WALK DOWN-LEFT
ViewFrame *walkdownleft = Game.GetViewFrame(EGOWALK, 7, 1);
walkdownleft.Sound = 6; // idle footstep
walkdownleft = Game.GetViewFrame(EGOWALK, 7, 5);
walkdownleft.Sound = 5;
walkdownleft = Game.GetViewFrame(EGOWALK, 7, 11);
walkdownleft.Sound = 5;

// WALK UP-LEFT
ViewFrame *walkupleft = Game.GetViewFrame(EGOWALK, 8, 1);
walkupleft.Sound = 6; // idle footstep
walkupleft = Game.GetViewFrame(EGOWALK, 8, 5);
walkupleft.Sound = 5;
walkupleft = Game.GetViewFrame(EGOWALK, 8, 11);
walkupleft.Sound = 5;
}


Any help would be hot.

BTW is the AGS server hosted in Iran or something? The server is as slow as a crippled rock.  ???

Cheers,
Paul.

Edit:
ARGHH! This was supposed to go in the beginner's thread. Sorry :-[.
#46
From a technical standpoint, has anyone tried converting their AGS game to SCUMM C and what challenges lie ahead for somebody willing to try?

I'm hoping to test the two systems together with a friend to see how much work is invloved. Has anyone done this?

http://alban.dotsec.net/Projects/ScummC

Cheers,
Paul.
#47
Would it be possible for a future version of AGS to support built in transition views?
I noticed that the walking views MUST have one of the idle (standing) sprites in frame 1 for the animation to work properly in-game. While this seems a little 'backwards', Chris has suggested that theres not much gain to be had by changing the way this works.

(However if transition views were indeed implemented, then I imagine this step would become unnecessary.)

The resulting view structure:

Views:
 
  • Idle: stationary and/or blinking character
     
  • Walking: walking frames only
     
  • Transition: frames that are called in sequence before walk views are played. (smooths out transition from standing still to first walking frame)

    I think this would be a suburb feature for AGS 3.0.

    Cheers,
    Paul.
#48
Advanced Technical Forum / Foot Planting
Sun 02/12/2007 20:44:20
Is there any way to allow non uniform movement for a character in any given direction?

For example:


Note:
  • The blue lines indicate the exact chunk of movement required to get the feet to plant in AGS. It is non uniform.
  • The green border is the actual bounds of the sprite. The square size allows for a wide range of movement in a predetermined space.
  • The feet plant perfectly as desired in the engine.
  • There is a pattern in the blue lines because the same animation is played twice to lengthen the walkcycle.

    Is there any way to do this besides Chris adding a foot plant feature of his own?

    Cheers,
    Paul.
#49
Dear AGS'ers, AGS is in need of a decent general purpose smooth scrolling module. At first I though scrolling the viewport would be easy, it wasn't. I had to visit several topics in order to get a specific and messy solution. The reality is, we all need a module that can be activated in room scripts for introductions and cut scenes.

A simple line like:
Code: ags
ScrollViewport(left,easing, blocking, 91 pixels);

or:
Code: ags
ScrollCharacter(up,easing, blocking, 12 pixels);

even:
Code: ags
ScrollGUI(up right,easing, blocking, 20 pixels);


...should give an indication as to the simplicity and control needed.

Can somebody please put the whole scrolling thing to rest with a decent module for the new AGS 3.0?
With all due respect to Chris, simple 'one line' control over scrolling could have been a standard AGS feature a long while ago, but it's now come time for the community to do it ourselves.  :)

Anyone keen?

Cheers,
Paul.
#50
Hi CJ, I made a small game while I was in Italy in AGS 2.8 beta 7 or 8. It used to run fine and when I tried it in AGS 3 beta 1 it used to spit errors out on compile. Now that RC1 is avalible I decided to test it and to my suprise it loaded the game and compiled. Problem is, if I run the game and click on anything with anything but the walk mode it crashes. Oddly enough it doesnt seem to do this when I examine talk to or interact with the ticket booth, which I set up intentionally for testing inventory scroll arrow functionality.

Here is the crash dump it spat out. I hope its not rewrite time.
http://www.shuugouteki.net/paul/Development/CrashInfo.3.00.960.dmp

Many cheers,
Paul.
#51
Back in 2005 in this thread:
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=18492.0
Chris, you said:
QuoteUnfortunately it's not that simple. VS only supports the WinCE for .net projects, not C++ projects, and porting AGS to .net really isn't a practical task right now.

Now that AGS uses the .net platform would this be as simple as it was originally made out to be?
I think the ability of running our own games our PDA's would be a refreshing change. PDAs are more powerfull now than in 2005 too.

I'm totally clueless here CJ. Could you enlighten me as to if this is now possible and worth moving forward with?

EDIT: Damn! I forgot to change the subject of this thread to something more specific. Sorry guys. (done)

Cheers,
Paul.
#52
How do I stop my DialogGUI from pausing my object animations? I have a burning fire in the background in a room where you can speak to somebody. Every time the dialog options display, it pauses the fire animation. Argh!  :-\

Cheers,
Paul.
#53
I am trying to make my code more efficient in the sense that when the mouse is moved over a hotspot, it's corrosponding icon (oWhatever) is faded in. Problem is, I can't figure out how to tell the game that an object belongs to a hotspot and that when the mouse is over one, to fade the correct one in.

Here is a snippet from the room code that I want to make part of the global script to save me having to set up each hotspot with each object tediously.
Code: ags
function room_a() {  // Set the icon of the hot/obj/char when cursor hovers over it
  // script for room: Repeatedly execute
  Hotspot *theHotspot = Hotspot.GetAtScreenXY( mouse.x, mouse.y );
  if (GUI.GetAtScreenXY(mouse.x, mouse.y) == null ) { // If there is no GUI visible,
    if (Hotspot.GetAtScreenXY(mouse.x, mouse.y) == hOdddevice) { // If the mouse is over the odd device hotspot,
      FadeObjectIn_NoBlock(oOdddevice,0,-20); // fade the hotspot's icon in.
    }
    else if (Hotspot.GetAtScreenXY(mouse.x, mouse.y) == hTalldoor) { // If the mouse is over the tall entrance hostpot,
      FadeObjectIn_NoBlock(oTalldoor,0,-20); // fade the hotspot's icon in.
    }	
    else if (Hotspot.GetAtScreenXY(mouse.x, mouse.y) == null) { // If the mouse is over nothing,
      FadeObjectOut_NoBlock(oOdddevice,100,-20); // Fade the Odd Device icon out.
      FadeObjectOut_NoBlock(oTalldoor,100,-20); // Fade the Tall Door icon out.
    }	// Do the same for all hotspots/objects/characters you use in this room.
  }
  else if (gInventory.Visible == true) { // If the inventory GUI is visible, ignore hotspots/objects/characters.
  }
}


Here is some psuedo code that gives an impression of what I want to acheive:
Code: ags
function repeatedly_execute() {
  // put anything you want to happen every game cycle here
  Object*oHotspotIcon=Object.ForHotspotAt(mouse.x, mouse.y); // The hotspot's icon is an object that can be tied with the hotspot.
  if (gInventory.Visible == true) { // If the inventory GUI is visible, ignore hotspots/objects/characters.
    if (GetLocationType(mouse.x,mouse.y)==eLocationHotspot) {
    }
    else if (mouse.x > 300) { // If mouse moves off the right hand side of the Inventory GUI, fade it out.
      FadeGuiOut_NoBlock(gInventory,100,-15);
      FadeGuiOut_NoBlock(gInventoryback,100,-15);
    }
    else if (mouse.x < 20) { // If mouse moves off the left hand side of the Inventory GUI, fade it out.
      if (mouse.y < 140) {
        FadeGuiOut_NoBlock(gInventory,100,-15);
        FadeGuiOut_NoBlock(gInventoryback,100,-15);
      }
    }
    else if (mouse.y < 10) { // If mouse moves off the top of the Inventory GUI, fade it out.
      FadeGuiOut_NoBlock(gInventory,100,-15);
      FadeGuiOut_NoBlock(gInventoryback,100,-15);
    }
    else { //If the mouse is over a hotspot, fade in the corrosponding Icon.
      if (GetLocationType(mouse.x,mouse.y)==eLocationHotspot) {
      FadeObjectIn_NoBlock(oHotspotIcon,0,-20);
      }
    }
  }
}


Completely non-working code, perhaps ridiculous to some, however if some of you get what I am trying to do, could you give an example of how to achieve this?
Thanks in advance, guys.

Cheers,
Paul.

EDIT: DARN! I posted this in the wrong forum. This ain't so beginner I don't think. Can a moderator please move this thread to the Technical Forum. Thanks.
#54
How would I go about this?

My pseudo code:
Code: ags
function repeatedly_execute() {
  // put anything you want to happen every game cycle here
int hotspot_ANY=GetHotspotAt(mouse.x,mouse.y);
  if (IsGUIOn(1)==true) {
  hotspot_ANY.Enabled = false;
  }
  else {
    hotspot_ANY.Enabled = true;
  }
}


Problem is, '.Enabled' obviously can't be applied to integers, naturally, and I'm not sure what property I need to define hotspot_ANY under. It's not int and string doesn't work either.

Cheers,
Paul.
#55
Advanced Technical Forum / Room Wrap Module
Tue 25/09/2007 06:25:49
Is anybody able to design a module for wrapping scrolling rooms like this? Think the Nexus in the LucasArts classic 'The Dig'.
In case anyone hasn't ever seen the room or played the game:
http://www.shuugouteki.net/paul/Images/nexus.gif

In the Dig resource files the room background graphic had a reasonably short repeat buffer however I chopped that off as I don't believe it would be necessary in AGS. It may have been a workaround in the old SCUMM system back when the game was being made.

Cheers,
Paul.
#56
Is there any way to change the cursormode if you right click in an inventory area? Infact is it possible at all to RunScript on an inventory area?

I'm using the default template and I want to use right click to perform
Code: ags
mouse.Mode = eModeInteract;
mouse.UseModeGraphic(eModePointer);
instead of the arrow button. (Think Sam & Max)

I've experimented with the following to no avail:

Code: ags

#sectionstart invCustomInv_Click  // DO NOT EDIT OR REMOVE THIS LINE
function invCustomInv_Click(InvWindow *control, MouseButton button) {
   if (button == eMouseRight) {
      if (player.ActiveInventory != null) {
          mouse.Mode = eModeInteract;
          mouse.UseModeGraphic(eModePointer);
      }
  }
  else {
  }
}
#sectionend invCustomInv_Click  // DO NOT EDIT OR REMOVE THIS LINE


Any ideas on how one would handle this?

Cheers,
Paul.
#57
For those of you who want a working LucasArts template for AGS 2.8 Alpha 7 please download here:
http://www.shuugouteki.net/paul/Development/FOY/LucasArts_FOA.rar

Compiled and tested it a few hours ago. It's a small test game I made about a month ago.
Forgive the intro.
Cheers.
#58
Advanced Technical Forum / Glitchy Scrolling
Tue 08/05/2007 05:15:45
Dear AGSers',

Have you ever noticed that scrolling scenes are very jerky?
It seems the scrolling is based on character position rather than where the mouse clicked.

While this may be a good thing, is there some way, CJ, to average out the scroll speed when a character moves through a scrolling scene?

Up until now scrolling has always looked awkward.



Cheers,
PW.
#59
Hi all. I'm working on a DiG/Sam & max Style interface where you click a little icon in the bottom left corner for a popup inventory to display. The problem is I have a grid for the inventory items however the fill clor is black and I want the fill color to be 70% transparent. For this I have set up 2 GUis, one is the Inventory (with bitmap grid and icons) which has a zOrder of 2 and the other is the Inventory Backboard with a zOrder of 1
I'm using FadingThingsNonBlocking to afde in the two GUis however only one draws itself depending on which gui was told to fade in first.

For example:
Code: ags

string buffer;
if (interface == ACTIONS) {
//	Inventory GUI
//-----------------------------------------------------
if (button == 0) {
		FadeGuiIn_NoBlock(gInventory,0,-15);
}                              FadeGuiIn_NoBlock(gInventoryback,30,-15);


Any ideas?

Cheers,
Sparx.
#60
I am making a Dig/Sam & Max style GUI and can't for the life of me figure out how to disable all and any hotspots in any room while my Inventory GUI is visible.

It is set up so that you click a little button in the bottom left corner of the screen and an inventory GUI pops up.

My problem is this: With the Inventory GUI activated, the underlying hotspots behind this GUI are still active when the mouse moves over them.

Ideally once the player has chosen an inventory item for use with the hotspots in the room, he/she moves the mouse off to the side and the hotspots are active again with the inventory item as the cursor.

Any ideas?
Cheers.
SMF spam blocked by CleanTalk