Entity

Kommentare anzeigen Worklog abonnieren

Worklogs Entity

Produktionsketten und neue Resourcen

Samstag, 2. April 2011 von Ana
Diesmal gibs gaaanz viele Bilder Wink

Pilze

Pilze sind teil einer "komplexeren" Produktionskette. Wie jeder weiß sind Entities natürlich nur in der Lage Gluccose zu verdauen, deshalb können sie Pilze als solches nicht direkt nutzen. Abgesehen von einer speziellen Unterart, der Träumerin, sie sitzt den lieben langen Tag herum und tut nichts, außer verdauen und zwar Pilze. Sprich sie kann als einzige Pilze essen. Na und, wenn sie sonst nichts kann! Doch tut sie, ihr "Ausscheidungsprodukt" ist Zucker und dadurch wird sie für die Entities enorm wertvoll, denn mit einer Träumerin und ihrem Saal, dem Honigsaal können neue Resoucren erschlossen werden. Wie die Pilze hier:
user posted image

Pflanzen

Neben den Pilzen gibt es noch Pflanzen in der schleimigen Welt der Entities, leider sind Entities nun so überhaupt nicht in der Lage Cellulose zu verdauen und es gibt keine Unterart die das könnte ...
Aber wieder einmal stellen die Entities ihre enorme Anpassungsfähigkeit und ihren kollegtiven Verstand unter Beweis. Ab einer gewissen Größe werden sie Farmen bauen können. Und was bauen Entities so an? Naja Zucker ist das einzige interessante für sie, den kann man aber schlecht anbauen, also Pilze und dann vorverdauen lassen!
Pilze wachsen allerdings nicht einfach so aus dem Boden! Okay tun sie eigentlich schon, aber im Grunde wachsen sie meistens auf totem Gewebe, genau wie die Pilze der Entities. Die Entities sammeln also die Pflanzen ein die sie finden, und züchten auf ihnen dann Pilze, diese bringen sie dann zu einer Träumerin und sie verdaut es ihnen zu Zucker. Was für eine komplexe Produktionskette! Wink

Das Model - der Pflanzen wird noch nicht so wirklich gut von MiniB3d übernommen bzw. ich schein es seinen Ansprüchen nicht gerecht designt zu haben, aber im Grunde sollte es ungefähr so aussehen

user posted image

die Pflanzen werden dann zur Farm gebracht

user posted image

die geernteten Pilze wiederum kommen zur Träumerin

user posted image

und von dort aus zum Lager

Hier nochmal die Außenwelt mit den neuen Resourcen

user posted image

und ein (nach jetzigem Stand) ausgebauter Stamm

user posted image

Gebäude und ihren Funktionen:

Farm: Stellt aus Pflanzen Pilze her
Honig: Stellt aus Pilzen Nahrung her
Lager: Lagert Nahrung und Baumaterial und befriedigt Bedürfnis nach Essen
Portal: Ermöglicht Weg in die Außenwelt
Schlafsaal: Befriedigt Bedürfniss nach Schalf
Kuratorium: Befriedigt Bedürfniss nach Prägung
Thronsaal: Erzeugt Eier
Brutraum: Stellt aus Eiern Larven her
Schlupfkammer: Stellt aus Larven Entities her

so viel dazu

Liebe Grüße

Ana

Landschaften und Sammelrouten

Dienstag, 29. März 2011 von Ana
Nachdem ich die meiste Zeit nach einem (wie eigentlich immer wenn man lange suchen muss) dummen Bug gesucht habe und wenig Fortschritte gemacht hab, kann ich doch ein bisschen was vorzeigen.

Die Außenwelt hat nun ein wenig mehr Charakter und sieht nun auch ein wenig hübscher aus (meiner Meinung nach) und vorallem, man kommt nicht mehr überall lang für manche Rohstoffe müssen nun ziemliche Umwege in kauf genommen werden.

