Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New modding article: creature AI #7

Open
kernelmethod opened this issue Jun 28, 2024 · 3 comments
Open

New modding article: creature AI #7

kernelmethod opened this issue Jun 28, 2024 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@kernelmethod
Copy link
Contributor

kernelmethod commented Jun 28, 2024

The wiki should have an article on creature AI, especially now that IOpinion has been added to the game.

Some things that the article should discuss:

@kernelmethod kernelmethod added the enhancement New feature or request label Jun 28, 2024
@kernelmethod kernelmethod added this to the Modding section cleanup milestone Jun 28, 2024
@kernelmethod
Copy link
Contributor Author

Some suggestions from @librarianmage:

  • behavior controllable with just XML
    • Brain part parameters
    • AI* parts that already exist
  • behavior controllable with already implemented C# code
    • GoalHandler overview (less interface, more “how it functions” (e.g. pushing goals))
    • already existing GoalHandlers
    • hooking into idle behaviors n such
  • Implementing bespoke GoalHandlers

@kernelmethod
Copy link
Contributor Author

Relevant AI parts:

@kernelmethod ➜ Qud_Code git:(main) ✗ rg 'public class AI.*Part' disassembly -l
disassembly/XRL/World/Parts/AIJuker.cs
disassembly/XRL/World/Parts/AIPilgrim.cs
disassembly/XRL/World/Parts/AIWanderingJuggernaut.cs
disassembly/XRL/World/Parts/AISelfPreservation.cs
disassembly/XRL/World/Parts/AIWiring.cs
disassembly/XRL/World/Parts/AIFlocks.cs
disassembly/XRL/World/Parts/AIUrnDuster.cs
disassembly/XRL/World/Parts/AIMarkOfDeathGuardian.cs
disassembly/XRL/World/Parts/AIShopper.cs
disassembly/XRL/World/Parts/AIShoreLounging.cs
disassembly/XRL/World/Parts/AIShootAndScoot.cs
disassembly/XRL/World/Parts/AIKillStuckStuff.cs
disassembly/XRL/World/Parts/AISuppressIndependentBehavior.cs
disassembly/XRL/World/Parts/AIThrowAndScoot.cs
disassembly/XRL/World/Parts/AIHealingTonicUse.cs
disassembly/XRL/World/Parts/AIShootCooldown.cs
disassembly/XRL/World/Parts/AIPassenger.cs
disassembly/XRL/World/Parts/AISitting.cs
disassembly/XRL/World/Parts/AIStopShootingImmuneTargets.cs
disassembly/XRL/World/Parts/AIVehiclePilot.cs
disassembly/XRL/World/Parts/AIReplica.cs
disassembly/XRL/World/Parts/AITryKeepDistance.cs
disassembly/XRL/World/Parts/AITonicUse.cs
disassembly/XRL/World/Parts/AIWallWalker.cs
disassembly/XRL/World/Parts/AIWallPhaser.cs
disassembly/XRL/World/Parts/AITryKeepSteadyDistance.cs
disassembly/XRL/World/Parts/AISeekHealingPool.cs
disassembly/XRL/World/Parts/AICryptHelpBroadcaster.cs

@librarianmage
Copy link
Member

Probably good to include parts that influence behavior at a distance in the first section as well (Pettable, Chair, etc)

@kernelmethod kernelmethod self-assigned this Jul 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants