Jump to content

  • Log In with Google      Sign In   
  • Create Account


We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.

Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


Member Since 03 Nov 2009
Offline Last Active Dec 22 2014 08:39 PM

#5193046 Taking A Group of AI Followers Indoors

Posted by jefferytitan on 15 November 2014 - 07:25 PM

This is perhaps a bit over the top, but there's a nice talk on how Naughty Dog made Ellie as non-annoying as possible in The Last of Us:



Dealing with large numbers of followers... it's a tough problem unless you disable collisions or make the collision volumes tiny. Perhaps in confined spaces have a minimum follow distance. If the player goes too far inside the minimum follow distance, the whole column of followers back up. I think not breaking stealth is quite important, maybe they try to stay in cover if you're sneaking, and the enemies ignore them unless they do anything too blatant.

#5193014 SSAO very dark

Posted by jefferytitan on 15 November 2014 - 02:23 PM

I would say that the SSAO is working somewhat correctly given the reconstructed normal map you showed us. The jagged lines on the cloth perfectly match the jagged lines in the normal map. If you're reconstructing the normals from the depth map I guess you'd get discontinuities at the edges of the polys. Have you got any alternative ways of getting normals?

#5191415 Distinguishing monsters in a psychological landscape.

Posted by jefferytitan on 05 November 2014 - 03:21 PM

For this post I'll refer to the psychological enemies as "fake enemies". I think that the fake enemies would certainly stand out as different types of enemies at some point. I have two questions which depend on your goals:

  1. Should the player be able to tell the difference immediately, e.g. if a real and fake enemy stand next to each other?
  2. Is it important that the player figures out quickly that the fake enemies are psychological as opposed to literal monsters/supernatural beings? I know that's not your goal, but some players may initially think this because so many games have such things.

You could also use behavioural differences such as:

  • Limited emotional/behavioural range.
  • Failing to avoid environmental hazards.
  • Lack of pain response.
  • Real enemies don't see fake enemies, and may even walk through them.
  • Fake enemies may appear in areas they couldn't possibly be, e.g. from a previously viewed dead-end.

You could also do visual stuff such as lacking a shadow, bleeding too much/too little, etc.

#5189150 How Can I Make This Scene Look Better

Posted by jefferytitan on 25 October 2014 - 05:49 PM

I'm not an expert, but here's some thoughts (some reflecting what others have said)

  • You have a very limited number of textures, and they're fairly plain (and flat). This gives you no opportunity to show off normal maps, parallax occlusion, etc. Now partly that's just the choice of location, so maybe not much you can do. But as others said, grunging it up can help. The scenario matters, obviously a fancy up-scale hospital is not going to have cracks, mold, chunks of wallpaper missing, etc like an abandoned horror hospital would.
  • Mess, even little things like one of the ceiling tiles not sitting right. The papers are a good start, but it could be taken further. Think about what spaces are like that people actually live in. Gone Home is a good example... crap everywhere, but in a way that makes sense. You don't have to go that far though. ;)
  • Ambient occlusion. The corners of your hallway really need to be darker, for example. It adds a little mystery and foreboding.
  • Make use of lighting more, particularly light sources, if it's horror swinging or flickering lights add a certain something.
  • Motion, such as the lights I mentioned, or trees blowing in the wind out the window. You need a sense that things can happen that aren't triggered by the player (even if this is totally false).
  • I like bloom and god rays, not the biggest fan of lense flare myself. But it's a choice I guess.
  • Leading the eye. Something I have read about but know almost nothing about so forgive any inaccuracy. Things designed to make the player focus on a particular spot or direction. For example highlighting an area by use of lighting/shadow, a trail of footprints, blood smears and wreckage going around a corner. Or use geometric proportions or shapes to suggest that a particular thing is the focus or that something is missing from the picture and should be found.

#5188391 Techniques for creating underground caverns and tunnels

Posted by jefferytitan on 21 October 2014 - 02:47 PM

I do like noise-based caves a lot, but I judged it as a level of complexity higher than the OP was aiming for.


Having said that, if we are talking about noise-based caves, traditionally you end up with some sort of density function. If you're cool with some parts being pre-generated rather than everything on-the-fly, I like the idea of making some caves look mined/explored by eroding the less dense rocks in a purposeful way, e.g. to get to particular deposits or to join caves together. You could pick targets and use a form of A* to do the mining. You could even do cave-ins based on tunnels and rock strength to add flavour.

#5188193 Extracting surface reflectance or lightning intensity from a single image.

Posted by jefferytitan on 20 October 2014 - 03:04 PM

So this may not be immediately useful, but just my thoughts based on some image processing I've been working on.


Single photo is a difficult case. There are arbitrarily many edge cases where your reconstruction could be wrong. An extreme example is that you cannot tell from a single photo the difference between rocky ground and a flat photo of that exact same rocky ground. The human eye can screw up just as easily as a computer vision algorithm - the difference is our experience allows us to apply appropriate preconceptions in most cases. For example the knowledge that dirt gets darker when it's wet, so darker != deeper. And the knowledge that some of the substances are the same rock just broken into smaller pieces. And that rock breaks with sharp edges. You see where I'm going. ;)


