Match Making System

I know it’s kinda silly but I am actually really proud of this.

To preface, I made a system that handles players rank score (essentially a modified Elo sysem).

Recently, I made a system that would match make parties of 1 person, 2 people, or 3 people into 3v3 matches (like brawl stars).

It tries to find the closest possible matches and honestly I think it does a good job. But man handling parties was a pain.

The number next to “Team %n” is the cummulative rank of the team (mean is 0)

Output

Match Made!
→ Team 1 : -165
→ 708773
→ 806798
→ 745239
→ Team 2 : -185
→ 957988
→ 702092
→ 809342
Match Made!
→ Team 1 : -137
→ 831864
→ 14550
→ 892948
→ Team 2 : -143
→ 670846
→ 535517
→ 42622
Match Made!
→ Team 1 : -86
→ 650053
→ 575937
→ 288433
→ Team 2 : -71
→ 203325
→ 849468
→ 116516
Match Made!
→ Team 1 : -42
→ 249768
→ 496232
→ 827478
→ Team 2 : -11
→ 413018
→ 14787
→ 202368
Match Made!
→ Team 1 : 22
→ 395796
→ 401294
→ 800284
→ Team 2 : 28
→ 437705
→ 703021
→ 950488
Match Made!
→ Team 1 : 47
→ 723716
→ 869956
→ 806749
→ Team 2 : 106
→ 560736
→ 107932
→ 827512
Match Made!
→ Team 1 : 160
→ 777816
→ 493735
→ 489600
→ Team 2 : 185
→ 302749
→ 810010
→ 733589
Match Made!
→ Team 1 : 179
→ 643118
→ 769872
→ 713738
→ Team 2 : 198
→ 458314
→ 624137
→ 242494
Match Made!
→ Team 1 : 227
→ 814905
→ 62569
→ 72367
→ Team 2 : 252
→ 355331
→ 753383
→ 245498
Match Made!
→ Team 1 : 308
→ 190955
→ 205606
→ 185741
→ Team 2 : 301
→ 628085
→ 758803
→ 501132
Match Made!
→ Team 1 : 381
→ 665854
→ 583477
→ 420661
→ Team 2 : 357
→ 753238
→ 224349
→ 227911
Match Made!
→ Team 1 : 422
→ 317337
→ 519086
→ 741311
→ Team 2 : 417
→ 351666
→ 858040
→ 845098
Match Made!
→ Team 1 : 505
→ 771883
→ 176031
→ 300868
→ Team 2 : 504
→ 638419
→ 172304
→ 861294
Match Made!
→ Team 1 : 570
→ 53720
→ 610275
→ 845189
→ Team 2 : 592
→ 259110
→ 179744
→ 288021
Match Made!
→ Team 1 : 620
→ 812735
→ 928522
→ 976445
→ Team 2 : 638
→ 925442
→ 153866
→ 854542
Match Made!
→ Team 1 : 653
→ 790315
→ 270851
→ 994905
→ Team 2 : 653
→ 21351
→ 11228
→ 496637
Match Made!
→ Team 1 : 711
→ 861141
→ 492580
→ 675980
→ Team 2 : 691
→ 552079
→ 483687
→ 395658
Match Made!
→ Team 1 : 771
→ 928067
→ 957685
→ 384838
→ Team 2 : 759
→ 764880
→ 777047
→ 492438
Match Made!
→ Team 1 : 816
→ 176463
→ 323494
→ 410141
→ Team 2 : 829
→ 197767
→ 988498
→ 436021
Match Made!
→ Team 1 : 881
→ 817754
→ 845631
→ 248475
→ Team 2 : 888
→ 901101
→ 825681
→ 513718
Match Made!
→ Team 1 : 900
→ 469270
→ 339147
→ 376670
→ Team 2 : 945
→ 263003
→ 130296
→ 350671
Match Made!
→ Team 1 : 981
→ 912711
→ 634331
→ 460832
→ Team 2 : 1050
→ 462030
→ 200518
→ 543264
Match Made!
→ Team 1 : 1145
→ 510995
→ 199808
→ 355061
→ Team 2 : 1150
→ 5054
→ 596801
→ 382845
Match Made!
→ Team 1 : 1233
→ 637131
→ 286641
→ 480148
→ Team 2 : 1196
→ 133867
→ 969290
→ 280393
Match Made!
→ Team 1 : 1275
→ 788280
→ 821796
→ 609885
→ Team 2 : 1377
→ 623427
→ 810905
→ 90630
Match Made!
→ Team 1 : 1399
→ 732488
→ 938958
→ 817322
→ Team 2 : 1408
→ 88668
→ 866491
→ 692257
Match Made!
→ Team 1 : 1441
→ 292967
→ 87924
→ 81047
→ Team 2 : 1438
→ 323165
→ 761962
→ 154747
Match Made!
→ Team 1 : 1470
→ 161153
→ 753787
→ 236712
→ Team 2 : 1492
→ 410280
→ 139448
→ 853186
Match Made!
→ Team 1 : 1546
→ 571192
→ 825879
→ 840079
→ Team 2 : 1590
→ 507343
→ 152390
→ 443642
Match Made!
→ Team 1 : 1654
→ 352789
→ 817018
→ 195446
→ Team 2 : 1655
→ 666812
→ 672820
→ 134843
Match Made!
→ Team 1 : 1813
→ 447876
→ 710557
→ 589621
→ Team 2 : 1780
→ 502111
→ 321163
→ 475286
Match Made!
→ Team 1 : 1852
→ 748391
→ 647578
→ 335595
→ Team 2 : 1889
→ 150948
→ 15920
→ 860856
Match Made!
→ Team 1 : 2026
→ 786457
→ 941714
→ 425681
→ Team 2 : 2020
→ 426726
→ 282431
→ 168097
Match Made!
→ Team 1 : 2120
→ 394511
→ 177869
→ 272650
→ Team 2 : 2137
→ 826076
→ 636146
→ 443297
Match Made!
→ Team 1 : 2250
→ 853980
→ 956627
→ 809705
→ Team 2 : 2247
→ 128516
→ 275468
→ 423778
Match Made!
→ Team 1 : 2389
→ 652513
→ 384116
→ 954822
→ Team 2 : 2380
→ 7191
→ 189246
→ 491200
Match Made!
→ Team 1 : 2501
→ 4379
→ 804175
→ 284624
→ Team 2 : 2505
→ 121565
→ 212813
→ 124273
Match Made!
→ Team 1 : 2620
→ 222299
→ 722408
→ 463694
→ Team 2 : 2612
→ 281518
→ 50773
→ 891988
Match Made!
→ Team 1 : 2717
→ 262182
→ 849341
→ 284083
→ Team 2 : 2717
→ 680794
→ 673038
→ 277389
Match Made!
→ Team 1 : 2858
→ 291101
→ 373337
→ 300574
→ Team 2 : 2856
→ 298790
→ 322464
→ 991490
Match Made!
→ Team 1 : 1917
→ 116673
→ 809349
→ 792909
→ Team 2 : 2970
→ 398655
→ 965054
→ 119985
Match Made!
→ Team 1 : -222
→ 103016
→ 844854
→ 309491
→ Team 2 : -243
→ 198145
→ 80981
→ 46556
Match Made!
→ Team 1 : -306
→ 560189
→ 712017
→ 665278
→ Team 2 : -293
→ 484656
→ 649792
→ 886133
Match Made!
→ Team 1 : -334
→ 722637
→ 138039
→ 652119
→ Team 2 : -334
→ 238330
→ 686743
→ 570363
Match Made!
→ Team 1 : -375
→ 867040
→ 118840
→ 674965
→ Team 2 : -352
→ 294401
→ 653473
→ 660732
Match Made!
→ Team 1 : -422
→ 61892
→ 884104
→ 803844
→ Team 2 : -408
→ 48242
→ 653920
→ 283939
Match Made!
→ Team 1 : -390
→ 329571
→ 685843
→ 506561
→ Team 2 : -511
→ 427117
→ 872100
→ 78738
Match Made!
→ Team 1 : -567
→ 28601
→ 933511
→ 978260
→ Team 2 : -614
→ 726435
→ 289987
→ 920788
Match Made!
→ Team 1 : -667
→ 165105
→ 801043
→ 925936
→ Team 2 : -763
→ 585414
→ 35271
→ 220643
Match Made!
→ Team 1 : -743
→ 13993
→ 600057
→ 393494
→ Team 2 : -822
→ 652484
→ 124352
→ 377096
Match Made!
→ Team 1 : -884
→ 569340
→ 263230
→ 340087
→ Team 2 : -853
→ 886469
→ 488341
→ 412248
Match Made!
→ Team 1 : -949
→ 77623
→ 832134
→ 848681
→ Team 2 : -1009
→ 3381
→ 969711
→ 740862
Match Made!
→ Team 1 : -1089
→ 481651
→ 995951
→ 214404
→ Team 2 : -1079
→ 441083
→ 479940
→ 737035
Match Made!
→ Team 1 : -1138
→ 368432
→ 401994
→ 272240
→ Team 2 : -1236
→ 667290
→ 640817
→ 136094
Match Made!
→ Team 1 : -1279
→ 227768
→ 203975
→ 96636
→ Team 2 : -1283
→ 64438
→ 613623
→ 419545
Match Made!
→ Team 1 : -1339
→ 758524
→ 227019
→ 717203
→ Team 2 : -1403
→ 991026
→ 189448
→ 562889
Match Made!
→ Team 1 : -1463
→ 492552
→ 637177
→ 512090
→ Team 2 : -1578
→ 119546
→ 445184
→ 687655
Match Made!
→ Team 1 : -1645
→ 174894
→ 384724
→ 650661
→ Team 2 : -1680
→ 653563
→ 880437
→ 449907
Match Made!
→ Team 1 : -1832
→ 96354
→ 294481
→ 401049
→ Team 2 : -1925
→ 410244
→ 599312
→ 200481
Match Made!
→ Team 1 : -2033
→ 568674
→ 344320
→ 139025
→ Team 2 : -2018
→ 26147
→ 496790
→ 921031
Match Made!
→ Team 1 : -2106
→ 483238
→ 443063
→ 136252
→ Team 2 : -2196
→ 623567
→ 982660
→ 171767
Match Made!
→ Team 1 : -2248
→ 300641
→ 800328
→ 746495
→ Team 2 : -2304
→ 34941
→ 162901
→ 688294
Match Made!
→ Team 1 : -2374
→ 904455
→ 731832
→ 489759
→ Team 2 : -2417
→ 124942
→ 570027
→ 42952
Match Made!
→ Team 1 : -2455
→ 760888
→ 767178
→ 570699
→ Team 2 : -2464
→ 574527
→ 583993
→ 60150
Match Made!
→ Team 1 : -2514
→ 729330
→ 131084
→ 613291
→ Team 2 : -2570
→ 349795
→ 161718
→ 569229
Match Made!
→ Team 1 : -2602
→ 17762
→ 384602
→ 842433
→ Team 2 : -2641
→ 497483
→ 641854
→ 938993
Match Made!
→ Team 1 : -2674
→ 51420
→ 56171
→ 739368
→ Team 2 : -2722
→ 895569
→ 529021
→ 351584
Match Made!
→ Team 1 : -2774
→ 709013
→ 144621
→ 658766
→ Team 2 : -2811
→ 180756
→ 727940
→ 897774

Making a sword fighting game out of it because why not.
:sunglasses:

19 Likes

I’m assuming you used an external web-server for this since it is currently impossible to do this efficiently with datastores?

Well if it’s a cross-server matchmaking system.