FreshRSS

Zobrazení pro čtení

Jsou dostupné nové články, klikněte pro obnovení stránky.

Indiana Jones and the Infernal Machine now supports custom levels

Od: NekoJonez

Everybody has several games that mean quite a lot to them. For me, one of these games is Indiana Jones and the Infernal Machine. I not only grew up with this game, but I also have a lot of memories of this game. Outside of that, I also met some amazing friends through the community behind this game. I even did several speedruns of this game, and I’m an active member of the community. Now, color me surprised that 25 years after the release of this game, we got new fan-made content for this game. Not just fan made content in the style of fan patches to solve bugs with the game, a whole new level and promises of a level editor to create even more new custom content. This blew me off my socks and in today’s article I want to talk about it. So strap in and let’s get ready to play new content for one of the best Indiana Jones games ever made.

The new level – SED

There is a speedrunning discord server for this game. Well, it was a speedrunning discord server but for a few years now, this server has grown into a server of people who appreciate this game. If you want to join this discord, here is an invite link. When the server started to grow, several modders joined our server. One of these modders is going under the name of Urgon (currently) and what we didn’t know is that he was decompiling the whole game. Not only that, he was creating a level editor based upon an existing level editor.

This existing level editor is for Star Wars Jedi Knight & Mysteries of the Sith. Those games used an engine that formed the basis for the Jones3D engine. While he was developing that editor, he tested his skills by creating a new level. So, basically, parts of this new level are tests of the new level editor and what you can do with it.

Now, information about this new level and the download link can be found at this GitHub repository. If you want to download the actual level, you have to go to this page and click the green button named “Code”. In that dropdown, you can choose “download zip”. You’ll need that later if you want to install/play this custom level. Now, if you read the pre-mod or the installation instructions for this level, you might feel overwhelmed if you aren’t very technically inclined. That’s why two community members wrote two special tools to aid you in preparing your game.

You might ask yourself, like Klamath did in at the end of our stream of this custom level, why are there two tools for basically the same? Well, let me tell you the history about it. When I wanted to play the custom level, I had a bit of trouble myself while figuring out the tutorial. I also found that the required steps were quite a lot to do. So, I decided to start writing a PowerShell script that did all the steps. I announced that in the Indy3D discord that I was writing this. When I almost completed my tool, the_Kovic dropped his version of the tool.

Personally, I didn’t want to throw my work out the window and continued finishing my GUI version. When I finished, I didn’t convert my tool to an EXE and left it just as a script file you could run using a command line or a code editor. The next day, Kovic released a GUI version of his tool and I gave some feedback on his tool. In the days after that, I created an EXE version of my tool and we both kept adding features in our tool. He wrote his tool in C#, which is a bit friendlier to create an EXE. If I didn’t release my first version as a script only and converted it to an EXE, I think it might have been less overwhelming for people.

That said, Kovic thanked me for creating my tool since like he said on our stream: “It put my butt into gear to create a tool and write a GUI, which I normally don’t write“. On top of that, our tools aren’t meant to compete with each other. I can’t write C# and Kovic can’t write PowerShell. And it would be a shame to just delete work because somebody else was quicker or made their tool more user-friendly first. The result now is that we both have two very strong tools with a very similar, maybe even completely the same, feature set.

Outside a different choice of coding language, the biggest differences between both our tools are under the hood. In Kovic’s tool, you get more files than in my tool when you download the tool. And that’s because to prepare your game for custom levels, you need to extract several files in the resource folder. The tool used for extraction has a bug where instead of extracting the folders of the archive into the resource folder, it extracts them into separate folders, like if you would extract a zip file. Kovic packs a modified version of this extraction tool so that part of the process goes a bit faster. In my version, the tool just downloads the latest official versions of the tool and prepare the game that way.

In the end, both our tools give you the same end result. They prepare your game to install custom levels and play them. If you want to try out the_kovic’s tool, you can find the latest version on this releases page. If you want to try our my tool, you can find it on this releases page. Feedback to our tools is always welcome! If you find an issue or if you have an idea, feel free to hit us up, and we will look into it.

