OpenXcom Forum

OpenXcom => Fan-Stuff => Topic started by: new_civilian on November 01, 2014, 02:49:20 pm

Title: How the...
Post by: new_civilian on November 01, 2014, 02:49:20 pm
 ;D

How the hell did it get through the door?  :o
Title: Re: How the...
Post by: pkrcel on November 07, 2014, 03:42:13 pm
Plama shots  ;D

Title: Re: How the...
Post by: Warboy1982 on November 07, 2014, 03:52:05 pm
CREEEEEEED!!! (https://1d4chan.org/wiki/Creed)
Title: Re: How the...
Post by: xracer on November 12, 2014, 03:01:27 am
New Technology not released to X-Com were cyberdiscs can now teleport :O
Title: Re: How the...
Post by: kharille on November 12, 2014, 10:04:10 am
Have you checked the roof?
Title: Re: How the...
Post by: yrizoud on November 12, 2014, 11:22:33 am
I guess they tilt 90° to pass a narrow doorway.
Title: Re: How the...
Post by: Mr. Quiet on November 18, 2014, 03:40:21 pm
To answer your question, he spawned in the house and unfortunately he's stuck inside, but at least he can shot at you from the windows, unlike the reaper. Just like having to hunt for the last alien that is a reaper stuck in a small room, quietly waiting to die.

Which brings me back to my old suggestion. I would love for a modder to turn reapers into wreckers. I want them smashing through walls toward the scent of a live human. Warboy said it can be done, but it'll be very difficult since he already set the pathing for the reaper, and doesn't wanna undo it. I think that's what he said :) I can dream about it though.
Title: Re: How the...
Post by: Arthanor on November 18, 2014, 06:06:08 pm
All the 2 by 2 aliens pathfinding should have an added clause like:

If a 2-tiles wide path can't be found.
1-Find a 1-tile wide path.
2-Find chokepoint of the 1-tile path
3-Attack scenery next to the chokepoint

This way, a reaper could find a door and chew at the wall next to it so it can get out. Or a cyberdisc/sectopod would just blast that wall bit away.
Title: Re: How the...
Post by: Random Commander on November 19, 2014, 05:54:58 pm
All the 2 by 2 aliens pathfinding should have an added clause like:

If a 2-tiles wide path can't be found.
1-Find a 1-tile wide path.
2-Find chokepoint of the 1-tile path
3-Attack scenery next to the chokepoint

This way, a reaper could find a door and chew at the wall next to it so it can get out. Or a cyberdisc/sectopod would just blast that wall bit away.

That could still happen...

1st) Put some rookie right next to an open gap in the building where the cyberdisk/sectopod is.

2nd) Pray to RNGesus it hits the wall and not your guy.
Title: Re: How the...
Post by: Arthanor on November 19, 2014, 06:02:02 pm
Wouldn't the first thing the AI checks for be an accessible target?

1- Check for target
2- Check for 2x2 path to next (randomly generated?) patrol point
3- Check for 1x1 path to same point + destroy obstruction

I omitted checking for targets since that's a pretty obvious first thing to do. If there is a target standing in the house or blocking a 2-tiles door, you don't want the reaper going to chew the wall.
Title: Re: How the...
Post by: Random Commander on November 19, 2014, 06:34:57 pm
Wouldn't the first thing the AI checks for be an accessible target?

1- Check for target
2- Check for 2x2 path to next (randomly generated?) patrol point
3- Check for 1x1 path to same point + destroy obstruction

I omitted checking for targets since that's a pretty obvious first thing to do. If there is a target standing in the house or blocking a 2-tiles door, you don't want the reaper going to chew the wall.

