The Castle Doctrine Forums

Discuss the massively-multiplayer home defense game.

You are not logged in.

#26 2017-02-12 15:03:06

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

Re: New "cheatproof" test server

There will always be a money creation problem in your proposed system, and throwing more players into the mix won't solve it.

Proof by induction on size of player pool.

Base case:  If N=2, there's clearly a money creation problem.  Zed starts with money, and how does p2 naturally get money from Zed?

Induction hypothesis:  Assume there's a money creation problem with N players.

Induction step:  Is there a money creation problem with N+1 players?

Yes, because adding a new player to the pool adds no extra money to the pool, so it doesn't help to solve the money creation problem.

We've thus proved that a money creation problem exists for any player pool size N by weak induction.


#27 2017-02-12 15:39:15

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Well the problem you're identifying there is that having one player with all
the money is a fixed point of the dynamical system - that state will persist
until it's given a kick by an external force. That can be done hackily through
gifting, or in a more principled way as with the 'abandoned houses' scheme.
But the interesting question is what happens once you've done that, and you
have (one way or another) got into a situation where the cash is distributed
among many players. When I'm considering whether the system works or not, it's
what happens then that I have in mind. Part of it "working" is that the system
rarely gets trapped again in a dead fixed point state - probably more could be
done to discourage that, but still it will happen sometimes - hence the need
for some automated system to kick it back out.


#28 2017-02-13 00:00:47

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

Re: New "cheatproof" test server

Well, the fact that you need a "temporary hack" like gifting "to get it up and running" is telling, and why I'm suggesting that thinking inductively is important.

The financial system in the original TCD didn't work to prevent sockpuppets, but it did "work" as a functioning economy for any sized player pool, all the way down to N=1 (you can build a worth-robbing house with your starting money and then wait for another player).  There was no hand-wavy "well, more players will somehow fix it" argument.

The reason why what you're describing doesn't work for N=2 is because by "gifting" or "mercy robbing" the other player, Zed isn't really playing the game.  Zed has no rational reason to rob the other player, because Zed knows for sure they have nothing worth robbing.

Once it "gets going," with many players, that problem will persist.  When the N+1 player joins, people will have no rational reason to rob them, so that player will be frozen out of the economy.  And, assuming it ever did "get going" through some hack or trick, over time, the wealth would tend to snowball into fewer and fewer accounts, gradually enlarging the pool of players who aren't worth robbing, and thus the pool of players who are frozen out of the economy grows.

The players with money will get to know which other players have money pretty quickly, just like Zed knows this in the case of N=2.

Like, with N=4, how do I know right now that I have all the money?  Because I stole it all!  I'm not going to try robbing anyone now.  Any new house that pops up has no money in it.


#29 2017-02-13 00:51:10

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

> Once it "gets going," with many players, that problem will persist.  When
> the N+1 player joins, people willhave no rational reason to rob them, so
> that player will be frozen out of the economy.

Yes, it's entirely crucial that when players see a $2000ish house in the list
they haven't seen before, they have reason to think it might contain enough
money to be worth robbing. I tried to explain how reserves are meant to
achieve this. You seem to be saying it won't work, but I don't see why.

Certainly it won't work with only two players. When a third one joins,
theoretically it could work and they'll get into the game, but it's unlikely.
With sufficiently large numbers I believe it would work; I don't know how
large is sufficiently large, though.

To clarify things, here's the theoretical way it could work when a third
player Bob joins Zed and JR who are in the middle of a pitched robbing war,
with both (due to well-protected wives) having money in the bank. I see the
new name on the list, and think 'pfft, clearly nothing there'. So I go on a
robbing run against you, or work on my house, or even desert the game in
favour of real life for a bit. Then I come back, see the same name on the
list, and think as follows: "Pfft, clearly nothing there. Unless JR went in
there and died, but why would JR do that when there was clearly nothing there?
Unless JR thought that I'd been in, but why would I do that when there was
clearly nothing there? Unless I went in because I thought JR might, but why
would JR think that I thought that JR thought that it might be worth going in
when there was clearly nothing there? Unless... hold on, this logic is getting
a bit complicated. Do I really trust JR to think through this logic
accurately? Hmm hold on, without that trust, it isn't logical at all... does
*JR* really trust *me* to think that logically? When it's only logical under
assumptions which are seeming rapidly untenable? OK, I'm only risking $500,
I'll go in and have a look. Pfft, that commit trap doesn't work, look I can
just... oh right, yeah. Oops."