Außerdem sind die Sammelrouten eingeführt. Die funktionieren folgender maßen, in einem bestimmten Radius werden alle Marken mit den anderen verbunden, kommt nun eine Entity zu einer Marke, so "riecht" sie alle anderen Pheromone und auch die Nahrungs- und Materialquellen. Da sie nicht so schlau ist, folgt sie einfach einem Geruch der ihr besonders gefällt und den sie noch nicht aufgenommen hat. Von daher hat man als Spieler nur in der Planung Einfluss auf die Benutzung der Routen einfluss. Neue Quellen sollte erst erschlossen werden, wenn die alten verbraucht sind. Ferner muss der Spieler aufpassen keine Kreise zu bauen, zwar speichert die Entity den spezifischen Geruch einer jeden Marke, so dass sie nicht ewig im Kreis rennen kann, doch wird es recht uneffektiv. Für den Rückweg nutzt die Entity ihre Fähigkeit, Geruchspartikel zeitweise zu speichern. Sie bildet quasi ein "Stack" und sucht die passende Quelle bis sie zuhause ist.

Mit der Landschaft sind auch Stellen entstanden, die überhalb des Schleims liegen, diese können die kleinen Lieblinge nicht überqueren.

Und hier nochmal ein paar nette Bilder
user posted image

user posted image

liebe Grüße

Ana

Die Außenwelt und ein bisschen mehr

Mittwoch, 16. März 2011 von Ana
Das Portal

Eine neue Einrichtung für die Sääle ist nun verfügbar, das Portal. Jeder Stamm hat nur ein einziges Portal, es ist Dreh und Angelpunkt für jede Kolonie. Selbst für die Kamera, die Innenansicht hab ich nun so verändert das man sich immer um das Portal dreht, was eine sehr nette Wahrnehmung des Baues zur Folge hat und ein paar kleine Probleme löst, aber ob das so optimal ist bin ich mir nicht wirklich sicher. Jedenfalls ist damit auch die Außenwelt nun endlich verfügbar. Ab in den Schleim Wink

Die Außenwelt
Die Außenwelt ist im Moment noch ein ziemlich grüner Ort an dem es nur einfache Nahrungs und Materialquellen gibt. Die Entities laufen nun fleißig zu den Nahrungsquellen wenn sie nichts anderes zu tun haben, oder es hohe Priorität hat.
In der Außenwelt finden sie sich leider nicht so gut zurecht und wittern ihre Zielorte nur auf kurze Distanz, hier kommen Geruchsstoffe ins Spiel, zu denen sie dann schwimmen und von dort aus ein neues Ziel suchen, wenn mehrere in Reichweite sind ist, es Zufall welche Quelle gewählt wird. Der Spieler kann nur entscheiden wie wahrscheinlich es ist, das diese Quelle gewählt wird. Wege müssen also mit großer Vorsicht angelegt werden. Kreise werden die Entities zwar nicht völlig außergefecht setzen aber schwer uneffektiv machen.

Desweiteren sind noch eine Menge kleinerer Änderungen dazu gekommen, aber die alle zu nennen wäre glaube ich recht langweilig, deshalb lieber ein paar bunte Bilder Very Happy

Sie sind nicht mehr alle aktuelle, deshalb mal chronologisch geordnet:
user posted image
Hier eine intakte fröhliche Kolonie

user posted image
Entities beim Bau eines neuen Saales

user posted image
Mit sehr hoher Priorität für Außenaufgaben, geht der größte Teil des Volkes nach draußen Rohstoffe sammeln, wie man gut an den Körbchen in den Sprechblasen erkennen kann.

user posted image
Hier erste Eindrücke, der noch sehr kragen Außenwelt, zusehen sind schwimmende Entity (sie bewegen sich nun wellenförmig) eine Nahrungsquelle (noch rot) und eine material Quelle, so wie das Portal

Kodex und Verfall

Dienstag, 8. März 2011 von Ana
4 Punkte sind dieses mal zu nennen:

1. Nachrichtensystem
2. Verfall der Räume
3. Kodex
4. Weitere Bedürfnisse

