Sunday, November 10, 2024

Adventure Creation Kit

Two adventure-themed computer games I played back in the ‘80s had a unique style that I would call fast-and-furious in a mythological milieu. They were Ali Baba & The Forty Thieves and Return of Heracles, both programmed by Stuart Smith. While there were similarities to other adventure games, there wasn’t anything quite like them – strange and strangely addictive. Wandering creatures and NPCs (non-player characters) had a strange life of their own; they weren’t just there to interact with you. Sometimes they would fight each other for no seeming apparent reason while you picked up the spoils.

 

Like other kids who were exposed to computer games, I wondered what it would be like to create my own fun computer game. I had time on my hands. I learned BASIC by reading books in a bookstore or from the library and taking notes. I went to a friend’s house to practice my skills (because we didn’t own a computer). But all I could manage were some simple Lemonade style text-games. Then I discovered Adventure Construction Set, also by Stuart Smith. (Back in the day of pirated disks with no manuals I didn’t realize all these were by the same author.) It had a built-in game Rivers of Light, but I was most excited about making my own games. I gave up after a while. It felt very tedious.

 

After finishing Antepenult, I mused about whether I would create its sequel. Was there something out there like Adventure Construction Set but updated for the Ultima series? Turns out there was. Thus did I discover Adventure Creation Kit by Chris Hopkins, originally written in the ‘90s with patches up to 2009. I downloaded it and fired up DosBox. It has a tutorial and two-built in adventures. I ‘played’ the tutorial and the shorter Brigands adventure. Then I read the manual. It looked like quite a robust engine which supported BASIC-style macros that expanded all manner of things you could potentially do. It also had an Ultima V tileset. If I’m going to create an Ultima-clone, I might as well just use the tileset.

 

After creating a sandbox and playing around with it for several sessions, I felt ready to create my first game. It featured a 64 x 64 world map, three towns (one medium 32 x 32 and two small 16 x 16). The fifth map was a series of a dozen interconnected dungeon-style rooms. There were over 25 separate dialogues and I created some new icons for characters and some new special items. Creating the game took me 10-12 hours. I made it for my spouse who had never played such adventure games before but has heard me reminisce about them. Here’s a screenshot at a shoppe in one of the towns.

 

Adventure Creation Kit has a reduced command interface compared to Ultima, helpful to the new player, and these are listed on the right-hand panel. Dialogue with the townsfolk allows for plenty of interesting options, but I haven’t figured out if the dialogue can be scrolled rather than the screen-clear with each new prompt. There is no party – just the sole adventurer (like both Ultima II and Antepenult) which simplifies things such as no additional combat screen. Spellcasting utilizes simple generic reagents but it looks like I can modify how these work through macros. Here’s a picture just outside the start town.

 

 



It was interesting to see how my spouse interacted with the system. Things that were obvious to me as someone who played these types of ‘80s games were not at all obvious to her. She found the iconography unfamiliar. I advised her to ‘Look’ at anything she wasn’t sure of. She was also initially confused by the world-map wraparound. I had an NPC hint that the “world was small and round” but she didn’t quite get the reference. Eventually she figured out how to navigate around, but she went through great lengths to avoid combat unless it was inevitable. I did help her get suitable weapons and armour at the shoppe.

 


Even though an NPC had told her to be careful of the poisonous marshes and their ‘pink flowers’ outside, she still blundered into it and her character got poisoned. I had to direct her to go back to the shoppe to get a curing potion. (Her character hadn’t yet learned how to cast a Cure spell.) Again, this would have been obvious to me but I had forgotten to have an NPC explain it to a newbie. The original marshes tile did not have the pink tinge as you can see in the screenshot above. I had added those to the tiles to make them more obvious.

 