I think the AI checks for a viable target every step, that would be why sometimes it stops moving and fires at your guys instead of staying there and shooting. The 2x2 pathfinding would be first priority and 1x1+obstruction destruction would be second.
Title: Re: How the...
Post by: Warboy1982 on November 19, 2014, 06:57:27 pm
unfortunately i can't inject a human brain into the AI. it will never be capable of creative thinking like that.
basically the map maker put a large spawn node inside a house.
Title: Re: How the...
Post by: ivandogovich on November 19, 2014, 07:46:54 pm
unfortunately i can't inject a human brain into the AI....

Blasphemy!!   :O  My universe is shattering!  The All Powerful Warboy1982 .... the Omnipotent... declares that he can't DO something!  That its impossible!  Ack!

;)

Cheers, Ivan :D
Title: Re: How the...
Post by: Random Commander on November 19, 2014, 08:26:48 pm
Blasphemy!!   :O  My universe is shattering!  The All Powerful Warboy1982 .... the Omnipotent... declares that he can't DO something!  That its impossible!  Ack!

Actually, he CAN do it, it's just he doesn't WANT to, because of controversial reasons. Y'know, Human-AI experimenting and all.

Also it's a ton of work.
Title: Re: How the...
Post by: Warboy1982 on November 19, 2014, 09:32:44 pm
it requires physical installation of an orphan (or at least most of one) in each of your PCs, and i have a moral objection to that on the grounds that it's way too much effort, and forsaken children are hard to come by these days.
Title: Re: How the...
Post by: ivandogovich on November 19, 2014, 09:56:21 pm
.... and forsaken children are hard to come by these days.

Ah hah!  I sense a business opportunity here!  Where there is a shortage of something, there must be a demand!  Quick lets go corner the market on forsaken children and make a Million Dollars!

<Evil Chuckle>
Title: Re: How the...
Post by: mrxian on April 18, 2015, 11:54:40 pm
unfortunately i can't inject a human brain into the AI. it will never be capable of creative thinking like that.
What if we take a really, really stupid person who's not creative at all?
Title: Re: How the...
Post by: darkestaxe on May 05, 2015, 12:00:50 am
Well look what got necro'd. I just happen to have found some leftovers in a can. Not sure if they'll be useful, I don't think any of it's still alive or anything.

I scraped this out of one can:

Code: [Select]
https:/// **** ORPHAN PARTS ****

AttackFurthestWeakTile(){
  https:// select all tiles that can be reached by current unit
  https:// select all non-pathable tiles adjacent to currently selected tiles, replacing current selection
  https:// order tiles from weakest to strongest
  https:// select the most distant tile that is as weak as the weakest
  https:// attempt to attack tile.
  https://      if attack fails, flag tile as non-reachable
  https://      if attack succeeds but does not destroy tile, continue attacking
  https://      if tile becomes path-able, attempt to resume normal pathing tactics
}

ClearLargerPathToDestination(destination){
https://note: before quitting: check whether targeted tiles can be destroyed by equipped weapons

  https:// Select 'groupA' all tiles along 1x1 path to destination
  https:// select 'groupB' all adjacent tiles to groupA that are non path-able, indexing to groupA tiles
  https:// select 'groupC' all tiles opposite GroupA tiles that are non-pathable from indexed GroupB tiles , indexing to groupA tiles
  https:// deselect all groupA tiles that are lacking an indexed groupB tile IF the next or previous tile also lacks a groupB tile
  https:// repeat with GroupC instead of groupB tiles
  https:// Loop through each groupB and groupC tile, flagging to pathable and attempting to path a 2x2 to destination.
  https:// if a success is made, attempt to destroy the offending tile and quit.
  https:// If destination was not reached and the total groupB and groupC tiles are less then 8, test all combinations of tiles
  https:// If any combination succedes, select the combination with the lowest number of tiles,
  https://    lowest maximum single tile strength, and lowest total strength of all tiles. Attempt to destroy them and then quit.
  https:// If the battle hasn't begun, flag spawn point as Jailed2x2 and quit.

https://Note2: 2x2 units should be placed in non-jailed spawn points before battle start, elsewhere in code.
}

I scraped this out of the other can: