bourbonwarfare / potato Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v2.0
License: GNU General Public License v2.0
Instead of making people manually translate virtual arsenal gear to our 'unique' gear setup, we should support exporting the virtual arsenal unit's gear into our format.
_lines pushBack format ["// MAT"];
_lines pushBack format ['#define MAT "%1"', GVAR(loadout_at)];
_lines pushBack format ['#define MAT_MAG %1', [GVAR(loadout_**at**), GVAR(loadout_**atMags**), -1] call _fnc_getMags];
_lines pushBack format ['#define MAT_MAG2 %1', [GVAR(loadout_**at**), GVAR(loadout_**atMags**), -1] call _fnc_getMags];
_lines pushBack format ['#define MAT_OPTIC %1', [GVAR(loadout_matAttachments)] call _fnc_formatList];
Turn the markers component into a single 3DEN control to reduce the number of attributes on units without markers.
Is there any actual interest in this?
Improvements:
Fixes:
Not to be done/out of scope:
It appears that, upon JIPing assignGear races with the normal gear initialization. Due to this race, about 50-80% of JIPs get the vanilla gear, and we get the occasional ACRE sync issue.
Remove deprecated stub classes
An AI counter for Zeus who is not the current admin so that they have a better idea of AI counts. Overlay or some such?
The ability for Zeus to switch their ACRE to spectator like our respawn menu for non-admins.
Add helper classes that extend base blufor/opfor/indfor units to help out with our assign gear scripting and configuration.
Way too many of our functions are undocumented (super guilty of this)
To dos:
Add code to reset ACRE synchronization (really just to clear out the hint) to the admin menu.
We have talked about this before, but I wanted to bring it up again because it may be related to issue #60.
Basically there is some time once a POTATO unit is spawned that they truly become sync'd and ready to go. Sometimes this never really happens. This is most obvious when trying to get groups to follow their waypoints. Thankfully, AACO added a couple of modules to address this, but I've had mixed results with them.
The best surefire way I've found to resolve this is to RC into a unit. I will RC into a unit and then I can't move them or do any actions for upwards to 10 seconds. That's rare, but it does happen and generally is 1-5 seconds of sync time. Once I do this I can exit the unit and they will be good to go.
This also could be related to the issue in the 9/25/16 coop where the entire serve locked up after I RC'd a unit for the first time in the mission. Once it was sync'd the server recovered, some 30+ seconds later. Unfortunately the lag caused by this got at least 1 person killed.
So any thoughts for solutions to this issue or is this always going to be a product of having zeus based missions?
in our ace settings use:
class ace_overheating_unJamOnreload { typeName = "BOOL"; value = 1; };
(moved from BourbonWarfare/bwmf#77)
This is due too having two components on the screen with a group (or multiple groups selected). Move away from using GVARs in the 3DEN functions. (temp fix in place)
When we're building the loadout array, we need to validate known classes (and log anything that's fucked)
Things we should probably validate:
I don't know how effectively we can validate items as they could be from a couple of configuration roots.
It looks like there's some timing condition to the AI modules, where if the modules run during init, some players may actually be considered non-players (AI), tripping safe spawn and exiting the modules early.
Zerith's ideas for this feature:
Will update as I think of other things.
Right now there's a (somewhat) major issue in a dedicated/hc environment where trying to attach the "dismounts" zeus module to a vehicle will just kick back the "no attached vehicle" error. Maybe just search for the nearest vehicle within a certain distance of the placed module?
Fix issue where opening a group and then saving the group will clear the radio information.
Seems to be group specific
Allow Zeus to set a spawned unit cap from one to the maxUnits defined in CfgGarrison.
Add module to 3DEN (and maybe zeus?) to garrison with the following options.
Lingering questions:
Due to some rude people crashing/DCing we could really use a tool to set/change markers during run time. I'm not sure where this tool should live as it lives somewhere between the admin menu and the marker component...
If not already done, can we discuss moving the safestart timer from the center of the screen to the top? Or bottom left/right?
Observing a lot of issues where AI get stuck in a loop trying to look through their binoculars, add a fix to remove binoculars from AI units post gear script (or build it into the new gear script?)
Add player specific markers to respawn, also do some cleanup/general safing of the respawn system.
Allow user to choose side specific marker icon
It seems when the combat FSM kicks in the AI do not want to stay put and tend to leave their spots. This leaves buildings empty after a time and dumps the AI out onto streets where they are cut down.
Any idea on what changed for this to start happening?
Refactor VCOM AI framework code to move away from continuous FSM execution. FSM execution does not allow for script suspension, so it basically just continuously hammers the conditional blocks. We also have two FSMs running (danger/behavior) which can probably be condensed down to one spawned thread.
Another big issue is FSM locality, there seems to be issues with transferring groups between clients, and having the FSM stuck executing on a different machine, using the spawned thread method, we can do a quick unit locality check, and spawn a new thread where it's needed.
This will be a pretty major refactor, but should:
Add ability for zeus to "ungarrison" a building, should just be able to do: _unit doWatch objNull;
to "unlock" the unit.
So some notes from a few sessions using Zeus Factory
Team colors sometimes seem to randomly assign themselves
I'm not sure why, but it in the 3DEN editor environment, the usePotato
value is used from the last mission loaded, not the current mission. Since it's only an editor level issue it's pretty low priority, just seems odd.
Change VCOM to use pseudo states to track combat, and disable auto-combat. We're seeing issues where units are placed into combat mode and are either: not moving/responding or getting stuck in dismount loops.
Also look into having a thread per group, instead of a thread per unit.
The safestart timer does not display properly under the following conditions:
Adopt the script I wrote for the "Hold What?" an implement it with a UI element that would allow a Zeus to select a side, a drop vehicle (Mi-8,CH-47,C-130), a drop type (troop,light IFV/APC,light tank destroyer), and finally an ARES LZ and RP.
Questions:
Should we?
Since this could spawn up to 25 units/drop is this something we want readily available?
Add proper ACRE muting to spectate
Create a way for zeus to give AI groups specific waypoint types (for example: search and destroy, or hold).
Automatically add Advanced Medical briefing when Advanced Medical is active.
Allow 3DEN placed AI spawning modules to be sync'd to triggers, not sure how much work this is going to be.
Allow Zeus to choose the vehicle used in ARES reinforcement, make sure we keep a random option.
Add ability for admin to post a hint
Add new defaults to ares reinforcements:
Don't know how difficult this would be to implement, but maybe consider adding a basic toolbox we can use for fixing things like gear, radios, etc. That way code does not need to be run from debug.
For example:
Re-init everyone's gear/radios to fix mass nakedness/babel.
Able to select individuals to do the same. Either fix radio or gear or both.
Add tool to test/validate gear in 3Den.
Should throw warnings if a unit:
Doesn't have a gun
Doesn't have ammo (or has less than four mags for said gun)
Doesn't have medical supplies
Any items not added to a unit due to space issues
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.