#30 2017-02-14 17:29:48

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

Re: New "cheatproof" test server

Well, I always thought you were a math-and-proofs kinda guy, so I was trying to get rigorous with you.  Don't you have a Ph.D. in Math or something?  When you say, "I don't know how many players would be sufficient," that feels very hand-wavy to me.

Regarding reserves, they don't work to solve the fundamental problem, because new players have no money to put in reserve.  You only possibly have money in the reserve if you've been robbed unsuccessfully at least once.

There's simply gotta be a way to get the thing off the ground.  You've built a glider, and you claim it will keep flying indefinitely if you just get it up high enough in the air to start with.  But we can prove by induction on the altitude that it will eventually come back down regardless of the altitude.  You need to figure out how to put a propeller on it!

What you're describing in your hypothetical 3-player setup is simply a Nash equilibrium, which is a way of curtailing the infinite regress that you're imagining.

Most likely, we'd both be sitting there waiting for the construction value on the house to rise above $2000.  Then we'd KNOW he had some extra money to spend, and that he likely had a reserve.

And, the great thing about a solution that holds water in the face of inductive reasoning is that it works well in the small-N cases as well.  Like, in the base case.  What you have is clearly not working for very small player pools, so that in itself is a problem if the thing is going to get off the ground (the small player pool has to be able to keep playing!).

TCD itself did not make sense inductively, not with money creation, but with content consumption.  Everyone creates only one piece of content, but wants to consume multiple pieces of content.  Clearly, it doesn't work for small N.  But I waved my hands and said, "Well, with enough players, it will somehow work itself out."  Yes, it reached something like 600 active houses at one point, but the flawed design made dwindling, not continued growth, inevitable.


#31 2017-02-15 14:45:01

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

You're right that I settled for a system which I couldn't see wouldn't work,
rather than a system which I could see would work. I continue to expect it
would work - but it's a complicated dynamical system involving human
psychology, so I think hoping for a watertight proof that it would work is
over-optimistic. As for your argument that it couldn't work - I agree it's a
valid argument under the common game-theoretic assumption of recursive
rationality (or whatever it's called), i.e. that every player is rational and
that every player assumes every player is rational and so on. The problem is
that this assumption isn't actually true!

But I agree that it would be better to have a system which works even with
that assumption, because it's almost true and it's hard to quantify how false
it is. And it would certainly be nice to have a system which doesn't grind to
a halt when there are too few players, if only because it makes it a bit
closer to plausible that it might actually accrue some players!

So here are some thoughts on incorporating your 'seed' idea.

The aim is to ensure that players who might otherwise be locked out from the
main multiplayer game have a way to get into it. It must not be open to
sock-puppet abuse. Theoretically, an opportunity for non-automatable grinding
would work - at the most depressing end of the scale, that could just be
completing CAPTCHAs. We can aim to make it less grindy.

We can imagine developing a map-generation algorithm which would produce
genuinely interesting and challenging houses, which players won't be able to
develop an algorithm to automatically solve. But at least some of the
generated houses must be solvable toollessly, else bankrupt players will be
stuck. So we have to develop an algorithm which will generate a solvable
house, with the generated houses being such that finding a solution given the
house is computationally difficult. Moreover, we want the results to be fun
for a human to solve, so just embedding a large instance of 3-SAT or similar
is out. Meanwhile, we don't want them to be too difficult for humans to solve,
since this is the first part of the game a newbie will engage with. This
sounds like a really hard problem!

An obvious alternative is to make use of old player-designed houses. I think
Frosty's server did this, with a stock of designs (collected from
castledraft?) used by computer-controlled players. But then we have the
problem that players (and their bots) could eventally become familiar with the

