Absisto

Kommentare anzeigen Worklog abonnieren
Gehe zu Seite 1, 2  Weiter

Worklogs Absisto

Einzugsbereiche

Dienstag, 28. September 2010 von Schnuff
So, ab sofort sind Einzugsbereiche für Gebäude implementiert. Bis auf der Marktplatz beachten auch alle Gebäude (bzw. deren Menschen) diese Bereiche und bewegen sich nur in ihrem Einzugsbereich.
user posted image
(Auf das Bild klicken für eine größere Version)


Viele kleine/interne Änderungen:
  • Zudem wurde eine neue (Programm-)Klasse eingeführt, so dass es nur noch zwei globale Variable gibt Smile (Das ist vielleicht eine Arbeit, nachträglich Types hinzuzufügen und Variablen zu "Endglobalisieren")
  • Hinzugekommen ist, das Bäume "abgeholzt" werden können, der Holzfäller also nicht mehr immer wieder zu einem einzigen Baum hin rennt.
  • In einem Forums-Eintrag bin ich auf die "?Not Debug" Compiler weiche gestoßen, so muss ich nicht mehr so viel Aufwand betreiben eine Release-Datei zu erzeugen
  • Außerdem kann man ab sofort das Spiel pausieren und
  • Es wurde ein solider Grundstein für weitere Änderungen gelegt.

Hilfe mir ist schwindelig

Samstag, 17. Juli 2010 von Schnuff
So, wie der Titel (und dieser neue Worklog Eintrag) erahnen lassen, ist ein neues Feature hinzugekommen.
Ab sofort können Gebäude auch gedreht werden.
Das erste Gebäude welches mit 4 Ansichten beglückt wurde ist der Markt, da es zum Testen ein schönes Tilemaß hatte (3x4, alle anderen haben 2x2 oder 1x2)
user posted image
(Auf das Bild klicken für eine größere Version)


Zudem mag dem einen oder anderen aufgefallen sein, das ich dem Wald etwas mehr Relaismus gegeben habe. Sie haben nun einen Pseudo "Tiefen Effekt"

Sollte irgendjemand mal eine Funktion suchen um Arrays zu drehen...
Hier ist sie:
BlitzMax: [AUSKLAPPEN]
Rem
bbdoc:Dreht ein Array um times*90 Grad
EndRem

Function turnArray:Int[,] (array:Int[,], times:Int = 1)
Select times
Case 0
' Originalausgabe
Return array
Case 1
' Um 90 Grad gedreht
Local X:Int = array.Dimensions()[1], Y:Int = array.Dimensions()[0]
Local neuesArray:Int[,] = New Int[X, Y]

For Local i:Int = 0 Until X
For Local j:Int = 0 Until Y
neuesArray[i, j] = array[j, X - i - 1]
Next
Next

Return neuesArray
Case 2
' Um 180 Grad gedreht
Local X:Int = array.Dimensions()[0], Y:Int = array.Dimensions()[1]
Local neuesArray:Int[,] = New Int[X, Y]

For Local i:Int = 0 Until X
For Local j:Int = 0 Until Y
neuesArray[i, j] = array[X - i - 1, Y - j - 1]
Next
Next

Return neuesArray
Case 3
' Um 270 Grad gedreht
Local X:Int = array.Dimensions()[1], Y:Int = array.Dimensions()[0]
Local neuesArray:Int[,] = New Int[X, Y]

For Local i:Int = 0 Until X
For Local j:Int = 0 Until Y
neuesArray[i, j] = array[Y - j - 1, i]
Next
Next

Return neuesArray
End Select

End Function

Gebäude Klasse

Sonntag, 11. Juli 2010 von Schnuff
Heute mal keine Screenshots.

Zur Vorbereitung für drehbare Gebäude und Karten habe ich über das Wochenende eine neue Klasse "TTileBuilding" eingeführt.
Diese Klasse kümmert sich um das Gebäude, darum welche Art das Gebäude hat, wo das "Mastertile" sitzt (dieses ist das Tile, auf welches zum Bauen geklickt wurde), welcher Frame des Gebäudes angezeigt wird (falls ich noch etwas Animieren will), den Gesundheitszustand des Gebäudes und natürlich, welche Ausrichtung das Gebäude hat.

Auch wurde der Holzfäller umgestellt, Bäume die der Holzfäller "fällt" kriegen jetzt eine Gesundheit 1 (0 ist ein zerstörtes-, 1000 ist ein komplett heiles Gebäude). Der Gesundheitsgrad 1 wird für alle Felder (Bäume, Weizenfeld, Zuckerrohr, ...) verwendet für gerade neu gebaute Felder und abgeerntete Felder.

Des weiteren sind jetzt alle "Gebäude" einer Art zugeordnet. Die arten kriegen unterschiedliche "Spezialbehandlungen"
  • BUILDING_ART_HAUS ist die Default-Art, Gebäude dieser Art kriegen keine Sonderbehandlungen
  • BUILDING_ART_FELD diese Art bekommen alle Gebäude, die geerntet oder gefällt werden (Ausnahme ist hierbei das normale Gras, welches von Schafen und so weiter gefressen wird)
    Gebäude dieser Art können mit anderen Gebäuden überbaut werden (beispielsweise kann über Bäume eine Straße gebaut werden, ohne das man vorher die Bäume abreißen muss)
  • BUILDING_ART_STRASSE über Gebäude dieser Art können alle Beweglichen Einheiten (außer Schiffe Wink ) gehen.


Und zu guter Letzt wurde noch eine Fehlerbehandlung hinzugefügt, so dass das Programm nicht mehr abstürzt, wenn das Start oder Ziel Gebäude eines Karren/Holzfäller abgerissen wurde.

Alles neu macht der... Juni?

Donnerstag, 1. Juli 2010 von Schnuff
Punkt 1:
So nach etwas hin und her habe ich es hin gekriegt den Holzfäller-Typen einzubauen.
Dies war ziemlich viel Arbeit, da mein jetziges "Vehikel-System" (so heißen intern die Types, welche sich um bewegliche Objekte kümmern) bis dato darauf ausgelegt war, den Marktkarren zu steuern.
Das heißt, dass es Wege rückwärts abfuhr. Es wurde also von dem "Vollen" Holzfäller-Haus ein weg zu dem Marktplatz gesucht.

Jetzt werden alle "Vehikels" vorwärts bewegt. (Der Marktkarren wird trotzdem noch rückwärts gesucht nur wird der Weg "Umgedreht" an das Vehikel weitergegeben)

Punkt 2:
Die "Areas" welche vorher nur 10x10 Tiles groß waren und aus welchen sich größere Bereiche zusammensetzen lassen sollten sind nun umfunktioniert worden.
Ein Area ist nun eine Insel. Zudem können Areas nun mehr als 10x10 Tiles groß werden. Dies hat 4 Stunden (+ 6 Stunden bugsuche) für die Umstellung gebraucht^^

Punkt 2 ein halb:
Der Insel-erstell-algorithmus wurde überarbeitet, das Resultat kann sich durchaus sehen lassen Smile die Inseln werden nun von außen "angefressen" statt irgendwo wasser zu bilden, welches "Nachbarwasser" anzieht... (ich suche noch einen "Konfus" Smiley für meine Worklog-beiträge Smile )


Eine Insel vom neuen Algorithmus (zum testen ohne Bäume), mit Karren und Holzfäller.
(und meinem "Schnellmenu" durch welches Entwickler-Infos zu Tiles und Screenshots geholt werden können)
user posted image
(Auf das Bild klicken für eine größere Version)

Es rennt

Freitag, 4. Juni 2010 von Schnuff
Hier mal wieder ein Update meines Projektes...

