A-Lounsbury / pysimultaneous

A class for handling simultaneous games with any number of players
0 stars 0 forks source link

Test the appendStrategy function #8

Closed A-Lounsbury closed 3 months ago

A-Lounsbury commented 3 months ago

Append strategies for players 1, 2, 3, 4, and 5, in games that have up to 5 or 6 players.

A-Lounsbury commented 3 months ago

Fixed when appending a strategy for player 3 for games up to 3 players:

o1 = o1.load([5, 5, 5])
o2 = o2.load([6, 6, 6])
o3 = ListNode()
o4 = ListNode()
o3 = o3.load([7, 7, 7])
o4 = o4.load([8, 8, 8])

append_3 = [
    [o1, o2],
    [o3, o4]
]

append_3_player3 = [
    [
        [o1, o2],
        [o3, o4]
    ]
]

H = SimGame(3)
H.appendStrategy(2, append_3_player3)
H.print()
A-Lounsbury commented 3 months ago

Fixed when appending a strategy for player 3 for up to 4 players.

A-Lounsbury commented 3 months ago

Fixed when appending a strategy for player 4 for up to 4 players

o1 = ListNode()
o2 = ListNode()
o1 = o1.load([1, 1, 1, 1])
o2 = o2.load([2, 2, 2, 2])
o3 = ListNode()
o4 = ListNode()
o3 = o3.load([3, 3, 3, 3])
o4 = o4.load([4, 4, 4, 4])
o5 = ListNode()
o6 = ListNode()
o7 = ListNode()
o8 = ListNode()
o9 = ListNode()
o10 = ListNode()
o11 = ListNode()
o12 = ListNode()
o5 = o5.load([5, 5, 5, 5])
o6 = o5.load([6, 6, 6, 6])
o7 = o5.load([7, 7, 7, 7])
o8 = o5.load([8, 8, 8, 8])
o9 = o9.load([9, 9, 9, 9])
o10 = o10.load([10, 10, 10, 10])
o11 = o11.load([11, 11, 11, 11])
o12 = o12.load([12, 12, 12, 12])

append_4 = [
    [
        [o1, o2],
        [o3, o4]
    ],
    [
        [o5, o6],
        [o7, o8]
    ],
    [
        [o9, o10],
        [o11, o12]
    ]
]

I = SimGame(4)
I.enterData(4, [2, 2, 3, 3], arr_4players)
I.appendStrategy(3, append_4)
I.print()
A-Lounsbury commented 3 months ago

Tested for 5 players with numStrats = [2, 2, 2, 2, 2]. Works as expected for players 3, 4, and 5.

o1 = ListNode()
o2 = ListNode()
o1 = o1.load([1, 1, 1, 1, 1])
o2 = o2.load([2, 2, 2, 2, 2])
o3 = ListNode()
o4 = ListNode()
o3 = o3.load([3, 3, 3, 3, 3])
o4 = o4.load([4, 4, 4, 4, 4])
o5 = ListNode()
o6 = ListNode()
o7 = ListNode()
o8 = ListNode()
o9 = ListNode()
o10 = ListNode()
o11 = ListNode()
o12 = ListNode()
o13 = ListNode()
o14 = ListNode()
o15 = ListNode()
o16 = ListNode()
o5 = o5.load([5, 5, 5, 5, 5])
o6 = o5.load([6, 6, 6, 6, 6])
o7 = o5.load([7, 7, 7, 7, 7])
o8 = o5.load([8, 8, 8, 8, 8])
o9 = o9.load([9, 9, 9, 9, 9])
o10 = o10.load([10, 10, 10, 10, 10])
o11 = o11.load([11, 11, 11, 11, 11])
o12 = o12.load([12, 12, 12, 12, 12])
o13 = o13.load([13, 13, 13, 13, 13])
o14 = o14.load([14, 14, 14, 14, 14])
o15 = o15.load([15, 15, 15, 15, 15])
o16 = o16.load([16, 16, 16, 16, 16])

append_5 = [
    [
        [o1, o2],
        [o3, o4]
    ],
    [
        [o5, o6],
        [o7, o8]
    ],
    [
        [o9, o10],
        [o11, o12]
    ],
    [
        [o13, o14],
        [o15, o16]
    ]
]

J = SimGame(5)
J.enterData(5, [2, 2, 2, 2, 2], arr_5players)
J.appendStrategy(2, append_5)
J.print()