Gibt es eine Walkmap abfrage?

Das Board für Schwierigkeiten beim Adventure-Machen und zum Melden von Bugs
Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Gibt es eine Walkmap abfrage?

Post: # 73009Post Wuji
22 Feb 2009, 16:36

Hallo
Mein Problem:
Ich will ein Character uber eine Map gehen lassen das Funktioniert auch
ich will aber einen Skript machen in dem Steht auf welchen Punkten Der Character steht im Moment . Klar kann ich WalkmapScripte machen aber
Das sind so 300 Stück und ich müsste die alle verändern
Kann man mir Helfen

Baelavay
PaC-DK God
Posts: 1168
Joined: 04 Jun 2006, 19:24
Contact:

Post: # 73010Post Baelavay
22 Feb 2009, 17:34

Ich habe dir zwar schon im Messenger geantwortet, aber weil hier die Frage im Raum steht:

if_num(char:x;*edit: Pixelwert)
if_num(char:y;*edit: Pixelwert)
Last edited by Baelavay on 22 Feb 2009, 20:49, edited 1 time in total.

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73012Post Zimond
22 Feb 2009, 20:40

das ist so aber nicht korrekt :

charx (und nicht char:x) verlangt pixel koordinaten, korrekt wäre die abfrage :

setnum (walkx ; [charx:deinchar])
setnum (walky ; [chary:deinchar])
setnum (walkx ; [walkx] / walkmapgröße)
setnum (walky ; [walky] / walkmapgröße)

if_num (walkx ; gewünschter wert ect)

Die Walkmap größe richtet sich nach deiner Auflösung des Spiels und ob du eine Doppelte Walkmap benutzt.

Bei normaler :

320er : 10 Pixel
640er : 20 Pixel
800er : 25 Pixel
1024er : 32 Pixel

bei doppelter halbiert, um durch 12,5 teilen zu können wenn du 800x600 mit doppelter Walkmap verwendest :

setnum (zwölffünf ; 25/2)

Baelavay
PaC-DK God
Posts: 1168
Joined: 04 Jun 2006, 19:24
Contact:

Post: # 73013Post Baelavay
22 Feb 2009, 20:48

Manual wrote:[charx] und [chary] sind die aktuelle Position des aktiven Characters in Pixel.
Ah, dabei steht es auch so im Handbuch. Danke Zimond, ich verbessere das mal :doh: Wer liest schon das Kleingedruckte xD

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73017Post Wuji
23 Feb 2009, 16:50

hi ich habs hinbekommen funktioniert jetzt auch die Perfekten Punkte bekomme ich wenn ich Pixelpos./20 teile und das Ergebnis +0,5 nehme
aber Pacdk hat zumindest bei mir eine abneigung gegen komma Zahlen
in Variabeln - War das schon immer so ? -NA ja es funktioniert auch mit 20 .

Schiman
PaC-DK God
Posts: 1177
Joined: 20 Dec 2006, 21:48
Contact:

Post: # 73018Post Schiman
23 Feb 2009, 17:24

Mach doch einfach + 1/2. Das hat bei mir zumindest immer funktioniert.

Ich musste bei meinem Kampfskript, wo ja auch ne Menge Walkmap-Abfragen sind, auch eine Nuance zu dem /20 hinzufügen, damit es wasserdicht funzt.

Wieviel das war weiß ich aber nicht mehr^^, und jetzt nachsehen hab ich grad kein Bock :mrgreen:

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73026Post Wuji
24 Feb 2009, 15:22

Hallo
Da ich fand es lohnt sich nicht eine ein neues Topic aufzumachen hier mein neues Problem : :mrgreen: :pcprob:

Code: Select all

