APF für Browsergame verwenden.

Hierein gehört alles, was in den übrigen Foren keinen Platz findet. // Please post here in case your topic doesn't fit enywhere else.
Antworten
MegaBlue
Beiträge: 11
Registriert: 30.11.2010, 10:31:16

APF für Browsergame verwenden.

Beitrag von MegaBlue » 28.02.2013, 16:06:59

Hallo Com.,
ich habe meine PHP / MySQL Kentnisse über einige Jahre nun selbst in meinen Kopf gehämmert leider nicht auf der Grundlage von OOP.
Nun hatte ich von einiger Zeit mit einem Freund zusammen ein Browsergame angefangen zu Entwikeln bis er dann aus
Zeitlichen gründen ausgestiegen ist. Ich hatte dann auch einige Zeit nichts mehr gemacht und wollte es nun wieder aufleben lassen.
Vor kurzem bin ich auf der suche nach einem Framework ( da ich gelesen hatte das ein solches einem einige Arbeit abnehmen kann ) auf das APF gestoßen.
Nun habe ich auch schon mal ein wenig damit gemacht z.B. das Browsergame TuT vom Megger wo ich dann schon gesehen habe das es eventuell schon nicht
so einfach ist damit umzugehen wie ich erst dachte. Ich komme halt manchmal micht gleich drauf wie ich die einzelnen sachen nun umsetzen soll da ich wohl noch
nicht alles kenne was es in PHP so gibt.

Deswegen dachte ich das ich wohl ein paar anstöße für das ein oder andere bekommen könnte.
z.B. zum
- Datenbankaufbau
- wie Entwikel ich ein Modul ( Handelssystem )
- wie bau ich am besten die Ordnerstruktur auf

Zum Spiel:
Es ist ein Weltraumbasierendes Multiplayergame mit mehreren Rassen, Unterschiedliche Schiffstypen die man auch mit unterschiedlichen Komponenten ausstatten kann.

Was braucht ihr noch für Informationen?

zu meiner Person:
- bin Männlich, 35 Jahre Alt, Verheiratet, 2 Kinder und wohne in Thüringen
- Arbeite als Karftfahrer aber zur Zeit im Erziehungsjahr
- habe mit PHP und Co. nun schon fast 8 Jahre zu tun

Ich wünsche mir dadurch bessere Verständlichkeit und Umgang mit dem APF zu bekommen.

Mit freundlichem Gruß
MegaBlue ( Uwe )

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: APF für Browsergame verwenden.

Beitrag von dave » 28.02.2013, 18:05:17

Hallo Uwe,

dein Beitrag wäre fast vor lauter Spam an mir vorbei gegangen ;).

Mir ging es ähnlich, bevor ich zum APF gekommen bin: ich hatte schon Erfahrung über die Jahre in PHP und wollte nun ein grösseres Projekt angehen. Meine Entscheidung für das APF war dabei goldrichtig, wie ich jedesmal nur wieder sagen kann. Gerade die Unterstützung durch andere User ist grossartig.

Um die Datenbank genau zu planen, solltest du dir vorher wirklich im klaren sein, was dein Spiel alles können soll und muss.

Besteht ein Raumschiff nun zum Beispiel aus verschiedensten Waffensystemen als Beispiel, ist es sinnvoll, eine Tabelle für das Raumschiff und Tabellen für die verschiedenen Waffensysteme zu erstellen. Anhand von Relationen kannst du dann recht einfach und schnell über den GenericORMapper (GORM) Beziehungen zwischen dem Raumschiff und seinen Waffensystemen erstellen.

Mit Handelswaren ist es das gleiche: Für jede Ware gibt es eine Tabelle und diese wird dann in Beziehung zu allen anderen Komponenten gesetzt.

Natürlich ist das nur eine Möglichkeit, viele Wege führen nach Rom. Daher mein Tipp: Fang an und bei Problemen fragst du einfach nach.

Zur Ordnerstruktur soll sich bitte jemand zu Wort melden, der wirklich Ahnung davon hat, was er/sie tut ;).

MegaBlue
Beiträge: 11
Registriert: 30.11.2010, 10:31:16

Re: APF für Browsergame verwenden.

Beitrag von MegaBlue » 28.02.2013, 18:40:05

Danke erstmal für dein schnelle Antwort Dave.

Um mal etwas genauer auf die sache z.B. mit den Schiffen einzugehen das ich es richtig verstehe.
Es sieht so aus:
Es gibt sagen wir mal 5 Rassen
je 10 Schiffsrümpfe mit gewissen Grundwerten
dann gibt es Unterschiedliche Komponenten die erforscht werden müssen
die man dann jeweils bei dem zugehörigen rumpf verbauen kannum die Grundwerte zu verbessern
Dieser entstandene Rumpf nenen wir es Bauplan wird dann unter einen wählbaren Namen in der Datenbank gespeichert.

Wie könnte da ein vernünftiges Datenbank Bild aussehen?

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: APF für Browsergame verwenden.

Beitrag von Megger » 01.03.2013, 11:39:55

Ja so eine Idee mit dem Zusammenbauen von Einheiten hatte ich auch mal! Irgendwo habe ich vielleicht noch ein Datenbankschema, da müsste ich mal schauen!

Ich persönlich würde es in der Art aufbauen:
ship - Hier wird ein fertiges Schiff gespeichert
item - Hier werden alle Einzelteile gespeichert, auch die Schiffsrümpfe
itemAttribute - Hier speicherst du verschiedene Attribute die dann zusammengerechnet werden (z.B. attack => +2)
blueprint - Hier wird gespeichert, welche Kombinationen möglich sind (Damit kannst du zum Beispiel bestimmen, dass TeilA nur in SchiffA und SchiffB verbaut werden kann)