Das Nachrichten System
Ja ne es ist und bleibt ein Singelplayer Aufbauspiel, also keine Nachrichten zwischen Personen, aber das Programm als solches hat nun einen mitteilungsfreudigeren Charakter, oder zumindest die option sich zu äußern.

Im Prinzip super simpel, Nachricht erzeugt Objekt, Objekt kommt in eine Liste, erstes Objekt der Liste wird angezeigt bis es seine Lebenszeit überschreitet, Objekt löschen neues erstes nehmen usw.

Allerdings war einfach anzeigen oder ein und ausblenden zu langweilig. Die Buchstaben kommen von allen Randpositionen angeflogen und sausen auf ihre jeweilig Position und rotieren dabei noch ordentlich, sind dann aber alle rechtzeitig und richtig rum an Ort und Stelle.

Verfall der Räume

Räume werden nun mit der Zeit schaden nehmen und ab einem Wert von 25% rot gefärbt. Ab diesem Wert funktionieren sie auch immer schlechter, bis sie schließlich bei 0% nicht benutzt werden können. Gerade bei Lagern ist dies ärgerlich, da es bedeutet alle Rohstoffe gehen verloren.
Da gegen stehen die fleißigen Entities die nahezu unermüdlich Material herbei schaffen und die Räume ausbessern, wenn es nötig ist.

Kodex

Der Kodex ist die Ansammlung des Unsinns und der Tipp/Rechtschreibfehler den ich mir zu dem Hintergrund der Entities ausgedacht hab. Mit neuen Entdeckungen oder wachsender Bevölkerung kommen immer weitere Kodexeinträge hinzu. Zu dem erklären sie auch noch den Sinn und zweck von einzelnen Spielelementen

Hier mal ein Bild dazuuser posted image

Bedürfnisse

Die kleine Entities haben nun auch Bedürfnisse, die allerdings glaube ich noch etwas zu häufig sich melden. Wenn sie eines davon zu wenig befriedigt finden, werden sie ich eine Möglichkeit suchen es zu befriedigen.
Mit steigender Bevölkerung kommen immer wieder neue Bedürfnis typen dazu.
Im Moment gibt es allerdings nur schlafen, essen, prägen

Lg Ana

Das ist im Menü günstiger...

Freitag, 21. Januar 2011 von Ana
Die GUI Menüs

Die letzten paar Minuten Freizeit, hab ich darin investiert eine, naja Engine ist wohl zu viel dafür, aber jedenfalls die Möglichkeit Menüs zu erstellen, ihnen Buttons und Regler mit oder ohne Tooltips und Textfelder zu geben und sie zu verschieben. Ich bin eigentlich recht zufrieden mit dem Ergebnis, nur leider hab ich gar nicht so viele Menüs in dem Spiel, dass es sich gelohnt hätte. Aber immerhin es bringt mich auf Gedanken in denen die Wort "Beweisen sie ..." nicht vorkommen. Voll gut =)

Hier mal ein Bildchen
user posted image
zu sehen ist der Ansatz des Menüs in dem das Indoor/Outdoor verhältnis der Arbeitskräfte eingestellt werden kann. Natürlich könnten noch viel mehr Buttons Regler und texte dort rein. Der Mauszeiger ist übrigens auf dem Button was man leider nicht so erkennt.

Hintergrundwissen zu Entities (Spielmechanik)
Entitie haben nur ein sehr beschränktes Denkvermögen, allerdings sind die Königinen in der Lage, Probleme in viele Einzelschritte zu zerlegen und per Botenstoff mit Anderen zu teilen. So kann jede Entity einen kleinen Gedanken verarbeiten oder nur ein wenig kreativ sein, und doch große gedankliche Leistungen vollbracht werden. Dieses Verfahren ist allerdings aufgrund der geringen Speicherkapazitäten der Entity Gedächnisse nur begrenzt anwendbar. Die kollegtiven geistigen Leistungen sind also davon abhänig wie groß das Kollegtiv ist, kleine Gruppe sind nur in der Lage die grundlegensten Pheromone zu produzieren, große auch äußerst komplexe.
Im Klartext heißt das, je mehr Köpfe das Kollegtiv hat, desto mehr Raumarten und Unterarten von Entities stehen dem Kollegtiv zur Verfügung. Kleine Kollegtive bauen nur Thronsäle, Bruträume, Schlupfkammern und Lager, während große Kollegtive Gärten, Identifikationsmarken, Solarien, Verarbeitsungsräume, Kriegerinnen Hallen uvm..
Ein Problem bei diesem Verfahren ist, das die Entities nur funktionieren, wenn sie regelmäßigen Kontakt mit der Königen haben, da sie sonst ihre Prägung verlieren.

