What's left for Myth?

Talk about anything here.
User avatar
Doobie
Site Admin
Posts: 1121
Joined: Wed Jan 28, 2004 5:34 pm
Location: Calgary Alberta
Contact:

Post by Doobie »

films can't be run backwards, films are a series of commands that the engine plays out. It is not a collection of visual and audio elements. This is why films are so small. What you ask for simply isn't ever going to happen.

However, I don't see any reason why you shouldn't be able to jump into a film in progress at any given point, although it would certainly be worth hearing from someone more familiar with the code than I.
Want to play Myth? New and old Myth players can playmyth online at Mariusnet.com.
KyleMaclean.net
User avatar
Khadrelt
Posts: 479
Joined: Tue Aug 29, 2006 2:59 pm
Location: Utah, USA
Contact:

Post by Khadrelt »

It'd be cool to be able to bust in on other people's films and see how different you can make the outcome :)

Although with netgames would that be possible? Once you broke in you'd have Team 0, and the other teams would just sit there?
The cake is a lie.
Archer
Posts: 254
Joined: Sun May 02, 2004 11:01 pm

Post by Archer »

Doobie wrote:films can't be run backwards, films are a series of commands that the engine plays out. It is not a collection of visual and audio elements. This is why films are so small. What you ask for simply isn't ever going to happen.
Yes, I know what the films are. That doesn't by itself make it impossible, though—commands can (sometimes, if they're bijective) be played backwards, and film formats can be changed. At worst, it'd be nice to add a cache in a format that allows mapping of a state and the previous input to a previous state for the last n minutes of a film in progress.

Doesn't mean it's worth doing, of course, but the number of times I've had to rewatch a Mazz film from the beginning because I was a little too slow coming off of 16x forward…

edit^2: So I've been giving the general more thought, and it really comes down to how much information needs to be saved to make it work that isn't already. I can't begin to guess at the answer here—the main obvious thing is that the random number sequence would have to be saved, since it'd be required from arbitrary points. Exactly how big a deal it would be, again, I don't know.
However, I don't see any reason why you shouldn't be able to jump into a film in progress at any given point, although it would certainly be worth hearing from someone more familiar with the code than I.
Indeed, if anyone's out there that can indicate what barriers to this exist it'd be great.

Edit: Khadrelt: unless additional code was added to assign other people to other teams, probably.

~J
Failure: when your best just isn't good enough.
User avatar
carlinho
Posts: 1224
Joined: Tue Jun 08, 2004 8:23 pm

Post by carlinho »

whaqt about using film formats like quicktime or wmp?

the one myth uses is a codec I have no clue as how to make

it would be nice to be able to insert cutscenes with quicktime that almost everyone can do nowadays
http://carlinho7.tripod.com
Home of ANCIENT and CLASSICAL GREECE plugin on the works.
Image
User avatar
AblitERateOR
Posts: 165
Joined: Sat Jul 01, 2006 8:30 pm
Location: Auckland, New Zealand

Post by AblitERateOR »

carlinho wrote:whaqt about using film formats like quicktime or wmp?

the one myth uses is a codec I have no clue as how to make

it would be nice to be able to insert cutscenes with quicktime that almost everyone can do nowadays
if you are referring to the myth cutscenes, they are smacker files and can be created as such quite easily. If you mean the game films, they are not a codec as such, they are just a series of commands. They're not a film as such but it is more as if the computer is replaying the game for you, reproducing every click everyone made
Mac OSX 1.4.9
Intel 1.83 Dual Core iMac
1GB RAM
User avatar
carlinho
Posts: 1224
Joined: Tue Jun 08, 2004 8:23 pm

Post by carlinho »

oh I refererred to the ones you call smacker files
are they easily created?
how can you do it?
http://carlinho7.tripod.com
Home of ANCIENT and CLASSICAL GREECE plugin on the works.
Image
Archer
Posts: 254
Joined: Sun May 02, 2004 11:01 pm

Post by Archer »

AblitERateOR wrote:If you mean the game films, they are not a codec as such, they are just a series of commands.
And the pseudorandom seed used in the game.

Which brings up another possible feature: Deterministic Myth. Sure it'd be too complex to realistically take advantage of as a player, but if you could set the seed yourself at the start of the game you could do some potentially interesting things. It certainly might provide a slight extra degree of fairness for tournaments, say.

~J
Failure: when your best just isn't good enough.
vinylrake
Posts: 3591
Joined: Wed Apr 07, 2004 12:52 pm
Location: here
Contact:

Post by vinylrake »