An alternative which doesn't work is to have automated *robbers*, who are
programmed to irrationally try to rob houses they expect to be empty. That
would have the advantage of making players do something useful for their seed
cash - namely designing houses complicated enough that the computer robber
ends up dying in them. But the problem is that any one sufficiently
complicated design could be replicated over a number of puppet accounts, and
then the system ends up being little better than giving out salaries.

I suppose another possibility would be to sell seed cash for real-world
money... but that would be pay-to-win, and horrible.

Here's an amusing idea: players could have to start off as jobbing painters,
making pixel art for moneyed players to buy. If these replace (most of) the
existing paintings, and new ones expire after some time, and rich players are
forced to buy paintings by a house price cap tied to the number of paintings
they own, I can almost imagine this working... but only almost. Could be a fun
supplement to any other solution, though.

Now I'm out of ideas. The only feasible reliable non-abusable system I can see
is to use CAPTCHAs, which would be awful. Help?


#32 2017-02-15 21:43:25

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

Re: New "cheatproof" test server

Well, anything that assumes some real players (rich ones!) pay other players (poor, jobbing painters) fails in the face of inductive reasoning.  How did the rich players get rich to start with?

There has to be a source of money outside of getting it from other players.

In TCD, that source was the starting budgets given to respawning players.  But, if you control two accounts, you get 2x as much starting money.

I'm not convinced that you need a non-player source of money that ALL respawning players can take advantage of.  You just need one that SOME can take advantage of to get the thing off the ground, and keep it off the ground later.

If robbing costs money, then yeah, every respawning player will need access to some "grind money" to get started.

But the "ante" that you've now attached to robbing is supposed to prevent endless robber-spamming, given that death has no other cost.  Chill timers and such can be bypassed with multiple accounts.

What if there was a system-wide chill timer?  After someone dies in a house, it goes "off the market" for X minutes for EVERYONE but the owner.  Multiple accounts have no advantage, now.

Maybe there is a way you can "buy" your way into one of these off-market houses.  A gas mask that allows you to stand the stench of the dead body.  And also, the owner can instantly take the chill-timer off by revisiting the house.

Thus, the chill timer only affects the poorest players, but prevents them as a group from robber-spamming a house 1000 times in one day.

SO, if you really want to "work on" a house by rob-dying over and over in it, you'll need to buy a lot of gas masks to stand the stench of your own body.  Morbid, I know.  There's probably other fiction (police line that you have to pay to cross, etc.)

So, that frees up poor players to rob EVERYONE, and then there's no reason to given them a house budget at all.  Well, maybe a small house budge AFTER they have some money to protect.  So, we don't have to worry about poor players "grinding" money on every respawn, because they can steal it from others with no investment.

Still, we need a way for SOME money to get into the game in the beginning and from time to time later, as needed.

I hadn't thought about the need for it to be robot-proof.  I agree that a map algorithm that isn't amenable to bot-robbers sounds like a hard problem.  Though maybe it's not as hard as we think it is... I wonder if there's some class of maps for which algorithms would have trouble, but human players would easily see the solution.  Probably not, because maps are necessarily discrete.  Captchas are always leveraging problems from more continuous-seeming domains.  I mean, we could also tell the difference between a human and a robot by throwing a ball to the subject and seeing who could catch it.  I can't imagine any house designs that are simple for humans but not amenable to brute-force search by a computer.

Other player's discarded houses are easily solved by the past owners of those houses.  For a similar reason, we can't let any players be involved in designing the seed houses, because then they themselves have an advantage.

I wonder about paying players to do useful, valuable work for the game.  The dummy-robbers is a version of this, because we're paying players that design decent houses.  Of course, the problem is that this can be automated by finding one good house design and reposting it over and over on different accounts.

We also can't reward them via money creation for creating a house that kills real players, because multiple accounts again will abuse it.

You were essentially rewarding "real" players with gifts based on the activity you observed from them.  Oh, you built a nice house!  Here's some money for you.

The only idea I can come up with is if we let other players decide as a group who should get money.  Like a "beautiful foyer" contest where the whole neigborhood gets to vote on who wins.  If you make the numberde of required votes high enough, you prevent multiple accounts from being leveraged.