Das verlieren der Prägung kommt dem Tod einer Entity nahezu gleich. Diese Prägung kann als Schlüssel für die Kodierungen der Pheromone angesehen werden. Ohne sie tut die Entity nichts mehr.
Die Prägung ist allerdings ein eher unbeständiges Bauteil der Entities und muss regelmäßig erneuert werden. In kleinen Gruppen übernimmt die Königin diese Aufgabe, in größeren Kollegitiven, werden spezielle Entities gezüchtet, die einzig und allein dafür zuständig sind, das Pheromon der Königin zu duplizieren und weiter zu verteilen. Sie werden zu der Gruppe der Passiven Arbeiter gezählt.

Wegfindungen stehen

Montag, 17. Januar 2011 von Ana
Ein frischer A Star ist am Himmel der Wegfindungen aufgegangen und erträgt auch noch den bezeichnenden Titel AnaStar. Ich bin so genial und kreativ!

Hier mal das Testprogramm für den Algorithmus, eigentlich nichts besonderes aber ich mag die Farben =)
user posted image

Naja wie dem auch sei, jedenfalls stehen damit alle Wegfindungen und die Automatenprogrammierung kann nun voll beginnen, wenn ich nicht das wochenende über krank gewesen wäre und wenn nicht diese lästige Klausurphase vor der Tür stehen würde.

Jedenfalls kann nun jede Entity Sammlerin sich auch um den Nachwuchskümmern, außerdem geben sie nun mit Blasen über dem Kopf an was sie so zu tun haben oder gerade machen wollen. Ganz optimal funktioniert das noch nicht weil ich mir nicht ganz sicher bin wie ich die Blasen machen will, eigentlich würde ich 2d bevorzugen aber mir scheint das Cameraproject nicht ordentlich in minib3d funktioniert, oder geht das nur mir so? Jedenfalls erscheinen die bilder dann immer sonst wo verteilt, aber selten auf ihren Objekten. Deshalb haben sie nun ein 3d Objekt bekommen, das bei zustandsänderungen eine neue Textur drüber bekommt. Allerdings bin ich mir noch nicht ganz klar in welchem winkel in das nun haben möchte ... alles nicht so einfach und unwichtige details Very Happy

Jedenfalls wird jetzt wohl erstmal sehr wenig kommen, weil ich erstmal Mathe lernen muss ...
Arme Entities, diese hier ärgert sich jetzt schon sie nichts mehr zu tun hat
user posted image

Grundlagen

Freitag, 14. Januar 2011 von Ana
Die Wegfindung

Ich mag Wegfindungsalgorithmen, bisher hab ich immer einen A* verwendent, der sich ja auch für Spiele super anbiete, aber es gibt für manche Situationen bessere. In meinem Fall werde ich nun zum einen einen A*, einen Dijkstra und einen keine Ahung wie der heißt nutzen (Glaube er wird in der Informatik nicht verwendet, sondern in der Biologie von Insekten).

Erster ist den direkt zu befehligenden Einheiten vorbehalten, Dijkstra wird innerhalb von Bauten verwendet und der letzte für indirekt gesteuerte Einheiten.

A* werde ich nicht erklären, da er sich ja doch recht großer Bekanntheit erfreut, die anderen beiden werde ich mal kurz umreißen.

Also Dijkstra ist ein Greedy Algorithmus zum bestimmen des kürzesten Weges von einem Knoten zu allen anderen in einem gewichteten Graphen, dabei werden "benutze" Knoten schwarz "gefärbt" und unbenutze seien weiß. Nun wird solange bis kein Knoten mehr weiß ist oder das Ziel erreicht wurde, der günstigste vorhandene Weg von einem schwarzen Knoten zu einem Weißen genommen und der weiße Knoten der an dem Weg/der Kante liegt wird schwarz. Die Kosten eines Weges setzen sich aus denen der Kante (Also wenn ein Gang zwischen Raum a und b liegt wird die länge des Ganges genommen) und die Kosten um überhaupt vom Startknoten zu a zu kommen zusammen. Solange wir keine negativen Kanten gibt, erhalten wir so den kürzesten Weg zu allen Knoten.
Dieser Algorithmus bietet sich für das Spielprinzip an, da meistens nicht ein bestimmter Raum, sondern ein Raum der eine bestimmte Bedingung erfüllt gesucht wird, und dort einige in Frage kommen und so gleich die Entscheidung getroffen würd, für welchen Raum sich die kleine Entity entschiedet.

Der namenlose(?) Algorithmus, wird z.B. von Grillen verwendet. Das schlimmste für eine Grille ist, wenn sie kein Wasser in der Nähe hat. Gut eventuell ist es auch nicht gut für sie gefressen zu werden, aber Stresshormone gibs jede Menge wenn kein Wasser zu finden ist. Da Grillen im allgmeinen nur sehr begrenzt lernfähig sind und sich nicht so viele Karten zeichnen, haben sie eine andere Technik entwickelt um Wasser zu finden. Sie riechen es. Allerdings sind geruchswahrnehmungen doch sehr ungenau und Einflüsse wie Wind, können die Richtung verfälschen. Deshalb muss die Richtung nicht umbedingt auch gleich dirket zur Quelle führen. Andereseits wird sie zumindest grob in der Richtung sein und nicht etwa in der anderen. Deshalb läuft die Grille los Richtung Geruch. Gerüche sind meines Wissens nach flüchtige Bestandteile in der Luft, was bedeutet, je näher man der Quelle kommt, desto intensiver wird der Geruch. Die Grille bestimmte nun ob das Verhältnis Geschwindigkeit/Geruchsintensitätverhältnis (im weiteren g/g) gut ist, dann stimmt die Richtung. Da sie wohl keine Messeinheiten oder ähnliches hat, und vermutlich die Werte auch nicht konstant sind, muss sie es relativ bestimmen. Dazu dreht sie in eine Richtung ab, wenn dass g/g besser wird, scheint sie sich richtig zu drehen, wenn das g/g schlechter wird, wird sie ab einem gewissen toleranz Wert wieder in die andere Richtung gehen. Sie pendelt sich also zum Ziel hin. Wer mit offnen Augen durch die Welt geht, wird das schon bei sehr vielen Insekten gesehen haben (Ameisen machen es anders!). Nun erkennt man natürlich, ups das ist keine Weg sondern eine Richtungsfindung und es würde sich auch einfacher mit Pointentity lösen lassen oder zumindest mit Vektoren. Dazu muss ich sagen ja. ABER es würde nicht so nett aussehen wenn alle in einer Reihe rennen würden, nein meine Entities sollen rum wuseln und das werden sie mit ein paar Zufallswerten drin fleißig tun.

