After publishing the "Compatibility Mode" UI that supports OSX (10.10 to 10.14) I went over the feature survey and I admit that three features stood out:
- Simple inventory interface,
- The plugin is good as it is, we need more missions/adventures.
- More tutorials.
So what will be implemented in next build:
There are two features I implemented:
- Simple inventory interface.
- Base weights.
Since Mission-X v2.1.x I already implemented an inventory interface, it was simple and limit the transaction of 5 items between plane and an external "store" (store could be anything).
In Mission-X v3.0.214 and up I took the same approach but this time the item limit is 15 (lets face it you probably won't need that much) and you have a small icon indicator on the MXPAD when you enter an "external Inventory/storage" area.
The main idea of the inventory is to add another layer of immersion to the "on ground" activities. It is an optional feature and designers may skip it and set weights internally through script code. The end result would be the same.
But, in some cases, it is nice to see the simmer doing this another action, as a diversity from the usual flight activities.
Here are few images from the "new" inventory screen, the NUKLEAR UI is nicer than the compatible one, but I think it serve its purpose.
As always, in order to implement a feature you need to use a specialized element. Here is a short snippet that describe inventories related elements:
- <plane> - items in your plane (no need for coordination)
- <inventory> - external inventory, needs area of effect (can be radius based or polygonal based)
- <item_blueprints> - an optional element to define items main characteristics, and then link them inside <item> element or using script code (currently not supported yet).
Since I wanted inventory to not only be based on Radius but also have Polygonal area, I decided to "borrow" the trigger syntax into the inventory, so an Inventory is kind of Trigger, but stripped down from the trigger scripting and messages features. The only part that did copy over was the "<loc_and_elev_data>" element, it represents the location area and radius length for radius based inventories.
When you enter an inventory area, there is no message to send or script to call, you will have to add a trigger layer on same area to implement that, this is also true for scripting.
What you do get, is a nice little icon that will appear on the MXPAD window and that you can click on it to open the inventory window. You can also access the inventory through the Briefer screen.
Transferring items between two inventories: plane and external, is done by clicking on the arrows, you will see the amount updated on the fly.
Items will be removed from list only after committing the transaction (or transfer).
Blueprints is also a new concept, although optional, it has not been implemented fully yet, but it allow you to define sets of items and then link them into inventories. This should also assist in scripting cases but will be implemented in later builds.
Calculating Weights
One of the things I found bothersome is the weight factor. I know you can implement weight through scripts, but I wanted the designer to be able to implement a "base weight" based on few simple factors, and the inventory items will be added to that weight during the mission.
Introducing the "base_weights_kg" element in the global_settings:
The weight is calculated in "kg" and the defaults as of v3.0.213.4 are:
pilot: 85kg, passengers: 0kg and storage: 5kg.
I know that the weights might not represent the norm, but it gives a good starting point to deal with.
Using the "base_weight_kg" will allow you to define the base weights you would like the plane to start with in a mission.
The plugin will calculate weights as follow:
Empty Plane + Pilot + Passengers + Storage + Inventory items.
I believe these simple features will add some immersion to the mission you will design, but please do remember it should not detract to much from the main goal of the mission, for example: in "Townsvile to Palm and back" mission, I did not ask the simmer to transfer items each stop it made . The only location the pilot needed to transfer items is in PALM stop area. When we fly back we are not being asked to transfer items at the last location too, a script checks for "brakes, speed and item existence".
Until next time
Have great simming
Saar