You can also give more weight to the votes coming from houses that got more votes themselves.  A pyramid scheme of influence, tracking who the legitimate players are and rewarding them, while reducing the impact of votes from dummy accounts.

Anyway, this would let other players do the job of figuring out who was "doing valuable work for the game."  Though it does suffer from tragedy of the commons (nobody votes) and also leader bashing (revenge voting).  So, a player who is clearly doing great work for the game might not get rewarded according to the whim of the masses.

What other work could players do that would help the game AND be worth giving them money for?  The problem is that we need a way to judge the quality of the work done to prevent people employing bots to do it.  Or discover some work that bots simply can't do.


#33 2017-02-16 00:44:09

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

System-wide chills sound nice, but there's a problem: it's to your benefit to
have your house chilled, so you're going to send your sock puppet to die in
your house to trigger the chill. I don't see a way to deal with that.


#34 2017-02-16 13:36:59

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

Re: New "cheatproof" test server

Whoops, you're right!

Well, that's already something of a problem, because you can keep your house constantly robbed and off the list with a bot account.


#35 2017-02-16 14:22:35

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Oh dear. Good point. The only way I see to deal with that is to allow
simultaneous robbery checkouts, with only the first successful robbery
counting. That's not quite enough, because you could automatedly shuffle your
money between two accounts every few minutes. But that could be dealt with by
having some proportion of the loot from a successful robbery be destroyed
(autoselling tools if necessary). That should work, right?

Got any more nasty attacks like that?


#36 2017-02-16 14:35:53

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

The ante isn't just a technical means to an end, by the way - it's there to replace permadeath, to make sure there's still a game mechanic to punish failure. I see it that as an essential part of the game. I expected you to too!


#37 2017-02-16 14:48:26

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

Re: New "cheatproof" test server

Well, for respawned players, there was never a punishment for robbery failure, aside from chill timers, because they have nothing to lose.


#38 2017-02-16 16:36:18

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Here's an idea. Allow robbers to enter houses without any tools. But only
allow them to explore a small part of the house, and to rob only a small
portion of the house's loot.

It could work like this. Have a new fairly cheap tile, a "locked door". Add
lockpicks as a new tool type, which transform a locked door into an ordinary
unlocked door, without using up the lockpicks item. This can replace the
backpack, although you still aren't allowed to take any other tools if you
don't take a lockpick. So you either go in as a "house guest" without any
tools at all, or you go in as a tooled-up robber with at least a lockpick.

Now we introduce a mini-vault, to be optionally placed in addition to the main
vault. I'll call it the 'mantelpiece' for now, but feel free to suggest
something better. The idea is that it's somewhere you'd store some minor
valuables to be shown off to visitors. Or maybe it could just be a 'table',
being somewhere you tend to leave some petty cash. Anyway, this has two
functions. During a robbery, it acts like a vault, and stores a proportion of
the house's loot - say 10%, with the vault and wife then getting 45% a piece.
During self-test, it's how you unlock any locked doors in the house: let's say
it's where you leave the key, so if you walk onto it during a self-test you
pick up a 'key' tool which acts just like a lockpick.

So you don't have to place this mini-vault at all, but then you're allowing
anyone to try to spam-rob their way to your main vault. You can prevent this
by placing locked doors, which can only be passed by those putting up an ante
by bringing a lockpick. But then you have to place a mini-vault, which will be
accessible by "house guests", and as part of the self-test you'll have to
prove that it is indeed toollessly accessible. You're motivated to make this
difficult. So now poor players can try to get a bit of cash by robbing the
rich while posing as friendly neighbours, with this being a player-generated

One final necessary adjustment: so far, this scheme seems to be open to the
same kind of abuse we've been worrying about - players can just use their
sock-puppet accounts to clear out the mini-vault as soon as they check their
house in, so no-one else will get a chance. But if we make it that a
proportion of the mini-vault cash is just destroyed when it's robbed, then
players are better off trying to protect it from being stolen at all.

