The Castle Doctrine Forums

Discuss the massively-multiplayer home defense game.

You are not logged in.

#1 2013-11-06 11:24:35

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Clocks!

Anyone who entered my disco house (Mr Welles) recently or has died in Mr Morse's electric floor maze might have realised that things are changing in these houses without any buttons being pressed. This is because these houses use electronic clocks that update whenever the player moves or uses a tool.

Here is an example clock: http://castledraft.com/editor/YmwWhe

The two essential components to a clock are a clock signal generator and a counter.

The clock signal generator is in the top left hand corner. It generates a single "pulse" of current each time the player moves or uses a tool and sends it to the counter.

The counter is made up of a number of "bits". Each bit works in a simple way, if it is currently "off" and receives a pulse it switches to "on", if it is "on" and receives a pulse it switches to "off" and sends a pulse to the next bit. This makes the counter count up in a binary sequence.

Clocks can be used to trigger traps when the final "bit" sends a pulse (this will take 2^n - 1 turns where n is the number of bits) or the power from the individual pits can be used to have house components alternate between on and off (such as in Mr Welles' disco room).

The original idea for clocks came from my brother, Hippasus. He realised that paradoxing switches reset and that this could be exploited and came up with some large clock designs that used two parts that would alternately power the other each turn. I later realised that what was important was simply making a pule each turn which could be attached to a counter and was able to come up with the much more compact design for the signal generator seen in the example. Counters have been around since the blueprint days but my brother stumbled upon them independently and we worked on refining the design together.


Jason has indicated that he might remove the possibility of electrical changes sustaining over time but I think it is important that we explore what is possible and see what we can come up with. Mr Morse's house (my brother's) was a lot of fun and I enjoyed the possibility of making a non-stop disco room and so I want to open it up to the floor to let people to come up with interesting traps and designs. I think in general it will enrich the game rather than take away from it but I think this needs to be tested.

I will post a more detailed description of how the signal generator works later if people would like. I can also give examples of how to use a signal from the clock to activate traps if people are stuck. Right now I'm off to bed though. Have fun!

Last edited by joshwithguitar (2013-11-06 11:28:05)

Offline

#2 2013-11-06 11:30:55

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

Also, I have set up a house to show an exposed clock it in action. I'm not sure how long it will last, please don't kill my wife I want non-forum goers to see it so they can copy it.

Offline

#3 2013-11-06 13:30:25

jasonrohrer
Administrator
Registered: 2013-04-01
Posts: 1,231

Re: Clocks!

Okay, I've had an official change of mind about this.  The "memoryless" switch in the code has been turned off for now, meaning that latches, and counters, and clocks, and other stuff will remain.

Offline

#4 2013-11-06 15:06:51

awesomebill
Member
Registered: 2013-10-22
Posts: 35

Re: Clocks!

I still think this violates the idea of " you can always go back" and "death is always your fault" No sir, I dont like it. As If magic dances and unseen poodles were not bad enough, now I have to worry about things setting of clocks that can turn the whole dungeon into an infinite loop of death. Not a fan.

Offline

#5 2013-11-06 16:13:28

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

awesomebill wrote:

I still think this violates the idea of " you can always go back" and "death is always your fault" No sir, I dont like it. As If magic dances and unseen poodles were not bad enough, now I have to worry about things setting of clocks that can turn the whole dungeon into an infinite loop of death. Not a fan.

"You can always go back" was never much of an idea. More like "you can always go back" if you are walking down a straight corridor, the screen doesn't shift and no pet has seen you". It doesn't violate "death is always your fault" as you the game has always been about dying through ignorance, this is how you learn. After the first few times clocks kill you you realise that it might be an idea to wait around and see if things change on their own. Or just make sure all power sources are accounted for. In the end stepping past that electric floor is only slightly more risky than it was before.

Also, there are strong limits to the extent at which clocks can be used - you try creating an "infinite loop of death".

Offline

#6 2013-11-06 16:16:45

ukuko
Member
Registered: 2013-04-06
Posts: 333

Re: Clocks!

I dunno, Bill. I think it's easier (and more fun!) to work out the solution to a pattern-based electronics puzzle than wrangling an unseen pup over some faraway switches, or choosing from one of twenty doors.

Offline

#7 2013-11-06 16:45:52

zed
Member
Registered: 2013-04-16
Posts: 160

Re: Clocks!

joshwithguitar wrote:

    Here is an example clock: http://castledraft.com/editor/YmwWhe

