Änderungen

Wechseln zu: Navigation, Suche

Pneumatic Man

4.661 Bytes entfernt, 19:49, 9. Okt. 2017
K
keine Bearbeitungszusammenfassung
Dies hier '''Pneumatic Man''' ist ein vorläufiges Quasi "Jump´n Drill" mit Höhlensetting im Sci- Anforderungsdokument (sowohl Was als auch Wie)Fi-Design, das vorerst nur für angemeldete Nutzer sichtbar sein soll und später in den PneumaticMan Artikel umgebaut werden kannwelches während der [[GameDevWeek]] im [[Wintersemester]] 2014/2015 von der Java Gruppe entwickelt wurde. Es kann von den GDW - Teilnehmern ergänzt werden, auf BedarfAls Framework wurde [[libGDX]] verwendet.
[[Datei:LevelPneumaticMan.jpg|400px|thumb|right|ScreenShot]]== Download & Quellcode ==
=Spielidee=* Zum Spielen wird [http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html Java 8] benötigt.* [https://cloud.fsi.hochschule-trier.de/index.php/s/GnY43IJl5tWLLP8 Spiel Download]* [https://github.com/GameDevWeek/GDW-2014-WS Quellcode]
Das Spiel "== Spielidee ==[[Datei:LevelPneumaticMan.jpg|thumb|In-Game Grafik von Pneumatic Man" ist ein Jump´n Drill mit Höhlensetting im Sci-Fi-Design. ]]Der Spieler, welcher sich auf einem springenden Superbohrer befindet, hat die Aufgabe seine verschütteten Kameraden zu befreien und den Levelausgang zu erreichen. Dabei wird befindet er mit unterschiedlichen Fallen und Gegnern konfrontiert, die ihm diese Aufgabe erschweren. Der Held befindet sich auf einem Superbohrer, der gleichzeitig zugleich als Sprungmaschine genutzt wirddient. Dieser bohrt Der Superbohrer ist permanent im Einsatz und zerstört mit jedem Aufprall den Bodendarunterliegenden Untergrund. Aus diesem Grund Deshalb muss der man sich Spieler schnell zügig durch das Level bewegen, damit er denn wer nicht schnell genug ist, verliert durch wegbrechende Steine den Boden unter den Füßen.Wenn man Pech hat, stürzt man dann in Sackgassen Fallen, die den Spieler sofort aufspießen, oder genauso tödliche Lavaströme. Außerdem muss man auf herabstürzende Steine Acht geben, die den Spieler unerwartet treffen können.Nicht nur auf dem Boden, sondern auch an Seiten und an der Decke lauern Fallen fällt, die genau wie Steine herabstürzen können.An einigen Stellen befinden sich zudem Lavafontänen, die man geschickt überwinden muss, wenn man nicht gegrillt werden möchte. Aber nicht nur die Höhle selbst ist tückisch, auch Gegner erschweren die Rettungsmission. Sowohl Hunde als auch Chamäleons können den Spieler töten, weshalb man diese besser umgehend außer Gefecht setzt, indem man mit dem Bohrer drauf springt.Insgesamt ist also viel Geschick und Schnelligkeit vom Spieler gefordert, wenn er die Level erfolgreich abschließen möchte.
==Welt==
* Höhlensetting / Sci-Fi-Design: Der Aufbau der == Welt ist in Blöcken* fixer Start-/ Endpunkt für jede Map* Im Level verstreut sind eingesperrte Kameraden. Eine bestimmte Anzahl an Kameraden ist essenziell für den erfolgreichen Levelabschluss, weitere gerettete Kameraden verbessern den Highscore.* Die Anzahl der im Level verstreuten Kameraden ist variabel.==[[Datei:Coworker.jpg|miniatur|thumb|right|CoworkerKamerad]]* Es Die Welt ist möglicheine unterirdische Höhlenlandschaft, dass ein Level keine Kameraden zu retten enthältdie von zahlreichen Lampen und Leuchtröhren erhellt wird. Glühende Lava und fluoreszierende Pilze verleihen dem Spiel seine ganz eigene Atmosphäre.* Die Kameraden sitzen in Lücken zwischen SteinenAufgebaut ist sie aus einzelnen Blöcken unterschiedlichen Typs. Manche Blöcke sind unzerstörbar, nicht im Stein selbstauf ihnen kann sich der Spieler beruhigt aufhalten.* Wird der Endpunkt ohne die geforderte Anzahl an befreiten Kameraden erreichtAndere brechen nach einer Weile weg, wird eine entsprechende Meldung ausgegebenweshalb man nicht allzu lange darauf herumspringen sollte. (Die geforderte Anzahl kann auch 0 sein)* Die hellsten Blöcke haben Haltbarkeiten, die bei jeder Berührung mit brechen extrem schnell weg und verlangen dem Bohrer sinktSpieler das meiste ab. Wer diese Blöcke falsch oder zu langsam nutzt, bis er zerstört wirdhat oft keine zweite Chance.* Es gibt außerdem besondere Blöcke mit verschiedener Haltbarkeit, uwie Bomben.A. auch unzerstörbare.* Es gibt Blockarten die 1, 2, 3, 4, 5Einmal durch einen Bounce aktiviert, 6 (später: Typ 1sollte man diese schleunigst hinter sich lassen, 2, 3, 4 , 5, 6) oder unendlich viele Bounces aushalten, bis bevor sie zerstört werden.* Springt der Charakter, entfernt er jeweils vom Absprung- hochgehen und Landeblock 2 Haltbarkeitalles Umliegende mit ihrer Explosion zerstören.* Der Zerstörungsradius der Bombenblöcke beträgt 2 Manche Blöcke. Die Explosion dringt nicht durch unzerstörbare Blöcke durch.* Es gibt Bombenblöckebilden sich bewegende Plattformen, die zeitverzögert explodieren sich entweder vertikal oder horizontal bewegen und angrenzende Blöcke zerstörenvom Spieler genutzt werden müssen, um an sein Ziel zu kommen.* Es gibt horizontal Andere wiederum blockieren den Weg und vertikal bewegende Plattformen, die unzerstörbar sindhindern den Spieler am Vorwärtskommen.* Es gibt keinen FallschadenÜber die Welt verteilt befinden sich die zu rettenden Kameraden.* Wird der Level erfolgreich beendetWer bei dem Versuch, erscheint ein WinScreen.* Der WinScreen enthält eine Checkliste an geretteten Kameradendiese zu befreien, Zeit und zerstörten Blöcken.* Stirbt der Charakterstirbt, findet ein Reset wird an den Startpunkt des Levels stattzurückversetzt.
==FallenSpieler ==[[Datei:Char.jpg|right|Spieler]]Der Spieler spielt einen Maulwurf, der sich auf einem Superbohrer befindet, mit dem er durch die Gegend hüpft. Er muss seine verschütteten Kameraden (ebenfalls Maulwürfe) retten. Dabei hat der Spieler keine Lebensanzeige, sondern stirbt sofort.
* Lavafontänen: Sie schießt in bestimmten Intervallen Lavabälle vertikal in die Luft, welche den Spieler bei Berührung töten.
* Herabfallende Steine: Sie werden durch Trigger ausgelöst. Wenn sie herabfallen, verursachen sie Schaden auf dem Objekt, auf dem sie landen. Sollte dies der Spieler sein, stirbt er. Unzerstörbare Blöcke werden nicht beschädigt.
* Die Hitpoints der Steine können variieren, je nach Steintyp. Bisher existieren Abstufungen: 2 / 4 / 6 Hitpoints.
* Stacheln am Boden, Decke und Seiten. Stacheln sind von allen Seiten tödlich.
Sie können herunterfallen, indem man den Block, an dem sie befestigt sind, zerstört.
Fallen Stacheln herunter, drehen sie sich und zeigen mit der spitzen Seite nach oben und fungieren fortan als neue Falle.
Falls sie in Lava fallen, werden sie zerstört.
* Bomben: Sie befinden sich kenntlich in Blöcken und zünden Zeitverzögert, sobald der Spieler sie mit der Bohrerspitze berührt, und haben einen Explosionsradius von 2 Blöcken in jede Richtung. Falls sich eine weitere Bombe im Explosionsradius befindet, so wird sie auch gezündet.
==SpielerGegner ==[[Datei:Char.jpg]]* Größe der Spielfigur: 1,5 Blöcke* Standardbewegung des Helden beträgt in der Höhe 0,5 Block (in der Animation, nicht Physikalisch)* Sprunghöhe beträgt 3 Blöcke* Der Spieler springt dauerhaft und kann nicht nicht-springen (bouncen). Bzw.: Der Spielercharakter kann auf einem Punkt springen, aber nicht still stehenEs gibt zwei verschiedene Gegnertypen.* Jede hoch-runter Bewegung entfernt auf dem darunter liegenden Block 1 HaltbarkeitDiese werden von einer simplen KI gesteuert.* Der Charakter springt nicht in festen Rastern.Weiterhin triggern sie keinerlei Fallen.* Der Spieler kann springen mittels Tastendruck.* Während des Sprunges kann man die Richtung des Sprungs ändern.* Sind alle Blöcke unter dem Charakter zerstört und er berührt die Lava daruntererste ist "glücklicher, stirbt erdicker Hund".* Stirbt der Charakter, ist er sofort tot, es gibt keine LebensanzeigeDieser Gegnertyp läuft herum.* Der Charakter hat nur zweite ist ein Leben.* Stirbt der Charakter, ist es möglich, sich in den Highscore einzutragen. * Der Spieler kann nicht rutschen, nur springenhüpfendes Chamäleon.
==Gegner==
*Es gibt zwei Gegnertypen, die durch eine simple KI gesteuert wird.
*Keine dieser Typen lösen Trigger aus.
*Sobald sie den Spieler berührt, stirbt er. Einzige Ausnahme: Der Spieler kann von oben auf sie springen, um sie zu töten.
*"Glücklicher, dicker Hund": Dieser Gegner läuft durch die Welt.
*"Chamäleon": Dieser Gegner läuft und springt durch die Welt. Nach jedem Sprung läuft ein Cooldown ab, bis er wieder springen
<gallery>
Datei:ChamäleonPneumaticDog.jpg|Gegnertyp:ChamäleonHundDatei:DogChamäleonPneumatic.jpg|Gegnertyp:Glücklicher, dicker HundChamäleon
</gallery>
==Menü / HUD==
* Es gibt eine Levelauswahl.== Fallen ==* Bei der Levelauswahl ist auf jeden Fall das erste Level auswählbarLava: Ein Lavastrom, in den man nicht fallen sollte.* Hat man ein Level erfolgreich beendet, erscheint der WinScreenLavafontänen: Schießen in regelmäßigen Abständen aus dem Boden.* Auf Spikes: Befinden sich auf dem WinScreen wird sowohl separat gerettete ArbeiterBoden, Anzahl vollständig zerstörter Blöcke an den Seiten und benötigte Zeit, als auch an der errechnete Highscore in Form einer Zahl angezeigtDecke. Können herabstürzen.* Während dem eigentlichen Spiel wird die Anzahl Herabfallende Steine: Lösen sich von der zerstörten Blöcke, die aktuell abgelaufene Zeit Decke und auch die Anzahl der geretteten Arbeiter angezeigterschlagen den Spieler.
==Umsetzungsdetails==Hier kommen Umsetzungsdetails hinein, die auch implementarische Details beinhalten können. ===Details von Physik===*Im Augenblick kann ein Stein von mehreren Triggern ausgelöst werden. *Bisher ist es (noch) nicht möglich einen Trigger für mehrere Steine zu nutzen.===Datenverteilung===#Eine Übersicht der Menüs und Buttons von den Designern befindet sich in Ownclowd/Konzept/Menu Ordner (höchste Versionszahl).#Ein provisorisches Stadium von Map Laden ist jetzt in Develop mit getTileInfo( int layerint x,int y ) kann ein <TileInfo>-Object zu einem Block abgefragt werden.#Es gibt eine Explosion, die für die explodierenden Blöcke. Davon zwei Versionen[[Kategorie: einmal als Partikel einmal als Spritesheet.===Details zur Steuerung===* Die Bewegungsgeschwindigkeit ist bei der Gamepad-Steuerung abhängig von der Anschlagsweite des Analogsticks.* Schlägt man den Analogstick des Gamepads voll in eine Richtung an, soll die Maximalgeschwindigkeit ausgelöst werden. Je weniger der Stick in eine Richtung gedrückt wird, desto weniger Geschwindigkeit soll die Figur haben.* Wenn der Spieler hoch springt, springt er 3 Tiles hoch und kann maximal auch 3 Tiles weit springen.====Fragen====#Bei einem Tastendruck wird eine Startgeschwindigkeit von x%, je länger der Tastendruck ist, desto mehr Geschwindigkeit soll addiert werden. Nach 1s (startwert! muss getestet werden) soll die Maximalgeschwindigkeit erreicht werden?  ===Details zur Tilemap===(unvollständig) * alles englisch (Name, Eigenschaften usw.)* Camelcase* Ein Layer mit allen Objekten mit denen man kollidieren kann* Tile propertiesGameDevWeek]] [[Kategorie: **Invulnerable: true/false**Hitpoints: (int)**Type: (Lava, Floor, Spike, Deko, Bomb)**Name: (Block0, Block1, Block2, Block3, Block4, Block5, Block6, Lava1, Lava2, Lava3, Lava4, Bomb1, Bomb2, SpikeLeft, SpikeTop, SpikeDown, SpikeRight, SpawnAndLevelEnd, Sign1, Sign2, Lamp1, Lamp2, Lamp3, Lamp4, Lamp5, Lamp6, Lamp7, Lamp8, Lamp9, Lamp10, Block1Background, Block2Background, Block3Background, Block4Background, Block5Background, Block6Background, Stone1, Stone2, Stone3, TutorialSignPC, TutorialSignConsole, Midground_Stein01, Ruine, Ruine01, Stalagtit01, Stalagtit02, Stalagtit03, Stalagtit04, background_stones01, background_stones02)**Radius: float**LightType: cone, point, chain**Direction: float 0-360**Radius: 0-360**Distance: float**Colour: white, yellow, yellowLava, purple**AnimationFrames: int**AnimationDuration: 1**AnimationTileOffset: 1 Eigenschaften für Objekte:*Player:**Name: Player*PlayerSpawn:**Name: PlayerSpawn*LavaFountain:**Name: LavaFountain**Intervall: float**Height: float**IntervallOffset: float**length: float*RockTrigger:**Name: RockTrigger**Id: (int) passend zur id der Steine*Rock:**Name: Rock **TriggerId: (int) ref auf Id vom Trigger*Platform:**Hitpoints: int**Name: Platform**Mode: oneTime/always**Direction: right/left/up/down**Speed: float**Distance: float*LevelEnd:**Name: LevelEnd**MinMiner: int*Enemy:**Name: Enemy**Direction left/right**Type: dog/chameleon *Miner:**Name: MinerGameDevWeek Spiele]]
304
Bearbeitungen

Navigationsmenü