If_num(G1a;0)
    {
    setnum(G1a;1)
    playsound(reaktor;100)
    setstring(SString;Arbeitet)
    ifnot_num(CharX:Generator1;[Charx:Drone[D])
     walkto([DString];[CharX:Generator1]/20+1/2;[CharY:Generator1]/20+1+1/2;2)
    ifnot_num(CharY:Generator1;[CharY:Drone[D])
     walkto([DString];[CharX:Generator1]/20+1/2;[CharY:Generator1]/20+1+1/2;2) ]
-bis hier hin wird die Function abgespielt -Warum? 
    BeamtO([Dstring];Ablage;1;1;1) 
    timer(15)
    Beamto([Bstring];Map1;[CharX:Generator1]/20+1/2;[CharY:Generator1]/20+1+1/2;1)
    }
Beamto und timer werden nicht mehr ausgeführt Warum?
Das ist eine Infinit Function

Schiman
PaC-DK God
Posts: 1177
Joined: 20 Dec 2006, 21:48
Contact:

Post: # 73027Post Schiman
24 Feb 2009, 15:52

Ist die Großkleinschreibung egal? Habs noch nie ausprobiert. Auf jeden Fall würde ich beamto klein schreiben.
Außerdem verwendest du die Variablen [Charx:Drone[D] und [CharY:Drone[D].
Irgendwie bezweifle ich, dass das mit der eckigen Klammer da drin funktioniert.

Dass kein Fehler ausgespuckt wurde ist komisch.

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73029Post Zimond
24 Feb 2009, 16:32

[Charx:Drone[D]

Das kann so auch nicht richtig funkionieren. [Charx:Drone[D]] übrigens im Moment auch noch nicht, erst mit dem nächsten Update gehen zwei eckige Klammern generell ineinander.

Die üblichen Fragen :

Bist du sicher das nicht nur der beamto sondern wirklich auch der Timer nicht ausgeführt wird? (Gegentest : Den Beamto gegen ein quit() austauschen und schauen ob sich das Spiel nach 15 Sekunden beendet)
Sind alle möglichen X/Y Koordinaten die dabei rauskommen können auf allen möglichen Räumen die in Bstring drin sein können auch freigelegt? Wenn Beamto einen Char auf eine blockierte Walkmapposition schicken soll macht der Befehl einfach gar nichts.
Dass kein Fehler ausgespuckt wurde ist komisch.
Auf die korrekte Anzahl der eckigen Klammern wird nicht geprüft nur auf runde und geschweifte. Könnte ich aber eigentlich auch testen lassen, schießlich müssten auch diese immer paarweise auftreten sonst kann was nicht stimmen.

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73030Post Wuji
24 Feb 2009, 16:53

pacdK ist die Großkleinschreibung völlig egal Genau wie Mir ^^
Die Eckigen Klammern funktionieren überall und ich mach das auch überall.Das Problem ist der Skript läuft ab dem Walk nicht mehr weiter
wie als ob danach ein Break() käme. Ich denke das liegt daran das Generator1 ständig in Millisekunden seine Position ändert und der [DString] bricht den Skript ab und Versucht nochmals die Position ein zu nehmen immer und immer wieder Hat einer ne idee ????? :pcprob:

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73031Post Wuji
24 Feb 2009, 17:02

Zimond wrote:[Charx:Drone[D]

Das kann so auch nicht richtig funkionieren. [Charx:Drone[D]] übrigens im Moment auch noch nicht, erst mit dem nächsten Update gehen zwei eckige Klammern generell ineinander.

Die üblichen Fragen :

Bist du sicher das nicht nur der beamto sondern wirklich auch der Timer nicht ausgeführt wird? (Gegentest : Den Beamto gegen ein quit() austauschen und schauen ob sich das Spiel nach 15 Sekunden beendet)
Sind alle möglichen X/Y Koordinaten die dabei rauskommen können auf allen möglichen Räumen die in Bstring drin sein können auch freigelegt? Wenn Beamto einen Char auf eine blockierte Walkmapposition schicken soll macht der Befehl einfach gar nichts.
JA ja [color=red]das[/color] Skript hält an das hab ich vergessen zu sagen
da muss noch ein playsound hinter das walkto aber das wird nicht abgespielt timer funct ebenfalls nicht
if_charin([DString];Map1)
{
(*Generator*)
If_num(G1a;0)
{
setnum(G1a;1)
setnum(GX;[CharX:Generator1]/20+1/2)
setnum(GY;[CharY:Generator1]/20+1/2)
setstring(SString;Arbeitet)
walkto([Dstring1];[GX];[GY];2)
beamto([Dstring1];Ablage;1;1;1)
playsound(reaktor;100)
setnum(D;+1)
timer(15)
beamto([Bstring];Map1;[GX];[GY]+1;1)
}
Skript leicht verändert funktioniert immer noch nich


Noch eine andere Frage : Wie steigt man im Rang auf?
Das Tutorial Reader verletzt mich so ein bisschen im Ehrgefühl
ich benutzte Pacdk seit 3 jahren und brauche keine Tutorial mehr .
ich hab nur vor kurzen das Forum endeckt.
Und das ich noch kein Spiel rausgebracht habe liegt daran
das ich alles immer 100 mal verbessere und etwas nie perfekt finde. :roll:
Last edited by Wuji on 24 Feb 2009, 17:37, edited 1 time in total.

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73032Post Zimond
24 Feb 2009, 17:26

Der Rang ist nur abhängig mit deinen Posts hier im Forum, ab 100 gibt es nen neuen.

Läuft denn der Char überhaupt Richtung [gx] und [gy]? Der Beamto danach zur Ablage geht auch noch?

HeXoR
Foren Raubein
Posts: 433
Joined: 27 Mar 2006, 01:23

Post: # 73033Post HeXoR
24 Feb 2009, 17:33

Wuji wrote:der Skript
[klugscheißen]Es heist "das Skript". 8) [/klugscheißen]
MfG
HeXoR
[img]http://www.hexorarts.de/gifs/Gifs/smily629.gif[/img][img]http://www.hexorarts.de/gifs/Gifs/smily630.gif[/img]

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73035Post Wuji
24 Feb 2009, 17:35

Zimond wrote:Der Rang ist nur abhängig mit deinen Posts hier im Forum, ab 100 gibt es nen neuen.
Und wie kommt man an den RAng von CHaos ?
_off_topic: Wer was zum Lachen braucht. Der ist echt ein Spasti was der sich erlaubt :doh:


Zimond wrote: Läuft denn der Char überhaupt Richtung [gx] und [gy]? Der Beamto danach zur Ablage geht auch noch?
Character läuft richtig
beamto in Ablage funktioniert nicht und der rest

HeXoR
Foren Raubein
Posts: 433
Joined: 27 Mar 2006, 01:23

Post: # 73036Post HeXoR
24 Feb 2009, 17:59

Wuji wrote:Und wie kommt man an den RAng von CHaos ?
Sowas bekommt man wenn man sich unangemessen Verhält oder in Threads die eigentlich ein anderes Thema beinhalten doofe Fragen über etwas föllig anderes stellt (mehrfach!).
MfG
HeXoR
[img]http://www.hexorarts.de/gifs/Gifs/smily629.gif[/img][img]http://www.hexorarts.de/gifs/Gifs/smily630.gif[/img]

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73037Post Zimond
24 Feb 2009, 18:12

oder wenn man immer raue ungehobelte Antworten gibt ;)

Nein, kurz dazu : Foren Ränge funktionieren grundsätzlich erst mal nach Post Anzahl und haben nichts damit zu tun wieviel Ahnung du tatsächlich hast. Das ist mehr als Gag als wie eine wirkliche Bezeichnung zu sehen. Wer viel schreibt muss ja nicht zwingend viel Ahnung haben. Die Spezialränge kann der ForenAdmin (meine Reichlichkeit) einzelnen Leuten seperat verpassen wenns dazu einen Grund gibt. Wenn du gerne einen haben möchtest kannst du mich ja freundlich per PM bitten mit Vorschlag.

So, back 2 topic :

Da du das noch nicht eindeutig bejaht hast nochmal die Frage. Ist in der Walkmap des Raumes Ablage die Position 1/1 auch "Frei"? Sonst passiert kein beamto. Wenn die Antwort : "Ja ist frei"lautet dann mach bitte folgenden Test : Um herauszufinden ob einzelne Befehle nicht gehen oder das Skript gar nicht erst bis dort läuft füge ganz am Ende des Skripts quit() ein. Beendet sich das Spiel nicht muss irgendetwas das Skript vorzeitig abbrechen.

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73038Post Wuji
24 Feb 2009, 18:52

ich hab das mit dem Quit an jeder stelle des Skriptes getestet aber nach dem walkto hört es auf.
ich hab sogar dontwait bei walkto eingegeben aber er führt die Befehle darunter trozdem nicht aus
Der Ablage raum Ist eine Ablage für character in im Schlummern bis jetzt 43 Charactere Er wird nie Geladen un jedes Walkmap feld ist frei
Das walkto ist wie Break()

@Zimond wenn mir ein Name einfällt meld ich mich ^^ 8)

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73039Post Zimond
24 Feb 2009, 19:39

an welchen Stellen wird diese Funktion gestartet und sofern sie looped wo wird sie wieder gestoppt?

Ich sehe eventuell folgendes Problem : Ein Walkto ohne den Zusatz "dontwait" sorgt auch in einer Funtion dafür das gewartet wird. Sie läuft also nach dem Walkto erst dann weiter wenn der Char sein Ziel erreicht hat. Wenn die Funktion aber während dessen wieder gestoppt wird wird der Rest nicht ausgeführt.

Zweite Theorie : Startest du diese Funktion mehrfach um mehrere Chars zu bewegen indem du vorher nur die Strings verändert? Das wird auch nicht gehen (und wird mir dem nächsten Update unterbunden, sprich mehrere gleiche Funktionen parallel zu starten, macht nur Ärger)

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73040Post Wuji
24 Feb 2009, 20:26

wie schon gesagt es ist eine infinit function
sie wird im Start skript gestartet und nie beendet.
ich hab das ganze jez mit ner bool verbunden
if_bool(...;true)=Skript läuft
if_bool(...;false)=Skript läuft nicht

bool wird auf true gestellt wenn die Drone geaddet wird

Function wird zu 100% einfach gestartet

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Post: # 73041Post Zimond
24 Feb 2009, 22:55

mmh. so kommen wir nicht richtig weiter. Könntest du nen export erstellen und mal hochladen (den link kannst du mir ja per PM schicken damit ihn nicht jeder sieht) Über rapidshare oder ähnliches.

HeXoR
Foren Raubein
Posts: 433
Joined: 27 Mar 2006, 01:23

Post: # 73043Post HeXoR
24 Feb 2009, 23:03

Zimond wrote:oder wenn man immer raue ungehobelte Antworten gibt ;)
Und ich dachte immer, ich hätte den Titel wegen doofen Fragen bekommen. :roll:

So für mich gilt nun auch back 2 Topic:
MfG
HeXoR
[img]http://www.hexorarts.de/gifs/Gifs/smily629.gif[/img][img]http://www.hexorarts.de/gifs/Gifs/smily630.gif[/img]

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73048Post Wuji
25 Feb 2009, 20:21

Ich hab das Ding mal hochgeladen und den link Zimond geschickt

Jetzt ist es in PAC-DK Uber-Godfather Hand 8)

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73057Post Wuji
27 Feb 2009, 14:26

Können mehrere Character auf dem gleichen Walkmap Punkten stehen ?

Baelavay
PaC-DK God
Posts: 1168
Joined: 04 Jun 2006, 19:24
Contact:

Post: # 73058Post Baelavay
27 Feb 2009, 14:31

Nein, außer du hast höchstens einen Charakter dabei, bei dem der Geistmodus im Charakterfenster deaktiviert ist.

Wuji
Adventure Enthusiast
Posts: 223
Joined: 07 Dec 2008, 17:25
Contact:

Post: # 73060Post Wuji
27 Feb 2009, 14:54

ok gut das hat jez für mein Spiel vor und NAchteile aber ok es lässt sich leicht lösen

Post Reply