AntMe! Workshop 8 April 2016

Ähnliche Dokumente
AntMe! Mentoring WiSe 2016/17

AntMe! - Tipps & Tricks

Handbuch. TC3 Remote Manager. TwinCAT 3. Version: Datum:

Einführung in AntMe!

Tutorial: Verwendung von Visual Studio 2005 als XML-Werkzeug

C-Programme kompilieren mit Visual Studio Express

Anleitung um Lieder in 432Hz Kammerton umzuwandeln

Gobales Gedächtnis. AntMe. Sebastian Loers. lb-sys.info. Projekt: AntMe - Globales Gedächtnis (Version 1.0)

Installation von Zertifikaten. Vertrauensstelle nach 299 SGB V

BOSSModeler - User Manual

Exchang mit Outlook 2016 für Mac

Exchang mit Outlook 2016 für Mac

Einführung in den Seminarordner für Teilnehmerinnen und Teilnehmer

Exchang mit Outlook 2011 für Mac

Kurzanleitung Projektvorlage

Extrahieren eines S/MIME Zertifikates aus einer digitalen Signatur

Microsoft Visual C

Tutorial - BETAVERSION

Hinweise zum Programm Überprüfung des Betriebszustandes von Kläranlagen. Bitte prüfen Sie regelmäßig den aktuellen Stand der Software im Internet!

Richtig Mappen mit MEd

Tutorial 7 TEIL 1/2. Untersuchung von ebusiness Anwendungen auf der Basis des IBM WebSphere Developer V 7.0

Hilfe zur Aktivierung des Benutzerkontos für den Zugriff zum Daimler Mitarbeiter-Portal über das Internet

MMS - Update auf Version 4.3 (beinhaltet Update auf v4.2) Neuerungen: 1. Menü derzeitiger Status wurde erweitert

Projektumgebung unter Inventor 2015

3. Boxcryptor Speicherorte festlegen

Einführung in Truevision3D

Kurzanleitung Projektverwaltung

Zusatzoption: Aktuelle Meldungen Erstellung einer Vorlageseite für die Meldungen

Microsoft Visual C

Stapelverarbeitung mit Adobe Acrobat Professional. Leibniz Universität IT Services Anja Aue

FreeQDA. Eine freie Software zur Analyse qualitativer Forschungsdaten. Anleitung. von Jörg große Schlarmann. und Dirk Kitscha

Kodieren mit NCS Dummy

3 Geoverarbeitung mit dem ModelBuilder

1.2 Lehrer-Webmail (Exchange)

Konfiguration von Mozilla Thunderbird

HANDBUCH. für die Arbeit auf den Portalen der SolDaCon UG. Version 1.1 Stand Handbuch SolDaCon 1.1 1

CSV-Import von Kontakten. Leicht gemacht

Das neue epaper. Saarbrücker Zeitung & Pfälzischer Merkur

Komponenten und Komponententypen

TeamDrive Outlook-Plugin für Windows

Hilfe zur Aktivierung des Benutzerkontos für den Zugriff zum Daimler Mitarbeiterportal über das Internet

Handout Exchange 2013 OWA Anleitung und Konfiguration

1. Schritt: Musik von CD mit CDex in wav-datei wandeln.. Seite Schritt: WAV-Datei verkleinern mit dem Audiorecorder..

Kurzanleitung für den MyDrive Client

> Öffne den Ordner, in den du Visual Studio untergebracht hast (z.b. C:\PROGRAMME\VISUAL STUDIO).

Bilder für die neue Homepage komprimieren

b.i.m.m PRINTMANAGER 2013

Anleitungen. Inhaltsverzeichnis. 1. Allgemeine Informationen

Zotero Kurzanleitung. Inhalt kim.uni-hohenheim.de

DaKirsche Desktop.ini Maker 2

Anleitung zur Installation von PGP auf Linux v1

Tobias Wolf Seite 1 von 19

Philosophische Fakultät Dekanat. Universität zu Köln

Update-Anleitung Tarmed 1.08_BR per

Neue Dateien zu einem bestehenden Katalog hinzufügen

Das Mailprogramm em Client

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Die Datenquelle anlegen

Arbeitsblatt 5 EAD II NetBeans

Kurzanleitung creator 2.0

Freigeben des Posteingangs oder des Kalenders in Outlook

Faulhaber Schulmaster Admin

Tutorial: Eigene Module und Extensions entwickeln. version: 0.1 Author: Anja Beuth

Repair Guide für das tolino tab 8

Erstellen einer Powerpointpräsentation. Schultz Informatik / Programmierung HH2 1

Microsoft 2010 Express/Beispiel für Grafische Oberflächen

Visual Basic Express Kompilieren mit Skripten

Öffnen und Hochladen von Dokumenten

Kurzanleitung creator 2.0

Bietersicht Lieferant myfutura

