Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2 3 ... 16

Author Topic: Upright spear glitch aka "Shaft of Enlightenment"  (Read 92043 times)

AnotherDwarvernDeath

  • Bay Watcher
    • View Profile
Upright spear glitch aka "Shaft of Enlightenment"
« on: December 20, 2013, 08:19:19 pm »

So, in need of empty cages, I built a small tower to throw prisoners off of. They land on an upright artifact dog bone spear, surrounded by a grid of weapon traps to take care of any surviving gobbos. The first of the lot was a randomly chosen goblin bowman, just a random soldier. Except as soon as he hit the spear (which broke his lower spine), he turned into a Goblin Master Swordsman. Despite having to crawl out of the trap chamber, he did it in something like three frames, rolling super-fast out into the wilderness. I sent my main squads after him before he could scare civvies, but he simply parried every single strike and batted away every bolt fired his way, occasionally taking the time to incapacitate one of my soldiers with a carefully placed arrow from the bow I failed to confiscate (didn't think it would be necessary). Then he crawled into another trap-field and again warp-rolled through everything.

After three of my dwarfs went down I sent my entire military of 50 soldiers after him at the same time, hoping to overwhelm him. Finally someone shot him in the arm from behind, chipping the bone and knocking him unconscious, allowing a swordsdwarf to cleave his skull in.

I've done it twice more since then with the same results (though much more controlled), once with the artifact spear and once with a regular old iron spear. My question is, is this a well-known glitch? I couldn't find anything about it on the wiki.

In any case, testing continues to see if I can create an instant, non-spine-breaking level-up machine for my adventurers. Although this fortress is very out-of-the-way so I may have to create another one, unless someone knows about this already.
« Last Edit: December 24, 2013, 11:28:40 pm by AnotherDwarvernDeath »
Logged

misko27

  • Bay Watcher
  • Lawful Neutral
    • View Profile
Re: Upright spear causes intant badassery, probable glitch
« Reply #1 on: December 20, 2013, 08:27:01 pm »

You can add more then one spear, try that. Add 10 spears. And seal your trap areas next time: As fun as letting injured goblins go back home to spread the word of their treatment at your hands is, you don't want them messing about.

No, there is no spear-glitch that makes people badasses, unfortunately. It's all in the mind: It's not the spearm it's how you use it.
Logged
The Age of Man is over. It is the Fire's turn now

AnotherDwarvernDeath

  • Bay Watcher
    • View Profile
Re: Upright spear causes intant badassery, probable glitch
« Reply #2 on: December 20, 2013, 08:56:17 pm »

I'll do that, thanks for the advice. In this case though I was trying to go minimalist with the execution tower, admittedly hoping that a wounded goblin would crawl out so my military could train with him. But not like that.

Anyway, I don't think it's all in the mind, unless I'm completely not understanding you. I'm playing around with it a bit more, and when a goblin hits a spear, he turns into a master/lord of whatever weapon he's holding (if he's holding a bow, then he turns into a swordsmaster). It seems to happen in between when the game recognizes he hits the ground and when he hits the spear.

Code: [Select]
The Goblin Pikeman's upper body takes the full force of the impact, bruising the muscle and shattering the left false ribs!
The Goblin Pikeman's left lower arm takes the full force of the impact, bruising the bone!
The Goblin Pikeman's right lower arm takes the full force of the impact, bruising the muscle!
The Goblin Pikeman's right upper arm takes the full force of the impact, bruising the bone!
The Rir Tecak strikes The Goblin Pikemaster in the left upper arm, fracturing the bone and fracturing the left shoulder's bone!

Code: [Select]
The Goblin Maceman's left hand takes the full force of the impact, shattering the bone!
The Goblin Maceman's lower body takes the full force of the impact, bruising the muscle and bruising the spleen!
The Goblin Maceman's left lower leg takes the full force of the impact, bruising the muscle!
The (iron spear) strikes The Goblin Mace Lord in the upper body, tearing the muscle and shattering the right true ribs!

And then they start blocking and parrying absolutely everything. When the goblin misses the spear instead, he remains very killable. Unfortunately I just ran out of goblin test subjects. May use a dwarf next.
Logged

ImagoDeo

  • Bay Watcher
  • [NOT_THINK:UNTHINKABLE]
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #3 on: December 20, 2013, 09:06:47 pm »

This seems kind of like the effect of danger rooms.

I would venture a guess that the distance the goblins fall has something to do with the amount of experience they gain in the fighter skill from getting hit by the spear when they land. It does seem a little glitchy and absurd that they would get thousands and thousands of experience from it, though.

Keep copies of the save, with testable goblins if possible. If this is a unique event, at least we'll still have a record of it, and if not, then we can analyze this one to see why.
Logged
What would it be like to live in a world that was copy/pasted? Would we even notice? If not, how many times have we switched celestial harddrives or whatever?

Thormgrim

  • Bay Watcher
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #4 on: December 20, 2013, 09:11:04 pm »

i can't wait to hear if this works on dwarves
Logged

misko27

  • Bay Watcher
  • Lawful Neutral
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #5 on: December 20, 2013, 09:14:04 pm »

I just really doubt it, because people have been dropping goblins on spears for some time now, and this has never manifested. However continue and tell us what you find.
Logged
The Age of Man is over. It is the Fire's turn now

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #6 on: December 20, 2013, 09:16:05 pm »

Quite interesting...

Do you suppose it might be an integer overflow? Is there a way to get the raw numbers before and after the event from the test subjects?

If it raises the skill something 65535 points or something like that, it's most certainly a overflow.

Data.. I need data...