Earlier I talked about a stream of the level we did. Klamath, the_Kovic and me did a live stream where we played through this level. Now, I have to emphasize that release of this level is an impressive technical achievement. Creating a level for a 3D game isn’t easy and requires a lot of work. It’s even more impressive when you know that not everything is documented about the engine, and you have to decompile a lot of it. In the next part of this article, I’m going to talk about the level itself and critique it.

If you don’t want spoilers, I’d advise you to skip that section for now and come back later. Now, I want to say that I start reviewing the level in a moment, but this feedback is mostly meant for people who want to make new custom content. What did this new level do right and wrong if you look at it as a player who doesn’t know the technical background of this level? This isn’t meant to break down the amazing work the modders did to make this work.

Reviewing the new level

Editorial note: this review will spoil quite a lot. If you don’t want to get spoiled, you have to skip this section of the article. This isn’t a walkthrough of the level either. Some sections are skipped, I’m only going to talk about the sections I want to talk about.

The new level takes place 25 years after the ending of the original game. Indy returns to his Canyonlands dig site. You are set loose at the tent where Sophia picked Indy up with a helicopter to start the Infernal Machine adventure.

In terms of new content, there isn’t a lot new to see. Some ladders are missing and some parts of the level are blocked off. Also, all treasures are missing that you would usually find in the level.

Before I continue, I want to mention that some parts of this level are made quite difficult on purpose. The developer wanted to give us the feeling we were young kids again, playing this game for the first time, and have us figure out the new puzzles by ourselves. Yet, finding a correct balance between difficulty and unfair is a very fine line to thread. Personally, I think that in some sections, the developer crossed the line into unfair level design.

When running on the top section, you notice that there are some new voice lines. These voice lines are made possible with a voice cloning AI tool that was trained on lines from Doug Lee, the original voice actor for this game. The new voice lines sound amazing, and if you didn’t know better, you’d think that Doug Lee came back to record the new lines. In most cases, these voice lines really fit Indy’s personality and fit right into the game.

We come to our first snag when we want to go to the new content. I can understand not seeing the shovel and being confused, since it’s hanging at the jeep on top. And you know what’s even more confusing, the other side of the jeep model has a shovel in its texture! Anyhow, when you pick up the shovel and dig up the Infernal Machine part, it’s clear that you need to break a wall. Here comes one of the worst parts of this level. The location of this cracked wall is insanely well hidden. It’s in one of the last places you’d look, and several of the first players ran around for hours upon hours in Canyonlands before it was found. And when it was found, it made us annoyed.

It’s a clear example of how players who are used to the level, overlooking the obvious. The wall you need to break has an actual cracked wall texture, but it’s behind something you can’t see through. I think it would have been fine if the location, where it is at, had a bigger ledge so you’d notice it somewhat instead of just having to go on a wild goose chase.

Now, we enter the new area. We come to a big open space where the next set of puzzles are. The first puzzle is actually a jumping puzzle. Now, I highly advise you to not play this level if you haven’t played through most of Indiana Jones and the Infernal Machine. Not that there are spoilers, but because some of the jumps in this level are straight up difficult and not what you really expect from this game. Kovic calls it “Kaizo Jones” for a good reason.

There are some small platforms and not having the look key working is going to be a pain in this section. Since, there are some moments where you need to be able to free look and not being able to see beneath or above you will make things a lot more tricky. After you finished these jumps, you might start to notice that the developer of this custom level added some details. Like, the rope bridges are gently moving in the wind. This is something that isn’t present in the original game. It’s a new “COG” script that makes that possible.

These cog scripts are a blessing for custom content. Since, this game isn’t hardcoded at all, so if you learn how to write these cog scripts, you can basically write new mechanics as well. It’s insane what possibilities there are going to be in the future for this game. I hope there is going to be good documentation so that custom level creaters know what’s possible and what’s impossible with the level editor.