Archer wrote:Yes, I know what the films are. That doesn't by itself make it impossible, though—commands can (sometimes, if they're bijective) be played backwards, and film formats can be changed. At worst, it'd be nice to add a cache in a format that allows mapping of a state and the previous input to a previous state for the last n minutes of a film in progress.
As you know, at any given point in time when you are viewing a myth 'film' what you are seeing on the screen at that specific point in time is the cumulative effect of everysingle action/event/unit movement/explosion/arrow/sword swing/etc that has happened since the start of the game. Myth has to 'build' the state of the world from the start of the game to the current moment by running through every single command from every single player (and the game AI) to build the state of the world you are seeing as a single 'film frame' (screen shot). To go back even a SINGLE 'frame' (or a single command/turn - I think commands from players and the AI get picked up every 1/6th of a second or something like that) Myth would have to be modified to keep track of the before and after location/state of EVERYTHING in the entire game/map (e.g. every player/monster/ambient unit's location, direction of travel, health, action as well as location/state of projectiles, where fire has burned, where footprints from units moving are on the map are, etc. etc.) . Then it would need to restore everything to that state.

If you wanted Myth to store the most recent 5 minutes of a 'film' you would have to multiply those thousands (10s if thousands?) of pieces of data that make up the state of the Myth game times the thousands of commands that make up those few minutes of replayable film and you are talking vast amounts of information which are not tracked at all at present. Unless I am greatly mistaken this would require a huge rewrite of Myth to accomplish the simple sounding 'go back' function while watching a film. And the memory requirements would I am guessing just be HUGE, probably the CPU requirements would skyrocket as well.


Maybe the next version of Myth will ship with Myth-TiVo.

PS the film format can't really be changed because it's not really a film. If the 'films' were really films and had a non-viewer modifiable point of view and framing and camera angle instead of being a replay of a game (allowing interactive camera positioning) it would be simple to change the film format and skip around the film - but that's not what a Myth film is, and what fun would that be?
Lots of Myth stuff at http://mythgraveyard.org.
Sometimes I put hard to find stuff in my my Udogs folder.
Myrd
Site Admin
Posts: 4031
Joined: Fri Mar 19, 2004 10:17 pm

Post by Myrd »

vr pretty much nailed it on the head.
Archer
Posts: 254
Joined: Sun May 02, 2004 11:01 pm

Post by Archer »

vinylrake wrote:PS the film format can't really be changed
You just said earlier in your post how to change the recording format (fair point on my use of the word "film")—make it track additional data. Or hell, you can output it in something human-readable if you want to be masochistic. It can absolutely be changed, the question is whether or not it's worth it.

Sure, Myth "replays" the game for its recording. However, to go backwards you don't necessarily need to keep track of the location of everything, providing it's possible to take a state and an action and then figure out the previous state from it. Say, "scar on ground + dwarf bottle explosion -> dwarf bottle in air on trajectory given by rand($RANDOM_SEED, 20050), unstained ground + no command -> […] -> dwarf bottle in air on trajectory given by rand($RANDOM_SEED, 20050), unstained ground + throw bottle -> dwarf in process of throwing bottle"

That sort of backwards work. Actually implementing it would probably involve thesis-level effort, and still might not be doable with any sufficiently compact format, but I'm utterly unconvinced that it's impossible.

~J
Failure: when your best just isn't good enough.
User avatar
Killswitch
Posts: 142
Joined: Tue May 25, 2004 2:04 pm
Location: Los Angeles
Contact:

Post by Killswitch »

carlinho wrote:oh I refererred to the ones you call smacker files
are they easily created?
how can you do it?
Easily created? Yes...mostly. Use the Smacker Tools from RAD Game Tools to convert a movie to the SMK format. (If for some reason you want to play them with TFL, I think you need to add a 64 byte Myth header to the file. M2 doesn't need it AFAIK.)

The down sides to using Smacker:
  • The tools are Windows only.
    The video gets down-converted to only 256 colors which will give your video some banding issues.
    The Smacker library has not/will not be updated to work for Intel Macs.
My 2¢ - Smacker was great back in 1997 when we had to use a 200Mhz Pentium Pro (remember them?) and software rendering was the norm. However, with dedicated graphics cards and cpus greater than 1Ghz, it's a useless and very lossy format by today's standard.
User avatar
carlinho
Posts: 1224
Joined: Tue Jun 08, 2004 8:23 pm

Post by carlinho »

thanks a lot kill
that's great!
I'll give it a try

EDIT: BUAHHHH
IT CRASHES...
IT START COUNTING COLORS OF FRAMES AND CRASHES ALL THE TIME...
EDIT 2...i THINK i MADE IT WORK NOW...IT'S WORKING THROUGH RAD VIDEO TOOL EXE INSTEAD OF SMACKER EXE....!!!!
http://carlinho7.tripod.com
Home of ANCIENT and CLASSICAL GREECE plugin on the works.
Image
Archer
Posts: 254
Joined: Sun May 02, 2004 11:01 pm

Post by Archer »

Additional recording controls (being able to specify a time, for example, and having the recording fast-forward and pause at that time. If you want to get fancy, there's also usefulness in things like "fast forward until unit N dies, then pause", or any number of additional conditions).

~J
Failure: when your best just isn't good enough.
Archer
Posts: 254
Joined: Sun May 02, 2004 11:01 pm

Post by Archer »

Ability to have multiperson film viewings.

IPV6 support.



The moon?

~J
Failure: when your best just isn't good enough.
vinylrake
Posts: 3591
Joined: Wed Apr 07, 2004 12:52 pm
Location: here
Contact:

Post by vinylrake »

Archer wrote:Ability to have multiperson film viewings.

IPV6 support.



The moon?

~J
Myth already has multiperson film viewing capability in both synchronous and asynchronous modes.

synchronous: Sitting at home I yell "Hey look at this cool Myth film" then everyone huddles around the computer and watches it at the same time.

asynchrounous: I watch a film then I send it to you then you watch it.

:)
Lots of Myth stuff at http://mythgraveyard.org.
Sometimes I put hard to find stuff in my my Udogs folder.
Post Reply