Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Nickvr628

#1
Like the title says, currently if an animal eats a plant, that plant is destroyed. This means that if you have lots of hungry animals on the map (I'm looking at you elephant herds) they will decimate the plant life and nothing will ever grow.

I suggest that when an animal consumes a plant, it reduces the growth level by a certain amount. Lets say by 60%. That way, when an elephant munches on an agave plant it is not gone forever. It just has to spend several days regrowing until it can produce food again. This would make the food sources sustainable, instead of the map turning into a barren wasteland after a herd of elephants wander through.

TL;DR: When an animal consumes a plant, it should reduce the growth level by a certain amount, instead of destroying the plant.
#2
General Discussion / Planting Forests
April 09, 2016, 10:26:23 AM
So normally I would scoff at the idea of planting trees with the growing zones, as they take too long to grow and I can just cut trees that grow in the wild. But in my current map in the arid shrublands, all the trees died and the rest of the plants were eaten by herds of elephants. I realized I would not be able to have any wood for my colony, so I made a massive growing zone for trees outside my walls. It is still growing, and will probably take about 30 more days to finish, but I will have a TON of wood once I harvest it all.

Anyone else plant forests to boost your wood production? I think it will be a good strategy for endgame, and I can sell it for silver.
#3
Throw everyone into cryosleep pods and wait for summer. Just make sure you leave the turrets on automatic!
#4
Hello and this will be a long post with many images. I was bored waiting for alpha 8 to come out so I fooled around with the debug menu and came up with this. I built a CQB map for rimworld and spawned in some people to fight in them. It was neat making different compositions of forces and seeing it play out. Without being able to control the fighters it really shows how group-level AI works, and how it does not...


My first arena map! It is very similar to a standard paintball map, except these are very lethal paintballs.

So if anyone does not know, you can spawn in raiders, tribal-people, mercenaries, etc from the "spawn pawn" menu of the debug menu, so I did that and this is what happened! The two groups remained mostly stationary with the exception of the grenadiers, who had to get up close.


The first battle.


Red team wins!

So I noted a few of the AI's strategies. They kept grouped together, and preferred to stay in cover and enact trench warfare rather than attempt flank the enemy. They also shot the closest enemy to them which meant that grenadiers who had to get in close were the first to die.

What I thought was interesting about this was that normally the AI fights the player, and is designed to respond to the player's actions, with no player to respond to except the the other group of enemies, the battle was mostly trench warfare with non moving units. The group level AI seems to overrule individual unit AI, meaning that even though that one unit has a clear shot against an enemy, it will instead concentrate it's fire on the targets the group AI chooses.

I decided to test my newfound theories with another map, this time, a mock base with enemies coming from all sides! This is what I got:


My next map, a base being assaulted by mectoids.

This is where the problems start with the AI. It is not designed to work in a close quarters, and enemies usually prefer open fights. This is why your colonists will often always win in close quarters battles, you can respond to the quickly changing situations the AI cannot. With the AI fighting itself, it had a hard time managing all the units. Often the defenders would run right past the mechs, and vice versa. I will show you a few screenshots so you can see what I mean.



As you can see here, the Mechtoids have had their group level AI (compared to individual decision making) decide that it would be best to group up and fight the defenders as a large group, instead of attacking from all sides and boxing them in. The latter would have been a much better option, however why did they all decide to group up? This stems from code that was written to keep units together, the same code that makes enemies assaulting your base stick together when approaching.

I have hypothesized that their are two forces controlling units in Rimworld. Group AI, and Individual AI. Group AI is performed when the group of pirates decide to assault your base, everyone in the group stops what they are doing and responds to the command. Individual AI is when a singular unit decides to shoot at an enemy, or move in for a flanking shot. The real neat thing is this, group AI can overrule individual AI to perform commands. That was why the mechtoids were running right by the defenders to meet up with their group, the group AI said, "lets all stick together now", and they all formed up, regardless of what the individual scythers were doing. If the individual AI was in control, the mechtoids would have fired at the first seen enemy and functioned in the small four man teams I positioned them in. Look at this picture.



You see how even though some of the people can see the attackers, but they don't advance to get them? The "stick together" command is functioning, and makes the defenders clump up in the very same way they do when they are preparing to assault your base. They have no directive to go after a hostile group which attacked them. There is no "search and destroy" function that makes them seek out enemies near them. Look at the next image.



In this image, it is hard to believe that that is the same battle as the previous pictures. That is because when the mechtoids all grouped up in the top right half, no one from the left side of the base followed them. The individual AI will only chase enemies it has line of sight on. This is a problem. The AI needs to be able to go to the last known location of an enemy, check to see if it has line of sight, and go to last known position, until it gives up or it engages the hostile. This could also be implemented as a function where when a unit engages an enemy, it sends out a call to friendly units to come to where the fight is happening. If this was the case, then the extra 7 units that were standing around would have been available to fight the mechtoids, which would have turned the tide of the battle.



In this picture there is only one scyther left. It has killed the remaining 4 defenders that were in the area. And it just sat there. It did not sweep the area to check to see if there are any defenders left, and the defenders did not move around at all to check the area for remaining attackers. They just sat there in the main room. I fast forwarded for a long time and nothing changed. A good thing was that when the defenders decided to eat, they actually went off to find tables to eat at, which means they ARE capable of searching for specific objects, in this case are tables. If they can do this then surely they can search for enemy units.

What I am not asking for is magical radar-guided raiders that immediately know where all your colonists are, but I am asking for some changes to how the group AI decision making works. It would be much more effective if the group AI would act more as a commander, sending out scouts and telling men to sweep areas for hostile, rather than a "everyone shoot this guy, everyone meet up here" function. If this happened, then battles will be so much more interesting with small fire teams and scouting parties and squad v squad tactics. Could you imagine, a small group of elite raiders with Navy Seal-ish tactics coming to raid you? That would be AWESOME! 

This was not meant to hate on the current AI, but to show room for improvement in the code system. If anyone wants to tell me how wrong I am, or if anyone actually knows how the actual AI and code works (because I sure as heck don't) please tell me how I am right or wrong! If you want a tutorial on how to set this up with different factions fighting each other, say so and I will make one.

More pictures of my arena battles are posted below.


Mechanoid verses Molotovs.


A slightly more crazy fight.


An overview of my base defense map.


My generic unit verses wild animals map. Swarms of mega-scarabs are quite lethal, I found.


My miniature melee map. It is supposed to be a wrestling ring.

If you took the time to read all this, great job! If you skipped to the bottom and are reading this first, then start back from the beginning.

P.S. Tynan Sylvester, if you read this, please comment on this about how I am right or wrong. I really want to hear your thoughts on my testing if you have not done something like this before to test the combat AI. 
#5
General Discussion / Mec Troopers!
October 02, 2014, 08:32:55 AM
Now, if any of you play XCOM, you immediately know what I am talking about. A Mec Trooper is a soldier who is cybernetically modified to have robotic arms and legs, and modified vision and hearing. The Soldiers who volunteer for this program sacrifice much, but they gain a substantial increase in combat effectiveness. Also, they look awesome.



If you gave your soldier two cybernetic eyes, robotic legs, a claw hand on one side and a syther sword on the other, and maybe some other special organs, then you could have a supersoldier. Has anyone done this yet?