While you are exploring this area, you notice that it’s huge. This also explains why it takes quite a while to load this level. Currently, modders are looking into why it’s running so slow. Since, we don’t really know if it’s the level size or something else slowing down the loading of this level.

So, after jumping around the central column, you’ll arive at the shed. Here you notice you can actually enter the shed from the top. Kovic explains it quite well during the stream. If you want to hear some technical explanations on how this level works, I’d advice you to watch our stream. Since there is a lot of interesting development talk in there. Later, Kovic and myself had a contest in trying to quote voice lines from the main game. We got close to 200. Kovic won that because I said a line he already said.

After you picked up everything from this shed and climbed outside, you experience another new mechanic of this game. It’s a mechanic that gets backported from Indiana Jones and the Emperor’s Tomb. The fact you can use your whip to go over a zipline.

After you returned and struggled with getting across the other bridge, you will encounter other parts of this level. Here you’ll encounter two voice lines that straight up lie to you. The first voice line is that you need more force, explosives to break a rock that’s blocking your way forwards. Here is the issue with that, you get an explosive barrel later. You need to find an extremely hidden swim tunnel in the water. It’s not the only hidden thing in the water, so investigate behind and underneath rocks quite well. Since, these puzzles in this water border in the unfair territory. What makes that explosive voice line even more evil is that there is a box of TNT in the shed earlier. But what’s the second voice line that lies to you?

Well, that is after you made your way past said boulder. You find a minecart and interacting with it, Indy says that it will run with gasoline. And there is still gasoline left in the shed. Sadly, you can’t pick it up anymore. Now, this is a red haring, you don’t need this minecart at all.

By now, you have learned that this level likes to break the rules of how the main game is designed. You’ll have to think outside of the box sometimes to beat this level. But, for some jumps, you need to use your knowledge of what’s possible and impossible to progress. This makes it quite tricky sometimes to progress. And this brings me to a conclusion we also said on stream. I think that the issue is that people expected a more tame level than what we actually got and that might turn some people off. But, I’m so glad that the quick save system exists in this game. So, abuse the quick save system and make multiple saves since you’ll need them if you aren’t a veteran player of this game.

Anyhow, let’s get back into the flow of the level. After we completed the lever puzzle, we go back towards to the huge open area and take the lift to a new location. What follows is a totally new area where it’s a good thing if you saved up on health packs and you have a great sense of direction.

So, the short minecart ridge comes to an end. It doesn’t take long before you find yourself into a watermaze. This watermaze is unfair in my honest opinion. Klamath had a tricky time solving it and he had to use almost every health pack to get through it. Without Kovic pointing out the right tunnel, I think it would have made the stream quite a bit longer. There was supposed to be a minecart section instead of this swimming maze, but the developer had a hard time making the minecart section to work and he gave up and made this swimming maze.

Now, I’m all fine with this swimming maze, but the map glitches out at certain parts. I have a mediocre sense of direction and I wanted to rely on the map. The map doesn’t always render the tunnels correctly. You sometimes swim off the map or “in nothingness”. Sadly, I have to draw my own map. I wish I still had it, since it would make for a nice screenshot here… But I threw it out but me and my clumsiness… I knocked over my waterbottle over it.

After the swimming maze, we get a new section of “Kaizo Jones”. Where we get some extremely tricky platforming. Here is where you need to use the look key again and be sure you are playing in 4:3. If you are playing in another resolution like 16:9 or 16:10, this will also be one of the moments where you don’t see all the information.

The block puzzle that follows, feels right out of Tomb Raider. The initial reviews of this game called out this game as a Tomb Raider clone. While, this game does the formula a whole lot differently. We even talked about that during the stream. In terms of theming, Infernal Machine is a lot better. Tomb Raider feels like obstacle courses. But that’s thanks to a different engine and control style. If you want to hear the whole discussion, you can watch the stream from this point. Excuse Kovic’s internet being spotty while he was replying.

