Clonk-Center Titelbild

Clonk Ideen / Zurück zur Basis


[ Ideen lesen | Kategorien ]


AutorN4ppeL
Zeit19.01.2007 21:18:54
KategorieObjekt: Künstliche Intelligenz
Niveau47
Umsetzungenmit Kevda's Script von N4ppeL

Bei dem Befehl "Zurück zur Basis" sollte man, falls man mehrere Basen hat, auswählen können zu welcher er gehen soll. Sonst läuft er einfach zu der, die am nächsten ist, was nicht immer erwünscht ist.

Ich stell mir dies also so vor, dass wenn man mehr als eine Basis hat, ein weiteres Menü erscheint, wo man das dementsprechende Gebäude sieht, in dem die Flagge ist. Dort kann man sich eine beliebige Basis auswählen, und da soll der Clonk dann auch hingehen, wobei er wenn er es z.B. wegen einer überhängender Wand nicht schafft, auch noch (wenn möglich) über einen anderen Weg versucht ans Ziel zu kommen. (Oder dass er dann einfach eine Andere Basis anpeilt O_o)


33 Kommentare


27.01.2008 11:59 von Melmier:
Die Lösung die nächstebste Basis zu nehmen fand ich am besten, aber vll könnte man das entweder mit Menü einrichten oder das man auswählen kann zwischen Nächstbeste Basis größte Basis (vom Wert her)

Damit man nicht so ein Großes Menü hat bei vielen Basen empfehl ich das zweite :)

12.07.2007 14:33 von Speed:
jop beheben bitte

17.05.2007 14:53 von N4ppeL:
hmsk, bei CR tauchen Probleme auf :(

02.02.2007 19:05 von N4ppeL:
habs gleich umgeladen... ^^
bzw done.

02.02.2007 17:42 von Kevda:
jo kannste hochladen

02.02.2007 16:41 von N4ppeL:
Ò.ó
ja ... pwnd -.-
Da hätt ich das alte gar nicht uploaden und als Umsetzung einfügen müssen >.<

Funktioniert, ist toll und... viel besser, sogar mit sounds^^
ich denk des kann ich löschen und falls dus noch nicht selber gemacht hast, lad ich des da hoch, ke?
Zuletzt geändert: 02.02.2007 16:44

02.02.2007 14:14 von Kevda:
Hatte zuviel Zeit und aus langeweile hab ich das mal selbst gemacht :P.
http://bitshare.de/download.php?file=181284
Sollte fehlerfrei sein.

30.01.2007 21:16 von N4ppeL:
Jap, noch nicht geprüft :D

uhm... nur ganz wenig mit Menüs, wobei ich denke, dass es nicht bei den Menükenntnissen happern wird :C
Vielleicht versuch ichs mal... aber hab jetz noch Prüfungen und danach ist Urlaub (bin 1 Woche weg) ich denke vorher werd ich keine Zeit haben :S

>Aber ihr könnt es alle nicht sehen! :PPPPp

ich schon :D
Zuletzt geändert: 30.01.2007 21:17

30.01.2007 21:04 von Kevda:
Ahh bestimmt weil es erst die admins checken müssen ob alles auch legal ist oderso, stimmts? und falls hier wieder ein admin reinschaut, gibt mir die ändern rechte :O

@ n4ppel

Kennst du dich zufällig ein wenig mit dem Scripten von Menüs aus? Dann kannst du ja von Star Empires(oder von meinen geupdateten MagnetTransportSystem) das MenuControl Objekt benutzen um angewählte Gebäude anzuvisieren:P.

30.01.2007 20:57 von boni:
Doch. Aber ihr könnt es alle nicht sehen! :PPPPp

30.01.2007 20:25 von Kevda:
Die Datei existiert nicht @ Umsetzungsdownloadlink
@Featurewunsch: Ist machbar aber bin zu faul jetzt nachzudenken. :P


24.01.2007 17:53 von N4ppeL:
Kevda: ja aber zurzeit hab ich quasi 0 Zeit zuhause an den CPU zu kommen.... :C

@Carsten: ja das stimmt mit den verbündeten. Ist aber eigentlich nicht unbedingt nötig, höchstens erforderlich, bei z.B. cofut. (wer weiss vielleicht funktionierts sogar :D)

Edit: ich bin jetz ma dazu gekommen die Umsetzung von Kevda in ein Objekt zu packen und zu uploaden (da er ja zu faul ist^^)
Und ich habs sogar getestet... geht ziemlich prima :D

Da wär wohl nur noch ein kleiner Futurewunsch: Gebäude an denen ne Flagge hängt irgendwie von anderen solchen Gebäuden (falls es welche hat) hervorheben o.ä.
(und dass man zu Verbündeten latschen kann von Carsten, allerdings sollte auch dies irgendwie gekennzeichnet sein).
Zuletzt geändert: 30.01.2007 15:24

24.01.2007 15:40 von Velkorn:
Wow das ist wirklich eine echt gute Idee!
Schön wäre auch, wenn man Basen von verbündeten anwählen könnte :)
(Dann könnte man auch Handelsrouten machen, man setzt sich in eine Kutsche und lässt sie zum Verbündeten fahren, in der Zeit kann man was anderes machen, wenn sie da ist, könnte ja zum Beispiel eine Meldung kommen. Dann wählt man den Clonk von der Handelsroute und kann dann mit dem Verbündeten tauschen nod . Danach schickt man einfach den Cllonk wieder zurück)
Achja Vote: +

