Neueste Beiträge

Seiten: 1 2 [3] 4 5 ... 10
21
Projekte und Ideen für MMM / Re: Lets Plays
« Letzter Beitrag von AmigaMaster am 08. Juni 2025, 11:16:15 »
Die nächsten paar Wochen wird es feurig
22
Ressourcen / Re: Ich suche...
« Letzter Beitrag von alphawolf300 am 06. Juni 2025, 07:48:24 »
Vielen Dank, Bòógieman!
23
Ressourcen / Re: Bernard-Maniacweed-Starterpack
« Letzter Beitrag von AmigaMaster am 05. Juni 2025, 21:50:20 »
Ich bin zwar der Meinung, ich habe noch keine Ahnung, was ich tue aber ich habe die OpenCloseExtension Funktion angepasst bekommen, so dass sie auch mit Sprites funktioniert, zumindest tut sie es jetzt auch mit dem Briefkasten. Musste dafür allerdings eine zweiten Parameter einführen und AGS sieht es anscheinend nicht vor, Parameter mit einen Standardwert zu belegen (außer wohl bei int und auch dort nur eingeschränkt).

Bei den Türen ändert sich nichts, bei einem Sprite muss die Sprite-ID des geschlossenen Objekts angegeben werden, im Fall des Briefkastens ist das die 46.

Ich versuche es hier zusammenzufassen:

VerbGui.asc:
/***********************************************************************
 * OpenCloseExtension(int id,  string type)
 * Used in combination with the door scripts. This function returns a close extension, if the door with the given id is open and vice versa.
 * For objects with different sprite graphics, give the sprite ID for the closed object and it returns an open, otherwise a close.
 *
 ***********************************************************************/
static void Verbs::OpenCloseExtension(int id, String type)
{
  Object*oo = Object.GetAtScreenXY(mouse.x, mouse.y);

  if (type == "door") {
    if ((Doors.GetDoorState(id)==0) || (Doors.GetDoorState(id)==2)) {
      Verbs.AddExtension('o');
    } else Verbs.AddExtension('c');
  }
  if (type == "sprite") {
    if (oo.Graphic == id) {
      Verbs.AddExtension('o');
    } else Verbs.AddExtension('c');
  }
}

/***********************************************************************
 * VariableExtensions(
 * This function is called, if you have have set "v" as an extension for a certain location.
 * Currently it is used for the OpenClose extension, but of course you can add your own variable extensions here,
 * for example "turn on / turn off"
 *
 ***********************************************************************/
static void Verbs::VariableExtensions()
{
  // define here, which things will use a variable extension (>v)
  // by default, it's only used for doors.
  int r = player.Room;
  Object*oo = Object.GetAtScreenXY(mouse.x, mouse.y);
  int o=0;
  if (oo != null) o = oo.ID;
  Hotspot*hh = Hotspot.GetAtScreenXY(mouse.x, mouse.y);
  int h = hh.ID;

  // Other possible extensions could be: Turn On/Turn Off
 
  // Open/Close Extension:
  // Room | Hotspot |(Door_id)
 
 
  //if (r==2 && h == 1)  Verbs.OpenCloseExtension (10);

  if (r==BernBernardsRoom && h == 1) Verbs.OpenCloseExtension(BernBernardsRoom, "door");
  else if (r==BernHallSecondFloor  && h == 1) Verbs.OpenCloseExtension (BernBritneysRoom, "door");     
  else if (r==BernHallSecondFloor  && h == 2) Verbs.OpenCloseExtension (BernBernardsRoom, "door");   
  else if (r==BernHallSecondFloor  && h == 3) Verbs.OpenCloseExtension (BernBedroom, "door");     
  else if (r==BernHallSecondFloor  && h == 4) Verbs.OpenCloseExtension (BernBath, "door");     
  else if (r==BernBritneysRoom  && h == 1) Verbs.OpenCloseExtension (BernBritneysRoom, "door");     
  else if (r==BernBedroom  && h == 2) Verbs.OpenCloseExtension (BernBedroom, "door");     
  else if (r==BernBath  && h == 2) Verbs.OpenCloseExtension (BernBath, "door");     
  else if (r==BernHallFirstFloor  && h == 1) Verbs.OpenCloseExtension (BernLivingRoom, "door");     
  else if (r==BernHallFirstFloor  && h == 2) Verbs.OpenCloseExtension (BernLibrary, "door");   
  else if (r==BernHallFirstFloor  && h == 3) Verbs.OpenCloseExtension (BernStorageRoom, "door");   
  else if (r==BernStorageRoom  && h == 1) Verbs.OpenCloseExtension (BernStorageRoom, "door");     
  else if (r==BernLibrary  && h == 1) Verbs.OpenCloseExtension (BernLibrary, "door");     
  else if (r==BernLibrary  && h == 2) Verbs.OpenCloseExtension (BernDiningRoom, "door");     
  else if (r==BernDiningRoom  && h == 1) Verbs.OpenCloseExtension (BernDiningRoom, "door");   
  else if (r==BernDiningRoom  && h == 2) Verbs.OpenCloseExtension (BernKitchen, "door");   
  else if (r==BernKitchen  && h == 1) Verbs.OpenCloseExtension (BernKitchen, "door");     
  else if (r==BernLivingRoom  && h == 1) Verbs.OpenCloseExtension (BernLivingRoom, "door");   
  else if (r==BernEntrance  && h == 3) Verbs.OpenCloseExtension (BernEntrance, "door"); 
  else if (r==BernEntrance  && h == 2) Verbs.OpenCloseExtension (BernBasement1, "door"); 
  else if (r==BernBasement1  && h == 2) Verbs.OpenCloseExtension (BernBasement2, "door");     
  else if (r==BernBasement2  && h == 1) Verbs.OpenCloseExtension (BernBasement2, "door");     
  else if (r==BernOutside  && h == 1) Verbs.OpenCloseExtension (BernEntrance, "door");     
  else if (r==BernGarage  && h == 1) Verbs.OpenCloseExtension (BernGarage, "door"); 
  else if (r==BernOutside && o == 1) Verbs.OpenCloseExtension (46, "sprite");
}