After the block puzzle, a new path opens in the swim maze. Then, some platforming comes. Something I love is how there is even a troll hidden inside the platforming. It caught me off guard and made me smile. This platforming section was also love to do. It felt like a real test on how well I know the game. This platforming section feels a lot better put together and feel less cryptic on where you need to go next. You really start to notice that the developer was getting more used to the level editor and made better puzzles. The moment of having to use the whip to swing over the gap while the platform underneath you was breaking was amazing.

After that, we get into the finale of this level. We jump into a portal and we land in a playable area which is shown at the end of Shambala, the 4th level in the original game. That area that’s shown to you after you have beaten the Ice Guardian. The path that takes you to Palawan Lagoon. It was possible to explore that using cheats and modified saves, but now it’s in a level for real. Exploring the little house at the end brings us to something you totally don’t expect this custom level to do. You’ll find a parchment inside with a riddle and at the end you notice something in red saying: “MAT -> ZIP”.

There is some meta gaming now going on. You’ll need to make a hard save and exit your game. You’ll need to go to your resource folder & then open the MAT folder. In there you’ll need to rename “SED.MAT” to “SED.ZIP”. You’ll also need to enter the password for the zip, since you get a new cog script to continue the level, which you need to place in your cog folder. In there, there is another surprise. But, that’s something I’m not going to spoil. But, be sure that Kovic is playing with that surprise and maybe I’m going to dig into it. PS, the next paragraph is in white with the right spelling of the password:

Marcus

The way the level ends is bittersweet. If you solve the final puzzle, something special happens and you can beat the level. You could argue that the ending of this level is “lazy” or “creative”… But, it’s an amazing way to wrap up the story in one level with a nice bow.

At the start of the custom level, I felt that it was quite rough around the edges and it had some moments that felt badly designed. In terms of game design that is. If you look at it visually and level flow wise, I personally think that this level would fit right into the original game as a final challenge. But, the further you go into the level, the more you start to notice that the developer of this level is getting used to the tools and the editor and more polished puzzles and area’s are coming through. You notice the journey of the developer and see it becoming better and better.

I want to give a big congrats to everybody who was involved in releasing this custom level. It’s a blast to play and I can’t wait to see more custom levels. The stream I did with this level was one of the best streams ever and it was also quite a lot of fun to write the tool to help people play this custom level. I’m curious what you think about this custom level and/or the content of this article. Feel free to drop something in the comment section down below.

And with that, I have said everything I wanted to say about this for now. I want to thank you so much for reading and I hope you enjoyed it as much as I enjoyed writing it. I hope to welcome you back in another article but until then, have a great rest of your day and take care.

Introducing classroom management to the Code Editor

I’m excited to announce that we’re developing a new set of Code Editor features to help school teachers run text-based coding lessons with their students.

Secondary school age learners in a computing classroom.

New Code Editor features for teaching

Last year we released our free Code Editor and made it available as an open source project. Right now we’re developing a new set of features to help schools use the Editor to run text-based coding lessons online and in-person.

The new features will enable educators to create coding activities in the Code Editor, share them with their students, and leave feedback directly on each student’s work. In a simple and easy-to-use interface, educators will be able to give students access, group them into classes within a school account, and quickly help with resetting forgotten passwords.

Example Code Editor feedback screen from an early prototype

We’re adding these teaching features to the Code Editor because one of the key problems we’ve seen educators face over the last few months has been the lack of an ideal tool to teach text-based coding in the classroom. There are some options available, but they can be cost-prohibitive for schools and educators. Our mission is to support young people to realise their full potential through the power of computing, and we believe that to tackle educational disadvantage, we need to offer high-quality tools and make them as accessible as possible. This is why we’ll offer the Code Editor and all its features to educators and students for free, forever.

A learner and educator at a laptop.

