Skip to content

Commit

Permalink
Everything but the Landing Light (#455)
Browse files Browse the repository at this point in the history
* Add rocketpod pylon magazine and weapon

* change proxy

Use one with simulation = "maverickWeapon" in CfgNonAIVehicles

* Add DAGR pod

* Update pylon presets

* Add [H60] to pylon mag names

* basic texture

* no more M151

* add p3d and paas

* updated cargo proxies

* visible and folding

* renamed selections

* animation angle to 90 deg

* added HH-60W with stretcher rack

* Stretcher rack for the W

-Added VTX interactions to lower/raise stretchers
-Added Stretcher Rack into main p3d
-Added new animations for Stretcher Rack

- still needs some scripts for the Stretcher Rack

* HH-60W stuff

-Added New nose, New FLIR, Crew MFDS
-Medic pouches now hidden selection on W

* Lights

Adds cabin lights currently only works from the pilot/copilot seat

* Files for crew mfd and nose radar

* remove animationSource for StretcherRack_Frame

* [un]locking cargo/ffv seats with stretcher rack fold

* Delete LICENSE

* Create licence

* Update README.md

* Update README.md

* removed test

* Updated Build tools

* added updated model

* fixed pboprject aguments

* Revert "Merge branch 'stretcher-rack' into Main"

This reverts commit 60e4d58.

* model from 3-28-21

* removed yax

* updated tool 

makefile and more tools from the ace build

* automation test

* removed files

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Create pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update pboproject.yml

* Update README.md (#184)

* Fixed get in mem pt too low

* hook logic 1

Would like to avoid repeated lineIntersectsSurfaces if possible

* hook logic 2

when rope is stretched and unit is in hook, unit should not be moved out

* Eicas and startup procedure improvements

Crew chiefs can now move to pilot seats

* Review comments processed

* FD keybinds should check for RTD

* repair hook action should fully reset parts and vars

* move dummy pylons off ui

* -60S and HH

* correct waypoint count from 2/1 to 0/0

* fix author

* Update fnc_canMoveHeliToHook.sqf

* rolls to a stop

* fix master caution interaction position

* Adds Eden attribute to set the door numbers

* Initial reworks along with TAC

* Waypoints can be added and FLIR can be slewed through TAC

* updates to flir, fms and jvmf

* gitignore

* TAC works with keybinds

* JVMF Position sharing enabled

* mfd page number moved

* Added nearest location rendering

* Possible JVMF page redesign

* Fixed build issues

* Set up location rendering on TAC, fixed up position sharing

* Freetext overhauled

* JVMF Position page

* Positions from JVMF can be set as waypoints

* New JVMF message code almost finished

* JVMF tablet functional and can be opened as equipment

* Revert "fix master caution interaction position"

This reverts commit 7d9df4a.

* Added option to disable systemChat messages

* Addressed review comment

* Fixed typo in variable name

* split the sides of the cabin seats memoryPointsGetInCargo

* Rescale altitude tape from 305m to 50m

* Move VSI down next to RALT tape

* Hide Altitude autopilot caret on HMD

* Hide engine fail crosses on EICAS in SFM

* dummy pylons

* Update XEH_PREP.hpp

* Update MFD.hpp

* initial fix for sagging suspension

* wheels look nice now

https://www.youtube.com/watch?v=Kyfo-JUzYG0

* baller ground contacts

* fix wheels, had wrong model

* wheel contacts on outside for pinnacle

* separate compartments for pilot and cabin

* interaction to switch pilot

* only move seat, don't drag unconscious

* condition false

* lost a line

* remove vehicle ui box

* Rename MFD Fluid, add rearm pylons

* clear merge for flir

* getIn memory points to right side

* check gau-21

* Fixes #156

* Increase RoF from ~200 to 625 rpm from wiki

* change cannon texts

* remove skyfire, add 20mm cannon pod

* remove crosshair on exit #260

* remove filmgrain

vanilla cameras don't have it

* add APKWS w ace guidance

* add L and N hellfire UV sets

* accurate mass values

* change DAGR to ace guidance

* smaller interaction radius

* Set FFV LODs to remove switch on ADS

* fix flir mouse slew

having the slew key be bound to ace menu key causes `uiNamespace getVariable ["vtx_uh60_flir_mouseBlocker", false]` to return `true`, which stops a second slew key binding from working after having done slew with the ace key. very edge case.

* slick viv mempts dont exist in this model

* fix action range too short

* Initial Commit

* Delete settings.json

Local file. Don't want to pollute the repo

* Addressing feedback

* Broke out params for _x

* Update in response to #247 (comment)

* Address comment: #247 (comment)

Initial incorporation of function to store pylon data in lieu of using perSecond.

Will expand to other instances where a pylon value is set in another commit

* All pylon values utilize setPylonValue

There were far fewer instances of setting pylon values than I had guessed

* hotfix

* Initial Commit

* BugFix - Pylons accidentally being applied to other ARMA 3 assets

* Attempt to fix copilot losing HMD

* Update version

* ND Page functional

Map mark waypoint rendering fixed
TAC page BFT iconography updated

* Engine cowling art configurable (#278)

Co-authored-by: YannikH <[email protected]>

* RPT fixes (#286)

* cfgUVAnimations from Heli_Transport_01_base_F to vtx_H60_base

* DAGR

fix
wrong 'pylonWeapon' in magazine:'VTX_PylonRack_M261_DAGR' this magazine cannot be used in weapon'ace_missileguidance_dagr'
unable to create weapon for missile 'VTX_PylonRack_M261_DAGR', check config entry'pylonWeapon'

* dummyPylon

fix
cannont create weapon for vtx_1000rnd_dummy

* Load order

* default turned in, can see driver

* No need to script TurnIn since it's now default

* make sure ace components loaded

* show M230 muzzle flash

* GAU-21 muzzle flash, links, cases

* fewer groundContacts for fps and taxiing (#289)

* IVHMS functional (#214)

* Update fnc_setup.sqf (#287)

* SFM Wheel brakes (#283)

* Cursed brakes

* disable driver turnout

* can access ffv from outside

* fix pilotcamera crosshair in map

* gau 21 lods, optics

* Stop rope attaching (#188)

* Feature/30mm ammo (#292)

* Added 30mm HEDP and 30mm AP ammo types

Co-authored-by: Donov <[email protected]>
Co-authored-by: Steve Zhao <[email protected]>

* Declutter pages added (#293)

Waypoint cycling added
Waypoint direction arrow added

* rescale HMD RALT caret to 50 max (#294)

* rescale HMD RALT AP caret to 50 m max

* Bugfix: Fix EICAS not displaying wheel brake on entry (#186)

* check wheelbrake state on entry

* Fix category of ViV CBA settings (#298)

* fix floor ffv animation (#297)

* fix floor ffv action

* copilot invisible from outside

* Add setting for hook attach script (#296)

* Feature/sfm flight director (#320)

* Basic config updates for SFM FD
* ALT/RALT/ALTP/HDG/IAS functional in SFM

* CTAB markers are imported to the JVMF system (#321)

* Feature/ccfs (#323)

* FMS autopilot only runs on local machine.
* Waypoint selection MP fix
* HDG autopilot corrects for drift
* CCFS fully playable
* psync functional for HDG
* HDG rollover fixed
* FD knob sync fixed
* FMS coupled mode added

* Feature/mfd improvements (#324)

* Darker MFD backgrounds
* FMS has black background and greener text
* workaround for marking materials
* HMD markings fixed for rockets and hellfires
* Green and yellow colors updated
* TAC iconography updates
* Overhauled vanilla TAC maps
* TAC Scaling fixed
* BFT renders at any scale
* Map overlays for vanilla maps
* added modded maps

Co-authored-by: Lost <[email protected]>

* Sfm plus (#322)

* SFMPlus

* 0.5.0 Pre-release build (#331)

* Flares fixed
* pylon bug fixed
* torque limits updated to be realistic
* Rotor collision fixed
* Markings application fixed

* Patch 0.5.1 build

Added APU sound
Fixed APU advisories
Make AFM use SFM torque for damage for now
Fixed IAS and HDG indicators on ND and PFD
Removed CCFS debug text

* Add simplified Chinese translation (#340)

Add simplified Chinese translation to stringtable.xml

* Patch/052 (#344)

* turn debug messages off by default

* misc fixes

* HMD/EICAS update

* patch level

* Markings/Lights advisory fix

* Fix EICAS light advisory

* remove 114L

* MFD pages changes

FLIR is now on TAC page instead of ALL
IVHMS is on all in the place of FLIR (besides TAC)
CCFS is now on PFD

* MFD Fixes

Move IVHMS button independent of mfd_any
Add BeansBro to credits
Add IVHMS to ND page

Co-authored-by: BroBeans <[email protected]>
Co-authored-by: BroBeans <[email protected]>

* Sfm+ fixes for 0.5.2 (#343)

* Initial Commit

-Adjusted keyboard mode stabilator position.
-Setup stabilator for tuning
-Adjusted input to avoid going over 100% for keyboard users
-Corrected spelling error in masSet functions and adjusted weight to 113.4 (250lbs)

* Update

-Complete retune of the stabilator, tuned for 70, 130 and ~140 knots
-Fixed startup to be correct
-Added a force generator to prevent taking off without the Nr being at 100%
-Tweaked tables for retuned stabilator

* Adjusted force multiplier range

* Table Correction

* Update

-Adjusted getInput to output more consistent values
-Adjusted engCruiseTQTable to use updated input
-Made it so the force generator only generates force when collective is increased

* Update

-Created antiLift script to handle the force generator that prevents the helicopter from taking off.

* Update

Commented out systemChat

* add damage hints

* remove hint in timely fashion

* Adding the engine EH back in to avoid shift-flying

Co-authored-by: BradMick <[email protected]>
Co-authored-by: BroBeans <[email protected]>
Co-authored-by: YannikH <[email protected]>

* Feature/qa automation + 0.5.2 engine fixes (#349)

* QA Build creation script
* 0.5.2 Engine handling and SFM+ hotfixes

* remove 114L (#351)

* Delete XEH_PREP.hpp.orig (#312)

* Absolutely massive updates (#360)

* Basic MFD changes

* PFD progress

* EICAS cautions with inverted markers

Functional master caution
Master caution radius increased
PFD ARC display starter
PFD HOVER display starter
PFD ADI overhauled

MFD configuration done to allow disabling of RALT
MFD configuration done to allow RWR damage

* FLIR MFD Failur

* FLIR can break

Flare mempointes fixed
Engine fixes

* CMWS Can fail

* EICAS Caution tapes test

* Initial CAS overlay

* TAC overhaul started

* performance improvements around CAS module

* TAC center rendering code updated

Model geo phys and geo lods updated

* CAS Overlay can be closed

TAC Cursor added (not functional yet)
CAS Overlay render fix

* TAC work

* TAC supports offsets

* TAC Overhaul ready

* getmaptexture lookup fix

* NVG HUD start made

* NVG HUD nearly done

* UH-60 HUD implemented

* Waypoint rendering improved on TAC

ND and ARC broken

* More work on the ND and TAC waypoint rendering, stuff is broken

* Added cursor info

* North align disabled,

Placeholder CAS removed,
Opacity on HMD

* ND Waypoints fixed,

PFD ARC waypoints fixed
TAC hooking now follows

* MFD updated

* Vt7 topo map fixed

AI can fire doorguns now

* Advisories now on overlay

JVMF advisory
LSR advisory
MFD updates

* MFD Multiplayer sync fixed

FLIR multiplayer fixed
FLIR drift fixed
TAC multiplayer use
MFD broken textures added
MFDs auto fix when repaired (broken texture isn't reset)

* FLIR subpage overhaul started

MFD error overhauled

* Hellfire follows PRI CHAN

ALT CHAN implemented
LRFD CHAN implemented
LST MAN and AUTO implemented

* Pylon reassignment implemented

* FLIR boot sequence added

* Basic encoding for MLASS

* Weapons updated

Jettison function added
Pylon reassignment fixed
MH-60M Misc exterior feature added
WIng store damage split
No more anti-lift

* Removed debug messages

* Loading perf improvements (#363)

* text update p1

* mlass

* - lost's texture fuckery extravaganza

 - MLASS implemented and encoded
 - MH-60M Misc equipment updated

* Hellfire temp fix

LOD4 disappears
EGI/RALT switches encoded

* updated texture

* fuel fix?

* AI Doorguns fixed

Rotor can break again

* Final fixes for XOs misc content

Rotor transparency fixed

* Rotor brake implemented

* rotor brake and RPM limiter functional for AFM

* Fixed the LOD4 disappearing and temp rotor blur fix

* Texture improvements

Cockpit doors can animate
Hellfire model improvements
Overtorque hint fixed
FLIR defaults backwards
All stations can be assigned
All stations can be jetissoned

* Stowed flir visually represented both on model and fullscreen

* Chaingun makes camera shake now

* Rotor spawns at offset

Crew gear improved
Doors can hide again

* UH-60M textures finalized

MH-60M textures finalized
Mass change fixed
Torque limit fixed for overweight
Slingload weight fixed

* Increased HitHrotor hitpoints

Implemented new reflective glass
Cockpit door hiding no longer causes artefacts
Cold start panel functional
RTD controller debug chat removed
Rotor brake debug chat removed
Hellfire and rocket pod models updated
Interactive customization added

* Flight director FMS and HVR modes implemented

Textures improved
Basic cabin light implemented
LST Scan speed increased
Stabilisation code improved
FLIR can destabilise again
FLIR no longer gets stuck on horizon

* Added quick start

Added student driver markings
Fixed EICAS caution marker 40 being on by default

* Removed the sensor panels

Added changelog md

* Loading speed equalized

* reduced laser seek error occurence

reduced amount of conditions used
HVR now usable in AFM
basis for loading screen configd but not implemented

* Altis flooded removed

HH-60G Model and texture added
HH-60G Firefighting texture added
M-230 Sound overhauled

* changelog update

* HH implemented

Old HH skin removed
All skins updated

* MLASS visible again

EICAS properly shows aux tank fuel levels

* updated settings

Damage apply (line 64 gone)
sfm+ hint damge changed to hintsilent
Init settings for hoist changed to be false by default to fix hoist bug (temp)

* fixed simple collective on in sfm+

* Weapon handoff fixed

Co-authored-by: Lost <[email protected]>

* Build system scons (#392)

* Remove unused pbos

* Add missing header file

* Add inition Scons integration (fails to binarize or pack fully)

* Fix parameter count in preprocessor macros

* Allow optional disabling of binarization for some pbos

* Make scons force prefix using -prefix

* Audio test (#393)

* SFX PBO

* SFX PBO

* SFX PBO

* SFX PBO

* *Add Sound Controllers

* Add Volume Controller Compat

* Fixed sounds to work with scons (#394)

Added readme for scons

* Add fire mode and ammo to HMD. Fix weapon text in FMS. Add single fire M229 Hydra (#285)

* Add fire mode #52 and ammo to HMD. Fixes #90 (weapon text in FMS)

* Scons build functional (#397)

* Add autostarted event (#405)

Allow users and other mods to respond to the event and apply even more custom "student" markings

* fix too-short viv ace distance (#310)

* sound improvements (#401)

* Correct Variable

* Add RotorBrake Interaction Sound

* Fix MP Compat

* Add RotorBrake Sound

* Correct Sound Format for Arma

* *Add Engine Sound Freq transition due to Engine Trust
*Add WindFlow Sound when the door opened and flying sideway

*Fix Damage Sound Transition

* *Add Engine Sound Freq transition due to Engine Thrust *Add WindFlow Sound when the door opened and flying sideway

*Fix Damage Sound Transition

* *Fix MP Compat (Every sound plays on local)

* *Add more sounds (Door interaction and CreakingAirFrame)

* Wrap all active debug messages under a setting (#406)

* Wrap all active systemChat debug message under showDebugMessages setting

* Wrap all active diag_log message under showDebugMessages setting

* Fix no ammo on pylon script error (#404)

ammoOnPylon command can return a boolean on failure, `isNotEqualTo` can compare different types without error

* Fixing the bug that FLIR is not activatable after a few hours of play time (#424)

Inside the different FLIR scripts there was a mixture of 'time' variable and 'cba_missionTime'. These two variables are not comparable! After a few hours of play time they can deviate in minutes or even hours (!) Now FLIR consequently uses 'cba_missionTime' for announcing the boot time as well as for the check when the FLIR system has been booted.

Co-authored-by: Schmitt <[email protected]>

* Update build.yml (#428)

* Update cfgWeapons.hpp (#429)

* Bugfix/startup order (#417)

* Initial Commit

added in PCL checks for starter to engage
HAVE NOT TESTED, CANNOT TEST LOCAL DUE TO SCONS ISSUE

* Logic Error fixed, tested local and ready for merge back to main

* Adjusted ESIS logic

* Added in standby insturments battery

* Adjusted variables so they affect globaly

* Amend scons excludes

* Sound Overhaul & Misc bugfixes  (#430)

* fix fms fuel count

fix #413

* possible unstow fix

* fix ROF build issue

* hide monocle where necessary

* improve monocle check

* fix GVAR error

* fix copilot attenuation

* DAP minigun displayname

* add simple startup addon option

* fix cargo unloading not unlocking seats

* fix fms fuel count

fix #413

* possible unstow fix

* fix ROF build issue

* hide monocle where necessary

* improve monocle check

* fix GVAR error

* fix copilot attenuation

* DAP minigun displayname

* add simple startup addon option

* fix cargo unloading not unlocking seats

* add sound compat for AFM

* Add APU startup sound (Int/Ext)
Fix MP Engine startup sound can't be heard if the bird isn't Local to 
the player
Tweak and Redo sounds (RotorBrake,EngineStart,EngineShutdown,cabin 
Door,CptDoor)

* Fix Sound Cracks
Increase Obstruction and Occlusion factors

* Balance engine sounds volume

* Adjust Occlusion Obstruction Factors
Fix internal wind washing sound when getIn the bird
Tweak sound volume

* Fix APU + Engine Sounds in MP (Tested on Dedicated Server)
 - Can be heard on other clients

Add wind-washing sound can be interacted by ACE Action
Optimize Net traffic and performance
Change Engine Sound Ext
Change APU distance Ext
Tweak Turbine Sound Ext

* Tweak Sound Sources

* Adjust Sound Balance
Make Sound more Directional

* Sounds crispier + directional + less overwhelming
Tweak Sound3Dprocessor
Sound Blance

* Tweak Sound Setups

* Change Ext Engine Noise

* more robust laser code setup

* fix helis hidden in zeus

* qol build change

* fix ESIS not working with simple startup

* actually fix fuel discrep

* fix another debug msg

* temp fix for flir unstow/jvmf breaking

fix #420

* Sound Tweaks
Optimize Sound Render
Add Internal Volume Multiplier (in case they're too loud for people)
Add Internal Rotor Sound on passenger seats
Fix External Environment Sound as Emitter

* Fix JVMF compat from most used cTabs
TF_Ghost_1_4_1 :
 https://steamcommunity.com/sharedfiles/filedetails/?id=871504836
Devastator :
 https://steamcommunity.com/sharedfiles/filedetails/?id=2189592034
NSWDG :
 https://steamcommunity.com/sharedfiles/filedetails/?id=2511318948
1erGTD :
 https://steamcommunity.com/sharedfiles/filedetails/?id=2262006564

* delete waypoint through fms

* Balance APU Sound Volume
- Remove some unused sounds

* Fix multiple play at the same time
- Remove **APU Gen** Updating APU state
- Use Say3D instead PlaySound3D to have better sounding
- some cleanUps

* Rework close rotor sound
Balance sounds at close range
Remove WAV files

* Sound Adjustments :
- Sound Balance
- Apply Startup + Shutdown + APU Startup Sound s to new the sound engine
- Add APU Fuel Pump Delay
- heli sound can travel much further now
- Remove un-needed sound

* fix monocle staying w/ hud off

* Minor optimization

---------

Co-authored-by: Aaren <[email protected]>

* Apu Fuel burn Bug (#444)

* Reset Detached TrackIR Cursor (#445)

* Reset Detached Cursor after setting disabled

* Update git actions to latest versions (#446)

* Update git actions to latest versions

current actions v. have been deprecated and no longer function

* Pre-release alterations (#449)

* vers update

* fix copilot radios

* fix ghost ffv seat

* ace_missileGuidance compat (#450)

* make sure vision is not reset on page change (#451)

* Various misc improvements (#452)

* Update cfgVehicles.hpp

* Update cfgVehicles.hpp

* Cabin Fixes

Changes door gun limits when turned out to match turned in. Shows seats and guns in Slick variant. Changes burst value for players to fire only when pulling the trigger.

* Fix miniguns firing after release of trigger

* Arbitrary Spelling Fixes

* Troop Commander Seat Added (UH/MH60M)

* Door Gun Pintle Stops Improvement

* Feature/ace skis (#168)

* Added Ski Ace Interact

Added ski ace interact

* Resolved Conflicts from Old Build

* Update XEH_postInit.sqf

---------

Co-authored-by: Donov <[email protected]>
Co-authored-by: Warren <[email protected]>
Co-authored-by: BroBeans <[email protected]>

* Adjusted Type to match sister-ship project, AH-64D.  Reduced Armor value to allow vanilla AI SPAA to engage the H-60 with guns.  Re-fixed HighROF class duplication (why does this keep popping up?) (#431)

Co-authored-by: AdozenBABYdogs <[email protected]>
Co-authored-by: Warren <[email protected]>

* Feature/option clear jvmf (#432)

* Added in option to remove default JVMF messages
JVMF messages can now be removed via clicking the check box in the
settings menu of the UH-60M.

Cannot build .pbos on linux, need to find a solution to that

* Forgot to add one line of code
The one that actually adds the setting

* rearanged items order
hopefully this fixes things

* added missing comma

* fixed array -> bools

* fixed typo: Misplaced semicollin

* resolving bug fixfor JVMF messages not displaying
#354

* Additonal Bug fixes for JVMF 0 messages

* attemping to fix JVMF not displaying

* re-adjusted jvmf to try anddisplay message

* resolving bug fixfor JVMF messages not displaying

#354

# Conflicts:
#	addons/uh60_jvmf/functions/fnc_drawJVMF.sqf
Fixing JVMF from an earlier stage

* Added in JVMF delete button�TODO:  fix new bugs

* JVMF Delete message works as intended

added in functionality to delete the messages
hides JVMF UI when all messages are deleted

TODO/Forseen issues:
CTAB messages will get re-added into JVMF if they are deleted

* layout shift & debug messages

---------

Co-authored-by: BroBeans <[email protected]>

---------

Co-authored-by: Steve Zhao <[email protected]>
Co-authored-by: Xovolovo <[email protected]>
Co-authored-by: Michael <[email protected]>
Co-authored-by: a26mike <[email protected]>
Co-authored-by: YannikH <[email protected]>
Co-authored-by: Erik (Lurch) <[email protected]>
Co-authored-by: Beans <[email protected]>
Co-authored-by: BroBeans <[email protected]>
Co-authored-by: sevn10 <[email protected]>
Co-authored-by: AdozenBABYdogs <[email protected]>
Co-authored-by: Donov <[email protected]>
Co-authored-by: Lost <[email protected]>
Co-authored-by: ZHANGTIANYAO1 <[email protected]>
Co-authored-by: BradMick <[email protected]>
Co-authored-by: BradMick <[email protected]>
Co-authored-by: Matthew Smith <[email protected]>
Co-authored-by: Aaren <[email protected]>
Co-authored-by: jonpas <[email protected]>
Co-authored-by: Schmitt <[email protected]>
Co-authored-by: Aaren <[email protected]>
Co-authored-by: Snow(Dryden) <[email protected]>
  • Loading branch information
22 people authored Oct 20, 2024
1 parent e8a5594 commit 6626cc4
Show file tree
Hide file tree
Showing 987 changed files with 30,882 additions and 6,494 deletions.
24 changes: 2 additions & 22 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,29 +3,9 @@ name: Feature request
about: Suggest an idea for this project
title: 'Feature request'
labels: Feature request
assignees: YannikH
assignees: a26mike

---

## **Is your feature request related to a problem? Please describe.**
<!---NOTE: A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] .-->
- change text here
- change text here

## **Describe the solution you'd like**
<!---NOTE: A clear and concise description of what you want to happen. .-->
- change text here
- change text here


## **Describe alternatives you've considered**
<!---NOTE: A clear and concise description of any alternative solutions or features you've considered.. .-->
- change text here
- change text here


## **Additional context**
<!---NOTE: Add any other context or screenshots about the feature request here. .-->
- change text here
- change text here
## **Describe feature request.**

10 changes: 10 additions & 0 deletions .github/workflows/Workflows_Documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Documenting the workflow

build does what ?

job is to validate


development does what

does what Release_candidate.yml
52 changes: 52 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@

name: CI/Validate

on:
workflow_dispatch:
push:
branches:
- Main
pull_request:

jobs:
# validate:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout the source code
# uses: actions/checkout@v2
# - name: Validate SQF
# run: python3 tools/sqf_validator.py
# - name: Validate Config
# run: python3 tools/config_style_checker.py
# - name: Validate Stringtables
# run: python3 tools/stringtable_validator.py
# - name: Validate Return Types
# run: python3 tools/return_checker.py
# - name: Check for BOM
# uses: arma-actions/bom-check@master
build:
runs-on: windows-2022
steps:
- name: Checkout the source code
uses: actions/[email protected]
with:
fetch-depth: 1
- name: Set up A3Tools
uses: arma-actions/arma3-tools@master
with:
toolsUrl: ${{ secrets.A3TOOLS_S3_URL }}
- name: Set up scons
run: python -m pip install scons
- name: Build with Scons
run: scons
- name: Archive Release
uses: thedoctor0/[email protected]
with:
type: 'zip'
path: 'release'
filename: 'hatchet_h60.zip'
- name: Upload Artifact
uses: actions/[email protected]
with:
name: hatchet-${{ github.sha }}-nobin
path: hatchet_h60.zip
13 changes: 0 additions & 13 deletions .github/workflows/greetings.yml

This file was deleted.

4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,8 @@ texHeaders.bin
*.swp
*.swo
*.biprivatekey
build/
Thumbs.db
.sconsign.dblite
*.wav
*.pkf
4 changes: 4 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"editor.detectIndentation": false,
"editor.tabSize": 2
}
21 changes: 1 addition & 20 deletions AUTHORS.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1 @@
# CONTRIBUTOR LIST

Design & Scripting - Yax

Art & Encoding - Riverx

Special thanks to

A26Mike - Cabin fuel tanks and general art help

Ampersand - scripting features like the FLIR and the hoist, and doing general config help

Foxone - Refueling probe

JLOrion - HH60 texture

Raptor6 - Service platform model

Sykocrazy (& RHS) - Allowing us to use the FLIR overlay from the MELB


111 changes: 92 additions & 19 deletions LICENSE

Large diffs are not rendered by default.

49 changes: 34 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,56 @@
<p align="center">
<a href="">
<img src="https://img.shields.io/badge/Version-0.3.0-blue.svg?style=flat-square" alt="Zeus Enhanced Version">
<img src="https://img.shields.io/badge/Version-0.5.2.40-blue.svg?style=flat-square" alt="H-60 Pack Version">
</a>
<a href="https://steamcommunity.com/sharedfiles/filedetails/?id=1745501605">
<img src="https://img.shields.io/badge/Steam-dev%20build-orange?logo=steam" alt="H-60 Pack">
</a>
<a href="https://github.com/Project-Hatchet/public_h-60/issues">
<img src="https://img.shields.io/github/issues-raw/Project-Hatchet/public_h-60.svg?label=Issues" alt="H-60 Pack Issues">
</a>
<a href="https://discord.gg/4AYEfFD">
<a href="https://discord.gg/58Pt5EGjvQ">
<img src="https://img.shields.io/discord/487939925938012161.svg?label=Discord&colorB=7683D5" alt="H-60 Pack Discord">
</a>
</p>
<p align="center">
<sup><strong>Requires the latest versions of <a href="https://github.com/CBATeam/CBA_A3/releases">CBA A3</a>, <a href="https://github.com/acemod/ACE3/releases">ACE3</a> and <a href="https://github.com/Project-Hatchet/hatchet-framework">Hatchet Framework</a>.<br/></strong></sup>
</p>

The **Hatchet H-60 Pack** is a helicopter pack that brings realistic H-60 series helicopters to Arma 3, using our custom made Hatchet Framework to add detailed interactive cockpits, we strive to bring the player's experience as close to a flight sim as possible.
The **Hatchet H-60 Pack** is a helicopter pack that brings realistic H-60 series helicopters to Arma 3, using our custom made Hatchet Framework to add detailed interactive cockpits, we strive to create an authentic representation of the H-60 series helicopter.


## Features
## Development Guide

### Credits
Core Team
### SConstruct(SCONS) Build environment
The H-60 is built with SConstcut, or for short, SCONS.

- Yax
- Riverx
- A26Mike
- Ampersand
#### Prerequisite: python > 3
To install scons, you require python 3.
To check what python version you have installed, you can use the `python --version` command

Special thanks to
#### Scons installation
Once you confirmed you have python installed, you can use the command
`python -m pip install scons`
To install scons

- Foxone
- JLOrion
- Raptor6
- Sykocrazy
#### Troubleshooting
**PATH Warning**
Important: when installing scons, you might find the following error:
```
WARNING: The scripts scons-configure-cache.exe, scons.exe and sconsign.exe are installed in 'C:\Users\<user>\AppData\Local\Programs\Python\Python39\Scripts' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
```
If you find this, you will have to add the python folder to your PATH.
If you don't know how to add variables to your PATH, you can find more information here https://www.architectryan.com/2018/03/17/add-to-the-path-on-windows-10/

**Other errors**
If you find any other errors, please ask the dev team in the Project Hatchet discord server.

#### Usage
Once installed, you should be able to open the project's root folder in your terminal, and run `scons`.
This should generate fully built PBOs in your addons folder.




<a rel="license" href="https://www.bohemia.net/community/licenses/arma-public-license-nd" target="_blank" ><img src="https://data.bistudio.com/images/license/APL-ND.png" ><br>This work is licensed under the Arma Public License No Derivatives</a>
142 changes: 142 additions & 0 deletions SConstruct
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
from SCons.Script import *

import os.path
import glob
import winreg
import urllib.request
import os
import zipfile
import json
import subprocess

env = Environment(tools=[])

# Utility functions

def allFilesIn(path):
return [s.replace("$", "$$") for s in glob.glob(path + '/**/*', recursive=True) if os.path.isfile(s)]

def getSettings():
with open("tools/build.json") as file:
return json.load(file)

def targetDefinition(target, description):
return env.Help(f"\n{target.ljust(20)}\t - {description}")

def isJunction(path):
process = subprocess.run(["fsutil", "reparsepoint", "query", path], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
return process.returncode == 0

# Useful paths
def a3toolsPath():
with winreg.OpenKey(winreg.HKEY_CURRENT_USER, r"SOFTWARE\Bohemia Interactive\Arma 3 Tools") as key:
return winreg.QueryValueEx(key, "path")[0]

def arma3Path():
reg = winreg.ConnectRegistry(None, winreg.HKEY_LOCAL_MACHINE)
with winreg.OpenKey(reg, r"SOFTWARE\Wow6432Node\bohemia interactive\arma 3") as key:
return winreg.EnumValue(key,1)[1]

def addonBuilderPath():
return os.path.join(a3toolsPath(), "AddonBuilder", "AddonBuilder.exe")

class Object(object):
pass

def getPboInfo(settings):
def addInfo(name):
pboInfo = Object()
pboInfo.name = name
pboInfo.folder = os.path.join(settings["addonsFolder"], name)
pboInfo.outputPath = pboInfo.folder + ".pbo"
with open(os.path.join(pboInfo.folder,"$PBOPREFIX$"), "r") as file:
pboInfo.pboPrefix = file.readline().strip()
try:
pboInfo.a3symlink = os.path.join("P:",pboInfo.pboPrefix)
except:
pboInfo.a3symlink = None

pboInfo.buildSymlink = os.path.join("build",pboInfo.pboPrefix)

if (name in settings["excludePboSymlinks"]):
pboInfo.a3symlink = None
return pboInfo
return list(map(addInfo,filter(lambda x: os.path.isdir(os.path.join(settings["addonsFolder"], x)), os.listdir(settings["addonsFolder"]))))

def removeSymlink(pathTo):
if pathTo is None:
return []
commands = []
if isJunction(pathTo):
commands.append(f'fsutil reparsepoint delete \"{pathTo}\"')
if os.path.isdir(pathTo):
commands.append(Delete(pathTo))
return commands

def buildSymlink(pathFrom, pathTo):
if pathTo is None:
return []
commands = removeSymlink(pathTo)
if not os.path.isdir(os.path.dirname(pathTo)):
commands.append(Mkdir(os.path.dirname(pathTo)))
commands.append(f'mklink /J "{pathTo}" "{pathFrom}"')
return commands

def buildPbo(settings,env, pbo):
optBinarize = "-binarize=C:\\Windows\\System32\\print.exe" if pbo.name in settings["noBinarize"] else ""
cfgConvertArg = "-cfgconvert=asdfafds" # + a3toolsPath() + "\\CfgConvert\\CfgConvert.exe"
env.Command(pbo.outputPath, allFilesIn(pbo.folder)+["build"],
f'"{addonBuilderPath()}" "{os.path.abspath(pbo.buildSymlink)}" "{os.path.abspath(settings["outputFolder"])}" "-project=build" "-prefix={pbo.pboPrefix}" -include=tools\\buildExtIncludes.txt {optBinarize}')
targetDefinition(pbo.name, f"Build the {pbo.name} pbo.")
return env.Alias(pbo.name, pbo.outputPath)

def downloadNaturaldocs(target, source, env):
url = "https://www.naturaldocs.org/download/natural_docs/2.1.1/Natural_Docs_2.1.1.zip"
zipFilePath = r"buildTools\NaturalDocs.zip"
urllib.request.urlretrieve(url, zipFilePath)
with zipfile.ZipFile(zipFilePath, 'r') as zip_ref:
zip_ref.extractall(r"buildTools")

print(addonBuilderPath())
settings = getSettings()
pbos = getPboInfo(settings)

pboAliases = [buildPbo(settings,env, pbo) for pbo in pbos]

env.Command("buildTools", [], Mkdir("buildTools"))

buildDir = env.Command("build", allFilesIn("include"), [Copy("build", "include")] + sum(map(lambda pbo: buildSymlink(pbo.folder, pbo.buildSymlink),pbos),[]))

env.Command(r"buildTools\Natural Docs", [], [downloadNaturaldocs, Delete(r"buildTools\NaturalDocs.zip")])

allPbos = env.Alias("all", pboAliases)
targetDefinition("all", "Build all pbos.")

buildDocs = env.Command(r"docs\index.html",
[s for s in allFilesIn(settings["addonsFolder"]) if s.endswith(".sqf")] + [r"buildTools\Natural Docs"],
[Mkdir("docs"), r'"buildTools\Natural Docs\NaturalDocs.exe" naturaldocs'])
env.AlwaysBuild(buildDocs)

env.Alias("docs", r"docs\index.html")
targetDefinition("docs", "Generate naturaldocs documentation")
env.Help("\n")

if GetOption('clean'):
env.Execute(sum(map(lambda pbo: removeSymlink(pbo.buildSymlink), pbos),[]))
env.Clean(["build", "all"], r"build")
env.Clean(["buildTools", "all"], r"buildTools")
env.Clean(["docs", "all"], ["docs", r"naturaldocs\Working Data"])

try:
settings = getSettings()
a3dir = arma3Path()
symlinks = env.Alias("symlinks", [], sum(map(lambda pbo: buildSymlink(pbo.folder, pbo.a3symlink), pbos),[]))
env.AlwaysBuild(symlinks)

removeSymlinks = env.Alias("rmsymlinks", [], sum(map(lambda pbo: removeSymlink(pbo.a3symlink), pbos),[]))
env.AlwaysBuild(removeSymlinks)
except Exception as e:
print(e)
print("Error: Couldn't find arma 3, cannot make or remove symlinks")

env.Default("all")
1 change: 1 addition & 0 deletions addons/H60_SFX/$PBOPREFIX$
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
z\vtx\addons\H60_SFX
Loading

0 comments on commit 6626cc4

Please sign in to comment.