In der Vergui.ash muss die Funktion mit den neuen Parameternamen ergänzt werden (Zeile 243).
verbgui.ash:
import static void OpenCloseExtension(int id, String type);
24
Ressourcen / Re: Bernard-Maniacweed-Starterpack
« Letzter Beitrag von Cone Arex am 05. Juni 2025, 21:29:40 »
Zitat
Der Briefkasten will bei mir mit AGS 3.6.2.10 allerdings nicht. Ich habe das jetzt mit einem neuen, frisch erstellten Spiel aus dem Template 1.1 versucht: Spiel ohne Änderungen kompiliert und es gibt keine Standardaktion.
Ok, ich sehe was du meinst. Ich kümmere mich drum.

Zitat
Wird ganz bestimmt deshalb so gemacht sein, weil der offene Briefkasten nicht komplett den geschlossenen verdeckt, im Gegensatz zu den Türen.
Korrekt. Das Problem hatten wir bei ein paar Episoden.

Ich habe dann auch mal ein leeres Maniacweed-Template erstellt: https://github.com/ManiacMansionMania/Maniacweed-Empty
Nur Start- und Abspannraum, Bernard als Charakter, ein Lukenöffner als Item (gibt Kompilierfehler, wenn es gar keine Items gibt), keine Musikstücke und Geräusche nur Schritte und Türen. Das Template kann dann auch für MOR verwendet werden. Wenn man Bernard und den Titelbildschirm rauswirft. Den Lukenöffner habe ich gerade neu gemalt (Lizenz: CC0), ist also unbedenklich.
25
Technik / Re: Weiterentwicklung der Starterpacks (Allgemein)
« Letzter Beitrag von Cone Arex am 05. Juni 2025, 21:23:26 »
Zitat
Ich wäre stark dafür, dass die alten Starterpacks nicht auf AGS 3.6, sondern noch auf AGS 3.5 belassen werden.
Der Grund dafür ist, dass man damit den Timidity-Mist eben nicht braucht, um Midis abzuspielen.
Rückwirkend wäre das wahrscheinlich besser gewesen. Naja, weg sind die Versionen für 3.5 ja nicht.

Zitat
Im übrigen plädiere ich aus dem selben Grund dazu, bei den neuen Maniacweed-Starterpacks die Midis in Wav/Ogg umzuwandeln, aber das ist ein anderes Thema.
Das wurde für das Maniac-Mansion-Titellied bereits gemacht. Das ist im Maniacweed-Template als OGG verhanden.

Zitat
Da hast du locker mal 50 MB mehr pro Spiel zum Herunterladen.
Ich denke, dass das heutzutage nicht mehr groß ins Gewicht fällt. Wie AmigaMaster schon sagte sind GB-große Updates inzwischen die Regel bei professionellen Spielen. Da sind unsere paar MB nix. Ich bin halt dafür, auf MIDIs zu verzichten, weil es so aussieht als würde dort die Kompatibilität zum Problem werden. Und das Thema Kompatibilität wird in Zukunft noch größer werden.

