Map wie bei Worms und Soldat!

Übersicht BlitzBasic Allgemein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

ChaosCoder

Betreff: Map wie bei Worms und Soldat!

BeitragSa, Apr 09, 2005 9:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo erstmal...
Ich bin nun noch nicht solange dabei.

Ich hab mir vorgestern das Spiel "Soldat" von www.Giga.de runtergeladen...
Fand ich ja ziemlich lustig... Wollte nun fragen wie man so ne map macht und das man so wie bei soldat die Hügel hoch und runterlaufen kann, ich blick da nämlich noch nicht durch...

Und wie steht es mit den Bots... Ich weiß noch nicht wie ich die KI proggen soll... Kann mir jemand helfen?

Das wären erstmmal alle Fragen...
Wär net wenn ihr mir helfen könntet!
Danke im voraus!
 

konstantin

BeitragSa, Apr 09, 2005 10:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Maps von Soldat sind relativ simpel aufgebaut. Du kannst dir ja mal einen Mapeditor für Soldat runterladen. Im Grunde sind es einfach Polygone, die nebeneinander liegen.
Über die KI würde ich mir an deiner Stelle erstmal keine Sorgen machen. Und wenn, sind Waypoints der richtige Weg.

ChaosCoder

BeitragSa, Apr 09, 2005 10:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Du kannst dir ja mal einen Mapeditor für Soldat runterladen


Wo denn? auch bei giga?
Wie sind denn dei maps aufgebaut? Mit tiles geht es ja schlecht... Muss man da etwa pixel für pixel machen? Ich wollte dann auch noch einen mapeditor schreiben... das kann ich ja machen, wenn ich weiß wie man so eine map proggt...

Andy030

ChaosCoder

BeitragSa, Apr 09, 2005 10:52
Antworten mit Zitat
Benutzer-Profile anzeigen
sry wegen doppelpost!

Ok, das mit den polygonen hab ich grad verstanden... Embarassed
Hab auch grad nen mapeditor gefunden...
wie lasse ich überprüfen wo jetzt der boden ist?
Und wie mache ich das die menschen hochlaufen bzw runterlaufen können?
 

konstantin

BeitragSa, Apr 09, 2005 18:17
Antworten mit Zitat
Benutzer-Profile anzeigen
kleiner tipp: lern programmieren.

ChaosCoder

BeitragSa, Apr 09, 2005 20:27
Antworten mit Zitat
Benutzer-Profile anzeigen
haha... lange nicht mehr so gelacht... ich dachte hier wird einem geholfen und nicht dummen sprüchen geantwortet... Ich glaub, ich probier schon programieren zu lernen Wink
Oder antwortest du jedem so, der z.B. fragt wie man einen Text an eine bestimmte stelle schreibt? Jetzt mal ehrlich, kann mir jemand helfen?

Christian

BeitragSa, Apr 09, 2005 20:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Tag!

Vergiss die Deppen bei Giga!
Die haben 80% nur scheisse gelabert.

Ich kenn Soldat besser als meine Mutter.
Ich war in den German 1on1-Ladders auf den 4. Platz.
Ich war einer der ersten Spieler überhaupt und mein (Ex-)Clan war mal Europas bester 3on3-Clan.
Jaja, das waren noch Zeiten...
Nun gut mit der Angeberrei. Wink

Geh auf der offiziellen Soldat-Webseite oder auf der Webseite der größten Soldat-Community.

So.

Merke:
Giga ist wie 9live.
Die Typen verarschen dich nur.

Gruß
Christian

ChaosCoder

BeitragSa, Apr 09, 2005 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
also entweder hab ich was falschverstanden oder du hast meine frage gar nicht beantwortet... ich wollte wissen wie man proggt das man auf diesen dreiecken (der Boden) stehen blaibt und nicht durchfällt und wie man läuft...

Irgendwie krieg ich hier nur noch komische antworten...

Naja... hoffe mir kann jetzt wirklich mal einer helfen...

diGGa

GruppenKaspar

BeitragSa, Apr 09, 2005 21:16
Antworten mit Zitat
Benutzer-Profile anzeigen
offtopic:
[quote]Giga ist wie 9live.
Die Typen verarschen dich nur.[/quote]

zur "verteidigung" muss ich sagen: die verarschen einen nicht... meistens wissen die einfach nich bescheid.
Gestern Nacht Schlug der Regen an mein Fenster
Ich ging durch das dunkle Zimmer und
glaubte im Licht der Straßenlampe
Den Geist unseres jahrhunderts auf der
Straße zu sehen
Der uns sagte, daß wir alle am Rande
des Abgrunds stehen.
- Al Steward


