Programmierer für Onlinebrowsergame gesucht
-
Hallo!
Wir das NewHope Team suchen dringend einen Programmierer, der Zeit & Lust hat bei uns einzusteigen.
Wir sind eine Gruppe von Informatikstudenten und andern Programmierern & Grafikern (circa 10 Personen).
Wir arbeiten seit einem Monat an einem kostenlosen Onlinebrowsergame, welches im Fantasy - Mittelalter angesiedelt ist - Genre: Aufbau & Strategie ... falls jemand TC (www.garathor.com) kennt, kennt ein vergleichbares Spiel.
Ziel ist eine erste Alpharunde zu Weihnachten.Wenn Du Interesse hast bei uns einzusteigen, solltest Du in der Lage sein eine Hintergrundanwendung, die auf dem Server läuft & dem Spiel erst wirklich Leben einhaucht, zu coden.
Bei Interesse schau doch mal bei uns im Forum vorbei: http://forum.newhope.uodev.de
um alle Themen lesen zu können wird eine bestimmte Nutzergruppe verlangt (Freischaltung durch mich)Falls Du mal in unser Game schauen willst: http://testsite.newhope.uodev.de - wie gesagt, wir arbeiten erst seit einem Monat dran ... also keine Wunder erwarten
Ansonsten auf jedenfall bei Interesse email an: patriciasiwek@yahoo.de
-
hi,
hört sich gut an
könnte jemand von euch mir eine E-Mail mir genaueren info geben.
Oder vielleicht einen ICQ kontakt ?
my ICQ: 125924067grüsse
-
...öhm ich kann mir unter "onlinebrowsergame" nich wirklich was vorstellen...
ich würde auch gerne etwas mehr wissen...
wird das n richtiges programm oder nur so php, cgi
server scripts??
-
also Onlinebrowsergame ist:
ein Spiel dessen Kern eine Datenbank ist, um das Ganze herum viel PHP (zumindest in den meisten Fällen) und die ominöse Hintergrundanwendung, die alles am Laufen hält
Browsergame deshalb weil der Spieler nur den Browser benötigt und keine weitere Software
kurz um stecken hinter dem Ganzen jede Menge SQL Befehle und eben die uns fehlende Hintergrundanwendung, die das Ganze zu einem funktionsfähigem Spiel macht, da sie sozusagen alle PHP Dokumente & Berechnungen am Laufen hält... ich hoffe das klärt Deine Frage
falls Du Lust hast es Dir mal anzusehen (wie gesagt, leider noch völlig statisch, da keine Hintergrundanwendung) registrier Dich als Spieler unter: testsite.newhope.uodev.de
wenn es noch Fragen gibt - einfach melden
-
hi,
hmm solch ein WebSpiel habe ich auch mal alleine Gecodet.
War ziemlich aufwänding.Also ich würde den Tipp geben es ohne Server-Programm so machen.
Ich habe mir auch mal überlegt, ob das sinnvoll ist.ICh bin dann zu ergebniss gekommen, dass es NICHT sinnvoll ist
Es sind 2 wichtige Gründe die ihr beachten solltet:
1.) Sever-belasten ist jede sekunde
2.) Ffalls programm abstürtzt( das manchmal vorkommen kann bei Server überlasstung ). Dann könnt ihr euer Spiel resetten.Nun. ICh denke es wäre geschickter, wenn der User sich die Informationen vom Server Holt, und schreibt.
Der vorteil ist, falls der Server abstürzt ist es kein problem, da
Der User den Letzten login aufgezeichnett hat.
Außerdem wird der Server nur dann belastet, falls eim user darufzugreift. Das entlasstet nachtsüber den server, da dann sehr wenig online sind, und wenig traffic brauchen, tagsüber viele Üser = traffic.Also überlegt euch das mit dem Server-Programm.
grüsse cu
-
Hallo,
wenn ich das richtige verstehe sucht ihr noch jemanden der einen Server für euer Spiel schreibt.
Melde dich bitte mal via ICQ: 164426477
-
hi,
Sorry an Juliane. Ich hatte letztens keine Zeit, da ich in einer besprechung war. So nun geh ich mal auf deine Frage ein:Im vorhinein will ich sagen, dass mann viel mehr rechnen muss und es mehr Arbeit ist.
-------------------------------------------------------------------------------------Truppe geht von A nach B und braucht 10 Min.
In der Datenbank werden informationen gespeichert.
Natürlich kann mann jetzt auf dem Server ein cgi programm laufen lassen und die Datenbank jede Sekunde Updaten und per PHP fragt der User seine Daten
in der Datenbank ab. Jedoch habe ich ja schon meine Kritik gehen cgi programmen gesagt( siehe letztes posting ).Nun kam die Frage, wie ich die Truppen von A nach B laufen lassen kann und das ganze 10 Stunden dauert und das ganze nur mit PHP ?
Das ist kein Hexenwerk. Ich will es mal an einem kleinen Beispiel erklären.
NUn müssen wir uns eine Structur überlegen, wie man sowas machen kann, denn es gibt mehrere Wege, wie wir an unser Ziel kommen.
Ich hätte volgenden vorschlag.Beispiel:
Datenbank mit 4 Felder:
Feld1: truppe_id // id der Truppe die sich bewegt
Feld2: timestamp // speichert das letzt Updatedatum
Feld3: Weg // Wieviel Meter sind es insgesmat ?
Feld4: M_pro_S // Wieviel Meter prosekunde ?Die Felder sind hoffentlich selbsterklärent.
Die werte können vielleicht vollgende sein:
Feld1: 0
Feld2: 1919515
Feld3: 100
Feld4: 0.2Zu feld 2 muss ich vielleicht was sagen. das beinhaltet die anzahl der Sekunden seit de, 1.1.1970 0.00Uhr, die bekommt man mit der PHP function: anz_sec = time();
Es ist **vorausgesetzt, dass der user die Truppe schon losgeschickt hat und die Werte wie oben berechnet wurde.
User Loggt sich ein und schaut, wie lange seine Truppe noch zum Ziel braucht. und wieviel meter sie schon zurüclgelegt habe. Das interesiert
doch auch einige User.Wir lesen das Feld "timestamp" aus und errechnen die differenz vom letzten Login: diff = akt_time() - db->timestamp;
Hier muss man sehr vorsichtig sein. Wenn es zum Beispiel eine Spiel_function gibt, welche die Zahl von Feld4 erhöt kommt die Truppe kommt schneller voran als sonst.
Also müssen wir erst schauen Ob gebäude fertiggebaut wurden ( IIIIGITTT ) und dann danach prüfen wann das gebäude fertig gebaut wurde( BÄÄÄÄÄ ). Aber
das ist auch kein Hexenwerk. Nun ich laber und laber und keiner hat wirklich plan was ich hier schwall. Ich will es an einem kleinen Beispiel verdeutlichen.:------------------------------:
Truppe wird losgeschickt, Weg = 100m, m/s = 0.2m. gebäude wird fertig gebaut, als die Truppe 50 Meter gelaufen ist. Feld4: wird um 0.2m erhöt und ist nun: 0.4m.
Jetzt läuft ja die Truppe schneller( weil vielleicht User das Gebäude "Truppe fast" fertig gebaut hat. ) und braucht ab jetzt nicht mehr 50/0.2 sekunden sondern nur 50/0.4 sekunde.
und braucht nun nicht wie am anfang berechent 10 Min sondern dann nur noch 7.5 Min und die Schlacht kann früher beginnen.
:------------------------------:Das werden woll viele wissen, wollte es nur nochmal erwähnen, dass mann auf solche sachen aufpassen muss.
Ok weiter geht es.
in diff habe ich jetzt zum Beispiel 105 stehen und gehe jetzt folgendermaßen vor.
- Ist gebäude mit function "Truppe fast" vertig ?
- Wenn ja dann berechne wann es seit dem letzten Update fertig gestellt wurde.
- meter = Feld4old_speed
- if( meter >= Feld3 )
Truppe ist fertig und kann die schlacht beginnen
aufgepasst werden, wieviel sekunden nach 100 die Truppe schon eingetroffen ist, und den aktuellen Status der schlacht ist die natürlich schon
angefangen hat. Hier muss dann der andere User geupdatet werden. aber kann mann sich ja denken. denk ich mal
- else
meter2 = meter + Feld4new_speed
if( meter2 >= Feld3 )
Hier das ganze wie oben,.- falls nicht truppe ist noch im m*****.
- berechnen von sec und zurück gelegten metern für den User
- Updaten des TimestampsSo ich hoffe ihr habe euch nicht zu tode gelangweilt und nehmt mir meine Rechtschreibfehler nicht über, welche in diesem Text bestimmt nicht selten vorgekommen sind.
Mit freundlichen Grüßen Cintix-Software, Leader
noch Cinetix-Software@gmx.de :)**
-
Deine Erklärung ist irgendwie... kompliziert.
OK, hier mal so meine Gedanken, vielleicht meinst du das gleiche/ähnlich:
Der Server arbeitet nicht im Loop, sondern nur eventbasiert. Das mit dem Timestamp ist eine gute Idee. Denn wenn der User abfragt, wo er sich gerade auf der Karte befindet, muß der Server "nur" den zurück gelegten Weg seit dem letzten Timestamp berechnen. D.h. die eigentlichen Bewegungen werden nur dann ausgeführt, wenn ein User eine Anfrage macht.
Problem ist aber, was passiert, wenn jetzt 100 User spielen und alle paar Sekunden jeder eine Anfrage macht. Hem, ist auch nicht so toll.
Evtl. wäre ein Loop auf dem Server doch nicht so schlecht, denn Berechnungen des Spielablaufs sind so oder so nötig.
Letztendlich würde ich doch fast mal sagen, das man einen intelligenten Client als JavaApplet coden sollte. Java hat heute jeder vernünftige Desktop-Computer. Außerdem spart man sich so den Traffic für die aktualisierung des Gamescreens, da das Applet zwar auch Grafik downloadet die es benötigt, aber diese Grafikresourcen wiederverwerten kann.
-
hi,
"intelligenten Client" ?
Also werd das schafft wird reich !!!!!hmm überlegen wir mal logisch:
Nach der cgi - Serverprogramm metode muss die datenbank jede Sekunde 10.0000 User Updaten. ( Ich will nicht ausrechnen, weiviel traffic das sind :p ) daszu kommt noch das lesen der User.
Sagen wir mal das sind 2.000 User von den 10.000 User die IMMER online sind. So nun nach der CGI metode werden ALLE user geUpdated.
Obwohl nur 2.0000 das brauchen.So nun nach meiner Methode werden NUR diese 2.000 User geupdatet.
Das erspart sehr viel traffic und natürlich auch kosten.Also ich würde mir das doch mal durch den koft gehen lassen. Ich würde mir überlegen was das sinnvollste ist. Ihr müsst doch auch an die arme Datenbank denken. Die würd sich auch irgentwann bewehren wenn ihr sie zur 100% auslastung zwingt und sie dann merkt:
moment warum updatet ich denn die User die seit 3 Monaten nicht mehr aktiv sind und sie es nur dann machen müsste falls er mal wieder nach 3 Monaten online geht !!!!!!UND NICHT JEDE SEKUNDEN
das nehmen datenbanken dem Programmierer sehr sehr übel !!
°_°Am ende denkt noch die Datenbank, dass sie von einem Mircrosoft-Programmierer programmiert wurde. Und das wollen wir doch nicht oder ?.
Also immer DENKEN und dann SCHREIBEN !!!!!!!!!!!!!!!!!!!!!!!!111
das ist die wichtigste Regel unter den programmierernGrüsse von der Datenbank
-
Ich weiß jetzt nicht was am Ausdruck "intelligeter Client" falsch sein soll?
Eine Applikation die rechnen und entscheidungen treffen kann, und das kann nunmal ein JavaApplet im Browser, ist intelligent. Ein Browser der nur dumm ist und deshalb nur Daten anzeigen kann (was ein HTML-Browser nunmal ist), ist nicht intelligent.
Naja, lassen wir das...
[ Dieser Beitrag wurde am 11.09.2002 um 16:57 Uhr von Artchi editiert. ]
-
Original erstellt von Artchi:
**
Eine Applikation die rechnen und entscheidungen treffen kann, und das kann nunmal ein JavaApplet im Browser ...[ Dieser Beitrag wurde am 11.09.2002 um 16:57 Uhr von [qb]Artchi** editiert. ][/QB]
LOL ? versteh ich dich jetzt richtig Ein JavaApplet kann selbstständig entscheidungen treffen ? GOIL
kannst du mir code schicken ?
mfg
-
Original erstellt von <Cinetix-Software>:
**LOL ? versteh ich dich jetzt richtig Ein JavaApplet kann selbstständig entscheidungen treffen ? GOIL
**Von "selbstständigen Entscheidungen" wurde doch garnicht gesprochen. Definiere diesen Begriff doch bitte mal.
Generell kannst du mit einem Java-Applet so ziemlich alles machen, was man mit einer Programmiersprache machen kann (...wenn man jetzt mal von einer systemnahen Programmierung absieht). Wenn du "selbstständige Entscheidungen" also irgendeinem Programm zubilligst, dann kannst du das auch mit einem Java-Applet machen.
-
hmm entweder ich verraff es und ihr ..
EGAL lassen wir das thema.
Ich will nur sagen dass es NOCH kein inteligentes programm gibt
-
Original erstellt von <Cinetix-Software>:
**
Ich will nur sagen dass es NOCH kein inteligentes programm gibt :-)**Was ist denn ein "intelligentes Programm"? Das, was ich darunter verstehe, gibt es schon massenweise. Du meinst wahrscheinlich, dass es kein intelligentes Programm gibt, weil sich doch sämtliche "Entscheidungen", die das Programm trifft, auf den Code zurückführen lassen. Das Programm ist also doof und macht nur das, was ihm gesagt wurde.
Gibt es in deinen Augen eigentlich intelligente Menschen?
-
Danke Gregor, du hast verstanden was ich meine. Und ich bin der Meinung das ich den ganz normalen Sprachgebrauch dafür verwendet habe und eigentlich jeder verstanden hat was ich meine, bis auf eine bestimmte Person.
-
Ja es gibt inteligenten Meschen.
Nein es gibt keine inteligenten Programme.GUND:
Mensch kann entscheide ( ohne if, while, .. etc )
Programm kann nicht entscheiden ( mit if, while, .. etc )
-
Original erstellt von <Cinetix-Software>:
**
Mensch kann entscheide ( ohne if, while, .. etc )
**Aha! Woher weißt du das? Begründe das mal. Mit was trifft denn der Mensch Entscheidungen? Mit dem Verstand? Was ist denn das?
-
hi,
MIT DEM WAS ER DAS LEBEN über gelernt hat.
Mir ist aber bereits klar, dass du davon nichts hast.
Computer können auf mehr oder weniger art das gleich.
Jedoch ist das wieder ein anderes Thema. Der Computer müsste erstmal lernen um entscheidungen zu treffen. Das wurde an einem Projekt an der Mannheimer Uni bewiesen. Ein LKW wurde von einem Computer gefahren, von A nach B, inc verkehrszeichen.
Aber der Rechner durfte erst das fahren lernen.Und ich glaube nicht, dass du weißt, wie du einem Programm das lernen beibringst. !!!!!!!!!1
Also tuh nicht so inteligent
-
Original erstellt von <Cinetix-Software>:
**
Also tuh nicht so inteligent **Ich bitte dich! Ich habe nur Fragen gestellt. ...interessant, dass man dich damit aus der Fassung bringen kann.
...und ich sage dir jetzt auch mal, warum ich nachfrage :
Ich habe mich vor einiger Zeit etwas mit Neuroinformatik beschäftigt. Genauer gesagt habe ich mich mit Bereichen der visuellen Wahrnehmung beschäftigt. Wenn du dir anguckst, wie das im Gehirn funktioniert, dann wirst du feststellen, dass man die einzelnen Bereiche des Gehirns durch Modelle nachbilden kann. So, dass gleicher Input gleichen Output erzeugt. Diese Modelle beinhalten Algorithmen, die man implementieren kann. Man kann so etwas also auf einen Computer projezieren.
Warum sollte das nicht mit anderen Bereichen des Gehirns ähnlich sein? ...und man lernt doch mit dem Gehirn. Oder siehst du das anders?
Wenn man aber alles, was das Gehirn kann auch im Computer implementieren kann, dann kann das Gehirn nichts, was der Computer nicht kann. Also entweder gibt es keine "intelligenten" Menschen, oder ein Computer kann "intelligent" sein.
Ich habe jetzt mal wieder eine neue Frage : Was verstehst du eigentlich unter "Lernen"? Ich programmiere gerade an einem Programm, das der Digitalisierung von eingescannten Diagrammen dient. Dieses Programm "lernt" z.B. selbstständig, wie genau es den Drehwinkel zum Geradedrehen des Bildes bestimmen muss. Dieses Programm "lernt" z.B. selbstständig, an welchen Stellen es das Diagramm gerade zerren muss und wie stark es zerren muss. Für all dies braucht man natürlich nicht auf Dinge zurückgreifen, die dem menschlichen Hirn ähneln.
Was macht also das "Lernen" von Computerprogrammen aus? Neuronale Netze, bei denen man dann "Back-propagation-learning" anwendet? "Kohonen feature maps"?
Mir kommt es so vor, als ob du einfach sagst : "Computer -> dumm, Mensch -> intelligent, Gregor -> dumm :D" ohne, dass du dir darüber überhaupt Gedanken machst bzw. ohne dass du überhaupt ansatzweise Grundlagen in der Richtung kennst. ...also so eine Art Vorurteil halt.
PS : Ich gebe natürlich zu, dass ich die Grundlagen auch nicht wirklich kenne, bzw. nur ganz kleine Bereiche.
[ Dieser Beitrag wurde am 12.09.2002 um 19:19 Uhr von Gregor editiert. ]
-
hi,
Sorry, dass ich außer rand und band bekommen bin aber ich mag es nicht, wenn leute sich groß aufspielen.Und nun zum Thema. Du hast da ein Interesantes Thema angesprochen.
Und ich habe mich mit Gehirnströmen viel beschäftig, also habe 3 Bücher mit je 1000 Seiten gelesen.orginal erstellt von Gregor
"Ich habe jetzt mal wieder eine neue Frage : Was verstehst du eigentlich unter "Lernen"? Ich programmiere gerade an einem Programm, das der Digitalisierung von eingescannten Diagrammen dient. Dieses Programm "lernt" z.B. selbstständig, wie genau es den Drehwinkel zum Geradedrehen des Bildes bestimmen muss. Dieses Programm "lernt" z.B. selbstständig, an welchen Stellen es das Diagramm gerade zerren muss und wie stark es zerren muss. Für all dies braucht man natürlich nicht auf Dinge zurückgreifen, die dem menschlichen Hirn ähneln."Nun jetzt ist die Frage ist das "Lernen" ich sage NEIN !!
Es gibt keine selbstständige Handlungen. Dein Programm berrechtnet alles.So nun was ist "lernen" ?
Kann mann diese Frage überhaupt beantworten ?Wissenschaftler haben bewießen, dass Meschen im alter von 1-6 Jahren mehr lernen als Meschen im alter von 6 bis 20.
Ein Mensch handelt und schaut
-> War das FALSCH ?
-> War das RICHTIG ?
Er beantwortet das zb. wenn er etwas herrunterschmeißt und Ärger bekommt, dann war seine HANDLung FALSCH und so Speichert das Gehirt so zusagen das "Erlebniss" und weiß das nächstemal, darf ich das nochmal tuthen oder nicht um keinen Ärger zu bekomenn.
Es gibt viele Gehirnströme in einem Menschen, welche diese Erlebniss verarbeiten.Mit dem Computer hat man änliches entdeckt.
Zuerst braucht man viel Speicher( sehr viel Speicher ) viele viele 100 GB.
Nun stell dir mal ein schachspiel vor. Ein erfahrener Schachspieler hat im seiner Schachspieler-Laufbahn gelernt. War der Zug richtig oder nicht.
Den Computer kann man deshalnt auch "lernen" lassen, indem er viele Schachspiele Spiel und dann das Gesmmte Spiel auswertet( es gibt solche Bewertungs algos ) und Speichert dies dann. Das selbe passiert dann im nächsten Spiel. Nun nach vielen Spielen hat der PC gelernt, was er damals richtig gemacht hat und was falsch und kann somit den besten Zug "berechnen".Also dies is meine Stellung dazu.
-> Es gab natürlich so ein versuch und er hat wie der AUTO versuch geklappt.grüsse
-
Original erstellt von <Cinetix-Software>:
**
...aber ich mag es nicht, wenn leute sich groß aufspielen.
**Tja! Ich auch nicht! Sorry!
Nun jetzt ist die Frage ist das "Lernen" ich sage NEIN !!
Es gibt keine selbstständige Handlungen. Dein Programm berrechtnet alles.OK! Du hast natürlich Recht. Mein Programm lernt da garnichts.
Zuerst braucht man viel Speicher( sehr viel Speicher ) viele viele 100 GB.
...aber das würde mich mal interessieren. Wofür brauchst du diesen riesigen Speicher? Das hört sich so nach ner Datenbank an. Ich denke nicht, dass man sowas zum Lernen braucht. Aber wahrscheinlich hast du das ja auch anders gemeint.
Ach ja : Kannst du mir die 3 Bücher mal nennen? Ich habe daran Interesse.
[ Dieser Beitrag wurde am 13.09.2002 um 03:21 Uhr von Gregor editiert. ]