1

Topic: [Idea/Possibility?] Is "Emulating" teeworlds possible?

Hey guys! I wanted to share some thoughts with you so I can hear the opinion of other people who may have knowledge on the subject. Take note that all of this is coming from someone who has no idea how the game works internally.

As a player who plays mainly race, I always wondered what would be the fastest way to finish a map if we could play perfectly. So I started to think if "emulating" teeworlds was possible. What I mean by that is: is there a way to make a program that runs teeworlds and allows us to record input while making it possible to use savestates and slowdown the game? This would be used to produce very amazing runs of race maps.

Of course I know that it is not that simple. There are two problems I found, and I tried to find a solution for each of them.

  1. The game has a variable FPS. Solution: make the game run at a constant FPS (maybe something like 60FPS because 30FPS would not be smooth enough)

  2. Teeworlds can have ping variation and lag, which may result in the same input not making the same run every time. Solution: An emulator is not supposed to run on servers. So there should not be any lag or ping variation.

  3. There might be other issues, but as I said, I don't know how the game works internally.

Considering all of that, I want to know if it would be possible to make such an emulator for teeworlds. If so, then how hard would it be to code that program? I think it would be something very fun to play with. big_smile

2 (edited by needs 2013-08-02 21:55:01)

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

What you describe is called a "race bot", that would be fun to code and watch in action for sure, but that will also be unfair for those who just want play against other players.

I think it's faisable, like add to the client something like "demo editor" where you can change a sequence in a demo (for example replay it) and play the demo on a server.

Another things that's could fun is creating a map after recording a demo, and fill the map with death tiles, except where the tee was move. The illusion of the perfect run will be very fun to watch wink

Considere that your idea can "kill" the race mod, the only major mode where I never see a bot. I would be sad sad

3 (edited by Fudgyking 2013-08-02 22:32:08)

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

The emulator should be used to record input and then save the input file in a way that only the emulator could read it. All recorded input, by the way, would be made by a human, not a bot. I don't want to use the inputs to try to get map records on all race maps on servers. wink It would be for local use only and to produce very impressive demos. Anyway, I don't think it would be possible to work on race servers because of the problems I stated.

4

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

That's possible, it would just take a lot of time. But if it fit your needs, do it. I'll be happy to see what you can get.

5

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

so... are you talking about a bot or not?

#yemDX is a known troll

6

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

No I'm not talking about any type of bot. I'm only talking about an emulator which would allow you to record input, slowdown the game and use save states. All input is made by a human player. This is commonly known as a tool assisted speedrun (TAS).

7

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

I had already thought and tested this kind of stuff, and it just turns out it's not working because of the delay that is stacking up more and more as the "demo" is run.
Maybe you could get something decent working on local server (very low latency) or by readjusting (but that looks really hard).

I don't think anything good enough can be coded client-side only. Of course server can easily propose that kind of feature.

Not Luck, Just Magic.

8

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

Make a seperate gametype, like SuperRace (play on the term Superplay) where the point of the gametype is to make the perfect run for maps. Would need to modify server+client for this but that's fine. I think it'd be fun to see something like the ability to TAS Teeworlds.

Ex-King of Teeworlds

9

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

yemDX wrote:

Make a seperate gametype, like SuperRace (play on the term Superplay) where the point of the gametype is to make the perfect run for maps. Would need to modify server+client for this but that's fine. I think it'd be fun to see something like the ability to TAS Teeworlds.

Perfect runs don't exist.
What is TAS?
It being possible to code doesn't mean it being coded magically.

Not Luck, Just Magic.

10

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

Dune wrote:

What is TAS?

Fudgyking wrote:

This is commonly known as a tool assisted speedrun (TAS).

11

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

Dune wrote:

What is TAS?

A tool-assisted speedrun is a speedrun movie of a video game produced by means of emulation and using features such as slow motion and re-recording of previous portions of a performance. In brief, for the teeworlds emulator, those simple features would be enough to make a TAS: load a map, slowdown the game, being able to save and load states (which I would love to explain how they work, but I didn't find yet), record input (save it in a file) and playback the input (so you can see what the run looks like in real time smile).

Dune wrote:

Perfect runs don't exist.

Maybe, but we can get very close of making one. For example, capturing ctf5 in less than 3 seconds would not be a hard task with the proper tools smile

Dune wrote:

It being possible to code doesn't mean it being coded magically.

Yes I know. That's why I only asked if it was possible. I am not asking anyone to take on that project. If it happens to be possible, it will give me something to try when I finally continue my programming learning. (soon enough I hope hmm)

12

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

The thing is, it requires the server to be modified to work properly (or I would be really impressed).

So you could get something like DDRace's /r, at a given time or something.

Not Luck, Just Magic.

13 (edited by KChris 2017-08-13 00:10:25)

Re: [Idea/Possibility?] Is "Emulating" teeworlds possible?

-deleted-

Lazy dev