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

1

27.10.2019, 11:34

Projektvorstellung: Spiel CosmicConflict Excel/VBA

• Projektname
CC - Cosmic Conflict (Arbeitstitel)

• Das Projekt
Man nehme eines der vielen klassischen RPGs und ersetze die Protagonisten (i.d.R. Magier, Bogenschützen, Schwertkämpfer usw.) durch Raumschiffe. Die Spieler kommandieren ihre Schiffe zusammen durch moderierte Kampagnen oder einzelne Szenarien.
- Rundenbasiertes 2D-„Brettspiel“.
- Sehr komplex, viele Möglichkeiten
- Taktisch anspruchsvolle Gefechte
- Ausgeklügeltes System für Sichtbarkeit (Katz und Maus im All)
- Newtonsche Physik
Nun kommt etwas Ungewöhnliches: Das Spiel ist in Excel/VBA geschrieben. Mehr dazu in der Entstehungsgeschichte

• Wer bin ich?

Ich bin Timo, 31 Jahre alt und wohne etwas nördlich von Hamburg. Von VBA abgesehen habe ich ehrlich gesagt, nur sehr wenig Erfahrung mit Programmierung. Ich fuchse mich grad in Java ein, stehe grundsätzlich aber eher am Anfang.


• Was habe ich bereits?

Hier ein paar Eindrücke:


(Link)


In einem Baukasten kann man sich ein Schiff zusammenbasteln. Viele, viele verschiedene Bauteile werden in einem Rumpf untergebracht. Das Layout ist links zu sehen. Schäden aus Gefechten werden in schwarz angezeigt.
Über dieses Interface werden die Schiffe dann gesteuert. Drehung, Schub, Schildmanagement, Feuergefecht, Energiemanagement usw.


(Link)


Hier ein kleines Beispiel eines Kartenausschnitts. Sehr unspektakulär, ich weiß. Es ist und bleibt nun mal Excel :D
Jedes Objekt, sei es ein Schiff, eine Raketensalve, eine Jägerstaffel, hat eine ID. Diese wird auf der Karte abgebildet. Die ID mit Strichen links und rechts ist der Marker, wo das Objekt nächste Runde sein wird. Hindernisse, in diesem Fall Asteroiden, werden farbig dargestellt.
Die Spieler und der Spielleiter haben jeweils eine eigene Karte, auf der nur das erscheint, was ihre Sensoren auch erfassen. Dies ist von vielen Faktoren abhängig und es kann durchaus sein, dass man selbst nichts außer gähnender Leere sieht, man aber leuchtet wie ein Weihnachtsbaum. Passive und aktive Ortung sind hier die Stichworte. Das System funktioniert sehr und macht das Ganze sehr spannend.
Hat man seinen Gegner gefunden, wählt man in einer Liste die Waffen aus, welche feuern sollen und VBA lässt dann am Modell des Ziel-Schiffs Schadensanzeigen aufploppen. Die Trefferberechnung basiert auf einer Normalverteilung. Es wird quasi eine gaußsche Kurve über das Schiff gelegt und anhand dessen wird berechnet, ob und wo getroffen wird.
Dann spielen Faktoren wie Schilde/Panzerung, relative Geschwindigkeit, Entfernung usw. eine Rolle. Will hier auch nicht all zu sehr ins Detail gehen.

Kurz zum Ablauf:
Jeder Spieler steuert sein eigenes Schiff. Der Spielleiter moderiert die Kampagne und steuert alle übrigen Objekte.
Die Spieler sollen vorausplanen, denn Munition, Treibstoff und Ersatzteile sind begrenzt. Sie sollen sich überlegen, ob es grad sinnig ist, sich kopfüber in ein Gefecht mit unbekannten Gegnern zu stürzen oder ob man lieber die Füße still hält und erst mal Daten sammelt.
Im Verlauf der Kampagne können sie ihre Schiffe aufwerden, ihre Offiziere bekommen bessere Boni usw.

Leider geht aus den paar Eindrücken nicht hervor, wie viel Arbeit eigentlich hier schon hineingeflossen ist und was bereits alles möglich ist. Würde ich hier auf alle Aspekte und Möglichkeiten eingehen und jeden Punkt erklären, wäre nächste Woche noch keiner mit Lesen fertig. Wenn ihr aber mehr zu etwas Bestimmtem wissen wollt, erläutere ich das gern im Detail.

