Realspace
Übersicht Sonstiges Projekte
Silver_KneeBetreff: Realspace |
Fr, Apr 10, 2015 1:50 Antworten mit Zitat |
|
---|---|---|
Realspace - Alpha 09.04.2015
Realspace ist ein MMO-Space-Shooter: Man fliegt mit Raumschiffen umher, sammelt herumfliegendes Zeug ein, treibt Handel, rüstet sein Schiff auf, geht auf Mitspieler los und baut schließlich eine immer größer werdende Flotte auf. Ob man dabei lieber friedliche Wege geht, selbst eine Handelsinfrastruktur aufbaut und Waffen nur zur Verteidigung nutzt oder eher auf Konfrontation mit seinen Mitspielern aus ist, ist einem weitestgehend selbst überlassen. Ich berichte seit 2007 über das ständige Auf und Ab bei dem Projekt, doch heute sind wir an einen Punkt gekommen, bei dem wir etwas vorzeigen können:
Die Steuerung ..ist nicht ganz so intuitiv und wir sind durchaus für Ideen dankbar. W, A, S, D - Vor, Links, Rückwärts, Rechts Links-SHIFT, Links-STRG - Hoch, Runter Mausrad: Trägheitsdämpfer Zitat: Links oben steht der Gang des Trägheitsdämpfers: 0 ist eher zum Rangieren gedacht, bei 3 ist der Trägheitsdämpfer abgeschaltet und man bewegt sich schwerelos.
Zum Bremsen in den 0. Gang schalten und gegen die Flugrichtung beschleunigen. Wer dringend weg muss, ist im 3. Gang gut beraten. Einsammeln von einzelnen Erzbrocken ist im 2. Gang schon ziemlisch schwierig; da sollte man besser niedrigere Gänge wählen, da man sonst einfach daneben fliegt. Linksklick: Schuss Mausbewegung: Linksherum, Rechtsherum, Aufwärts, Abwärts drehen Q, E - Gegen den bzw. mit dem Uhrzeigersinn drehen F - Suchmodus: Frei fliegendes Zeug wird grün markiert, Schiffe rot, Schüsse gelb, ein Pfeil über dem Schiff zeigt auf die Mitte des Sektors (Schwerkraftzentrum) L - Ansicht wechseln: Cockpit <-> Außenansicht LEERTASTE - Ansicht einfrieren (Beim Navigieren auf den Fenstern stört es schon, wenn das Raumschiff dabei frei dreht) Fenster: B - Inventar M - Schiffliste P - Sektorwechsel Die erste Mission Natürlich kannst du machen, was du willst, aber mit deinem ersten Raumschiff ohne Waffen und ohne Geld herumzufliegen ist doch eher langweilig. Daher würde ich folgendes Vorschlagen:
Download (7,8 MB) Mehr Screenshots am Ende des Worklog Posts... Alpha-Zeug
Viel Spaß und wenn ihr Bugs bemerkt, gerne hier rein oder ins Worklog. Silver_Knee (Code) und Evolver (Modelle/Grafiken) |
||
HolzchopfMeisterpacker |
Fr, Apr 10, 2015 21:14 Antworten mit Zitat |
|
---|---|---|
Bei mir stürzt das Spiel immer wieder ab. In unregelmässigen Abständen. Gerade eben stürzte es ab, als ich das Schiff wählen wollte | ||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Silver_Knee |
Sa, Apr 11, 2015 9:33 Antworten mit Zitat |
|
---|---|---|
Wie stürzt es ab? Kommt ein EXCEPTION_ACCESS_VIOLATION, Connection Lost, bleibt das Spiel hängen oder was ganz anderes?
Der Server scheint auch Probleme zu haben. Evo musste ihn wohl auch zwischendurch neu starten. Dabei kann es zum Einfrieren oder Connection Lost gekommen sein. Ich probier selbst noch mal die Mission mit dem zip durchzuspielen. Wie war sonst dein Eindruck? Oder kamst du nie so weit, irgendetwas zu machen? |
||
HolzchopfMeisterpacker |
Sa, Apr 11, 2015 10:34 Antworten mit Zitat |
|
---|---|---|
Das Spiel blieb einfach hängen.
Ich kam nie besonders weit, deshalb gibt's nicht besonders viele Eindrücke Die Steuerung ist nicht 100% mein Ding. Aber fast. Mich hat eigentlich nicht viel gestört. Wäre aber schön, wenn man sie selber einstellen könnte; ich fänd's angenehmer, wenn Rollen auf A / D wäre. Und wenn beim auftauchen eines Fensters automatisch die Steuerung eingefroren wird. Planst du, ein Tutorial einzubauen? Also eines, wo auf dem Bildschirm eingeblendet wird, was zu tun ist? |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Mathias-Kwiatkowski |
Sa, Apr 11, 2015 21:11 Antworten mit Zitat |
|
---|---|---|
benutzt ihr MT auf dem server?
verändert ihr daten worauf das main TH zugreifen will? weil sonst würde der server nich abschmirren (ich mute immer das enemy bevor ich es verändere... dies mach ich bei meiner V2 bei meiner V1 gabs mutex lücken darum auch instabiel... ) hinzu kommt via millisecs ermitteln... ist das programm zu lang an so bekommste eine überdimensionale zahl. (logisch) heisst ein auto cut des server einbauen z.b. server bleibt für 24 std an. dann öffnet er ne bat datei und beendet in der bat datei habe ich ein timer von 10 sek drin, danach wird mein server erneut hochgefahren. und alles funtzt.... wieviele dinge es gibt die zu beachten sind beim server ... ist mir auch erst mit den jahren aufgefallen.... aber derzeit bin ich froh ne stabel version zu haben. mfg |
||
Skype: Anarchie1984
http://projektworks.de/maxbase/ Icq - Erneuert am 21.08.2017 Yahoo - Erneuert am 21.08.2017 |
EvolverBetreff: Zu wenig Arbeitsspeicher |
So, Apr 12, 2015 11:57 Antworten mit Zitat |
|
---|---|---|
halli hallo,
ich habe mal den RAM-fresser nun für den Alpha-test ausgeschaltet! hoffe es läuft nun etwas besser! LG |
||
Space Threat-Ex-Entwickler, codename:RealSpace-Entwickler |
Silver_Knee |
So, Apr 12, 2015 14:56 Antworten mit Zitat |
|
---|---|---|
@Holzchopf
Das einfach hängen bleiben lag an dem etwas instabilen Server und daran, dass der Client auch Singlethreaded ist. Bleibt dann socket.Write hängen, weil die Verbindung auf der Hälfte der Bytes stehen bleibt, dann hängt das ganze Spiel. Das Auslagern der Netzwerk-Sachen in einen eigenen Thread, der dann hängen bleiben kann, hab ich mir schon vorgenommen. Die Tasten sollen natürlich in Zukunft anpassbar sein. Ein Optionsmenü ist ja noch nicht drin. Das kommt aber sicher. Tutorial stelle ich mir im Moment in ein Missionssystem eingebettet vor: Es gibt Missionen, wie Errungenschaften, wo steht, sammle 5000 Erz, kauf dir eine Knarre für den Schiff, Löse einen Kopfgeld-Auftrag, kauf dir eine Werft, baue eine Station... Belohnung für die Missionen kann man vielleicht mit der Monetarisierung verbinden. So.. man kann das ansonsten nur mit Echtgeld zu kaufende irgendwas auch durch das Lösen von Missionen erreichen. Das kann dann vor Pay-To-Win abhalten, weil quasi alles für alle erreichbar ist, nur zahlende User schneller vorran kommen. Und Kaufreitz besteht dann vor allem für treue, langfristige Spieler, denen die Missionen ausgehen und die eventuell, weil sie schon so lange spielen auch überhaupt Lust haben was zu bezahlen... Die einfachsten Missionen können dann quasi ein Tutorial bilden, dass fließend in das Hauptspiel über geht. Sowas finde ich persönlich viel besser als ein "Sandkasten". Das Start-Schiff ist sehr klein und schwer zu treffen, daher gibt es kaum Gefahren für einen Neuen. Schiffe, die einen Shop haben, wie die Station bei der Erde haben ein offenes Schild und in dem Schild ist eine schussfreie Zone. Da ist man also schon im Hauptspiel und hat trotzdem nicht zu fürchten, direkt einen Spawnkill zu bekommen. Die Sammel-Missionen am Anfang, lassen einen mit der Steuerung üben und man hat auch einen Grund in der Spielewelt, warum man sie macht: Man ist Pleite und so kommt man ohne Waffen an Geld. Viel zu verlieren hat man am Anfang auch nicht, nur die Ladung auf seinem Schiff und die Zeit die man investiert hat. Geht das Schiff kaputt kriegt man halt ein Neues - ärgerlich aber keine allzu große Sache. In z.B. Portal ist das super gemacht. Die 19 Testkammern als Tutorial gehen fließend in das eigentliche Spiel über. Stirbt man, landet man am Anfang der Kammer - kein großer Verlust. Da verliert man praktisch nur die Zeit. Das hat mir echt Spaß gemacht und die Grundidee dieser Herangehensweise würde ich gerne übernehmen. Die Kopfgeld-Missionen sind quasi Missionen von Usern, die z.B. ein Schiff platt machen wollen und sich da viel Beute erhoffen oder einfach ihre persönliche Meinungsverschiedenheit mit anderen Usern haben. Wahrscheinlich brauch man auch noch so etwas Clans/Gilden/Allianzen/Gruppen die ganz offizielle Diplomatie untereinander haben. Die können dann auch Kopfgeld aussetzen und damit quasi unbeteiligte in ihren Krieg locken, was bestimmt geil wird Das mit den Fenstern und der Steuerung ist 'ne gute Idee @Mathias-Kwiatkowski Server und Client sind Singlethreaded. Die Service-orientierte Architetktur würde es echt einfach machen, wenn es in bmax sowas wie synchronized wie in Java geben würde. Leider tut es das nicht und das bedeutet viel Schreibarbeit an jede Methode einmal LockMutex und UnlockMutex zu schreiben oder ich mache es gefährlicher und beauftrage quasi die aufrufende Methode den Mutex zu locken. Das ist dann richtig übel wenn man es irgendwo vergisst und da kein Try-Finally auch wenn man irgendwo was schmeißt. Außerdem weiß ich nicht wie viele Mutexe man so haben darf vom Betriebsystem her. Warscheinlich wäre ein Mutexpool sinnvoll aus dem man sich bedient... etwa BlitzMax: [AUSKLAPPEN] Global map:TMap = New TMap Das Problem mit Millisecs ist übrigens bekannt und wurde von BladeRunner hier behandelt. Ich habe (hoffe ich) an allen Stellen die Bitmaske wie empfohlen gesetzt. Dabei geht es übrigens nicht um die Laufzeit deines Programms sondern der Maschine auf der du bist. Die ist irgendwann länger als 2^31-1 Millisekunden an und dann bekommst du ein Problem. |
||
HolzchopfMeisterpacker |
So, Apr 12, 2015 15:44 Antworten mit Zitat |
|
---|---|---|
Ich hab's jetzt noch ein paar Mal versucht. Immer kurz nach dem Sektorwechsel bleibt das Spiel hängen. Werden da so viele Daten übertragen? Passiert das nur bei mir oder kommen andere auch nicht weiter? Dass eine BMax-Applikation bei socket.Write einfrieren kann, habe ich noch nie beobachtet. Fairerweise muss ich aber dazu noch sagen, dass ich immer nur mit Webservern kommuniziert habe, bei denen sowohl Anbindung und Software ziemlich sicher gut sind. | ||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Evolver |
So, Apr 12, 2015 16:05 Antworten mit Zitat |
|
---|---|---|
Holzchopf hat Folgendes geschrieben: Ich hab's jetzt noch ein paar Mal versucht. Immer kurz nach dem Sektorwechsel bleibt das Spiel hängen. Werden da so viele Daten übertragen? Passiert das nur bei mir oder kommen andere auch nicht weiter? Dass eine BMax-Applikation bei socket.Write einfrieren kann, habe ich noch nie beobachtet. Fairerweise muss ich aber dazu noch sagen, dass ich immer nur mit Webservern kommuniziert habe, bei denen sowohl Anbindung und Software ziemlich sicher gut sind.
bei mir meldet der Client auch immer (keine Rückmeldung), wenn mehrere spieler (reicht schon ein weiterer) online sind und irgendeiner ein Sektor Change macht... ist also "normal".. man muss nur warten... LANGE warten! dann fängt er sich irwann wieder |
||
Space Threat-Ex-Entwickler, codename:RealSpace-Entwickler |
Matthias |
So, Apr 12, 2015 16:10 Antworten mit Zitat |
|
---|---|---|
@Holzchopf
Nein du bist nicht der einzigste. Bei mir stürzt das Spiel auch hin und wieder ab. Aber ich versuche es jeden Tag erneut, und hoffe das sich was verbessert. Wie kann mann Ballern. Ich will doch nur ein paar Asteroiden kaputt schießen. Eine kleine Waffe zu Anfang würde den kleinen Fighter gut tun. Mit den ganzen Sektoren find ich zu Anfang etwas verwirrend. Eine Idee wäre für Geld durch den Verkauf von Erz Eintrittskarten für neue Sektoren zu erwerben. |
||
Übersicht Sonstiges Projekte
Powered by phpBB © 2001 - 2006, phpBB Group