I think that in general people just do what you've done and then apply some manual tricks, e.g. maybe fix edges themselves, maybe apply a sharpen filter etc. But if you want to get a good result another way, here are some suggestions:

  • Use the multi-image approach. I played with VisualSFM to reconstruct 3D from photos, which is very cool but to be honest is a bit of a pain. It works okay if you do everything right and have good input photos. It works best if surfaces are non-reflective and have good colour variation, it may be worth increasing the contrast before running it. The point cloud can be a bit patchy but will give you a fair idea of the depths to help whatever other algorithm you're using.
  • Manually select some example areas that have different material types. Construct some statistical models of the colour values in each material type. Then you can have some idea when you're moving from one material to another (and therefore the edge should be sharp). Also you would know that if pixels became darker than statistically likely for that material it's probably due to depth.
  • Manually select chunks of particular materials, maybe with some sort of lasso tool. Would work fine for the big chunks, impractically painful for the small stones. Use that as a guide for whether edges should be sharp. 

#5188073 Slow performance on A*

Posted by jefferytitan on 19 October 2014 - 10:55 PM

Okay, that makes more sense. Here's some suggestions:

  • I believe that you're trying to join each room with a selection of other random rooms. The problem is that random rooms may be very far away, and the further the distance the larger the area A* will explore. Maybe use a random selection of rooms that are nearby the current room. You could do this a variety of ways, but even the simple option of "Pick X rooms, then filter to the Y closest" may work better.
  • To avoid running along the walls of other rooms, you need some impassable obstacles. Pick X random exit points for each room, then make all the other cells directly adjacent to each room impassable.
  • Are you using an existing implementation of A*? There are many variants which run faster in certain circumstances. See some examples.

#5187958 Fitness function for self modifying programming

Posted by jefferytitan on 19 October 2014 - 03:55 AM

I would suggest a fitness function that is based on how sorted it is vs an estimate of the big Oh complexity.


I realise that there are many potential metrics for how sorted something is, and some may not be ideal in all conditions. A few possibilities are:

  • RMS of distance of elements from their correct sorted position.
  • Proportion of elements which moved in the correct direction vs the wrong direction.
  • An estimate of how many swaps would be required to finish sorting.

The big Oh complexity could be:

  • Based on the time to execute.
  • Based on the number of instructions actually executed running it on a large input.
  • A comparison of the number of instructions executed for different sized inputs.
  • Based on some static analysis of the algorithm.

#5187797 Ideas for character that doesn't exist

Posted by jefferytitan on 18 October 2014 - 01:43 AM

If your main character has multiple personalities or hallucinations, it would make sense if the other characters were somehow related to his psyche. For example an aspect of his personality, such as an obsessive compulsive cleaner (and therefore the job janitor), a lazy janitor (the underachieving part of him), a representation of his father, etc. The goals of the character could match those aspects, for example the obsessive compulsive janitor could be very unforgiving and want to punish him for things he's guilty about, the lazy janitor could be very devious and taking advantage of his flaws to hold him back, the father janitor could be tough but secretly trying to help him out. Another possibility is that other characters would represent people that they have strong feelings about in their life, or represent a sequence of events that occurred on the day that his wife was murdered.


If you don't mind the suggestion, it sounds like you have room for a fair number of characters, so try to include a bit of diversity to make your game stand out. This is a genre that could go straight to stereotype. Even in a men's prison (which seems like the ideal place for male-only gang-bangers) there are options:

  • Inmates come from all walks of life and races. They could be there for the most serious crime or the most minor.
  • Lawyers can be any race/gender.
  • Visitors can be any race/gender/profession.
  • Guards may be any race and have a variety of pasts.
  • Depending upon regulations there may also be diversity in people who work in medical/management/office work/training programs/etc.

#5184457 Using machine learning to predict the collapse & stabilization of complex...

Posted by jefferytitan on 01 October 2014 - 08:19 PM

My guess is that the typical SO reader has no idea what you're trying to do. For example the below is completely meaningless to me:


I've been working on a fuzzy logic SDK for the past 3 months now, and its come to the point where I need to start heavily optimizing the engine.

As with most "utility" or "needs" based AI systems, my code works by placing various advertisements around the world, comparing said advertisements against the attributes of various agents, and "scoring" the advertisement [on a per agent basis] accordingly.

It's not clear to me which terms you're using as AI terms and which terms are problem domain specific. What does placing advertisements around the world have to do with a fuzzy logic SDK?

Perhaps if we understood the problem domain better, the solution could avoid machine-learning to detect expected crash conditions.

#5184412 Balance (early game difficulty) [strategy]

Posted by jefferytitan on 01 October 2014 - 02:48 PM

The way I see it, balancing the early game is easy because you can control the initial setup completely. So as I understand it, your question is what should that initial setup be?


So yeah, I guess a lot of arbitrary circumstances are possible, for example:

  • There's something unusual about the area of space that the player starts in which disables the aliens advanced drives but allows the humans' slow crappy drive.
  • The aliens overlooked the area because it didn't seem valuable and/or it isn't valuable for their technology tree.
  • The aliens are busy fighting each other and don't notice you initially.
  • The aliens are busy dealing with some large disaster, e.g. a supernova, black hole, etc.