If you have the save in a state just before dropping the goblin, please upload it so we can dissect it properly.

I demand savegame vivisection!
« Last Edit: December 20, 2013, 09:25:47 pm by wierd »
Logged

AnotherDwarvernDeath

  • Bay Watcher
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #7 on: December 20, 2013, 09:24:59 pm »

I'll copy the save now and see if I can get this to work on dwarves. And yeah, it does seem extremely unlikely that this would go unnoticed for this long.

Next time a goblin siege hits, I'll have a fresh stock of caged prisoners and I'll create a second copy. I'll let you know how this goes.

Science!

And to wierd: I don't know enough about it to get raw numbers, but assuming it keeps working I can upload a save, if you want.

EDIT: Sadly, I don't have the save just before dropping him, but I just now caught a goblin snatcher in a cage, and will try to get some more from an ambush that rolled in.
« Last Edit: December 20, 2013, 09:36:57 pm by AnotherDwarvernDeath »
Logged

BoredVirulence

  • Bay Watcher
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #8 on: December 20, 2013, 09:41:30 pm »

Best guess I could give, your drop isn't lethal enough. Danger rooms are well documented, and this could act like one as mentioned above because of the lack of lethality. Perhaps there is a unique threshold where falling onto weapons is not lethal and allows quick training.

Although, I'm pretty sure the fall should stun goblins and dwarves alike, so there shouldn't be any training because of that...
Curious. Don't lose the save.
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #9 on: December 20, 2013, 09:48:13 pm »

Yesss precious.... preciousss datass...


*cough*

Ahem, yes. Please upload the save. I haven't gotten my hands dirty in this way in quite some time, and conveniently this is a Friday, so I can stay up late after work tonight and not have many consequences for it. A very pleasurable way to spend a Friday night, if I do say so.

I will see if I can locate the goblin's object data in the DF memory space, and see if I can get raw information out. I am very curious to see if this is an overflow or not. (I can't imagine toady would allow a mathbug like that... but you never know.)

If you don't know what an integer overflow is:
Spoiler (click to show/hide)

If it is an overflow, exploiting it safely and reliably will be quite difficult... but not impossible.
I still want the save though.

« Last Edit: December 20, 2013, 10:17:54 pm by wierd »
Logged

AnotherDwarvernDeath

  • Bay Watcher
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #10 on: December 20, 2013, 10:16:07 pm »

Will do, once I have my hands on another prisoner I know works. The Goblin Master Thief remained just that when he hit the spear, so I'm trying to capture some more soldiers.

And while I had a vague idea of what an integer overflow was, thank you for the clarification!
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #11 on: December 20, 2013, 10:21:11 pm »

I improved the spoiler a little to make better sense, with a fictitious example.

If it is an overflow, related to damage calc, then you need to have a goblin subject that fits the profile for the overflow to get triggered.


Basically, the goblin's armor needs to be the same kind, he needs to fall from about the same height, needs to have similar body weight, and needs to have similar armor user and dodger skills.

Otherwise the overflow won't happen the same way.
Logged

AnotherDwarvernDeath

  • Bay Watcher
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #12 on: December 20, 2013, 11:02:26 pm »

Ah, okay.

Good news, though!

I finished my dwarf testing chamber. The first guy was a recruit who had no combat training whatsoever. After falling three z-levels onto an iron spear, he ended up with Dabbling in Dodger, Fighter, and Armor User. The second guy's name is Sarvesh Kibker. Novice Swordsdwarf (Rusty) and after undergoing the same, well...

Code: [Select]
it  The Swordsdwarf in the body part, but the attack is deflected by The Swordsdwarf's (sheep leather cloak)!
Sarvesh Kibker has become a Swordmaster.
The (iron spear) strikes The Swordmaster in the left lower arm, but the attack is deflected by The Swordmaster's (sheep leather cloak)!
The Swordmaster stands up.
The Swordmaster is no longer stunned.

Will post save soon, need to get my DFFD account password reset. Haven't been on here for years.
« Last Edit: December 20, 2013, 11:08:14 pm by AnotherDwarvernDeath »
Logged

wierd

  • Bay Watcher
  • I like to eat small children.
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #13 on: December 20, 2013, 11:17:25 pm »

ahh.. a dwarf! Excellent. His object vector will be easier to find.
Logged

Urist Da Vinci

  • Bay Watcher
  • [NATURAL_SKILL: ENGINEER:4]
    • View Profile
Re: Upright spear causes instant badassery, probable glitch
« Reply #14 on: December 20, 2013, 11:21:12 pm »

...
Code: [Select]
it  The Swordsdwarf in the body part, but the attack is deflected by The Swordsdwarf's (sheep leather cloak)!
Sarvesh Kibker has become a Swordmaster.
The (iron spear) strikes The Swordmaster in the left lower arm, but the attack is deflected by The Swordmaster's (sheep leather cloak)!
The Swordmaster stands up.
The Swordmaster is no longer stunned.
...

Combat logs like this that show the moment of the bug are useful in diagnosing the problem.

I improved the spoiler a little to make better sense, with a fictitious example.

If it is an overflow, related to damage calc, then you need to have a goblin subject that fits the profile for the overflow to get triggered.


Basically, the goblin's armor needs to be the same kind, he needs to fall from about the same height, needs to have similar body weight, and needs to have similar armor user and dodger skills.

Otherwise the overflow won't happen the same way.

IIRC based on my reading of the combat code from a disassembly, DF doesn't actually calculate the momentum of an attack until after all the skill checks and skill gains have happened. I'd focus on just the skills, and ignore height/weight.
Pages: [1] 2 3 ... 16