Autor Thema: Probleme mit Starterpack AGS3  (Gelesen 55367 mal)

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #135 am: 13. Januar 2011, 18:10:39 »
Kannst du den aktualisierten Code für den Give-To Befehl bitte ebenfalls hier posten.
Dann kann ich den Code gleich selber in meiner angefangenen Episode aktualisieren.
Bei mir ist aber der Talk-View von Bernard drinnen.  :cl
Ich verwende das letzt veröffentlichte Schulstarterpack.

Einen anderen Bug hab ich auch entdeckt:
sobald ich das Spiel im Vollbild ausführen lassen will (ganz egal mit welcher Einstellung) kommt sofort folgende Fehlermeldung:

Zitat
Adventure Game Studio
---------------------------
An error has occurred. Please contact the game author for support, as this is likely to be a scripting error and not a bug in AGS.
(ACI version 3.20.1108)

in "GlobalScript.asc", line 593
from "GlobalScript.asc", line 687
from "GlobalScript.asc", line 1611

Error: Error running function 'game_start':
Error: Null pointer referenced

der Fehler dürfte in dieser Funktion stecken:
[ags]
String ClearToSpace(String text)
{
   int p = 0;
   // ignore white spaces at the beginning
   while ( (p < text.Length) && (text.Chars[p] == ' ') )   <-- hier
   {
      p++;
   }
  // write white spaces until next white space
   while ( (p < text.Length) && (text.Chars[p] != ' ') )  <-- eventuell dann auch hier
   {
      text = text.ReplaceCharAt(p, ' ');
      p++;
   }
   return text;
}

[/ags]

aufgerufen wird das Ganze ja gleich am Anfang von AdjustLanguage();
im Fenstermodus kommt dieser Fehler nicht, da läufts.


Nochwas ist mir aufgefallen:
Beim Kompilieren kommen immer Warnings, weil nach einem Stop ein return in den Dialogen vorkommt.
Die kann man einfach rauschlöschen, weil sie ja ohnehin nicht ausgeführt werden können, da der Dialog mit Stop beendet wird.

Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #136 am: 13. Januar 2011, 18:38:33 »
Die Korrektur fürs Gib-Problem hab ich im Tutorial genannt...  ;D

Genannten if Block löschen. Im Tutorial habe ich ihn nur "auskommentiert":

[ags]else if ((GSagsusedmode == 4) && (GetLocationType (mouse.x, mouse.y) == 2) && isAction (eActGiveTo) )
{
...
}[/ags]

der Fehler dürfte in dieser Funktion stecken: [...]

Ich glaube nicht, dass der Fehler in der Funktion "ClearToSpace" ist. Ich glaube dass scheint mit AdjustLanguage schon eher was zu tun zu haben.

Beim Kompilieren kommen immer Warnings, weil nach einem Stop ein return in den Dialogen vorkommt.
Die kann man einfach rauschlöschen, weil sie ja ohnehin nicht ausgeführt werden können, da der Dialog mit Stop beendet wird.

In den Starterpacks sind Dialoge? Seit wann?  :D


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #137 am: 13. Januar 2011, 18:58:05 »
Über AdjustLanguage (Aufruf in Zeile 1611) wird ja diese Funktion aufgerufen
[ags]font_info = ClearToSpace(font_info);[/ags] Zeile 687
und Zeile 593 ist bei mir diese Zeile
[ags]while ( (p < text.Length) && (text.Chars[p] == ' ') )[/ags]
ob du es nun glaubst oder nicht.  :-*

Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #138 am: 13. Januar 2011, 19:02:21 »
Nun, also es muss am Parameter liegen. Die Funktion ClearToSpace arbeitet nur mit einem korrekten Parameter gut. :D

Benutzt du irgendeine Übersetzung oder entsprechen die zwei Zeilen darüber nicht dem hier?

[ags]  if (system.screen_width == 320)      font_info = GetTranslation ("font_320: 1  0  0  0  0  0  0  0  0  0  0  0  0  0  0");
  else if (system.screen_width == 640) font_info = GetTranslation ("font_640: 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14");[/ags]
« Letzte Änderung: 13. Januar 2011, 19:05:37 von Endres »


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #139 am: 13. Januar 2011, 19:21:36 »
schaut bei mir genau gleich aus und nein ich verwende keine übersetzung.
hab in dem starterpack noch nichts im global script verändert,
also müsste der Fehler eigentlich auch bei anderen auftreten, wenn sie vollbild einstellen.

