elhobbs / prboom3ds

prboom for the 3ds
GNU General Public License v2.0
104 stars 26 forks source link

Enemies will sometimes warp out of bounds #18

Closed Searinox closed 5 years ago

Searinox commented 5 years ago

I think one of the most straightforward ways to check this is with the Doom 2 WAD. Begin MAP08 and just enter the very first door immediately in sight and proceed into a room that contains Pinkies on the right. Notice how as they walk around, they start disappearing one by one.

This happens the most when enemies are confined in small spaces. They will just randomly warp out of bounds sometimes. Not only that but very oddly, they will sometimes attack the player with melee or projectile attacks invisibly even though revealing all the map + enemy actors via IDDT doesn't show anyone in proximity.

This becomes a problem before long especially as the number of enemies increases with each level. You start getting attacked by random invisible enemies wherever you are and can't defend yourself. In the same level mentioned, for example, there is a room with a bunch of Hell Barons and a Cyberdemon. The Cyberdemon will quickly vanish, then proceed to rocket you from nowhere.

Also related discussion I found on the issue: https://www.doomworld.com/forum/topic/74246-prboom-on-the-nintendo-3ds/?tab=comments#comment-1411786

Searinox commented 5 years ago

Adding -fno-short-enums to CFLAGS in Makefile will fix this issue.

ghost commented 5 years ago

it sounds like you're describing map08, not e1m8

Searinox commented 5 years ago

That is correct. My bad. Text edited.

Searinox commented 5 years ago

This worked.