Overall, she enjoyed learning and playing the game, although I learned more just watching how she navigated the system. To me that’s a win and the hours I spent created the game were worth it. Clearly one should highlight keyword text in dialogues (I didn’t, but Nox Archaist did, which is extremely helpful to new players). It also made me aware of some odd issues in the game such as line-of-sight when dealing with opaque tiles and which regions of a map get illuminated. I have grandiose ideas of creating an Antepenult sequel but it would require much more time and effort, and I don’t think she would play it. I looked around to see if there is an active community still using Adventure Creation Kit but I haven’t come across it. I expect to play around with the kit a little more, but I think what is needed is a more modern base code. So if anyone out there who likes programming wants to create a modern version of the kit, I will be happy to write some (hopefully) engaging Ultima-style adventures!

 

P.S. To learn more about the Stuart Smith style, I highly recommend this article by the CRPG Addict. I think it does a great job capturing the essence of Smith’s games.

Saturday, November 9, 2024

A Sign in Space

Back in the third week of October, we were finishing up solving the Schrodinger equation of the hydrogen atom in my quantum chemistry class. I end that module with a brief discussion of hydrogen’s role in mapping the universe – its abundance, and why it might be used to communicate messages with extra-terrestrials. It’s a variation of my Star Wars Day class in G-Chem, but my P-Chem students have just seen the Zeeman splitting and understand where the 21-cm wavelength line comes from. I showed the students the SETI message that was beamed out from the Arecibo telescope.

 

One of the students asked how anyone would know how to interpret the data if you didn’t have any idea what the content would be. In the movie Contact, computers solve this presumably by running all manner of decoding algorithms on the detected message. But that’s a mighty big handwave. Humans write algorithms, and they are based on having some preconceived notion of the problem we are trying to solve. But if you have no idea where to start, what do you do? You could easily misinterpret the “code” in so many ways, most of which will just be garbage.

 

Last weekend I stumbled across A Sign in Space. It’s a clever experiment. A media artist, Daniela dePaulis, in collaboration with space agencies and observatories, designed a message that was then transmitted a signal from a spacescraft which was then picked up by our ground-based telescopes, similar to those that Jodie Foster used in Contact. As to the interpretation of the stream of zeros and ones, that was turned over to the public. Citizen scientists were going to try and make sense of the data. It took a year before a father and daughter team finally cracked the code. But what was most interesting was looking through the process in which people with different expertise and all walks of life, not only speculated, but did some hard work in trying to make sense of it all. There were plenty of false trails, clever ideas, lots of humor, and I was impressed by the shared sense of people who didn’t know each other all helping solve an interesting problem.

 

The actual solution isn’t as interesting, although it continues to spark lively discussion on a Discord thread devoted to this project. The message provided a visual image of five amino acids. None of them were “canonical” amino acids and some (if not all) of them have been discovered on meteorites. They were all alpha-amino acids. It wasn’t clear if they were all-D or all-L, but folks on Discord thought they were the L optical isomer (similar to life on Earth). Three were hydrophobic with linear alkyl side chains of 2, 3 and 4 carbons respectively. One had an amine group (a “basic” amino acid) and one had a carboxylic acid group (an “acidic” amino acid). All were depicted in their non-zwitterionic form.

 

From an origins of life point of view, the basic amino acid (2,4-diaminobutyric acid) has several possible roles. As to the three hydrophobic amino acids, there are reasons why they would not have been selected for from the point of view of chemical evolution if one wanted to have a limited yet diverse set of amino acids. The branched acidic one is interesting, but more costly from a synthetic point of view. As to whether these would form some sort of code, it would be inefficient. I don’t think the artist who put this together was thinking along those lines. While we don’t know exactly how alien scientists would think and approach a problem, we human scientists can likely come up with some reasonable scenarios. If this were an actual transmission from E.T., and the message did show these five amino acids, my speculation is that they know the makeup of our proteins and are telling us that they have some additional ones we don’t have.

 

Science content aside, what I really liked about this project was the test-like conditions of what citizen science might look like if alien messages were received from outer space. There was a vast open-endedness to the possibilities even though the final “solution” was very narrow and not particularly meaningful from a natural science point of view. From a social science point of view, I think this was a creative experiment! I look forward to being surprised by the ingenuity of how to get society at large to care about science, dive into it, and experience what it’s like to solve an interesting intellectual problem collectively.