Message Board Snake Quest Level Sets Snake Quest Editor Download Snake Quest About Snake Quest Snake Quest Home Text Navigation is at the bottom of this page.  Welcome to SnakeQuest.com!
 
Site Map Help Support Snake Quest Snake Quest Screenshots Snake Quest News Contact the authors of SQ Text Navigation at bottom of page

Snake Quest Forum Index Snake Quest
Snake Quest Discussion Forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Help!
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Snake Quest Forum Index -> Help
View previous topic :: View next topic  
Author Message
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Tue Dec 17, 2002 2:08 pm    Post subject: Help! Reply with quote

OK I come across a big problem with Mac Worm III.
I am making a boss for world 1.He is a snake and made of seperate parts. I have no problem making the parts appear at the right time to make the snake look right by selecting "Start Mobile Graphic" and doing it that way. However,what I would like to know is,how can I make this boss move in different directions instead on one direction when it appears? I was thinking somehow making an invisible object that only blocked the bosses path and make him turn another direction would be the answer. If u can do this or anything more efficient with Snake Quest then I would like to know how.
Rolling Eyes
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
don_joe
Regular


Joined: 06 May 2002
Posts: 663

PostPosted: Tue Dec 17, 2002 3:59 pm    Post subject: Reply with quote

I don't think I understand the question. Are you actually using the second player's snake or are you handling it on your own? If the latter, just use a if-statement on a random number and then go to different action lists depending on the outcome. Each action list could correspond to one direction.

If you're using the second player, then make an invisable object that, when got, first checks to see if the current player is 2, and if it is, modifies sDir.
Back to top
View user's profile Send private message
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Tue Dec 17, 2002 4:09 pm    Post subject: Reply with quote

I am not using the player two snake (as it is a single player game and I don't want a boss on every level) but I want the mobile objects (not any proper,controllable snake) to change direction somehow.
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
DaFalcon
SQ Development Team
SQ Development Team


Joined: 18 Apr 2002
Posts: 1099
Location: CA

PostPosted: Tue Dec 17, 2002 4:27 pm    Post subject: Reply with quote

Mobile objects would be the easiest way to handle it, but then you have to keep track of where the snake is with a loop; each turn, check if your invisible object is in the spot where your snake is, then if it is, remove the snake head and start it going the new direction. You will also want to place a non-moving 'turn' graphic at that point to make it look good. Keep 'firing' snake parts from that spot until the snake's tail reaches it, then remove the turn graphic and 'fire' the snake's tail in the new direction from that point. With a little more flexibility, this should be able to handle any snake movements.
Back to top
View user's profile Send private message Visit poster's website
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Sat Dec 21, 2002 6:27 pm    Post subject: Reply with quote

Well It seems to be going extremely well. I have managed to add a turn to make it look good for the precise length of time. Cool!
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
DaFalcon
SQ Development Team
SQ Development Team


Joined: 18 Apr 2002
Posts: 1099
Location: CA

PostPosted: Sat Dec 21, 2002 10:26 pm    Post subject: Reply with quote

cool, Mat. Good luck with it, I'd like to see enemy snakes in a single player SQ level set.
Back to top
View user's profile Send private message Visit poster's website
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Sun Dec 22, 2002 7:37 am    Post subject: Reply with quote

Thx. Well I plan to make 4 snake bosses each with cool abilities like teleporting and going invisible and finally an improved version of the Pentium Man. I think he will be quite a bit smaller than in Mac Worm II so that I will be able to make him move around while he's firing at you.
I think I need help once again,however.
I want the player 1 snake that you control to be able to fire lazers or bullets or something like on Crazy Ivan III when u press the button in the opposite direction to the snake. However I don't intend to need to collect bullets on the level (I have a solution to that-to place an invisible object containing bullets at the beginning of the level in front of the snake) but the problem is I don't know how to make the snake fire the bullets when u press the button in the opposite direction like on Crazy Ivan III. Could anyone tell me how to do this?
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
don_joe
Regular


Joined: 06 May 2002
Posts: 663

PostPosted: Sun Dec 22, 2002 3:40 pm    Post subject: Reply with quote

Heh. "Anyone" I guess would be me. Though I'm not sure how helpful I can be; Da Falcon, Eric, or Ededad might have better suggestions.

There are two ways to manage this effect, neither of which works very well:

---

Option A. Allow about face and allow snake to pass through itself. With every step of the snake, add an object on the snake's neck that, if gotten, will perform the special action. The major problem with this is that you have to handle the snake graphics on your own, because the engine doesn't do it right. There's also the problem that the snake is unable to turn on the step after firing (because you have to modify its direction to get it going forward again, after it had moved backward). Finally, if there's something immediately in front of the snake when it fires, you have to figure out what to do.

The one big advantage of method A is that that's how I did it in "Crazy Ivan III". The best way to copy it is to duplicate "Crazy Ivan III", open the "snake <la>" action, and remove the four calls of "Line-of-Sight" (they're for making cannons and lasers fire at the player, and aren't relevant to your purposes). Go into each of the four "Fly Torpedo" action lists and empty them (you'll want to have your own bullet mechanics). Copy the "snake <la>" action and paste it into your level file (delete the now-damaged copy of "Crazy Ivan III"). Paste the graphics for each part of your snake into the objects that arrive with "snake <la>". Use the "Fly Torpedo" action lists to handle bullet (or laser, if you prefer) behavior; there's one for each direction the snake might choose to fire.