Sadly, this still doesn't quite work for N=2. If you're the only one with
money, you don't care about some of it being destroyed. Reserves mean that a
little petty cash will have to be available from one of your houses, but not
enough for the poor player to get going. But it seems to works for N >= 3, and
really I think that's good enough.


#39 2017-02-16 18:51:37

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

Re: New "cheatproof" test server

This is a great way to let starting players rob.  Obviously, if they reach the mini-vault, they GET a lockpick, right?  Hmm...

But it still doesn't solve the problem of getting money into the game.


#40 2017-02-17 00:47:28

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Well, they get some loot which might be enough to buy a lockpick.

Another thing: this system actually fits really nicely with reserves: the
reserve can precisely be the petty cash you have to leave on your

So the remaining problem is the problem of victory, i.e. the case that one
player has all the money. That's how the server starts off, and it might
return to that state occasionally. I wrote earlier in this thread about
"retiring" as a solution to this, and I still don't see anything better.

But that doesn't handle the case of a winner-troll, who actively wants to keep
the system broken - they can do that by refusing to declare that they've won,
using sock puppets to keep the petty cash cleared out from their rich
accounts, and maintaining an illusion of activity to prevent any system which
might try to automatically detect deadlock.

I don't know... do you think this would be a serious problem in practice? It
would need someone to be good at TCD, and yet to be an arse. Far from
impossible, I suppose...

Maybe this does still need one little new mechanism. Any thoughts? I feel
we're close to a complete solution...

Only thing I can think of is to raffle off a small chunk of seed cash each
time period, enough for some basic tools, with tickets bought by filling in a
CAPTCHA (or thematic equivalent, if possible). When the game's functioning
healthily, this would hopefully get little interest (and the prize can roll
over), but it could act as a safety-valve for when it isn't.

EDIT: I think this has to be the best solution. It could entirely replace the
idea of "retiring", and of "abandoned houses". I can imagine it being made
acceptably thematic: you manage to scrounge up enough change to buy a ticket
for the lottery, but you only have a chance of winning if you use your lucky
numbers. These are presented in CAPTCHA form, perhaps visually as images of
visual-recognition-defeatingly crumpled notes, or perhaps using something
along the lines of To disuade people wasting time on it,
you can be told how many tickets have already gone. Now even if someone ends
up with all the money, sooner or later there'll be lottery winners to compete

Last edited by zed (2017-02-17 05:34:23)


#41 2017-02-17 12:52:56

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Using visual CAPTCHAs is a bad idea actually, it seems they're not that hard
to break these days. Maybe better than a lottery would be a competition: each
time period, a house is generated, and is freely entered by all. The aim is to
get to the vault, spending as little on tools as possible and, as a
tie-breaker, using as few moves as possible. An unlimited supply of tools is
provided for the occasion. Maybe blueprints are too. There's no immediate
reward for getting to the vault, but whoever has the "high score" at the end
of the time period wins the current prize pool.

EDIT: because there's no other way to do it which doesn't benefit
sockpupeteers, in the event of a tie (on both tool cost and moves), *no-one*
wins and the prize rolls over to the next competition.

Since it's ok for tools to be required, the house generation can be pretty
random. One way would be to use an old player house design as a base, then add
some random noise. If done right, the optimisation problem should be too hard
to brute-force.

It's not really thematic to have a competition like this, which suggests an
organised group of robbers... but maybe that shouldn't be so much of a

Last edited by zed (2017-02-17 12:55:51)


#42 2017-02-17 18:46:56

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

Re: New "cheatproof" test server

Yeah, a lottery or a robbing contest is a great idea to add money to the game.

For the lottery, to avoid sock puppets, there would have to be an unlimited number of entries per account, with a unique, human-only puzzle each time.

There has to be SOME human-only puzzle that could be invented here.  Obviously a visual one.

I think the hard part with CAPTCHA is that we want something machine-generated that is unsolvable by a machine.


#43 2017-02-18 06:30:40

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Developing a CAPTCHA of the traditional kind, one based on current holes in
machine perception, seems increasingly difficult as those holes are filled.
Anything we came up with would probably need replacing in a few years.

