Comment by OneDeuxTriSeiGo

Comment by OneDeuxTriSeiGo 3 days ago

7 replies

On this topic of ports/recomps there's also OpenGOAL [1] which is a FOSS desktop native implementation of the GOAL (Game Oriented Assembly Lisp) interpreter [2] used by Naughty Dog to develop a number of their famous PS2 titles.

Since they were able to port the interpreter over they have been able to start rapidly start porting over these titles even with a small volunteer team.

1. https://opengoal.dev/

2. https://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp

tetris11 2 days ago

Thats incredible, I had no idea Jak&Daxter was written with Emacs as the primary IDE!

  • OneDeuxTriSeiGo 2 days ago

    Lol yep. Emacs as the IDE, Allegro Common Lisp as the interpreter + HAL implementation, and GOAL itself being a Scheme-like.

    Naughty Dog in general was actually a primarily Lisp studio for a long time. It was only in the PS3 era with Uncharted and The Last of Us that they switched to C++ because trying to maximise the performance out of a Lisp interpreter environment with the complexity the Cell Processors added on a time and cash budget simply wasn't feasible for them.

    The Crash Bandicoot games were written in GOOL (Game Oriented Object Lisp) which they wrote prior to GOAL and the Jak and Daxter games. GOOL/Lisp of course was extremely important for the Crash Bandicoot legacy because by writing their own higher level interpreter they were given an excuse to through away the entire standard library that Sony gave them and start from scratch. That process allowed them to write a massively more performant stdlib and execution environment leading to Crash Bandicoot being able to support game environments an order of magnitude more complex than other games at the time could. And of course this allowed them to build in a system for lazy loading the environment as the player progressed through the levels which firmly cemented Naughty Dog in the video games history books.

    Andy Gavin actually has an incredible blog site (including a 13 part series on Crash Bandicoot and a 5 part series on Jak and Daxter) that has over the decades documented the history of their studio's game development process and all the crazy things they did to make their games work on hardware where it really shouldn't have been able to with the tools they were provided.

    https://all-things-andy-gavin.com/video-games-archive/

    • OneDeuxTriSeiGo 2 days ago

      Oh I should issue a minor correction. After talking with some people more familiar with it than me, Crash had a lot written in GOOL but it's not 100% GOOL like how Jak is 100% GOAL.

      Instead it's mostly enemy AI and the like which are built in GOOL and the game itself is instead a more traditional systems language (I believe C++). So instead of 100% it's more like 40/60 which tbh is still quite good.

    • tetris11 2 days ago

      Those blog posts are amazing. I never realised CB was Sony's unofficial flagship mascot to pit against Nintendo's Mario

      • OneDeuxTriSeiGo 2 days ago

        Yeah I absolutely loved reading through them when I discovered them the first time. An absolute treat and a portal in time.

BrtByte 2 days ago

If PS2Recomp ends up giving us even a fraction of what OpenGOAL unlocked for Jak and Daxter, it could be a huge deal for the rest of the PS2 catalog

  • OneDeuxTriSeiGo 2 days ago

    Absolutely. OpenGOAL really just set a new standard for what games preservation looks like.

    It's incredible seeing the community taking a 25 year old game, modernising it with accessibility features and quality of life, and even creating entirely new expansions to the game [1].

    Like beyond just keeping the game preserved on modern platforms, it's keeping the spirit of the game and the community attached to it alive as well in a way that it can continue to evolve and grow.

    I can only pray that PS2Recomp makes this a fraction as accessible to other games from this era.

    Oh and a similar project but on the nintendo side of the world is Ship of Harkinian by HarbourMasters [2] and the Zelda RE Team [3]. Zelda RET have half the Zelda games and are well on their way decompiling and reverse engineering the other half. And HarbourMasters have taken these decomps and used them as the groundwork for building comprehensive ports and remasters of these original games to a degree that fans could only dream that first party remasters and ports would attempt.

    1. https://www.youtube.com/watch?v=PIrSHz4qw3Q

    2. https://www.shipofharkinian.com/

    3. https://zelda.deco.mp/