The Difference between AI's and NPC's

    alterintel

    moderator
    Joined
    May 24, 2015
    Messages
    869
    Reaction score
    596
    • Likeable
    • Community Content - Bronze 2
    • Legacy Citizen 3
    I apologize for the wall of text. But I believe it's important to set some context here.

    This post by GaeasSon asked for a brainstorm on how NPC's might work. But I think a better question would be what is the difference by NPC's and AI's, and how to incorporate them together into the game. I’m working off of the assumption that people are worried that NPC’s would replace AI’s or vice versa. But how is this any different than the worries of the real world?

    What is the difference between real people and real computers/machines in the real world? There is real life concern that machines are slowly taking jobs away from real people. There are of course jobs in the real world that seem like they will always need a real person. But some jobs in factories for example are better suited to machines. So if we can answer the question: what is the difference between these two jobs maybe we can figure out the difference between NPC’s and AI’s

    So what is the difference between these jobs?

    I think the answer is the ability to improve, creativity, context, precision, and methodicalness. You can’t program creativity into a machine. While machines are prized for their methodicalness, and precision, they can only consider pre-defined variables, make decisions that they are programmed to make, and are just as good at their jobs at day one as they are at day 1000. Where as people can think outside of the box, and use context and creativity when making a decision, they also get better at their jobs over time. It seems there is a pretty clear line between the two. However to do a good job you need both the qualities of a machine and a person. In reality, people need machines to do their jobs, and the jobs that machines perform always need some kind of human interaction. But in all cases people direct machines.

    But how do we apply this to the game? after all in the real world of Java Programming NPC’s are just as programmable as AI’s are. So how do you program the difference between an NPC and a AI? I think the difference should be defined by roles. Even in the game as it is (supposed to be) now, the AI’s can only shoot at targets that people assign.

    I think the answer lies in function(AI) and performance(NPC). Think about performance for a moment. If you the player are good at building turrets, then that turret is going to perform better than a turret build by someone else; and if you were to take manual control of that turret you could potentially impart an even greater performance to said turret. By extension your skills as a shipwright and a pilot greatly affect your success in battle. In effect you are applying an indirect bonus to your turrets and ship.

    AI = how a system functions, and NPC = improved performance.

    AI is required to change default settings of ship systems.
    NPC is required to improve performance of system.

    So maybe every system should have the option for an AI and a NPC. Much like weapons are divided between main, secondary, and tertiary. All ship systems could have a position for an AI, and a NPC. All ship systems could have up 4 parts:
    system modules(peripheral) -> system computer(hardware) -> AI(software) -> NPC(user)

    1) System modules (peripheral), just like cannon barrels or shield capacitors. The more modules the potent the system.
    2) Main computer of the system(hardware), all modules should be linked to a system computer.
    3) AI(software), will be needed to change the default balance settings of ship systems.
    Shields: recharge rate, power usage priority, extend-ability of shields to docked entities, and ships
    Thrust: force, direction, and rotation, power usage priority
    Weapons: power, fire rate, recharge rate (may require a rethink on current weapon builds)
    Jump Drive: recharge rate, power usage, range
    (you get the idea)
    With AI's you could change the settings of a system without having to adjust the modules.​
    4) NPC’s (users)
    Bonuses: get better the more they’re used
    Hand to Hand Combat: raiding parties :)
    Ship Captains. Enables you to command a fleet of ships :)

    I'm curious to hear what you guys think?

    Thank you for your time :)
     
    Last edited:
    Joined
    Jan 31, 2015
    Messages
    1,696
    Reaction score
    1,199
    • Thinking Positive
    • Likeable
    NPC = Non-Player Character. Every entity in game not being controlled by a human - shop-keepers, pirates, any new ones to come - all of these are NPCs by definition.

    AI = Artificial Intelligence. AI is not an entity. AI is a set of code or a program that controls NPCs and directs how they act and respond to things.

    Your entire suggestion is equivalent to discussing how interacting with humans should be different to interacting with human intelligence - these things are not separate entities.

    AI can't shoot at targets or do anything - it's the program that tells NPCs to shoot at targets and do anything else. Without AI, NPCs would just stand in one spot and never do anything.

    When people in-game talk about "fighting AIs" and such, they aren't referring to some other entity than NPCs, it's just different slang for the same thing. NPC is a pre-computer RPG term going way back to pen & paper role playing games, so not everyone uses it or understands it, which may be the source of confusion here.

    Any discussion about how Non-Player Characters might work *IS* a discussion directly about Artificial Intelligence, and vice versa.
     

    alterintel

    moderator
    Joined
    May 24, 2015
    Messages
    869
    Reaction score
    596
    • Likeable
    • Community Content - Bronze 2
    • Legacy Citizen 3
    First of all, thanks for the replay, I truly appreciate it. Your response indicates to me that I didn't explain myself very well.

    The intent of the post was to express an idea of how to incorporate "NPC's" (characters that aren't directly controlled by a player) into a world that already contains "AI's" (the Bobbie AI units that currently control Ships and Turrets).

    It boils down to this...
    Re-purpose the Bobbie AI block so that it's needed on any ship system if you want to change the default settings of that system.
    Non-Player-Characters are used to:
    1) improve various aspects of ship systems with bonuses that improve over time.
    2) assist with raiding and boarding parties. Or perform these activities independently.
    3) commanding ships in your fleet. (the end result: a player can command a fleet of NPC controlled ships)

    I tend to get long winded, and fail to get to the point sometimes :)
     
    Last edited:
    • Like
    Reactions: Andem and MacThule
    Joined
    Dec 3, 2013
    Messages
    552
    Reaction score
    182
    • Legacy Citizen 9
    • Purchased!
    • Community Content - Bronze 1
    I think a small part of what you are trying to get at was discussed here:
    http://starmadedock.net/threads/my-two-cents-on-turret-ai.5599/

    Although it more pertains to turrets, I think it could expand to other ship/station/fleet aspects as well.

    1) This is sorta addressed in the link I gave.
    2) I am pretty sure that one use of the "Daves" is going to be boarding parties
    3) AI Fleets (I assume both bobby and Daves) have been confirmed. This is why we have the "Fleet Control" feature. Though no one knows when this might be implemented.

    I lean toward the idea that Bobby AI should be the "Dumb AI" while actual NPCs should be better at the job, be more customization, and take orders. I also don't think that NPCs should give a bonus to any system that a player cannot interact with to get the same bonus. So no buffing shields or engines or any of that IMO.
     
    Joined
    Jan 31, 2015
    Messages
    1,696
    Reaction score
    1,199
    • Thinking Positive
    • Likeable
    Cool! Good distinction, since NPC astronauts are certainly different than Bobby AI. Sorry to ramble on!