Das Spiel
Nun aber genug von der Wegfindung, mal was zum Spielprinzip. Erstmal "Warum Entity?". Wie ich oben schon ein oder zwei mal erwähnt hab geht es offensichtlich um Entities, aber scheinbar nicht um das 3d Objekt im allgemeinen, sondern es muss etwas anderes sein. Ich bezieh mich hierbei auf eine ursprüngliche Bedeutung des Wortes, was sich mit "Wesenheit" übersetzen lässt. Die Entities sind ein Stamm von relativ primitiven Wesen, die als Kolonie zusammen leben, vergleichbar mit Ameisen. Allerdings befinden sie sich nicht in einem gewöhnlichen Medium, sondern in einer Art zähflüssigen Schleim. Sprich es ist nicht umbedingt unsere Erde wo sie leben, sondern sie wusseln in ihrer eignen kleinen Welt. Diese Welt kennt etwas vergleichbar mit unserem Winter, in dem die Masse fest wird, blöde Situation wenn man eigentlich da drin rum schwimmt. Dafür haben die Entities ihre Bauten. Ihre Königinnen sind in der Lage kleine Spalten in diesen Raum zu reißen und ermöglicht ihrem Volk so, die Kolonie an einem nicht fest werdenen Ort zu bauen. Blöderweise ist an diesem Ort so gut wie nichts, sprich auch keine Nahrung. Deshalb muss man raus in den fiesen Schleimraum und dort Nahrung sammeln und für die starr Zeit einlagern. Nahrung gibt es in verschiedenen Formen, grundsätzlich können Entities nur weiße Nahrung essen, die ist aber selten. Alle anderen Farben müssen so lange von bestimmten Arten von Entities verdaut werden bis alle Farbwerte vorhanden sind, damit es weiß ergibt. Sprich Gelbe Nahrung hat schon den Wert Rot und Grün, muss also noch von Blau verdaut werden, oder Rote Nahrung muss noch von Grün und Blau verarbeitet werden.

Das Sammeln dieser Nahrung wird indirekt von statten laufen, die Aufgabe des Spieler hierbei ist, Pheromone, die die Entities als Lieder wahrnehmen, so zu verteilen, das es die Entities schaffen, nur mit dem Pendel-Richtungfindungs Algorithmus zur Nahrungsquelle zu kommen. Die Gerüche, ziehen jedoch auch die "Wildtiere" an, die ziemlich gerne Entities essen an. Die tapferen Soldatinnen der Entities können ihr Volk zwar verteidigen, dafür essen sie aber auch viel und arbeiten nicht, sprich sie sind teuer im Unterhalt.
Die Verteidigung der Sammler, ist aber nicht primiäre Aufgabe des Spieles, viel mehr muss der Spieler den bau der Kolonie leiten, für ausreichend Baumaterial sorgen, damit der Bau nicht verfällt und die Geburtenrate regeln. Entities gibt es nämlich in verschieden Formen, so kann zwar jede Arbeiterin alle Aufgabe verrichten, doch tun sie Aufgaben lieber und schneller, für die sie spezialisiert sind. Die Sammlerin, wird besonders stark von den Pheromonen draußen angesprochen und wann immer es sich anbietet wird sie rauswussenl und irgendwas holen. Die Amme hingegen mag das Lied der frisch gelegten Eier und die ersten Kläge der Schlüpfenden lieber und wird eher die Eier in die Brutkammer tragen oder den Jungen aus der Schale helfen, als etwa die Träumerinnen versorgen usw.

So genug davon, wenn es tatsächlich jemand geschaft hat, sich durch all den Text zu kämpfen, vielen dank Very Happy

Aktueller Stand
user posted image

Hier ist der Bau von innen zusehen, die Räume können schon beliebig plaziert werden, wobei sie der Konvention unterliegen, das jeder Raum nur maximal 3 Ausgänge haben kann und die immer im 120° Winkel zu einander stehen. Räume in denen irgendwas weißes rum liegt, sind schon mehr als leere Gänge sondern haben eine Funktion, die man an dem schwarzen Plättchen erkennen kann. Die kleine weiße Rolle im Raum links ist eine Entity Sammlerin, sie hat eben gerade Material gefunden, eingelagert und dann bemerkt das ein Raum repariert werden muss, hat das Material geholt, es in den Raum getragen und verwendet es nun gerade um ihn zu reparieren. Damit hat sie zwar schon alles getan was sie bisher kann, dafür hat sie aber dank des wunderschönen Dijkstra den kürzesten weg genommen Wink
Im moment arbeite ich gerade dadran, das Item "EI" neben "Nahrung" und "Material" einzufügen und die damit verbundenen Auftragsketten (Automaten), sprich von der Königin holen, in die Brutkammer, reifen lassen, in die Schlupfkammer, aus der Schale helfen.