Optimisation problems, on the other hand, should remain hard forever. By using
the same problem domain as the main game, we make sure that if someone does
manage to develop an algorithm to break it, then also the main game is broken
- and then we can stop worrying altogether. Alternatively, general AI might
well get to the point that it's better at this sort of thing than humans, but
then hopefully it'll also enjoy the game as much as humans!

So. It looks like we actually have a complete solution without any known
holes! To summarise the changes required:

* locked doors
* "mini-vaults" (TODO: proper thematicisation);
* competitions;
* reduction of loot value on a successful robbery;
* multiple simultaneous robbery checkouts.

Some details not yet decided:

Should minivaults be implemented just like vaults, so you start with one in
the initial layout and must always place it somewhere? I think yes, for
neatness and to teach the player about it from the start. It can start by the

If you enter a house as a robber, i.e. with a lockpick, should you still be
able to rob the minivault? Or should robbing the main vault also loot the
minivault? I think no to both, because I like the idea of having a pure-puzzle
element to a house which can only be robbed toollessly, and because it gives
players a secondary backup in addition to the wife to help them keep afloat
after a robbery.

Do we still need reserves? I think so, for the same reasons as always - the
competitions don't change the situation that much. Can we make reserves be
exactly what goes in the minivault, as I suggested in another post? Actually
no, as reserves are meant to encourage putting up an ante.

How exactly should the reduction of loot value work? To recall, this had two
purposes: to punish using a sock puppet to clear out your minivault, and to
punish rapidly cycling all loot between two accounts, using simultaneous
robbery to take it from under the nose of a genuine robber. For the former a
big penalty is needed, but only a small one is needed for the latter. So
something like 20% for the minivault and 2% for the main vault should do it.
Or if it's decided that the minivault is robbed along with the main vault,
just 20% for the minivault.

How does adding competitions as a money source affect the economy design? Can
we use it in place of rescaling to handle deflation due to the various sinks?
Having the prize pool be filled directly from the sinks is no good, because a
purpose of the competitions is to shake up what would be a static game with no
activity, as in the case that one player has all the money and just sits on
it. That doesn't rule out having the pool be filled first from the sinks, then
adding extra only when needed. But there are so many sinks in the course of
the main game that I fear the pool would grow too big, and the competition
would end up overshadowing the main game. So I'm thinking that rescaling
to a fixed global value should stay. The prize pool should be part of that
calculation, fixing the problem of 'winning' - it's then never true that you
and your puppets have all the money, because there's always some in the prize
pool, so sinking money into building and tools always comes at a cost.

That still leaves the question of how to automatically vary the size of the
economy to cope with fluctuations in the number of players. Something based on
the amount of money disappearing into sinks each time period could work as a
non-abusable proxy for how much money is needed in the economy. We can
estimate what a healthy economy looks like - maybe that 20% of the money goes
into sinks each day - and adjust the total money when it doesn't match,
something like:

    adjustmentRate = 0.3;
    newTotal = max (minTotal,
        oldTotal * (1 - adjustmentRate*(0.2 - sunk/oldTotal)));


Finally, there's still some room for abuse in the checkout system. You can
prevent someone editing by constantly robbing them, and you can camp inside
your house, keeping an edit session alive and never letting it be robbed.
These problems have always been there, and were sometimes annoying but never a
huge problem. Simultaneous robberies do make the first problem worse, though.
I'm sure they can be fixed without serious changes to the design, though I'm
not sure what's best. Maybe just a queueing system which gives priority to the
house owner, and a (lengthy) time-limit on editing combined with a way to save
half-finished designs (which I think Frosty may have implemented).

Then, I think that's it! Will it work? Will anyone actually play it?


#44 2017-02-18 09:39:09

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

Re: New "cheatproof" test server

Hold on a sec.... I got to reading your list of changes, but stopped there before reading the rest.

I think you need to be careful here and make sure that each of these changes is still motivated.  Some of them were "accumulated" along the way to a solution.

