Neat little emergant gameplay example

So we had a problem starting to evolve with the Archers in Maker’s tale: Archers up high are next to invincible due to their height and range advantage. So using only a couple of archers one could defend a castle and destroy countless advancing enemy units almost indefinatly :confused: … After adding simple game rules to the engine running Maker’s Tale, the engine found a solution!



I added a line of sight based situational awareness to the unit’s AI so, they can’t see or shoot through walls and floors and things;

  • When that is combined with the attack range of the unit;
  • And a system for displaying “attackable tiles” as red hexes …



    http://i.imgur.com/XEBAw.jpg

    (for those unfamiliar with Maker’s Tale, this is a top down view of a small fort/castle, the archer is just below the middle of screen)



    … It turns out high Archers can’t shoot straight down at the tiles infront of them because the floor/battlements gets in the way, so there is a blind spot the enemy can exploit… problem solved!



    Now to figure out a way to get the other shed load of problems to solve themselves :wink:
5 Likes

I love it when a plan comes together :slight_smile: It’s nice when a problem can be solved in such an intuitive fashion that just feels “natural”.

with jME games write themselves! :slight_smile:

1 Like
@zarch said:
I love it when a plan comes together

i really enjoy thetoucher's work, but that line was my favorite part of this thread. my brain actually switched and started to read it in (the original) Hannibal's voice partway. mind blown.

anyhow, it's a cool solution. i did the same type of thing to keep my vanilla chasecam from passing through my geometry so the player wouldn't be able to peer through the level and see an opponent coming: when the camera can't 'see' the character, it rapidly zooms itself in until it can. i wrestled with how i would achieve the same effect but using bullet, etc. but a simple, well-placed and well-distanced raycast + a dynamic zoom did the trick. time to implement = less than 1 beer. forgivable bugs = yes :)

great work though, as usual.

Nice!



I enjoy following The Makers Tale and everything else you share with the community @thetoucher!



Great work!