![]() |
Monopoly-Simulator
Liste der Anhänge anzeigen (Anzahl: 2)
Nachdem ich letztens mit meinem Sohn so ein Spiel rund um das Kaufen von Immobilien gespielt habe, kam die Frage auf, welche Straßen mann eigentlich vorrangig kaufen sollte.
Also ran an Delphi und einen Simulator gebaut. Dieser betrachtet das Brett inkl. aller Ereignis- und Gemeinschaftskarten und würfelt sich so durch die Runden. Je Feld wird ein Zähler erhöht, sobald die Spielfigur dieses Feld erreicht. Wenn durch eine Karte ein anderes Ziel angesteuert werden muss, werden auch die Zähler für Ziel Nr. 1 (Ereignis- oder Gemeinschaftskarte) und Ziel Nr. 2 (z.B. gehe 3 Felder zurück) hochgezählt. Als Ergebnis kommt dann eine Top-Down-Liste aller kaufbaren Felder heraus. Die %-Werte zeigen an, wie weit sich das jeweilige Feld vom statistischen Mittel entfernt hat. Mal sehen, ob mir diese Erkenntnisse beim nächsten Spiel helfen :-) Die Datei enthält die EXE und die Sourcen. EXE einfach irgendwohin kopieren. Läuft ohne Installation. Update Version 2: Hier ein Update mit folgenden Erweiterungen: - Farben der Felder werden jetzt in den Ergebnissen angezeigt - Die Simulationsergebnisse können jetzt zusätzlich nach "Farben" gruppiert werden. Dadurch kann man erkennen, wie Wahrscheinlich das Landen auf mindestens einem der zusammengehörigen Felder ist. - Die Bezeichnung der Felder und die Farben sind in 2 CSV-Dateien ausgelagert, die bei Systemstart eingelesen werden. Fehlerbereinigung: - Das Feld "Los" wurde in der alten Version falsch gezählt. Viel Spass beim testen/ausprobieren/anwenden (Weihnachtszeit ist ja auch immer Spielzeit!) |
AW: Monopoly-Simulator
Ich an deiner Stelle würde das Programm (und auch ein paar Elemente im Spiel) umbenennen.
Außer dich stört es nicht eine saftige Abmahnung zu bekommen. |
AW: Monopoly-Simulator
Bernhard hat recht. Aber nettes tool.;)
|
AW: Monopoly-Simulator
Zitat:
|
AW: Monopoly-Simulator
Der Name "Monopoly" wurde geschützt und das nicht nur für Spiele, die so ähnlich sind.
|
AW: Monopoly-Simulator
Zitat:
|
AW: Monopoly-Simulator
Hallo
wie geschützt ist der Nameeigentlich wirklich noch? Zitat:
Grüße wo |
AW: Monopoly-Simulator
Zitat:
Die schafften es sogar ein Patent für en "rechteckiges Gerät mit abgerundeten Ecken" zu bekommen. Nja, wenn er kein Geld damit verdiehnt (auch nicht durch Werbeeinnahmen und Co) und er gleich auf die erste Abmahnung schnell reagiert, sollten die sich doch mal beschweren ..... dann dürfte es wenigstens nicht teuer werden. |
AW: Monopoly-Simulator
Zitat:
|
AW: Monopoly-Simulator
Zitat:
|
AW: Monopoly-Simulator
Back to topic: Klaus Lage hat sicherheitshalber sein Lied "Monopoli" genannt ;)
![]() Sherlock |
AW: Monopoly-Simulator
Hallo,
nur eine kleine Anmerkung auf die Schnelle. Die Eisenstraße kenne ich nicht. Es ist wohl die Elisenstrasse gemeint. Aber Namen sind wie Schall und Rauch, na jedenfalls fast. Die Prozedur Mischen ist etwas unglücklich gewählt, Fisher-Yates wäre angebrachter.
Delphi-Quellcode:
das Würfeln könnte man mit nur einmal random minimal beschleunigen.
Procedure Mischen(var a: array of integer);
var x: integer; begin for x := high(a) downto 1 do swap(a[x],a[random(x+1)]); end;
Delphi-Quellcode:
Ich habe mich schon gefragt, ob da auch gekauft wird, aber Geld spielt bisher keine Rolle, der Spielstein macht "nur" 10^8 Züge.
// Wuerfelsumme vorbelegen, kann ein konstantes Feld sein
For w1 := 0 to 5 do For w2 := 0 to 5 do WSum[w1*6+w2] := w1+w2+2;//w1+1 +w2+1; {statt: w1 := RandomRange(1,7); w2 := RandomRange(1,7); w := w1+w2; nun:} w := wSum[random(36)]; Vielleicht hätte man die Anzahl der Besuche für Ereignis und Gemeinschaftsfelder aufführen können. Ich habe schon immer geahnt, das der Opernplatz der Schlüssel zum Erfolg ist ;-) Eine komplette Spielsimulation scheint ja geplant zu sein, da bin ich gespannt. Gruß Horst |
AW: Monopoly-Simulator
Es gibt ja zahllose Editionen von Monopoly. Eventuell wäre es besser die Farben der Straßen zu verwenden. Also für Schloßallee (oder Coruscant Senat :wink: ) dann "Dunkelblau 2".
Sherlock |
AW: Monopoly-Simulator
Ich könnte mir sehr gut vorstellen, das die Käufe der anderen Mitspieler massiven Einfluß auf die Ergebnisse haben. Vielleicht ist die Idee, es mit nur einem Spielstein zu simulieren, nicht ganz so ideal ;)
|
AW: Monopoly-Simulator
Zitat:
Sherlock |
AW: Monopoly-Simulator
Ach Leute. :roll:
Habt ihr das Programm mal geöffnet? Als würde es irgendwen nur ansatzweise interessieren ob er das Programm "Monopoly" nennt oder nicht. Die meisten Leute hier kümmern sich mehr darum als die zuständigen Anwälte es jemals tun würden... |
AW: Monopoly-Simulator
Zitat:
![]() |
AW: Monopoly-Simulator
Also eines muss man schon anmerken in der Rechtsdiskussion: so lange kein Geld damit verdient wird/werden soll, ist alles deutlich entspannter.
Sherlock |
AW: Monopoly-Simulator
Hallo,
Zitat:
Aber man darf die Zielsetzung nicht aus den Augen verlieren: "Welche Straßen werden signifikant häufiger betreten oder weniger häufig als der Durchschnitt 1/40". Ich vermute mal, das mehrere Spieler daran nichts ändern, da sie nicht von einander abhängig agieren.Ich muss meinen Stein immer bewegen ( außer im Gefängnis ) und kann auch mit anderen Mitspielern auf einem Feld stehen.Großartig strategisch planen kann man bei dem Spiel ja nicht. Gruß Horst |
AW: Monopoly-Simulator
Zitat:
Meinst du irgendwer verschwendet sein Geld oder seine Anwälte für so ein Programm? 5100€? Wahrscheinlich kostet der Anwalt und die Verwaltung drumherum mehr wenn jemand tatsächlich rechtliche Schritte gegen dieses "Rumspiel"-Programm einleiten würde. Du magst vllt. generell Recht haben was die rechtliche Lage angeht aber die Realität sieht in dem Fall deutlich anders aus... Genauso gut kann ich ein Programm schreiben mit dem Namen "Call of Duty". 3-4 Buttons und ein paar andere Controls aufs Formular klatschen und Call of Duty simulieren (wie auch immer man das tun würde) indem ich ein paar Werte in einer ListBox ausgebe. Meinst du EA würde auch nur mit der Wimper zucken? Vllt öffnen Sie das Programm wenn Sie es finden und sobald Sie rausgefunden haben was es tut (bzw nicht tut) werden sie bereuen überhaupt die Zeit verschwendet zu haben das Programm zu öffnen. EDIT: Ach ja. Ich zitiere aus deinem Link: Zitat:
|
AW: Monopoly-Simulator
Und wo ist da der Unterschied zu Asterix und das Atomkraftwerk vs. Gravenreuth? Die Anwaltskosten haben die doch nicht, die zahlt der zivilrechtlich unterlegene obendrauf. Und das bist du.
Ganz ehrlich: Mach doch mal dein Freeware-Spiel mit drei Buttons, nenne es Call of Duty, vertreibe es als Freeware oder für einen Cent und mache den Rechteinhaber drauf aufmerksam. Aber nur wenn du auf körperliche Schmerzen stehst ;-) |
AW: Monopoly-Simulator
Zitat:
Du gibst dein Programm kostenlos als Freeware ab, aber auf der webseite, mit dem Download, wird ein Werbebanner angezeigt. Und schon "verdienst" du mit dem Programm auch indirekt Geld, über diese Werbung. |
AW: Monopoly-Simulator
Zitat:
Aber was soll. Ich habe den Threaderstelle auf die Problematik hingewiesen einen geschützten Begriff so zu verwenden. Und damit genug. Für mich ist das Thema damit erledigt. |
AW: Monopoly-Simulator
Wenn das so weiter geht, landet der Thread bei der Suche nach Mon.. und Simulator noch auf Platz 1 bei Google. Und schon werden alle aufmerksam.. und der Stein kommt ins Rollen.
//Edit steht schon auf Platz 2 |
AW: Monopoly-Simulator
LOL
:dp: Sherlock |
AW: Monopoly-Simulator
hmm.
Kann mir jemand erklären, warum nach n-Durchläufen nicht alle Straßen gleich oft besucht werden? Sollen die Ereigniskarten so viel beeinflussen? Ein Erfolg im Spieles liegt sicherlich aber nicht in der Statistik der erreichten Felder, sondern eher in der Kauf/Verkauf/Häuserbau Strategie. Hierzu müssten sicherlich 1-4 Spieler mit unterschiedlichen Strategien simuliert werden. Finde das ist ein sehr interessantes Thema... Mavarik |
AW: Monopoly-Simulator
Hallo,
Zitat:
Das es so ausgeprägte Unterschiede gibt erstaunte mich auch beim ersten Mal. Da man aber von Los startet und es mehrfach "Rücke vor bis auf Los" gibt, ergibt schon das normale Würfeln mit einer Würfelsumme die einen Hang zur 7 hat, das (x*7) MOD 40 für kleine x bevorzugt wird.Zudem gibt es noch Karten rücke vor bis auf: Seestraße (Seestraße sehr wahrscheinlich ;-) und 13 von Opernplatz und damit wieder wahrscheinlicher )/ Opernplatz / Hauptbahnhof...) Natürlich lohnt sich aufgrund der Berechnungen es wesentlich mehr den Opernplatz zu erwerben und zu bebauen anstatt der Parkstraße mit -12,6% . Aber die Simulation hat einen großen Haken. Ich glaube mich zu erinnern, das mehreren Spielern Chaussee (Pos 6) und Elisenstraße (8)immer ganz schnell "weg" waren.Bei der Simulation landen diese aber im negativen Bereich. Das würde meiner Vermutung, man startet überproportional häufig von Los, widersprechen... Das muss ich mir nochmal überlegen. Gruß Horst Edit: Ich habe mal die Zeile
Delphi-Quellcode:
auskommentiert um auch Los und Gefängnis zu sehen:
if MnTypen[erg[x].pos] = buy then
Code:
Erstaunlich das Los so selten ist???
Gefängnis 5.938.119 137,52
Opernplatz 3.158.408 26,34 ... Chausseestraße 2.261.856 -9,53 Turmstraße 2.229.994 -10,80 Gemeinschaftsfeld 2.217.364 -11,31 Zusatzsteuer 2.193.050 -12,28 Los 2.187.975 -12,48 Parkstraße 2.186.428 -12,54 |
AW: Monopoly-Simulator
Auweia! Da habe ich ja was losgetreten.
Also 1.: Ich will kein Geld damit verdienen. Wollte einfach nur rausfinden, ob es unterschiedliche "Landewahrscheinlichkeiten" auf den 40 Felder gibt. 2.: Die Anzahl der Spieler und Pasch ist für diesen Ansatz irrelevant. Das einzige vielleicht noch relevante Element ist die (Sonder)Regel?, dass man bei drei mal Pasch in Folge ins Gefängnis kommt. Das habe ich bisher nicht berücksichtigt. 3.: Um eine komplette Simulation vorzunehmen fehlen in der Tat noch einige Elemente (Kauf, Verkauf, Versteigerung, Hypotheken, Miete und und und). Aber ehrlich gesagt, wollte ich über die Tage noch etwas mit meinem Sohn in der realen Welt spielen. Ein komplett gelöstes Spiel wird dann doch eher langweilig. 4.: Mich selbst haben die Abweichungen auch sehr irritiert. Vielleicht steckt ja noch ein dicker Logikfehler drin. Wer in findet, bekommt ein dickes Lob von mir (und ich verspreche, es in der realen Welt auszuprobieren) 5.: Optik war mir relativ egal. Deshalb auch die "hingeklatschten" StringGrids. Entgegen meiner üblichen Vorgehensweise habe ich hier ausnahmsweise mal mit FloatToStrF gearbeitet. Da lassen sich die Millionen Positionen doch etwas besser lesen. Ansonsten, viel Spaß beim Ausprobieren, optimieren dieses Simulator (vielleicht benenne ich ihn in "Markow und der Immobilienhai" um) P.S.: Der aufmerksame Leser wird bemerkt haben, wie geschickt(?!) ich in diesem Beitrag sämtliche evtl. markenrechtlich geschützten Begriffe umgangen habe. P.P.S.: Ich bin übrigens der Meinung, dass das Simulieren aus rein statistischen Zwecken keinen markenrechtlichen Verstoß darstellt. Schließlich gibt es auch einige wissenschaftliche Arbeiten, die sich mit diesem Thema unter Nennung des "bösen Wortes" beschäftigen. Stichwort "Markow-Ketten". |
AW: Markow und der Immobilienhai-Simulator
Na ja. Wer ins Gefängnis muss, geht dort hin und kommt irgendwann wieder raus. Dann würfelt er und geht vorwärts. Logisch, daß die 12 auf das Gefängnis folgenden Felder dann öfter besucht werden als die anderen. Folgerichtig sind die Felder, die auf den Polizisten folgen, seltener besucht. Und da nicht alle Augenzahlen gleich oft vorkommen (7 ist am häufigsten, 1 kommt nicht vor, 12 nur 1x usw) sind die auf den Austritt aus dem Gefängnis folgenden Felder auch ungleichmäßig häufiger besucht.
Dann gibt es noch die Karten, die einen direkt auf Los schicken, woraufhin man wieder am häufigsten 6 oder 7 Felder nach vorne wandert. Entsprechend werden diese Felder häufiger besucht. Keine Ahnung, ob es noch andere Felder gibt, auf die man vorrücken oder wandert (per Karte). Und dann sind die diesem Feld folgenden Felder wieder etwas häufiger. So kann ich mir das zumindest erklären. PS: MONOPOLY! SIMULATION! (So ähnlich wie "Jehova!") Los, verklagt mich (So ein Blödsinn, imho) |
AW: Markow und der Immobilienhai-Simulator
Zitat:
Zitat:
![]() Nachtrag: Interessant in dem Zusammenhang finde ich auch das hier: ![]() |
AW: Markow und der Immobilienhai-Simulator
Mhm,
der Ubuntu-Disclaimer gefällt mir eigentlich sehr gut. Vielleicht sollte ich ihn in den Startbeitrag aufnehmen. In etwa so: Disclaimer: In case you are either 1) a complete idiot; or 2) a lawyer; or 3) both, please be aware that this program is not affiliated with or approved by Hasbro Inc. This program analyze only the probability of ....... |
AW: Markow und der Immobilienhai-Simulator
Hallo,
ich habe, wie oben im Edit geschrieben,extrem viele Gefängnisaufenthalte festgestellt. Die 137 % rühren daher, dass nicht zwischen Aufenthalt und Besuch unterschieden wird und Los ist unterrepräsentiert, obwohl es doch auch zwei Karten "Rücke vor bis auf Los gibt", wie auch " Gehe in das Gefängnis,...".O.K. Das Feld 30 gehe in das Gefängnis wirkt ja auch. Ich sollte die neue Version laden... Gruß Horst Edit: Die Strassennamen hätte man aber auch ändern müssen, oder nicht. Monopoly ist doch schon so lange im Markt, sind da nich schon einige Schutzfristen überschritten, Patente gelten auch nicht ewig. |
AW: Markow und der Immobilienhai-Simulator
Hallo Horst,
Zitat:
Zitat:
Zitat:
Aber wie gesagt, vielleicht steckt ja doch noch ein Logikfehler drin.... Zitat:
Gruß, Andreas |
AW: Markow und der Immobilienhai-Simulator
Hallo,
ich habe das Programm etwas umgestaltet. Ich zähle jetzt innerhalb und zu guter Letzt bestimme ich Gesamtzahl der Schritte, die wesentlich höher als anz=10^8 ist. Es war doch schon seltsam, dass man eine weit größere Menge an Straßen mit positiver Abweichung hatte, die überhaupt nicht durch negative Abweichung kompensiert wurden. Hier sind ab der 15.ten Straße negative Werte, schließlich muss das Gefängnis kompensiert werden. Das sieht doch besser aus, mit Los weit vorne ( aber ob es stimmt ? ) :
Code:
Gruß Horst
Straße Anzahl prozetualer Anteil
10 Gefängnis 5.952.244 120,42 24 Opernplatz 3.178.155 17,69 0 Los 3.084.935 14,24 19 Berliner Straße 3.061.491 13,37 17 Gemeinschaftsfeld 2.974.650 10,16 18 Wiener Straße 2.940.227 8,88 5 Südbahnhof 2.901.115 7,43 15 Westbahnhof 2.868.585 6,23 20 Frei Parken 2.858.976 5,87 16 Münchener Straße 2.826.467 4,67 11 Seestraße 2.806.802 3,94 21 Theatherstraße 2.804.245 3,85 22 Ereignisfeld 2.760.306 2,22 26 Lessingstraße 2.707.650 0,27 25 Nordbahnhof 2.698.277 -0,08 23 Museumstraße 2.696.166 -0,16 27 Schillerstraße 2.684.213 -0,60 31 Rathausplatz 2.666.454 -1,26 28 Wasserwerk 2.652.501 -1,77 33 Gemeinschaftsfeld 2.650.522 -1,85 30 Gehe in das Gefängnis 2.648.416 -1,93 39 Schlossallee 2.627.801 -2,69 29 Goethestraße 2.616.123 -3,12 1 Badstraße 2.609.801 -3,36 32 Hauptstraße 2.590.416 -4,07 35 Hauptbahnhof 2.534.012 -6,16 14 Neue Straße 2.531.876 -6,24 34 Bahnhofstraße 2.459.631 -8,92 13 Hafenstraße 2.448.979 -9,31 4 Einkommensteuer 2.431.929 -9,94 12 Elektritzitätswerk 2.386.360 -11,63 8 Elisenstraße 2.386.330 -11,63 7 Ereignisfeld 2.373.756 -12,10 9 Poststraße 2.351.851 -12,91 6 Chausseestraße 2.326.163 -13,86 36 Ereignisfeld 2.259.544 -16,33 3 Turmstraße 2.209.998 -18,16 2 Gemeinschaftsfeld 2.169.862 -19,65 38 Zusatzsteuer 2.143.087 -20,64 37 Parkstraße 2.136.585 -20,88 |
AW: Markow und der Immobilienhai-Simulator
Hallo Horst,
habe mir deine Version mal angeschaut. Sehr schön ist das Setzen eines Indexes für die Gemeinschafts-/Ereigniskarten. Habe ich auch schon drüber nachgedacht. Ist natürlich deutlich schneller als meine Umsetzung. Das Thema "Gesamtanzahl der Würfe" ist in der Tag ein Logikfehler in meiner Version gewesen (und damit großes Lob an Dich). Ich habe ganz vergessen, dass die 100 Mio. Würfe durch ein zweites Zielfeld (z.B. erst Polizist und dann Gefängnis) natürlich deutlich höher sind. Damit liegt der Durchschnitt nicht bei 100 Mio. / 40 Felder sonder bei (100 Mio + x) / 40. Die absolute Anzahl der getroffenen Felder und die Reihenfolge der Häufigkeiten dürfte sich dadurch allerdings nicht ändern. Kann es sein, dass sich in dieser von dir vorgenommenen Optimierung (übrigens sehr elegant) ein Fehler eingeschlichen hat?
Delphi-Quellcode:
Wenn ich das richtig verstehe, wird hier immer auf das Feld 5, 15, 25 oder 35 gesprungen, abhängig davon, in welcher 10er-Range die Spielfigur steht.
/// Rücke vor bis zum nächsten Bahnhof, wenn du über Los kommst....
-2 : begin Inhalt := Pos DIV 10; IF Pos > 34 then begin dec(Inhalt,3); inc(Geld,UeberLos); end; Pos := Inhalt*10+5; inc(feldstat[Pos]); end; Allerdings lautet die Anweisung (jedenfalls in meiner Version) "Rücke vor bis zum nächsten Bahnhof". Wenn also z.B. auf Feld 17 (Gemeinschaftsfeld) diese Karte gezogen wird, müßte eigentlich zu Feld 25 gezogen werden. In deiner Variante wird allerdings Feld 15 angesprungen. Warum Los sich so dramatisch geändert hat, ist mir noch nicht klar. Gruß, Andreas |
AW: Markow und der Immobilienhai-Simulator
Hallo,
Das mit den Bahnhöfen habe ich jetzt mal geändert:
Delphi-Quellcode:
Los muss doch häufiger sein, wenn 1/14.5 der Karten "Rücke vor bis auf Los" und es 6 Felder Ereignis/Gemeinschaftsfelder pro Runde gibt.
-2 : begin
Inhalt := (Pos+5)DIV 10; IF Inhalt > 3 then begin Inhalt:=0; inc(Geld,UeberLos); end; Pos := Inhalt*10+5; inc(feldstat[Pos]); end; Gruß Horst Edit: Durch das Verbleiben im Gefängnis, wenn man nicht einen Pasch gewürfelt oder dreimal ausgesetzt hat, sinkt die Anzahl der zusätzlichen Bewegungen von 8% auf 1.8%
Code:
10 Gefängnis 594569 133,58%
24 Opernplatz 295732 16,18% 0 Los 290022 13,94% 18 Wiener Straße 283764 11,48% 19 Berliner Straße 280244 10,10% 20 Frei Parken 279403 9,76% ... Gesammtanzahl 10181887 statt 10000000 |
AW: Markow und der Immobilienhai-Simulator
Hm... bzgl. des Verklagtwerdens verhält es sich natürlich so, dass hier eigentlich niemand seinen Namen oder seine Adresse veröffentlichen muss, insofern ist die Umsetzbarkeit oder Durchsetzungsfähigkeit der Klage fraglich - denk ich mir so.
Klar in Zeiten von PRISM ok... ;-) Gruß Caps |
AW: Markow und der Immobilienhai-Simulator
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich möchte nicht für so einen Kokolores verklagt werden.Als würde das Spiel dadurch an Attraktivität verlieren.Es hat ja auch keine Strategie eingebaut und man spielt ja auch nicht. Ich habe es nochmals abgewandelt und bei Einzelschritt 1000 Schritte machen lassen, damit man auch sieht, dass man nur zu Besuch oder im Gefängnis ist und mal die Chance auf dreimal Pasch nacheinander hat.Ich habe es mit Lazarus 1.0.14 kompiliert, deshalb braucht es auch 4,4 Sekunden für 1e8 Würfen, aber es tut sich fast nichts gegenüber 1e6 Würfen. Gruß Horst |
AW: Markow und der Immobilienhai-Simulator
Hier das Update auf die Version 2 (sh. Beitrag #1)
|
AW: Markow und der Immobilienhai-Simulator
Hallo,
Zitat:
Das Mischen ist immer noch seltsam.Es werden jetzt n-fach per Zufallsindex benachbarte Karten getauscht. Aus ![]()
Delphi-Quellcode:
Das Bunte kommt gut :thumb:
// Mischen nach Fisher-Yates
for i := Low(FNumberList) to High(FNumberList) do begin j := i + Random(Length(FNumberList) - i); tmp := FNumberList[j]; FNumberList[j] := FNumberList[i]; FNumberList[i] := tmp; end; Gruß Horst |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz