Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eigenanteils Rechner - Eigenanteilberechnung falsch wenn mehrere Ext. #139

Closed
yyoshii opened this issue Oct 24, 2019 · 5 comments
Closed

Comments

@yyoshii
Copy link

yyoshii commented Oct 24, 2019

Hallo,

ich habe soeben im Eigenanteils Rechner Ext. Punkte eingegeben.

Der Eigenanteil in das Lg sind insgesamt 318.

Wenn ich eingebe, dass P1 100 Ext. hat, dann wird der Eigenanteil im Kopf korrekt auf 313 reduziert.
Wenn ich jedoch nun für P2 auch 100 FP eingebe wird der Wert nicht reduziert, sondern auf 413 erhöht. Der Wert der "Externe FP" bleibt konstant auf 100.
P3 dann auch nochmal 100 Ext. und der Eigenanteil beläuft sich laut Anzeige auf 513 (die FP der Stufe Insgesamt sind 490):

Richtig:
image

Falsch:
image
image

@SkateScout
Copy link

Ein weiteres Beispiel für einen Rechenfehler:
image
Hier ergibt die Summe auf Externen FP + Eigenanteil mehr als zum Leveln Benötigt wir.

@mainIine
Copy link
Owner

mainIine commented Oct 31, 2019 via email

@SkateScout
Copy link

SkateScout commented Nov 4, 2019

Spezialfälle:

  1. P[i] = safe wenn P[i-1]=0 && 2*P[i]+1=TotalFP-GesamtInvesFP da bei einem Überbieten auf P1 man immer noch Gewinn auf P2 macht.
  2. Wenn man bereits y auf P[n] eingezahlt hat und Aktuell gn Verlust macht, dann macht ein Erhöhen der Einzahlung auf P[n-1] Sinn
    wenn P[n-1] damit SAFE ist und der Verlust bei P[n-1] Geringer ist.
    Bsp: Man wurde Überboten und hat bei P[2]=5 Gewinn aber hatte in der Hoffnung auf P[1] bereits 9 Eingezahlt.
    P[1] ist mit 10 belegt und es sind noch 2 offen. Dann macht ein erhöhen auf 11 Sinn da dann ein Verlust von 1FP vorliegt
    anstelle ein Verlust von 4FP für P2.
    Der Gewinn soll maximiert werden und der Verlust Minimiert werden.
  3. GetP1 braucht nur Level 1 bis 10 und die Anzahl der Levels da P1[n]=n<10 ? t[n] : round(t[10] * 1.025 ^ (n-10)) gilt.

@Gindi4711
Copy link
Collaborator

@SkateScout So wie ich das verstehe beziehen sich deine Punkte ausschließlich auf den Kostenrechner, nicht den Eigenanteilsrechner?

1.) Stimmt da hast du Recht. Bisher werden die Plätze nur isoliert betrachtet, jedoch die die Auswirkung davon relativ gering, da es nur dann Sinn macht P2 statt P1 zu nehmen, wenn P1=P2 ist. Das ist jedoch nur der Fall, wenn P1/2=5. Dies ist somit nur beim Gerüstabbau von LGs und nur bis einschließlich Kolonialzeit der Fall.

2.) Derzeit unterstützt der Kostenrechner bei bereits erfolgter Einzahlung nur die Kalkulation der nötigen FP um den Platz abzusichern, aber es erfolgt keine Prognose, ob andere Plätze noch ertragreicher wären. Das steht auf meiner "nice to have" Liste, jedoch nicht mit sehr hoher Priorität. Unter Umständen müsste hierfür einiges an Code geändert werden, da bisher die Plätze alle isoliert nacheinander betrachtet werden.
Es wird davon ausgegangen, dass der Spieler vor der Einzahlung bereits entscheidet welchen Platz er haben will und während der Einzahlung nur die genauen FP Anzahl vergisst, nicht jedoch den Platz, den haben wollte.

3.) Die Formel trifft nur auf die TotalFP zu. Die Mäzenboni steigen nicht exponentiell an. Bis jetzt habe ich dazu noch keine Formel finden können, deswegen habe ich die ganzen Werte kopiert. Falls eine korrekte Formel auftaucht, werde ich das eventuell ersetzen.

@Gindi4711
Copy link
Collaborator

Ich habe mir den Punkt 1 noch etwas überlegt und man kann das ausdehnen auf:
P[i-1]=0 && 3*P[i]+1=TotalFP-GesamtInvesFP

P[i] ist man selbst
P[i] + 1 ist derjenige der sich P1 holt
P[i] ist derjenige der auf P2 einzahlt und nicht vorbei kommt

Dafür müssen FP, die auf P[i+1] eingezahlt werden angerechnet werden.

Ich werde mir das noch etwas durch den Kopf gehen lassen.

@mainIine mainIine closed this as completed Nov 7, 2019
mainIine pushed a commit that referenced this issue Nov 7, 2019
Th3C0D3R pushed a commit that referenced this issue Aug 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants