I forgot to mention that based on that algebra that shows (x+n)(x+n)=nn+2d(n-1)+f-1, the f in this case is the absolute value. So while f is usually negative, in this case, we're taking the positive version.
Hopefully it isn't confusing but I'll be changing my (x+n)(x+n) example because this wasn't a good one for the next stuff I'm going to talk about. I'll be using (2,11,5) = {2:11:11:8:3:41}, f=-21, c=123 for at least this particular post.
So since we can represent this specific kind of (x+n)(x+n) square as eight triangles (containing eight smaller (nn-1)/8 triangles and with an extra unit in the middle), we can also break down the remaining area of the square in terms of 2d(n-1) and f-1, which are the remaining parts of the equation. Let's start with f-1. Unlike the squares we've been dealing with so far, this is not necessarily going to be divisible by 8. 2d(n-1)+f-1 will be divisible by 8, but 2d(n-1) and f-1 by themselves won't necessarily be divisible by 8. So if we were to visually divide f-1 up into eight parts and distribute them among the triangles, some of the triangles would get an extra unit. Whatever (f-1)%8 is determines how many of these triangles will have this extra unit. In this case, f is equal to 21. 20/8 is 2.5, or 2 with a remainder of 4. This means four of the triangles will have 2 units from f and four will have 3 units from f (as shown in the second image; f is blue). What is left over (green) is 2d(n-1), which is also distributed unevenly among the eight triangles.
As above, 2d(n-1)+f-1 will be divisible by 8. If (f-1)/8 gives a remainder of 4, as it did above, (2d(n-1))/8 will need to also give a remainder of 4 in order to produce a number with f-1 that is divisible by 8. If (f-1)/8 had a remainder of 3, (2d(n-1))/8 would need to have a remainder of 5. We know f and d, but we don't know n-1. Because we know that 2d(n-1)+f-1 needs to be divisible by 8, the remainder of (f-1)/8 restricts the possible values of n-1 that we could have with each valid pair of f and d values.
So with the above example, pretending we don't know what n-1 is, we have f=21 and d=11. (21-1)/8=2r4. This means whatever we multiply 11*2=22 by (i.e. n-1) needs to also have a remainder of 4 when divided by 8. So what values are valid in this case? Well, 0/8=0, so it can't be n-1=0, and 22/8=2r6, so it can't be n-1=1. Here's a list to demonstrate:
n-1=2, 44/8=5r4 — n-1=2 is valid for this d and f pair
n-1=3, 66/8=8r2 — invalid
n-1=4, 88/8=11r0 — invalid
n-1=5, 110/8=13r6 — invalid
n-1=6, 132/8=16r4 — n-1=6 is valid for this d and f pair
n-1=7, 154/8=19r2 — invalid
n-1=8, 176/8=22r0 — invalid
n-1=9, 198/8=24r6 — invalid
n-1=10, 220/8=27r4 — n-1=10 is valid for this d and f pair
…
n-1=60, 1100/8=170r4 — n-1=60 is valid for this d and f pair
As you can see, the possible values of n-1 are restricted by the remainder of (f-1)/8. Because n=((a+b)/2)-d, and d is the floor of the square root of c, the highest possible n value (when a=1 and b=c) is ((c+1)/2)-d. So while n-1=60 (and so on in that pattern) would be a valid n-1 value based on the remainders, the highest possible n-1 we could have in this case (also called BigN-1) is equal to 50. So the list of valid potential n-1s (based on remainders, not actually all the correct ns) for this c is 2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46 and 50. The only correct ones in this list (since c is a semiprime and n will be calculated from ((a+b)/2)-d where a and b are either the two prime factors or 1 and itself) are n-1=10 and n-1=50. We can easily find n-1=50, since it comes from n=((c+1)/2)-d. We want to find n-1=10.