By the way, the reliance on ammunition occurs on lines 9-11 of the "Fire Snake part 1" action lists. If you remove those lines (in fact, you probably should, since they modify jLeft), the snake will be able to fire unlimited times. You could also change jLeft to a user variable and make your own ammunition.

Oh, and you'll also need to remove the snake graphics from their spot in "Level File Settings"; put an invisible snake there.

---

Option B. Don't use the built-in snake at all; instead have it be like "Snowflakes!" where the only thing that's checked is which direction (and whether) the player has moved. This gives you much more flexibility; you'd be able to find a way around the problem of dying if you fire while facing a wall. The disadvantages are that you wouldn't be able to use built-in object behavior at all; Blocking and Deadly objects would both have to be scripted. It was probably because of not wanting to script blocking objects that I chose Option A for "Crazy Ivan III".

---

Sorry it's so complicated. If Eric would allows us to assign a key to a special effect, it would become about 500 times easier (we could just use the built-in snake and activate the fire weapons action when the special key is pressed). As it is, making a snake-mounted cannon takes a lot of work for limited payoff.

(You should have seen some of my early attempts at scripting it. My favorite was one in which the snake moved around, its body appearing on every other square. It was about then that I decided I had to handle snake graphics on my own instead of using the engine.)
Back to top
View user's profile Send private message
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Sun Dec 22, 2002 4:36 pm    Post subject: Reply with quote

Well I have done exactly as you have said Don Joe. Unfortunately as a result the invisible snake graphic shows up as it is in the actual game play. Not only that but it won't fire. Do u know what is wrong?

(Thx for your help)
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
don_joe
Regular


Joined: 06 May 2002
Posts: 663

PostPosted: Mon Dec 23, 2002 2:56 pm    Post subject: Reply with quote

Well, you have to script it to fire. Test to see if the "Fly Torpedo" action lists are activating when they should.

I, ah, don't understand what you mean by the invisible snake appearing. There should be no invisible snake. Copy the snake graphic from "Snowflakes!" and then in "Level File Settings" set that to be the graphic.
Back to top
View user's profile Send private message
ededed
Regular


Joined: 24 Aug 2002
Posts: 118
Location: The moon

PostPosted: Mon Dec 23, 2002 4:25 pm    Post subject: Reply with quote

I was going to create a levelset that let you play against a computer opponent that would basically be those Classic Style Levels but you each get half the screen and the computer would be a snake that would pathfind then get the jewel.

My idea was to create a Data file wil all the action lists and everything that could simulate a snake. If you want to have your snake follow an exact circuit over and over you would tell the datasnake you were using as your boss to go left or right or up or down when he hits an arrow of that direction.
_________________
Dont tool up.
www.geocities.com/ed72678954/
Back to top
View user's profile Send private message Send e-mail Visit poster's website
DaFalcon
SQ Development Team
SQ Development Team


Joined: 18 Apr 2002
Posts: 1099
Location: CA

PostPosted: Mon Dec 23, 2002 6:08 pm    Post subject: Reply with quote

You know, we should all be making modular code in datafiles like ededed. We could program cool effects and things like Snake drawing routines all without having to have a level file to go with it Smile

I added something to level 1 and 2 of SPL; it is just a wall that 'sprouts' like a wall cracking. I know that doesn't make sense. I need sleep.
Back to top
View user's profile Send private message Visit poster's website
don_joe
Regular


Joined: 06 May 2002
Posts: 663

PostPosted: Mon Dec 23, 2002 7:38 pm    Post subject: Reply with quote

You're right, we should. I could probably put together a snake movement data file; it'd be quite useful in the future for both the player's own snake and enemy snakes. I'm not sure why I've been resisting data files ... things just seem less elegant that way, somehow.
Back to top
View user's profile Send private message
Mat
Regular


Joined: 21 Oct 2002
Posts: 260
Location: Wales,UK

PostPosted: Tue Dec 24, 2002 10:15 am    Post subject: Reply with quote

Sorry to interrupt your conversation but I have managed to get the snake to appear but still I have a problem.
Don Joe-What do I do to make the snake fire the torpedoes when u press the opposite key after you pick up an Energy Coil (which I have decided to change). Which action list do u have to activate and when? I tried activating the "Fire Snake <Lh>" action list when u pick up the Energy Coil but this just kills the player. What am I meant to do to beable to fire the torpedoes?
_________________
www.thedodgyblokes.com
www.soundcloud.com/mattyhd
www.youtube.com/matd2100
www.youtube.com/thedodgyblokes
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address MSN Messenger
don_joe
Regular


Joined: 06 May 2002
Posts: 663

PostPosted: Tue Dec 24, 2002 1:57 pm    Post subject: Reply with quote

In "Crazy Ivan III", picking up an energy coil increases jLeft by one. If jLeft is non-zero, the snake will be able to fire (i.e. will cause the proper "Fly Torpedo" action list to be activated when it presses backwards).

To change the variable that stores ammo from jLeft to something else, go to lines 9 thru 11 of the "Fire Snake part 1" action lists and replace jLeft with the desired variable. Then, to give the player more ammo, simply increase this variable.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Snake Quest Forum Index -> Help All times are GMT - 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


General: Main Page | News | Contact Us | Support SQ | Message Board | Site Map
Snake Quest: About SQ | Level Editor | Screenshots | Download | Level Files
 
Powered by phpBB © 2001, 2005 phpBB Group