Back to the Updates:
Das Syd-Achmed-SP ist jetzt auch von Unrat beseitigt. Und dieses mal hatte ich auch die Gelegenheit, die CharacterChange-Funktion zu testen. Funktioniert.
Beim Schule-SP bin ich noch unsicher, ob ich das noch updaten soll. Scheint mir verlorene Liebesmüh zu sein.
26
Ressourcen / Re: Ich suche...
« Letzter Beitrag von Bòógieman am 05. Juni 2025, 20:31:52 »
könnte mich nicht an so eine Epi erinnern, aber evtl. kannst du Britneys Kopf auf diese Vorlagen verpflanzen (sofern sie voll animiert sind)...

Pink Lady


L.A. Lowe


Mrs.Morrison
27
Ressourcen / Re: Ich suche...
« Letzter Beitrag von alphawolf300 am 05. Juni 2025, 20:18:11 »
Hallo,
ich bräuchte Britney, die ein Kleid trägt. Gibt es solche Sprites?
28
Technik / Re: Weiterentwicklung der Starterpacks (Allgemein)
« Letzter Beitrag von alphawolf300 am 05. Juni 2025, 13:11:59 »
Funktioniert manchmal aber nur bedingt, da es zu Verzerrungen kommen kann aufgrund der anderen Samples.
Und es hört sich teils total anders an. Das hab ich auch schon bei Online-Konvertierungen von midi zu ogg hinter mir. Timidity klingt aber auch schon anders. Ein Grund mehr, von der geschützten Musik wegzukommen.
29
Technik / Re: Weiterentwicklung der Starterpacks (Allgemein)
« Letzter Beitrag von AmigaMaster am 05. Juni 2025, 12:30:09 »
Ich kann beide Seiten nachvollziehen und bin unschlüssig. Ich habe nicht einmal die Downloadgröße im Kopf, die heutzutage fast schon irrelevant ist, wenn Day 1 Patches 50 GiB haben können, sondern den Speicherplatz auf dem Webserver, der dadurch zusätzlich verbraucht wird.

Ansonsten hätten OGG Dateien noch den Vorteil, dass man sie mit Hilfe eines Soundfonts verbessern kann. Ein Beispiel hier als Anhang. Funktioniert manchmal aber nur bedingt, da es zu Verzerrungen kommen kann aufgrund der anderen Samples.
30
Ressourcen / Re: Bernard-Maniacweed-Starterpack
« Letzter Beitrag von AmigaMaster am 05. Juni 2025, 12:13:12 »
Zitat
Standardaktion SCHAU AN für oMailbox "Briefkasten>l" hinzugefügt"
Hotspot "hFrontDoor", Description "Tür>v"
und Objekt "oFrontDoor", Description "Tür>c" - diese beiden Änderungen führen dazu, dass die Standardaktionen für die Haustür auf ÖFFNEN / SCHLIESSEN gesetzt werden.
Verstehe nicht, worauf du hier hinaus willst? Eine Aktion für Schau an-Briefkasten ist doch vorhanden? Ebenso hat die Tür die Standardaktion gesetzt.

Du hast Recht, die Tür hat eine Standardaktion - das muss mir bei meinen ersten Experimenten durchgegangen sein.

Der Briefkasten will bei mir mit AGS 3.6.2.10 allerdings nicht. Ich habe das jetzt mit einem neuen, frisch erstellten Spiel aus dem Template 1.1 versucht: Spiel ohne Änderungen kompiliert und es gibt keine Standardaktion.

Im Room Editor hat der Briefkasten das ">v", jedoch funktioniert das laut der Funktion "static void Verbs::VariableExtensions()" in der Datei VerbGui.asc nur für Türen, da letztendlich über Doors.GetDoorState(door_id) der Status einer Tür abgefragt wird, es sich beim Briefkasten aber um ein Objekt handelt und deshalb die Methode GetDoorState nicht existiert.

Habe dabei wieder was gelernt:
Der Briefkasten ist ein Einzelobjekt, bei dem dann die Grafik (Sprite) umgeschaltet wird, wenn man ihn öffnet und schließt. Deshalb ist er auch kein Teil der Hintergrundgrafik und er benötigt auch keinen Hotspot. Wird ganz bestimmt deshalb so gemacht sein, weil der offene Briefkasten nicht komplett den geschlossenen verdeckt, im Gegensatz zu den Türen.
Seiten: 1 2 [3] 4 5 ... 10