Jump to content

Home

Leaderboard

Popular Content

Showing content with the highest reputation on 07/25/23 in all areas

  1. The Fate of Atlantis and Woodtick scripts have been updated with a couple of new decompiler features: The macro restoration has become more robust, meaning it can restore more of the macro calls correctly. So, even closer to the original readability. That includes turning: start-sound largo-theme flush-sound-q ... into the original macro call: quick-start-sound largo-theme But more substantially, turning: for foo = 120 to 128 ++ { verb foo off } verb dialog-up-arrow off verb dialog-down-arrow off screen-escape-array = 0, 0, 0, 0, 0, 0, 0, 0, 0 say-screen-escape is 0, 0, 0, 0, 0, 0, 0, 0, 0 cursor off userput off ... which disables the dialog interface when a dialog ends - into the "slightly" more concise original call: cancel-dialog The FOA script also shows quite a few examples of a commonly used macro (although it happens to not be used at all in the Woodtick script) - run-script - which would start a script and then wait for it to finish running before continuing the current script. If you compare to the previous version of the decompiled FOA script, you'll see that the macro just calls start-script and then loops over a call to break-here until the script that was started has stopped running. The other major change in the decompiler is adding declaration of room local variables. A "bit" of an explanation of that one, since it's not actually documented in any (publicly available or otherwise) official documentation of SCUMM: Room local variables SCUMM (obviously) had support for global variables from the start. The first 50-100 (circa) of these were system variables declared and understood by the compiler and engine - for things like the selected actor, the soundcard, the machine speed, the cursor position, etc. The rest were game specific and declared in SCUMM scripts. Mostly each of these variables had a specific relatively local purpose and were named as such - e.g. something like visited-iceland. A few, however, were reused for all kinds of purposes across scripts - this helped reduce the amount of memory allocated for global variables. The first couple of these - which were already there in Maniac Mansion - were named foo and bar (the latter was renamed around MI1 for possibly obvious reasons - hint: MI1 and MI2 both have a room named bar 😉). Global variables could be integer numbers or arrays (or bits or strings - which had their own dedicated space. In SCUMM 6 - from DOTT - nibble, byte, and word variables were also added). When scripts local to a room were added for Last Crusade, local variables - local to the scripts - were also introduced. However, sometimes (quite often) you need variables that can be shared between all the scripts in a single room, but are still local to that room. Unlike script-local variables, this wasn't implemented as a compiler and engine feature, but rather, was implemented by a bit of (ab)use of functionality provided by the two: Global variables were declared in a dedicated SCUMM script, defining the name of each variable, and the "slot" (just a relative pointer to its location in memory). Using one of two syntaxes: variable selected-actor @ 1 Which would declare that the variable selected-actor would be in slot 1. (This was the typical way the system variables were declared in the script). Or: start-variables 100 variable foo variable bar variable some-array[10] variable visited-iceland Which would place foo in slot 100, bar in slot 101 etc. some-array would simply take up the next 10 slots, 102-111, with visited-iceland being in slot 112. So, in order to add "room local variables", you'd do this: Add an array to your global variables, named, say, room-local, with, say, 14 items (this was the typical number) At the top of each room needing room local variables, simply use the above syntax: start-variables room-local variable time-to-nuke-largo variable looked-at-money variable out-of-money-lines ... which would place time-to-nuke-largo at the same slot as room-local - in other words, it would be at the same location in memory as room-local[0]. In a different room, you could then have another set of variables, pointing to the same array. This is exactly what can be seen in the woodtick script (and similarly in the new-york-street script). So, you could have up to 14 variables that were specific to a room, but only took up 14 variable slots of memory across the game. To make it a bit cleaner, another feature was used: Every room in SCUMM can have an enter and exit script, which defines a script to be executed when you enter/exit that room. However, there was also two global enter scripts - and two global exit scripts - assigned during the boot script. Which would be run respectively before and after the individual room's enter/exit scripts - for every room. In one of these, you could place a for loop, which would iterate over the room-local array and set each item to 0. That way, whenever the player entered a new room, the room local variables would start out with a clean, default, 0 value. Just another example - much like the dialog system - of the kind of flexibility SCUMM allowed without actually needing changes to the compiler or interpreter. 🤓
    3 points
  2. Has anyone played these games? They're point and click adventure games. Pretty goofy. Actually quite funny. There's no malice to them, just a lot of happiness hormones. The original was balm for my soul; the sequel's been great on the afternoons I play it when I'm down. You play as a detective of the paranormal in Twin Lakes City. The cases are called things like "Malice in Wonderland". I think everyone here would like them. They've got the LucasArts+ approach of no dead-ends and no dying.
    2 points
  3. Re: Soundtrack. I may or may not have put some of the tracks here. https://scummbar.com/resources/downloads/index.php?todo=MP3#semi
    2 points
  4. I think we can make an exception for these posters in the name of art.
    2 points
  5. There's also a plugin for Foobar2000, which is a good music player in itself, but also has a Converter plugin, so it's a good way to pick a few interesting sounds and convert them to something more common like MP3 or Ogg Vorbis, without having to convert all 4210 files first. But yeah, go Winamp! (The old version, the new version is... weird, and mainly seems to carry the Winamp name as a stolen badge for recognition)
    1 point
  6. I completed an objective, signed off, and when I returned to the game using the book on my ships table, I had my progress still saved but none of the Pieces o Eight I had collected. So I'll have to do that but all over again and now I'll recommend anyone do a playthrough in one sitting. Bringing my ship back to the island did let me see I could instead disembark at the Governor's Mansion as there is a spot to dock and two ladders to climb up there before you're supposed to be there. You can't enter the mansion or do much of anything. You also cannot walk past the guard as if you wanted to go back into town. Just thought it was interesting that you can even get over there by water.
    1 point
  7. Checkpoints only happen at certain points as you make progress - you'll know when because it pops up at the bottom of the screen. Then you can resume next time by using the map table in your ship, or something. Interesting stuff @Didero! I've only clicked on a few audio files near the top but I now know (I'll still keep it vague) There's even a Winamp plugin for playing .wem files, for the true llama-whipping master race.
    1 point
  8. Turns out that there are tools that can dig into the packed files of Unreal Engine games, and Sea Of Thieves is made in Unreal. So I've been digging around a bit! (Don't worry, I won't spoil anything unreleased) There's quite a lot of voice lines in there that weren't used in Episode 1, that refer to things that don't happen in Episode 1. So apparently they just added all the voicelines in the latest patch? Seems exciting. But the main reason I wanted to dig into the files was to find the menu music, and I think I've found it, even though the packed files are just named with random numbers. I also found some other good renditions of the main theme. I've uploaded them here for anybody interested (that link expires in a week I think, sorry, I couldn't think of another upload service). If you want to check out the files yourself, I used a program called FModel. It's slightly clumsy to use, but it works well enough. Make sure you extract it somewhere instead of running it from the downloaded zip, because it will create some files next to the executable. When you open the program, it should show a popup where you can select a game, and it should list Sea Of Thieves if you have it installed. It may need an encryption key, I forget, but that's easy to find with Google, and can be added through 'Directory' -> 'AES'. Then in the 'Archives' tab, scroll all the way down until you see the file 'wem-WindowsClient.pak' (the 'WindowsClient' part is probably different if you play on another platform). Double-click that, and it should switch to the 'Folders' tab. Expand the entries there until you get to 'Experimental' and 'Mojo'. The Monkey Island stuff is in the 'Mojo' subfolder. Open that, and double-click the final entry in the tree, called 'Windows'. It should switch to the final tab and show a list of files each named a random number with the extension '.wem'. These are sound files. To play one, open the 'Packages' menu and make sure 'Auto Open Sounds' is enabled, and then double-click a random file in the list. A popup should open that plays the sound (on repeat, pause is in the topleft of the popup). Double-clicking another '.wem'-file in the main window adds that file to the audio player windows' playlist. You can also select multiple files and quickly double-click to add the selection to the player's playlist. You can also right-click the 'wem-WindowsClient.pak' file in the middle tab and select 'Extract Folder's Packages' to add all files to the Audio Player's playlist. In the playlist, you can right-click an entry to save it, or click 'Save playlist' to save all of them. Not that this plays each file before saving it, so it'll take a LOOONG time. A quicker way to get the soundfiles out, is to open the 'Packages' menu and disable 'Auto Open Sounds', and then in the 'Folders' tab right-click the 'Windows' item and select 'Extract Folder's Packages'. This creates a bunch of .wem files in the folder where you put the FModel executable, inside the 'Output' subfolder and some nested subfolders. To play .wem audiofiles, the vgmstreamer project has some plugins for music players, and those can handle .wem files. That's... a bit more text than I thought I was gonna type. Hopefully it's all clear, and if not, I'll try to make it clearer.
    1 point
  9. Yeah, if this is acceptable on the Mojo forum, I might make another thread for non LucasArts posters.
    1 point
  10. Yeah, this being Guybrush's memory of Melee mixed with how he wants it to be makes it easy to explain away any inconsistencies. It helps that we've got 30 years of experience in fan-theorizing away story oddities
    1 point
  11. This was exactly what i wanted it to be. A more immersive Melee island that feels like a real place rather than a collection of screens. Don’t get me wrong that works perfectly in a p&c game but it is nice to actually be able to climb around to see all the nooks and crannies and to view the places i’ve loved visiting in the past from all different angles. Minor gripe but locke smith’s locksmith should definitely have been present at this point in time and wallys map shop definitely shouldn’t have. Off the top of my head i can’t think of anybody that felt mischaracterised (apart from guybrush but that’s kind of the point.) Everybody felt like they’d just stepped out of the amiga and into the xbox. Here’s hoping that stan, carla, meathook and smirk all get similar treatment next month. The puzzles felt closer to a p&c game then i assumed they would. The limitations of the game being built on an engine not designed for this sort of thing were obvious but i think this is as good as we could have hoped for and while very VERY easy, (in some cases i’d figured out what a puzzle was going to be and solved it before it even presented itself) it was still fun. The story isn’t much yet but it has potential and there’s enough there that i really want to know where it’s going. Guybrush living in his own idealised version of reality but somehow becoming a reclusive nutcase because of it works for me as a set up and needing to snap him out of it so he can take us to monkey island is a fun cliffhanger for part 2. Everything just came together to make a fun, charming, relaxed experience. I obviously wouldn’t advocate for future games to use this formula but i’m very glad we have this as a side experience. Roll on part 2
    1 point
  12. Yeah, I'd been playing Sea Of Thieves since I bought it at the start of the Steam Summer Sale, and I don't think I would've enjoyed this Tall Tale as much if I hadn't already been familiar with the controls. Luckily for the people new to SoT this Tall Tale doesn't require any sailing, because that took me a while to figure out (and I still crash into most Outpost docks )
    1 point
×
×
  • Create New...