Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Indiana

Frischling

  • »Indiana« ist der Autor dieses Themas

Beiträge: 7

Wohnort: München

  • Private Nachricht senden

1

20.10.2016, 07:33

Spacelimits - Weltraum-MMO-Arcade im Browser

Hi all,

Ich Programmiere für mein Leben gerne und interessiere mich immer für neue Technologien. So kam es das ich kürzlich auf WebSockets und Node.js gestoßen bin. Und wie lernt man am besten was neues? Richtig, man benutzt es gleich. Da ich Beruflich sehr Spezialisiert bin (man könnte auch fixiert sagen) habe ich mir ein schönes Hobby-Projekt ausgedacht. Idee ist bestimmt nichts neues, gebe auch zu nicht geschaut zu haben ob es so etwas schon gibt.

Das Spiel
Jeder Spieler Steuer ein Raumschiff aus der Top-Down 2D-Perspektive. Es ist keine Anmeldung erforderlich, einfach Raumschiffsname vergeben und los fliegen. Momentan haben noch alle Spieler exakt die selben Bedingungen, eventuell wird es in Zukunft verschiedene Raumschiffe mit unterschiedlichen Eigenschaften geben.

Die Technik
Das ganze basiert wie schon erwähnt auf node.js und läuft komplett mittels HTML5 im Browser. Solange nur ein Spieler verbunden ist kreisen ein paar Dummy-Raumschiffe zum Üben. Getestet im Firefox, Chrome und Safari. Ich habe auch Touch-Steuerung eingebaut aber die ist doch sehr ungenau (Finger #1 legt die richtung Fest, Finger #2 feuert).

Und hier ist es
Spacelimits

Die Zukunft
Der Profi wird sofort erkennen das die Grafiken noch nicht das wahre sind. Alles was besser wie Paint aussieht ist aus dem Open Source PSP-Spiel 8bit battle ausgeliehen. Ich bin daher auf der Suche nach einem Grafiker der Lust hat sich hier zu verewigen. Mehr als eine Referenz für Bewerbungen wird das Spiel aber nicht werden.

C'ya
Indiana

Superwayne

Treue Seele

Beiträge: 242

Beruf: Student & App Entwickler (Xamarin)

  • Private Nachricht senden

2

20.10.2016, 09:55

Bin einmal ein bisschen herum geflogen und habe es mir angeschaut. Vermutlich habe ich sogar gegen echte Gegner gespielt, es sei denn deine bots heißen "drfdls" oder "Test" :D
Die Steuerrung war anfangs sehr gewöhnungsbedürftig und ich habe es auch nach 32 Treffern gegen den gleichen Gegner nicht geschafft, diesen zu zerstören (hat sehr lange gedauert und man konnte sich bei der Munitionssuche immer wieder heilen). War aber trotzdem schon mit wenigen Spieler sehr lustig.

Ich weiß nicht, ob du das Spiel noch viel weiter entwickeln willst, oder ob es nur ein Testprojekt war. Eine Mechanik, die dich über Zeit stärker werden lässt wäre m.M.n. interessant. Zum Beispiel könnte man neben Munition Upgrades (temporär oder bis zum nächsten Tod) einsammeln, so dass man andere Spieler schneller abschießen kann. Vom Prinzip müssten neue Spieler dann erst einmal überleben und besser werden, bevor sie anderen gefährlich werden. Ein wenig wie z.B. bei Agar.io, wo man auch klein anfängt und dann nach und nach stärker (größer) wird. Allerdings sollte es dabei immer eine Möglichkeit geben, dass auch der stärkste Spieler noch besiegt werden kann. Zum Beispiel Asteroide, die bei Kollision das Raumschiff schädigen. Andere Spieler könnten die Asteroide durch schießen in eine Richtung beschleunigen.

Ab und zu gab es mal Ruckler (alle 1-2 Minuten?), wo dann 3-5 Sekunden alles hing und danach war das Raumschiff plötzlich weitergeflogen. Sieht so aus, als ob auf dem Server die letzte Eingabe weiter berechnet wurde, die Verbindung jedoch Aussetzer hatte? Ich kann nicht sagen, ob das an meiner Verbindung oder am Server lag.

Indiana

Frischling

  • »Indiana« ist der Autor dieses Themas

Beiträge: 7

Wohnort: München

  • Private Nachricht senden

3

20.10.2016, 10:48

Hi,

Der Server, auf dem das aktuell läuft, ist nicht exklusiv. Es kann sehr gut sein das der Aussetzer durch eine andere App verursacht wurde.

Die Weiterentwicklung mache ich davon Abhängig ob sich ein Grafiker finden lässt, denn ohne ansprechender Grafik wird das kaum einer Spielen. Klar könnte ich auch wie diep.io einfach nur Geometrische Formen verwenden.

Da alles recht offen Programmiert ist wäre es kein Problem neue Powerup's hinzuzufügen, gibt schon eine Eigenschaft Typ am Powerup Objekt ;) Ich habe auch schon überlegt ob die Medikit's nach einer Zeit wieder verschwinden sollten denn es liegen doch einige rum. Neben der Idee mit dem Aufleveln durch Kampf könnte man es auch in eine Trader-Game umwandeln indem man auf Planeten "landen" könnte um zu Handeln.


Auf jeden Fall danke für das Feedback, Ideen sind notiert. Und an alle anderen, ich freue mich über jeden Vorschlag und auch über Kritik.

Goldwing Studios

Treue Seele

Beiträge: 359

Wohnort: Heidelberg

Beruf: Softwareentwickler, Vertriebler

  • Private Nachricht senden

4

20.10.2016, 11:52

öhm, warum so eine komische IP-Adresse, auf die deine Domain verweist?

warum kein :80 oder :8080

Indiana

Frischling

  • »Indiana« ist der Autor dieses Themas

Beiträge: 7

Wohnort: München

  • Private Nachricht senden

5

20.10.2016, 12:03

Port 80 ist durch Apache belegt und braucht root. Und ob Port 8080 oder 3000 macht doch keinen unterschied, oder?
Die IP hat halt mein Server vom Hoster so bekommen, theoretisch würde auch http://spacelimits.de:3000/ gehen.
Ich muss aber zugeben das ich mir darüber noch keine Gedanken gemacht habe.
Final wird es vermutlich direkt unter der Domain auf einer eigenen Kiste laufen.

Jav

Frischling

  • Private Nachricht senden

6

20.10.2016, 12:24

Wäre es ein grosses Problem, Feuern auf Linke Maustaste zu legen? Wäre mir als Rechtshänder mit WASD am liebsten.

Indiana

Frischling

  • »Indiana« ist der Autor dieses Themas

Beiträge: 7

Wohnort: München

  • Private Nachricht senden

7

20.10.2016, 13:09

@Jav Das is easy, schon drin. Einfach neben einen EventListener für 'keydown' noch einen für 'mousedown' eingefügt :)

Jav

Frischling

  • Private Nachricht senden

8

20.10.2016, 15:21

Das ging ja flott :) Danke!

Goldwing Studios

Treue Seele

Beiträge: 359

Wohnort: Heidelberg

Beruf: Softwareentwickler, Vertriebler

  • Private Nachricht senden

9

20.10.2016, 16:20

öhm, durch diesen Port kommt es dazu, dass es in Firmennetzen häufig gesperrt wird. Wie in meinem Fall.

Was spricht dagegen einfach 8080 zu nehmen? Ist solche Zwecke etabliert und sehr seltenst geblockt.

Just sayin'.

10

20.10.2016, 16:33

öhm, durch diesen Port kommt es dazu, dass es in Firmennetzen häufig gesperrt wird. Wie in meinem Fall.



Dafap?
Wer beachtet, die Firmennutzung bei der Kreation eines Spiels? Auf der Arbeit sollst Du nicht spielen ;)
Und zuhause blockieren die wenigsten Ports, und selbst wenn hast Du die Kontrolle darüber.
Es ist durchaus üblich spezielle Ports zu nehmen, weil eben andere, ja auch 8080, oft für andere Dinge benutzt werden.
Halte Dich doch nicht an so einem kleinem Topic auf :)

Werbeanzeige