23.01.2007 20:49 von Kevda:
Wisst ihr auch bei wem man sich melden muss wenn das ein bug ist, das bei den Kommentaren kein Ändern angezeigt wird?

@N4ppeL
Das dauert doch nur mindestens 3min sowas zu machen xD.

23.01.2007 20:11 von N4ppeL:
hmke dann mach ich das eben :D
wenn ich wieder mehr Zeit finde :C

23.01.2007 19:52 von Konsti:
Kevda: Lies. Wufür habe ich die Fragen Rubrik gemacht wenn es keiner liest? :|

23.01.2007 18:51 von Stivo:
@ Kevda
Oben bei deinen eigenen Kommentaren kannst du auf [ändern] klicken um ihn zu ändern. Wimni muss man aber eine bestimmte Anzahl Clunker gesammelt haben, um Kommentare ändern zu können -> vielleicht hast du diese Anzahl noch nicht erreicht.

Hier noch einige Verbesserungsvorschläge für dein Script:

- Wenn du schon extra ein Kontextmenü erstellst, solltest du bei CreateMenu() auch den Parameter szCaption angeben (die ID eines Menüsymbols wäre sicher auch nicht schlecht).
- Benutze doch anstatt FindObject() -> FindObjectOwner(), dann kannst du dir die Abfrage mit GetOwner() ersparen.
- "Format("%s",GetName(a))" brauchst du nicht zu schreiben, du kannst einfach "%s" schreiben, da dann automatisch der Namen von idItem verwendet wird.
- Wenn du bei AddMenuItem() noch zusätzlich beim Parameter iExtra 4 und dann bei XPar1 a übergibst, wird das richtige Bild der Basis angezeigt (-> Die ColorByOwner-Färbung des Objekts wird dann in deiner Spielerfarbe angezeigt). ;)
Zuletzt geändert: 23.01.2007 19:01

23.01.2007 18:47 von Kevda:
Hab keine Ahnung wie man Kommentare ändert oder gar löscht.@stivo

23.01.2007 18:45 von Stivo:
@ Kevda
Wiso schreibst du einen neuen Kommentar und verbesserst deinen Fehler nicht gleich?
[Gehe Zu...|Image=CXHM] war schon richtig, es braucht also gar keine Verbesserung.
Zuletzt geändert: 23.01.2007 18:47

