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

#241
Hints & Tips / Re: Hungry
Fri 09/12/2005 08:48:58
Kajlin,
Spoiler
Take a look at the cereal packet.
[close]
#242
Hints & Tips / Re: Wheres My Hat Ma?
Thu 08/12/2005 19:59:12
Oct,
Spoiler
You need more water, what else can carry water?
[close]
#243
Hints & Tips / Re: Wheres My Hat Ma?
Thu 08/12/2005 15:59:47
Oct, Thanks!
Spoiler
There are red books on two of the book cases that both reveal secrets.
[close]
#244
Hints & Tips / Re: Wheres My Hat Ma?
Thu 08/12/2005 09:48:01
Oct,
Spoiler
I think you need to repeatedly look at one of the large windows.
[close]
#245
Getting stuck.

Most of the gamers I know have probably played about 2% of a point 'n click at some point in their lives, got stuck, frustratedly spent 15 mins randomly clicking all over the screen and given up.  People want to be entertained 100% of the time, take every other genre of game. There is always something going on, or something to be done. Adventure games need to know when the player is stuck and start to help them out somehow. I think the popularity of Lost in the Nightmare, arguably one of the worst 'adventure' games here, 2 or 3 puzzles? and 2 or 3 hours of simply clicking hotspots, yawn. Not to take from the game as an interactive horror movie it's top marks, great story, 100% linear game play, mindless interaction. That's what people want. Mindless entertainment. Adventure games are for people who want to use their brains a bit and that is what is wrong with the games, and also what makes them so good. Sorry for disjointed post but hope it gets my thoughts across.
#246
This probably isn't the official way but I usually use the 'Palette Index 0' option for transparency then 'grab entire image' and if you are in 16-bit with a texture with no pallete then then there are no transparent pixels. Work for me.
#247
Hints & Tips / Re: Crave
Tue 29/11/2005 22:51:06
lilac,
Spoiler
Click Here
[close]
#248
Competitions & Activities / Re: November MAGS
Thu 24/11/2005 14:59:39
I had a similar maze subgame in Where's Ma Hat Ma but that was only 8x8, and lots of people complained it was too hard! Anyway's yours is much better. You could easily expand this in to a full game. Shame the piano wasn't more functional though.
#249
Maybe the objects were covering the hotspots? then you would need to do
object[1].Clickable=false; for each block in first time player enter screen bit.
Anyway here is the altered version,
block 2

I've added a ResetBlock() function that you could call if you want to give the player a way to start again.

I tried to make the original match the behaviour of your example code. As I'm not working in AGS at present it's good to keep my hand in now and again.
#250
If nothing is happening I'd start by putting some Display("X"); commands in the code so you can see if that bit of code is being run or not. Starting with the hotspot interactions.

I tried the code and there was a wee bug in the while loop, you need to change the three 'Block+1' bits to 'b+1'.

Here's my test project Block demo

Only difference is I used interact object instead of interact hotspot, don't know how you want to trigger the blocks.
#251
Ok, I'll be a bit more explicit;

This code goes at the very top of the room script file
Code: ags

// room script file

#define BlockNumber 4

int Sequence[BlockNumber];
int BlockState[BlockNumber];
int SequenceIndex;

