View Issue Details
ID | Project | Category | Date Submitted | Last Update | |
---|---|---|---|---|---|
0018766 | Starward Rogue | Suggestion | Mar 1, 2016 6:00 pm | Mar 3, 2016 10:41 pm | |
Reporter | Pepisolo | Assigned To | |||
Status | new | Resolution | open | ||
Product Version | 1.015 | ||||
Summary | 0018766: Help needed with Kamikaze Minibot, also potential engine tweaks | ||||
Description | Here's a problem that I'm hoping someone may have some insight on. I've fixed up the Kamikaze Minibot and the behaviour I wanted was for the drone to use the FamiliarFollower behavior up until it comes in range of an enemy, at which point the drone would switch to an attacking behavior to seek out and explode on an enemy. The way I currently have this set up is that I've used a system to shrink the FollowerFamiliar version of the Kamikaze Minibot at the same time as it spawns a Pathfinding Attacker version of the Minibot. This illusion seems to work although maybe there should be a way to switch behaviors? Maybe a modifier on a system that can switch the behavior of the parent entity? One other way I had this working was by using a system that killed the original Kamikaze Minibot while transforming it into a different entity; however, since there doesn't appear to be a way to do a clean transform (without death disintegration) that looked janky. So, the Minibot illusion seems to work EXCEPT the presence of teleporters throws a spanner in the works. It seems like how teleporters currently work is that they spawn in a new version of a familiar the player has when you use them, so if the Minibot explodes, and you then go through a teleporter the minibot is respawned. Could it be made so that player familiars are actually relocated per room when using teleporters rather than respawned, and if there is nothing to relocate (the familiar is dead) then nothing is respawned/relocated? This would make it so that if I was shrinking an enemy to create the illusion of a transformation (hacky I know), then the same shrunk entity would be relocated. Or if the original familiar is destroyed then it won't respawn at teleporters. It's pretty much currently impossible to make any familiars that are destroyable as you can just respawn them using a teleporter. Kamikaze Minibot test room attached. | ||||
Tags | No tags attached. | ||||
|
a_testCraig.xml (3,536 bytes)
<root> <room_setup script="Quad/ZMC_TeleportStationsRevised" skip_normal_enemy_population="true" /> <entity type="PlayerStandard" category="Player"/> <entity type="KamikazeMinibotPickup" category="ItemPickup" offset_from_center="400,100"/> <entity type="BansheeRed" category="Enemy" offset_from_center="1000,-500"/> <entity type="BansheeRed" category="Enemy" offset_from_center="1000,-1000"/> </root> <!-- <entity type="GuardianBlaster" category="ItemPickup" offset_from_center="-500,0"/> <entity type="RainCannon" category="ItemPickup" offset_from_center="-400,0"/> <entity type="STG4377" category="ItemPickup" offset_from_center="-300"/> <entity type="TwinMachineguns" category="ItemPickup" offset_from_center="-200,0"/> <entity type="RiotSuppressor" category="ItemPickup" offset_from_center="-100,0"/> <entity type="Grapeshot" category="ItemPickup" offset_from_center="0,0"/> <entity type="PrecisionRailgun" category="ItemPickup" offset_from_center="100,0"/> <entity type="PhantomBullet" category="ItemPickup" offset_from_center="200,0"/> <entity type="SplitfireCannon" category="ItemPickup" offset_from_center="300,0"/> <entity type="VenomousStinger" category="ItemPickup" offset_from_center="400,0"/> <entity type="HornetMine" category="ItemPickup" offset_from_center="500,0"/> <entity type="NarcoStinger" category="ItemPickup" offset_from_center="600,0"/> <entity type="HunterKiller" category="ItemPickup" offset_from_center="700,0"/> <entity type="TurboBlaster" category="ItemPickup" offset_from_center="-600,0"/> <entity type="Translocator" category="ItemPickup" offset_from_center="-500,0"/> <entity type="FragmentCannon" category="ItemPickup" offset_from_center="-400,0"/> <entity type="SmartGun" category="ItemPickup" offset_from_center="-300"/> <entity type="GuardianGun" category="ItemPickup" offset_from_center="-200,0"/> <entity type="Railgun" category="ItemPickup" offset_from_center="-100,0"/> <entity type="PhaserGun" category="ItemPickup" offset_from_center="0,0"/> <entity type="SplinterCannon" category="ItemPickup" offset_from_center="100,0"/> <entity type="HornetNest" category="ItemPickup" offset_from_center="200,0"/> <entity type="Incinerator" category="ItemPickup" offset_from_center="300,0"/> <entity type="GrenadeLauncher" category="ItemPickup" offset_from_center="400,0"/> <entity type="ClusterLauncher" category="ItemPickup" offset_from_center="500,0"/> <entity type="PhaseBlade" category="ItemPickup" offset_from_center="600,0"/> <entity type="PoisonedKnife" category="ItemPickup" offset_from_center="700,0"/> <room_setup script="Unused" skip_normal_enemy_population="false" extra_player_systems="" player_familiars="" use_boss_data="InvaderBoss" use_boss_room_node_index="0" /> <entity type="PlayerStandard" category="Player"/> <room_setup script="Miniboss/CMP_MinibossBasic" skip_normal_enemy_population="true" /> <entity type="PlayerStandard" category="Player"/> <entity type="ReaperRed" category="Enemy" offset_from_center="-300,0"/> <room_setup script="Unused" skip_normal_enemy_population="false" extra_player_systems="" player_familiars="" use_boss_data="HunterRed" use_boss_room_node_index="0" /> </root> --> |
|
Complicated issue, I think I understand? How does giving the Kamikaze minion infinite range and wall/obstacle collision immunity sound? It would remove the need for all of the complicated systems. When a single-life familiar is destroyed, doesn't it remove its system from the player? Perhaps a system that adds ammo to another system? I don't see any way to do it with current modifiers and effects though. Perhaps just an a kamikaze system instance to the player when hit. Then when an entity enters range launch a projectile and destroy itself? |
|
"How does giving the Kamikaze minion infinite range and wall/obstacle collision immunity sound? It would remove the need for all of the complicated systems." For just the one entity you mean? I could could do this, but then for rooms without enemies the drone wouldn't follow you around, it would just stand still in a room, which is a bit....meh. "When a single-life familiar is destroyed, doesn't it remove its system from the player?" I don't believe so. Not immediately, anyway, for the room you're in. It probably does once you move to a new room, although I haven't tested that. Bit of a headscratcher, this. I think an actual entity relocate (if the entity is still around) would probably be better behaviour when going through teleporters. I've no clue how difficult this would be to implement, though. |
|
Okay. How about this. Kamikaze Minibot becomes a normal orbiting familiar. It grants the player a whenhitsystem. That system adds a firing system to the kamikaze familiar. The firing system launches a big shot from the drone. In order to prevent overlap, the shots are given a random initial firing angle, but also have homing and ignore wall/obstacle collisions. The effect would be an orbiting familiar that launches a death ball at the nearest target whenever you take damage. If there aren't any enemies around, it stores the charge to be used on the next one. |
|
Sounds like a good idea for a familiar, this one should really kamikaze and explode itself, though, rather than shoot shots. I might just have to wait on some engine tweaks so that I can get this to work. Regarding the relocate teleported familiar versus respawn, do you think that relocating would be the better behaviour overall (ignoring my current issues with the Kamikaze Drone)? |
|
I'm not sure how the teleporting works. My guess is that it refreshes the familiar when it spawns it again and that's why you see the resetting of the familiar. I just don't know. I spent about 5 minutes trying to understand how teleporting works, and apparently all non-normal movement is called teleporting (e.g., teleport to boss, telelport to room,...), which made me give up. However, the other familiar issue may prove useful to you. |
Date Modified | Username | Field | Change |
---|---|---|---|
Mar 1, 2016 6:00 pm | Pepisolo | New Issue | |
Mar 1, 2016 6:01 pm | Pepisolo | Description Updated | |
Mar 1, 2016 6:01 pm | Pepisolo | File Added: a_testCraig.xml | |
Mar 1, 2016 6:02 pm | Pepisolo | Description Updated | |
Mar 1, 2016 6:15 pm | Pepisolo | Description Updated | |
Mar 1, 2016 7:44 pm | ptarth | Note Added: 0045311 | |
Mar 1, 2016 8:26 pm | Pepisolo | Note Added: 0045313 | |
Mar 3, 2016 3:59 pm | ptarth | Note Added: 0045353 | |
Mar 3, 2016 6:30 pm | Pepisolo | Note Added: 0045355 | |
Mar 3, 2016 10:41 pm | ptarth | Note Added: 0045359 |