Hello, people!
It's been a while since I last posted any updates on how OBSP's doing, so I figured I'd throws something up.
Well, we've been working hard on OBSP since the last updates. Just to jog your memory, the last update brought taxiing, takeoff and landing autopilots and AI into Orbiter:
http://www.youtube.com/watch?v=dUooJ_jkwoU
I've been continuing the work in AI and also improving the "low level" code that allows the AI to perform as well as it does. So, what's new? Well, I'm in the process of implementing a high level AI that's capable of detecting what the situation of the plane is and respond accordingly. Up until now, every user command given to the plane was given directly by the user and was executed mindlessly. But now, for the first time, Orbiter saw a plane that thinks for itself.
I implemented a system where users and AI can order planes around with a single line of LUA code. Let's say your DeltaGlider is parked at Wideawake International in one of the hangars and you want to fly to Habana, land there and have the plane park itself. You can now do that with a single command. The plane will figure out if it's landed or in air, if it needs to exit a hangar and taxi, or if it's already on the runway. If it's already at the target airfield, it'll only taxi to its destination and if it detects it needs to fly there, it will take off.
Once in air, the plane will automatically figure out a path and flight altitude that minimizes fuel usage. It'll gain altitude and cruise there. Later on I'll even add the ability for suborbital hops.
Once the plane nears the target airfield, it'll descend, land and taxi off the runway into a hangar or parking spot of your choice. All that with a single command.
I want all of OBSP's AI to be this powerful. I want the user to be able to command units around with ease. It doesn't matter if it's attacking a base or just enjoying an interplanetary flight. The AI will know how to take care of it.
What about the "low level" stuff I mentioned? Well, I've been improving the ability of the autopilots to fly in formation. I've already implemented some simple changes that make the autopilots far better at flying in formation than I am and I still haven't run out of ideas for more improvements. Until that's done, the AI will be held off, but once that's over with, I'll continue full steam ahead with the AI!
It took 3 years of work and almost 29 000 lines of code, but OBSP is finally getting really exciting!
Now let me tell you what escapetomsfate has been working on!
He's been focusing on the user interface - the hooked HUD and OBSP MFD, as well as the Aircraft library.
Let me start with the MFD. One of its most exciting features it to display the mesh of the aircraft and the systems that can be damaged:
In this case, you can see the MFD set to the damage mode - with the mesh of the DeltaGlider shown. Every one of those green points are thrusters. Main, hover, RCS. EACH can be damaged. Green means it's working fine, red means it's broken.
OBSP gets the mesh info, positions of thrusters, airfoils,... right from the plane itself, which makes this 100% compatible with ANY existing and future addon!
The same can be done for air control surfaces and airfoils. A plane that is hit and not instantly destroyed can simulate having one of its wings blown off, which would make the plane spin and tumble before crashing. We've already built in the ability to damage air control surfaces, so you lose control of the aircraft.
Also, the systems closes to where the projectile hits are more likely to be damaged.
Here's another image of the OBSP MFD, showing the DeltaGlider with weapons loaded.
You can see the selected weapons - in this case AGM-65 air to ground missiles - show up in green. There are other weapons loaded, indicated by grey squares. ETF will update the MFD so that the gray squares show a grey mesh of weapons instead.
Another thing I should really talk about in depth that ETF has been working on is the Aircraft library. The Aircraft library is an extension of the Orbiter's API - the API allows you to create engines, airfioils, control surfaces, 2D panels, 3D cockpits,... but it doesn't have any pre made systems. The Aircraft library will!
That way, complex systems will already be built in for developers to use. Newbie devs will be able to create more complex vessels just by activating the pre built 2D panels, 3D cockpit, electrical and life support systems, air breathing engines... but in addition to that, they will have Orbiter's API available, that will allow them to build on top of what the Aircraft library already provides. Of course, if one doesn't want to use specific features in the library, they don't need to activate them.
Once done, the Aircraft library will be released. Hopefully addon devs will pick it up, however, we also need the library. That's the only way that will allow us to mass produce C++ based aircraft that currently only support Spacecraft 3.
I also have another surprise. Since OBSP got its taxiing, landing and takeoff AI, it's grown beyond what Cape Canaveral and Habana can offer as a testing site. I used Wideawake Internation for a while, but decided that OBSP needs its own airbase. Therefore, I've begun building Nellis Air Force Base!
Nellis makes for an excellent choice. It has two long and wide (that's what she said!) runways, that allow the landing of even the largest winged space craft like the XR5. It also has lots of parking space to store planes and vehicles.
Keep in mind that the image you see is a work in progress. My main focus are the taxiways. The shacks are there just to help me do the markings on the floor and will be replaced with a better mesh. Here's the image of the control tower:
Real thing:
I must admit that my meshing and texturing skills aren't as good as my programming, but I'll do the best I can with the time I've allotted to the base. I'll make the base more complex that the average "slap-me-together" base made in Orbiter Base Maker, but don't expect anything as complex as Wideawake International, CSSC or AU. The base will feature hangars, planes, shacks, air control tower, some surrounding structures that serve no purpose, but no 3D terrain or Las Vegas itself.
The development of Nellis AFB is kind of sporadic, when I feel like I need to take a break from coding and subsequent math problems OBSP keeps throwing at me, however, the base will be done by the time OBSP v1 is released.
So, 3 years of work and still no release... you might be wondering what's going on behind the scenes and why we haven't released anything yet.
Well... my fault. The combat part of OBSP's code has already matured. It's at the point where it needs some spit and polish. It's the AI that's been stalling the release. I simply don't want to release OBSP half finished, even a beta version. I want OBSP to be more than just a play-and-forget addon that you derp around with for 15 minutes. I want the AI to be mature enough where it can take over the control of at least some tasks from the player, so that planes begin to fly around on their own.
I also want content. Custom planes, a custom base, sound, music, weapons,... everything we currently have is just enough to test the code, but it doesn't unlock the full potential of OBSP.
So, in addition to what we already have, what can you expect before release:
-A more mature AI - capable of flying around and destroying targets on its own. Sure, it's capable of doing that already, just it won't pick targets and weapons at its own discretion yet - you have to order it to do so. I want that to be done.
- Some orbital autopilots. Just the basics. Getting into orbit, changing inclination, periapsis, apoapsis altitude,... but nothing more. Just enough to get OBSP orbital.
- Lots of meshes and textures for weapons.
- Sounds. Sounds already work, but we have to find good quality explosion sounds and stuff like that.
- Music. We want to add music into OBSP that changes will the type of situation the player is in.
- Nellis Air Force Base. I want it done and I want it to serve as the main military base for OBSP.
-POSSIBLY an anti sat weapon. I say possibly, because that will require some radical thinking, to ensure a 100% hit probability.
- Aircraft library with a few custom aircraft.
I can't talk about specific release dates. Development of OBSP is too sporadic and unpredictable to be able to set a release date. I can safely say that it's not coming this year yet. It's still months away.
Hopefully once it's out, you'll be able to enjoy it more. This will only be version 1 on the long road to turn OBSP into a fully AI supported simulator, with planes buzzing around everywhere and battles being fought in space!
Well, that's enough rambling for now. Let me know what you think!
It's been a while since I last posted any updates on how OBSP's doing, so I figured I'd throws something up.
Well, we've been working hard on OBSP since the last updates. Just to jog your memory, the last update brought taxiing, takeoff and landing autopilots and AI into Orbiter:
http://www.youtube.com/watch?v=dUooJ_jkwoU
I've been continuing the work in AI and also improving the "low level" code that allows the AI to perform as well as it does. So, what's new? Well, I'm in the process of implementing a high level AI that's capable of detecting what the situation of the plane is and respond accordingly. Up until now, every user command given to the plane was given directly by the user and was executed mindlessly. But now, for the first time, Orbiter saw a plane that thinks for itself.
I implemented a system where users and AI can order planes around with a single line of LUA code. Let's say your DeltaGlider is parked at Wideawake International in one of the hangars and you want to fly to Habana, land there and have the plane park itself. You can now do that with a single command. The plane will figure out if it's landed or in air, if it needs to exit a hangar and taxi, or if it's already on the runway. If it's already at the target airfield, it'll only taxi to its destination and if it detects it needs to fly there, it will take off.
Once in air, the plane will automatically figure out a path and flight altitude that minimizes fuel usage. It'll gain altitude and cruise there. Later on I'll even add the ability for suborbital hops.
Once the plane nears the target airfield, it'll descend, land and taxi off the runway into a hangar or parking spot of your choice. All that with a single command.
I want all of OBSP's AI to be this powerful. I want the user to be able to command units around with ease. It doesn't matter if it's attacking a base or just enjoying an interplanetary flight. The AI will know how to take care of it.
What about the "low level" stuff I mentioned? Well, I've been improving the ability of the autopilots to fly in formation. I've already implemented some simple changes that make the autopilots far better at flying in formation than I am and I still haven't run out of ideas for more improvements. Until that's done, the AI will be held off, but once that's over with, I'll continue full steam ahead with the AI!
It took 3 years of work and almost 29 000 lines of code, but OBSP is finally getting really exciting!
Now let me tell you what escapetomsfate has been working on!
He's been focusing on the user interface - the hooked HUD and OBSP MFD, as well as the Aircraft library.
Let me start with the MFD. One of its most exciting features it to display the mesh of the aircraft and the systems that can be damaged:
In this case, you can see the MFD set to the damage mode - with the mesh of the DeltaGlider shown. Every one of those green points are thrusters. Main, hover, RCS. EACH can be damaged. Green means it's working fine, red means it's broken.
OBSP gets the mesh info, positions of thrusters, airfoils,... right from the plane itself, which makes this 100% compatible with ANY existing and future addon!
The same can be done for air control surfaces and airfoils. A plane that is hit and not instantly destroyed can simulate having one of its wings blown off, which would make the plane spin and tumble before crashing. We've already built in the ability to damage air control surfaces, so you lose control of the aircraft.
Also, the systems closes to where the projectile hits are more likely to be damaged.
Here's another image of the OBSP MFD, showing the DeltaGlider with weapons loaded.
You can see the selected weapons - in this case AGM-65 air to ground missiles - show up in green. There are other weapons loaded, indicated by grey squares. ETF will update the MFD so that the gray squares show a grey mesh of weapons instead.
Another thing I should really talk about in depth that ETF has been working on is the Aircraft library. The Aircraft library is an extension of the Orbiter's API - the API allows you to create engines, airfioils, control surfaces, 2D panels, 3D cockpits,... but it doesn't have any pre made systems. The Aircraft library will!
That way, complex systems will already be built in for developers to use. Newbie devs will be able to create more complex vessels just by activating the pre built 2D panels, 3D cockpit, electrical and life support systems, air breathing engines... but in addition to that, they will have Orbiter's API available, that will allow them to build on top of what the Aircraft library already provides. Of course, if one doesn't want to use specific features in the library, they don't need to activate them.
Once done, the Aircraft library will be released. Hopefully addon devs will pick it up, however, we also need the library. That's the only way that will allow us to mass produce C++ based aircraft that currently only support Spacecraft 3.
I also have another surprise. Since OBSP got its taxiing, landing and takeoff AI, it's grown beyond what Cape Canaveral and Habana can offer as a testing site. I used Wideawake Internation for a while, but decided that OBSP needs its own airbase. Therefore, I've begun building Nellis Air Force Base!
Nellis makes for an excellent choice. It has two long and wide (that's what she said!) runways, that allow the landing of even the largest winged space craft like the XR5. It also has lots of parking space to store planes and vehicles.
Keep in mind that the image you see is a work in progress. My main focus are the taxiways. The shacks are there just to help me do the markings on the floor and will be replaced with a better mesh. Here's the image of the control tower:
Real thing:
I must admit that my meshing and texturing skills aren't as good as my programming, but I'll do the best I can with the time I've allotted to the base. I'll make the base more complex that the average "slap-me-together" base made in Orbiter Base Maker, but don't expect anything as complex as Wideawake International, CSSC or AU. The base will feature hangars, planes, shacks, air control tower, some surrounding structures that serve no purpose, but no 3D terrain or Las Vegas itself.
The development of Nellis AFB is kind of sporadic, when I feel like I need to take a break from coding and subsequent math problems OBSP keeps throwing at me, however, the base will be done by the time OBSP v1 is released.
So, 3 years of work and still no release... you might be wondering what's going on behind the scenes and why we haven't released anything yet.
Well... my fault. The combat part of OBSP's code has already matured. It's at the point where it needs some spit and polish. It's the AI that's been stalling the release. I simply don't want to release OBSP half finished, even a beta version. I want OBSP to be more than just a play-and-forget addon that you derp around with for 15 minutes. I want the AI to be mature enough where it can take over the control of at least some tasks from the player, so that planes begin to fly around on their own.
I also want content. Custom planes, a custom base, sound, music, weapons,... everything we currently have is just enough to test the code, but it doesn't unlock the full potential of OBSP.
So, in addition to what we already have, what can you expect before release:
-A more mature AI - capable of flying around and destroying targets on its own. Sure, it's capable of doing that already, just it won't pick targets and weapons at its own discretion yet - you have to order it to do so. I want that to be done.
- Some orbital autopilots. Just the basics. Getting into orbit, changing inclination, periapsis, apoapsis altitude,... but nothing more. Just enough to get OBSP orbital.
- Lots of meshes and textures for weapons.
- Sounds. Sounds already work, but we have to find good quality explosion sounds and stuff like that.
- Music. We want to add music into OBSP that changes will the type of situation the player is in.
- Nellis Air Force Base. I want it done and I want it to serve as the main military base for OBSP.
-POSSIBLY an anti sat weapon. I say possibly, because that will require some radical thinking, to ensure a 100% hit probability.
- Aircraft library with a few custom aircraft.
I can't talk about specific release dates. Development of OBSP is too sporadic and unpredictable to be able to set a release date. I can safely say that it's not coming this year yet. It's still months away.
Hopefully once it's out, you'll be able to enjoy it more. This will only be version 1 on the long road to turn OBSP into a fully AI supported simulator, with planes buzzing around everywhere and battles being fought in space!
Well, that's enough rambling for now. Let me know what you think!