-
Notifications
You must be signed in to change notification settings - Fork 0
Addon Structure
LengthenedGradient edited this page Apr 9, 2024
·
20 revisions
We suggest you familiarize yourself with the structure of the addon here, as it will help you in the guides.
ACF-3\

-
luacontains the main logic (code) of the addon. (We will focus on this). -
materials,models,particles,soundscontains the resources the addon uses (e.g. wav/mp3 files for sounds, vtf files for component models, etc.) - You shouldn't need to modify
.githuband the rest of the files at this level.
ACF-3\lua\

-
acfcontains much of the logic that the addon uses overall (e.g. ballistics/damage) -
effectscontains the code for many of the particles ACF uses. -
entitiescontains the code for ACF's entities. -
vguicontains code for ACF's Temporal Panels. These are used for generating the ACF menu. -
weaponscontains code for ACF's in game tools. -
testscontains automated tests that can be ran to verify ACF functions as intended. -
starfallcontains the definitions of various starfall functions ACF provides. -
autorun,includescontain code used to load the addon. You shouldn't need to modify this.
ACF-3\lua\acf\

-
ballisticscontains code relevant to simulating the trajectory of projectiles as well as their impacts. -
compatibilitycontains code to aid in backwards compatibility (making sure old builds still work). -
contraptioncontains helper functions for dealing with contraptions -
corecontains the definitions of ACF's class system, which is used for defining things like ammo types, guidance types etc. -
damagecontains code relevant to handling how damage should be applied to entities -
entitiescontains the class definitions for various entities (e.g. gearbox types for the gearbox entity) -
menucontains helper functions for dealing with the menu -
persisted_varscontains code about variables that should be saved between servers/server restarts
Just an extra bit, but ACF-3\lua\entities\gmod_wire_expression2 contains the definitions of various e2 functions ACF provides.