Hier die Geschichte zur Entstehung:
Um und bei 2012 entstand ein mehr oder minder simples Brettspiel. Die Spieler bastelten sich aus einem kleinen Baukasten ein Schiff zusammen und stürzten sich auf einem Papp-Spielbrett ins Gefecht gegeneinander.
Wie das immer so ist, Ideen kamen dazu, das Spiel wuchs und wurde immer komplexer.
Irgendwann war es zu einer Monstrosität mutiert… Das Spielbrett war eine 1x2m Stahlblechplatte, die an der Wand hing, die Spielfiguren mit Magneten versehen.
Jeder bewegte diverse Figuren und Marker auf der Karte hin und her, eine Runde dauerte 10-20 Minuten. Keiner wusste mehr, welche Marker schon bewegt wurden und welche nicht, was wessen war und welcher Wochentag überhaupt war. Die Würfel mussten aufgrund komplexer Berechnungen längst Excel-Tabellen weichen und auch das Schiffslayout mit Schadensanzeige war in Excel gewandert.
Irgendwann war klar, so hätte das Ganze keinen Sinn mehr. Also beschloss ich, komplett in Excel umzuziehen, dann könne man halt alles per Beamer an die Wand werfen.
Excel stoß sehr schnell an seine Grenzen und so habe ich mich dran gemacht, VBA zu lernen.
Mit VBA wurde dann vieles einfacher und einiges wurde dadurch erst möglich. Irgendwann war ich an dem Punkt, wo ich einsehen musste, dass es sehr umständlich wird, dies mit mehreren Spielern zu spielen. Es bedeutete nämlich, dass alle an einem Rechner sitzen, jeder der Reihe nach seine Eingaben macht und man dann die Runde beendete.
Shared Workbooks waren nicht möglich, da erstens die Änderungen nicht direkt angezeigt wurden und zwotens die Makros nicht funktionierten.
Dank des neuen Office 365 ist das Problem komplett gelöst. Nun kann jeder entspannt auf dieselbe Datei in der Cloud zugreifen, alles wird direkt aktualisiert und Makros laufen auch. Hurra!


• Mitgliedersuche
Ich suche auf diesem Wege Leute, die von diesem Spielkonzept genauso begeistert sind wie ich und Lust haben, hier mitzuwirken. Ich mag Excel super gern und finde es ulkig, ein so komplexes Spiel darin zu gestalten.
Vielleicht gibt es hier ja ein paar Verrückte, die das ähnlich sehen

Ich denke, eines sollte hier schon klar sein. Mit einem Spiel in Excel lässt sich kein Geld verdienen und das ist auch überhaupt nicht das Ziel.
Ich habe Spaß an der Arbeit daran und möchte Spaß am Spiel selbst haben und hoffe, dass es bald so weit ist, dass auch andere Spaß daran haben. Es ist also ein Hobbyprojekt und das wird es auch bleiben.

Also was wird gebraucht? :

Eigentlich nur Kenntnisse in Excel/VBA und Bock auf das Spiel…
Mehrere Köpfe sind immer schlauer als einer und ich arbeite einfach lieber im Team als allein.
Es gibt noch viel zu tun, sowohl bei der Implementierung neuer Features als auch bei der Optimierung.
Ein paar konkrete Punkte auf der Liste:

- Die Trefferberechnung ist noch nicht vollständig und der Code könnte wohl schlanker sein
- Das Altern von Komponenten und der Einfluss auf dessen Performance
- Darstellung der Objekte auf der Karte durch Bilder mit der richtigen Orientierung
- Abschirmen von Sensoren durch Asteroiden o.Ä.
- Das Interface soll etwas ansprechender werden
- Ein simpler Autopilot
- Erkennung von Schäden in Komponenten

Was auch gebraucht wird, sind die Kampagnen selbst. Ich bin ehrlichgesagt super schlecht darin, mir Charaktere, Fraktionen, Geschichten und sowas im Detail auszudenken. Vielleicht findet sich da ja jemand, der das gut kann und das gerne macht.

• Material
Öhm ja, siehe „• Was habe ich bereits?“

• Kontakt
Mail: timocc@gmx.de

Schreibt mir einfach eine Mail. Ggf. kann man sich auch auf’m TS-Server treffen und klönen.
Egal, ob ihr Lust habt, bei dem Projekt mitzuwirken oder einfach mehr über das Spiel erfahren wollt.

Dieser Beitrag wurde bereits 10 mal editiert, zuletzt von »Dogomil« (27.10.2019, 18:38)


2

27.10.2019, 18:05

Manche Forensysteme sind so eingestellt, dass sie kein eingebettetes HTML erlauben und Beiträge an der Stelle abschneiden. Ggf. kommt bei dir im Beitrag eine < vor?

Zitat von »Optimus Prime, 42 v. Chr.«

Bekämpft Sarkasmus mit Sarkasmus!

3

27.10.2019, 18:49

Scheinbar war ein ":)" der Übeltäter, der dafür gesorgt hat, dass danach einfach abgeschnitten wurde.

Werbeanzeige