Forgive me if this isn't the time or place, but now that we've had Places for awhile, and people are getting used to doing more advanced programming...well, is it time to request new C&C's?
(winces in preparation for the firing squad)
(opens one eye, then the other. Firing is delayed but may still come. Ok suggest Rose Suggest!!!)
Just in case it's alright, here's some stuff I'd like to second from the first thread:
Rose: for the last idea. I mentioned before the idea of having a "Universal Program". One program that's hidden somewhere, and then a Run Program pointing to it in every room. If there's something that you want to happen everywhere, then write a program for it, and have a Run Program pointing to it in your Universal Program.
So for the above idea, have the book on a page rather than a room, and then have a program which checks the memory and shows a link to the page as appropriate.
I think that I mentioned this in the thread on 'Random Events' elsewhere, which would be another universally run program.
Another use; I've got a Master Room which the casual public will never see. Amongst other things it allows me to quickly move across my Place, there're hidden doors leading out to various parts of the Moonshine Mansions. I've put another program in which looks for a specific (rather short) commentary command and if it finds it, then it warps you to my Master Room. So I can get there from anywhere in the Mansions.
I'm playing with this idea a bit at the moment, but it's taking a while as the Mansions already has well over 100 rooms, and probably more like 200. That's a lot of Run Programs - I'm fast becoming a well known character up at the scrapyard.
It's a bit of a pain to set up, but once you have I suspect that it will be really useful. You have a new idea for something that you'd like everywhere and you can easily do it.
Also, that particular set of C&Cs would be rather useful. The Set Memory Place in particular I would very much like. As for the 'Message Everywhere' idea, well that's a combination of the "affect the Place for everybody" thing as talked about on a different thread, together with the "Universal Program" above really, isn't it?
Rose: for the last idea. I mentioned before the idea of having a "Universal Program". One program that's hidden somewhere, and then a Run Program pointing to it in every room. If there's something that you want to happen everywhere, then write a program for it, and have a Run Program pointing to it in your Universal Program.
Here's a couple of ideas I have:
Show Animation/Image
Basically, allows you to show an animation or image in your place. The uses for this one are pretty obvious.
Show/Load Minigame
Not sure of how this would work exactly, but here's the premise of the idea:
This contraption/contrivance/special gadget will display one of several minigames that have been preprogrammed with variables already preprogrammed into the minigames. It will allow you to pick which minigame, and configure the various settings for that particular minigame. (For example, for a target practice minigame, these would include the gun's accuracy, the rate of fire, recoil, number of targets, distance away from targets, number of shots required to win, etc.) Each minigame would be different, whether it's matching, card game, joker game, etc, in part due to the categories, and in part due to how they're configured. Once the minigame concludes, data will be sent (Not sure whether it'd be to a program or a memory) allowing the minigame to actually affect the normal text-based version of Improbable Island. Custom Programs can be uploaded (for those programming savvy enough to actually program one of these) after they've been tested, for a set amount of supporter points. There will probably be a data cap on how big the program can be, to prevent server load. In additionally, there can be an option to forgo time restrictions and winning conditions, for "practice" minigames.
Why is this useful? Well, if done well, this could easily increase the immersion places have. If you have a shooting range at your place somewhere, now you can actually shoot targets! If you have a card game being played, you can actually play through that card game! If you have a slot machine, you can actually use that slot machine! And what's even better is that the minigames could affect the normal text-based Improbable Island.
For example: Let's say you challenge a sniper to a shootout. The page (or room) where it takes place at, you simply give the sniper some flavor text on his performance, showing how well he did, and then you can click on Play to start the shootout minigame whenever (Properly configured, of course) and see if you can beat the sniper! Naturally, this can be more exciting and dramatic than a text-based version, if done well, and provokes a lot more conversation--and requires a lot less work on the builder's part--about what happened there. And you'll be able to configure various responses to the player's actual performance that just make the competition seem a lot more real.
For example, if you were to get no hits at all, you might be linked to a page where the Sniper tells you that sniping is just not your thing. If you tied, or almost tied, the Sniper might comment about how you were so close, and tell you that it was still a pretty good job you did. If you won, then you could be shown a page where the Sniper is amazed at how well you did. And if you manage to make every shot, you could be brought to a page showing the sniper being completely shocked and confused at how you could get every one of those shots.
Okay, that just gave me a funny idea. Challenging the Moose to a sniping competition.
But anyways, that's just the tip of the iceberg. Spending supporter points to get it might be a good idea, but I can see this adding a bunch of interactivity to Improbable Island, providing the minigames can be programmed. And I'm sure others could come up with other uses for this idea too.
The ability to subtract a positive thought from a memory.
Why?
well I have a program that I want to show a positive number to the player for the value of a thought... but at the same time I want to have a memory subtract that thought and show the adjusted value as well
Right now I have the thought as negative numbers, it looks odd but it works.. it would be awesome if I could have it be positive and still subtract it from the memory.. unless a smart programer can think up a different work around?
Ooooh another Contraption suggestion:
The ability to run a universal program without actually doing what HM says we have to do which is put a run program in EVERY ROOM.
Maybe that's a lodge item actually?
-Rose
And a new idea:
Contraption: Start Newday Search
Contrivance: Check Newday Search
What do these contraptions do, you may ask? Well, they work together. The contraption of Start Newday Search basically tells the game, "Okay, from the time that this contraption has fired, check to see if a Newday has passed since then." The contrivance of Check Newday Search basically tells the game, "Okay, you know that time I told you to start checking to see if a Newday passed from it? Well, now I want to know if it has."
Naturally, you need to Start a Newday Search before you Check a Newday Search, or else the game will tell you, "What time you told me to check for a Newday? I don't remember you telling me that! What the heck are you even talking about anyways?"
And here's where this could be useful:
For making events that you want to progress with multiple visits.
Let me give an example: Say you have a medical instructor, and you want her to be able to show visitors how to do first aid. But you don't want to have them just progress through all the courses in one go. You can have a Start Newday Search contraption fire up when you reach the first page of her teaching you how to do First Aid, and have the room the page happens to be in check to see if a Newday has passed, and the current progress on the teaching quest. (IE: A memory check or memory part check contraption.) When the room detects that a newday has passed, and that you're on the appropriate part of the quest, you can move onto the next part. And so on and so forth until you get to the end.
Now here's where having a contraption and contrivance for this comes in handy: Let's say that there's a Check Newday Search and Has Momento contrivance in the first row of a program. You don't have the medical kit the medic asked you for (the momento) so you can't move on to the next part of the course. But if that contraption and contrivance didn't work together, right about now is when the check would be erased. (Or it'd be very unreliable. Take your pick.) But because they are separate, the Check Newday Search can check the time when the Start Newday Search contraption first activated, as many times as it needs to until it passes. When it does, the value of the search is now 0 again, exactly like it was at the start.
Also, on a related note: Enable Newday Menu. Does exactly what it says on the tin, allows you to access the Newday Menu in a place.
And for those situations where you don't need the contrivance and the contraption, (For example, having a mock-up version of the Failboat, where you'd want to allow contestants off it when a Newday is triggered) there should be a On Newday contrivance.
And then there's the Enable Newday contraption. Basically, lets the effects of a Newday take place in a certain room in your place.
I'd imagine somebody find a use for some of these.
Could we have a "Hide Page" (as opposed to hide room description) Contraption? Even better something so you can change which page your guest is on, so it finishes the page/room programs as per normal, but then switches your guest to the new page (and shows that instead.)
What if...
What if we could have things post into story?
The door creaks open ominously...
You know, that sorta thing? NIFTY CONTRIVANCE. erm...CONTRAPTION...dang I keep mixing them up. One of those.
-Rose
FML: no, that would change the room/page's description. Rose is asking for something that makes a comment in chat, as if it was a character typing in the text box, so that it appears in the story. Like if the owner was lurking there, watching that one room 24/7, ready to spend a Special into chat whenever somebody happens to hit the right link/command.
... come to think of it, if it's like Specials, then, should it be a Lodge gadget?
(Btw, ContrIVances are the IFs, ContrAPTIONS are the ACTIONS. That's how I remember it. Anyone got better mnemonics?)
FML: no, that would change the room/page's description. Rose is asking for something that makes a comment in chat, as if it was a character typing in the text box, so that it appears in the story. Like if the owner was lurking there, watching that one room 24/7, ready to spend a Special into chat whenever somebody happens to hit the right link/command.
... come to think of it, if it's like Specials, then, should it be a Lodge gadget?
(Btw, ContrIVances are the IFs, ContrAPTIONS are the ACTIONS. That's how I remember it. Anyone got better mnemonics?)
What if...
What if we could have things post into story?
The door creaks open ominously...
You know, that sorta thing? NIFTY CONTRIVANCE. erm...CONTRAPTION...dang I keep mixing them up. One of those.
-Rose
FML: no, that would change the room/page's description. Rose is asking for something that makes a comment in chat, as if it was a character typing in the text box, so that it appears in the story. Like if the owner was lurking there, watching that one room 24/7, ready to spend a Special into chat whenever somebody happens to hit the right link/command.
... come to think of it, if it's like Specials, then, should it be a Lodge gadget?
(Btw, ContrIVances are the IFs, ContrAPTIONS are the ACTIONS. That's how I remember it. Anyone got better mnemonics?)
The difference is, one appears (and disappears) as part of the flavour text, the other appears (and stays) in chat. So if somebody wanted to try programming ELIZA say*, then it would work a lot better if gave responses in chat. You could also use the same Contraption to put the player's input command into chat as well.
---
*Yes, but it's low down on my "Want to do list", due to the vast amount of work involved.
How about a memory that affects multiples? Such as Show Multiple Page Links? So I could be able to say, with only one contraption, that with a memory at X these links will be shown, at Y these other links will be shown, and at Z this other set of links can be shown (And these page links would otherwise be hidden). And this could expand to hiding or showing door links and other whatnots, or perhaps unlocking multiple doors with one memory number and only one unlock contraption? Thoughts?
I think it'd be useful, but to keep a demand for the single-show contraptions, I think there should probably be at least two pages that need to be shown for that. Or convert the single-show contraptions to be able to show multiple pages. Either way works.
Also, here's a contrivance idea: Check Custom Race.
Basically, what it does is check your race, and sees if it's custom or not, provided the input box for the race is left blank. This will allow you to check to see if that person that has the race of a Midget is really roleplaying as a midget. Alternatively, you can type a custom race into the input box, and look for either a partial or complete match. (Rather like the Partial Commentary Command and Complete Commentary Command Contraptions, with a choice.) This could be useful if you want to allow an RP alt access to places, (Just use a Cunning Disguise from the Hunter's Lodge and give them a very specific race that will likely not be copied,) or if you want to check if that person with a race of a Robot is really roleplaying as a human.
Naturally, this has its flaws, but it's interesting enough to where it may prove very useful. Also, if this is done, I'd like to see a code for displaying one's race be available for use in places.
'Nother idea. Perhaps a contraption to show alternative description? Or at least simply to "show a page description"?
It would give the ability for the following effect to work. When entering room A from B, the description of page A-B shows (with the normal room description under it), so that Room A says you just came from an area that can matches Room B's description. However, when entering Room A from C, the previous room = B contrivance would not fire, and "show page description" in the escape hatch could show page A-C's description above the Room A's text.
Page A-B and A-C would be pages off of Room A, and would have hidden links. The only way to see their descriptions would be to enter Room A from either room B or C. This way Room A could have its description below a short bit of Room entrance text. I was more interested in using it for Rooms that have a description much more based on which way a player is coming through it.
Or, am I missing a way to actually do this in a place?
Well, I lied. I figured out my problems. Show Page is show page description. Add Page Access does what I thought Show page did. This explains things, and helps!
Forgive me if this isn't the time or place, but now that we've had Places for awhile, and people are getting used to doing more advanced programming...well, is it time to request new C&C's?
Also, it isn't a Contrivance/Contraption, but can we add an option to add a column or two to the escape hatch?
Aaaaand to add to the pile of ideas, A contrivance of Memory Not Equal and Memory Part Not Equal.
Contrivances pass if a memory (part) does not equal a specified number. As opposed to using a Memory (Part) Equal and switching the valve to Failure, this contrivance can now be combined with others.
Aaaaand to add to the pile of ideas, A contrivance of Memory Not Equal and Memory Part Not Equal.
Contrivances pass if a memory (part) does not equal a specified number. As opposed to using a Memory (Part) Equal and switching the valve to Failure, this contrivance can now be combined with others.
I believe I need a Contrivance to check for certain people. By name.
This one Contrivance would allow me to set Memory Values to individual people and treat them differently... not always more positively, or I would use a Momento to bestow my favor upon them. A negative momento, though, they can just drop.
This is unneccessary, of course, if there's some way to manually set Memory values to certain characters... but I don't know of one.
This is unneccessary, of course, if there's some way to manually set Memory values to certain characters... but I don't know of one.
Check Status:
Basically, this checks if somebody is online, offline, somewhere else, AFK, or TTM.
As well as adding a vote to the pile for a Set Memory Part, I'd like a Stop Specific Program contraption.
I'd also like the Hide Room Description contraption to be able to hide the room's description when it's in a Page in the room. Or even as a settable parameter for which room's description to hide.
Also, it isn't a Contrivance/Contraption, but can we add an option to add a column or two to the escape hatch?
I don't know how Thoughts work on a first-hand experience, but a contraption of Set Thought (or Memory) to Commentary might be nice.
I don't know how Thoughts work on a first-hand experience, but a contraption of Set Thought (or Memory) to Commentary might be nice.
Contrivance idea: If ___ door is locked/if ____ door is unlocked
You'd put the door ID# in the blank.
I would like this because I'd like to be able to change what a room description says based on whether the door is locked or not. I'm sure there's a way to do this through memories or thoughts, but I have noooo idea how and it would be so much simpler if this contrivance existed. (I'd just use pages to change the room description. I've figured that much out at least.)
Contrivance idea: If ___ door is locked/if ____ door is unlocked
You'd put the door ID# in the blank.
I would like this because I'd like to be able to change what a room description says based on whether the door is locked or not. I'm sure there's a way to do this through memories or thoughts, but I have noooo idea how and it would be so much simpler if this contrivance existed. (I'd just use pages to change the room description. I've figured that much out at least.)
I'd use a Thought rather than a memory for this. Don't have to worry about faffing about setting digits (there is no Set Digit Contraption). You don't have to remember the digit over to the next page load, so use a Thought. In fact you want to reset to 0 for a new page load. Much easier all round.
I had assumed that Kew meant if the door was manually locked/unlocked (which can be done by the owner in one click), rather than by a program. Is there anything which will detect if a door is set in Master Settings rather than by a program?
No idea if this should go here or elsewhere but, hideable beds like you can hide a room.
No idea if this should go here or elsewhere but, hideable beds like you can hide a room.
Hmm... thinking about it, I have my own contriv/trap question. Is there a way to use mostly-unused digits? For instance, if I were keeping track of a door like above, I'd only be using 2/10 of the potential of a digit. Is there a way to use the rest?
Hmm... thinking about it, I have my own contriv/trap question. Is there a way to use mostly-unused digits? For instance, if I were keeping track of a door like above, I'd only be using 2/10 of the potential of a digit. Is there a way to use the rest?
On another note, I really need the ability to set a thought to a memory slot.
I've got about 84 programs set up just to circumvent the lack of this feature, only to find out that I'll need 72 more Run Program contraptions. I'm not going out and getting those contraptions again... I've already used around 150 of them for this one program. The programs themselves are rather simple. There's a single program that sets a thought to a memory, and then that program runs a "While" loop that keeps running until digit "6" of the thought is set to 0, decrementing digit 6 of the thought by one, while raising the value of the thought which represents that slot by one. Then there's a similar program to the latter one for digit "5", then one for digit "4", then one for digit "3", then one for digit "2", then one for digit "1". Perhaps I should bring up a picture rather than trying to explain this in text...
Oh... hmm... Well, it somewhat works right now.
I'll have to figure out another way to get it to work past that.
Actually, I know how to get this to work. Have another initial program that increments and decrements the appropriate thoughts by 3, then have it run the first when it fails.
But that requires 72 more programs, 144 more run program contraption, 72 thought less and thought more contrivances (as a sum), and 144 more increment thought contraptions. That just isn't going to practically work out.
Also, with the binary base system idea, you need one (or more, but each additional one requires another Run Program contraption) main program and 20 additional ones, starting the main one with a contraption that sets a thought to the value of the memory storing your binary data, then adding a Run Program contraption for each of the additional ones. For each of the additional ones, you start with the Most Significant Bit, (524228,) checking if the thought is not less than that value, and if that passes, you subtract that value (524228) from the thought which represents the memory, while increasing the value of the thought that represents value 20 by 1. Then you go to the next Most Significant Bit (262144), and check if the number isn't less than that, before subtracting that value from the thought that represents the value of the memory and adding one to the thought that represents value 19. And so on and so forth.
If you want to do multiple bases within that, the only method I really see is using 2 bits to get a piece of data in Base 4, 3 bits of data to get a piece of data in Base 8, or 4 bits of data to get a piece of data in hexidecimal. And yes I know the total above can go over 999999. I also know the number is stored in binary, which means that it must have at least 20 bits of storage per memory, so the above should work without a problem.
However, with the above, you may have to have two or more programs interpret said data. I'll be willing to guess two of them will be enough for the 8 and 16 value ones, using a loop for at least one of those programs.
And yeah, sorry for bumping, but I couldn't edit my previous post.
Also, it can't be too hard to code the program I described earlier into a single compact feature that would save a lot of time, would it?
No idea if this should go here or elsewhere but, hideable beds like you can hide a room.
Not sure if it exists - its not in the wiki if it does - but a contrivance to check charm (or a set: charm greater than, less than, equal to). I'm starting to design my place but I'm worried about ugly people getting in and grossing the place up.
I'm just starting to build a new Place, a BIG place. Something which would be really useful for what I want to do is a way to multiply thoughts together. I can write a program to do it for me, but it'll be a bit of a big bastard. It would be much nicer if I had a contrivance to do it for me.
Keeps fingers crossed.
Seconding everything that Buddleia's just said.
The Improbable Island Enquirer - Forum
http://enquirer.improbableisland.com/forum/viewtopic.php?showtopic=27484