That's brilliant!

For some reason I had convinced myself that a signal generator was impossible.
I'm happy to be proven wrong!

Here's a slightly more compact version of the same design:

 ++-+			    $: power
++V$v+			    v: voltage-triggered switch
+V---V---pulse out----      V: inverted voltage-triggered switch

Re the game design issues: I'm in multiple minds on this. On one hand, I've
had great fun playing with the electronics, and love how it interacts with the
trap-setting part of the game. On another hand, there are UI issues when an
important part of the game mechanics is not properly represented on-screen. On
a third hand, some source of intricacy (pun will have been intended) wherein
there can be continual innovation is required for the game to avoid
stagnation, and electronics fits that bill nicely. On a fourth hand, it's a
puzzly kind of complexity which is explicitly not what Jason wants.

To combat the UI problem, I'm tempted to suggest that the electronics be
memoryless as in Jason's recent patch, but with a new tile acting as an
explicit exception: a "capacitor" which, if it is powered on one turn, acts as
a power source on the next turn. That way you could still have clocks and
counters and so, but they'll be easier to reason about. (Of course capacitors
don't actually work like this with mains AC electricity, but nevermind!)

Last edited by zed (2013-11-07 14:32:12)

Offline

#8 2013-11-06 19:22:12

Hippasus
Member
Registered: 2013-09-03
Posts: 32

Re: Clocks!

awesomebill wrote:

I still think this violates the idea of " you can always go back" and "death is always your fault" No sir, I dont like it. As If magic dances and unseen poodles were not bad enough, now I have to worry about things setting of clocks that can turn the whole dungeon into an infinite loop of death. Not a fan.

The late Mr Morse's (my) maze was, I'll admit, an "infinite loop of death", but haven't you heard the old rougelike saying "death is fun"? People began by dying in droves, but soon people died and learnt and died and learnt and started using more clever tactics. Any 'random' sequence will have to repeat itself eventually as there are only a finite amount of states the circuitry can be in before it repeats itself. To make a clock and pseudo-random number generator with a sequence 120 long took up almost half the house. Quite a few people had figured out the sequence by the end, and were coming up with methods even I hadn't thought of to survive in the maze. In addition, a single damaged wire would render the whole generator useless leaving the floor perfectly inert. You try hiding a bundle of electronics half the size of your house effectively! Add to that the fact that I almost pissed myself each and every self test (and eventually died during one) it's not as if the house was in any way optimal. If I wanted to make an 'invulnerable' house, believe me, it would be easier to do a magic dance or combo lock. I made my maze because I thought it would be fun and different (and OK because I wanted to get rich and famous!). When I finally got done over, the robber, (ukuko?) entered my house with only a pistol. It was beautiful to watch: not a magic dance seemingly disengaged from the danger of death or any discernible meaning for that matter, (which most magic dances are) but one actively engaged in surviving the electrical jolts emanating from a mysterious, but none the less predictable mainframe, a dance in time with the infinite loop of death.

None the less Bill I understand your outrage. The line in this game (or any game with emergent properties for that matter) between something clever as opposed to something that is simply exploitative is always going to be a fuzzy one. If everybody had complete knowledge about what is dangerous and what isn't then it would become a game simply about calculated risks, with incomplete knowledge there is a darker and more frightening edge to your risk taking, I think this is an intentional aspect of the game. Whenever I'm tricked by a new clever combination I feel exploited, but hell, it is, to a certain extent, a game about exploitation. In the end if people can learn ways of dealing with a certain combination of elements I feel it isn't an exploit. True exploits are ones which there is no way to combat, ones which add nothing to the game. As I said earlier, the line is by no means clear, but as far as I can tell clocks are too vulnerable and predictable to be an exploit. I also don't expect every second house to become like Mr Morse's, frankly, the electronics are to convoluted, so it won't end up (as far as can tell) leading to a row of identical houses filling the street. The ultimate success of my house was that it was unique and unexpected, it will not stay that way forever.

