Quote:
Originally Posted by 41Sqn_Banks
Initial post before edit:
Ok I have an idea.
It is not possible to build a ingame COOP GUI ourself at the moment (really I know what I'm talking about). But it would be possible to create a web-base coop lobby that allows users to register for one of the aircrafts of the mission and that will force the user into that aircraft once the mission is loaded and the player is connected.
Here's how it goes:
1. The host has to upload the mission file to a web service (via browser). The web service parses the mission file and creates a coop lobby for this mission that shows all available aircraft.
2. Users can access this lobby via browser (the host has to distribute the url of the lobby) and register their steam-callsign to one of the aircrafts.
3. When everyone has registered the host gets a .cs script from the web service that contains all necessary scripting to force the user with the particular steam callsign into the registered aircraft.
4. The host has to place the .cs file into the folder with the mission file.
5. The host then opens the server and loads the mission.
6. The users connect and are forced into their aircraft by the script.
Option: The host loads a dummy map until all users connected, he then post-loads the actual mission. Again the script forces all connected users into their aircraft. This guarantees that the mission is in it's initial state.
I'm open for sugguestions.
|
Banks, it appears you were right with your original idea. It seems players can not be bothered with more work than a couple of clicks in a GUI.
However an idea of a web-service seems complicated to me too. Can it be a server(host)-side add-in instead?
In case new patch introduces server-side add-ins this should not be a problem at all. In case it does not maybe a small host-side program can serve as a web-server for clients, e.g.:
1. Host stores all coop missions under a certain folder and runs the program.
2. The program parses the missions and creates a copy of COOP-script for each mission
3. Host starts one of coop missions.
4. The program checks which mission is started and creates a web-page with aircrafts list, briefing, etc.
5. Clients connect to this web page with a browser @ http:\\host_ip\current_coop.html (is this possible?)
6. Clients select aircrafts, loadouts, fuel etc. on a web-page and click ready.
7. Here a host may need to reload the mission again if players changed loadouts or fuel level, etc. (or the script can do this?) but this is an optional step.
8. Clients connect to the host mission by clicking a Steam link on the web-page (e.g. steam://connect/216.52.148.29:27016 - link to DC to ATAG server) This brings players inside the mission bypassing game menu.
9. Host checks list of players and selects "FLY" command from the Mission Menu.
10. When mission ends the program creates a web-page current_results.html with debriefing/statistics.
This method could be compatible with HyperLobby if HL would send COOP players to the host's web-page for aircraft selection. Should not be a problem.
The advantages are: only host needs the program and only he has to use the mission menu. No need to separately host a web-service, upload and download missions to/from it. Creation of a coop-script is automated. Coop missions can be created without C# scripting.
Optional: The program may be able to parse offline missions/campaigns and save them as coop missions (removing "player" and putting AI on hold).
Possible future developments:
For use with "dogfight" dedicated servers :
Step 1) The program is installed on top of a dedicated server like ATAG and parses submissions run on a server. Players see a list of upcoming submissions at a web-page and can register for a submission as if it is a coop, join the server and fly it as a coop.
Step 2) Squad-leaders registered with the server can select mission type, target, etc. from a set of pre-defined missions and targets (before a dynamic generator is available). Community can contribute new missions to the server which are parsed by the program automatically.
Step 3) When DCE is installed on a server the program may serve as an interface between squad-leaders and the DCE allowing mission planning, etc.
For use with online wars:
The program may communicate with the main war server/engine for current frontline status or download complete generated missions and feed mission results back. Both dedicated "dogfight" servers and individual coop-hosts will be able to run "coop" missions of the same online war synced via this program and main server. Dedicated servers will provide more dynamic environment: 3-4 coops running in the same airspace.
When server-side add-ins are allowed in the game this program can become a part of the game and program GUI will be integrated into the game GUI (made on standard WPF according to the devs).
Does it make sense?