What's the point of the mini-vault and locked door now, if new players DO have a sockproof, no-backpack-needed source of money now?  New players can just play that source for a while until they have enough for a backpack.  You can also get rid of the "house budget" in your current version, and just start new players with $0.  The "prize" at the end of the human prover can be enough money to build a house and have some left over.  No reason to keep the reserve, either.  You can go back to listing houses by estimated loot value.  A house with no loot will attract no robbers and earn no money from backpacks.

The point is, all money in the game must be "earned" through human means, as opposed to getting it for free in such a way that you get N times more free money when you run N accounts.

Also, I don't think multiple simultaneous checkouts is necessary either anymore.

Coming full circle, I think that was your main insight as you developed this sockproofing thing in the first place:  Each account gets free money for nothing, therefore, players can exploit multiple accounts to get even more free money for nothing.  We need to figure out a way to STOP giving free money per account.  Your first attempt (building-only money to start with) removed this free money source from the game.  But it didn't replace the free money source with a non-free source.  It just cut money out of the game entirely, which obviously can't work.  Now you have ideas for non-free money sources in the game, and that's all you really need.

You were also tackling the benefit of extra accounts for risk-free scouting, so you removed the permadeath penalty from robbery death.


#45 2017-02-18 10:08:30

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Hmm... I was thinking of the competitions as a means of kicking the system
away from the pathological fixed points, rather than as a replacement for the

On a theoretical level, I agree that they suffice on their own to fix the
problems we identified. But if they're really the only way for a new spawn to
get in to the game, they're going to be a major focus of play. One severe
problem with that is that an actually new player who isn't familiar with the
game is unlikely to win a competition, so the competitions will form the
entirety of their play experience until they learn the game sufficiently well
to compete with the experts. During that time they're seeing nothing of the
game TCD is meant to be, and I doubt the competitions would be engaging enough
for them to stick with it long enough ever to see the real game.

So no, I think it's still important that new players can get money from Main
Game sources - which means toolless robberies and luring antes. Competition
wins have to be reasonably large if they're to do the job of kicking the
system away from a "won" state, so they're not likely to help much with the
problem of making starting houses seem worth robbing. So if the minivaults
were ever necessary, I think they still are.


#46 2017-02-18 10:14:25

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

Or maybe better actually: get rid of the minivaults, but have the list give
*no* information about the value or contents of a house. Then every house is a
potential competition winner, so worth a look.


#47 2017-02-18 11:59:59

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

Re: New "cheatproof" test server

Well, if the competition is "get through this random-gen house with the fewest tools," then zero-money players will stand no chance.  Unless players are offered an infinite load-out budget at the start of the puzzle house.  Then you CAN use loads of tools, without paying for them, but the goal is to use the fewest.

Still seems like it would take too long to bootstrap people.  You need to have a time window and a contest deadline.  In the N=2 case, this really doesn't work well.  After someone submits their best try, they're essentially sitting around waiting for the results to come in.

You really need some way for money to come into the game that doesn't depend on other players.

The problem with a simple CAPTCHA-style thing is not that machines will eventually beat it, but that it will be subject to grinding by humans.  You can have 1 per minute available, but then people will spam-reload the page to be the first to get it (not interesting).  I can imagine people building up vast fortunes this way.  And obviously, per-account limits don't work.

It's interesting that so much of security is about proving that you ARE you.  We don't have any methods of proving that you're NOT you.  That's the problem here.  We can't give money to any account freely and automatically, because the same user will just create another account to harvest the money from the first account, and there's no way for us to tell whether or not the second account is the same person.

For the same reason, we cannot allow other players to design the "state" houses for us, because we can't make sure the people robbing those houses are not the designers.

Anyway, I think there needs to be a way for money to enter the game that has no timer or waiting period attached to it.

On the other hand, it also needs to have some skill or difficulty attached to it, or else it will be subject to grinding as a replacement for robbing and other activities.


#48 2017-02-18 14:31:19

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

> Unless players are offered an infinite load-out budget at the start of the
> puzzle house.  Then you CAN use loads of tools, without paying for them, but
> the goal is to use the fewest.

Yes, that's exactly what I had in mind. And actually there's no need to have a
buying stage at all - 8 tool types can be chosen when the map is generated,
and competitors just automatically enter the map with an inexhaustible supply
of each.

