Re: [Flightgear-devel] Spawning new AI instances
Erik Hofman wrote: Frederic Bouvier wrote: Is there a way to create new instances of AIAircraft or another kind on the fly, just by adding some nodes in the property tree, or running a command from the telnet interface, that is, without modifying the source code ? Is there something planned in this direction ? Fred, Could you please hold off doing any work on the AI subsystems? I am investigating the possibilities to move parts of that code over to SimGear and it might be possible that functionality gets added in the move. Curt and I have agreed that we need some sort of DCS (Distributed Content System) that synchronizes instances of dynamic models between multiple running versions of FlightGear. That way a multi display setup of FlightGear will work with ATC/AIModels/AI Traffic (and MultiPlayer) code enabled. I see I should have read the entire thread before I replied :-) -- Jon Stockill [EMAIL PROTECTED] ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
Durk Talsma wrote: Hmm, that's an interesting thought, because that was actually one of the possible mechanisms that I had in mind for the traffic manager. That is, have the schedules managed by an independent program that would communicate with FlightGear through a network layer. In the end I decided not to go into this direction after doing some tests and finding that the the easiest way to do it was by adding the traffic manager as a subsystem to the main FlightGear program, specifically because the overhead of managing the schedules turned out to be a quite low. Doing this through a network remains an interesting option though... If you're going with the "independant program" route, then wouldn't it make sense to have the AI handled in that program - this way it could feed as many flightgear systems as you like, and they'll all have a consistent view of available traffic. If handled in this way there'd basically be no difference between an AI aircraft, and another instance of flightgear running over the network. It also presents some interesting opportunities for ATC when you have a consistent view of the world like this. -- Jon Stockill [EMAIL PROTECTED] ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
Frederic Bouvier wrote: Is there a way to create new instances of AIAircraft or another kind on the fly, just by adding some nodes in the property tree, or running a command from the telnet interface, that is, without modifying the source code ? Is there something planned in this direction ? Fred, Could you please hold off doing any work on the AI subsystems? I am investigating the possibilities to move parts of that code over to SimGear and it might be possible that functionality gets added in the move. Curt and I have agreed that we need some sort of DCS (Distributed Content System) that synchronizes instances of dynamic models between multiple running versions of FlightGear. That way a multi display setup of FlightGear will work with ATC/AIModels/AI Traffic (and MultiPlayer) code enabled. Erik ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
On Wednesday 04 August 2004 20:54, Frederic Bouvier wrote: > > The idea would be to control the AI traffics ( creation, animation and > deletion ) from an external program with the telnet interface. > Someone ask me if it is possible lately, and I think he is prepared > to do the required changes. I already suggested him to design new > commands for creation/deletion and use the properties for animation. > They would be 'run' from the telnet prompt. > Hmm, that's an interesting thought, because that was actually one of the possible mechanisms that I had in mind for the traffic manager. That is, have the schedules managed by an independent program that would communicate with FlightGear through a network layer. In the end I decided not to go into this direction after doing some tests and finding that the the easiest way to do it was by adding the traffic manager as a subsystem to the main FlightGear program, specifically because the overhead of managing the schedules turned out to be a quite low. Doing this through a network remains an interesting option though... Cheers, Durk ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
> The idea would be to control the AI traffics ( creation, animation and > deletion ) from an external program with the telnet interface. > Someone ask me if it is possible lately, and I think he is prepared > to do the required changes. I already suggested him to design new > commands for creation/deletion and use the properties for animation. > They would be 'run' from the telnet prompt. OK, just an overview here. There are now two functions in AIManager for creating an aircraft, both called "int createAircraft( ... )". The return value is a unique ID for that AI object. The first one has lots of parameters and will create an aircraft that flies in a straight line (or in a circle) at a constant altitude. This aircraft has no life-span, so if you want to delete it you must call destroyObject(int ID). The second one takes two parameters, the model path and the flightplan. This aircraft will terminate itself when it reaches the end of its flightplan. The flightplans can be pre-calculated and stored in XML files, or they can be created on-the-fly by another module (see Durk's traffic manager). Dave -- David Culp [EMAIL PROTECTED] ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
Durk Talsma wrote: > On Wednesday 04 August 2004 14:41, Frederic Bouvier wrote: > > Is there a way to create new instances of AIAircraft or > > another kind on the fly, just by adding some nodes in > > the property tree, or running a command from the telnet > > interface, that is, without modifying the source code ? > > Is there something planned in this direction ? > > > > Fred, > > Just curious whether or not you had a specific purpose in mind.Creating a > traffic file is probably the closest you can get to creating AIAircraft > instances dynamically during the simulation, but it is not possible at the > moment to start traffic by interacting with the property tree. As David > already explained, creating traffic is rather involved and probably requires > new code. While I like the idea and can see some uses for it, I didn't really > design the traffic manager with that idea in mind, and I don't really see how > the code could be adapted to do this. The idea would be to control the AI traffics ( creation, animation and deletion ) from an external program with the telnet interface. Someone ask me if it is possible lately, and I think he is prepared to do the required changes. I already suggested him to design new commands for creation/deletion and use the properties for animation. They would be 'run' from the telnet prompt. -Fred ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
On Wednesday 04 August 2004 14:41, Frederic Bouvier wrote: > Is there a way to create new instances of AIAircraft or > another kind on the fly, just by adding some nodes in > the property tree, or running a command from the telnet > interface, that is, without modifying the source code ? > Is there something planned in this direction ? > Fred, Just curious whether or not you had a specific purpose in mind.Creating a traffic file is probably the closest you can get to creating AIAircraft instances dynamically during the simulation, but it is not possible at the moment to start traffic by interacting with the property tree. As David already explained, creating traffic is rather involved and probably requires new code. While I like the idea and can see some uses for it, I didn't really design the traffic manager with that idea in mind, and I don't really see how the code could be adapted to do this. Cheers, Durk ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
On Wednesday 04 August 2004 15:12, David Culp wrote: > > I have plans (but very little time unfortunately) to add a property to the > scenario file that will trigger the creating of an AIAircraft after a > specified elapsed time, or periodically at a specified rate. This will be > an inprovement, but it still requires that the scenario be determined at > startup, and not interactive during the sim run. > > Durk's traffic scheduler creates the AIAircraft according to a schedule, so > new instances of AIAircraft are created during the sim run, however I don't > think this scheduler is set up to allow a user to trigger the creation of > an AIAircraft using a key-stroke. That's pretty much correct. I didn't design the traffic manager with that idea in mind. Right now, the way I see it is that Dave's scenarios and my traffic files should be able to work more or less independantly in creating traffic. Whereas David's scenario files allow for a very precise simulation of specific aircraft, the traffic manager generated traffic should become a more or less easy way to fill the skies with "believable" traffic. > > To create AIAircraft interactively will require a new module, and it will > require that the newly created instance be given enough information to have > a model and a fightplan. > To the best of my knowlegde, at the moment it is not possible to interactively create traffic without creating either a) a traffic file (see $FGROOT/data/Traffic for an example) or b) creating a scenario. Cheers, Durk ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
Re: [Flightgear-devel] Spawning new AI instances
> Is there a way to create new instances of AIAircraft or > another kind on the fly, just by adding some nodes in > the property tree, or running a command from the telnet > interface, that is, without modifying the source code ? > Is there something planned in this direction ? Now there are two ways to create AIAircraft, at startup using a scenario file, or using Durk's AI Traffic Scheduler. I have plans (but very little time unfortunately) to add a property to the scenario file that will trigger the creating of an AIAircraft after a specified elapsed time, or periodically at a specified rate. This will be an inprovement, but it still requires that the scenario be determined at startup, and not interactive during the sim run. Durk's traffic scheduler creates the AIAircraft according to a schedule, so new instances of AIAircraft are created during the sim run, however I don't think this scheduler is set up to allow a user to trigger the creation of an AIAircraft using a key-stroke. To create AIAircraft interactively will require a new module, and it will require that the newly created instance be given enough information to have a model and a fightplan. Dave -- David Culp [EMAIL PROTECTED] ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d
[Flightgear-devel] Spawning new AI instances
Is there a way to create new instances of AIAircraft or another kind on the fly, just by adding some nodes in the property tree, or running a command from the telnet interface, that is, without modifying the source code ? Is there something planned in this direction ? Thanks, -Fred ___ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d