#5184016 Making a shot harder to pull off.

Posted by jefferytitan on 30 September 2014 - 02:53 AM

For a couple reasons.

1. It means an enemy fatally wounded can still attack you, and possibly kill you.
2. It means you can do the same while fatally wounded. This is especially important in co-op, but even in singleplayer you might take some satisfaction in taking them with you even if it doesn't change your loss.
3. There's an ENORMOUS emotional difference between a sudden, painless, instantaneous death and watching yourself die over the course of a minute, long enough to see it coming and scramble to stop it, but not long enough to actually have any hope of surviving. It's the emotional impact of it that matters. I believe I said something to that effect in my last post.


Okay, I respect your reasons. Number 1 will definitely affect gameplay. The uncertainty of whether they're really done, the technical difficulty as the enemy slumps behind props and is much harder to target, the tension as you approach the body for a better shot, I get it. Numbers 2 and 3 will apply to some players but not others. It depends on how much the player invests into mechanics vs story vs role-playing vs social, etc. If you're aiming for just the niche that are into that, cool. If your aim is more general it may negatively affect some players.


They're just the two I chose as examples. There's other weapons, even just in firearms there's shotguns, submachine guns, carbines, light machine guns, and if you manage to get one somehow a full-fledged heavy machine gun is *technically* usable. Outside of firearms, there's melee and hand to hand weapons, unarmed combat if you are desperate, explosives, primitive ranged weapons such as bows and crossbows, a few throwing weapons here and there but they suck, and due to the setting the occasional crude energy weapon.


I was more thinking along the lines of shotgun or improvised weapons when I spoke of bones deflecting the projectiles. What sort of distribution of weapons would be available, e.g. military vs household vs improvised?


Alright, fair enough. I guess the fourth time I had to write the same post, I mean the exact same one because of site issues, I both lost my patience and lost track of when I said what. Although my own statements before did contradict the idea of this being a war game QUITE strongly, I did never actually say it outright. I shouldn't have to to keep people from assuming it is one, but whatever.


I completely feel your pain, it has happened to me numerous times on numerous websites. These days I treat any comment box that I write more than a paragraph in as unreliable. My suggestion is to occasionally copy/paste to something external like Notepad to prevent disaster. I'm doing it right now. And please do your best to keep the temper in check, even though it can be trying.


The full quote:

"(The war in this game looms over the horizon like a great, horrible beast, growling and bearing its teeth at the helpless little civilian it'll one day rip apart, no matter how they run, how they hide or how they fight. It's like the monster in a horror game, except there's no way to escape alive because this game doesn't stop until you're dead, and when you die it's over forever and you lose everything. The game's ending screen even tells them nobody will ever remember they existed, and the savages in uniform had forgotten all about killing them by the next day.)"


Sorry, low blow on my part, I was just highlighting the use of the word war rather than making any relevant point.

#5183952 Making a shot harder to pull off.

Posted by jefferytitan on 29 September 2014 - 09:59 PM

Try to forgive a simple slip of the tongue, I didn't literally mean instant death. I just meant that thing you're talking about which sums up to near-certain death which is usually very rapid but occasionally instant. But that's a bit long to type often. Also note that in this thread some people may not distinguish between instant and rapid death on the basis that many gamers and/or developers would consider a heart shot a guaranteed loss condition, and wouldn't differentiate greatly the length of time death takes. There are exceptions, for example if survival is not the end goal or if there is content between fatal wounding and death. I understand that you consider it significantly different, but I'm not sure why.


Your comment re the weapons... well, fair enough. You didn't mention what selection of weapons was available, so I didn't know that pistol and rifle were the main options.


Also please keep in mind that not everybody has followed all your threads, and therefore some people commenting here know next to nothing about your game. You may say:





However you never said before in the thread that it's not a war game, so cut people a little slack. If anything, statements like the below would only confuse people who haven't read your previous threads:



The war in this game looms over the horizon like a great, horrible beast


#5183917 Gameplay For Matching Story / Avatar-Psyche

Posted by jefferytitan on 29 September 2014 - 05:45 PM

One thing that occurred to me is making it a little tactical. For example the curse makes the avatar focus on certain objects or situations, e.g. if the avatar gets too close too a weapon it will pick it up and start swinging. Danger objects could be highlighted (by colour, depth of field, etc), the controls could be weighted to make the avatar turn slightly towards those objects, etc. So as well as the physiological effects and cancelling actions, you need to go through a dangerous environment while limiting opportunities to cause harm.

#5183889 Planetary defences, ground forces, fleets

Posted by jefferytitan on 29 September 2014 - 03:27 PM

Just notes about a couple of your types:

  • Ground forces - valuable because bombardment can only destroy, not control. For example you could destroy an enemy by carpet bombing the planet, but then you have destroyed all useful assets on the planet.
  • Planetary defenses - valuable because they have access to planetary resources, e.g. unlimited ammo and power. High fire and damage rate compared to ships.