edit: der Fehler beim Bernard Talk View ist doch hier auch enthalten, ist aber nur ein Bild das krieg ich selber hin.  ;)
« Letzte Änderung: 13. Januar 2011, 19:28:04 von Rocco »

Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #140 am: 13. Januar 2011, 19:33:02 »
Hmm...

Möglicherweise gibt es "Spielauflösungs-Änderungen" ja gar nicht mehr bei AGS, komischerweise bei deinem Vollbildmodus. Also versuch mal die beiden Zeilen auszukommentieren und stattdessen einfach mal die aus dem ersten if hinzuzufügen:

[ags]  font_info = GetTranslation ("font_320: 1  0  0  0  0  0  0  0  0  0  0  0  0  0  0");[/ags]

Eventuell ist die Schriftgröße anders, aber normalerweise sollte es damit gelöst sein, da dann ja "system.screen_width" sein kann was es will. ;)


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #141 am: 13. Januar 2011, 19:54:42 »
naja als gelöst würde ich das nicht bezeichnen, eher als russisch umgangen.
könnte sein, das mein system das game automatisch in 640 konvertiert, weil 320 nicht mehr unterstüzt wird.
das würde bedeuten, das bei mir automatisch diese Zeile ausgeführt wird:
[ags]font_info = GetTranslation ("font_640: 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14");[/ags]
Font 13 und 14 gibts aber im neuen Starterpack nicht mehr.

Hab die Zeile mal ausgebessert auf
[ags]font_info = GetTranslation ("font_640: 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4");[/ags]
hat aber leider denselben Error zur Folge.
edit: nein das kanns nicht gewesen sein, weil die Funktion ist ja nur für die entfernung von Whitespaces zuständig.  :cl
Das mit Font 13 und 14 dürfte aber trotzdem nicht stimmen.

bei deiner Lösung sieht die Schrift natürlich auch dementsprechend schlecht aus in 640
« Letzte Änderung: 13. Januar 2011, 22:18:29 von Rocco »

Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #142 am: 14. Januar 2011, 19:17:31 »
Eventuell ist es ja nicht 640 sondern 800... Hatte nochmal in der Hilfe von AGS nachgesehen. Also sollte man für diesen (möglicherweise einzel-) Fall das auch noch für 800 hinzufügen, dann sollte es keine "russische" Lösung mehr sein ;)

Musst du mal schauen, ob das akzeptabel so aussieht, kann es ja nicht testen, weil meine Mindestauflösung noch geringer als 800x... ist ;)

[ags]  else if (system.screen_width == 800) font_info = GetTranslation ("font_800: 10 12 12 12 12 12 12 12 12 12 12 12 12 12 12");[/ags]


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #143 am: 14. Januar 2011, 19:27:51 »
werd dann deinen vorschlag gleich mal austesten, aber normalerweise müsste es schon mit 640 funktionieren,
nur 320 wird nicht mehr unterstützt, da krieg ich eine fehlermeldung aber wenn ich auf 640 umschalte funktionieren die games.

glaub auch nicht, dass das ein einzelfall ist.
hab win7 64bit mit einer radeon 5850 und einem 22er Monitor, also nichts utopisches,
sondern dass was man momentan kriegt, wenn man einen neuen pc kauft.

fonts 10 und 12 sind in dem starterpack das ich verwende übrigens auch nicht mehr enthalten, da gibts nur mehr 4 oder 5 schriften.


Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #144 am: 14. Januar 2011, 19:32:54 »
Achso, naja, je neuer, desto höher eben die Auflösungen, so meine These. ;)


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #145 am: 14. Januar 2011, 19:55:24 »
ja leider, warum da nicht trotzdem die niedrigen auflösungen auch noch unterstüzt werdern, versteht wohl keiner.

der error ist jedenfalls noch da, auch mit der 800er zeile.  :'(

KhrisMUC

  • Moderator
  • volljähriger Tentakel
  • *****
  • Beiträge: 989
    • Profil anzeigen
Re: Probleme mit Starterpack AGS3
« Antwort #146 am: 14. Januar 2011, 20:42:07 »
Der null pointer error heißt, das test wohl null ist. Warum, weiß ich aber auch nicht, hatte diesen Fehler noch nie.

Zur Auflösung:
Die font-Zeilen stammen noch aus der Zeit als AGS bei 320er-Spielen intern 640 verwenden konnte, was u.A. dazu geführt hat, dass skalierte Charaktere mehr Pixel hatten als die Hintergründe, dass die Schrift plötzlich mini war (logisch), etc. Deswegen die zweite Schriftart, die das kompensieren sollte.