Und dann noch die Beziehungen
ship2item - Welche Einzelteile sind in dem Schiff verbaut
item2itemAttribute - Welche Attribute sind einem Einzelteil zugeordnet
blueprint2item - Welche Einzelteile können in diesem Bauplan verwendet werden

Unter "item" würde ich dann auch noch speichern um welche Art von Einzelteil es sich handelt (z.B. Basis, Waffe, Schild usw.) Dadurch kannst du dann z.B. in deinem Bauplan festlegen, dass es z.B. zwei Waffenplätze und einen allgemeinen Platz gibt und dann noch ein Basisplatz der auf jedenfall besetzt werden muss usw.


Das ganze ist sicherlich noch ausbaufähig und unausgereift, aber ich hoffe ich konnte dir bei deiner Idee ein wenig helfen!

Edit:
Und ein Konzept ist immer wichtig, überleg dir genau was du willst, weil zwischendurch alles noch einmal komplett umschreiben bzw. verwerfen und neuschreiben ist oft sehr demotivierend ^^

Edit2:
Und du erinnerst mich daran, dass ich an meinem Tutorial mal wieder weiterschreiben sollte! Ist immer so schwer alles in Worte zu fassen
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

MegaBlue
Beiträge: 11
Registriert: 30.11.2010, 10:31:16

Re: APF für Browsergame verwenden.

Beitrag von MegaBlue » 01.03.2013, 13:21:29

Danke für deine Antwort werde diesbezüglich sicher noch ein paar Fragen haben.

Ja dein TuT hat mich da schon etwas mehr Inspiriert das APF zu verwenden nur kamm ich glaub mit der Versionsumstellung nicht wirklich
zurecht aber das ist wohl nun auch erstmal unwichtig da ich ja eh nun an einem eigenen Projekt arbeite.
Werde aber sich noch mal rein schauen um zu sehen wie es bei manchen Punkten geht etwas umzusetzen.

Mal was anderes kann ich das Usermanagement-Modul auch mehrschichtig nutzen z.B.
1. das sich die User Registrieren und Einlogen können
2. um Usern ein Allianzsystem mit Rechten und Gruppen bereit zu stellen wenn ich mich versteht

Grüße
Uwe

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: APF für Browsergame verwenden.

Beitrag von Megger » 01.03.2013, 13:30:33

1. das sich die User Registrieren und Einlogen können
Kein Problem, dafür ist es ja da
2. um Usern ein Allianzsystem mit Rechten und Gruppen bereit zu stellen wenn ich mich versteht
Mhh, wenn du als Programmierer festlegst, wie diese Gruppen und Rechte aussehen, dann sollte das kein großer Aufwand sein, wenn du allerdings den Allianzen überlassen willst, wie die Gruppen heißen usw. dann musst du dir überlegen, welche Gruppen zu welcher Allianz gehören! Aber grundsätzlich ist es möglich
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

MegaBlue
Beiträge: 11
Registriert: 30.11.2010, 10:31:16

Re: APF für Browsergame verwenden.

Beitrag von MegaBlue » 01.03.2013, 14:20:04

Also bei den Allianzen hatte ich mir das so gedacht das es 2 Feste Gruppen gibt
1. Gründer -> hat alle Rechte
2. Neuling -> het keine Rechte

Dann sollte halt der Gründer die möglichkeit haben andere Gruppen mit unterschiedlichen Rechten und eigenen Namen zu erstellen.
Ist es dann möglich das in einem Usermanagement zu vereinen oder sollte man da ein Extra Usermanagement einbetten?

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: APF für Browsergame verwenden.

Beitrag von Megger » 01.03.2013, 14:38:53

Klar ist das möglich, du musst nur sicherstellen, dass du nachher noch weißt, welche Gruppe zu welcher Allianz gehört! Im Grunde kannst du mit dem UserManagement einfach eine Gruppe erstellen und mit dieser dann eine Beziehung zu der Allianz herstellen!
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

MegaBlue
Beiträge: 11
Registriert: 30.11.2010, 10:31:16

Re: APF für Browsergame verwenden.

Beitrag von MegaBlue » 02.03.2013, 13:53:31

Mal noch eine andere Frage.
Ich nutze PHPStorm und es gefällt mir echt gut gibt es dort eine möglichkeit das APF zu integrieren
so das es auch eine Codevervollständigung für APF funktionen usw. gibt?

Grüße
Uwe

Benutzeravatar
dr.e.
Administrator
Beiträge: 4527
Registriert: 04.11.2007, 16:13:53

Re: APF für Browsergame verwenden.

Beitrag von dr.e. » 02.03.2013, 14:38:52

Hallo Uwe,

PHPStorm an sich kann dir alle PHP-Funktionen out-of-the-box vervollständigen. Das ist zunächst unabhängig vom APF. Sofern du generische Funktionen wie beispielsweise getServiceObject() aufrufst, weiß PHPStorm natürlich nicht genau, was zurück kommt. Hier schaffen Type-Hints aber sehr schnell Abhilfe. Unter http://wiki.adventure-php-framework.org ... n_Netbeans findest du einen Artikel für Netbeans, der jedoch genauso für PHPStorm gilt.
Viele Grüße,
Christian

Benutzeravatar
dr.e.
Administrator
Beiträge: 4527
Registriert: 04.11.2007, 16:13:53

Re: APF für Browsergame verwenden.

Beitrag von dr.e. » 11.03.2013, 21:40:08

[MOD] Beiträge des weiteren Beitrags nach viewtopic.php?f=5&t=1383 verschoben.
Viele Grüße,
Christian

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast