Gotcha, I misread. I also support at-large voting.
A hybrid system would be interesting to model. You have districts, each of which will send one representative, and you have a bunch of at-large seats that anyone can vote for. If the voter is given two votes, that is pretty straightforward, but what if they are given only one? How do they decide whether to vote in their district or for an at-large candidate that more closely reflects their views? It would probably not make sense to do it that way, but it would be an interesting study.
You can work this by having districts plus top-up lists. Voters cast their one vote among the candidates in their district. The winning candidate in each district is elected. Additional people are then declared elected from the top-up lists so that each party in the legislature ends up with as many members (elected in districts + elected from top-up lists) as is proportional to their share of the vote.
So if, e.g, there are 100 seats in the legislature, 60 of which are filled by elections in 60 single-member districts, the remaining 40 will be filled from the top-up lists. Suppose party A gets 10% of the aggregate vote in the 60 districts, but only wins the election in two districts. A further 8 candidates from Party A’s top-up list will be elected to the legislature, so that Party A has in total 10 seats (10% of the seats).