function PushBlock(int Block)
{
Ã,  Ã, if (BlockState[Block]==1)
Ã,  {
Ã,  Ã,  Ã, // Already pushed so do nothing
Ã,  Ã,  Ã, return; 
Ã,  }

Ã,  BlockState[Block]=1;
Ã,  //Animate Block moving forwards
Ã,  object[Block+1].SetView(4);
Ã,  object[Block+1].Animate(Block+1,3,eOnce,eBlock);

Ã,  if (Block==Sequence[SequenceIndex])
Ã,  {
Ã,  Ã,  Ã, //Correct order 
Ã,  Ã,  Ã, SequenceIndex++;
Ã,  Ã,  Ã, if (SequenceIndex==BlockNumber)
Ã,  Ã,  Ã, {
Ã,  Ã,  Ã,  Ã,  //Door opens. Put your door opening code here
Ã,  Ã,  Ã, }
Ã,  }
Ã,  else
Ã,  {
Ã,  Ã,  Ã, //Wrong order so reset moved Boxes
Ã,  Ã,  Ã, SequenceIndex=0;
Ã,  Ã,  Ã, int b=0;
Ã,  Ã,  Ã, while (b<BlockNumber)
Ã,  Ã,  Ã, {
Ã,  Ã,  Ã,  Ã,  Ã, if (BlockState[b]==1)
Ã,  Ã,  Ã,  Ã,  Ã, {
Ã,  Ã,  Ã,  Ã,  Ã,  Ã, BlockState[b]=0;
Ã,  Ã,  Ã,  Ã,  Ã,  Ã, //Animate Block moving back
Ã,  Ã,  Ã,  Ã,  Ã,  Ã, object[Block+1].SetView(4);
Ã,  Ã,  Ã,  Ã,  Ã,  Ã, object[Block+1].Animate(Block+1,3,eOnce,eBlock,eBackwards);
Ã,  Ã,  Ã,  Ã,  Ã, }
Ã,  Ã,  Ã,  Ã,  Ã, b++;
Ã,  Ã,  Ã, }
Ã,  }
}


Put this in first time player enters room script
Code: ags

Ã,  //Your desired sequence
Ã,  Sequence[0]=3;
Ã,  Sequence[1]=2;
Ã,  Sequence[2]=0;
Ã,  Sequence[3]=1;

Ã,  //All Boxes at start position
Ã,  BlockState[0]=0;
Ã,  BlockState[1]=0;Ã,  
Ã,  BlockState[2]=0;
Ã,  BlockState[3]=0;

Ã,  SequenceIndex=0;


Then in interact hotspot 1 script put
Code: ags

Ã,  PushBlock(1);


Then in interact hotspot 2 script put
Code: ags

Ã,  PushBlock(2);


and so on for all blocks. Hope this is a little more clear.


#252
Hi, sorry I'm working in C++ at present, you need to do

int b=0;
while(b<BlockNumber)
{


.
.
.
.

  b++;
}
#253
Here's my zoom code, slightly modified and therefore probably not working any more, from the last room in Magsic II where you could zoom in on various parts of the screen.


DynamicSprite *DSP;

// Zoom in & out on point (x,y),Ã,  Ã, z depth of zoom,Ã,  InOnly flag drops out after zoom in

function Zoom(int x, int y, int z, bool InOnly)
{
Ã,  RawSaveScreen();

Ã,  DSP=DynamicSprite.CreateFromScreenShot();
Ã,  Wait(1);

Ã,  int kx;
Ã,  int ky;
Ã,  int i=0;
Ã,  int id=z/60;
Ã, 
Ã,  while(i>=0)
Ã,  {
Ã,  Ã,  kx=(-(x*(320+z*2))/320)+160;Ã, 
Ã,  Ã,  ky=(-(y*(240+z*2))/240)+120;Ã, 
Ã, 
Ã,  Ã,  RawDrawImageResized( (kx*i)/z, (ky*i)/z, DSP.Graphic, 320+i*2, 240+i*2);
Ã,  Ã, 
Ã,  Ã,  Wait(1);
Ã, 
Ã,  Ã,  i+=id;
Ã,  Ã,  if (i>z)
Ã,  Ã,  {
Ã,  Ã,  Ã,  //Use this as basis for room background after zoom in
Ã,  Ã,  Ã,  //SaveScreenShot("zoom.pcx");
Ã,  Ã,  Ã, 
Ã,  Ã,  Ã,  id=-id;
Ã,  Ã,  Ã,  i=z;
Ã,  Ã,  Ã, 
Ã,  Ã,  Ã,  if (InOnly)
Ã,  Ã,  Ã,  {
Ã,  Ã,  Ã,  Ã,  return;
Ã,  Ã,  Ã,  }
Ã,  Ã,  }
Ã,  }

Ã,  RawRestoreScreen();
}


