Info on multiplayer network data traffic format?
-
i’m thinking about something i asked about a while ago on this forum, making a 2-4 plane blue angels like air show, with 1-3 planes controlled by AI to follow a specific set of moves, and me trying not to crash into them.
i have an idea that multiplayer mode might be the answer. if i can simulate a player (or 3 players) on the end of the network flying a preset pattern, i can send that over a socket to my BMS and then fly along with that.
i wonder if there is any info available about the format of the data on the network between BMS’s running across the net?
thanks
-
i’m thinking about something i asked about a while ago on this forum, making a 2-4 plane blue angels like air show, with 1-3 planes controlled by AI to follow a specific set of moves, and me trying not to crash into them.
i have an idea that multiplayer mode might be the answer. if i can simulate a player (or 3 players) on the end of the network flying a preset pattern, i can send that over a socket to my BMS and then fly along with that.
i wonder if there is any info available about the format of the data on the network between BMS’s running across the net?
thanks
it seems completely unfeasible from my understanding of the code.
better to ask and train humans
-
it seems completely unfeasible from my understanding of the code.
better to ask and train humans
well, one way would be to run another instance of BMS (probably on another computer) and provide it with keyboard/joystick inputs from a program like glovepie. this would be relatively easy to get up and requires no real programming at all, just a bit of glovepie scripting. but its a bit heavy weight way to tackle the problem. maybe a good starting point however.
in fact, i already wrote a program (my android tablet cockpit extractor) that sends keyboard presses to BMS for the OSB buttons, etc. i can do something similar that flies a preset route and providing there’s no random stuff going on like weather effects or randomness in the flight model, then it should be 100% repeatable with no feedback requirement.
i can even get the other guys view up on the other monitor which will be cool.
when i get it running, i’ll put it online for free and make a video like this one
-
well, one way would be to run another instance of BMS (probably on another computer) and provide it with keyboard/joystick inputs from a program like glovepie. this would be relatively easy to get up and requires no real programming at all, just a bit of glovepie scripting. but its a bit heavy weight way to tackle the problem. maybe a good starting point however.
in fact, i already wrote a program (my android tablet cockpit extractor) that sends keyboard presses to BMS for the OSB buttons, etc. i can do something similar that flies a preset route and providing there’s no random stuff going on like weather effects or randomness in the flight model, then it should be 100% repeatable with no feedback requirement.
i can even get the other guys view up on the other monitor which will be cool.
when i get it running, i’ll put it online for free and make a video like this one
advise => forget a about it, of course there is randomness in flight model as the computation algoryhtm is (like any computer program) based on time steps and times steps are not the same from a machine to another (fps stuff).
Therefore the precision of the algorythm that computes all flight parameters vary from one machine to another.
therefore for following rough route, that may work, but for accurate flying for a demo, forget !
-
(partially related to above)
Back in days we used a “Ghost-Track-Replay” program to train aerobatics coded by the BerKuts Aerobatics Team.
As in DCS the tape is recorded as .acmi (Tacview compatible .trk file) but also replay-able in 3D (the whole fligth + recorded TrackIR movements reanimated in 3D)… this tool was able to record a human flight (lead pilot i.e) and then it could be replayed (looped) on a server. So bascially one could first fly (record) the “lead” plane of the formation and loop it on a server and later join as wingman on your own previously recorded flight in 3D as client in order to train.
Was phantastic stuff.
-
i worked out what to do and i’m well on my way to making it work. i’ve made a flight data recorder already and i’m building an autopilot now which will fly aerobatic maneuvers based on the recorded flight data (x,y,z position,air speed, heading, roll, pitch etc). so i’ll have a demo in a week or two.
-
i worked out what to do and i’m well on my way to making it work. i’ve made a flight data recorder already and i’m building an autopilot now which will fly aerobatic maneuvers based on the recorded flight data (x,y,z position,air speed, heading, roll, pitch etc). so i’ll have a demo in a week or two.
^^ looking forward to see that
-
Just curious, if that actually works…is there any reason why I couldn’t add a flyable helicoptor to the game and give it orders the same way? Because that might let me do something crazy like put a Helo from Arma into Falcon 4.0…
-
I have to see this :munch:
-
i can’t find any servers :L
-
i’m working on the AT/AP now, interesting work
i’m reading HFFM Manual.pdf by Mav-jp and Raptor One. interesting stuff.
i’m trying to estimate what throttle position (range) i need to maintain a steady speed under different conditions (AOA, speed, fuel load and altitude mostly i guess). there are formulas in that doc to find the drag from a given AOA etc. and from that calculate thrust. the problem is, in the feedback i get from BMS in flightdata.h, the only engine params i have to go on is %rpm and fuel flow rate i think. so some how i need to calculate my target rpm (or fuel flow rate?) from my AOA, mach no, etc.
i realize ultimately, i use feedback from airspeed (kias) to maintain a target airspeed but that’s easier said than done, since throttle movements have a big lag before speed changes, and many other factors (AoA, alt, etc) are involved. I can follow a target speed right now but with massive under and overshoots. what i’m trying to get to is an intelligent system that predicts either engine rpm or fuel flow rate based on AoA (which is based on pitch required to get to a particular altitude).
anyhow, interesting indeed. if anyone is an expert on autothrottle design and would like to send me a clue, please do.
I should add, that right now i’m cheating a bit. The way my AT/AP works is, first i fly the plane normally (in AT/AP record mode), and at some points (just prior to making a control movement change) i record what i call a waypoint. this ‘waypoint’ stores x,y,z position plus pitch, roll, rpm, fuel flow rate, etc.
in autofly mode, the first thing my AT/AP does is mirror the control movements from the previously record waypoint file, basically fuel flow, pitch and roll. this gets me going in the right general speed and direction. i let that settle down for a few secs then start trying to fly towards a target speed(AT) and location(AP). that’s where it gets interesting.
its important to remember that this is not like a AT/AP on a normal plane. i actually need things like roll and pitch stored because the whole point is to record and play back aerobatic maneuvers, not simply following a flight path.
one other complicating factor on the AT is i have no feedback on the current throttle position. I can estimate it based on how far forward and back i’ve pushed it to date but i worry that can get out of sync with reality. I suppose i can force a resync by pushing it all the way forward or back but then it starts to get complicated!
-
-
How scriptable is this? I could see this being a very interesting way to demo maneuvers like in a D-model trainer with a pretend back seat IP.
-
i don’t see autopilot… inverted flight can be made at any level with enough practice…(i remeber some guys even landing inverted in earlier versions of the sim…)
-
How scriptable is this? I could see this being a very interesting way to demo maneuvers like in a D-model trainer with a pretend back seat IP.
totally scriptable, you just specify waypoints which are like steerpoints but have additional data like amount of roll etc.
when i release it, it will all be documented, still testing at the moment
-
Intersest of this? I am sorry, I do not see the point.
-
i don’t see autopilot… inverted flight can be made at any level with enough practice…(i remeber some guys even landing inverted in earlier versions of the sim…)
Intersest of this? I am sorry, I do not see the point.
-
Ok nice try then…! Let us know when it is ready…!
-
would direct X recording (stick positions x,y, throttle pos) and makro playback (with adjustable playback speed, too) be of any help ?
I think it would be easy to add this to the makro functionality of this app:
https://www.benchmarksims.org/forum/showthread.php?19380-Livrot-Mic-Command-Preview-Release
-
would direct X recording (stick positions x,y, throttle pos) and makro playback (with adjustable playback speed, too) be of any help ?
I think it would be easy to add this to the makro functionality of this app:
https://www.benchmarksims.org/forum/showthread.php?19380-Livrot-Mic-Command-Preview-Release
i have a fully scriptable autopilot working now, see it here