NationStates Jolt Archive


Exploitable design flaw in UN

12-09-2003, 05:15
I think I just discovered a way to exploit an apparent design flaw in the way UN resolutions work. Here is the converstion with forum mod Cogitation where I first brought this up:

http://www.nationstates.net/forum/viewtopic.php?t=69170

If, as Cogitation claims, the effects of UN resolutions are never applied retroactively, and in fact they are only applied to nations that are members of the UN at the exact time of their passage, then there is a very simple exploit whereby any nation can pick and choose which UN resolutions they will and won't comply with.

All a nation has to do it resign from the UN right before a resolution they don't like passes, and then rejoin immediately after it passes. And of course they can just stay in the UN if a resolution they do like passes.

If nations can do this, this eliminates any incentive to vote against resolutions - it is just as easy to just let it pass and make it so it doesn't affect your nation as it is to vote against it.

If people find out this is possible (I hope you will address this problem instead of just deleting this message and me to keep that from happening), then this has the potential to destroy the entire concept of the UN which is a major part of this game, so I think fixing this deserves a high priority.
SalusaSecondus
12-09-2003, 05:32
We are aware of this issue (though it doesn't quite qualify as an "exploit"). I'm not sure exactly how we would go about implementing this change, thus that problem would probably remain.

However, I belive (and am verifying) that all endorsements that you are involved in (ie given or received) are lost upon leaving the UN. This, for sufficiently involved nations, should help to discourage these actions.

I'll look into solutions, and if anyone has recommendations, please post them.

http://www.weirdozone.0catch.com/projects/nationstates/salusasecondus/salusasecondus2.jpg
SalusaSecondus
Tech Modling
Ballotonia
12-09-2003, 08:56
We are aware of this issue (though it doesn't quite qualify as an "exploit"). I'm not sure exactly how we would go about implementing this change, thus that problem would probably remain.

Suggestion: all passed resolutions get a number, and all nations a variable that says what the last resolution (the number of it) that was applied to that nation. When a nations joins the UN, all resolutions not applied yet are applied to that nation, and the stored nation variable updated. When a resolution passes, all UN members at that time go through that same procedure.

This still means that leaving the UN doesn't retro-actively 'undo' the consequences of the resolutions, but the little I've understood from the nations statistics tells me that this just might be impossible anyway. (plus there's this whole argument whether or not that should even be the desired functioning)

However, I belive (and am verifying) that all endorsements that you are involved in (ie given or received) are lost upon leaving the UN. This, for sufficiently involved nations, should help to discourage these actions.

I believe all endorsements should be removed when someone leaves the UN (except when a nation is deleted, in which case it should be left as possible evidence). However, this is currently not the way it functions. Endorsements are NOT blanked when someone leaves the UN. Also, because the update only verifies the endorsements of UN members, these endorsements could be 'stored' indefinitely.

Suggestion: blank a nation's endorsements list when resigning from the UN.

Suggestion: modify the update sequence to include blanking the endorsement list in non-UN nations.

Sending two additional suggestions in TM...

Ballotonia
Ekky-Ekky
12-09-2003, 14:47
Suggestion: all passed resolutions get a number, and all nations a variable that says what the last resolution (the number of it) that was applied to that nation. When a nations joins the UN, all resolutions not applied yet are applied to that nation, and the stored nation variable updated. When a resolution passes, all UN members at that time go through that same procedure.

This seems logical to me, if you join the UN youre suppose to live up to all the UN-resolutions that ever have been approved.
It would be kind of stupid if some nation would join the UN and neglect the Human Rights because "They were voted before my time!".
It would make the UN quite a useless and powerless organisation...

Ekky-Ekky
Celdonia
12-09-2003, 15:42
For RP purposes I always assume that any UN member nation should adhere to UN resolutions. In practice this means that if someone dexecutes prisoners without trial I can call them for being in breach of the Due Process resolution (and a few others usually).
Whether they were members (or even existed) at the time of the resolutions passing is irrelevant.
Nothingg
12-09-2003, 15:42
It would make the UN quite a useless and powerless organisation...

Ekky-Ekky

How would that be different than now?
SalusaSecondus
12-09-2003, 17:10
Suggestion: blank a nation's endorsements list when resigning from the UN.

Suggestion: modify the update sequence to include blanking the endorsement list in non-UN nations.

Sending two additional suggestions in TM...

Regarding the first two, I think that it is already done that way . . . Hmm, I will (triple) check.

And the TG, it's being dealt with.

http://www.weirdozone.0catch.com/projects/nationstates/salusasecondus/salusasecondus2.jpg
SalusaSecondus
Tech Modling
Ballotonia
12-09-2003, 18:05
Regarding the first two, I think that it is already done that way . . . Hmm, I will (triple) check.

Wanna bet? :P

Ballotonia
12-09-2003, 21:01
12-09-2003, 21:02
Does my exposure of this issue have anything to do with why the Repeal-Fight the Axis of Evil UN proposal was deleted?

Is there now going to be an official policy that UN proposals should not be drafted that are designed to repeal previously passed resolutions, just because that really doesn't work within the current game mechanics (even though it does make perfect sense in RP)?
Ballotonia
12-09-2003, 21:12
Does my exposure of this issue have anything to do with why the Repeal-Fight the Axis of Evil UN proposal was deleted?

No. The 'no repeal' problem has plagued the UN for a long time now, and I've proposed adding in such a feature several times before in several very different ways.

But thank you for calling this subject to everyones attention. Often someone is needed to get discussion going at the right moment to get the ball rolling on things. It may not change very soon, but progress has surely been made. (if nothing else, it'll be an improvement for NS II)

Ballotonia
Goobergunchia
12-09-2003, 21:33
I would note that Required Basic Healthcare has been repealed, under the guise of "'RBH' Replacement".

For RP purposes I always assume that any UN member nation should adhere to UN resolutions. In practice this means that if someone dexecutes prisoners without trial I can call them for being in breach of the Due Process resolution (and a few others usually).
Whether they were members (or even existed) at the time of the resolutions passing is irrelevant.

I concur.
Ballotonia
12-09-2003, 22:54
I would note that Required Basic Healthcare has been repealed, under the guise of "'RBH' Replacement".

For RP purposes, yes. What happened to the nation statistics when "'RBH' Replacement" passed was that the effect of the previous one was DOUBLED instead of nullified or reduced. See the UN Proposal FAQ and the stated proposal effects (they're both "Social Justice, Strong").

Ballotonia
Lemmingcus Meenicus
13-09-2003, 01:00
Two tables.

One records initial U.N. registration and the registrations applied.

On resignation - the other table is updated with the date of resignation.

On re-application, the nation agrees to accept all motions pass as a caveat to joining.

A quick lookup to the two tables will show what dates that resolutions would need to be applied. Scan over to the table with the resolutions and effects and apply them

Problem solved.
Luna Amore
13-09-2003, 01:11
However, I belive (and am verifying) that all endorsements that you are involved in (ie given or received) are lost upon leaving the UN. This, for sufficiently involved nations, should help to discourage these actions.Yes, they are lost when you leave, but when you return to the UN under the same nation, all your previous endorsements come back. I know this because I left the UN, rejoined about 2 weeks later, and all my endorsements were back.

Luna Amore (http://www.guitartabs.cc/fetchurl.php?filename=/h/hendrix_jimi/machine_gun.tab)
SalusaSecondus
13-09-2003, 01:28
LM, as good as your suggestion is (and I am serious) I doubt that it will be introduced as there has to be some intensive code changes for it. Trust me.

As far as the keeping endorsements after you resign, I'm sending a note to [violet] that this needs attention.

http://www.weirdozone.0catch.com/projects/nationstates/salusasecondus/salusasecondus2.jpg
SalusaSecondus
Tech Modling
13-09-2003, 20:01
Two tables.

One records initial U.N. registration and the registrations applied.

On resignation - the other table is updated with the date of resignation.

On re-application, the nation agrees to accept all motions pass as a caveat to joining.

A quick lookup to the two tables will show what dates that resolutions would need to be applied. Scan over to the table with the resolutions and effects and apply them

Problem solved.

Here's an even simpler suggestion:

One new table with two fields:
1. Nation Id
2. Ids of UN resolutions applied

A. When a nation first joins the UN, all currently passed resolutions are applied once.

B. If a nation resigns from the UN, nothing happens game-wise - the new table still keeps track of which resolutions have already been applied for that nation. The only effect is that while the nation is not a member of the UN, resolutions passed during that time are not applied to it.

C. Then if the nation ever rejoins the UN, all resolutions that have not been applied yet to that nation are applied (which would be any enacted while they were not in the UN). This is actually the same as A above, since for new nations none of the passed resolutions would have been applied yet.

---

This would eliminate the exploit, and it is not too different from how it works now. There is no need to keep track of dates or anything - just that extra many-to-many table with two fields.

It would also have the affect of increasing the power of the UN. Nations would have to weigh the decision to join the UN carefully, because the "damage" done would be considerable and permanent. This would probably increase the incentive for nations to stay in the UN too, because once all those resolutions are applied, staying out of the UN wouldn't help very much for a long time. So more people would be a lot more interested in what the UN resolutions do.

This is actually how I thought the UN already worked, before the moderators informed me otherwise. It's how I would have designed it.