23.01.2007 18:29 von Kevda:
ups sehe gerade ein fehler
public func ContextHome(pCaller)
{
  ["Gehe Zu..."|Image=CXHM]

glaube so sollte es richtig sein xD

23.01.2007 17:48 von Kevda:
Ein wenig überarbeitet, aber nicht getestet. Bin zu faul das umzusetzten kannst du machen.


#strict
#appendto CLNK
//made by Kevda/JimiRaynor
public func ContextHome(pCaller)
{
  [Gehe Zu...|Image=CXHM]
  var a;
  CreateMenu(0,0,0,0,0,0,1);
  while(a=FindObject(0,0,0,0,0,OCF_Entrance(),0,0,0,a))
   if(GetOwner()==GetOwner(a))
    AddMenuItem(Format("%s",GetName(a)),"Go2Home",GetID(a),0,0,a,"");
  return(1);
}

public func Go2Home()
{PlayerMessage(GetOwner(),Format("Gehe zu:|{{%i}}%s",GetID(Par(1)),GetName(Par(1))));SetCommand(this(),"Enter",Par(1),0,0,0,0,4);}

22.01.2007 20:45 von N4ppeL:
Hmja, zugegeben ich bin noch Anfänger, aber inzwischen soweit dass ich mich in ziemlich allen Bereichen mehr oder weniger auskenne. Mit Appends hab ich allerdings noch nie gearbeitet und hab auch desshalb davon keine Ahnung wie man die verwenden kann (eben wo man sie hinstellen muss, dass sie wirken) ansonsten ist ja wohl klar, dass se einfach ein Zusatz zu dem Objekt sind das angegeben wird.

Jetz weisst dus :D

öhm und wenn du kurz ein Objekt erstellst ect. schön überall alles umbenennst und änderst usw. dann könntest du dies als Umsetzung anfügen, wenn du zu faul bist, tu ich es ;) .

22.01.2007 20:05 von Kevda:
Ja weiß ich wie gut du dich mit dem Entwicklermodus auskennst :P.

22.01.2007 11:31 von N4ppeL:
O_o sag doch einfach als Objekt/Objektscript

danke!

und @stevi: lass das made so wies ist :)

21.01.2007 14:42 von Kevda:
>(Kann man appendto's ins szen-script tun, oder muss ich jetz ne system.c4g machen? O_o)


Geh einfach in den Entwicklermodus erstell ein neues Objekt ersetze das alte Script mit dem was ich habe und ändere bei der DefCore die Zeile mit Category zu Category=1. Dann noch Objekt aktivieren und man kann zu allen eigenen Gebäuden mit Eingang laufen lassen.

21.01.2007 12:48 von N4ppeL:
Bloodriven: wie gesagt mit dem Bild... Im Menü soll ja ein Bild von dem Gebäude sein, wo die Flagge drin ist(Steinhütte, Kontor ect.) und da man nicht oft massenhaft Schlösser oder Steinhütten mit Flagge drin hat, wird das schon.

Kevda: O_o nice!

(Kann man appendto's ins szen-script tun, oder muss ich jetz ne system.c4g machen? O_o)
Zuletzt geändert: 22.01.2007 11:31

20.01.2007 17:11 von Bloodriven:
Wenn sich das Menu öffnet wie willste denn dann wissen welche Bases welche ist?
Dann müssten die Basen auch Namen haben.
| eigentlich gut |+vote

20.01.2007 16:32 von stevi:
>//made by Kevda/JimiRaynor

Dass änder ich dann bei mir um zu stevi xD
Idee:
Gibts schon wimni im Star Empires pack im Kontexmenü "Gehe zu..." oder so.
Ansonsten + Vote ;)
Zuletzt geändert: 20.01.2007 16:34

20.01.2007 12:07 von Kevda:
Script:

#strict
#appendto CLNK
//made by Kevda/JimiRaynor
public func ContextHome(pCaller)
{
  [$CtxHomeDesc$|Image=CXHM|Condition=HasBase]
  var a;
  CreateMenu();
  while(a=FindObject(0,0,0,0,0,OCF_Entrance(),0,0,0,a))
   if(GetOwner()==GetOwner(a))
    AddMenuItem(Format("%s",GetName(a)),"Go2Home",GetID(a),0,0,a,"");
  return(1);
}

public func Go2Home()
{SetCommand(this(),"Enter",Par(1),0,0,0,0,4);}


Sollte klappen.

20.01.2007 11:03 von Masterboy:
Die Idee gefällt mir gut. Mich stört es auch manchmal, wenn die Clonks zur nächsten Basis laufen.
+ Vote

19.01.2007 22:29 von Deffi:
Naja, aber der Spieler wählt ja vorher noch was aus. Aber ich hab gar nicht an das danach gedacht confused

19.01.2007 22:14 von N4ppeL:
Wieso nicht?
unter KI versteh ich, dass ein Clonk/Lebewesen o.ä. etwas macht, wobei es von keinem Spieler gesteuert wird.

19.01.2007 21:38 von Deffi:
Kann man das als "Künstliche Intelligenz" bezeichnen? Irgentwie ja nicht, ne?