alcscript for sequences

If you feel like you're up to the challenge of building your own Ages in Blender or 3ds Max, this is the place for you!

alcscript for sequences

Postby wodan944 » Mon Apr 06, 2009 10:54 am

Hello All,

Maybe someone can help me, i am making for my age Oolbahnneea a puzzle.
A explorer has to push certain buttons in a certain order to get access to a new area.
My question is this: is there a alcscript for these sequences? and maybe someone has these scripts already made for his world?
Hope to here from you.

Wodan944
Creativity involves breaking out of established patterns in order to look at things in a different way.

Edward De Bono
User avatar
wodan944
 
Posts: 52
Joined: Wed Jan 07, 2009 12:37 pm

Re: alcscript for sequences

Postby boblishman » Mon Apr 06, 2009 11:31 am

well ... Sonavio does have a "sequence push" puzzle that uses 5 buttons which must be pressed in a particular order... but I am not a python scripter so I enlisted the help of another Alcscript & Python script) writer ... who wrote both the Alcscript and the python files (you will need both) to make it work. (I believe she took a lot of the Python scripting from an existing Cyan Python file and adapted it to Sonavio's "needs")

However, the Python file was subsequently altered by a different (other) Python Scripter (as it was doing some things which were not very multiplayer compatable) - although the Alcscript did not have to be altered for this multiplayer "fix" - and, although the puzzle now works "correctly" in both single and multiplayer environments, the door (or in Sonavio's case, the steps) are reset if you (or another player in multiplayer mode) press one of the buttons (stones)... which may be a behaviour you do not want. (You may want the door to remain open permanently, for example ...).

The other " unusual feature" of Sonavio's "sequence puzzle" is that, although the buttons must be pressed in a particular order, you can start with any one of the sequence (i.e. the solutions 1,2,3,4,5 and 3,4,5,1,2 are both correct). Again, this is probably NOT what you want (you probably ONLY want ONE solution, not 5 possible solutions).


This is one of the "problems" with puzzles ... they tend to be very specific to the creators needs ... and as such, (unless you yourself are a "scripter") you will almost certainly need to enlist the help of an experienced Alcscript/Python scripter ... (which is what I did... ;) )

I am happy to send you the Alcscript and Python file ... but I would be completely unable to help you if you had problems with it ... (because in reality, I don't really understand myself HOW it works ...) and, because of it's complexity (it uses "proxy" buttons), it seems pointless to post them both here (unless someone else is able to explain/unravel them both)...

If you pm me, I can give you the names of those people who very kindly helped me, but (obviously) I cannot guarantee that they will be able to (or have the time to) help you, you'll just have to ask them and see if they can/will help you.

However, it does seem that a "sequence button" Alcscript & Python "template" is DESPERATELY needed for ALL (non-scripting) Age writers ... so I would urge anyone with the ability (and time) to step forward and maybe put something into the Wiki ....

( ... pretty, pretty please ? ? :cry: )
when it comes to Age creation ... "DOH" seems to be my middle name...
User avatar
boblishman
 
Posts: 882
Joined: Fri Oct 05, 2007 4:47 pm
Location: Spain

Re: alcscript for sequences

Postby GPNMilano » Mon Apr 06, 2009 7:52 pm

As I was the original person who created the python script for Bob, I will clarify a few things regarding puzzles and python scripts. The main reason that there are problems with some complex python puzzle scripts is that one of the messages that is required for complex things in plasma (plNotifyMsg) is missing a key of the message system for it called ProEventData callbacks. Now plNotifyMsgs work. Every clickable in an age has one. What these do is that when you click on the object it sends the message that you did so, and it tells the client want to activate etc. ProEventData callbacks however are sometimes needed for the much more complex stuff like puzzles with multiple sounds, animations and oneshots. They aren't always needed but the more complex the puzzle the more complex the message system needs to be unfortunately. With PyPRP as it is now plNotifyMsgs can be used, but the proeventdata system cannot yet.

Bob, if you will, send me the modified script for Sonavio so that I can't see about fixing those two problems (both are relatively simple to fix, but you'll need to export a new version of Sonavio as it will require adding new bits to the responders.
You can't stop the truth. IC Blog
User avatar
GPNMilano
 
Posts: 1155
Joined: Mon Apr 21, 2008 5:50 am

Re: alcscript for sequences

Postby boblishman » Tue Apr 07, 2009 1:46 am

Chloe, you seem to have missunderstood ... the Sonavio steps puzzle now works how I want it to ... I'll pm you with the details ... (it was fixed by someone else).


The point I was making is that MY alcscript/python is not really a suitable "template" for wodan944 ... and that, as far as I know, a "simple" (yes, I know there is no such thing) template for a door opening upon the pressing of ONE exact order of several buttons has never been released by a creator using Alcscript.
(I am aware that one of the German Ages - sorry I forget it's name ... the one with the Pyramids - does have and exact sequence button puzzle ... but I think that was done using python animations and does not have any avatar animations either. I am also not sure about how well it synches online wth other players).

It would be wonderful if someone (*cough, cough*) could make a "template" Age with a door that opens upon pressing 4 (or 5) buttons in the correct order only and posted it onto the wiki for poeple to download and see how it works (like Nadnerb did with the first door opening animations done with IPO curves).
when it comes to Age creation ... "DOH" seems to be my middle name...
User avatar
boblishman
 
Posts: 882
Joined: Fri Oct 05, 2007 4:47 pm
Location: Spain

Re: alcscript for sequences

Postby diafero » Tue Apr 07, 2009 4:41 am

Hehe, bob, you can safely write my name in this context ;-) . I am already in contact with wodan for doing the python script for this age (and I actually already worked on the Python which is in there so far).
What you will basically have to do is write some alcscript which associates your buttons with a python file... I think you can alter the first part of your door alcscript for that (the one containing "xAgeSDLBoolToggle") to have more activators (one for each button). I can then write the Python files (looking at the ones of Sonavio and Takla Makan as template), and the second part ("xAgeSDLBoolRespond") can stay the same as the custom puzzle python file will then control the SDL var to open the door (doing the job "xAgeSDLBoolToggle" did so far), and the second python file will make sure the door reacts to the SDL state.
I prefer e-mails to "diafero arcor de" (after adding the at and the dot) over PMs.

"Many people's horizon is a circle with a radius of zero. They call it their point of view."

Deep Island Shard | Offline KI
diafero
Deep Island Admin
 
Posts: 2972
Joined: Mon May 05, 2008 5:50 am
Location: Germany


Return to Building

Who is online

Users browsing this forum: No registered users and 1 guest

cron