Athlon 64 3000+ / Radeon 9600 / 1024mb ddram

Christian

BeitragSa, Apr 09, 2005 21:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Tag!

Die verarschen fast immer.

Ein Giga-Soldat-Beispiel:
Die zeigten ein Match und sagten, dass das live ist.
Mh, komischerweise habe ich gerade mit einem Spieler gechattet und wir haben uns gewundert, dass die das "live" nannten.
Logischerweise haben die dann eine Demo abgespielt.
Dann fragten sich die netten Herren, ob es bei Soldat auch ein Demomodus gibt.
Sie glaubten nein.

Aha, die sagen, dass das live ist, obwohl sie eine Demo abspielen und fragen sich, ob es ein Demo-Modus gibt.
Wenn das keine Verarsche ist...

Und das war nur EIN Beispiel von sehr, sehr vielen!

So, nun entschuldige ich mich, dass ich vom Thema abgekommen bin.

Jungs, heft ihm!

gruß
Christian

ChaosCoder

BeitragSa, Apr 09, 2005 22:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Jungs, helft ihm!

Meine Worte... tut mir ja leid aba ich guck grad giga...
mur mal so am rande gesagt... wär jetzt aber nett wenn ihr mir endlich helfen würdet!

Andy030
 

TOONY

BeitragSo, Apr 10, 2005 22:45
Antworten mit Zitat
Benutzer-Profile anzeigen
lass die figur fallen und wenn sie mit dem boden kolidiert bleibt sie stehen.

mit "Imagescollide" geht das!

DivineDominion

BeitragMo, Apr 11, 2005 7:21
Antworten mit Zitat
Benutzer-Profile anzeigen
eine schnellere Methode war bei mir mal, unter der Figur mit ReadPixelFast rumzulesen.
Du speicherst die Map als ein Bild (oder als mehrere, wenn du das in Sektoren teilen willst, vllt bringt das Performance, vor allem bei Lock- und UnlockImage) und nutzt sie dann als Imagebuffer. An X,Y liest du dann mit ReadPixelFast (locken vorher!) aus was im Bild ist. Wenn transparente Farbe auftaucht, kann er einen Pixel fallen. Wenn nicht bleibt er da.
War bisschen komisch wegen Fehlerbehandlung, weil es bei Kurven auch ungenauigkeiten gibt.

Oder, wohl noch schneller, du speicherst die Polygone und prüfst mit komischen Formeln auf Kollision - sind dann nur Zahlen und keine Grafik. ReadPixelFast geht auch nur auf dem Bildschirm und nicht außerhalb, daher ungeeignet für Gegner, denk ich mal. Polygonberechnung ist da wohl echt besser. Kannst von zwei Koordinatenpaaren aus die Seitenkante berechnen und mit der rausfinden ob zu des Spielers X,Y ein Pixel der Seitenkante gehört. Musst das ganze dann jedoch als Fläche betrachten, da du sonst nicht wissen kannst ob er nun rechts oder links der Kante laufen/landen darf und er am Ende auf einmal reingebeamt werden kann, wenn er bereits unter der Linie der Seitenkante stehen würde - oder so.

Denke, andere können dir Formeltechnisch besser helfen als ich, daher hör ich mal auf Smile
christian.tietze@gmail.com - https://christiantietze.de
macOS
 

Apocalyptic

BeitragMo, Apr 11, 2005 10:32
Antworten mit Zitat
Benutzer-Profile anzeigen
DivineDominion hat Folgendes geschrieben:
ReadPixelFast geht auch nur auf dem Bildschirm und nicht außerhalb, daher ungeeignet für Gegner, denk ich mal.


Wenn die Karte nicht all zu groß ist, könntest du diese auch komplett in ein Bild speichern. Dann kannst du auch "außerhalb" des Bildschirms ReadpixelFast anwenden, indem du auf den ImageBuffer zugreifst. Zumindest für den Anfang dürfte dir diese Methode leichter fallen als die "Polygon"-Methode... denke ich zumindest Wink
Suum cuique

[ www.ffs-net.de.vu ] [ Raycaster ]

ChaosCoder

BeitragMo, Apr 11, 2005 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke...

Ich find die Idee mit dem rechnen sehr gut, wo man mit einer formel ausrechnen kann ob ein pixel der linie unter dem menschen liegt...
Aber leider kenn ich die formel nicht!
kann die mir mal jemand sagen?
Projekte: Geolaria | aNemy
Webseite: chaosspace.de

Kabelbinder

Sieger des WM-Contest 2006

