* References for the other NPC thread can be found here: https://empyriononline.com/threads/npcs-poll-and-major-suggestions-proposed-by-the-community.20427/ "This is not an official roadmap, only a tool for the DEVS to use if they want to. The objective is to determine which features are required to achieve true intelligent NPC crews, civilians and employees." NOTICE: I am going to attempt to keep this thread current and change polls on a 2-3 day basis. This is an interesting subject, so please stick to the topic and BRAINSTORM. There is a lot of different ways to develop this, and it should be made to benefit the majority in a way that we all enjoy the features and feel it enriches the player experience. This Opening Post will be evolving to support ideas of mutual interest, to act as a quick reference for people who don't want to read every individual post. Newest Poll: https://empyriononline.com/threads/which-way-should-devs-implement-npc-command-movement.32740/ Overall Goal: Variety of models: Alien, Android, Robot, Human Fully Functional AI Animations Role Functionality (trader, pirate, engineer, pilot, miner, soldier, farmer) AI Interaction: Completing the assigned task Communication Salary - Balanced cost for service Morale - Performance ratio Reputation and Diplomacy Recruiting Process Skill Tree and Attributes Development Process Model Initial 7.3 Addition of Static models Animating Pathfinding and AI Decision-making Ability for player Scripts or Loops, set up routines for npcs with a system of timed tasks with point and click ease(Convenient without needing to change YAML) Ability to create dialogue for use in conversations. (Convenient without needing to change YAML) Implementation Phase Scripted Conversation for each NPC. Easy way to Hire and Lay Off, all within a conversation. Different types of NPCs; Story-based (Hired), Story Based (Not for Hire), Basic NPC (Hired), Basic NPC (Not for Hire) and Enemies. The way it would work is that Story Based NPCs would be recognizable by a name (Bob, Sandra, Larry, etc.) and the basic ones would be named Farmer, Soldier, miner, Engineer, etc. Basic NPCs will be hired to perform a specifictask and will be named differently than the basic NPCs not for Hire. They would be named villager, civilian, official, officer, etc. Morale and salary based content. If you have a ship crew, they have to eat, drink,and receive a pay check. AI interaction – access statistical information and functionality (assigning jobs, logistics, etc). Improvement phase Story Based NPCs, you will have more dialogue choices and be able to receive missions and build rapport. Skill Tree and Attributes: They would rank up or raise basic stats with experience and would have a leveling system. Desertion: Morale will affect the way your party reacts to you or if your soldiers desert you. You risk desertion if you run low on food supplies or credits NPC crew having skills that enhance the ships stats A better way to recruit and manage NPCs without placing them like a block or buying them like meat. Special Updates Reputation/Diplomacy Reputation should directly influence diplomacy; Illegal activity reported gives you a lesser standing and lower influence with friendly NPCs. "Taboo" acts such as enslaving or selling slaves are looked down upon, unless they are Gun Guns. Some NPC Factions, just won't like you and are hard set against your success. Good vs Evil with advantages on both sides. Morally Right vs Morally Wrong Influenced by positive/negative actions, "trust" is gained or loss with NPC or NPC faction. Can be accomplished through performing missions, killing enemies, taking POIs, selling/buying with that particular trader, etc. If you aid a Enemy faction of one your allies, you lose trust. Negotiating and Interacting with Allies. Defense and Peace agreements that can't be violated without penalties. Protecting allied assets give reputation. Functionality NPC functionality split into 2 groups – dynamic and static. Dynamic functionality would include things like: Combat – either patrolling or guarding an area and engaging with hostiles, following the player on raids and assaults, hunting trips, etc Logistics – ‘working’ at constructors to maintain a minimum level of specific components, ammo, etc, or moving items between containers. Farming – plant and gather food and store in a fridge Static functionality would include bonuses or options available by just having the NPC present in your builds, maybe linked to specific devices, such as: Comms officer + radar dish = expanded radar on hud Gunner + turret = more accurate turrets For each engineer present energy efficiency increase by 0.05% Repair crew = restore docked ships to blueprints when used on BAs or slowly repair the ship when used on CVs Science officer = when the tech tree and skill overhaul happens they could help us research new tech Poll Results (Order of importance by Votes): Rapport: Should there be a system added for reputation with NPCs of NPC Factions? If So what? Decision Making - Good vs Evil 5 vote(s) 4.3% Yes we Like you, No we don't like you 44 vote(s) 38.3% Both 50 vote(s) 43.5% No 12 vote(s) 10.4% Other: (leave a response) 4 vote(s) 3.5% What major npc feature should be added first? (Total votes: 531) Escalation of Force for Enemy Npcs, Alien Invasions (41.0%) Hiring and Employing Npcs (Ship Crews) (38.0%) Npc scripting and pathfinding (37.6%) Npc Factions, building Rapport and Diplomacy (33.7%) Npc Fleets, Commanding multiple ships from Flagship (26.3%) Lore & Mission set (24.9%) Taming and Breeding Animals (19.0%) Boss Size Npcs (17.6%) Role playing and adding conversations (15.6%) Creative - Instant Action Combat Mode (5.4%) https://empyriononline.com/threads/npcs-poll-and-major-suggestions-proposed-by-the-community.20427/ What Crew NPC Skill should be primary focus of the Development team? (Total votes: 38) Engineering/Maintenance (45.0%) Combat Companions (40.0%) Goods Transport - Freight Delivery (30.0%) Farmer (25.0%) Piloting (20.0%) Other (Comment Below) (20.0%) Hunter/Gatherer/Miner (5.0%) Auto Mining rig collector (5.0%) https://empyriononline.com/threads/poll-what-crew-npc-skill-should-be-the-primary-focus.31162/ Npc Master thread https://empyriononline.com/threads/npcs-and-everything-you-wanted-to-know-about-them.20427/ NPC Fleets: https://empyriononline.com/threads/npc-fleet-control.95088/ Suggestions https://empyriononline.com/threads/suggestions-for-next-update.8421/
To be honest, i'm not happy about the "roadmap" thing. But anyway here are my thoughts: Regarding AI, in my opinion it would be great if some NPC crewmen could follow you on a planetary surface, support you in personal combat and things like that. But on a ship (speak when they are sitting on their Stations), AI should be minimized, i wouldn't want them to start fireing at something or flying the ship by themselves (that would be horrible imo) (AI decisions would in 90% of all cases result in total chaos an nonsense) Enemy AI should be enhanced, i'm all for that. What i would love to see would be NPC crew having skills that enhance the ships stats. For example: piloting -> some % more turn rate or some % more powerful thrusters Engineering - > faster repair rate (IF we get Repair to blueprint), or faster FTL travel speed Science -> greater view range in space or more information on the starmap about stars. Communications -> more dialor options when negotiating, better prizes when trading Medicine - > faster crew recovery, more health All this only applies to a ship if a NPC sits on a according console. There could be a "create-a-NPC" station/console on a trade station where you could change your NPCs appearance/names/skills.
I would suggest there are are 2 aspects to this thread – the discussion of features and the order/priority for implementation. I've listed some features first as this fleshes out my suggested order for implementation. Recruitment and management ‘Purchasing’ NPCs from a trader is ok with the right terminology (i.e. recruit instead of purchase) but placing straight into our builds outside of creative is creepy. So how about if we could build a ‘crew station’ (using the teleporter model?) at our bases. We could then hire crew through a trading station at our bases or by visiting a trader at a trading outpost. Instead of the npc going into our inventory we ‘retrieve’ them from the crew station and they spawn in our bases. This represents them being hired and then making then teleporting in. If you have multiple bases then they spawn in at whichever crew station you retrieved them from. You could also use the crew station to manage NPCs– dismissing them, returning them to the pool of npcs available at the crew station, move them between builds, etc. Running with this theme, what about making the crew station limited to one per build and only available at bases? If you want crew on your CV then the CV needs to be docked and you can then assign them from the base to a docked ship. AI The way I see it, there are 3 types of AI – Neutral, Enemy, Friend. We’ve had neutral and enemy forever with some basic logic triggers (patrolling, attacking player, etc) so we need some sort of friendly AI equivalent. Let’s not run before we can walk. I would suggest the following as a starter (doesn’t have to be all singing and dancing straight away). Follow player Protect player – engages hostiles when player is in combat Defend area – engages hostiles within a range/LOS of deployed area or patrol area and will return to deployed/ patrol area when hostile is neutralised or has left the area. Casual – removes all other orders and just goes about business In the case of player owned NPCs these can be toggled by the player, or in the case of non-player friendly NPCS (Talon or trading station aliens) they could be fixed or activated through logic. Alongside this there would need to be faction based ownership of NPCs for them to identify freind from foe - one persons ally is another persons enemy. Functionality I see NPC functionality as split into 2 groups – dynamic and static. NPCS could have functionality in just one group or in both. Dynamic functionality would include things like: Combat – either patrolling or guarding an area and engaging with hostiles, following the player on raids and assaults, hunting trips, etc Logistics – ‘working’ at constructors to maintain a minimum level of specific components, ammo, etc, or moving items between containers. Farming – plant and gather food and store in a fridge Static functionality would include bonuses or options available by just having the NPC present in your builds, maybe linked to specific devices, such as: Comms officer + radar dish = expanded radar on hud Gunner + turret = more accurate turrets For each engineer present energy efficiency increase by 0.05% Repair crew = restore docked ships to blueprints when used on BAs or slowly repair the ship when used on CVs Science officer = when the tech tree and skill overhaul happens they could help us research new tech Missions, Scenarios and Interaction Firstly, I don’t want to have long conversations with my security guard. As long as they are stopping spiders from getting into my hanger bay I don’t care to know them. If I am talking to my chief engineer all I want to know is what the fuel situation is and do I have enough power. I don’t care that they are worried that their partner is cheating on them with the Science Officer and I don’t want to spy on them and report back. This is not Elder Scrolls or Witcher. My point here is to not fill these NPCs with unnecessary dialogue. I want to ‘access’ my NPCs for statistical information and give commands. I am not making friends. I am paying for a service. The dialogue can be fleshed out to be personal/friendly – “Hello Commander, how can I help”, etc For missions and scenarios, being able to select options when interacting – for example “Yes”, “No”, “don’t care” – with some simple dialogue trees would be hugely popular with the community and custom scenarios and add yet another depth to these. My priority for implementation: A friendly NPC AI in line with the basic neutral and enemy AI we already have. Don’t try and fix the AI just yet as this needs to be done for everything - just get the groundwork in first and get people on board with the idea. Faction based NPC functionality - being able to identify that this NPC is part of this faction/alignment and is friendly towards this faction and aggressive towards this faction. This would lead to a blurring of the lines between AI which would hopefully lead to player alignment with NPCs - e.g. Zirax, Talon and Trading Aliens (seriously, we need name for these dudes - I'm still pushing for Nexian ) NPC functionality – let’s start with some static functionality so we get a bonus or effect just by having them. This would move them out of the decoration category and make them more appealing to all players. More complex functionality can follow later. Better pathfinding and combat AI for all NPC. This is the groundwork for improving all NPC AI. A better way to recruit and manage NPCs without placing them like a block or buying them like meat. AI interaction – access statistical information and functionality (assigning jobs, logistics, etc). This would be the start of the introduction of more complex functionality.
No slaves. That subject matter should not be in the game PERIOD. The rest are pretty damn good ideas though. Not sure how implementation would go without making hire-able npc's too powerful however. That doesn't mean they can't be done right.
I'm very skeptical about dynamic NPC's because they can cause a lot of issues and therefore frustrastion, players would try to take them inside POI's and get them stuck, or they'd follow you when you're mining and get stuck in the hole, players could also "abandon" their NPC's all over the map and this can be an issue in MP. Good idea, I'm also not a big fan of NPC's in inventory, but I would take it further, what if you needed a dedicated block for evey NPC ? whether it is a bed or a stasis chamber, this way you'd need to build crew quarters and will prevent players from having too many NPC's. I would rather go for an NPC management tab in the PDA (to make the PDA useful for once) Unnecessary in my opinion. One a more global aspect I strongly recommend to keep all this out of the starting planets, finding new NPC factions should be a reward for surviving in early game and leaving the starting planets\solar system. It's just a game man.
Since the first civilian NPCs made it into the game I've been nagging about having them as crew just to liven things up a bit in SP and I would love to see them evolve into full fledged mission givers and traders even some kind of actors in a possible dynamic economy yet I have some doubts about having them as followers. Bethesda has it's main focus in RPG games and have produced some of the most successful games in the genre yet even they struggle to implement followers that don't bug out every 5 or so minutes even in hand made maps with fully scripted events.
Because? It's a liberal universe out there? Should 99% of sci-fi movies be remade then? Should pirates be in the game? They're most likely the ones selling people to slavers... PC IS ******... Then I suppose You'll love to fight the slavers, and lead the slaves rebellion...
Limited NPC interaction is all I want. As Kaesar pointed out above, even companies with a long history of including NPCs have trouble creating ones that don't occasionally look awful, do really dumb things or become annoying after a couple of playthroughs. If the NPCs trade, decorate workstations and hallways, and have some limited dialog using text boxes, that will be enough without being intrusive. "My family was kidnapped by the Zirax. Will you help me rescue them?" or "I will give you an Epic Chainsaw if you recover the Futuristic Bauble for me," is fun the first time and that's about it.
I could imagine that crew management could be doen via a similar UI like the control panel. Personally i wouldn't want to seen crewmen NPCs following me around a planet or partolling an area. But what about droids? maybe someday we could build them ourselves? This will definitely take MUCH dev time and will 99% not be perfect. Nothing against the devs, but other companies (with 100s of ppl) tried something similar and didn't get it right. Maybe this could be handled via a Crew management UI (simply assign the crewman you want to the task he/she should do, no need to actually have the NPC walk there). I'd rather see some dedicated Consoles or bridge stations where we could choose which NPC to put there (in contrast of having every NPC add some bonus to the CV or BA). So choosing the right one could add more depth to the game imo. But this requires NPCs to have a set of skills that would add to the ships stats. (Like Engineering for example)
Actually the ****** is human beings that believe that there are no taboo subjects... you know. Trolls. Done on the subject with this. You like stuff like that? Keep the fantasy in your head. Do not try to afflict that **** on anyone else in the name of realism.
Actually the ****** are people who believe there are taboo subjects... you know. Authoritarians. When You start having taboo subjects, any subject can become taboo... I'm sure the moment I'm the one ruling what's taboo, and not You, You'll hate it in the guts... I don't wanna listen about realism from people living in a selfmade fantasy...
And let's hope they'll be aware of player's actions, for exemple if you start stealing stuff in their containers or dismantling their structures there should be consequences, this is the kind of "intelligent" behaviour we expect from AI.
nexus_absolute drools Homer Simpson style over the excellent idea That's good too. Not fussed how it is managed as long as it is manageable Again, as long as there are benefits for having NPCs, I'm not personally worried (yet) about how this is done. I would rather have classes of NPCs (engineering, command, fighter, etc) that can serve the functions specific to their class, so the idea of having consoles that give a bonuses or add functionality is when an NPC of the right class is assigned adds much more immersion. For example: Engineering crew could be assigned to: Efficiency console (better energy output) Repair console (auto repair structure) logistics console etc Command crew could be assigned to: Radar console Remote control player built AI drone or SV Pilot a CV etc So we have to build the right thing and hire the right crew.
PC has made modern society into a bunch of mindless, whining, wimps and it's not like anybody will get offended by a game with slave npcs. It doesn't always have to be historical. Star Wars KOTOR had it and you could have compassion on them or kill them. I am sure nobody will leave Empyrion thinking they should enslave their neighbors and make them work the back 90. WE ARE ALL AWARE OF WORLD HISTORY AND THIS ISN'T POLITICAL. By this rate GTA won't exist in the next couple years! Of course what do I know about the real world. I've only spent a few years of my life in Combat Zones and 3rd world countries where Islamic Radicals are protesting and constantly firing at me, mortaring me and firing Rockets into the compound I sleep in bc the just want jobs, ........equality........oh nvm. Welcome to the real world where terrorists imprison, enslave and Rape little girls and we get to go **** them up,...(the Terrorists) The cool thing about technology is I get to keep in touch while I'm living in this $**t hole country
Some very good ideas there! As you said, NPCs could have several different classes or being just trained in one or more fields (i think that would make things easier, but i could be wrong). Each skill could have a magintude of 1 - 10 (to keep things simple). The higher the skill the more effective the accoding console. For example a Engineering console that increases the ships thruster output could add up to 10% thruster power if a fully trained NPC (engineering skill: 10) is assigned to it. I was thinking about this matter for a few days now, and i'm not so sure how NPCs should gain Experience in the first place. Maybe the Player character could spend some XP points to NPCs, maybe only a certain amount per day to prevent creating whole armies out of thin air.