Alongside the new classroom management features, we’re also working on improved Python library support for the Code Editor, so that you and your students can get more creative and use the Editor for more advanced topics. We continue to support HTML, CSS, and JavaScript in the Editor too, so you can set website development tasks in the classroom.

Two learners at a laptop in a computing classroom.

Educators have already been incredibly generous in their time and feedback to help us design these new Code Editor features, and they’ve told us they’re excited to see the upcoming developments. Pete Dring, Head of Computing at Fulford School, participated in our user research and said on LinkedIn: “The class management and feedback features they’re working on at the moment look really promising.” Lee Willis, Head of ICT and Computing at Newcastle High School for Girls, also commented on the Code Editor: “We have used it and love it, the fact that it is both for HTML/CSS and then Python is great as the students have a one-stop shop for IDEs.”

Our commitment to you

  • Free forever: We will always provide the Code Editor and all of its features to educators and students for free.
  • A safe environment: Accounts for education are designed to be safe for students aged 9 and up, with safeguarding front and centre.
  • Privacy first: Student data collection is minimised and all collected data is handled with the utmost care, in compliance with GDPR and the ICO Children’s Code.
  • Best-practice pedagogy: We’ll always build with education and learning in mind, backed by our leading computing education research.
  • Community-led: We value and seek out feedback from the computing education community so that we can continue working to make the Code Editor even better for teachers and students.

Get started

We’re working to have the Code Editor’s new teaching features ready later this year. We’ll launch the setup journey sooner, so that you can pre-register for your school account as we continue to work on these features.

Before then, you can complete this short form to keep up to date with progress on these new features or to get involved in user testing.

A female computing educator with three female students at laptops in a classroom.

The Code Editor is already being used by thousands of people each month. If you’d like to try it, you can get started writing code right in your browser today, with zero setup.

The post Introducing classroom management to the Code Editor appeared first on Raspberry Pi Foundation.

An integrated learning experience for young people

We’re currently trialling the full integration of our Code Editor in some of the projects on our Projects site, with the aim of providing a seamless experience for young learners. Our Projects site provides hundreds of free coding projects with step-by-step instructions for young people to use at school, in Code Clubs and CoderDojo clubs, and at home. When learners make text-based programming projects in our Python and web design project paths, they use our Code Editor to write and run code in a web browser.

A young person at a computer in a classroom.

Our new integrated learning experience allows young people to follow the project instructions and work in the Code Editor in a single window. By providing a simpler workspace, where learners do not need to switch between windows to read instructions and input code, we aim to reduce cognitive load and make it easier for young people to learn.

How the new integrated experience works

In the integrated project workspace, learners can access the project instructions, coding area, and output (where they can see what they have made) all in the same view. We have reorganised the project guides into short, easy-to-follow steps made up of simple instructions, including code snippets and modelled examples, for learners to work through to create their projects. The project guides feature fresh designs for different types of learning content, such as instruction steps, concept steps, code snippets, tips, and debugging help.

A screenshot of the new Code Editor.

We have also optimised this learning experience for young people using mobiles and tablets. On mobile devices, a new ‘Steps’ tab appears alongside the ‘Code’ and ‘Output’ tabs, enabling learners to easily navigate to the project guide and follow the steps to make their projects.

Try out our new learning experience

We are testing our new integrated learning experience as a beta version in three projects: 

  • Hello world (part of our ‘Introduction to Python’ project path) 
  • Target practice (part of our ‘Introduction to Python’ project path) 
  • Anime expressions (part of our ‘Introduction to web development’ project path) 

In each of these projects, young people can choose to complete the original version of the project, with the project instructions and Code Editor in separate windows, or click the button on the project page to try out the new integrated learning experience.

A screenshot of the new Code Editor.

We’d love to hear how your young learners get on with this new integrated experience. Try it out in the three projects above and share your feedback with us here.

Code Editor developments have been made possible with generous support from the Cisco Foundation.

The post An integrated learning experience for young people appeared first on Raspberry Pi Foundation.

❌