Episode 34: Helden des Tages

Das Mitmach-Projekt aus dem Maniac-Mansion-Universum.
Antworten

Was haltet ihr von den "Helden des Tages"

1 Punkt (mies)
0
Keine Stimmen
2 Punkte
0
Keine Stimmen
3 Punkte
0
Keine Stimmen
4 Punkte
1
2%
5 Punkte (toll)
61
98%
 
Insgesamt abgegebene Stimmen: 62

[ZENSIERT]
Adventure-Gott
Adventure-Gott
Beiträge: 4575
Registriert: 13.07.2004, 14:04
Wohnort: Da wo muss
Kontaktdaten:

Beitrag von [ZENSIERT] »

Nachmacher :P
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge

Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.

Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Benutzeravatar
neon
Adventure-Treff
Adventure-Treff
Beiträge: 30025
Registriert: 08.07.2004, 10:55
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von neon »

Ich wollte keine 23 Seiten thread durchlesen, kann sein daß es schon gefixt ist, aber ich bekomme eine Fehlermeldung in Zeile 2271 Face Character: Invalid Character specified.

Falls das schon erledigt ist, vergesst es einfach.
"Ich habe mich so gefühlt, wie Sie sich fühlen würden, wenn sie auf einer Rakete sitzen, die aus zwei Millionen Einzelteilen besteht - die alle von Firmen stammen, die bei der Regierungsausschreibung das niedrigste Angebot abgegeben haben"

- John Glenn nach der ersten Erdumrundung 1962
Benutzeravatar
SeltsamMitHut
Profi-Abenteurer
Profi-Abenteurer
Beiträge: 798
Registriert: 22.06.2004, 21:54
Wohnort: Arkham

Beitrag von SeltsamMitHut »

neon hat geschrieben:Ich wollte keine 23 Seiten thread durchlesen, kann sein daß es schon gefixt ist, aber ich bekomme eine Fehlermeldung in Zeile 2271 Face Character: Invalid Character specified.
Ist glaube ein typischer AGS-Fehler. Der Charakter mit dem etwas gemacht wird ist angeblich nicht im Raum (kam schon mal vor, wenn man Achmed das Rad gegeben hat, glaub ich). :?
I was frozen today!
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Hört sich für mich aber eher nach einem typischen Programmierfehler an.

Aber dicken Respekt an Edison Interactive, derart viel Code praktisch bugfrei zu halten.
Use gopher repellent on funny little man
Benutzeravatar
Edison Interactive
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 130
Registriert: 23.07.2005, 16:02

Beitrag von Edison Interactive »

neon hat geschrieben:Ich wollte keine 23 Seiten thread durchlesen, kann sein daß es schon gefixt ist, aber ich bekomme eine Fehlermeldung in Zeile 2271 Face Character: Invalid Character specified..
Wenn du es nochmal machst, dürfte es einwandfrei klappen...
SeltsamMitHut hat geschrieben: Ist glaube ein typischer AGS-Fehler. Der Charakter mit dem etwas gemacht wird ist angeblich nicht im Raum (kam schon mal vor, wenn man Achmed das Rad gegeben hat, glaub ich). :?
khrismuc hat geschrieben:Hört sich für mich aber eher nach einem typischen Programmierfehler an.
Das seltsame ist, dass das dann ein Programmierfehler ist, der unter gleichen Bedingungen sowohl auftritt alsauch nicht, du kannst es mehrmals versuchen, meistens klappt es, manchmal nicht...

Denn Achmed und Bernard sind im Raum. Warum dann einer von beiden "invalid" ist, können wir nicht nachvollziehen. Bernard ist "PlayerCharakter" und Achmed wird angeklickt. Und sie sind die einzigen beiden, auf die "FaceCharacter" angewendet wird...

Es ist einer von 2 sehr seltsamen Fehlern, die auch in anderen MMM Teilen gelegentlich vorkommen. In den meisten Fällen tritt dieser Fehler nicht auf. Wir beobachten ihn beim Benutzen eines Objektes oder beim Geben eines Objektes an einen Charakter.

Man benutzt z.B. ein Inventory Item mit irgendwas und fliegt raus, weil der Gegenstand nicht im Inventar ist (Player does not have anything of that...), obwohl schon der Klick auf den Item eigentlich vorraussetzt, dass man den Gegenstand besitzt.
Ähnlich bei dem Charakter. Denn Achmed ist ja im Raum, wenn man ihm das Rad gibt - sonst könnte man ihn ja nicht anklicken, das gebietet die Logik. Außerdem wird ja ein Script ausgeführt, das dem jeweiligen Charakter zugeordnet ist...


Sind deshalb auch schon aus einigen anderen Episoden rausgeflogen... haben aber keine Ahnung, woran das liegen kann, wenn nicht an AGS...
[ZENSIERT]
Adventure-Gott
Adventure-Gott
Beiträge: 4575
Registriert: 13.07.2004, 14:04
Wohnort: Da wo muss
Kontaktdaten:

Beitrag von [ZENSIERT] »

Ich kenne die Lösung, ich schick's euch gleich per PN
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge

Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.

Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Wird eventuell am Starterpack liegen, oder?

[ZENSIERT], ich würde auch gerne wissen, was die Lösung ist.
Use gopher repellent on funny little man
[ZENSIERT]
Adventure-Gott
Adventure-Gott
Beiträge: 4575
Registriert: 13.07.2004, 14:04
Wohnort: Da wo muss
Kontaktdaten:

Beitrag von [ZENSIERT] »

Na gut, dann zitiere ich mal eben die PN:
[ZENSIERT] hat geschrieben:Das Problem ist, dass AGS nach dem Geben selbst versucht, den Spieler auf den Charakter zu drehen, auf dem die Maus ist. Ist aber kein Charakter unter der Maus, bricht das Spiel logischerweise ab, da es nicht weiß, zu welchem Charakter der Spieler sich noch drehen soll.

Die ausschlaggebenden Zeilen sind diese:

Code: Alles auswählen

  if (arrived > 0)
  {
    // characters only face each other after the moving character arrived at the target point
    if (NPCfacesplayer == 1)  FaceCharacter (charid, playerchar);
    FaceCharacter (playerchar, charid);
  }
Ersetzt sie einfach durch:

Code: Alles auswählen

  if (arrived > 0)
  {
    // characters only face each other after the moving character arrived at the target point
   /* if (NPCfacesplayer == 1)  FaceCharacter (charid, playerchar);
    FaceCharacter (playerchar, charid); */
  }
Und die Sache wär gelutscht ;)

Sollte was schief gehen einfach /* und */ wieder entfernen
Ich bin mir aber nicht 100%-ig sicher...
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge

Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.

Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Ich denke, dass es eher an dieser Zeile (1883) liegt:

Code: Alles auswählen

if (type == 2 || type == 6) FaceCharacter (GetPlayerCharacter (), GetCharacterAt (mouse.x, mouse.y));
Ist aber das selbe Problem. GetCharacterAt() liefert u.U. keinen Charakter mehr zurück.
Use gopher repellent on funny little man
[ZENSIERT]
Adventure-Gott
Adventure-Gott
Beiträge: 4575
Registriert: 13.07.2004, 14:04
Wohnort: Da wo muss
Kontaktdaten:

Beitrag von [ZENSIERT] »

Args, richtig...

Ich hatte das schon in Epi 13 gefixt und wusste, dass es einzeilig war. Peinlich, peinlich :oops:
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge

Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.

Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Benutzeravatar
Edison Interactive
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 130
Registriert: 23.07.2005, 16:02

Beitrag von Edison Interactive »

also der erste Vorschlag ändert nichts. Mehrmals irgendwas geben und man fliegt raus.

-edit-

nun 1883 einfach entfernen, oder wie...

sind nicht wirklich erfahrene Programmierer...
Benutzeravatar
Lak
Rätselmeister
Rätselmeister
Beiträge: 1586
Registriert: 27.02.2005, 10:43
Wohnort: London (England)

Beitrag von Lak »

Jetzt will ich aber Episode 35 sehen, ich arbeite auch an einer also ich verlange jetzt aber sofort Episode 35, sitzt ihr nur auf eueren faulen Ärschen zu Hause rum anstattt mal was zu proggen, was ist denn das für eine Unverschämheit hier?























( / IRONIE )
...
[ZENSIERT]
Adventure-Gott
Adventure-Gott
Beiträge: 4575
Registriert: 13.07.2004, 14:04
Wohnort: Da wo muss
Kontaktdaten:

Beitrag von [ZENSIERT] »

Edison Interactive hat geschrieben:sind nicht wirklich erfahrene Programmierer...
Das ich nicht lache! :D
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge

Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.

Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Z.B. so:

Code: Alles auswählen

if (type == 2 || type == 6) {
  if (GetCharacterAt (mouse.x, mouse.y)==-1) {
    FaceLocation((GetPlayerCharacter (), mouse.x, mouse.y);
  }
  else {
    FaceCharacter (GetPlayerCharacter (), GetCharacterAt (mouse.x, mouse.y));
  }
}
Das dürfte ein ausreichender workaround sein.
Use gopher repellent on funny little man
Benutzeravatar
Edison Interactive
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 130
Registriert: 23.07.2005, 16:02

Beitrag von Edison Interactive »

[ZENSIERT] hat geschrieben:
Edison Interactive hat geschrieben:sind nicht wirklich erfahrene Programmierer...
Das ich nicht lache! :D
Ehrlich, unser Programmierer ist nur gut in Mathe... sicherlich ist einiges elleganter zu lösen, wenn man alle AGS-Funktionen kennt...
Antworten