Es gibt jedoch mittlerweile seit Jahren u.A. den x2 Filter, der das Spiel auf 320 belässt und nur die fertige Ausgabe im Fenster bzw. Vollbild hochskaliert. Damit schickt das Spiel der Grafikkarte ein 640er-Bild, Vollbildmodus geht damit einwandfrei, egal, wie neu das System ist.
Inzwischen ist auch glücklicherweise die Option, das Spiel ohne Filter in 640 zu pressen, aus winsetup verschwunden.

Wundert mich echt, dass sich das immer noch nicht rumgesprochen hat... ;)

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #147 am: 14. Januar 2011, 20:54:11 »
wieso, das ist schon klar, und das mach ich auch bei allen episoden so und funktioniert tadellos.
aber in diesem Fall ist egal was ich einstelle, das Spiel stürzt sofort (nur im vollbildmodus) mit obiger fehlermeldung ab.
im fenstermodus gibts keine probleme.
es funktioniert bei mir nur dann im vollbild wenn ich so wies endres vorgeschlagen hat, direkt die 320er zeile zuweise:

[ags]font_info = GetTranslation ("font_320: 1  0  0  0  0  0  0  0  0  0  0  0  0  0  0");[/ags]
damit sieht dann die Schrift aber fehlerhaft aus.

würd mich ja interssieren ob das nur bei mir so ist, oder nicht auch bei anderen auftritt?


edit: hab hier mal den ausgebesserten Bernard hochgeladen -> http://www.file-upload.net/download-3130108/Bernard.chr.html
« Letzte Änderung: 14. Januar 2011, 21:52:33 von Rocco »

Endres

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1264
  • Geschlecht: Männlich
  • En|dres, der
    • ICQ Messenger - 230191486
    • MSN Messenger - enni_puschner@hotmail.de
    • Profil anzeigen
    • e7p.de
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #148 am: 14. Januar 2011, 23:05:20 »
@KhrisMUC: Also AGS lässt nur noch die für das Spiel ausgewählte "320"er zu, aber hat anscheinend eine Art "Fallback", die die Auflösung trotzdem ohne Filter ändert. So verstehe ich die Hilfe-Einträge. Warum aber die 800er Zeile nicht funktioniert, wundert mich schon, wobei ja in eben der Hilfedatei diese drei Auflösungen genannt werden. Schau dir mal die Hilfedatei und die dortigen Eigenschaften system.ScreenWidth / system.ScreenHeight an. Da wird die Möglichkeit einer anderen Auflösung genannt. - Und das immernoch, was aber eigentlich überhaupt nicht mehr Zeitgemäß ist, da gebe ich dir vollkommen recht, da es dann ja auch die Filter nehmen könnte, wenn eine bestimmte Auflösung nicht verfügbar ist.

Mich würde mal interessieren, wie das MMMNet dann im Vollbildmodus bei den Leuten aussieht, bei denen genannter Fallback passiert. Eventuell ist dann der NetRoom "Ungenießbar"... ;D

@Rocco: Eben, mich interessiert auch, ob das auch bei anderen Auftritt. Bei mir jedenfalls hatte ich noch nie Probleme damit (außer eventuell mal mit dem ein oder anderen älteren AGS-Game, was hier aber ja keine Rolle spielt).


Domi:"irc hab ich mir viren geholt.. icq hab ich nimmer"

Rocco

  • Administrator
  • alter Tentakel
  • *****
  • Beiträge: 2375
  • Geschlecht: Männlich
    • Profil anzeigen
    • Maniac Mansion Mania
    • E-Mail
Re: Probleme mit Starterpack AGS3
« Antwort #149 am: 16. Januar 2011, 14:44:47 »
ich verwende das schulstarterpack -> http://www.maniac-mansion-mania.com/index.php?option=com_content&task=view&id=750&Itemid=76
vielleicht hast du mal zeit, kurz auszuprobieren ob es bei dir im vollbildmodus ohne probs läuft.

edit: damit funktioniert bei mir auch tuer>v nicht mehr (was grundsätzlich kein problem ist, aber wegen dem Tutorial.)
muss ich nochmal verifizieren, hab das nämlich nicht bei einer Standardtür probiert.

oder vielleicht versuch mal diese Zeile in dein jetziges SP auszuführen:

[ags]font_info = GetTranslation ("font_640: 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14");[/ags]
ob da generell dieser Error kommt, wenn die 640er Auflösung vom System genommen wird.  :cl


möglicherweise weiss ja rulaman eine Lösung.
« Letzte Änderung: 16. Januar 2011, 14:55:39 von Rocco »