User Functions
Don't have an account yet? Sign up as a New User
Lost your password?
|
Enquirer Home Page | Twitter | Back to Improbable Island
CavemanJoe |
 |
Wednesday, March 07 2012 @ 09:21 AM UTC (Read 6514 times) |
|
|

Admin
 Status: offline
Registered: 02/24/08
Posts: 2281
|
Thoughts are now live!
"Thoughts" are what a programmer would call variables. Like Memories, but they only exist for a single page load. Because they're not saved anywhere, we don't need to take up database space - so you can have as many as you like, and you don't have to pay any Supporter Points for them!
So! What can you do with Thoughts? Well, let's take the Dice Roll Contrivance, and its successor, the new Roll to Thought Contraption.
Dice Roll rolls a 1,000-sided die and then returns a pass or a fail depending on whether the roll was above or below the number you specify. All well and good - but what if you want to do one thing if it's a roll between 0 and 100, another thing if it's a roll between 100 and 200, and so on?
Well, you'd be shit out of luck, since Dice Roll rolls a new die every time you use it.
Enter Roll to Thought.
Choose a minimum number and a maximum number, roll the die, and assign the result to "funkydieroll" or whatever word you come up with.
Then, use the Thought Greater and Thought Less Contrivances to see whether "funkydieroll" fits your criteria! "funkydieroll" stays the same!
You have these new Contraptions:
Set Thought
Increment Thought
Roll to Thought
And these new Contrivances:
Thought Greater
Thought Less
Thought Equal
And some of the Contraptions and Contrivances concerning Memories have been altered so that they can read Thoughts. Eventually I'll be extending Thought support across all the Contraptions and Contrivances where it makes sense to do so (is player hitpoints more than "scarylownumberofhitpoints"?).
You can even use Thoughts to pass data between different Logic Grids! If a Logic Grid sets a thought called "heythisgridpassedjustfineokay" or whatever, then other Logic Grids firing after that Thought is set will be able to read that Thought! Combine this with the Run Program Contraption to create some really complex and interesting stuff, where Logic Grids can affect the behaviour of other Logic Grids!
(I hear some programmery types thinking about asking me about variable scope right now, and I say this to them: Variable scope? VARIABLE SCOPE? Oooh, la de frickin' da! Check out Ms Software Engineer here, with her fancy ideas about "Standards" and "Common Sense." This is Programmer's Lego for Roleplayers, here, the variables go in a great big bucket with "VURBLES" written on it. That's yer variable scope support!)
(the $place_thoughts array is even a global. That's right, a global! *runs off giggling into the night*)
Have fun!
|
|
|
|
Count Sessine |
 |
Wednesday, March 07 2012 @ 07:11 PM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Pssssst! If you go hunting for these right now, you'll discover they are really easy to find. Hurry! Who knows how long this abundance will last!
|
|
|
|
Full Metal Lion |
 |
Thursday, March 08 2012 @ 01:06 AM UTC |
|
|

Improbable Badass
 Status: offline
Registered: 12/19/11
Posts: 439
|
Man, I should get on top of this Places thing. Not only do you get to build walls of text, you also get a bucket! Labelled "VURBLES"!
|
|
|
|
CavemanJoe |
 |
Friday, March 09 2012 @ 06:58 AM UTC |
|
|

Admin
 Status: offline
Registered: 02/24/08
Posts: 2281
|
You can now reference Thoughts and Memories in your Room and Page descriptions! The decorating job menu will tell you how! 
|
|
|
|
Trowa |
 |
Friday, March 09 2012 @ 02:34 PM UTC |
|
|

Improbable Badass
 Status: offline
Registered: 01/09/11
Posts: 426
|
Quote by: CavemanJoeYou can now reference Thoughts and Memories in your Room and Page descriptions! The decorating job menu will tell you how! 
THIS.
That's all I can think to say right now besides "I love you," but that would be awkward, even if I meant it on a completely platonic sort of way.
Something something unintelligible gibberish something.
|
|
|
|
Buddleia |
 |
Saturday, March 10 2012 @ 04:13 PM UTC |
|
|

Improbable Badass
 Status: offline
Registered: 04/23/10
Posts: 343
|
I'm really looking forward to using this, but ... I'm gonna need more instructions than that.
Help? Please?
Hairy Mary, another tutorial-series, perhaps? Tea and cookies and love and hugs!
Improbable Reference Links - goo.gl/MRBnb --------------
Land Registry (map of Places) ---- goo.gl/bpkRR
|
|
|
|
Hairy Mary |
 |
Sunday, March 11 2012 @ 02:24 AM UTC |
|
|

Improbable Badass
Status: offline
Registered: 08/17/08
Posts: 1083
|
Tea and cookies and love and hugs will get you a long way Budd.
I'm slowly writing a series of tutorials on the elements of memories, that will be my next page.
The whole programming guide thing is an ongoing project which is spreading long into the foreseeable future.
Shortish term
- Memories tutorials, I think another three or four pages should do.
- The original basic tutorials - replace the two pages that are now obsolete due to the weather being handily provided in Master Settings and also revision of pages to take into account Trowa's comments elsewhere in this forum.
- A couple or three new basic tutorials on mementoes and debugging.
Longer term
- Advanced tricks including the Stop Program and Run Program Contraptions and also Thoughts.
- Any other advanced tricks I think of.
- A non-tutorial, how-to section on games of chance, with various casino-ey type games.
- A how-to section on tricks for 'Adventure style' games, including how to have objects which can be picked up, moved around and dropped again, with inventories and how to tell what is currently in a room.
- A few other odds and ends that spring to mind, but which I won't tell yet.
That should take me up till about 2020 or so, by which time I'll have thought of some other things.
|
|
|
|
Count Sessine |
 |
Sunday, March 11 2012 @ 02:51 AM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Quote by: Hairy+Mary- A how-to section on tricks for 'Adventure style' games, including how to have objects which can be picked up, moved around and dropped again, with inventories and how to tell what is currently in a room.
How are you doing this? Not asking for the long-form tutorial essay now -- but hints would be much appreciated.
Much appreciated!
|
|
|
|
LydiaDefountain |
 |
Sunday, March 11 2012 @ 05:11 AM UTC |
|
|

Improbable Badass
Status: offline
Registered: 04/07/08
Posts: 142
|
Quote by: Count+SessineQuote by: Hairy+Mary- A how-to section on tricks for 'Adventure style' games, including how to have objects which can be picked up, moved around and dropped again, with inventories and how to tell what is currently in a room.
How are you doing this? Not asking for the long-form tutorial essay now -- but hints would be much appreciated.
Much appreciated!
I'm having trouble imagining this as well.. unless you have say so many pages for whatever combination of items a person can have and using memories keep track of the value changing it as needed depending on what new thing the player acquired.. and when memory = such and such the page with the right list is displayed?
Maybe?
Am I even close?
|
|
|
|
CavemanJoe |
 |
Sunday, March 11 2012 @ 05:18 AM UTC |
|
|

Admin
 Status: offline
Registered: 02/24/08
Posts: 2281
|
I would hazard a guess that HM's gonna use Mementos.
Thinking of it... the Inventory does need better organizing. Perhaps in the future I can put a Category tag in the Memento Forge, so that items from different Places can be grouped together.
|
|
|
|
Count Sessine |
 |
Sunday, March 11 2012 @ 06:04 AM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Mementos as they stand -- I can sort of see them being used this way. That is, it's easy enough to give a particular memento in one program, and take it back in another one. But that's a far cry from the kind of generalized flexibility HM just described!
Showing in the Player Inventory that a given group of Mementos had all come from a particular Place would be excellent.
(Separately -- the place inventory needs attention, too. I cracked a programmer's box and added the contents into my Place's inventory (placeid 344). It now shows -- exactly the same list that was there before, followed by four each of everything. Rather than adding 4 to the quantity when the Place already had some.)
|
|
|
|
Dirk Vanderhuge |
 |
Sunday, March 11 2012 @ 07:11 AM UTC |
|
|

Contestant
Status: offline
Registered: 08/14/10
Posts: 21
|
Holy Chrome... If this inventory stuff is possible...
Well, needless to say, Valskyr will get a lot more functional. I've been brute forcing a lot of stuff in it, and I'm sure it's all needlessly clumsy and inefficient. It's certainly nice not to have to worry about weather and tree effects for 270+ "outside" rooms, too, but I suppose that makes rain and tree shadow contraptions next to worthless.
The "global" memory idea is also nice, but if we could have a global memory state that was permanent as a memory chip, that would be even better.
|
|
|
|
Hairy Mary |
 |
Sunday, March 11 2012 @ 12:08 PM UTC |
|
|

Improbable Badass
Status: offline
Registered: 08/17/08
Posts: 1083
|
CMJ, no I wasn't thinking of using mementos. Mementos have the property that they're universal for everybody, which may be an advantage or disadvantage, depending on what you're trying to do. I haven't played with the memento gadgets yet. I will do soon(ish) if only so that I can write a page or two for them in the tutorial. I'd thought that they were in the whole place rather than attached to rooms, which menas that you'd still need memories to keep track of where they were meant to be, and with multiple copies of the same memento, that could start getting complicated. I'm not at all sure that I'd know how to do that.
Here's my idea for inventories and objects. I should very heavily stress that I HAVE NOT DONE THIS YET!! Wait until I have until saying that this works for sure.
Lydia - no, you don't need different pages for each combination, just one page for each object. Then you choose the combination of pages to show.
So. Give each of your rooms a unique number (unique in the sense that each number is used only once, not that each room only has one number.)* Start with 2, and go up from there. 1 = In the players inventory and 0 = Non-existent (the guest has to do something to make it appear, or has destroyed/used it up it in some way, or whatever). In each room, the very first programming thing that happens is a Set Thought: Thought_Current-Location = (That rooms room number).
Now, for each object, build a page somewhere (in a private room not accessible to the general public). Decorate with your object description. Then for each object have a memory which is set to the room number that the object is in.** You'll need to have a program in your first room that checks to see if somebody is a first time entrant, and if so then set all these memories as you want them to initially be.
Now for each object, build a program:-
Line 1: Is Memory_Object = Thought_Location-Check? (Note - different Thought to Current-Location.)
Line 2: Show Page for that object.
Have an overall program Object List rammed full of Run Program Contraptions which fires each of these in turn.
Now, if you set Location-Check = Current Location and run Object List, then you should get a list of everything in the room. If you set Location-Check = 1 and run the program you should get a list of everything the your guest is currently carrying.
Of course it should go without saying that, as with everything else in life, what should be and what is, are not necessarily the same thing.
I'm currently building the necessary pages to try this in my Puzzle Land Place. If you see a page go up in the wiki, then you'll know that it's worked. Or to be more precise, you'll know that what is described in the page in the wiki has worked.
--
On a side note, my gut instinct tells me that for Places of any real size and complexity, every room should start with a program, Set Thought_Room Location, Run Program, then have all the bits specific to that room, and end with another Run Program. The two programs run will essentially be a list of all the bits and bobs that want doing everywhere. What goes where will partly depend on what you want where on the screen, and also what you may or may not want to be stopped with a Stop Program elsewhere. For instance, if somebody is looking at their inventory, then you don't want a list of objects in the room underneath, so put List Objects Present in the bottom Run Program, and Check Inventory in the top.
Experience tells me that it's probably a good idea to decorate absolutely every room blank, and do everything via Pages. For a start you get a lot more control over what goes where. However I keep thinking "Ah this room is simple! No need to faff around with that here!" and then I think "Oh yes, and I'll just add this in, oh and that might be nice, and what about the other, and Drat! Wish I'd done it all with pages!"
I'll start doing that soon, but the next room is simple! No need to faff around with that there. 
----
* An exception to this would be if two different "physical" rooms both represent the same "logical" room, then they would have the same number.
** Depending on how big your Place is, you might be able to fit two, three, or even six objects in a memory, but that would be a bit more complicated. I haven't played with all this too much yet and I don't know how I'd go about doing it. We'll stick to the simple case of one memory per object here.
|
|
|
|
Twosocks Monkey |
 |
Sunday, March 11 2012 @ 12:17 PM UTC |
|
|

Improbable Badass
 Status: offline
Registered: 01/28/11
Posts: 246
|
I have been reading all of this with lots of interest but no comments so for the record, I want to say very very VERY LOUDLY THAT,
"HAIRY MARY YOU ARE DA BOMB!"
That is all.
-Rose
PS: Also, rather obviously, but important to say, CMJ is the best evil overlord. Having stumbled into his lair completely innocently, I'm rather glad his maze is impossible to escape. Who knew evil was so so good?.
moooooooooo Visit and help me finish the monster list: goo.gl/rpBGe (Ya'll mostly know me as CLOG, fyi)
|
|
|
|
Hairy Mary |
 |
Sunday, March 11 2012 @ 02:32 PM UTC |
|
|

Improbable Badass
Status: offline
Registered: 08/17/08
Posts: 1083
|
Quote by: Count+SessineMementos as they stand -- I can sort of see them being used this way. That is, it's easy enough to give a particular memento in one program, and take it back in another one. But that's a far cry from the kind of generalized flexibility HM just described!
Showing in the Player Inventory that a given group of Mementos had all come from a particular Place would be excellent.
(Separately -- the place inventory needs attention, too. I cracked a programmer's box and added the contents into my Place's inventory. It now shows -- exactly the same list that was there before, followed by four each of everything. Rather than adding 4 to the quantity when the Place already had some.)
You're keeping the gadgets in a seperate place, they're in your (weightless) hunter's lodge bag until you move them elsewhere, rather than in your backpack. Indeed, if you move them into your Place's inventory, and then take them back again, then they'll go back into your Lodge bag.
However, if two (of the same) gadgets have different preference settings, then they'll be listed separately. Also, if you have some amount of a gadget, and then get some more (from the scrapyard say) then they'll be listed separately.
The good news is that if you find say two Warp Contraptions together and take all (or put all into the Place inventory) then you will take/put all the Warp Contraptions. This makes it reasonably easy to see what you've got.
----
Dirk. I've had a little (silent) look round Valskyr, and I'm seriously impressed. I recommend that people take a look. It's on the southern most square of the snow fields up in the CC mountains. It's an entire 'ancient Celtic' world for fantasy role playing in, including missions and all sorts. It's very much work in progress, but it's well worth taking a look, even if you've no intention of RPing there. One point though Dirk, could you lock off the areas which you haven't done yet? I got lost in a whole sea of blank rooms the other day.
----
I've said before, that as far as I can tell, we've barely scratched the surface of what Place programming is capable of. I think that the above 'Inventory' idea is starting to properly dig into it. But it's not at all the limit. Give this another year or two, and things are going to get Impressive.
I'm sort of glad that CMJ misread me on inventories and mementos, he seems to have this uncanny ability to see what I'm thinking, then takes it, untangles and straightens it, knocks off the rough edges and streamlines it, and then gives us back something that is far more powerful and easy to use than what I thought that I wanted. I was starting to think that I ought to wear a tin-foil hat to bed.*
----
Rose: Are you saying that I inspire thousands of people to go on long marches demanding that I be banned? 
----
*Although I hear that all that tin foil hat stuff is just a myth put about by THEM so we all start wearing nice convenient aerials for THEIR mind control rays.
|
|
|
|
Count Sessine |
 |
Sunday, March 11 2012 @ 02:37 PM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Wow, HM, that's a lot to think about!
As for mementos... they can be owned by either a player, or by a Place. You're right, if they're in a Place's inventory, they are not associated with a particular room in that Place.
Another problem with using mementos for game objects is that it's possible for the Place to run out of copies of a memento. If you give your Place 50 copies of a dead battery to give out, then when the fifty-first player comes along, they're going to be out of luck.
This can be mitigated to a certain extent by setting up situations in the game where the Place takes mementos back, but that only means that all 50 will eventually end up in the possession of those players who don't keep playing your adventure. What if people discard some of your key mementos, drop them on the map, give them to someone else...? Not only that, if a character is expired for inactivity all their inventory items are wiped out, so sooner or later most of those initial fifty dead batteries will have vanished.
You'd have to keep monitoring and replenishing the stock of all memento-objects in your Place, just to keep your game playable.
I like your notion much better -- it's sustainable.
Edit: Mementos could have a role, too, but I think more in the way of trophies for completion.
|
|
|
|
Count Sessine |
 |
Sunday, March 11 2012 @ 04:29 PM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Quote by: Hairy+MaryQuote by: Count+Sessine(Separately -- the place inventory needs attention, too. I cracked a programmer's box and added the contents into my Place's inventory. It now shows -- exactly the same list that was there before, followed by four each of everything. Rather than adding 4 to the quantity when the Place already had some.) You're keeping the gadgets in a separate place, they're in your (weightless) hunter's lodge bag until you move them elsewhere, rather than in your backpack. Indeed, if you move them into your Place's inventory, and then take them back again, then they'll go back into your Lodge bag.
However, if two (of the same) gadgets have different preference settings, then they'll be listed separately. Also, if you have some amount of a gadget, and then get some more (from the scrapyard say) then they'll be listed separately.
The good news is that if you find say two Warp Contraptions together and take all (or put all into the Place inventory) then you will take/put all the Warp Contraptions. This makes it reasonably easy to see what you've got. Ah. Right. The ones from the programmer's box have the prefs that let them go into the Lodge bag. The others don't, so they are retrieved into the backpack. That's why they are listed separately.
I see now why it works the way it does, but... still. If you do a 'Take all', transfer some to your backpack, then do a 'Put all', you end up with three groups of what's functionally the same item.
|
|
|
|
CavemanJoe |
 |
Sunday, March 11 2012 @ 04:37 PM UTC |
|
|

Admin
 Status: offline
Registered: 02/24/08
Posts: 2281
|
Quote by: Count+SessineWow, HM, that's a lot to think about!
As for mementos... they can be owned by either a player, or by a Place. You're right, if they're in a Place's inventory, they are not associated with a particular room in that Place.
Another problem with using mementos for game objects is that it's possible for the Place to run out of copies of a memento. If you give your Place 50 copies of a dead battery to give out, then when the fifty-first player comes along, they're going to be out of luck.
This can be mitigated to a certain extent by setting up situations in the game where the Place takes mementos back, but that only means that all 50 will eventually end up in the possession of those players who don't keep playing your adventure. What if people discard some of your key mementos, drop them on the map, give them to someone else...? Not only that, if a character is expired for inactivity all their inventory items are wiped out, so sooner or later most of those initial fifty dead batteries will have vanished.
You'd have to keep monitoring and replenishing the stock of all memento-objects in your Place, just to keep your game playable.
I like your notion much better -- it's sustainable.
Edit: Mementos could have a role, too, but I think more in the way of trophies for completion.
So what we need, really, is Place Items. That is, Mementos with the following differences:
* To forge them, you pay a flat rate for a Memento Generator that goes in your Place, rather than paying for individual Mementos.
* The non-transferable flag is set.
* The Unique flag is set (the player may have only one).
* They go in a different Inventory area.
|
|
|
|
Count Sessine |
 |
Sunday, March 11 2012 @ 05:22 PM UTC |
|
|

Moderator
 Status: offline
Registered: 08/16/08
Posts: 1402
|
Quote by: CavemanJoeSo what we need, really, is Place Items. That is, Mementos with the following differences:
* To forge them, you pay a flat rate for a Memento Generator that goes in your Place, rather than paying for individual Mementos.
* The non-transferable flag is set.
* The Unique flag is set (the player may have only one).
* They go in a different Inventory area. Ouh! That's brilliant. Two contraptions, two contrivances that would have to work with them, but I suppose the existing Memento C&Cs could handle that, or could be made to.
And in Player Inventory, they'd show the name of the Place they came from?
HM, I've been mulling over your idea, and I am becoming quite excited about using it for mobile NPCs!
|
|
|
|
Hairy Mary |
 |
Sunday, March 11 2012 @ 06:35 PM UTC |
|
|

Improbable Badass
Status: offline
Registered: 08/17/08
Posts: 1083
|
CMJ: Are Place Items meant to be instead of my little idea or as an alternative? I realise that what I'm suggesting could take up a lot of memory space, and server load. I've been trying to think up ways to extract two or three digit numbers from memories, (so that Dirk could fit two objects per memory for example) I think that it could be done with a two-program combination, but I'm really not sure. I would need to work on that a little.
Mementos: I think you might be over egging the rate of attrition a little bit there Sussine, it's not like you're going to need fifty a week or anything, but yes, you will need to restock from time to time.
CMJ: I'm not sure about 'unique', there might be occasions when duplicates might be useful, and when they're not, that could be dealt with. The big problem is putting them down and remembering where they're meant to be.
I think mementos and my memories idea would serve different purposes, they'd both be useful though.
If my memories thing really is a bad idea, then I'll stop thinking about it, and start concentrating on other stuff, How to have combat and random encounters for example. (WARNING: NO! I haven't come up with this yet, so don't ask! Furthermore, I'm unlikely to use it in any of my Places, so unless you're willing to use your Place as a guinea pig, then don't expect to see it any time soon, or indeed at all.)
Quote by: Count+SessineHM, I've been mulling over your idea, and I am becoming quite excited about using it for mobile NPCs!
First of all, I can't wait to see your Place Sessine. Is it open? Or nearly finished? Started?
I've got a few NPC's who move about in Puzzleland at the moment, but it's all a bit basic there, with this system you could have people appear when you rub a magic lamp or something.
The things that I didn't mention were picking up and putting down objects. This would be a program (for each object) Transfer from X to Y, which would check that said object actually is in X and then change X to Y. When picking up (respectively putting down) Y (resp X) would be 1, but you could easily press that into service for moving NPCs.
By the way  ADVERT  Have you seen Interactive NPC's?
For anybody who hasn't, the programming is pretty basic (although the writing might not be) .
|
|
|
|
Content generated in: 1.75 seconds |
|
|