It is also true that the game has strayed before (I speak of the blueprint days) into realms where without a degree in computer engineering things might have been tough. (I've got a degree in creative arts by the way) I understand that not everybody gets the glee I get from making or figuring out complex circuitry and that, simply, that is not what the game is about. But in the blueprint days there was a major difference, the mainframe was closed behind an impenetrable wall, all you could do was try to understand it. If you could not then there was nothing at all you could do. But as I have pointed out, my mainframe is different, it is vulnerable, Luddites need not understand my damn contraption, they can smash it to little pieces. Wouldn't THAT at least be satisfying?

Offline

#9 2013-11-07 01:16:05

ukuko
Member
Registered: 2013-04-06
Posts: 333

Re: Clocks!

Hippasus wrote:

When I finally got done over, the robber, (ukuko?) entered my house with only a pistol.

Not me. I came in with one saw, one meat and a pistol and hung myself next to the vault. I cut through the wooden wall underneath the passage to the vault to skip going round the corner and wrangling the four dogs.

Great house! I look forward to your next death machine.

Offline

#10 2013-11-07 12:33:38

jasonrohrer
Administrator
Registered: 2013-04-01
Posts: 1,231

Re: Clocks!

Interesting discussion for sure.

Even eliminating memory doesn't solve the problem of electronic properties that are "invisible" in the UI.  Simplest example is a paradox circuit:

http://castledraft.com/editor/avKz6t

This loops forever, turning itself on and off, and never resolves.  The game detects the looping behavior and has the whole thing "settle down" into it's lowest state (identical to what is pictured there), and this is not a visually consistent state (power looks like it should flow to the light, but the light is off).

This has nothing to do with circuit memory, but instead our ability to build paradoxical circuits.

Even WORSE is this little number (the heart of Josh's pulse circuit):

http://castledraft.com/editor/DF3mzI

The whole thing loops, but throughout the loop, those two lights are ON at every step (getting power from either left or right on every other step in the loop).  Thus, when the engine goes to settle the loop down into lowest-seen states for each element, the lights' lowest seen states are ON, so they stay ON.

So... this brings back the idea of some kind of "looping" inconsistency sprite for these voltage-triggered switches, to let you know visually that something is up, and the circuit is oscillating.  But it seems like that would need to apply to doors and other stuff too, which makes the whole thing messy... I mean, the door is currently settled into "open"... it is actually open.  Like, we've peeked into the box and found where the particle actually is.

The other option would be for stuff to "settle" into it's highest-seen state instead of its lowest.  Then, in the first example, the light would be on, but the voltage-inverted switch would be sprung open.  Slightly inconsistent... but in a different way.  At least then, you'd never have these mysteriously "on in the middle" components where stuff around them looks off.  Oh, I dunno.... inconsistent either way!

Offline

#11 2013-11-07 19:49:06

jere
Member
Registered: 2013-05-31
Posts: 540

Re: Clocks!

Kudos, josh! This is one of the coolest things I have witnessed in TCD. I had been using cats as a clock pulse for a while and then the family when panic buttons arrived. I never thought it was possible in circuitry and definitely not so compact.


Golden Krone Hotel - a vampire roguelike

Offline

#12 2013-11-08 18:03:24

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

zed wrote:

Here's a slightly more compact version of the same design:

Great signal generator zed! For some reason I had convinced myself that such a simple design wasn't possible. In fact, it can even be improved upon:

++-+			   $: power
+V$v+			   v: voltage-triggered switch
+---V---pulse out----      V: inverted voltage-triggered switch
jasonrohrer wrote:

So... this brings back the idea of some kind of "looping" inconsistency sprite for these voltage-triggered switches, to let you know visually that something is up, and the circuit is oscillating.  But it seems like that would need to apply to doors and other stuff too, which makes the whole thing messy... I mean, the door is currently settled into "open"... it is actually open.  Like, we've peeked into the box and found where the particle actually is.

The other option would be for stuff to "settle" into it's highest-seen state instead of its lowest.  Then, in the first example, the light would be on, but the voltage-inverted switch would be sprung open.  Slightly inconsistent... but in a different way.  At least then, you'd never have these mysteriously "on in the middle" components where stuff around them looks off.  Oh, I dunno.... inconsistent either way!

I like the idea of "looping" inconsistency sprite for these voltage-triggered switches as it would be quite simple and let players know that some form of power is able to pass through a looping voltage switch. It would be unnecessary for doors and pit traps as they do not conduct and I'm also personally fine with electric floors and orange lights being off while passing some form of power as long as long as the voltage switches let people know that something is going on when they explore it.

The second option would lead to a lot of interesting traps no longer working. There is something so satisfying watching someone cut a wire only to find the electric floor under them turn on or the trapdoor they are standing on open. And as with all traps people learn what is and isn't safe through dying and it does make sense that cutting a circuit can act as a trigger for a trap - I think a lot of alarm systems use this kind of thing. (Thinking about it though the electric floor thing could still be done it would just require more sophisticated electronics).

Offline

#13 2013-11-08 19:03:24

largestherb
Member
From: england
Registered: 2013-05-27
Posts: 381

Re: Clocks!

time to put some sticky buttons into a series of clocks so people have to tune it themselves before venturing into the death maze? yikes

Offline

#14 2013-11-11 19:26:58

zed
Member
Registered: 2013-04-16
Posts: 160

Re: Clocks!

joshwithguitar wrote:
++-+			   $: power
+V$v+			   v: voltage-triggered switch
+---V---pulse out----      V: inverted voltage-triggered switch

Ha! So simple once you've found it... makes you wonder how we failed to
stumble on it until now!

jasonrohrer wrote:

So... this brings back the idea of some kind of "looping"
inconsistency sprite for these voltage-triggered switches, to let you know
visually that something is up, and the circuit is oscillating.  But it seems
like that would need to apply to doors and other stuff too, which makes the
whole thing messy... I mean, the door is currently settled into "open"... it
is actually open.  Like, we've peeked into the box and found where the
particle actually is.

I think it would be neat and informative to have "partially powered" sprites.
That could be slightly-closed doors and trapdoors, dimly glowing grids and
lights, and perhaps some kind of blur effect for the relays. It makes sense
that the traps would act the same when partially powered as when unpowered.

Offline

#15 2013-11-13 13:19:07

jasonrohrer
Administrator
Registered: 2013-04-01
Posts: 1,231

Re: Clocks!

Hmm....

I just worry that it would be even more confusing (electric floors that are dimly lit... are they deadly?)

Obviously, this is a pretty esoteric issue that we're dealing with here, and I don't want our concerns about that to over-complexify the rest of the should-be-simple parts of the game.  You know, a door is either open or closed.  Binary.

I wonder if any of you folks have played Michael Brough's amazing game Corrypt.  The insight there is that magic, if it actually existed in the world, would be reality-breaking, so magic in the game is kind of game-breaking.  Magic as glitch.

And technology basically is magic.... like figuring out exploits in reality that allow you to accomplish seemingly-impossible things (like a single man lifting an entire piano by himself----he can do this with a compound pulley).

So, it's not so bad that the terribly esoteric, technical parts of the game seem like inexplicable magic to the uninitiated.  That paradoxical states are possible, but that the paradoxes can actually be understood and mastered for even more powerful outcomes.


It's kindof like two mirrors perfectly facing each other.  It creates a mind-bending mise-en-abime effect.  It's also the technological basis of a L.A.S.E.R.  Cool that one of the most crazy artistic discoveries (mise-en-abyme) has this nice connection to one of our craziest, most magical tech discoveries (lasers, and eventually holography).

Offline

#16 2013-11-13 15:34:43

ukuko
Member
Registered: 2013-04-06
Posts: 333

Re: Clocks!

The only obvious visual clue that I can think of is a flicker animation (like, a grid flickering weakly on and off, or a door poking a little bit out and then receding). But I'm pretty sure you don't plan on introducing any sub-turn frame animation at this point.

Offline

#17 2013-11-13 16:08:02

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

jasonrohrer wrote:

Hmm....
I wonder if any of you folks have played Michael Brough's amazing game Corrypt.  The insight there is that magic, if it actually existed in the world, would be reality-breaking, so magic in the game is kind of game-breaking.  Magic as glitch.

I just played through Corrypt a couple of days ago actually! Yeah, I like the idea of electronics not acting in a way that seems obvious at first but then people being inspired to figure out how it was done. That is perhaps my one concern about having a too in-depth electronics tutorial - it might remove some of the magic of discovery for people and also the sense of exploring clever houses to find out how they work if they can just go online to figure it all out.

Offline

#18 2013-11-13 18:15:05

jere
Member
Registered: 2013-05-31
Posts: 540

Re: Clocks!

OMG. Yes! Corrypt is pretty amazing, but I actually couldn't beat it. It's pretty mind boggling. Brough has pumped out a lot of really good stuff. 868-HACK, his chapter in Experiment 12, and Vesper.5 (it takes at least 100 days to beat and I'm 1 day away from finishing) are all amazing.

You know, I was overly concerned about the ability to copy house designs. I thought it would cause the game to stagnate because it's so easy to copy an optimal design. But in fact it's incredibly hard to understand some of the designs, particularly electronics, and tweak them. Even with instructions, some circuits are going to be difficult to reuse.... I still haven't figured out why clock pulses work for instance, despite having an EE degree.

I think that's OK as long as there are alternative ways to build your house that work well. What wouldn't be acceptable is if this obscure technology was required to play the game well (e.g. when blueprints were around).

Last edited by jere (2013-11-13 18:15:46)


Golden Krone Hotel - a vampire roguelike

Offline

#19 2013-11-13 23:45:58

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

jere wrote:

I still haven't figured out why clock pulses work for instance, despite having an EE degree.

Here is a diagram I've put together that shows the cycles of a clock signal generator: http://castledraft.com/editor/lbJH96

It lets a pulse through the first cycle and then blocks power after that. Because each voltage switch alternates between "on" and "off" and never settles they all default to the "off" state once it is resolved and so the whole thing starts afresh next turn and sends out a new pulse.

Hope this helps.

Offline

#20 2013-11-14 07:59:55

jere
Member
Registered: 2013-05-31
Posts: 540

Re: Clocks!

Yes, thanks. That one is a lot simpler than the first one you posted. My main stumbling block was the shorted inverted switch. I thought it could never have an output if the input and control are shorted. The part (I think) I was missing was that it takes a cycle for the switch to change states.

I've tried to work through the first example to understand it: http://castledraft.com/editor/cYTgmJ


Golden Krone Hotel - a vampire roguelike

Offline

#21 2013-11-14 17:21:23

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

Yeah, directly shorted invert switches (what I like to call 'paradox' circuits because of the similarity to the liar paradox) actually have a repeating 'on' - 'off' cycle (see m, which can be very useful for a number of things. (See the fourth example down on my "Electronics Tutorial?" page).

With the first example you've made a mistake in the 4th cycle (5th diagram) - here is a corrected version. After the 4th it loops between the 3rd and 4th states.
http://castledraft.com/editor/njhjYL

Offline

#22 2013-11-15 22:19:21

ZenRose
Member
Registered: 2013-11-07
Posts: 45

Re: Clocks!

As a new player reading through this discussion I am only just barely following some of the more complex circuit discussions and can't hope to understand their application in game yet.  That being said it would be a shame for the real depth and emergent complexity of the circuit design to be sacrificed for ease of comprehension.  In contemplating this issue today my suggestion is detection of 'advanced circuitry' (anything that acts on itself turn over turn in a way other than would be normal action in 'memoryless' mode).  Would it be fair to place an 'advanced circuitry' flag on houses that contain such complexity so that you know  what class of trouble you are getting into? 
 
Additional:  What is a 'magic dance' in this game?  or Invisible poodles?

Thank-you.

Offline

#23 2013-11-16 01:39:23

joshwithguitar
Member
Registered: 2013-07-28
Posts: 538

Re: Clocks!

Hi Zen Rose and welcome to the forums!

In terms of "advanced circuitry detection" it would remove a big part of the psychological aspect of the game. In this game you are meant to be paranoid and houses are mean to try to lull you into a false sense of security. Whether or not a house uses advanced circuitry is something that you have to either take a gamble on or just act like it is always the case. A good indicator of how dangerous a house is the visits to kills ratio of a house. Also, advanced circuits are not the only thing you have to worry about. I currently have a house with a higher than 50% kill rate and I haven't used a single voltage triggered switch.

A "magic dance" is where you have an animal see you and then in order to advance you have to follow a precise pattern of steps in order to get the pet to push certain pressure switches behind a wall. Sometimes they are set up such that if you do them incorrectly a trapdoor will open or an electric floor will power just as you step on it.  I'm guessing "invisible poodles" are dogs that have been seen at some point and are now following you unseen behind walls.

Offline

#24 2013-11-16 21:46:49

ZenRose
Member
Registered: 2013-11-07
Posts: 45

Re: Clocks!

Thank-you for the informative reply Joshwithguitar.  Based on your reply about magic dance am I correct in understanding that once an animal sees you it continues to behave like it can see you from that point on even if line of sight is broken?

Offline

#25 2013-11-18 09:24:42

Simoon
Member
Registered: 2013-05-12
Posts: 31

Re: Clocks!

ZenRose wrote:

Thank-you for the informative reply Joshwithguitar.  Based on your reply about magic dance am I correct in understanding that once an animal sees you it continues to behave like it can see you from that point on even if line of sight is broken?

Yes. Once an animal saw you, it is "activated" and will follow (or avoid you) even if line of sight is broken.

Offline

Board footer

Powered by FluxBB 1.5.8