1 2 3
17 18
upthorn
He/Him
Emulator Coder, Active player (391)
Joined: 3/24/2006
Posts: 1802
Off topic, but I actually know the guy who made eversion from another online community. I'd be using an even older (and a much harder) version of Eversion, but I seem to have lost track of it. Of course, the guy hates the entire concept of TASing, even when it's not one of his games under discussion...
How fleeting are all human passions compared with the massive continuity of ducks.
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
upthorn wrote:
Off topic, but I actually know the guy who made eversion from another online community. I'd be using an even older (and a much harder) version of Eversion, but I seem to have lost track of it. Of course, the guy hates the entire concept of TASing, even when it's not one of his games under discussion...
You know Zara? Cool. Also brings up whether his Zeux World game works too.
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Emulator Coder, Skilled player (1310)
Joined: 12/21/2004
Posts: 2687
There is probably no reason why the games mentioned so far such as Elastomania or Eternal Daughter shouldn't be able to work, it's mostly just a matter of making sure my code is bug-free enough for them to run, and making sure I have all the basic drawing and input methods handled. Generally, the fewer bugs and oversights there are, the more games will naturally work (this is quite similar to the compatibility situation with emulators, come to think of it).
Joined: 8/15/2008
Posts: 19
Wow! Is it likely flash games will work? They can be made into a standalone .exe I believe.
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
Flash games could work, but I don't think the authors will appreciate their works being decompiled for the sake of TASing... Then again, several other games have already been partially disassembled by TASers, so, I have no idea where to stand on the subject. =|
Joined: 8/15/2008
Posts: 19
you don't need to decompile to create an .exe from a .swf The flash authorship tool has the option "create projector" in the file menu when opening a .swf, and there are other third party tools like SWF studio that take a .swf and spit out an .exe (by embedding the flash player in the .exe I believe). Anyway, I'm asking mainly because of a game called N with a pretty big highscoring/speedrunning community, and this game comes as an .exe anyway.
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
While we can easily make a exe from a swf, I am sure the swf needs to be decompiled to add the TASing features. Unless someone is insane enough to create a flash emulator.
Joined: 8/15/2008
Posts: 19
oh OK, I see. i was assuming nitsuja's tasing system he's building would just make any .exe tasable (within reason), and that would include flash .exe's.
Player (6)
Joined: 10/25/2009
Posts: 22
Um, nitsuja has said that his system does not require reverse-engineering and isn't aimed at any particular game.
Emulator Coder, Skilled player (1310)
Joined: 12/21/2004
Posts: 2687
Yeah, there is no need to decompile flash games or anything else to add TASing features. Modifying the .exe is not how it works. Also, even if .swf could not be converted to .exe, it should be possible to TAS a Flash Player instead. (EDIT: I'm not saying it works already. It certainly doesn't. I'm saying that I don't see any reason why it couldn't work after further development is done.)
Player (121)
Joined: 2/11/2007
Posts: 1522
mattk210 wrote:
Anyway, I'm asking mainly because of a game called N with a pretty big highscoring/speedrunning community, and this game comes as an .exe anyway.
You should check out this thread then: http://tasvideos.org/forum/viewtopic.php?t=8017 On topic: Oh man I can't wait to get my hands on this :)
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs
Joined: 5/9/2008
Posts: 35
Location: USA
actually TASing flash games is likely considerably easier to implement than general windows games, and you wouldn't have to turn them into .exe files. That's because there is already an open source virtual machine for executing flash applications: http://en.wikipedia.org/wiki/Tamarin_%28JIT%29 Someone would simply have to add the appropriate hooks for TASing (e.g., frame advance, etc.).
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
Oh, well, I'm an idiot then. Disregard all my Flash related posts. =P
Joined: 9/17/2009
Posts: 18
Location: Hungary
ntclark wrote:
actually TASing flash games is likely considerably easier to implement than general windows games, and you wouldn't have to turn them into .exe files. That's because there is already an open source virtual machine for executing flash applications: http://en.wikipedia.org/wiki/Tamarin_%28JIT%29 Someone would simply have to add the appropriate hooks for TASing (e.g., frame advance, etc.).
"Tamarin is not the same as Adobe's Flash Player, which remains closed source. The virtual machine is only a part of Flash Player." Actually I'm working on a custom Flash Player implementation. It's still in its infant stages. For more info, see this. I think Flash is vastly different from ordinary PC applications. It's a high-level object-orineted system that needs its own set of tools. It should be counted as a separate "console", while being able to TAS it using Windows tools is an indirect solution (imagine TASing a NES emulator that's running within a DS emulator).
Joined: 5/2/2009
Posts: 656
nitsuja, I love you. fyi. can't wait, blablabla. [edit with some actuall content] Are you guys compiling a compatibility list? If not, someone could created a wiki page here (or elsewhere, doesn't matter)....
My first language is not English, so please excuse myself if I write something wrong. I'll do my best do write as cleary as I can, so cope with me here =) (ノಥ益ಥ)ノ
Joined: 6/24/2009
Posts: 34
... Someone should do a TAS of SkiFree. Just to see how many people cry when they realize that it is possible to escape the Abominable Snow Monster. :P
Stuffs. Yarr!
Scepheo wrote:
The chance of choosing the right door is 0, because laser-absorbing goats will brainwash you.
Joined: 10/3/2005
Posts: 1332
Hell yeah, SkiFree. Doubly so if it's possible to categorically escape the monster, rather than evade as most of us probably did in junior high. ...Also, maybe one of the mods should go ahead and split off the inevitable deluge of wishlist posts now?
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Joined: 6/24/2009
Posts: 34
That would be what gave me the idea, yes. :P
Stuffs. Yarr!
Scepheo wrote:
The chance of choosing the right door is 0, because laser-absorbing goats will brainwash you.
MESHUGGAH
Other
Skilled player (1917)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
Hi. I'm new to this forum (actually i already wrote a thread related to emulating PC games). I posted ~6 hours ago on SDA about my ideas of making a PC game TAS aid application, then user "moozooh" show me that thread. I'm thinking about ideas since ~2009/10, how to make a program that able to "gently" pause everything for the ammount of time of your choice then holding down buttons that the game will process then advance one frame.
upthorn wrote:
The basic idea is to hook the Windows system and DirectX DLL functions for things like sleep, time, input, and display, to fake determinism. Though this explanation is, as far as I can tell, greatly simplified compared to what has been necessary.
Well my latest idea (as i already wrote on SDA) is to watch the game's host_frame variable (as i know, most of the games has a variable like this, that increases from frame to frame by one, and also, most of the game's that i read they open source code had at the very very end of the Host Frame function (which is a very good thing)) and then adding a custom assembler code that would call my own function that would make the threads to sleep for the ammount of time i need, then regarding to my intentions, go for next frame (jump back to the point after adding one to host_frame variable), or pause the game (jump back to the beginning of my function), etc. However i never did anything similar to this (making an assembler code that would call my C# function [that would call kernel32.dll functions mainly]), that's why I wrote on SDA that i'm about to contact various programming threads. My goal is to make Half-Life (a complex PC game) to be ready for TAS. Of course i'm about to test on a simple game i made, so i can view results instantly. Save-states... the problem with complex PC games is that the randomization (as far as i know) can be really random, so making the same input-sequence should results differently [correct me, if i'm wrong]. Recording... well, maybe using fraps during gameplay... or making instant screenshots (and maybe instant wav files or wrap the sound.. ah I hate this kind of methods).. Input file... well... as i said, that random is a hateful factor, especially if you can't control it. I mean there's no problem about making an input file, but the playback... so there would be no chance to verify a run, if you can't playback it as it meant to be playbacked. When I have time, I will try to achieve these things and share my experiences.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Joined: 8/27/2006
Posts: 883
Hum the problem here, is that you are editing a game code to make it TASable. That would not be acceptable on TASVideos because the game shouldn't be altered. On another note, the only way to remove randomness from a game is to have the entire computer with a fixed date/time and follows the game. Because the randomness isn't exactly random, but it works with the date/time or the number of tick. If you have the same point of reference for randomness, it should behave the same. SaveState is a problem, because it should be an exact copy of the memory state. Which means you would have to read and write directly to memory the values you want (it will cause conflict at some point) For the recording part, Frapps isn't an option, it might be possible to output the video to some encoder, but it's probably only possible on linux. If you can't playback, you won't be able to TAS properly, you'll only be able to play slowly but you will be able to make mistake that you won't be able to correct. Without playback, you don't need input file, and you don't need savestate as you won't be able to go back, edit what you done, and see if it works. There's no way this will be an accepted method on TASVideos.
MESHUGGAH
Other
Skilled player (1917)
Joined: 11/14/2009
Posts: 1353
Location: 𝔐𝔞𝔤𝑦𝔞𝔯
ZeXr0 wrote:
There's no way this will be an accepted method on TASVideos.
That's why i posted it on the SDA primarily. I just thought that i should share my experiences and ideas with you.
PhD in TASing 🎓 speedrun enthusiast ❤🚷🔥 white hat hacker ▓ black box tester ░ censorships and rules...
Joined: 8/27/2006
Posts: 883
Yeah I didn't wanted to sound harsh, I just wanted to be clear :P
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
Another useless post, just some more wishful thinking... I was poking around on my hard drive and came across two other games I'd like to see: Seiklus and Legend of Princess.
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Joined: 3/5/2010
Posts: 10
Location: Maryland
Man, if this could work, I'd love to see some more PC game TASes. Can anyone say "I Wanna Be the Guy?"
Sandwich!
1 2 3
17 18