Active player (397)
Joined: 3/30/2012
Posts: 401
Current Ion Fury TAS Videos Any% z1a1 any% (v1.1): https://youtu.be/b6xYRo0zV98 z1a1 any% (v1.02): https://youtu.be/u3zwsw3kuq4 z1a5 any% (old video with grenade launcher): https://youtu.be/aR3m3O1t9Wg z1a5 any% (new video without grenade launcher): https://youtu.be/R9HNetpth4E Zone 1 any%: https://youtu.be/LoY4lNuUTHk z2a1 any%: https://youtu.be/teUYTJkfvdg 100% z1a1 100%: https://youtu.be/BYoW2iB3nek z2a3 100% (WIP): https://youtu.be/EjAOBedd8iA I've wanted to TAS this game since it came out, and now it's finally possible. Well, it's been possible for a while apparently but I only got it working recently. I'm running this through WSL 2 on Windows 10. Ion Fury is a modern game running on a Build Engine source port called eDuke32. The great thing about this is that it means other Build Engine games can also be TASed if they run in eDuke32 (or its forks). This includes Duke Nukem 3D, Shadow Warrior, and Blood, among others. There's plenty more to this game, but this is just a basic overview of Ion Fury speedrunning. I'm confident that you'll see an Ion Fury TAS on this site at some point in the future. Like other Build Engine games, Ion Fury has a huge amount of speed tech and it's got a very high skill ceiling. Here are some of the techniques Build Engine speedrunners take advantage of: SR-50 This is a movement technique that carries over from Doom. Typically, you'll see speedrunners move by strafing diagonally. They use a combination of the forward + left/right movement key to do this. This is sometimes called "SR-40" but I've never heard Ion Fury speedrunners say that. SR-50 is when you take that to the next level and also hold down the "strafe" key while turning the camera in the direction you're moving. This makes you go quite a bit faster in Doom but it only makes a small difference in Build Engine games. It's about 6% faster in this game if I recall correctly. So SR-50 movement inputs go like this: W + D + <strafe> + turn right In case you don't know, the "strafe" key is a key people would use back in the day when a lot of people played first-person shooters with only the keyboard. The arrow keys would move you forward or backward and let you turn left and right. But if you held the strafe key, the left and right arrows would make you strafe sideways instead of turn. If you combine W + A or D and Strafe + left or right, you can think of it like you're moving twice, which makes you go a little faster. At least, that's the way I visualize it. Usually, the strafe key is Left Alt but I bind it to Left Shift because libTAS doesn't seem to let me use the Alt key. Turning right can be done with the right arrow key so you don't have to be moving the mouse constantly. Speedrunners will bind these keys to something more comfortable to use but that doesn't matter for a TAS. Clipping through walls Like other build engine games, Ion Fury has plenty of wall clips to go around. It's not quite as broken as the older games (actually, nowhere near as broken) but it still has its fair share. Here are a few examples: https://youtu.be/bL111PSESIM https://youtu.be/v0z0ZSA9r6g Melee techniques In the 2nd video in the previous paragraph, you'll notice that deeperjungle is using the melee weapon a lot. This is because swinging the baton while you're in a tight space actually makes you move faster. I don't know why it happens, but it does. So he'll use the baton any time he's crouching under a sliding door or in a vent. Using the melee weapon underwater also makes you swim faster. Grenade Jumping When you read "grenade jumping", you might think it means we'll blow ourselves up with a grenade to boost off the explosion somewhere. Well, it doesn't work like that here. Sure, getting shot in the back or blowing yourself up can make you move forward a little faster, grenade jumping in this game works differently. Here's what I mean: https://youtu.be/w_3OERoD8Zw In this game, you shoot a grenade then jump off it while it's in the air. The explosion doesn't help you, the actual grenade does. Pretty cool, huh? Lots of things can be skipped with grenade jumping, including entire boss fights. Categories There are several speedrun categories for this game, but the two I care most about are any% and 100%. Any% is pretty self-explanatory if you've watched speedruns. Just run through the game as fast as possible. 100% is where it gets interesting, though. In 100%, the goal is to beat every level, find all the secrets, and kill all the enemies. With over a hundred secrets and thousands of enemies on the highest difficulty, it's a really insane category and it's so much fun to play and watch. The game also has a built-in 100% counter which tells you if you got everything, which is nice.[/b]
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Looks like a real aimbot! I don't know if visitors would like this style of turning. If I were making that, I would at least try to imitate fast turning, like I do in Doom. 100% will really be insane. You'll need to take everything into account. Backtracking is not that common in this game, but I'm sure you'll have to leave some enemies behind and hope they won't run too far away trying to follow you. A wallhack or a map with enemies shown on it would really insure you won't have to redo a piece of work because you had forgotten something. BTW, how did you build that TAS? I'm not aware of libTAS interface. Can you set mouse coordinates for each frame?
other Build Engine games can also be TASed if they run in eDuke32 (or its forks). This includes Duke Nukem 3D, Shadow Warrior, and Blood, among others.
Shadow Warrior is not really on the list. VoidSW doesn't have a Linux build yet (as far as I know) and I don't see much progress for the engine to get into a release.
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
Dimon12321 wrote:
Looks like a real aimbot! I don't know if visitors would like this style of turning. If I were making that, I would at least try to imitate fast turning, like I do in Doom. 100% will really be insane. You'll need to take everything into account. Backtracking is not that common in this game, but I'm sure you'll have to leave some enemies behind and hope they won't run too far away trying to follow you. A wallhack or a map with enemies shown on it would really insure you won't have to redo a piece of work because you had forgotten something. BTW, how did you build that TAS? I'm not aware of libTAS interface. Can you set mouse coordinates for each frame?
other Build Engine games can also be TASed if they run in eDuke32 (or its forks). This includes Duke Nukem 3D, Shadow Warrior, and Blood, among others.
Shadow Warrior is not really on the list. VoidSW doesn't have a Linux build yet (as far as I know) and I don't see much progress for the engine to get into a release.
The turning style is one of my biggest concerns. Personally, I love it because it's hilarious to see. But I'm trying to think of what somebody would think if they've never played the game before. There aren't many FPS TASes that can aim like this so it's sort of uncharted territory for me. Flicking the camera to kill an enemy quickly is something I did a lot in my GoldenEye Wii TAS, but the controller sensitivity is nothing compared to this. There are so many enemies to shoot and so many places they can be that I don't see a good way to make a full TAS without this "aimbot" style of aiming, but I could try to make the turns around corners look a little smoother. The only problem with smooth turning is that you can't SR-50 while you're turning. It only makes a 5 or 6% speed difference in this game so it might be worth it for the entertainment value, especially when I'll only be turning for maybe half a second, and I lose speed when I turn anyway. I'll have to look into it. Regardless, there is still going to be some instant camera motion just because of the nature of TASing this kind of game. Also, libTAS has full mouse support. There are two ways to go about it. You can have absolute position, or relative position. Absolute position is just telling the game where you want the mouse cursor to be at on the screen. Relative position is what I'm using most often because it means I can tell the game "move the mouse +200 to the right" and it'll do it, regardless of where the mouse currently is. This is great for games where you control the camera with the mouse. Ah, I wasn't aware that VoidSW doesn't support Linux. That sucks. I know one of the guys working on it so I think it's slowly being developed, but right now their priority is on Ion Fury because of its expansion pack that's coming out soon. I imagine VoidSW will get more work done on it in the months after Ion Fury's expansion pack is released. Speaking of the expansion, I'm absolutely psyched for it. From what I've seen of it in the trailers so far, it's gonna be insane. I'm still kind of blown away that I'm TASing a modern game that's still getting updates and expansions released for it. The game is also fully open source and all the developers are on discord. They're really open about anything you'd want to know about how the game works. Anyway, I'm going to wait to start any serious projects because updates don't happen all that often and this new expansion is really gonna shake things up for 100%. In the meantime, I'm going to keep TASing the current version of the game and practice stuff for 100% and any% too. I'll keep posting in this thread as I get new videos up. Edit: I forgot to mention anywhere so far, but I plan to TAS the full game at 120 fps or maybe even 240 fps if I can handle it, so a lot of the one-frame aimbot stuff probably won't be visible for most people watching on YouTube. I'll still try to make the turns look smoother without losing any time.
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Alright then. Wish you luck! BTW, I noticed BuildGDX supports Shadow Warrior as well, but tasvideos doesn't say if the engine works fine or not. Would you please try it out on libTAS?
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
I'm talking with someone on the 3D Realms discord about VoidSW (he's a huge Build Engine game collector and a Linux user) and he says it should be possible to build a Linux version of VoidSW from the code on Duke4 the same way you can with eDuke32. So there may be hope that VoidSW works on Linux. I'd honestly expect it to since it's based on eDuke32 in the first place. Same with nBlood if that's not already on Linux. If VoidSW doesn't pan out, I'll check BuildGDX and see if that works. Oh, one more thing. I've been experimenting with smoother turns and they look way better without losing any time. It's still incredibly fast, but I think it's a lot easier to tell what's going on now. I won't go back and re-do everything since what I'm working on now is essentially a practice TAS, but a full-game TAS in the future should look really smooth all around. As I mentioned earlier, there will probably still be some one-frame camera flicks here and there but general movement is going to look really smooth. I uploaded a video on the TASVideos discord (in the #tas-production channel) that shows it. When I get more work done on this, I'll upload what I have so far and post it here. Edit: I also wanted to say that the TAS I've done so far is 16 seconds ahead of the 100% IL record 11 seconds into the run. It's safe to say a full 100% TAS is going to be pretty crazy.
Active player (397)
Joined: 3/30/2012
Posts: 401
Well, I've been working with the guy I mentioned earlier, and he successfully built a Linux version of VoidSW and has the game running. However, it doesn't work for me in WSL 2 because the startup window is blank. Normally, the startup window lets you select your resolution and screen settings, but I can't get past it because it comes up blank with no start button on it. I've also tried disabling the startup stuff through the config files but it isn't working for me. My guess is that for now, Shadow Warrior should be TASable on a native Linux machine but I can't get it working in WSL2 on Windows 10. I'll post again if I get it working but I don't expect that to happen for a while.
Active player (397)
Joined: 3/30/2012
Posts: 401
https://youtu.be/I1GHOwLDYrE I'm not done with the level yet but I wanted to show my progress on it today. You can see what I mean with the smoother turns once I kill the enemies in the bathroom. The two turns coming out of there are pretty smooth without losing any time. The rest of the video doesn't have turns quite as smooth as that but it's mostly because I don't want to waste time when I turn away from my line to shoot enemies. I'll write more detailed notes about what's going on in the video when the full level is done.
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
You and Sunday inspired my to do that. It's not Ion Fury, but still Link to video
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
Pretty cool! I thought about doing an E1M1 any% TAS on PC just to see what sort of crazy time is possible. I'll have to let the Duke 3D speedrunners know about the TAS tools now. Maybe they'll start working on one sometime. I've never seen Duke Nukem 3D 100% runs. That's pretty interesting. One of the things I remember hating about Duke 3D was how long most of the enemies take to kill. Your basic weapons become obsolete really quickly. It makes sense that they give you access to the rocket launcher and mines and stuff like that in the first level. It's about the only way you can kill enemies quickly in that game. I asked Ion Fury's developers about weapon balancing and they lean more on the side of "glass cannon" with their game. Enemies can die with one magnum headshot but you can also get killed really quickly if you're not careful. I think it makes the game a lot more fun. Anyway, I still think TAS runs of Duke Nukem 3D would be great fun to watch. Your run there was awesome because you still manage take out the enemies quickly.
Active player (397)
Joined: 3/30/2012
Posts: 401
https://youtu.be/jlGEoI3XsOE Deeperjungle has also started TASing this game, and here he's made a really impressive TAS of the first level. There's a lot going on here despite the level being so short and simple, so I'll do my best to explain it. The big skip you'll see at the beginning is done by jumping on Heskel's plane and getting across the gap. There's a pretty small window to get over there and the jump itself is really weird. I've done the skip before but I don't really know all that goes into it, unfortunately. There are things you can do to make the jump easier but that doesn't really matter for a TAS. There is some time to kill in the beginning so deeperjungle uses this opportunity to get some food and water before making the jump. This is important because your top speed increases for every point of health you have over 100. He also shoots all the trash cans in the long straightaway which he manipulates to drop a bunch of syringes, which gets him even more bonus health. He enters the tunnel with 135 health, which gives him roughly a 5% speed boost. It's not much, but it makes a difference in a stage like this. Deeperjungle is already working on improving this, and I imagine he'll do more levels over the coming weeks. I'll post the videos as he finishes them.
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Speaking of planning, why there are no good map editors for Build Engine? When I met Doom Builder, I didn't have to even dig into the net to find out how to open a WAD, how to observe a map and enemy placements on different difficulties. Mapster32 is a real inhumanity to mere mortals who just want to open and analyze existing maps. It's really complex and it keeps crashing.
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
Mapster32 really sucks. It's a wonder anybody's able to do anything complex in it. I haven't used Doom Builder before, but I've seen people use it and it looks a thousand times easier than Mapster32. I think the main reason for it is because everybody that's capable of improving Mapster32 is already comfortable enough with it that they just keep using it as is. Maybe one day we'll see improvements to it but I think they're all busy with Ion Fury development.
Active player (397)
Joined: 3/30/2012
Posts: 401
https://youtu.be/aR3m3O1t9Wg Another TAS from deeperjungle. This time he's doing z1a5, where he uses the grenade launcher to boost himself over the gate at the end and skip the boss fight. He also shoots the grenades at the walls so they blow up behind him, pushing him forward.
Active player (397)
Joined: 3/30/2012
Posts: 401
I've been slowly working on the z1a1 100% TAS. Here's what I've got of it so far: https://youtu.be/wnXLfyD4-jw
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Great stuff! Where can I download this aimbot? (just trolling)
FitterSpace wrote:
I'll have to let the Duke 3D speedrunners know about the TAS tools now. Maybe they'll start working on one sometime.
Did anyone said he wished to try something?
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
Dimon12321 wrote:
Did anyone said he wished to try something?
I don't know if anybody will right now, but deeperjungle is interested in Duke Nukem 3D TASing. A new version of pkDuke3D just released and I think they're working on a Linux version, too. That source port is really accurate to the DOS version and is designed for speedruns, since it doesn't alter the gameplay at all. The new version of pkDuke3D also supports the World Tour version so it's easy to get the game now. It doesn't support Episode 5 yet, but maybe it will one day. If anybody ever makes a Duke Nukem 3D TAS, it would be best on that source port.
Active player (397)
Joined: 3/30/2012
Posts: 401
https://youtu.be/BYoW2iB3nek It's done! I've finally finished the z1a1 100% TAS, in 51 seconds exactly. I learned so much from making this. I'm going to write up a summary of the TAS and go over some of the things I think I could improve on. Regardless, I'm really happy with this. It's probably my favorite TAS I've worked on up to this point.
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Great work!
FitterSpace wrote:
Regardless, I'm really happy with this. It's probably my favorite TAS I've worked on up to this point.
Unlike GC and Wii, here the results of your actions are more predictable. Like you're in full control of the game's control. Am I right?
TASing is like making a film: only the best takes are shown in the final movie.
Active player (397)
Joined: 3/30/2012
Posts: 401
Dimon12321 wrote:
Great work!
FitterSpace wrote:
Regardless, I'm really happy with this. It's probably my favorite TAS I've worked on up to this point.
Unlike GC and Wii, here the results of your actions are more predictable. Like you're in full control of the game's control. Am I right?
Absolutely. I'm not sure I could go back to TASing GameCube/Wii games until Dolphin has a version of TASStudio, or something similar to that. There's an input editor in Dolphin 5.0-lua but I couldn't figure out how to get it working. In contrast, libTAS is so intuitive that it just works and does what I tell it to do. It's not perfect, but I'm really impressed with libTAS so far. Also, it's really nice to be TASing a PC game. I think I mentioned it before but here I can tell the game "put the mouse here" and it'll do it right when I say. With console TASing, I feel limited by the fact that I can only do inputs the way the controller lets me. Here, I can do anything at any time.
Active player (397)
Joined: 3/30/2012
Posts: 401
Here's what I have so far of the z2a3 100% TAS. I haven't worked on this for a while but I figured I'd upload it anyway. https://youtu.be/EjAOBedd8iA The new 2.0 patch is out and I've been playing that a lot lately. I think it'll be faster for 100% but it's close. I don't really care, though. I'll do a 100% TAS on whatever the latest patch is at the time as long as it doesn't completely kill the speedrun. The 2.0 patch improves performance and adds a few new features, like an item pocket that lets you carry items around without using them (double damage, double jump boots, berserk). There's a lot of potential there. The downside is that some glitches have been patched but it's okay. Most of it is pretty small stuff anyway. I think the item pocket will make up for the time lost from the patches. Even if it's a little slower, I'll do a 100% TAS on the latest patch at the time because the game feels better to play than it did before. Like I said before, I'll probably wait until after the expansion pack is released since we'll have a better idea of Ion Fury's roadmap when it comes to new features and whatnot. I'd hate to start a 100% TAS only to have some really cool feature released when I'm halfway done with it. For now I'll stick to doing individual levels until the game starts getting fewer updates, which I think will happen after the expansion pack is released.
Active player (397)
Joined: 3/30/2012
Posts: 401
deeperjungle made a new z1a5 TAS. It's not incredibly optimized but it showcases a new way to finish the level a little faster. The clip itself actually saves a lot of time because you don't have to get the grenade launcher, but the grenade launcher lets you boost yourself with explosives, so the net time save isn't as much as it could be. https://youtu.be/R9HNetpth4E
Active player (397)
Joined: 3/30/2012
Posts: 401
Deeperjungle made a new TAS for z1a1 where he shows off a new clip to get to the end a little faster. He spent some time optimizing the food pickups as well. The reason is because you move a little faster if you have more than 100 health. The more health you have beyond 100, the faster you go. https://youtu.be/b6xYRo0zV98
Active player (397)
Joined: 3/30/2012
Posts: 401
Here's another new z1a1 TAS from deeperjungle. This time, he's playing on an older version of the game, so there are a few differences here I need to explain. This is likely a problem with libTAS, but the 1.02 version seems to be locked at 30 frames per second. We don't know why this is happening, but nobody noticed it until now because all Ion Fury TASes up to this point have been done on the later version of the game. This shouldn't affect gameplay all that much, but it makes it a worse version to TAS. As far as real gameplay differences, the two biggest ones are the sprite collision changes and the clipping changes. Version 1.02 had some really nasty clipping code which allowed you to clip through walls more easily. They totally revamped that code for version 1.1 so a lot of the potential tricks in 1.02 don't work anymore. In this version, it's also easier to jump over sprites, and there are a lot of weird situations where you can walk over sprites without jumping over them. Pretty weird stuff. Overall, v1.1 is still faster for speedruns but there are cases where an older version might be better for a specific level. In this level, deeperjungle takes advantage of the bad clipping code in this version and clips through a fence and a wall in ways he wouldn't be able to on version 1.1. He also doesn't pick up any food because he wanted to see how much of a difference it made. Also, the game looks like it's lagging a lot, because it is. That's not a problem with the video. Version 1.02 is missing a lot of optimizations that were made in later versions of the game, and libTAS isn't treating the game too well either. https://youtu.be/u3zwsw3kuq4
Active player (397)
Joined: 3/30/2012
Posts: 401
Link to video I've started working on a full-game Ion Fury TAS! Here is the first zone of seven.
Dimon12321
He/Him
Active player (478)
Joined: 4/5/2014
Posts: 1120
Location: Ukraine
Dimon12321 wrote:
Alright then. Wish you luck! BTW, I noticed BuildGDX supports Shadow Warrior as well, but tasvideos doesn't say if the engine works fine or not. Would you please try it out on libTAS?
I got it launched, but looks like none of the games read input. VirtualBox also barely handles anything beyond regular surfing. Having "Native events" enabled lets some fantom mouse reading, but the keyboard is still off. "Prevent writing to disk" has to be on or Java Runtime won't deploy necessary libraries to run the game. Rest of the options doesn't seem to affect anything.
TASing is like making a film: only the best takes are shown in the final movie.