Mit dem Explorer arbeiten

Webseiten bauen mit Primolo

Handlungsanleitung MKTT für die Turnierserie

Handbuch für die Erweiterbarkeit

Handbuch TweetMeetsMage

ELO Click & Find. Technische Dokumentation ELO Click & Find. Inhalt. [Stand: Programmversion: ]

Handbuch für die Homepage

Verknüpfen & Einbetten von Daten

Dokumentation zur Benutzung der ESS SAP Berichte

eigenes Profil Ansichten für verschiedene Zielgruppen

Anleitung OpenCms 8 Direktes Editieren

Software. Die Erste. C o m p u t e r G r u n d w i s s e n Te i l I I. S o f t w a r e. H a r d w a r e. C D / D V D B r e n n e n.

Profi Cash - Wechsel der HBCI-Chipkarte (von alter auf neue VR-NetWorld Card)

OWA Benutzerhandbuch. Benutzerhandbuch Outlook Web App 2010

Software im Rechenzentrum: PDF Tools

Konfiguration von Outlook 2010

Ihr Name: Massen- Globalmutation via Export und Re- Import

NovoSales. Kurzanleitung: Angebots PDF

Kurzanleitung Projektverwaltung

Handbuch Listengenerator Listengenerator

TortoiseGit Step by Step Step 1: git for windows herunterladen und installieren.

Einrichtung von Outlook 2000 und Import alter s

Smart Browser. Einfaches Verwalten, Suchen und Einfügen von Revit-Familien. Kompendium

Programmieren? Das kann ich auch! Bau dir deine interaktive Bildergeschichte

Allplan BCM / NEVARIS Datenmigration Allplan BCM -> NEVARIS

Auswertung erstellen. 1 Modul Auswertung öffnen. 2 Schulname ändern

Bedienungshandbuch IP ALKIS Karte

xdsl Teleworker unter Windows XP

Hilfe Energielabeling

Transkript:

Hilfestellungen 1. Starthilfe Unter Start Programme findest du AntMe! und kannst es starten. Überprüfe nach dem Starten, ob unter Einstellungen/Plugins (Settings/Plugins) das Freie Spiel und die 3D-Ansicht ( Free Game und 3D View ) aktiviert sind. Nach Aktivierung solltest du entsprechende Reiter im Menü angezeigt bekommen. Anschließend gehe auf den Tabellenreiter Freies Spiel ( Free Game ) und wähle bei einem beliebigen Slot das Ordnersymbol aus. Es öffnet sich ein neues Fenster, wo du Beispielameisen findest. Dort einfach auf das Hinzufügen-Symbol klicken. Jetzt öffnet sich ein neues Fenster, indem du den Namen deines Volkes eingeben kannst und den Speicherort findest. Speicherort an dem Pool-Rechner: C:\Users\<username>\My Documents\Visual Studio 2010\Projects\<volkname> Nachdem du dein Volk erstellt hast, wirst du gefragt, ob du diese in der Entwicklungsumgebung öffnen willst. Dies ist im POOL (teilweise) NICHT MÖGLICH. Daher musst du deine Ameise manuell öffnen, indem du zum Speicherort gehst und dort die Projektdatei öffnest <volkname>.csproj. Dabei wird sich Visual Studio automatisch öffnen. Nun ist es fast geschafft! Wähle im Projektmappen-Explorer(Solution Explorer) an der rechten Seite die C#-Datei mit den Namen deines Volkes aus, um dein Volk zu bearbeiten. Ein Prototyp für eure Ameisen findet ihr auf: http://www.soenke-berlin.de/antme Um dein Volk zu laden, drücke auf die Startschaltfläche. Sollte der folgende Fehler auftreten: 1

Dann Rechtsklick auf die Projektmappe ganz oben im Projektmappen-Explorer (Solution Explorer) und gehe auf die Eigenschaften(Properties): Dort unterm Abschnitt Konfiguration Eigenschaften (Configuration Properties) ein Haken setzen bei Erstellen (Build). Nun sollte der Fehler nicht mehr auftauchen und du kannst dein Ameisenvolk laden. 2