F: Jetzt hast du (ich duze mich selbst?!) dich längere Zeit nicht mehr mit dem Projekt befasst, was dachtest du als du dich nun wieder davor setztest?
A: Es ist nicht ganz richtig, das ich mich die komplette Zeit nicht mehr mit dem Projekt befasst habe. Ich habe zwischenzeitlich etliche ISO-Tile-Renderer geschrieben um jenen aus meinem Projekt zu ersetzen... diese waren allerdings allesamt nur Schrott.
Aufgefallen ist mir aber, dass ich ein Genie (man muss sich auch mal selber loben, sonst macht's ja keiner Wink ) bin. Ich habe in meinem Projekt eine sehr gute Möglichkeit, bezogen auf das was ich umsetzen will, gewählt.

F: Was ist neu oder hat sich verändert?
A:
  • Erst einmal wurden sämtliche Update Methoden umgestellt. Vorher war es so, das die Tile-Update Methode bei sämtlichen, sich in dem Tile befindenden Objekten, die Update Methode aufrief. Jetzt ist es so, das es einen "Taskmanager" gibt, dieser Updatet Objekte nur noch wenn die es brauchen (nach einer bestimmten Zeit)
    Anschaulich heißt das:
    Objekt xy weiß, dass sich in 3500ms etwas ändert (Bsp. Holzfäller verbraucht ein Gold/erstellt ein Holz). Nun schreibt sich das Item (Das ProduktionsItem "Holz") in eine Liste ein und sagt das es in 3500ms geupdatet werden will.
    Nach diesen 3500ms wird nun von dem Taskmanager die Update Methode des HolzfällerItem Objektes aufgerufen.
    Das Item macht was es zu tun hat und schreibt sich wieder in die Liste ein (wieder in 3500ms).
  • Die Grafik wurde von den Berechnungen getrennt.
    Jetzt ist es möglich Berechnungen dauerhaft durchführen zu lassen aber nur 60 Screens pro Sekunde zu zeichnen
  • In Voller Auslastung (ohne Delay oder Timer) habe ich jetzt Rund 250 FPS
  • Kommentare. Ich hatte vorher wenige Kommentare, vor allem in Bereichen die ich ziemlich zu Anfang programmiert habe.
  • Die nervige Ruckelei von Fahrzeugen (Karren) bei dem Sprung von einem Tile auf das nächste ist nun behoben.
  • Tiles überdecken nun nicht mehr Grafiken die logisch gesehen vor ihnen liegen müssten.

Momentaner Stand

Freitag, 10. Juli 2009 von Schnuff
So, da ich in letzter zeit eh nur Ava alles mögliche nachmache *gg* (das *gg* musste jetzt sein Wink ) habe ich mich entschlossen ihren letzten Fehler ebenfalls nachzumachen und...

... eine Vorabversion zur verfügung zu stellen:
Edit: Die Versionen sind mittlerweile stark veraltet, deshalb habe ich sie hier raus genommen.
Eine Mac-Version wird es vorerst nicht geben.
Ausschließlich die Linux-Version wurde ausgiebig getestet.

Kurz-Anleitung:
  • Das Spiel ist (fast) ausschließlich mit der Maus zu bedinen
  • Durch Rechtsklick wird Abgerissen (Es kann auch Land/Wasser "Abgerissen" werden)
  • Durch klick auf die Häuser kann das Haus-Menu geöffnet werden (nur bei dem Marktplatz interessant)
  • durch klick auf die Waren im Marktplatz können zusätzliche eingekauft werden
  • Der Preis/Die Mänge beim Einkauf ist Fest, ändert sich also nicht
  • Sollte eine un-bespielbare Karte erscheinen, einfach das Programm beenden und nochmal starten.


Was hat sich geändert seit dem letzen Worklog:
  • Der Marktplatz ist nun etwas größer
  • Ein Primitives Handels-System wurde integriert
  • Aufteilung des "Nachrichten-Systems" in System-Fehler und System-Nachrichten
  • Man muss ganz zu Anfang einen Marktplatz errichten


Bugs/Fehlende Features über die ich weiß:
  • Laden/Speichern
  • Recht kleine Karte
  • Tiles die nicht tilebar sind
  • Handel ist sehr... unausgebaut
  • Das Karren-Männchen läuft etwas Seltsam, vor allem wenn näher ran/weiter weg gezoomt ist
  • es können grafikfehler auftreten, wenn gezoomt wurde
  • Die schönen Wasser-Land übergänge sind nicht am Karten-rand vertreten
  • item_kanonel.png und item_kanones.png konnten nicht geladen werden
  • man muss für jedes Bauen einzeln klicken

Neue Häuser

Dienstag, 7. Juli 2009 von Schnuff
so, ich habe 2 neue Häuser gemodelt und in das Spiel eingefügt:

user posted image
(Auf das Bild klicken für eine größere Version)


Außerdem wurden ein Paar Bugs gefixt unter anderem werden, wenn Straßen abgerissen werden, die Nachbar-straßen jetzt aktualisiert so das keine "Straßen-Stummel" zurück bleiben.

Edit: mit Holzchopf's Hilfe, habe ich die Häuser etwas "Hölzener" gemacht:

user posted image
(Auf das Bild klicken für eine größere Version)

Dem druck nachgegeben...

Samstag, 4. Juli 2009 von Schnuff
... Nein, ich habe nicht aufgehört im Gegenteil, ich habe mich mal daran versucht Avas Taktik zu kopieren...
Das ist dabei raus gekommen:

user posted image
(Auf das Bild klicken für eine größere Version)


Wer sich jetzt fragt "Was hat sich da geändert?"
dem kann ich sagen "Guckt euch mal die "Wasser-Ränder" an Smile




Zusätzlich muss ich nochmal einen (öffentlichen) Kommentar an Ava geben: "sag mal Mädchen, woher holst du die Motivation um ein ganzes Level auf diese Weise zu gestalten Confused ich habe 5 Stunden gebraucht das alles so einigermaßen hinzukriegen..."
PS: Ich mag diese Ränder also andere Kommentare zu diesen als "Die sehen wirklich gut/super aus" werden nicht geduldet und mit einer Woche Computerentzug geahndet Razz

Edit Ab sofort gibts kein Wasser me(e/h)r Smile
Der Beobachter des Screenshots (unten) wird sich natürlich fragen "aber ich sehe doch Wasser?" JA, das ist absolut richtig, aber auch nicht so ganz Razz
Dank coolo bin ich auf die Idee gekommen, dass Wasser mittels TileImage als "Hintergrund" zu Malen. So habe ich das Problem mit dem Kachelbaren Wasser schön umgangen Wink
Momentan wird überall wo Wasser ist einfach nichts gemalt, so das der Hintergrund (das Wasser) durchscheint.

Außerdem werden nochmal alle möglichen Wasser-Land übergänge gezeigt.

user posted image
(Auf das Bild klicken für eine größere Version)

Marktplatz und andere Änderungen

Samstag, 27. Juni 2009 von Schnuff
Ich habe ein Paar änderungen vorgenommen, so wird nun Oben, unter den Resourcen, angezeigt wie Viele Resourcen das Aktuell-zu-bauende Gebäude braucht (Dieses Gebäude kann nicht Gebaut werden, da es an Holz magelt, also ist es Rot gefärbt)
user posted image
(Auf das Bild klicken für eine größere Version)


Hier noch ein Gebäude welches man Bauen könnte (Das Forsthaus, nahe des Menu's):
user posted image
(Auf das Bild klicken für eine größere Version)


und nun zu den größten Neuerungen:
user posted image
(Auf das Bild klicken für eine größere Version)

Man kann Gebäude anklicken, in alter Anno-Manier werden hier Infos angezeigt, gibt es weitere Optionen.
Momentan ist der Markt aktiviert und man sieht das "Lager"

Zudem habe ich das Infosystem etwas umplaziert, es war eigentlich nicht so gewollt, das es dorthin rutscht aber nachdem mir das Aus versehen passiert ist, fand ich es an der Position ganz nett anzusehen Smile

PS: die pinken Flächen sind Platzhalter Grafiken, die von Absisto erzeugt werden, wenn die Grafik nicht geladen werden konnte.

Wasser

Montag, 22. Juni 2009 von Schnuff
user posted image
(Auf das Bild klicken für eine größere Version)


Wie man sieht haben sich 2 Sachen geändert.
die erste Sache ist offensichtlich: es gibt Wasser, es hat bis jetzt noch keinen Nutzen und keine Grafischen Gras-Wasser Übergänge aber das ändert sich auch noch irgendwann.
Die 2. nicht so offensichtliche Sache ist: das Ressourcen System steht soweit, ich habe schon Holz von meinem Holzfäller erhalten und Gold durch mein nettes Häuschen...
Ich zerbreche mir allerdings immer noch den Kopf wie ich es so balancieren soll, das nicht immer nach 2500ms (im Fall des Hauses) 5 Goldstücke gutgeschrieben werden.
[Edit]
Ich habe dieses Problem nun gelöst, indem ich mittels Rand(-800, 800) eine Zufallszahl zu der "nächste Abholzeit" Addiere.
[/Edit]

Gehe zu Seite 1, 2  Weiter