> Still seems like it would take too long to bootstrap people.  You need to
> have a time window and a contest deadline.  In the N=2 case, this really
> doesn't work well.  After someone submits their best try, they're
> essentially sitting around waiting for the results to come in.

Well, they can work on improving their best try, knowing that the other player
may be doing the same. This may not be all that much fun, and I hope people
won't spend much time on it when the main game is functioning properly. But I
don't think we need the game to be massively fun to play in these extreme
situations, as long as they don't last for long.

> For the same reason, we cannot allow other players to design the "state"
> houses for us, because we can't make sure the people robbing those houses
> are not the designers.

If you mean the houses for the competition: I think it makes sense to provide
blueprints - and then given blueprints, the random noise, and the rather
different aim from normal, the advantage of already being familiar with the
house fairly small. So using old houses as the base should be ok.

> Anyway, I think there needs to be a way for money to enter the game that has
> no timer or waiting period attached to it.
> On the other hand, it also needs to have some skill or difficulty attached
> to it, or else it will be subject to grinding as a replacement for robbing
> and other activities.

If it's possible to get enough from that kind of mining, without going insane,
to be able to take on a player who has all the money, then it will have to be
rather lucrative. So then mining will often make more sense than playing the
main game. Even if it's fun and engaging, so not grinding in the usual sense,
it would be a single-player activity which distracts from the main game.

The advantage of using a competition or a lottery is that it can be not very
lucrative for a competitor on average, while still providing enough to whoever
wins that they can challenge a dominant player. But then you do have to have a


#49 2017-02-19 00:36:53

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

Re: New "cheatproof" test server

Well, I feel like we've kinda hit a wall here.

We want you to only succeed in the game by outsmarting other players and getting your reward for this directly from them.  This makes everything real.

But we have no way to know for sure if the player you're besting is really another player or is actually just a puppet under your control.

The alternatives involve somehow NOT getting money directly from other players.  There's an NPC fountain of some kind that doles out money (lottery, contest, captcha).

It's hard to envision how this source of money, given that it's the only direct source in the game (players can't create money themselves) won't overshadow the indirect sources of money (robbing) that make up the "main game" or the "game we want."

Thus, there needs to be a way for players to create money, but it can't be free money.

The only solution, which partially how I solved this problem, is to have creating money cost REAL money.  In the original game, two accounts cost twice as much.  The problem was that after you bought two, you could essentially create an infinite amount of money over time and pump in into one account.

It seems that, if each new life cost real money, and you could pick how much you start with based on how much you spend on that life, the problem of multiple accounts would go away.

But this is STILL subject to non main-game grinding.  If you wanted to get richer in the game, you'd just go grind more in real life by working extra hours so you'd have more real money to pump into the game.


#50 2017-02-19 03:37:51

Registered: 2013-04-16
Posts: 161

Re: New "cheatproof" test server

I see no wall.

The important thing is to have activity in the game, which in economic terms
means circulation of the money. There's no reason in principle that this
should require money creation - even in a completely closed system, there can
still be flow of money between players. Think not of a pool being splashed by
a fountain, but of a roiling pot of water on the boil. The players generate
the movement themselves.

The one problem with this is that sometimes in the course of this activity, a
player can end up with no money at all. What happens then depends on the
details of the dynamics, but let's say first that a player with no money is
ignored by the system - they end up at the edge where the waters are still.
This is also how a new player starts, hence your inductive arguments. So
there should be a way to push such a player back in to the turbulent region,
i.e. for them to obtain some money. Money creation of the kind we've been
discussing can be a means of doing that - a targetted jet to push a player in.

So what I'm seeing as the key point is that the system doesn't have to be
*driven* by money creation. Money creation can still be used as a tool to
prevent pathological behaviour, but it need play no more than a supporting
role. The players drive the system, by identifying and enacting opportunities
for gain. Make sense?

Probably further tweaks would help, measures to try to keep players away from
the edge so the jet is needed less. The minivaults helped with this, giving a
backup to make destitution less likely. Making the rescaling redistributive
might also help.


Board footer

Powered by FluxBB 1.5.8