BeitragMo, Apr 11, 2005 17:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Also wenn du noch nie ein Spiel programmiert hast, solltest du nicht mit sowas, wie Worms anfangen (Eine Lebensweißheit, die man hier andauernd mitgeteil bekommt Smile ). Programmier am besten erstmal einzwei einfachere Spiele, damit du die Routine hast.

Edit: Hab mal weitergelesen Very Happy .

Die Formel, die du brauchst hängt mit der Schwerkraft, die du in das Spiel einbaust zusammen, lass mich mal einen Augenblick überlegen...
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

Kabelbinder

Sieger des WM-Contest 2006

BeitragMo, Apr 11, 2005 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, meine bisherigen Ergebnisse:

Mit dieser Formel kann man nur gleichhochgelegene Orte treffen:
Code: [AUSKLAPPEN]
AppTitle "Arrowhit"
Graphics 640,480,16,2
SetBuffer BackBuffer()

Const grav# = 1

Global xcor#,ycor#,xricht#,yricht#,zielx#,ziely#,phase

xcor = 80
ycor = 240
zielx = 500
ziely = 240
phase = 100

Function fly()
yricht = yricht + grav
xcor = xcor + xricht
ycor = ycor + yricht
End Function

Repeat

If MouseHit(1) Then
xcor = 80
ycor = 240
xricht = (zielx-xcor)/phase*grav
yricht = -(phase/2)
EndIf

If KeyDown(200) Then phase = phase + 1
If KeyDown(208) Then phase = phase - 1

fly()

Color 255,255,255
Oval xcor-10,ycor-10,20,20
Color 255,0,0
Rect zielx-3,ziely-10,6,20
Color 0,160,0
Plot 80,240
Color 0,255,255
Text 0,0,phase,0,0

Flip
Cls
Until KeyHit(1)
End


Die Formel lautet also:
Code: [AUSKLAPPEN]

xricht = (zielx-xcor)/'durchläufe bis zu treffer'*'gravitation'
yricht = -('durchläufe bis zu treffer'/2)
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

Kabelbinder

Sieger des WM-Contest 2006

BeitragMo, Apr 11, 2005 17:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ah, Erfolg!!
Hiermit kann man auch höhere, oder niedrigere Stellen treffen:
Code: [AUSKLAPPEN]
AppTitle "Arrowhit"
Graphics 640,480,16,2
SetBuffer BackBuffer()

Const grav# = 1

Global xcor#,ycor#,xricht#,yricht#,zielx#,ziely#,phase

xcor = 80
ycor = 240
zielx = 500
ziely = 240
phase = 100

Function fly()
yricht = yricht + grav
xcor = xcor + xricht
ycor = ycor + yricht
End Function

Repeat

If MouseHit(1) Then
xcor = 80
ycor = 240
xricht = (zielx-xcor)/phase*grav
yricht = -(phase/2-(ziely-ycor)/phase)
EndIf

If KeyDown(200) Then phase = phase + 1
If KeyDown(208) Then phase = phase - 1
If KeyDown(209) Then ziely = ziely + 1
If KeyDown(201) Then ziely = ziely - 1

fly()

Color 255,255,255
Oval xcor-10,ycor-10,20,20
Color 255,0,0
Rect zielx-3,ziely-10,6,20
Color 0,160,0
Plot 80,240
Color 0,255,255
Text 0,0,phase,0,0

Flip
Cls
Until KeyHit(1)
End


Die Formel:
Code: [AUSKLAPPEN]

xricht = (zielx-xcor)/'durchläufe bis zum treffer'*'gravitation'
yricht = -('durchläufe bis zu treffer'/2-(ziely-ycor)/'durchläufe bis zum treffer')
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

Kabelbinder

Sieger des WM-Contest 2006

BeitragMo, Apr 11, 2005 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Oh, mann Mad . Das verfehlt wohl die ganze Sache. Ich muss lernen, mir die Beiträge besser durchzulesen Embarassed . Naja, vielleicht wird dashier auch irgednwann mal nützlich sein. Ich hoffe, ich hab niemanden verwirrt Sad . Tut einfach so, alsob die Posts nicht da wären...
<Wing Avenger Download> ◊◊◊ <Macrophage Download>

rambo256

BeitragMo, Apr 11, 2005 18:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Wow, nen "Quad-Post" hab ich noch nie gesehen Wink

@ topic: Irgendwie hatten wir doch schonmal so etwas Wink
Aber der Lösungsansatz mit den Polygonberrechnungen stimmt schon Smile
Asus F53z

Das Leben ist eine reine Konkatenation...

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group