2. Abgabe Damit später eine eindeutige Zuordnung der Ameisenvölker stattfinden kann, bearbeitet bitte die Spielereigenschaft: Original [Spieler( Angepasst [Spieler( Volkname = "Meine erste C#-Ameise", Vorname = "", Nachname = "" Volkname = "ProtoMeise", Vorname = "Dein_Name", Nachname = "Team ErstiWoche" Wenn ihr euer Ameisenvolk gegen andere antreten lassen wollt, findet ihr in eurem Projektordner im Ordner bin die benötigte DLL-Datei: C:\Users\<username>\My Documents\Visual Studio 2010\Projects\<volkname>\bin Dort befindet sich durch das Erstellen eurer Ameise eine DLL-Datei AntMe.Player.<volkname>.dll Tipp des Tages Eure Ameisen bleiben am Ameisenbau stehen und bewegen sich nicht? Wie wäre es bei public override void Wartet() erstmal ein GeheGeradeaus(); zu schreiben? Ihr möchtet weitere Tipps haben und Beispiele sehen? Wir haben für euch eine simple Beispiel Ameise, die ProtoAmeise, erstellt an der ihr euch orientieren könnt. Zu finden auf: http://www.soenke-berlin.de/antme 3

3. Nahrung Äpfel sind schwer, so dass sie mehrere Träger benötigen. PROBLEM: Wenn ein Apfel von 10 Ameisen getragen werden kann, ist es zwar möglich, weitere Ameisen zum Apfel zu schicken. Jedoch ändert sich nichts mehr an der Geschwindigkeit und zudem wird der Apfel von mehr Ameisen getragen als notwendig sind. LÖSUNG: Es ist daher sinnvoll eine Abfrage einzubauen, die andere Ameisen nur dann zum Apfel lockt, wenn dieser noch Träger braucht. Dies kann zum Beispiel so aussehen: public override void Sieht(Obst obst) if (BrauchtNochTräger(obst)) if (Ziel == null) GeheZuZiel(obst); 4. Markierungen Die Funktion SprüheMarkierung(..) kann zur Informationsübermittlung verwendet werden. Dabei wird im ersten Parameter die Information über das Ziel gespeichert. Dies kann eine beliebige Integerzahl sein. In der Funktion RiechtFreund(..) werden die einzelnen Möglichkeiten der Markierungsinformation ausgelesen und die Ameise wird entsprechend instruiert. Da aber auch die Möglichkeit besteht, innerhalb der Informationsvariablen die Richtung eines Zieles zu speichern (beispielsweise bei der Ameisenstraße), sollte man sich eine entsprechende Codierung der Information überlegen. So könnte dann beispielsweise der Code aussehen: public override void RiechtFreund(Markierung markierung) if (Ziel == null && markierung.information == 1001 && Kaste == "Kämpfer") GeheZuZiel(markierung); if (Ziel == null && markierung.information < 1000 && Kaste == "Sammler") DreheInRichtung(markierung.Information); GeheGeradeaus(); In der ersten If-Abfrage wurde ein Feind mit der Zahl 1001 als Information der Sprühmarkierung übergeben und soll nur von den Kämpfern beachtet werden. In der zweiten If-Abfrage hingegen wurde die Richtung in der Sprühmarkierung als Information übergeben und nun können die Sammler dieser Markierung folgen. 4

5. Spezialisierung Ein Ameisenvolk besitzt Ameisen, die unterschiedliche Berufe ausüben. Dies kann mittels der Kaste in AntMe! gestaltet werden. Die Standardkaste sieht wie folgt aus: [Kaste( Name = "Standard", GeschwindigkeitModifikator = 0, DrehgeschwindigkeitModifikator = 0, LastModifikator = 0, ReichweiteModifikator =0, SichtweiteModifikator =0, EnergieModifikator = 0, AngriffModifikator = 0 Dieser Block kann kopiert und nach Belieben geändert werden. Dabei muss jedoch die Summe insgesamt 0 ergeben. So könnte eine Kämpfer-Kaste zum Beispiel aussehen: [Kaste( Name = "Kämpfer", GeschwindigkeitModifikator = 0, DrehgeschwindigkeitModifikator = -1, LastModifikator = -1, ReichweiteModifikator = -1, SichtweiteModifikator = -1, EnergieModifikator = 2, AngriffModifikator = 2 Unter den Bereich Kaste kann nun bestimmt werden, wie viele Ameisen einer Kaste erschaffen werden sollen. Informationen über die Anzahl der Ameisen einer Kasten werden im Dictonary<string, int>anzahl gespeichert. So kann über den Kastennamen die Anzahl der Ameisen dieser Kaste ermittelt werden. Damit kann in der Funktion BestimmeKaste(..) festgelegt werden, zu welcher Kaste eine Ameise gehören soll und wie viele Ameisen einer Kaste existieren sollen: public override string BestimmeKaste(Dictionary<string, int> anzahl) if (anzahl["kämpfer"] < 25) return "Kämpfer"; else return "Standard"; Hat man die Kasten erstellt und die Anzahl festgelegt, müssen nun die entsprechenden Bereiche angepasst werden. Dies geschieht mittels eines Vergleiches auf die Kaste (Kaste == "Kämpfer"). Zum Beispiel innerhalb des Bereiches Kampf: public override void SiehtFeind(Wanze wanze) if (Ziel == null && Kaste == "Kämpfer") SprüheMarkierung(1001, 150); if (AnzahlAmeisenDerSelbenKasteInSichtweite > 5) GreifeAn(wanze); 5