Usage:

Zoom(88,170,300,0);



#254
This won't work as you don't seem to be checking if a block has already been pushed when you tell it to animate back. Also not sure if you have 4 or five blocks, so just change all 4's to 5's.

//Top of room_script

#define BlockNumber 4

int Sequence[BlockNumber];
int BlockState[BlockNumber];
int SequenceIndex;

//Init. Put this in first time player enters room
{
  //Your desired sequence
  Sequence[0]=3;
  Sequence[1]=2;
  Sequence[2]=0;
  Sequence[3]=1;
  //Sequence[4]=4;


  //All Boxes at start position
  BlockState[0]=0;
  BlockState[1]=0; 
  BlockState[2]=0;
  BlockState[3]=0;
  //BlockState[4]=0;

  SequenceIndex=0;
}

//Put this in room_script
function PushBlock(int Block)
{
   if (BlockState[Block]==1)
  {
     // Already pushed so do nothing
     return;
  }

  BlockState[Block]=1;
  //Animate Block moving forwards
  object[Block+1].SetView(4);
  object[Block+1].Animate(Block+1,3,eOnce,eBlock);

  if (Block==Sequence[SequenceIndex])
  {
     //Correct order
     SequenceIndex++;
     if (SequenceIndex==BlockNumber)
     {
        //Door opens
     }
  }
  else
  {
     //Wrong order so reset moved Boxes
     SequenceIndex=0;
     for (int b=0;b<BlockNumber;b++)
     {
         if (BlockState==1)
         {
           BlockState=0;
           //Animate Block moving back
           object[Block+1].SetView(4);
           object[Block+1].Animate(Block+1,3,eOnce,eBlock,eBackwards);
         }
     }
  }
}

Then in each hotspot script put

  PushBlock(Corresponding Block number);



It might be nicer to use none blocking when reseting the blocks so they all move back at the same time and add a check at the end of the script to ensure all blocks have finished animating, or just put a Wait(n) in with n sufficient to cover all blocks animations.


#255
... is being alive. Shame about the final cut scene though.
#256
 I think most people here write adventures as a way to express themselves, since %99 of the adventures are freeware, the motivation is purely for the love of the game. Even a moderate game takes 100s of hours of work, to expect someone to write a game for you, unless they happen to be similarly motivated, is a huge undertaking. Even at a minimum wage you are already talking 1000s of dollars!
Swallows and Amazons would, I agree, make a good basis for a game, I've read the book and recently heard it on the radio twice. If it is for your grandchildren I would suggest changing the main charactors to your grandchildren, to avoid copyright issues and thus making the game more appealing to them.
In reality any award would have to be based on how much time you expect people to put into the game.
#257
Why not just put

character[EGO].ChangeRoom(16, 218, 200);

in the dialog_request script ?
#258
Hints & Tips / Re: Zugzwang
Thu 10/11/2005 21:06:35
sozi, you are so close, your spoiler practically solves the problem.
Spoiler
Send fish with string, to white pawn, then attach melted wax to fish. Give back to black pawn. and use on stump, then scare raven. You will then need to find red thing, but you'll know when you're warm.
[close]
#259
Hints & Tips / Re: Zugzwang
Thu 10/11/2005 21:01:50
jane,
Spoiler
There are a few ways to do this, but the easiest is to just walk the two rooks up the board, continually checking the King until he is stuck at the top edge when it'll be checkmate.
[close]
#260
Hints & Tips / Re: Zugzwang
Thu 10/11/2005 14:51:41
jane,
Spoiler
Yes, sorry, I've had a look and if you give the sword back before trying to exit the cave then your bug will happen. You will have to go back to a save in the cave, before you give the sword back then try to exit the cave before you give the sword to the rope. Will fix.
[close]
SMF spam blocked by CleanTalk