Hexagon landschaft

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

s_m_w

Betreff: Hexagon landschaft

BeitragMi, Apr 26, 2006 20:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
Ich versuche mich gerade an einem runden basierenden Spiel, aus 6 eckigen tiles. Es funktioniert alles ganz prima, nur mein algorythmus für das erstellen der landschaft gefällt mir nicht.

Code: [AUSKLAPPEN]
Function CreateLandscape()

  For x=-1 To 28
    temp=(temp+1) Mod 2                 
    For y=1 To 21
      If x < 3 Or x > 25 Or y < 3 Or y > 19 Then ; Wasser               
        l.landscape=New landscape
        l\X=x*18-20
        l\Y=y*24-temp*12-30
        l\Owner=-1
        l\building=0
        l\Typ=3 ; Wasser
      Else ; Wenn nicht am rand, land
        Rnd=Rnd(100)
        Select True
          Case Rnd=>0 And Rnd<=49 ; 50%
            ; Wiese
            l.landscape=New landscape
            l\X=x*18-20
            l\Y=y*24-temp*12-30
            l\Owner=-1
            l\building=0
            l\Typ=0
          Case Rnd=>50 And Rnd<=80 ; 30%
            ; Berg
            l.landscape=New landscape
            l\X=x*18-20
            l\Y=y*24-temp*12-30
            l\Owner=-1
            l\building=0
            l\Typ=1
          Case Rnd=>81 And Rnd<=91 ; 10%
            ; Moor
            l.landscape=New landscape
            l\X=x*18-20
            l\Y=y*24-temp*12-30
            l\Owner=-1
            l\building=0
            l\Typ=2
          Default
            ; Wasser
            l.landscape=New landscape
            l\X=x*18-20
            l\Y=y*24-temp*12-30
            l\Owner=-1
            l\building=0
            l\Typ=3
        End Select
      EndIf
    Next                               
  Next     

End Function

Das Problem:
Ich möchte mehr Wasser flächen einbauen, jedoch immer nur eine zusammenhängende insel haben.

e:/ (Mit mehr wasser, ohne moor, die grauen dinger sollen berge sein)
user posted image
Sheep Happens

Goodjee

BeitragFr, Apr 28, 2006 16:57
Antworten mit Zitat
Benutzer-Profile anzeigen
hm, dann würde ich in der mitte anfangen, und immer in 6 richtungen weitermachen....
und zufällig entweder wasser oder land setzen...

dann werden alle flächen von innen nach aussen überprüft, wenn sie land haben, werden alle anliegenden flächen die keinen wert(land, wasser, berg zufälig gesetzt...
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/
 

E. Urbach

ehemals "Basicprogger"

BeitragFr, Apr 28, 2006 17:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich würde durch Zufall ca. 6 Punkte auf der Karte bestimmen (Land).
Dann würde ich beim Erstellen des aktuellen Feldes die Entfernung zu diesen Feldern berechnen.
Wenn die Entfernung klein ist (nah am Land), dann steigt die Wahrscheinlichkeit für ein Land-Feld, sodass sich in der Nähe vom Punkt nur Land-Felder befinden.
Wenn die Entfernung groß ist, dann steigt die Wahrscheinlichkeit für das Setzen eines Wasser-Feldes.

Zitat:
Ich möchte mehr Wasser flächen einbauen, jedoch immer nur eine zusammenhängende insel haben.

Wenn du wirklich immer eine zusammenhängende Insel haben willst, dann nimmst du einfach die Wahrscheinlichkeit raus und arbeitest mit Radien oder anderen Methoden.
The box said, "Requires Windows XP or better", so I installed Ubuntu | Linux is NOT Windows
Flua :: Profiler für BB und BMax :: Partikel-Engine für BMax :: Lyphia-Projekt Quellcode (BMax) :: Automatische Parallelisierung :: Meine Musik
  • Zuletzt bearbeitet von E. Urbach am Fr, Apr 28, 2006 19:42, insgesamt einmal bearbeitet

Kryan

BeitragFr, Apr 28, 2006 18:27
Antworten mit Zitat
Benutzer-Profile anzeigen
darf ich fragen, was das für ein spiel wird??
ich arbeite nämlich auch derzeit an einem rundenbasierten strategiespiel à la "Battle for Wesnoth"

es ist so ganz zufälligerweise auch mit hexanon ^^
falls du irgendwelche fragen zu diversesten themen wie zB pathfinding hast, kann ich dir helfen Smile
wenn du das spiel sehen willst, musst du auf www.cult-soft.de und dort unter spiele gehen und "reign of bnoth" wählen

viel spaß noch
Kryan
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

s_m_w

BeitragDi, Mai 02, 2006 13:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Wesnoth ist mir bestens bekannt, aber das wird eher slay artig (Kennt das jemand?). Pathfinding werde ich da nicht brauchen, da es kein Laufen in dem Sinne gibt, sondern nur drag 'n' drop. Die Idee mit Radien etc. ist gut, auf jedenfall besser als irgend ein zufallsgedingsel.

e:/
Ich brauche einen denk anstoß:
Wie mache ich das am besten mit den radien? Ich bekomme irgendwie nur sternförmige landschaften hin, und keine kreisförmigen. Hat sich jemand mit sowas schon beschäftigt der mir seine Methode zeigen/erklären könnte?
[/code]
Sheep Happens

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group