|
Calgary25951 Posts
Disclaimer: I'm not a programmer. I have no technical ability to help with this at all. Hell, I don't even know if it's possible within the current abilities of the Chaos Launcher.
Background: I observe a lot when I'm doing other things, writing/reading, watching TV, and especially playing guitar. Sometimes I'm laying down or have my feet up while leaning back. It sucks because I'm interested in the game, but I can't keep clicking around while playing guitar. So I often guess where the most action is going to be in the next minute and leave my screen there. Then when a big battle is going on I have to lose focus and move the screen over there.
Idea: Make a plugin that does its best to follow the action and place the screen there. This could eventually have far reaching implications; if this program could observer better / smoother than a human, we could free up a lot of Kennigit's job with it on the TSL/TL Attack. This would allow Kennigit to focus more on getting transitions ready rather than following the action. Plus, everyone on the cast could run the program, and thus we would all be looking at the same thing, giving a more synced cast.
Pseudocode: A competent programmer probably has a better way of making this work. I imagine the user setting up a config file, giving a 1 - 10 value for the importance of certain things. So if you want to focus on build order, you might give "worker harassment (a worker taking damage)" a 2 and a "new tech (a new tech building beind created)" a 10. Then the program would look for the highest sum of values and center the screen on that area. So during the early game, when nothing is happening a new tech building being put down is a huge deal, the screen would center there and the mouse would select the build so you can see it. I'd imagine the "value" of this building being made would diminish after 1 second, or else we would sit looking at a spawning pool for the first 7 minutes of the game. Then, once battles are going on the screen would go there due to the amount of damage being dealt.
Concerns: - This being used as a hack. I suppose ADV as the similar problem so I guess it's been solved. - Is it even technically possible to determine the amount of damage dealt in a battle? I have no idea. - Things like a storm drop would be impossible to track until the actual Reaver/Templar deal damage, because how are you going to add a value to a single Shuttle flying into a base?
Obviously it wouldn't be perfect enough to replace Kennigit, but if it could show something useful on the screen say every 3 seconds, that would be great.
I dunno, just throwing it out there. Hopefully someone with some Chaos knowledge can say if this is even feasible or not.
|
Sounds like a good idea, although I am not a programmer either, so I don't know if it is possible or not. I could see a few problems, like in mid game if lots of events are happening of high value it might jump around like crazy and not focus on anything, maybe restrict it to one movement per X seconds or something like that. Curious to see what our resident programmers have to say in this blog.
|
this is a really good idea if it is possible, maybe tec27 has something new to work on after all!
|
Belgium9942 Posts
I could certainly see this programmable as a replay tool, but not as an observing tool.
Afaik unit damage is calculated by the game engine itself, and extracted from actions every time a game or a replay is run. So you could have it focus on attack move commands, but then you'd also focus on reinforcements being sent.
Also I dont know how hard it is to program the screen move.
|
this would be pretty nuts. but it sounds like it would be kinda glitchy? what ive youve got a storm drop going on in one zerg base, and the zerg is enroute to doom dropping a toss expo?
|
this would actually be a pretty sweet plugin, i like to watch live games or replays when laying down or something, but i cant move the screen or anything, so i just look at one area. So i end up watching vods or casts or something, this could be useful and fun :D
|
Belgium6753 Posts
this would be freakin sweet!
|
I'd say thats fairly possible. Would take a lot of work, and would probably need to hold all the data on damage (although actually I'd imagine you could just hook a function that "deals damage" to units and check the amount/the unit being damaged or whatever). My plate's kinda full atm with finals and updating RWAs, but perhaps after that a new project can be undertaken
|
Kennigit
Canada19447 Posts
God my life would be so much easier.
|
Calgary25951 Posts
Can you just build in the rest of Kennigit's duties while you're at it so we can get rid of him? Thanks.
|
Germany1298 Posts
Problem is a lot of Actions (like every single thing in the pimpest plays) or cool moves like denying buildings or gas steal etc would go unseen.
I have another idea how to do this: Make an option to watch a replay and record where your screen is. I missed this alot in the RWA Replays since the Commentator is talking about something and maybe your screen is somewhere else. This would be *far* better and maybe easier then everyting "automatic" which will never work as good.
I am no programmer but all you need is x/y of the screen like 10~20 times a second to center the screen on. This would not require that much data and just *one* action like "centerScreenOn:x,y"
|
On May 02 2008 02:11 Chill wrote: Can you just build in the rest of Kennigit's duties while you're at it so we can get rid of him? Thanks.
Ahahaha
But the idea is good, War3 has this function implemented in replays but it's so horrible, just keeps bouncing around random screens. Try watching a DotA replay with the auto-follow function on and see what happens, especially in high level games. -_-
|
ive got some ideas for an algorithm based on pixel detecting the minimap, but it would have to watch the game from the beginning to determine some things first when the game starts, it checks for player locations on the minimap and records their coordinates then it records non-ground locations and other locations which are likely places through which a dropship/overlord/shuttle would go then as the game goes on, it checks for large concentrations of one player color, which become more important the further away they are from the original bases it would also assign importance to single pixels far away from original bases, etc
to make it even more precise, it could use common battle sounds and home in on them by moving closer in that direction as the sound becomes louder (marco-polo game ish http://en.wikipedia.org/wiki/Marco_Polo_(game) )
|
On May 02 2008 02:40 Chosi wrote: Problem is a lot of Actions (like every single thing in the pimpest plays) or cool moves like denying buildings or gas steal etc would go unseen.
I have another idea how to do this: Make an option to watch a replay and record where your screen is. I missed this alot in the RWA Replays since the Commentator is talking about something and maybe your screen is somewhere else. This would be *far* better and maybe easier then everyting "automatic" which will never work as good.
I am no programmer but all you need is x/y of the screen like 10~20 times a second to center the screen on. This would not require that much data and just *one* action like "centerScreenOn:x,y" I've thought about that before too, and I think it fits best within an FPReplay plugin. If someone were to re-implement the FPReplay stuff (With the saving of mouse positions and such to the replay) it would undoubtably be easy to implement the same sort of thing for anyone watching the replay and commentating on it.
|
On May 02 2008 02:58 tec27 wrote:Show nested quote +On May 02 2008 02:40 Chosi wrote: Problem is a lot of Actions (like every single thing in the pimpest plays) or cool moves like denying buildings or gas steal etc would go unseen.
I have another idea how to do this: Make an option to watch a replay and record where your screen is. I missed this alot in the RWA Replays since the Commentator is talking about something and maybe your screen is somewhere else. This would be *far* better and maybe easier then everyting "automatic" which will never work as good.
I am no programmer but all you need is x/y of the screen like 10~20 times a second to center the screen on. This would not require that much data and just *one* action like "centerScreenOn:x,y" I've thought about that before too, and I think it fits best within an FPReplay plugin. If someone were to re-implement the FPReplay stuff (With the saving of mouse positions and such to the replay) it would undoubtably be easy to implement the same sort of thing for anyone watching the replay and commentating on it.
got any spare time? hahaha
I would like to eventually try and write a plugin, but I have absolutely no idea how
|
a weaker version of this feature was already implemented in penguinplug a long time ago, it was the "fpemul" which tried to mimic a first person view in non-fpview replays by jumping the map to all of a player's important actions.
|
I seriously should be the camera man for any casted thing =\
|
United States41601 Posts
|
On May 02 2008 05:01 Kwark wrote:If this was made it would replace porn for me. + Show Spoiler + kinda...
|
With the current HD bigscreens, can't you just show the whole map on screen? No need for scrolling.
|
|
|
|